work correclty on 64bit systems with 32bit userland
[usb-driver] / Makefile
index bd63135ce7c5cc842962cbb428fbea1b4c0a43c9..f8444845ae8c4f0f90296b19c89c0d0f8ac9660f 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -2,6 +2,10 @@
 #a Parallel Cable III
 CFLAGS=-Wall -fPIC -DUSB_DRIVER_VERSION="\"$(shell stat -c '%y' usb-driver.c |cut -d\. -f1)\"" #-DFORCE_PC3_IDENT
 
+ifeq ($(LIBVER),32)
+CFLAGS += -m32
+endif
+
 FTDI := $(shell libftdi-config --libs 2>/dev/null)
 ifneq ($(FTDI),)
 JTAGKEYSRC = jtagkey.c
@@ -11,12 +15,16 @@ 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: usb-driver.c parport.c jtagkey.c config.c jtagmon.c usb-driver.h parport.h jtagkey.h config.h jtagmon.h Makefile
-       gcc $(CFLAGS) usb-driver.c parport.c config.c jtagmon.c $(JTAGKEYSRC) -o $@ -ldl -lusb -lpthread $(FTDI) -shared
+       $(CC) $(CFLAGS) usb-driver.c parport.c config.c jtagmon.c $(JTAGKEYSRC) -o $@ -ldl -lusb -lpthread $(FTDI) -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
-       gcc -DDEBUG $(CFLAGS) usb-driver.c parport.c config.c jtagmon.c $(JTAGKEYSRC) -o $@ -ldl -lusb -lpthread $(FTDI) -shared
+       $(CC) -DDEBUG $(CFLAGS) usb-driver.c parport.c config.c jtagmon.c $(JTAGKEYSRC) -o $@ -ldl -lusb -lpthread $(FTDI) -shared
+
+lib32:
+       $(MAKE) LIBVER=32 clean all
 
 clean:
        rm -f $(SOBJECTS)
Impressum, Datenschutz