Home | History | Annotate | Line # | Download | only in zlib
      1      1.1  christos # Makefile for zlib
      2  1.1.1.4  christos # Copyright (C) 1995-2024 Jean-loup Gailly, Mark Adler
      3      1.1  christos # For conditions of distribution and use, see copyright notice in zlib.h
      4      1.1  christos 
      5      1.1  christos # To compile and test, type:
      6      1.1  christos #    ./configure; make test
      7  1.1.1.2  christos # Normally configure builds both a static and a shared library.
      8  1.1.1.2  christos # If you want to build just a static library, use: ./configure --static
      9      1.1  christos 
     10      1.1  christos # To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type:
     11      1.1  christos #    make install
     12      1.1  christos # To install in $HOME instead of /usr/local, use:
     13      1.1  christos #    make install prefix=$HOME
     14      1.1  christos 
     15      1.1  christos CC=cc
     16      1.1  christos 
     17      1.1  christos CFLAGS=-O
     18      1.1  christos #CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
     19  1.1.1.2  christos #CFLAGS=-g -DZLIB_DEBUG
     20      1.1  christos #CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
     21      1.1  christos #           -Wstrict-prototypes -Wmissing-prototypes
     22      1.1  christos 
     23  1.1.1.2  christos SFLAGS=-O
     24  1.1.1.2  christos LDFLAGS=
     25  1.1.1.4  christos TEST_LIBS=-L. libz.a
     26      1.1  christos LDSHARED=$(CC)
     27      1.1  christos CPP=$(CC) -E
     28      1.1  christos 
     29  1.1.1.2  christos STATICLIB=libz.a
     30      1.1  christos SHAREDLIB=libz.so
     31  1.1.1.4  christos SHAREDLIBV=libz.so.1.3.1
     32      1.1  christos SHAREDLIBM=libz.so.1
     33  1.1.1.2  christos LIBS=$(STATICLIB) $(SHAREDLIBV)
     34      1.1  christos 
     35  1.1.1.2  christos AR=ar
     36  1.1.1.2  christos ARFLAGS=rc
     37      1.1  christos RANLIB=ranlib
     38  1.1.1.2  christos LDCONFIG=ldconfig
     39  1.1.1.2  christos LDSHAREDLIBC=-lc
     40      1.1  christos TAR=tar
     41      1.1  christos SHELL=/bin/sh
     42      1.1  christos EXE=
     43      1.1  christos 
     44      1.1  christos prefix = /usr/local
     45      1.1  christos exec_prefix = ${prefix}
     46      1.1  christos libdir = ${exec_prefix}/lib
     47  1.1.1.2  christos sharedlibdir = ${libdir}
     48      1.1  christos includedir = ${prefix}/include
     49      1.1  christos mandir = ${prefix}/share/man
     50      1.1  christos man3dir = ${mandir}/man3
     51  1.1.1.2  christos pkgconfigdir = ${libdir}/pkgconfig
     52  1.1.1.2  christos SRCDIR=
     53  1.1.1.2  christos ZINC=
     54  1.1.1.2  christos ZINCOUT=-I.
     55  1.1.1.2  christos 
     56  1.1.1.2  christos OBJZ = adler32.o crc32.o deflate.o infback.o inffast.o inflate.o inftrees.o trees.o zutil.o
     57  1.1.1.2  christos OBJG = compress.o uncompr.o gzclose.o gzlib.o gzread.o gzwrite.o
     58  1.1.1.2  christos OBJC = $(OBJZ) $(OBJG)
     59  1.1.1.2  christos 
     60  1.1.1.2  christos PIC_OBJZ = adler32.lo crc32.lo deflate.lo infback.lo inffast.lo inflate.lo inftrees.lo trees.lo zutil.lo
     61  1.1.1.2  christos PIC_OBJG = compress.lo uncompr.lo gzclose.lo gzlib.lo gzread.lo gzwrite.lo
     62  1.1.1.2  christos PIC_OBJC = $(PIC_OBJZ) $(PIC_OBJG)
     63      1.1  christos 
     64  1.1.1.2  christos # to use the asm code: make OBJA=match.o, PIC_OBJA=match.lo
     65      1.1  christos OBJA =
     66  1.1.1.2  christos PIC_OBJA =
     67  1.1.1.2  christos 
     68  1.1.1.2  christos OBJS = $(OBJC) $(OBJA)
     69  1.1.1.2  christos 
     70  1.1.1.2  christos PIC_OBJS = $(PIC_OBJC) $(PIC_OBJA)
     71  1.1.1.2  christos 
     72  1.1.1.2  christos all: static shared
     73      1.1  christos 
     74  1.1.1.2  christos static: example$(EXE) minigzip$(EXE)
     75      1.1  christos 
     76  1.1.1.2  christos shared: examplesh$(EXE) minigzipsh$(EXE)
     77  1.1.1.2  christos 
     78  1.1.1.2  christos all64: example64$(EXE) minigzip64$(EXE)
     79      1.1  christos 
     80      1.1  christos check: test
     81  1.1.1.2  christos 
     82  1.1.1.2  christos test: all teststatic testshared
     83  1.1.1.2  christos 
     84  1.1.1.2  christos teststatic: static
     85  1.1.1.2  christos 	@TMPST=tmpst_$$; \
     86  1.1.1.3  christos 	if echo hello world | ${QEMU_RUN} ./minigzip | ${QEMU_RUN} ./minigzip -d && ${QEMU_RUN} ./example $$TMPST ; then \
     87      1.1  christos 	  echo '		*** zlib test OK ***'; \
     88      1.1  christos 	else \
     89  1.1.1.2  christos 	  echo '		*** zlib test FAILED ***'; false; \
     90  1.1.1.3  christos 	fi
     91  1.1.1.3  christos 	@rm -f tmpst_$$
     92  1.1.1.2  christos 
     93  1.1.1.2  christos testshared: shared
     94  1.1.1.2  christos 	@LD_LIBRARY_PATH=`pwd`:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \
     95  1.1.1.2  christos 	LD_LIBRARYN32_PATH=`pwd`:$(LD_LIBRARYN32_PATH) ; export LD_LIBRARYN32_PATH; \
     96  1.1.1.2  christos 	DYLD_LIBRARY_PATH=`pwd`:$(DYLD_LIBRARY_PATH) ; export DYLD_LIBRARY_PATH; \
     97  1.1.1.2  christos 	SHLIB_PATH=`pwd`:$(SHLIB_PATH) ; export SHLIB_PATH; \
     98  1.1.1.2  christos 	TMPSH=tmpsh_$$; \
     99  1.1.1.3  christos 	if echo hello world | ${QEMU_RUN} ./minigzipsh | ${QEMU_RUN} ./minigzipsh -d && ${QEMU_RUN} ./examplesh $$TMPSH; then \
    100  1.1.1.2  christos 	  echo '		*** zlib shared test OK ***'; \
    101  1.1.1.2  christos 	else \
    102  1.1.1.2  christos 	  echo '		*** zlib shared test FAILED ***'; false; \
    103  1.1.1.3  christos 	fi
    104  1.1.1.3  christos 	@rm -f tmpsh_$$
    105  1.1.1.2  christos 
    106  1.1.1.2  christos test64: all64
    107  1.1.1.2  christos 	@TMP64=tmp64_$$; \
    108  1.1.1.3  christos 	if echo hello world | ${QEMU_RUN} ./minigzip64 | ${QEMU_RUN} ./minigzip64 -d && ${QEMU_RUN} ./example64 $$TMP64; then \
    109  1.1.1.2  christos 	  echo '		*** zlib 64-bit test OK ***'; \
    110  1.1.1.2  christos 	else \
    111  1.1.1.2  christos 	  echo '		*** zlib 64-bit test FAILED ***'; false; \
    112  1.1.1.3  christos 	fi
    113  1.1.1.3  christos 	@rm -f tmp64_$$
    114  1.1.1.2  christos 
    115  1.1.1.2  christos infcover.o: $(SRCDIR)test/infcover.c $(SRCDIR)zlib.h zconf.h
    116  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/infcover.c
    117  1.1.1.2  christos 
    118  1.1.1.2  christos infcover: infcover.o libz.a
    119  1.1.1.2  christos 	$(CC) $(CFLAGS) -o $@ infcover.o libz.a
    120  1.1.1.2  christos 
    121  1.1.1.2  christos cover: infcover
    122  1.1.1.2  christos 	rm -f *.gcda
    123  1.1.1.3  christos 	${QEMU_RUN} ./infcover
    124  1.1.1.2  christos 	gcov inf*.c
    125      1.1  christos 
    126  1.1.1.2  christos libz.a: $(OBJS)
    127  1.1.1.2  christos 	$(AR) $(ARFLAGS) $@ $(OBJS)
    128      1.1  christos 	-@ ($(RANLIB) $@ || true) >/dev/null 2>&1
    129      1.1  christos 
    130      1.1  christos match.o: match.S
    131      1.1  christos 	$(CPP) match.S > _match.s
    132      1.1  christos 	$(CC) -c _match.s
    133      1.1  christos 	mv _match.o match.o
    134      1.1  christos 	rm -f _match.s
    135      1.1  christos 
    136  1.1.1.2  christos match.lo: match.S
    137  1.1.1.2  christos 	$(CPP) match.S > _match.s
    138  1.1.1.2  christos 	$(CC) -c -fPIC _match.s
    139  1.1.1.2  christos 	mv _match.o match.lo
    140  1.1.1.2  christos 	rm -f _match.s
    141  1.1.1.2  christos 
    142  1.1.1.2  christos example.o: $(SRCDIR)test/example.c $(SRCDIR)zlib.h zconf.h
    143  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/example.c
    144  1.1.1.2  christos 
    145  1.1.1.2  christos minigzip.o: $(SRCDIR)test/minigzip.c $(SRCDIR)zlib.h zconf.h
    146  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/minigzip.c
    147  1.1.1.2  christos 
    148  1.1.1.2  christos example64.o: $(SRCDIR)test/example.c $(SRCDIR)zlib.h zconf.h
    149  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINCOUT) -D_FILE_OFFSET_BITS=64 -c -o $@ $(SRCDIR)test/example.c
    150  1.1.1.2  christos 
    151  1.1.1.2  christos minigzip64.o: $(SRCDIR)test/minigzip.c $(SRCDIR)zlib.h zconf.h
    152  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINCOUT) -D_FILE_OFFSET_BITS=64 -c -o $@ $(SRCDIR)test/minigzip.c
    153  1.1.1.2  christos 
    154  1.1.1.2  christos 
    155  1.1.1.2  christos adler32.o: $(SRCDIR)adler32.c
    156  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)adler32.c
    157  1.1.1.2  christos 
    158  1.1.1.2  christos crc32.o: $(SRCDIR)crc32.c
    159  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)crc32.c
    160  1.1.1.2  christos 
    161  1.1.1.2  christos deflate.o: $(SRCDIR)deflate.c
    162  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)deflate.c
    163  1.1.1.2  christos 
    164  1.1.1.2  christos infback.o: $(SRCDIR)infback.c
    165  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)infback.c
    166  1.1.1.2  christos 
    167  1.1.1.2  christos inffast.o: $(SRCDIR)inffast.c
    168  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inffast.c
    169  1.1.1.2  christos 
    170  1.1.1.2  christos inflate.o: $(SRCDIR)inflate.c
    171  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inflate.c
    172  1.1.1.2  christos 
    173  1.1.1.2  christos inftrees.o: $(SRCDIR)inftrees.c
    174  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inftrees.c
    175  1.1.1.2  christos 
    176  1.1.1.2  christos trees.o: $(SRCDIR)trees.c
    177  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)trees.c
    178  1.1.1.2  christos 
    179  1.1.1.2  christos zutil.o: $(SRCDIR)zutil.c
    180  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)zutil.c
    181  1.1.1.2  christos 
    182  1.1.1.2  christos compress.o: $(SRCDIR)compress.c
    183  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)compress.c
    184  1.1.1.2  christos 
    185  1.1.1.2  christos uncompr.o: $(SRCDIR)uncompr.c
    186  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)uncompr.c
    187  1.1.1.2  christos 
    188  1.1.1.2  christos gzclose.o: $(SRCDIR)gzclose.c
    189  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzclose.c
    190  1.1.1.2  christos 
    191  1.1.1.2  christos gzlib.o: $(SRCDIR)gzlib.c
    192  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzlib.c
    193  1.1.1.2  christos 
    194  1.1.1.2  christos gzread.o: $(SRCDIR)gzread.c
    195  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzread.c
    196  1.1.1.2  christos 
    197  1.1.1.2  christos gzwrite.o: $(SRCDIR)gzwrite.c
    198  1.1.1.2  christos 	$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzwrite.c
    199  1.1.1.2  christos 
    200  1.1.1.2  christos 
    201  1.1.1.2  christos adler32.lo: $(SRCDIR)adler32.c
    202  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    203  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/adler32.o $(SRCDIR)adler32.c
    204  1.1.1.2  christos 	-@mv objs/adler32.o $@
    205  1.1.1.2  christos 
    206  1.1.1.2  christos crc32.lo: $(SRCDIR)crc32.c
    207  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    208  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/crc32.o $(SRCDIR)crc32.c
    209  1.1.1.2  christos 	-@mv objs/crc32.o $@
    210  1.1.1.2  christos 
    211  1.1.1.2  christos deflate.lo: $(SRCDIR)deflate.c
    212  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    213  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/deflate.o $(SRCDIR)deflate.c
    214  1.1.1.2  christos 	-@mv objs/deflate.o $@
    215  1.1.1.2  christos 
    216  1.1.1.2  christos infback.lo: $(SRCDIR)infback.c
    217  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    218  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/infback.o $(SRCDIR)infback.c
    219  1.1.1.2  christos 	-@mv objs/infback.o $@
    220  1.1.1.2  christos 
    221  1.1.1.2  christos inffast.lo: $(SRCDIR)inffast.c
    222  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    223  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/inffast.o $(SRCDIR)inffast.c
    224  1.1.1.2  christos 	-@mv objs/inffast.o $@
    225  1.1.1.2  christos 
    226  1.1.1.2  christos inflate.lo: $(SRCDIR)inflate.c
    227  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    228  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/inflate.o $(SRCDIR)inflate.c
    229  1.1.1.2  christos 	-@mv objs/inflate.o $@
    230  1.1.1.2  christos 
    231  1.1.1.2  christos inftrees.lo: $(SRCDIR)inftrees.c
    232  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    233  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/inftrees.o $(SRCDIR)inftrees.c
    234  1.1.1.2  christos 	-@mv objs/inftrees.o $@
    235  1.1.1.2  christos 
    236  1.1.1.2  christos trees.lo: $(SRCDIR)trees.c
    237  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    238  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/trees.o $(SRCDIR)trees.c
    239  1.1.1.2  christos 	-@mv objs/trees.o $@
    240  1.1.1.2  christos 
    241  1.1.1.2  christos zutil.lo: $(SRCDIR)zutil.c
    242  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    243  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/zutil.o $(SRCDIR)zutil.c
    244  1.1.1.2  christos 	-@mv objs/zutil.o $@
    245  1.1.1.2  christos 
    246  1.1.1.2  christos compress.lo: $(SRCDIR)compress.c
    247  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    248  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/compress.o $(SRCDIR)compress.c
    249  1.1.1.2  christos 	-@mv objs/compress.o $@
    250  1.1.1.2  christos 
    251  1.1.1.2  christos uncompr.lo: $(SRCDIR)uncompr.c
    252  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    253  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/uncompr.o $(SRCDIR)uncompr.c
    254  1.1.1.2  christos 	-@mv objs/uncompr.o $@
    255  1.1.1.2  christos 
    256  1.1.1.2  christos gzclose.lo: $(SRCDIR)gzclose.c
    257  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    258  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/gzclose.o $(SRCDIR)gzclose.c
    259  1.1.1.2  christos 	-@mv objs/gzclose.o $@
    260  1.1.1.2  christos 
    261  1.1.1.2  christos gzlib.lo: $(SRCDIR)gzlib.c
    262  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    263  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/gzlib.o $(SRCDIR)gzlib.c
    264  1.1.1.2  christos 	-@mv objs/gzlib.o $@
    265  1.1.1.2  christos 
    266  1.1.1.2  christos gzread.lo: $(SRCDIR)gzread.c
    267  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    268  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/gzread.o $(SRCDIR)gzread.c
    269  1.1.1.2  christos 	-@mv objs/gzread.o $@
    270  1.1.1.2  christos 
    271  1.1.1.2  christos gzwrite.lo: $(SRCDIR)gzwrite.c
    272  1.1.1.2  christos 	-@mkdir objs 2>/dev/null || test -d objs
    273  1.1.1.2  christos 	$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/gzwrite.o $(SRCDIR)gzwrite.c
    274  1.1.1.2  christos 	-@mv objs/gzwrite.o $@
    275  1.1.1.2  christos 
    276  1.1.1.2  christos 
    277  1.1.1.2  christos placebo $(SHAREDLIBV): $(PIC_OBJS) libz.a
    278  1.1.1.2  christos 	$(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) $(LDSHAREDLIBC) $(LDFLAGS)
    279      1.1  christos 	rm -f $(SHAREDLIB) $(SHAREDLIBM)
    280      1.1  christos 	ln -s $@ $(SHAREDLIB)
    281      1.1  christos 	ln -s $@ $(SHAREDLIBM)
    282  1.1.1.2  christos 	-@rmdir objs
    283      1.1  christos 
    284  1.1.1.2  christos example$(EXE): example.o $(STATICLIB)
    285  1.1.1.4  christos 	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ example.o $(TEST_LIBS)
    286      1.1  christos 
    287  1.1.1.2  christos minigzip$(EXE): minigzip.o $(STATICLIB)
    288  1.1.1.4  christos 	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ minigzip.o $(TEST_LIBS)
    289      1.1  christos 
    290  1.1.1.2  christos examplesh$(EXE): example.o $(SHAREDLIBV)
    291  1.1.1.3  christos 	$(CC) $(CFLAGS) -o $@ example.o $(LDFLAGS) -L. $(SHAREDLIBV)
    292  1.1.1.2  christos 
    293  1.1.1.2  christos minigzipsh$(EXE): minigzip.o $(SHAREDLIBV)
    294  1.1.1.3  christos 	$(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS) -L. $(SHAREDLIBV)
    295  1.1.1.2  christos 
    296  1.1.1.2  christos example64$(EXE): example64.o $(STATICLIB)
    297  1.1.1.4  christos 	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ example64.o $(TEST_LIBS)
    298  1.1.1.2  christos 
    299  1.1.1.2  christos minigzip64$(EXE): minigzip64.o $(STATICLIB)
    300  1.1.1.4  christos 	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ minigzip64.o $(TEST_LIBS)
    301  1.1.1.2  christos 
    302  1.1.1.2  christos install-libs: $(LIBS)
    303  1.1.1.2  christos 	-@if [ ! -d $(DESTDIR)$(exec_prefix)  ]; then mkdir -p $(DESTDIR)$(exec_prefix); fi
    304  1.1.1.2  christos 	-@if [ ! -d $(DESTDIR)$(libdir)       ]; then mkdir -p $(DESTDIR)$(libdir); fi
    305  1.1.1.2  christos 	-@if [ ! -d $(DESTDIR)$(sharedlibdir) ]; then mkdir -p $(DESTDIR)$(sharedlibdir); fi
    306  1.1.1.2  christos 	-@if [ ! -d $(DESTDIR)$(man3dir)      ]; then mkdir -p $(DESTDIR)$(man3dir); fi
    307  1.1.1.2  christos 	-@if [ ! -d $(DESTDIR)$(pkgconfigdir) ]; then mkdir -p $(DESTDIR)$(pkgconfigdir); fi
    308  1.1.1.2  christos 	rm -f $(DESTDIR)$(libdir)/$(STATICLIB)
    309  1.1.1.2  christos 	cp $(STATICLIB) $(DESTDIR)$(libdir)
    310  1.1.1.2  christos 	chmod 644 $(DESTDIR)$(libdir)/$(STATICLIB)
    311  1.1.1.2  christos 	-@($(RANLIB) $(DESTDIR)$(libdir)/libz.a || true) >/dev/null 2>&1
    312  1.1.1.2  christos 	-@if test -n "$(SHAREDLIBV)"; then \
    313  1.1.1.2  christos 	  rm -f $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV); \
    314  1.1.1.2  christos 	  cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir); \
    315  1.1.1.2  christos 	  echo "cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)"; \
    316  1.1.1.2  christos 	  chmod 755 $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV); \
    317  1.1.1.2  christos 	  echo "chmod 755 $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV)"; \
    318  1.1.1.2  christos 	  rm -f $(DESTDIR)$(sharedlibdir)/$(SHAREDLIB) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM); \
    319  1.1.1.2  christos 	  ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIB); \
    320  1.1.1.2  christos 	  ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM); \
    321  1.1.1.2  christos 	  ($(LDCONFIG) || true)  >/dev/null 2>&1; \
    322      1.1  christos 	fi
    323  1.1.1.2  christos 	rm -f $(DESTDIR)$(man3dir)/zlib.3
    324  1.1.1.2  christos 	cp $(SRCDIR)zlib.3 $(DESTDIR)$(man3dir)
    325  1.1.1.2  christos 	chmod 644 $(DESTDIR)$(man3dir)/zlib.3
    326  1.1.1.2  christos 	rm -f $(DESTDIR)$(pkgconfigdir)/zlib.pc
    327  1.1.1.2  christos 	cp zlib.pc $(DESTDIR)$(pkgconfigdir)
    328  1.1.1.2  christos 	chmod 644 $(DESTDIR)$(pkgconfigdir)/zlib.pc
    329      1.1  christos # The ranlib in install is needed on NeXTSTEP which checks file times
    330      1.1  christos # ldconfig is for Linux
    331      1.1  christos 
    332  1.1.1.2  christos install: install-libs
    333  1.1.1.2  christos 	-@if [ ! -d $(DESTDIR)$(includedir)   ]; then mkdir -p $(DESTDIR)$(includedir); fi
    334  1.1.1.2  christos 	rm -f $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h
    335  1.1.1.2  christos 	cp $(SRCDIR)zlib.h zconf.h $(DESTDIR)$(includedir)
    336  1.1.1.2  christos 	chmod 644 $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h
    337  1.1.1.2  christos 
    338      1.1  christos uninstall:
    339  1.1.1.2  christos 	cd $(DESTDIR)$(includedir) && rm -f zlib.h zconf.h
    340  1.1.1.2  christos 	cd $(DESTDIR)$(libdir) && rm -f libz.a; \
    341  1.1.1.2  christos 	if test -n "$(SHAREDLIBV)" -a -f $(SHAREDLIBV); then \
    342      1.1  christos 	  rm -f $(SHAREDLIBV) $(SHAREDLIB) $(SHAREDLIBM); \
    343      1.1  christos 	fi
    344  1.1.1.2  christos 	cd $(DESTDIR)$(man3dir) && rm -f zlib.3
    345  1.1.1.2  christos 	cd $(DESTDIR)$(pkgconfigdir) && rm -f zlib.pc
    346  1.1.1.2  christos 
    347  1.1.1.2  christos docs: zlib.3.pdf
    348  1.1.1.2  christos 
    349  1.1.1.2  christos zlib.3.pdf: $(SRCDIR)zlib.3
    350  1.1.1.2  christos 	groff -mandoc -f H -T ps $(SRCDIR)zlib.3 | ps2pdf - $@
    351  1.1.1.2  christos 
    352  1.1.1.2  christos zconf.h.cmakein: $(SRCDIR)zconf.h.in
    353  1.1.1.2  christos 	-@ TEMPFILE=zconfh_$$; \
    354  1.1.1.2  christos 	echo "/#define ZCONF_H/ a\\\\\n#cmakedefine Z_PREFIX\\\\\n#cmakedefine Z_HAVE_UNISTD_H\n" >> $$TEMPFILE &&\
    355  1.1.1.2  christos 	sed -f $$TEMPFILE $(SRCDIR)zconf.h.in > $@ &&\
    356  1.1.1.2  christos 	touch -r $(SRCDIR)zconf.h.in $@ &&\
    357  1.1.1.2  christos 	rm $$TEMPFILE
    358  1.1.1.2  christos 
    359  1.1.1.2  christos zconf: $(SRCDIR)zconf.h.in
    360  1.1.1.2  christos 	cp -p $(SRCDIR)zconf.h.in zconf.h
    361      1.1  christos 
    362  1.1.1.4  christos minizip-test: static
    363  1.1.1.4  christos 	cd contrib/minizip && { CC="$(CC)" CFLAGS="$(CFLAGS)" $(MAKE) test ; cd ../.. ; }
    364  1.1.1.4  christos 
    365  1.1.1.4  christos minizip-clean:
    366  1.1.1.4  christos 	cd contrib/minizip && { $(MAKE) clean ; cd ../.. ; }
    367  1.1.1.4  christos 
    368      1.1  christos mostlyclean: clean
    369  1.1.1.4  christos clean: minizip-clean
    370  1.1.1.2  christos 	rm -f *.o *.lo *~ \
    371  1.1.1.2  christos 	   example$(EXE) minigzip$(EXE) examplesh$(EXE) minigzipsh$(EXE) \
    372  1.1.1.2  christos 	   example64$(EXE) minigzip64$(EXE) \
    373  1.1.1.2  christos 	   infcover \
    374      1.1  christos 	   libz.* foo.gz so_locations \
    375      1.1  christos 	   _match.s maketree contrib/infback9/*.o
    376  1.1.1.2  christos 	rm -rf objs
    377  1.1.1.2  christos 	rm -f *.gcda *.gcno *.gcov
    378  1.1.1.2  christos 	rm -f contrib/infback9/*.gcda contrib/infback9/*.gcno contrib/infback9/*.gcov
    379      1.1  christos 
    380      1.1  christos maintainer-clean: distclean
    381  1.1.1.3  christos distclean: clean zconf zconf.h.cmakein
    382  1.1.1.2  christos 	rm -f Makefile zlib.pc configure.log
    383  1.1.1.2  christos 	-@rm -f .DS_Store
    384  1.1.1.2  christos 	@if [ -f Makefile.in ]; then \
    385  1.1.1.2  christos 	printf 'all:\n\t-@echo "Please use ./configure first.  Thank you."\n' > Makefile ; \
    386  1.1.1.2  christos 	printf '\ndistclean:\n\tmake -f Makefile.in distclean\n' >> Makefile ; \
    387  1.1.1.2  christos 	touch -r $(SRCDIR)Makefile.in Makefile ; fi
    388      1.1  christos 
    389      1.1  christos tags:
    390  1.1.1.2  christos 	etags $(SRCDIR)*.[ch]
    391      1.1  christos 
    392  1.1.1.2  christos adler32.o zutil.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h
    393  1.1.1.2  christos gzclose.o gzlib.o gzread.o gzwrite.o: $(SRCDIR)zlib.h zconf.h $(SRCDIR)gzguts.h
    394  1.1.1.2  christos compress.o example.o minigzip.o uncompr.o: $(SRCDIR)zlib.h zconf.h
    395  1.1.1.2  christos crc32.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)crc32.h
    396  1.1.1.2  christos deflate.o: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h
    397  1.1.1.2  christos infback.o inflate.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h $(SRCDIR)inffixed.h
    398  1.1.1.2  christos inffast.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h
    399  1.1.1.2  christos inftrees.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h
    400  1.1.1.2  christos trees.o: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)trees.h
    401  1.1.1.2  christos 
    402  1.1.1.2  christos adler32.lo zutil.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h
    403  1.1.1.2  christos gzclose.lo gzlib.lo gzread.lo gzwrite.lo: $(SRCDIR)zlib.h zconf.h $(SRCDIR)gzguts.h
    404  1.1.1.2  christos compress.lo example.lo minigzip.lo uncompr.lo: $(SRCDIR)zlib.h zconf.h
    405  1.1.1.2  christos crc32.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)crc32.h
    406  1.1.1.2  christos deflate.lo: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h
    407  1.1.1.2  christos infback.lo inflate.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h $(SRCDIR)inffixed.h
    408  1.1.1.2  christos inffast.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h
    409  1.1.1.2  christos inftrees.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h
    410  1.1.1.2  christos trees.lo: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)trees.h
    411