1b1c8a8dfSPeter Wemm# 2b1c8a8dfSPeter Wemm# 3b1c8a8dfSPeter Wemm 4a7b5a3d4SEmmanuel VadotPACKAGE= runtime 5b1c8a8dfSPeter WemmLIB= z 618b2ee82SBaptiste DaroussinSHLIBDIR?= /lib 7798aea00SXin LISHLIB_MAJOR= 6 841de1082SXin LIMAN= zlib.3 zopen.3 98e2a46c8SMark JohnstonMLINKS+= zopen.3 zdopen.3 10b1c8a8dfSPeter Wemm 11c9083b85SXin LIZLIBSRC= ${SRCTOP}/sys/contrib/zlib 12e16f0839SXin LI 13e16f0839SXin LI.PATH: ${ZLIBSRC} 14e16f0839SXin LI 15798aea00SXin LI#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 16798aea00SXin LI#CFLAGS=-g -DDEBUG 17798aea00SXin LI#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ 18b1c8a8dfSPeter Wemm# -Wstrict-prototypes -Wmissing-prototypes 19b1c8a8dfSPeter Wemm 20cd882207SXin LICFLAGS+= -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I${.CURDIR} 21f3b0f821SChris D. Faulhaber 22daaf5759SEd SchoutenWARNS?= 3 23daaf5759SEd Schouten 24e827b8c5SSteve PriceCLEANFILES+= example.o example foo.gz minigzip.o minigzip 25b1c8a8dfSPeter Wemm 26798aea00SXin LISRCS+= adler32.c 27798aea00SXin LISRCS+= compress.c 28798aea00SXin LISRCS+= crc32.c 29798aea00SXin LISRCS+= deflate.c 30798aea00SXin LISRCS+= gzclose.c 31798aea00SXin LISRCS+= gzlib.c 32798aea00SXin LISRCS+= gzread.c 33798aea00SXin LISRCS+= gzwrite.c 34798aea00SXin LISRCS+= infback.c 35798aea00SXin LISRCS+= inffast.c 36798aea00SXin LISRCS+= inflate.c 37798aea00SXin LISRCS+= inftrees.c 38798aea00SXin LISRCS+= trees.c 39798aea00SXin LISRCS+= uncompr.c 40798aea00SXin LISRCS+= zutil.c 41798aea00SXin LI 428d5d3295SJessica Clarke# Wrapper relies on FreeBSD-specific fpos_t representation and non-portable 438d5d3295SJessica Clarke# funopen. Not needed for bootstrapping, so just disable it. 448d5d3295SJessica Clarke.if ${.MAKE.OS} == "FreeBSD" || !defined(BOOTSTRAPPING) 458d5d3295SJessica ClarkeSRCS+= zopen.c 468d5d3295SJessica Clarke.endif 478d5d3295SJessica Clarke 483b293398SAlexander Kabaev.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" 497250d89eSXin LICFLAGS+= -DUNALIGNED_OK 507250d89eSXin LI.endif 51798aea00SXin LI 52798aea00SXin LIVERSION_DEF= ${.CURDIR}/Versions.def 53798aea00SXin LISYMBOL_MAPS= ${.CURDIR}/Symbol.map 54798aea00SXin LI 55d05257b0SRodney W. GrimesINCS= zconf.h zlib.h 56b1c8a8dfSPeter Wemm 57e16f0839SXin LI.PATH: ${ZLIBSRC}/test 5828dfa008SXin LI 5916ade779SXin LIZLIB_VERSION!= sed -n '/define.*ZLIB_VERSION/{s,[^0-9.],,gp;q;}' ${ZLIBSRC}/zlib.h 6016ade779SXin LI 6116ade779SXin LIzlib.pc: zlib.pc.in 6216ade779SXin LI sed -e 's,@prefix@,/usr,g ; \ 6316ade779SXin LI s,@exec_prefix@,$${prefix},g ; \ 64ac175bd3SAlex Richardson s,@libdir@,${LIBDIR},g ; \ 65ac175bd3SAlex Richardson s,@sharedlibdir@,${SHLIBDIR},g ; \ 66ac175bd3SAlex Richardson s,@includedir@,${INCLUDEDIR},g ; \ 6716ade779SXin LI s,@VERSION@,${ZLIB_VERSION},g ;' \ 6816ade779SXin LI ${.ALLSRC} > ${.TARGET} 6916ade779SXin LI 70b1c8a8dfSPeter Wemmminigzip: all minigzip.o 71b1c8a8dfSPeter Wemm $(CC) -o minigzip minigzip.o -L. -lz 72b1c8a8dfSPeter Wemm 73b1c8a8dfSPeter Wemmexample: all example.o 74b1c8a8dfSPeter Wemm $(CC) -o example example.o -L. -lz 75b1c8a8dfSPeter Wemm 76b1c8a8dfSPeter Wemmtest: example minigzip 77b1c8a8dfSPeter Wemm (export LD_LIBRARY_PATH=. ; ./example ) 78b1c8a8dfSPeter Wemm (export LD_LIBRARY_PATH=. ; \ 79b1c8a8dfSPeter Wemm echo hello world | ./minigzip | ./minigzip -d ) 80b1c8a8dfSPeter Wemm 81500f4659SEmmanuel VadotPCFILES= zlib.pc 82a021956cSBaptiste Daroussin 83b1c8a8dfSPeter Wemm.include <bsd.lib.mk> 84010795fcSJohn Baldwin 85*14b57adeSJohn BaldwinCWARNFLAGS+= ${NO_WDEPRECATED_NON_PROTOTYPE} ${NO_WSTRICT_PROTOTYPES} 86