]> git.zerfleddert.de Git - usb-driver/blobdiff - Makefile
update links for xc3sprog
[usb-driver] / Makefile
index 4ef6abaddc493bf1a81fda7b43ae5c2a82368458..baff08d9d68c8fd95d6c89836f1832e6c4026ac8 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,14 +1,40 @@
-CFLAGS=-Wall
+#Add -DFORCE_PC3_IDENT to CFLAGS to force the identification of
+#a Parallel Cable III
+#Add -DNO_USB_RESET to disable the hard reset of the cable when
+#opening the device
+CFLAGS=-Wall -fPIC -DUSB_DRIVER_VERSION="\"$(shell stat -c '%y' usb-driver.c |cut -d\. -f1)\"" #-DFORCE_PC3_IDENT -DNO_USB_RESET
 
-all: libusb-driver.so libusb-driver-DEBUG.so
+LIBS=-ldl -lusb -lpthread
 
-libusb-driver.so: usb-driver.c usb-driver.h
-       gcc -fPIC $(CFLAGS) $< -o $@ -ldl -lusb -lpthread -shared
+SRC=usb-driver.c xpcu.c parport.c config.c jtagmon.c
+HEADER=usb-driver.h xpcu.h parport.h jtagkey.h config.h jtagmon.h
 
-libusb-driver-DEBUG.so: usb-driver.c usb-driver.h
-       gcc -fPIC -DDEBUG $(CFLAGS) $< -o $@ -ldl -lusb -lpthread -shared
+ifeq ($(LIBVER),32)
+CFLAGS += -m32
+endif
+
+FTDI := $(shell libftdi-config --libs 2>/dev/null)
+ifneq ($(FTDI),)
+SRC += jtagkey.c
+CFLAGS += -DJTAGKEY
+LIBS += $(FTDI)
+endif
+
+SOBJECTS=libusb-driver.so libusb-driver-DEBUG.so
+
+all: $(SOBJECTS)
+       @file libusb-driver.so | grep x86-64 >/dev/null && echo Built library is 64 bit. Run \`make lib32\' to build a 32 bit version || true
+
+libusb-driver.so: $(SRC) $(HEADER) Makefile
+       $(CC) $(CFLAGS) $(SRC) -o $@ $(LIBS) -shared
+
+libusb-driver-DEBUG.so: $(SRC) $(HEADER) Makefile
+       $(CC) -DDEBUG $(CFLAGS) $(SRC) -o $@ $(LIBS) -shared
+
+lib32:
+       $(MAKE) LIBVER=32 clean all
 
 clean:
-       rm -f libusb-driver.so libusb-driver-DEBUG.so
+       rm -f $(SOBJECTS)
 
-.PHONY: clean all
+.PHONY: clean all lib32
Impressum, Datenschutz