xref: /freebsd/lib/libz/Makefile (revision a021956c9372d2899c5b5cbc287d0a6ce05820b0)
1b1c8a8dfSPeter Wemm#
2ce086c79SEd Maste# $FreeBSD$
3b1c8a8dfSPeter Wemm#
4b1c8a8dfSPeter Wemm
5b1c8a8dfSPeter WemmLIB=		z
641d8423fSGordon TetlowSHLIBDIR?=	/lib
7798aea00SXin LISHLIB_MAJOR=	6
841de1082SXin LIMAN=		zlib.3 zopen.3
9b1c8a8dfSPeter Wemm
10798aea00SXin LI#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
11798aea00SXin LI#CFLAGS=-g -DDEBUG
12798aea00SXin LI#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
13b1c8a8dfSPeter Wemm#           -Wstrict-prototypes -Wmissing-prototypes
14b1c8a8dfSPeter Wemm
15798aea00SXin LICFLAGS+=	-DHAS_snprintf -DHAS_vsnprintf -I${.CURDIR}
16f3b0f821SChris D. Faulhaber
17daaf5759SEd SchoutenWARNS?=		3
18daaf5759SEd Schouten
19e827b8c5SSteve PriceCLEANFILES+=	example.o example foo.gz minigzip.o minigzip
20b1c8a8dfSPeter Wemm
21798aea00SXin LISRCS+=		adler32.c
22798aea00SXin LISRCS+=		compress.c
23798aea00SXin LISRCS+=		crc32.c
24798aea00SXin LISRCS+=		deflate.c
25798aea00SXin LISRCS+=		gzclose.c
26798aea00SXin LISRCS+=		gzlib.c
27798aea00SXin LISRCS+=		gzread.c
28798aea00SXin LISRCS+=		gzwrite.c
29798aea00SXin LISRCS+=		infback.c
30798aea00SXin LISRCS+=		inffast.c
31798aea00SXin LISRCS+=		inflate.c
32798aea00SXin LISRCS+=		inftrees.c
33798aea00SXin LISRCS+=		trees.c
34798aea00SXin LISRCS+=		uncompr.c
35798aea00SXin LISRCS+=		zopen.c
36798aea00SXin LISRCS+=		zutil.c
37798aea00SXin LI
38a2953f76SXin LI#.if ${MACHINE_ARCH} == "i386" && ${MACHINE_CPU:M*i686*}
39a2953f76SXin LI#.PATH:		${.CURDIR}/contrib/asm686
40a2953f76SXin LI#SRCS+=		match.S
41a2953f76SXin LI#CFLAGS+=	-DASMV -DNO_UNDERLINE
42a2953f76SXin LI#ACFLAGS+=	-Wa,--noexecstack
43a2953f76SXin LI#.endif
44798aea00SXin LI
4554257e2cSXin LI#.if ${MACHINE_ARCH} == "amd64"
4654257e2cSXin LI#.PATH:		${.CURDIR}/contrib/gcc_gvmat64
4754257e2cSXin LI#SRCS+=		gvmat64.S
4854257e2cSXin LI#CFLAGS+=	-DASMV -DNO_UNDERLINE
4954257e2cSXin LI#ACFLAGS+=	-Wa,--noexecstack
5054257e2cSXin LI#.endif
51798aea00SXin LI
52798aea00SXin LIVERSION_DEF=	${.CURDIR}/Versions.def
53798aea00SXin LISYMBOL_MAPS=	${.CURDIR}/Symbol.map
54798aea00SXin LICFLAGS+=	-DSYMBOL_VERSIONING
55798aea00SXin LI
56d05257b0SRodney W. GrimesINCS=		zconf.h zlib.h
57b1c8a8dfSPeter Wemm
58b1c8a8dfSPeter Wemmminigzip:	all minigzip.o
59b1c8a8dfSPeter Wemm	$(CC) -o minigzip minigzip.o -L. -lz
60b1c8a8dfSPeter Wemm
61b1c8a8dfSPeter Wemmexample:	all example.o
62b1c8a8dfSPeter Wemm	$(CC) -o example example.o -L. -lz
63b1c8a8dfSPeter Wemm
64b1c8a8dfSPeter Wemmtest: example minigzip
65b1c8a8dfSPeter Wemm	(export LD_LIBRARY_PATH=. ; ./example )
66b1c8a8dfSPeter Wemm	(export LD_LIBRARY_PATH=. ; \
67b1c8a8dfSPeter Wemm		echo hello world | ./minigzip | ./minigzip -d )
68b1c8a8dfSPeter Wemm
69*a021956cSBaptiste Daroussinbeforeinstall:
70*a021956cSBaptiste Daroussin	${INSTALL} -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
71*a021956cSBaptiste Daroussin		${.CURDIR}/zlib.pc ${DESTDIR}${LIBDATADIR}/pkgconfig
72*a021956cSBaptiste Daroussin
73b1c8a8dfSPeter Wemm.include <bsd.lib.mk>
7407b202a8SDimitry Andric
7507b202a8SDimitry Andric## XXX: clang integrated-as doesn't grok .intel_syntax directives yet
7607b202a8SDimitry Andric#ACFLAGS.gvmat64.S=	${CLANG_NO_IAS}
7707b202a8SDimitry Andric#ACFLAGS+=		${ACFLAGS.${.IMPSRC:T}}
78