X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/usb-driver/blobdiff_plain/7517e9fe05613930cb7cd307a70071c4ebb1f468..6af90678ebe7b771e002ab36f235b8c0253cb11f:/Makefile?ds=sidebyside

diff --git a/Makefile b/Makefile
index 1681706..8a21424 100644
--- a/Makefile
+++ b/Makefile
@@ -2,36 +2,37 @@
 #a Parallel Cable III
 CFLAGS=-Wall -fPIC -DUSB_DRIVER_VERSION="\"$(shell stat -c '%y' usb-driver.c |cut -d\. -f1)\"" #-DFORCE_PC3_IDENT
 
-MARCH := $(shell uname -m)
-ifeq ($(MARCH),x86_64)
-CFLAGS += -m64
-else
+LIBS=-ldl -lusb -lpthread
+
+SRC=usb-driver.c parport.c config.c jtagmon.c
+HEADER=usb-driver.h parport.h jtagkey.h config.h jtagmon.h
+
+ifeq ($(LIBVER),32)
 CFLAGS += -m32
 endif
 
 FTDI := $(shell libftdi-config --libs 2>/dev/null)
 ifneq ($(FTDI),)
-JTAGKEYSRC = jtagkey.c
+SRC += jtagkey.c
 CFLAGS += -DJTAGKEY
+LIBS += $(FTDI)
 endif
 
 SOBJECTS=libusb-driver.so libusb-driver-DEBUG.so
 
 all: $(SOBJECTS)
-ifeq ($(MARCH),x86_64)
-	@echo Built library is 64 bit. Run \`make lib32\' to build a 32 bit version
-endif
+	@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: usb-driver.c parport.c jtagkey.c config.c jtagmon.c usb-driver.h parport.h jtagkey.h config.h jtagmon.h Makefile
-	$(CC) $(CFLAGS) usb-driver.c parport.c config.c jtagmon.c $(JTAGKEYSRC) -o $@ -ldl -lusb -lpthread $(FTDI) -shared
+libusb-driver.so: $(SRC) $(HEADER) Makefile
+	$(CC) $(CFLAGS) $(SRC) -o $@ $(LIBS) -shared
 
-libusb-driver-DEBUG.so: usb-driver.c parport.c jtagkey.c config.c jtagmon.c usb-driver.h parport.h jtagkey.h config.h jtagmon.h Makefile
-	$(CC) -DDEBUG $(CFLAGS) usb-driver.c parport.c config.c jtagmon.c $(JTAGKEYSRC) -o $@ -ldl -lusb -lpthread $(FTDI) -shared
+libusb-driver-DEBUG.so: $(SRC) $(HEADER) Makefile
+	$(CC) -DDEBUG $(CFLAGS) $(SRC) -o $@ $(LIBS) -shared
 
 lib32:
-	$(MAKE) MARCH=i386 clean all
+	$(MAKE) LIBVER=32 clean all
 
 clean:
 	rm -f $(SOBJECTS)
 
-.PHONY: clean all
+.PHONY: clean all lib32