zlib/Makefile

131 lines
3.7 KiB
Makefile
Raw Normal View History

2011-09-10 06:07:35 +00:00
# Makefile for zlib
2011-09-10 06:11:37 +00:00
# Copyright (C) 1995-1996 Jean-loup Gailly.
2011-09-10 06:07:35 +00:00
# For conditions of distribution and use, see copyright notice in zlib.h
2011-09-10 06:14:39 +00:00
# To compile and test, type:
# ./configure; make test
# The call of configure is optional if you don't have special requirements
# To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type:
# make install
# To install in $HOME instead of /usr/local, use:
# make install prefix=$HOME
2011-09-10 05:36:31 +00:00
CC=cc
2011-09-10 06:14:39 +00:00
2011-09-10 05:36:31 +00:00
CFLAGS=-O
2011-09-10 06:14:39 +00:00
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
2011-09-10 05:36:31 +00:00
#CFLAGS=-g -DDEBUG
2011-09-10 06:14:39 +00:00
#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
# -Wstrict-prototypes -Wmissing-prototypes
2011-09-10 06:09:18 +00:00
LDFLAGS=-L. -lz
2011-09-10 06:14:39 +00:00
LDSHARED=$(CC)
2011-09-10 05:36:31 +00:00
2011-09-10 06:17:02 +00:00
VER=1.0.4
2011-09-10 06:14:39 +00:00
LIBS=libz.a
AR=ar rc
2011-09-10 05:36:31 +00:00
RANLIB=ranlib
2011-09-10 06:14:39 +00:00
TAR=tar
2011-09-10 05:36:31 +00:00
2011-09-10 06:07:35 +00:00
prefix=/usr/local
2011-09-10 06:14:39 +00:00
exec_prefix = $(prefix)
2011-09-10 06:07:35 +00:00
2011-09-10 05:36:31 +00:00
OBJS = adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o \
2011-09-10 05:52:17 +00:00
zutil.o inflate.o infblock.o inftrees.o infcodes.o infutil.o inffast.o
2011-09-10 05:36:31 +00:00
2011-09-10 06:08:07 +00:00
TEST_OBJS = example.o minigzip.o
2011-09-10 05:36:31 +00:00
2011-09-10 06:15:17 +00:00
DISTFILES = README INDEX ChangeLog configure Make*[a-z0-9] descrip.mms \
zlib.def zlib.rc algorithm.doc *.[ch]
2011-09-10 06:14:39 +00:00
2011-09-10 06:08:07 +00:00
all: example minigzip
2011-09-10 05:36:31 +00:00
test: all
./example
echo hello world | ./minigzip | ./minigzip -d
2011-09-10 06:13:27 +00:00
libz.a: $(OBJS)
2011-09-10 06:14:39 +00:00
$(AR) $@ $(OBJS)
-@ ($(RANLIB) $@ || true) 2>/dev/null
libz.so.$(VER): $(OBJS)
$(LDSHARED) -o $@ $(OBJS)
rm -f libz.so; ln -s $@ libz.so
2011-09-10 06:11:37 +00:00
2011-09-10 06:14:39 +00:00
example: example.o $(LIBS)
2011-09-10 05:36:31 +00:00
$(CC) $(CFLAGS) -o $@ example.o $(LDFLAGS)
2011-09-10 06:14:39 +00:00
minigzip: minigzip.o $(LIBS)
2011-09-10 05:36:31 +00:00
$(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS)
2011-09-10 06:14:39 +00:00
install: $(LIBS)
-@if [ ! $(prefix)/include ]; then mkdir $(prefix)/include; fi
-@if [ ! $(exec_prefix)/lib ]; then mkdir $(exec_prefix)/lib; fi
cp zlib.h zconf.h $(prefix)/include
chmod 644 $(prefix)/include/zlib.h $(prefix)/include/zconf.h
cp $(LIBS) $(exec_prefix)/lib
cd $(exec_prefix)/lib; chmod 644 $(LIBS)
-@(cd $(exec_prefix)/lib; $(RANLIB) libz.a || true) >/dev/null 2>&1
cd $(exec_prefix)/lib; if test -f libz.so.$(VER); then \
ln -s libz.so.$(VER) libz.so; \
fi
# The ranlib in install is needed on NeXTSTEP which checks file times
uninstall:
cd $(exec_prefix)/lib; rm -f $(LIBS); \
if test -f libz.so; then \
v=`sed -n '/VERSION "/s/.*"\(.*\)".*/\1/p'<$(prefix)/include/zlib.h`;\
rm -f libz.so.$$v libz.so; \
fi
cd $(prefix)/include; rm -f zlib.h zconf.h
2011-09-10 05:36:31 +00:00
clean:
2011-09-10 06:14:39 +00:00
rm -f *.o *~ example minigzip libz.a libz.so* foo.gz
2011-09-10 05:36:31 +00:00
zip:
2011-09-10 06:14:39 +00:00
mv Makefile Makefile~; cp -p Makefile.in Makefile
2011-09-10 06:15:17 +00:00
v=`sed -n -e 's/\.//g' -e '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`;\
zip -ul9 zlib$$v $(DISTFILES)
2011-09-10 06:14:39 +00:00
mv Makefile~ Makefile
dist:
mv Makefile Makefile~; cp -p Makefile.in Makefile
d=zlib-`sed -n '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`;\
rm -f $$d.tar.gz; \
if test ! -d ../$$d; then rm -f ../$$d; ln -s `pwd` ../$$d; fi; \
files=""; \
for f in $(DISTFILES); do files="$$files $$d/$$f"; done; \
cd ..; \
GZIP=-9 $(TAR) chofz $$d/$$d.tar.gz $$files; \
if test ! -d $$d; then rm -f $$d; fi
mv Makefile~ Makefile
tags:
2011-09-10 06:13:27 +00:00
etags *.[ch]
2011-09-10 05:36:31 +00:00
2011-09-10 06:14:39 +00:00
depend:
makedepend -- $(CFLAGS) -- *.[ch]
2011-09-10 05:36:31 +00:00
# DO NOT DELETE THIS LINE -- make depend depends on it.
2011-09-10 06:14:39 +00:00
adler32.o: zlib.h zconf.h
2011-09-10 05:36:31 +00:00
compress.o: zlib.h zconf.h
2011-09-10 06:14:39 +00:00
crc32.o: zlib.h zconf.h
2011-09-10 05:36:31 +00:00
deflate.o: deflate.h zutil.h zlib.h zconf.h
example.o: zlib.h zconf.h
gzio.o: zutil.h zlib.h zconf.h
2011-09-10 06:14:39 +00:00
infblock.o: infblock.h inftrees.h infcodes.h infutil.h zutil.h zlib.h zconf.h
infcodes.o: zutil.h zlib.h zconf.h
infcodes.o: inftrees.h infblock.h infcodes.h infutil.h inffast.h
inffast.o: zutil.h zlib.h zconf.h inftrees.h
inffast.o: infblock.h infcodes.h infutil.h inffast.h
2011-09-10 05:36:31 +00:00
inflate.o: zutil.h zlib.h zconf.h infblock.h
inftrees.o: zutil.h zlib.h zconf.h inftrees.h
2011-09-10 06:14:39 +00:00
infutil.o: zutil.h zlib.h zconf.h infblock.h inftrees.h infcodes.h infutil.h
minigzip.o: zlib.h zconf.h
trees.o: deflate.h zutil.h zlib.h zconf.h
2011-09-10 05:36:31 +00:00
uncompr.o: zlib.h zconf.h
2011-09-10 06:14:39 +00:00
zutil.o: zutil.h zlib.h zconf.h