]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - lib/liblzma/Makefile
MFV r277870
[FreeBSD/FreeBSD.git] / lib / liblzma / Makefile
1 # $FreeBSD$
2
3 LIB=            lzma
4 LZMADIR=        ${.CURDIR}/../../contrib/xz/src/liblzma
5
6 .PATH: ${LZMADIR}/../common
7 SRCS+=  tuklib_physmem.c
8
9 .PATH: ${LZMADIR}/api/lzma
10
11 MAININCS=       ../lzma.h
12 MAININCSDIR=    ${INCLUDEDIR}
13
14 LZMAINCS+=      base.h \
15                 bcj.h \
16                 block.h \
17                 check.h \
18                 container.h \
19                 delta.h \
20                 filter.h \
21                 hardware.h \
22                 index.h \
23                 index_hash.h \
24                 lzma.h \
25                 stream_flags.h \
26                 version.h \
27                 vli.h
28
29 LZMAINCSDIR=    ${INCLUDEDIR}/lzma
30
31 INCSGROUPS=     MAININCS LZMAINCS
32
33 .PATH: ${LZMADIR}/common
34 SRCS+=  common.c \
35         block_util.c \
36         easy_preset.c \
37         filter_common.c \
38         hardware_physmem.c \
39         index.c \
40         stream_flags_common.c \
41         vli_size.c \
42         alone_encoder.c \
43         block_buffer_encoder.c \
44         block_encoder.c \
45         block_header_encoder.c \
46         easy_buffer_encoder.c \
47         easy_encoder.c \
48         easy_encoder_memusage.c \
49         filter_buffer_encoder.c \
50         filter_encoder.c \
51         filter_flags_encoder.c \
52         index_encoder.c \
53         stream_buffer_encoder.c \
54         stream_encoder.c \
55         stream_flags_encoder.c \
56         vli_encoder.c \
57         alone_decoder.c \
58         auto_decoder.c \
59         block_buffer_decoder.c \
60         block_decoder.c \
61         block_header_decoder.c \
62         easy_decoder_memusage.c \
63         filter_buffer_decoder.c \
64         filter_decoder.c \
65         filter_flags_decoder.c \
66         index_decoder.c \
67         index_hash.c \
68         stream_buffer_decoder.c \
69         stream_decoder.c \
70         stream_flags_decoder.c \
71         vli_decoder.c
72
73 .PATH: ${LZMADIR}/check
74 SRCS+=  check.c \
75         crc32_table.c \
76         crc64_table.c \
77         sha256.c
78 .if defined(MACHINE_ARCH) && ${MACHINE_ARCH} == "i386"
79 SRCS+=  crc32_x86.S \
80         crc64_x86.S
81 ACFLAGS+=       -Wa,--noexecstack
82 .else
83 SRCS+=  crc32_fast.c \
84         crc64_fast.c
85 .endif
86
87 .PATH: ${LZMADIR}/lz
88 SRCS+=  lz_encoder.c \
89         lz_encoder_mf.c \
90         lz_decoder.c
91
92 .PATH: ${LZMADIR}/lzma
93 SRCS+=  lzma_encoder.c \
94         lzma_encoder_presets.c \
95         lzma_encoder_optimum_fast.c \
96         lzma_encoder_optimum_normal.c \
97         fastpos_table.c \
98         lzma_decoder.c \
99         lzma2_encoder.c \
100         lzma2_decoder.c
101
102 .PATH: ${LZMADIR}/rangecoder
103 SRCS+=  price_table.c
104
105 .PATH: ${LZMADIR}/delta
106 SRCS+=  delta_common.c \
107         delta_encoder.c \
108         delta_decoder.c
109
110 .PATH: ${LZMADIR}/simple
111 SRCS+=  simple_coder.c \
112         simple_encoder.c \
113         simple_decoder.c \
114         x86.c \
115         powerpc.c \
116         ia64.c \
117         arm.c \
118         armthumb.c \
119         sparc.c
120
121 .PATH: ${LZMADIR}
122
123 VERSION_MAJOR!= awk '$$1 == "\#define" && $$2 == "LZMA_VERSION_MAJOR" {print $$3 } ' \
124                         ${LZMADIR}/api/lzma/version.h
125 VERSION_MINOR!= awk '$$1 == "\#define" && $$2 == "LZMA_VERSION_MINOR" {print $$3 } ' \
126                         ${LZMADIR}/api/lzma/version.h
127 VERSION_PATCH!= awk '$$1 == "\#define" && $$2 == "LZMA_VERSION_PATCH" {print $$3 } ' \
128                         ${LZMADIR}/api/lzma/version.h
129
130 WARNS?= 3
131
132 CFLAGS+=        -DHAVE_CONFIG_H \
133                 -DTUKLIB_SYMBOL_PREFIX=lzma_ \
134                 -I${.CURDIR} \
135                 -I${LZMADIR}/api \
136                 -I${LZMADIR}/common \
137                 -I${LZMADIR}/check \
138                 -I${LZMADIR}/lz \
139                 -I${LZMADIR}/rangecoder \
140                 -I${LZMADIR}/lzma \
141                 -I${LZMADIR}/delta \
142                 -I${LZMADIR}/simple \
143                 -I${LZMADIR}/../common
144
145 VERSION_DEF=    ${.CURDIR}/Versions.def
146 SYMBOL_MAPS=    ${.CURDIR}/Symbol.map
147 CFLAGS+=        -DSYMBOL_VERSIONING
148
149 CLEANFILES+=    liblzma.pc
150
151 .if !defined(LIBRARIES_ONLY)
152 all: liblzma.pc
153 liblzma.pc: liblzma.pc.in
154         @sed -e 's,@prefix@,/usr,g ; \
155                 s,@exec_prefix@,/usr,g  ; \
156                 s,@libdir@,/usr/lib,g ; \
157                 s,@includedir@,/usr/include,g ; \
158                 s,@PACKAGE_URL@,http://tukaani.org/xz/,g ; \
159                 s,@PACKAGE_VERSION@,${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH},g ; \
160                 s,@PTHREAD_CFLAGS@,,g ; \
161                 s,@PTHREAD_LIBS@,,g' ${.ALLSRC} > ${.TARGET}
162
163 beforeinstall:
164         @${INSTALL} -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
165                 liblzma.pc ${DESTDIR}${LIBDATADIR}/pkgconfig
166 .endif
167
168 .include <bsd.lib.mk>