Makefile revision 1.11 1 # $NetBSD: Makefile,v 1.11 2022/07/22 15:43:37 wiz Exp $
2
3 .include <bsd.init.mk>
4
5 LIB= lzma
6 USE_SHLIBDIR= yes
7 NOLINT= yes
8
9
10 .PATH: ${XZSRCDIR}/src/liblzma/api ${XZSRCDIR}/src/liblzma/api/lzma
11 INCS+= base.h bcj.h block.h check.h container.h delta.h \
12 filter.h hardware.h index.h index_hash.h lzma.h lzma12.h \
13 stream_flags.h version.h vli.h
14
15 INCSDIR_lzma.h= /usr/include
16 INCSDIR= /usr/include/lzma
17
18 .if ${MKSANITIZER} != "yes"
19 LDFLAGS+= -Wl,-z,defs
20 .endif
21
22 CPPFLAGS+= -I${XZSRCDIR}/src/common
23 CPPFLAGS+= -I${XZSRCDIR}/src/liblzma/check
24 CPPFLAGS+= -I${XZSRCDIR}/src/liblzma/common
25 CPPFLAGS+= -I${XZSRCDIR}/src/liblzma/delta
26 CPPFLAGS+= -I${XZSRCDIR}/src/liblzma/lz
27 CPPFLAGS+= -I${XZSRCDIR}/src/liblzma/lzma
28 CPPFLAGS+= -I${XZSRCDIR}/src/liblzma/rangecoder
29 CPPFLAGS+= -I${XZSRCDIR}/src/liblzma/simple
30 CPPFLAGS+= -DTUKLIB_SYMBOL_PREFIX=lzma_
31 CPPFLAGS+= -DNETBSD_NATIVE_SHA256
32
33 .PATH: ${XZSRCDIR}/src/common
34 SRCS+= tuklib_physmem.c tuklib_cpucores.c
35
36 .PATH: ${XZSRCDIR}/src/liblzma/check
37 SRCS+= check.c crc32_table.c crc64_table.c
38 SRCS+= crc32_fast.c crc64_fast.c
39
40 .if defined(HOSTLIB)
41 SRCS+= sha256.c
42 .endif
43
44 .PATH: ${XZSRCDIR}/src/liblzma/common
45 SRCS+= common.c block_util.c easy_preset.c filter_common.c \
46 hardware_physmem.c hardware_cputhreads.c index.c \
47 stream_flags_common.c vli_size.c \
48 alone_encoder.c block_buffer_encoder.c block_encoder.c \
49 block_header_encoder.c easy_buffer_encoder.c easy_encoder.c \
50 easy_encoder_memusage.c filter_buffer_encoder.c \
51 filter_encoder.c filter_flags_encoder.c index_encoder.c \
52 stream_buffer_encoder.c stream_encoder.c \
53 stream_flags_encoder.c vli_encoder.c outqueue.c \
54 alone_decoder.c auto_decoder.c block_buffer_decoder.c \
55 block_decoder.c block_header_decoder.c easy_decoder_memusage.c \
56 filter_buffer_decoder.c filter_decoder.c filter_flags_decoder.c \
57 index_decoder.c index_hash.c stream_buffer_decoder.c \
58 stream_decoder.c stream_flags_decoder.c vli_decoder.c
59
60 .if !defined(HOSTLIB)
61 SRCS+= stream_encoder_mt.c
62 .endif
63
64 .PATH: ${XZSRCDIR}/src/liblzma/delta
65 SRCS+= delta_common.c delta_encoder.c delta_decoder.c
66
67 .PATH: ${XZSRCDIR}/src/liblzma/lz
68 SRCS+= lz_decoder.c lz_encoder.c lz_encoder_mf.c
69
70 .PATH: ${XZSRCDIR}/src/liblzma/lzma
71 SRCS+= lzma_encoder.c lzma_encoder_presets.c \
72 lzma_encoder_optimum_fast.c lzma_encoder_optimum_normal.c \
73 lzma_decoder.c lzma2_encoder.c lzma2_decoder.c \
74 fastpos_table.c
75
76 .PATH: ${XZSRCDIR}/src/liblzma/rangecoder
77 SRCS+= price_table.c
78
79 .PATH: ${XZSRCDIR}/src/liblzma/simple
80 SRCS+= simple_coder.c simple_encoder.c simple_decoder.c \
81 arm.c armthumb.c ia64.c powerpc.c sparc.c x86.c
82
83 FILES+= liblzma.pc
84 FILESDIR_liblzma.pc= /usr/lib/pkgconfig
85
86 liblzma.pc: ${XZSRCDIR}/src/liblzma/liblzma.pc.in
87 ${_MKTARGET_CREATE}
88 rm -f ${.TARGET}
89 ${TOOL_SED} \
90 -e 's,@prefix@,/usr,' \
91 -e 's,@exec_prefix@,/usr,' \
92 -e 's,@libdir@,/usr/lib,' \
93 -e 's,@includedir@,/usr/include,' \
94 -e 's,@PACKAGE_URL@,${XZHOMEPAGE:Q},' \
95 -e 's,@PACKAGE_VERSION@,${XZVERSION:Q},' \
96 -e 's,@PTHREAD_CFLAGS@ @LIBS@,-lpthread,' \
97 < ${XZSRCDIR}/src/liblzma/liblzma.pc.in \
98 > ${.TARGET}.tmp && \
99 mv -f ${.TARGET}.tmp ${.TARGET}
100
101 .if ${MACHINE_ARCH} == "i386"
102 COPTS += ${${ACTIVE_CC} == "gcc":? -Wno-error=psabi :}
103 .endif
104
105 CLEANFILES+= liblzma.pc
106
107 .if defined(HOSTLIB)
108 HOST_CPPFLAGS+= ${CPPFLAGS:N-Wp,-iremap,*}
109 .include <bsd.hostlib.mk>
110 .else
111 LIBDPLIBS+= pthread ${NETBSDSRCDIR}/lib/libpthread
112 .include <bsd.lib.mk>
113 .endif
114
115 all: liblzma.pc
116 dependall: all
117