199767f8919635c4928607450d9e0abb932109ceToomas Soome#
199767f8919635c4928607450d9e0abb932109ceToomas Soome# $FreeBSD$
199767f8919635c4928607450d9e0abb932109ceToomas Soome#
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas SoomeLIB= z
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSHLIBDIR?= /lib
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSHLIB_MAJOR= 6
199767f8919635c4928607450d9e0abb932109ceToomas SoomeMAN= zlib.3 zopen.3
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
199767f8919635c4928607450d9e0abb932109ceToomas Soome#CFLAGS=-g -DDEBUG
199767f8919635c4928607450d9e0abb932109ceToomas Soome#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
199767f8919635c4928607450d9e0abb932109ceToomas Soome# -Wstrict-prototypes -Wmissing-prototypes
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas SoomeCFLAGS+= -DHAS_snprintf -DHAS_vsnprintf -I${.CURDIR}
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas SoomeWARNS?= 3
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas SoomeCLEANFILES+= example.o example foo.gz minigzip.o minigzip
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= adler32.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= compress.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= crc32.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= deflate.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= gzclose.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= gzlib.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= gzread.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= gzwrite.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= infback.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= inffast.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= inflate.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= inftrees.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= trees.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= uncompr.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= zopen.c
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSRCS+= zutil.c
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome#.if ${MACHINE_ARCH} == "i386" && ${MACHINE_CPU:M*i686*}
199767f8919635c4928607450d9e0abb932109ceToomas Soome#.PATH: ${.CURDIR}/contrib/asm686
199767f8919635c4928607450d9e0abb932109ceToomas Soome#SRCS+= match.S
199767f8919635c4928607450d9e0abb932109ceToomas Soome#CFLAGS+= -DASMV -DNO_UNDERLINE
199767f8919635c4928607450d9e0abb932109ceToomas Soome#ACFLAGS+= -Wa,--noexecstack
199767f8919635c4928607450d9e0abb932109ceToomas Soome#.endif
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome#.if ${MACHINE_ARCH} == "amd64"
199767f8919635c4928607450d9e0abb932109ceToomas Soome#.PATH: ${.CURDIR}/contrib/gcc_gvmat64
199767f8919635c4928607450d9e0abb932109ceToomas Soome#SRCS+= gvmat64.S
199767f8919635c4928607450d9e0abb932109ceToomas Soome#CFLAGS+= -DASMV -DNO_UNDERLINE
199767f8919635c4928607450d9e0abb932109ceToomas Soome#ACFLAGS+= -Wa,--noexecstack
199767f8919635c4928607450d9e0abb932109ceToomas Soome#.endif
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas SoomeVERSION_DEF= ${.CURDIR}/Versions.def
199767f8919635c4928607450d9e0abb932109ceToomas SoomeSYMBOL_MAPS= ${.CURDIR}/Symbol.map
199767f8919635c4928607450d9e0abb932109ceToomas SoomeCFLAGS+= -DSYMBOL_VERSIONING
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas SoomeINCS= zconf.h zlib.h
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome.PATH: ${.CURDIR}/test
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soomeminigzip: all minigzip.o
199767f8919635c4928607450d9e0abb932109ceToomas Soome $(CC) -o minigzip minigzip.o -L. -lz
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soomeexample: all example.o
199767f8919635c4928607450d9e0abb932109ceToomas Soome $(CC) -o example example.o -L. -lz
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soometest: example minigzip
199767f8919635c4928607450d9e0abb932109ceToomas Soome (export LD_LIBRARY_PATH=. ; ./example )
199767f8919635c4928607450d9e0abb932109ceToomas Soome (export LD_LIBRARY_PATH=. ; \
199767f8919635c4928607450d9e0abb932109ceToomas Soome echo hello world | ./minigzip | ./minigzip -d )
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas SoomeFILES= zlib.pc
199767f8919635c4928607450d9e0abb932109ceToomas SoomeFILESDIR= ${LIBDATADIR}/pkgconfig
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome.include <bsd.lib.mk>
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome## XXX: clang integrated-as doesn't grok .intel_syntax directives yet
199767f8919635c4928607450d9e0abb932109ceToomas Soome#ACFLAGS.gvmat64.S= ${CLANG_NO_IAS}
199767f8919635c4928607450d9e0abb932109ceToomas Soome#ACFLAGS+= ${ACFLAGS.${.IMPSRC:T}}