2010-03-02 01:34:35 +03:00
# Linux makefile for libzint
#
# make compiles
# make install copies to /usr/local/lib
# make uninstall removes library
# make clean cleans up a previous compilation and any object or editor files
#
2012-12-31 17:41:42 +04:00
ZINT_VERSION := -DZINT_VERSION= \" 2.4.4\"
2010-03-02 01:34:35 +03:00
CC := gcc
2010-03-04 10:38:47 +03:00
INCLUDE := -I/usr/include
2010-03-02 01:34:35 +03:00
CFLAGS := -g
2010-03-04 10:38:47 +03:00
prefix := /usr
2010-03-02 01:34:35 +03:00
includedir := $( prefix) /include
libdir := $( prefix) /lib
DESTDIR :=
2010-05-30 21:25:24 +04:00
COMMON := common.c render.c png.c library.c ps.c large.c reedsol.c gs1.c svg.c
COMMON_OBJ := common.o render.o png.o library.o ps.o large.o reedsol.o gs1.o svg.o
2010-03-02 01:34:35 +03: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
2011-03-21 15:02:28 +03:00
TWODIM := code16k.c dmatrix.c pdf417.c qr.c maxicode.c composite.c aztec.c code49.c code1.c gridmtx.c
2011-05-02 10:24:09 +04:00
TWODIM_OBJ := code16k.o dmatrix.o pdf417.o qr.o maxicode.o composite.o aztec.o code49.o code1.o gridmtx.o
2013-01-10 17:49:04 +04:00
OBJS := $( COMMON_OBJ) $( ONEDIM_OBJ) $( TWODIM_OBJ) $( POSTAL_OBJ)
2012-12-29 22:37:03 +04:00
LIBS := -lz -lm -lpng
2013-01-10 17:49:04 +04:00
all : libzint .a libzint .so
libzint.a : $( OBJS )
$( AR) rcs libzint.a $( OBJS)
2010-03-02 01:34:35 +03:00
2013-01-10 17:49:04 +04:00
libzint.so.2.4.4 : $( OBJS )
$( CC) $( CFLAGS) $( ZINT_VERSION) -shared -Wl,-soname,libzint.so -o libzint.so.2.4.4 $( INCLUDE) $( OBJS) $( LIBS)
libzint.so : libzint .so .2.4.4
rm -f libzint.so
2010-03-02 01:34:35 +03:00
ln -s libzint.so.* libzint.so
2013-01-10 17:49:04 +04:00
%.o : %.c
$( CC) -Wall -fPIC $( CFLAGS) $( ZINT_VERSION) -c -o $@ $<
2010-03-02 01:34:35 +03:00
.PHONY : install uninstall clean dist
install :
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
uninstall :
rm $( DESTDIR) $( libdir) /libzint.*
rm $( DESTDIR) $( includedir) /zint.h
clean :
rm -f libzint.* *.o *.a *~