From b2f303b11531da1e5a415e4eaceb530291582b18 Mon Sep 17 00:00:00 2001
From: Mats Engstrom <mats@bergus.se>
Date: Sun, 23 Apr 2023 15:26:05 +0200
Subject: [PATCH] Support for MacOS

---
 minichlink/Makefile | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/minichlink/Makefile b/minichlink/Makefile
index dd97876..3a367d4 100644
--- a/minichlink/Makefile
+++ b/minichlink/Makefile
@@ -7,14 +7,27 @@ CFLAGS:=-O0 -g3 -Wall
 ifeq ($(OS),Windows_NT)
 	LDFLAGS:=-lpthread -lusb-1.0 -lsetupapi
 else
-	LDFLAGS:=-lpthread -lusb-1.0 -ludev
+	OS_NAME := $(shell uname -s | tr A-Z a-z)
+	ifeq ($(OS_NAME),linux)
+		LDFLAGS:=-lpthread -lusb-1.0 -ludev
+	endif
+	ifeq ($(OS_NAME),darwin)
+		LDFLAGS:=-lpthread -lusb-1.0 -framework CoreFoundation -framework IOKit
+		CFLAGS:=-O0 -Wall -Wno-asm-operand-widths -Wno-deprecated-declarations -Wno-deprecated-non-prototype -D__MACOSX__
+		INCLUDES:=-I /opt/homebrew/Cellar/libusb/1.0.26/include/libusb-1.0
+		LIBINCLUDES:=-L /opt/homebrew/Cellar/libusb/1.0.26/lib 
+		INCS:=$(INCLUDES) $(LIBINCLUDES)
+	endif
 endif
 
+
+
+
 minichlink : minichlink.c pgm-wch-linke.c pgm-esp32s2-ch32xx.c nhc-link042.c
-	gcc -o $@ $^ $(LDFLAGS) $(CFLAGS)
+	gcc -o $@ $^ $(LDFLAGS) $(CFLAGS) $(INCS)
 
 minichlink.so : minichlink.c pgm-wch-linke.c pgm-esp32s2-ch32xx.c nhc-link042.c
-	gcc -o $@ $^ $(LDFLAGS) $(CFLAGS) -shared -fPIC
+	gcc -o $@ $^ $(LDFLAGS) $(CFLAGS) $(INCS) -shared -fPIC
 
 install_udev_rules :
 	cp 99-WCH-LinkE.rules /etc/udev/rules.d/
-- 
GitLab