re-structure of makefiles

This commit is contained in:
Roel Verdult 2009-04-29 12:54:43 +00:00
parent 7e221462a0
commit 0d1480f69b
3 changed files with 82 additions and 58 deletions

View file

@ -1,58 +0,0 @@
###############################################
# Linux
###############################################
LIB_TYPE=so
LIB_FLAGS=-shared
PCSC_HEADERS=-I/usr/include/PCSC
PCSC_LIB=-lpcsclite -Wl,-rpath,.
###############################################
# MacOS X
###############################################
#LIB_TYPE=dylib
#LIB_FLAGS=-dynamiclib -flat_namespace -undefined suppress
#PCSC_HEADERS=-I/System/Library/Frameworks/PCSC.framework/Headers
#PCSC_LIB=-framework PCSC
CC = gcc
LD = gcc
CFLAGS = -fPIC -Wall -std=c99 -O4 $(PCSC_HEADERS)
LDFLAGS = -fPIC $(PCSC_LIB)
OBJS = acr122.o bitutils.o libnfc.o
HEADERS = acr122.h bitutils.h defines.h libnfc.h
LIB = libnfc.$(LIB_TYPE)
EXES = anticol list simulate relay mfread mfwrite
all: $(LIB) $(EXES)
acr122.o: acr122.c $(HEADERS)
bitutils.o: bitutils.c $(HEADERS)
libnfc.o: libnfc.c $(HEADERS)
%.s : %.c
$(CC) -S -dA $(CFLAGS) -o $@ $<
libnfc.$(LIB_TYPE): $(OBJS)
$(LD) $(LDFLAGS) -o $(LIB) $(LIB_FLAGS) $(OBJS)
anticol: $(OBJS)
$(LD) $(LDFLAGS) -o anticol anticol.c -L. -lnfc
list: $(OBJS)
$(LD) $(LDFLAGS) -o list list.c -L. -lnfc
simulate: $(OBJS)
$(LD) $(LDFLAGS) -o simulate simulate.c -L. -lnfc
relay: $(OBJS)
$(LD) $(LDFLAGS) -o relay relay.c -L. -lnfc
mfread: $(OBJS)
$(LD) $(LDFLAGS) -o mfread mfread.c -L. -lnfc
mfwrite: $(OBJS)
$(LD) $(LDFLAGS) -o mfwrite mfwrite.c -L. -lnfc
clean:
rm -f $(OBJS) $(LIB) $(EXES)

41
linux/Makefile Normal file
View file

@ -0,0 +1,41 @@
###############################################
# Linux settings
###############################################
LIBPCSC_HEADERS=`pkg-config --cflags libpcsclite`
LIBPCSC_LIB=`pkg-config --libs libpcsclite`
LIBUSB_HEADERS=`pkg-config --cflags libusb`
LIBUSB_LIB=`pkg-config --libs libusb`
LIBNFC_TYPE=so
LIBNFC_CFLAGS=-shared
LIBNFC_LINK=-Wl,-rpath,.
###############################################
# General settings
###############################################
LIBNFC_LDFLAGS=$(LIBPCSC_LIB) $(LIBUSB_LIB)
LIBNFC_PATH=..
VPATH=$(LIBNFC_PATH)
###############################################
# Compiler settings
###############################################
CC = gcc
LD = gcc
CFLAGS = -fPIC -Wall -O4 $(LIBPCSC_HEADERS) $(LIBUSB_HEADERS)
LDFLAGS = -fPIC -Wall -O4
OBJS = dev_pn531.o dev_acr122.o bitutils.o libnfc.o
HEADERS = devices.h bitutils.h defines.h libnfc.h
LIBNFC = libnfc.$(LIBNFC_TYPE)
EXES = anticol list simulate relay mftool
all: $(LIBNFC) $(EXES)
libnfc.$(LIBNFC_TYPE): $(OBJS)
$(LD) $(LDFLAGS) -o $(LIBNFC) $(LIBNFC_CFLAGS) $(LIBNFC_LDFLAGS) $(OBJS)
% : %.c $(LIBNFC)
$(LD) $(LDFLAGS) -o $@ $< -L. -lnfc $(LIBNFC_LINK)
clean:
rm -f $(OBJS) $(LIBNFC) $(EXES)

41
macosx/Makefile Normal file
View file

@ -0,0 +1,41 @@
###############################################
# Mac OS X settings
###############################################
LIBPCSC_HEADERS=-I/System/Library/Frameworks/PCSC.framework/Headers
LIBPCSC_LIB=-framework PCSC
LIBUSB_HEADERS=`libusb-config --cflags`
LIBUSB_LIB=`libusb-config --libs`
LIBNFC_TYPE=dylib
LIBNFC_CFLAGS=-dynamiclib
LIBNFC_LINK=
###############################################
# General settings
###############################################
LIBNFC_LDFLAGS=$(LIBPCSC_LIB) $(LIBUSB_LIB)
LIBNFC_PATH=..
VPATH=$(LIBNFC_PATH)
###############################################
# Compiler settings
###############################################
CC = gcc
LD = gcc
CFLAGS = -fPIC -Wall -O4 $(LIBPCSC_HEADERS) $(LIBUSB_HEADERS)
LDFLAGS = -fPIC -Wall -O4
OBJS = dev_pn531.o dev_acr122.o bitutils.o libnfc.o
HEADERS = devices.h bitutils.h defines.h libnfc.h
LIBNFC = libnfc.$(LIBNFC_TYPE)
EXES = anticol list simulate relay mftool
all: $(LIBNFC) $(EXES)
libnfc.$(LIBNFC_TYPE): $(OBJS)
$(LD) $(LDFLAGS) -o $(LIBNFC) $(LIBNFC_CFLAGS) $(LIBNFC_LDFLAGS) $(OBJS)
% : %.c $(LIBNFC)
$(LD) $(LDFLAGS) -o $@ $< -L. -lnfc $(LIBNFC_LINK)
clean:
rm -f $(OBJS) $(LIBNFC) $(EXES)