annotate src/zlib-1.2.8/Makefile.in @ 83:ae30d91d2ffe

Replace these with versions built using an older toolset (so as to avoid ABI compatibilities when linking on Ubuntu 14.04 for packaging purposes)
author Chris Cannam
date Fri, 07 Feb 2020 11:51:13 +0000
parents 5ea0608b923f
children
rev   line source
Chris@43 1 # Makefile for zlib
Chris@43 2 # Copyright (C) 1995-2013 Jean-loup Gailly, Mark Adler
Chris@43 3 # For conditions of distribution and use, see copyright notice in zlib.h
Chris@43 4
Chris@43 5 # To compile and test, type:
Chris@43 6 # ./configure; make test
Chris@43 7 # Normally configure builds both a static and a shared library.
Chris@43 8 # If you want to build just a static library, use: ./configure --static
Chris@43 9
Chris@43 10 # To use the asm code, type:
Chris@43 11 # cp contrib/asm?86/match.S ./match.S
Chris@43 12 # make LOC=-DASMV OBJA=match.o
Chris@43 13
Chris@43 14 # To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type:
Chris@43 15 # make install
Chris@43 16 # To install in $HOME instead of /usr/local, use:
Chris@43 17 # make install prefix=$HOME
Chris@43 18
Chris@43 19 CC=cc
Chris@43 20
Chris@43 21 CFLAGS=-O
Chris@43 22 #CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
Chris@43 23 #CFLAGS=-g -DDEBUG
Chris@43 24 #CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
Chris@43 25 # -Wstrict-prototypes -Wmissing-prototypes
Chris@43 26
Chris@43 27 SFLAGS=-O
Chris@43 28 LDFLAGS=
Chris@43 29 TEST_LDFLAGS=-L. libz.a
Chris@43 30 LDSHARED=$(CC)
Chris@43 31 CPP=$(CC) -E
Chris@43 32
Chris@43 33 STATICLIB=libz.a
Chris@43 34 SHAREDLIB=libz.so
Chris@43 35 SHAREDLIBV=libz.so.1.2.8
Chris@43 36 SHAREDLIBM=libz.so.1
Chris@43 37 LIBS=$(STATICLIB) $(SHAREDLIBV)
Chris@43 38
Chris@43 39 AR=ar
Chris@43 40 ARFLAGS=rc
Chris@43 41 RANLIB=ranlib
Chris@43 42 LDCONFIG=ldconfig
Chris@43 43 LDSHAREDLIBC=-lc
Chris@43 44 TAR=tar
Chris@43 45 SHELL=/bin/sh
Chris@43 46 EXE=
Chris@43 47
Chris@43 48 prefix = /usr/local
Chris@43 49 exec_prefix = ${prefix}
Chris@43 50 libdir = ${exec_prefix}/lib
Chris@43 51 sharedlibdir = ${libdir}
Chris@43 52 includedir = ${prefix}/include
Chris@43 53 mandir = ${prefix}/share/man
Chris@43 54 man3dir = ${mandir}/man3
Chris@43 55 pkgconfigdir = ${libdir}/pkgconfig
Chris@43 56
Chris@43 57 OBJZ = adler32.o crc32.o deflate.o infback.o inffast.o inflate.o inftrees.o trees.o zutil.o
Chris@43 58 OBJG = compress.o uncompr.o gzclose.o gzlib.o gzread.o gzwrite.o
Chris@43 59 OBJC = $(OBJZ) $(OBJG)
Chris@43 60
Chris@43 61 PIC_OBJZ = adler32.lo crc32.lo deflate.lo infback.lo inffast.lo inflate.lo inftrees.lo trees.lo zutil.lo
Chris@43 62 PIC_OBJG = compress.lo uncompr.lo gzclose.lo gzlib.lo gzread.lo gzwrite.lo
Chris@43 63 PIC_OBJC = $(PIC_OBJZ) $(PIC_OBJG)
Chris@43 64
Chris@43 65 # to use the asm code: make OBJA=match.o, PIC_OBJA=match.lo
Chris@43 66 OBJA =
Chris@43 67 PIC_OBJA =
Chris@43 68
Chris@43 69 OBJS = $(OBJC) $(OBJA)
Chris@43 70
Chris@43 71 PIC_OBJS = $(PIC_OBJC) $(PIC_OBJA)
Chris@43 72
Chris@43 73 all: static shared
Chris@43 74
Chris@43 75 static: example$(EXE) minigzip$(EXE)
Chris@43 76
Chris@43 77 shared: examplesh$(EXE) minigzipsh$(EXE)
Chris@43 78
Chris@43 79 all64: example64$(EXE) minigzip64$(EXE)
Chris@43 80
Chris@43 81 check: test
Chris@43 82
Chris@43 83 test: all teststatic testshared
Chris@43 84
Chris@43 85 teststatic: static
Chris@43 86 @TMPST=tmpst_$$; \
Chris@43 87 if echo hello world | ./minigzip | ./minigzip -d && ./example $$TMPST ; then \
Chris@43 88 echo ' *** zlib test OK ***'; \
Chris@43 89 else \
Chris@43 90 echo ' *** zlib test FAILED ***'; false; \
Chris@43 91 fi; \
Chris@43 92 rm -f $$TMPST
Chris@43 93
Chris@43 94 testshared: shared
Chris@43 95 @LD_LIBRARY_PATH=`pwd`:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \
Chris@43 96 LD_LIBRARYN32_PATH=`pwd`:$(LD_LIBRARYN32_PATH) ; export LD_LIBRARYN32_PATH; \
Chris@43 97 DYLD_LIBRARY_PATH=`pwd`:$(DYLD_LIBRARY_PATH) ; export DYLD_LIBRARY_PATH; \
Chris@43 98 SHLIB_PATH=`pwd`:$(SHLIB_PATH) ; export SHLIB_PATH; \
Chris@43 99 TMPSH=tmpsh_$$; \
Chris@43 100 if echo hello world | ./minigzipsh | ./minigzipsh -d && ./examplesh $$TMPSH; then \
Chris@43 101 echo ' *** zlib shared test OK ***'; \
Chris@43 102 else \
Chris@43 103 echo ' *** zlib shared test FAILED ***'; false; \
Chris@43 104 fi; \
Chris@43 105 rm -f $$TMPSH
Chris@43 106
Chris@43 107 test64: all64
Chris@43 108 @TMP64=tmp64_$$; \
Chris@43 109 if echo hello world | ./minigzip64 | ./minigzip64 -d && ./example64 $$TMP64; then \
Chris@43 110 echo ' *** zlib 64-bit test OK ***'; \
Chris@43 111 else \
Chris@43 112 echo ' *** zlib 64-bit test FAILED ***'; false; \
Chris@43 113 fi; \
Chris@43 114 rm -f $$TMP64
Chris@43 115
Chris@43 116 infcover.o: test/infcover.c zlib.h zconf.h
Chris@43 117 $(CC) $(CFLAGS) -I. -c -o $@ test/infcover.c
Chris@43 118
Chris@43 119 infcover: infcover.o libz.a
Chris@43 120 $(CC) $(CFLAGS) -o $@ infcover.o libz.a
Chris@43 121
Chris@43 122 cover: infcover
Chris@43 123 rm -f *.gcda
Chris@43 124 ./infcover
Chris@43 125 gcov inf*.c
Chris@43 126
Chris@43 127 libz.a: $(OBJS)
Chris@43 128 $(AR) $(ARFLAGS) $@ $(OBJS)
Chris@43 129 -@ ($(RANLIB) $@ || true) >/dev/null 2>&1
Chris@43 130
Chris@43 131 match.o: match.S
Chris@43 132 $(CPP) match.S > _match.s
Chris@43 133 $(CC) -c _match.s
Chris@43 134 mv _match.o match.o
Chris@43 135 rm -f _match.s
Chris@43 136
Chris@43 137 match.lo: match.S
Chris@43 138 $(CPP) match.S > _match.s
Chris@43 139 $(CC) -c -fPIC _match.s
Chris@43 140 mv _match.o match.lo
Chris@43 141 rm -f _match.s
Chris@43 142
Chris@43 143 example.o: test/example.c zlib.h zconf.h
Chris@43 144 $(CC) $(CFLAGS) -I. -c -o $@ test/example.c
Chris@43 145
Chris@43 146 minigzip.o: test/minigzip.c zlib.h zconf.h
Chris@43 147 $(CC) $(CFLAGS) -I. -c -o $@ test/minigzip.c
Chris@43 148
Chris@43 149 example64.o: test/example.c zlib.h zconf.h
Chris@43 150 $(CC) $(CFLAGS) -I. -D_FILE_OFFSET_BITS=64 -c -o $@ test/example.c
Chris@43 151
Chris@43 152 minigzip64.o: test/minigzip.c zlib.h zconf.h
Chris@43 153 $(CC) $(CFLAGS) -I. -D_FILE_OFFSET_BITS=64 -c -o $@ test/minigzip.c
Chris@43 154
Chris@43 155 .SUFFIXES: .lo
Chris@43 156
Chris@43 157 .c.lo:
Chris@43 158 -@mkdir objs 2>/dev/null || test -d objs
Chris@43 159 $(CC) $(SFLAGS) -DPIC -c -o objs/$*.o $<
Chris@43 160 -@mv objs/$*.o $@
Chris@43 161
Chris@43 162 placebo $(SHAREDLIBV): $(PIC_OBJS) libz.a
Chris@43 163 $(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) $(LDSHAREDLIBC) $(LDFLAGS)
Chris@43 164 rm -f $(SHAREDLIB) $(SHAREDLIBM)
Chris@43 165 ln -s $@ $(SHAREDLIB)
Chris@43 166 ln -s $@ $(SHAREDLIBM)
Chris@43 167 -@rmdir objs
Chris@43 168
Chris@43 169 example$(EXE): example.o $(STATICLIB)
Chris@43 170 $(CC) $(CFLAGS) -o $@ example.o $(TEST_LDFLAGS)
Chris@43 171
Chris@43 172 minigzip$(EXE): minigzip.o $(STATICLIB)
Chris@43 173 $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS)
Chris@43 174
Chris@43 175 examplesh$(EXE): example.o $(SHAREDLIBV)
Chris@43 176 $(CC) $(CFLAGS) -o $@ example.o -L. $(SHAREDLIBV)
Chris@43 177
Chris@43 178 minigzipsh$(EXE): minigzip.o $(SHAREDLIBV)
Chris@43 179 $(CC) $(CFLAGS) -o $@ minigzip.o -L. $(SHAREDLIBV)
Chris@43 180
Chris@43 181 example64$(EXE): example64.o $(STATICLIB)
Chris@43 182 $(CC) $(CFLAGS) -o $@ example64.o $(TEST_LDFLAGS)
Chris@43 183
Chris@43 184 minigzip64$(EXE): minigzip64.o $(STATICLIB)
Chris@43 185 $(CC) $(CFLAGS) -o $@ minigzip64.o $(TEST_LDFLAGS)
Chris@43 186
Chris@43 187 install-libs: $(LIBS)
Chris@43 188 -@if [ ! -d $(DESTDIR)$(exec_prefix) ]; then mkdir -p $(DESTDIR)$(exec_prefix); fi
Chris@43 189 -@if [ ! -d $(DESTDIR)$(libdir) ]; then mkdir -p $(DESTDIR)$(libdir); fi
Chris@43 190 -@if [ ! -d $(DESTDIR)$(sharedlibdir) ]; then mkdir -p $(DESTDIR)$(sharedlibdir); fi
Chris@43 191 -@if [ ! -d $(DESTDIR)$(man3dir) ]; then mkdir -p $(DESTDIR)$(man3dir); fi
Chris@43 192 -@if [ ! -d $(DESTDIR)$(pkgconfigdir) ]; then mkdir -p $(DESTDIR)$(pkgconfigdir); fi
Chris@43 193 cp $(STATICLIB) $(DESTDIR)$(libdir)
Chris@43 194 chmod 644 $(DESTDIR)$(libdir)/$(STATICLIB)
Chris@43 195 -@($(RANLIB) $(DESTDIR)$(libdir)/libz.a || true) >/dev/null 2>&1
Chris@43 196 -@if test -n "$(SHAREDLIBV)"; then \
Chris@43 197 cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir); \
Chris@43 198 echo "cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)"; \
Chris@43 199 chmod 755 $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV); \
Chris@43 200 echo "chmod 755 $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV)"; \
Chris@43 201 rm -f $(DESTDIR)$(sharedlibdir)/$(SHAREDLIB) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM); \
Chris@43 202 ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIB); \
Chris@43 203 ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM); \
Chris@43 204 ($(LDCONFIG) || true) >/dev/null 2>&1; \
Chris@43 205 fi
Chris@43 206 cp zlib.3 $(DESTDIR)$(man3dir)
Chris@43 207 chmod 644 $(DESTDIR)$(man3dir)/zlib.3
Chris@43 208 cp zlib.pc $(DESTDIR)$(pkgconfigdir)
Chris@43 209 chmod 644 $(DESTDIR)$(pkgconfigdir)/zlib.pc
Chris@43 210 # The ranlib in install is needed on NeXTSTEP which checks file times
Chris@43 211 # ldconfig is for Linux
Chris@43 212
Chris@43 213 install: install-libs
Chris@43 214 -@if [ ! -d $(DESTDIR)$(includedir) ]; then mkdir -p $(DESTDIR)$(includedir); fi
Chris@43 215 cp zlib.h zconf.h $(DESTDIR)$(includedir)
Chris@43 216 chmod 644 $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h
Chris@43 217
Chris@43 218 uninstall:
Chris@43 219 cd $(DESTDIR)$(includedir) && rm -f zlib.h zconf.h
Chris@43 220 cd $(DESTDIR)$(libdir) && rm -f libz.a; \
Chris@43 221 if test -n "$(SHAREDLIBV)" -a -f $(SHAREDLIBV); then \
Chris@43 222 rm -f $(SHAREDLIBV) $(SHAREDLIB) $(SHAREDLIBM); \
Chris@43 223 fi
Chris@43 224 cd $(DESTDIR)$(man3dir) && rm -f zlib.3
Chris@43 225 cd $(DESTDIR)$(pkgconfigdir) && rm -f zlib.pc
Chris@43 226
Chris@43 227 docs: zlib.3.pdf
Chris@43 228
Chris@43 229 zlib.3.pdf: zlib.3
Chris@43 230 groff -mandoc -f H -T ps zlib.3 | ps2pdf - zlib.3.pdf
Chris@43 231
Chris@43 232 zconf.h.cmakein: zconf.h.in
Chris@43 233 -@ TEMPFILE=zconfh_$$; \
Chris@43 234 echo "/#define ZCONF_H/ a\\\\\n#cmakedefine Z_PREFIX\\\\\n#cmakedefine Z_HAVE_UNISTD_H\n" >> $$TEMPFILE &&\
Chris@43 235 sed -f $$TEMPFILE zconf.h.in > zconf.h.cmakein &&\
Chris@43 236 touch -r zconf.h.in zconf.h.cmakein &&\
Chris@43 237 rm $$TEMPFILE
Chris@43 238
Chris@43 239 zconf: zconf.h.in
Chris@43 240 cp -p zconf.h.in zconf.h
Chris@43 241
Chris@43 242 mostlyclean: clean
Chris@43 243 clean:
Chris@43 244 rm -f *.o *.lo *~ \
Chris@43 245 example$(EXE) minigzip$(EXE) examplesh$(EXE) minigzipsh$(EXE) \
Chris@43 246 example64$(EXE) minigzip64$(EXE) \
Chris@43 247 infcover \
Chris@43 248 libz.* foo.gz so_locations \
Chris@43 249 _match.s maketree contrib/infback9/*.o
Chris@43 250 rm -rf objs
Chris@43 251 rm -f *.gcda *.gcno *.gcov
Chris@43 252 rm -f contrib/infback9/*.gcda contrib/infback9/*.gcno contrib/infback9/*.gcov
Chris@43 253
Chris@43 254 maintainer-clean: distclean
Chris@43 255 distclean: clean zconf zconf.h.cmakein docs
Chris@43 256 rm -f Makefile zlib.pc configure.log
Chris@43 257 -@rm -f .DS_Store
Chris@43 258 -@printf 'all:\n\t-@echo "Please use ./configure first. Thank you."\n' > Makefile
Chris@43 259 -@printf '\ndistclean:\n\tmake -f Makefile.in distclean\n' >> Makefile
Chris@43 260 -@touch -r Makefile.in Makefile
Chris@43 261
Chris@43 262 tags:
Chris@43 263 etags *.[ch]
Chris@43 264
Chris@43 265 depend:
Chris@43 266 makedepend -- $(CFLAGS) -- *.[ch]
Chris@43 267
Chris@43 268 # DO NOT DELETE THIS LINE -- make depend depends on it.
Chris@43 269
Chris@43 270 adler32.o zutil.o: zutil.h zlib.h zconf.h
Chris@43 271 gzclose.o gzlib.o gzread.o gzwrite.o: zlib.h zconf.h gzguts.h
Chris@43 272 compress.o example.o minigzip.o uncompr.o: zlib.h zconf.h
Chris@43 273 crc32.o: zutil.h zlib.h zconf.h crc32.h
Chris@43 274 deflate.o: deflate.h zutil.h zlib.h zconf.h
Chris@43 275 infback.o inflate.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h inffixed.h
Chris@43 276 inffast.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h
Chris@43 277 inftrees.o: zutil.h zlib.h zconf.h inftrees.h
Chris@43 278 trees.o: deflate.h zutil.h zlib.h zconf.h trees.h
Chris@43 279
Chris@43 280 adler32.lo zutil.lo: zutil.h zlib.h zconf.h
Chris@43 281 gzclose.lo gzlib.lo gzread.lo gzwrite.lo: zlib.h zconf.h gzguts.h
Chris@43 282 compress.lo example.lo minigzip.lo uncompr.lo: zlib.h zconf.h
Chris@43 283 crc32.lo: zutil.h zlib.h zconf.h crc32.h
Chris@43 284 deflate.lo: deflate.h zutil.h zlib.h zconf.h
Chris@43 285 infback.lo inflate.lo: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h inffixed.h
Chris@43 286 inffast.lo: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h
Chris@43 287 inftrees.lo: zutil.h zlib.h zconf.h inftrees.h
Chris@43 288 trees.lo: deflate.h zutil.h zlib.h zconf.h trees.h