2008-07-13 21:15:55 +00:00
# Linux makefile for libzint
#
# make compiles with QR Code support
# make libzint_noqr compiles without QR Code support
# make install copies to /usr/local/lib
# make uninstall removes library
# make clean cleans up a previous compilation and any object or editor files
#
2008-12-24 21:30:12 +00:00
ZINT_VERSION := -DZINT_VERSION= \" 2.1.0\"
2008-09-18 14:39:25 +00:00
2008-07-13 21:15:55 +00:00
CC := gcc
INCLUDE := -I/usr/local/include
2008-09-02 19:43:02 +00:00
CFLAGS := -g
prefix := /usr/local
includedir := $( prefix) /include
libdir := $( prefix) /lib
DESTDIR :=
2009-01-08 08:43:25 +00:00
COMMON := common.c png.c library.c ps.c large.c reedsol.c gs1.c
COMMON_OBJ := common.o png.o library.o ps.o large.o reedsol.o gs1.o
2008-07-13 21:15:55 +00:00
ONEDIM := code.c code128.c 2of5.c upcean.c telepen.c medical.c plessey.c rss.c
ONEDIM_OBJ := code.o code128.o 2of5.o upcean.o telepen.o medical.o plessey.o rss.o
POSTAL := postal.c auspost.c imail.c
POSTAL_OBJ := postal.o auspost.o imail.o
2008-11-05 08:43:13 +00:00
TWODIM := code16k.c blockf.c dmatrix.c dm200.c pdf417.c qr.c maxicode.c composite.c aztec.c micqr.c
TWODIM_OBJ := code16k.o blockf.o dmatrix.o dm200.o pdf417.o qr.o maxicode.o composite.o aztec.o micqr.o
2008-07-13 21:15:55 +00:00
LIBS := ` libpng12-config --I_opts --L_opts --ldflags` -lz -lm
2008-09-18 14:39:25 +00:00
i f e q ( $( NO_QR ) , t r u e )
DEFINES := -DNO_QR
2008-09-02 19:43:02 +00:00
e l s e
2008-09-18 14:39:25 +00:00
DEFINES :=
2008-09-02 19:43:02 +00:00
LIBS += -lqrencode
e n d i f
2009-01-08 08:43:25 +00:00
libzint : code .c code 128.c 2of 5.c upcean .c medical .c telepen .c plessey .c postal .c auspost .c imail .c code 16k .c dmatrix .c dm 200.c reedsol .c pdf 417.c maxicode .c rss .c common .c png .c library .c ps .c qr .c large .c composite .c aztec .c blockf .c micqr .c gs 1.c
2008-09-28 11:19:33 +00:00
$( CC) -Wall -fPIC $( CFLAGS) $( ZINT_VERSION) -c $( ONEDIM)
$( CC) -Wall -fPIC $( CFLAGS) $( ZINT_VERSION) -c $( POSTAL)
$( CC) -Wall -fPIC $( DEFINES) $( CFLAGS) $( ZINT_VERSION) -c $( TWODIM)
$( CC) -Wall -fPIC $( CFLAGS) $( ZINT_VERSION) -c $( COMMON)
2008-11-05 08:43:13 +00:00
$( CC) $( CFLAGS) $( ZINT_VERSION) -shared -Wl,-soname,libzint.so -o libzint.so.2.0.0 $( INCLUDE) $( COMMON_OBJ) $( ONEDIM_OBJ) $( TWODIM_OBJ) $( POSTAL_OBJ) $( LIBS)
2008-09-02 19:43:02 +00:00
ln -s libzint.so.* libzint.so
2008-07-13 21:15:55 +00:00
.PHONY : install uninstall clean dist
install :
2008-09-02 19:43:02 +00:00
test " $( UID) " = "0" && ldconfig -n $( PWD) || true
install -d $( DESTDIR) $( libdir)
mv libzint.* $( DESTDIR) $( libdir)
install -D -p --mode= 0644 zint.h $( DESTDIR) $( includedir) /zint.h
2008-07-13 21:15:55 +00:00
uninstall :
2008-09-02 19:43:02 +00:00
rm $( DESTDIR) $( libdir) libzint.*
rm $( DESTDIR) $( includedir) /zint.h
2008-07-13 21:15:55 +00:00
clean :
rm -f libzint.* *.o *.a *~