drivers/can_peak_win32/Makefile.in
changeset 145 e747d2e26af0
parent 41 e70439f50539
child 146 71d531bf5b68
--- a/drivers/can_peak_win32/Makefile.in	Tue Apr 03 20:20:27 2007 +0200
+++ b/drivers/can_peak_win32/Makefile.in	Wed Apr 04 13:04:31 2007 +0200
@@ -29,27 +29,41 @@
 TARGET = SUB_TARGET
 CAN_DRIVER = SUB_CAN_DRIVER
 TIMERS_DRIVER = SUB_TIMERS_DRIVER
-BINUTILS_PREFIX = SUB_BINUTILS_PREFIX
+ENABLE_DLL_DRIVERS=SUB_ENABLE_DLL_DRIVERS
+CAN_DLL_CFLAGS=SUB_CAN_DLL_CFLAGS
 
-INCLUDES = -I../../include -I../../include/$(TARGET) -I../../include/$(CAN_DRIVER) -I../../include/$(TIMERS_DRIVER)
+INCLUDES = -I../../include -I../../include/$(TARGET) -I../../include/$(CAN_DRIVER)
 
 OBJS = $(CAN_DRIVER).o
 
-SRC_HFILES = ../../include/$(CAN_DRIVER)/cancfg.h
+ifeq ($(ENABLE_DLL_DRIVERS),1)
+CFLAGS += -fPIC
+DRIVER = cyg$(CAN_DRIVER).dll
+else
+DRIVER = $(OBJS)
+endif
 
-TARGET_HFILES = $(PREFIX)/include/canfestival/cancfg.h
+TARGET_SOFILES = $(PREFIX)/lib/$(DRIVER)
 
 all: driver
 
-driver: $(OBJS)
+driver: $(DRIVER)
 
 %o: %c
 	$(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
 
-install:
-	mkdir -p $(PREFIX)/include/canfestival
-	cp $(SRC_HFILES) $(PREFIX)/include/canfestival
-
+cyg$(CAN_DRIVER).dll: $(OBJS)
+	gcc -shared -o $@ \
+	-Wl,--export-all-symbols \
+	-Wl,--enable-auto-import \
+	-Wl,--whole-archive $< \
+	-Wl,--no-whole-archive $(CAN_DLL_CFLAGS) \
+	-Wl,--exclude-libs,ALL
+		
+install: libcanfestival_$(CAN_DRIVER).so
+	mkdir -p $(PREFIX)/lib/
+	cp $@ $(PREFIX)/lib/
+	
 uninstall:
 	rm -f $(TARGET_HFILES)
 
@@ -57,12 +71,3 @@
 	rm -f $(OBJS)
 
 mrproper: clean
-
-#********** make obfuscated translation *************************************
-.PHONY : obfuscate
-obfuscate:
-	cobf -p obf/pp_gnu -o obf -c can_peak_win32.c -t obf/tlist.tok -m obf/mlist.tok -x pcan_ obf/can_peak_win32_org.c;\
-	cat obf/can_peak_win32.c.header  obf/can_peak_win32.c  > can_peak_win32.c;\
-	cat obf/cobf.h.header obf/cobf.h > cobf.h;\
-	rm -f obf/can_peak_win32.c obf/cobf.h obf/cobf.log obf/uncobf.h
-