xref: /freebsd/lib/libarchive/Makefile (revision 7c5b1173a5169d07bc8e5d8489e55381eb5e5736)
12710e4d1STim Kientzle# $FreeBSD$
2bfe891b1STim Kientzle
3bfe891b1STim KientzleLIB=	archive
4e4a93f1eSRuslan ErmilovDPADD=	${LIBBZ2} ${LIBZ}
5e4a93f1eSRuslan ErmilovLDADD=	-lbz2 -lz
6db38abe6STim Kientzle
79f322324STim Kientzle# The libarchive version stamp.
89f322324STim Kientzle# Version is three numbers:
924d698eaSTim Kientzle#  Major: Bumped ONLY when API/ABI breakage happens (see SHLIB_MAJOR)
1024d698eaSTim Kientzle#  Minor: Bumped when significant new features are added
119f322324STim Kientzle#  Revision: Bumped on any notable change
1224d698eaSTim Kientzle
139dd49f96STim Kientzle# The useful version number (one integer, easy to compare)
149695c83fSTim KientzleLIBARCHIVE_VERSION= 2004012
159dd49f96STim Kientzle# The pretty version string
169dd49f96STim KientzleLIBARCHIVE_VERSION_STRING!= echo $$((${LIBARCHIVE_VERSION} / 1000000)).$$((${LIBARCHIVE_VERSION} / 1000 % 1000)).$$((${LIBARCHIVE_VERSION} % 1000))
17db38abe6STim Kientzle
18a2b1e869STim Kientzle# FreeBSD SHLIB_MAJOR value is managed as part of the FreeBSD system.
19a2b1e869STim Kientzle# It has no real relation to the version number above.
20f81da3e5STim KientzleSHLIB_MAJOR= 4
21db38abe6STim Kientzle
22da7bcba2STim KientzleCFLAGS+=	-DPLATFORM_CONFIG_H=\"config_freebsd.h\"
23bfe891b1STim KientzleCFLAGS+=	-I${.OBJDIR}
24bfe891b1STim Kientzle
25bfe891b1STim KientzleWARNS?=	6
26bfe891b1STim Kientzle
27db38abe6STim Kientzle# Headers to be installed in /usr/include
28bfe891b1STim KientzleINCS=	archive.h archive_entry.h
29bfe891b1STim Kientzle
309f322324STim Kientzle# Build archive.h from archive.h.in by substituting version information.
31c12a9d81STim Kientzle# Note: FreeBSD has inttypes.h, so enable that include in archive.h.in
329f322324STim Kientzlearchive.h:	archive.h.in Makefile
33ab16ac78STim Kientzle	cat ${.CURDIR}/archive.h.in | sed				\
349dd49f96STim Kientzle		-e 's/@LIBARCHIVE_VERSION@/${LIBARCHIVE_VERSION}/g'	\
359dd49f96STim Kientzle		-e 's/@LIBARCHIVE_VERSION_STRING@/${LIBARCHIVE_VERSION_STRING}/g' \
36ab16ac78STim Kientzle		-e 's/@SHLIB_MAJOR@/${SHLIB_MAJOR}/g'			\
37ab16ac78STim Kientzle		-e 's|@ARCHIVE_H_INCLUDE_INTTYPES_H@|#include <inttypes.h>  /* For int64_t */|g' \
38ab16ac78STim Kientzle		> archive.h
399f322324STim Kientzle
409f322324STim Kientzle# archive.h needs to be cleaned
419f322324STim KientzleCLEANFILES+=	archive.h
429f322324STim Kientzle
439f322324STim Kientzle# Sources to be compiled.
449f322324STim KientzleSRCS=	archive.h					\
459f322324STim Kientzle	archive_check_magic.c				\
46bfe891b1STim Kientzle	archive_entry.c					\
47b48b40f1STim Kientzle	archive_entry_copy_stat.c			\
48b48b40f1STim Kientzle	archive_entry_stat.c				\
499dd49f96STim Kientzle	archive_entry_strmode.c				\
509dd49f96STim Kientzle	archive_entry_link_resolver.c			\
51bfe891b1STim Kientzle	archive_read.c					\
52bfe891b1STim Kientzle	archive_read_data_into_fd.c			\
53bfe891b1STim Kientzle	archive_read_extract.c				\
54bfe891b1STim Kientzle	archive_read_open_fd.c				\
5597fc4d2dSTim Kientzle	archive_read_open_file.c			\
56af6513d3STim Kientzle	archive_read_open_filename.c			\
5797fc4d2dSTim Kientzle	archive_read_open_memory.c			\
58bfe891b1STim Kientzle	archive_read_support_compression_all.c		\
59bfe891b1STim Kientzle	archive_read_support_compression_bzip2.c	\
60bfe891b1STim Kientzle	archive_read_support_compression_compress.c	\
61bfe891b1STim Kientzle	archive_read_support_compression_gzip.c		\
62bfe891b1STim Kientzle	archive_read_support_compression_none.c		\
63b48b40f1STim Kientzle	archive_read_support_compression_program.c	\
64bfe891b1STim Kientzle	archive_read_support_format_all.c		\
6537320c75STim Kientzle	archive_read_support_format_ar.c		\
66bfe891b1STim Kientzle	archive_read_support_format_cpio.c		\
67a9490c59STim Kientzle	archive_read_support_format_empty.c		\
685d9e84daSTim Kientzle	archive_read_support_format_iso9660.c		\
699dd49f96STim Kientzle	archive_read_support_format_mtree.c		\
70bfe891b1STim Kientzle	archive_read_support_format_tar.c		\
715958ff08STim Kientzle	archive_read_support_format_zip.c		\
72bfe891b1STim Kientzle	archive_string.c				\
73bfe891b1STim Kientzle	archive_string_sprintf.c			\
74bfe891b1STim Kientzle	archive_util.c					\
75f81da3e5STim Kientzle	archive_virtual.c				\
76bfe891b1STim Kientzle	archive_write.c					\
77f81da3e5STim Kientzle	archive_write_disk.c				\
78f81da3e5STim Kientzle	archive_write_disk_set_standard_lookup.c	\
79bfe891b1STim Kientzle	archive_write_open_fd.c				\
8097fc4d2dSTim Kientzle	archive_write_open_file.c			\
81af6513d3STim Kientzle	archive_write_open_filename.c			\
8297fc4d2dSTim Kientzle	archive_write_open_memory.c			\
83bfe891b1STim Kientzle	archive_write_set_compression_bzip2.c		\
847c5b1173STim Kientzle	archive_write_set_compression_compress.c	\
85bfe891b1STim Kientzle	archive_write_set_compression_gzip.c		\
86bfe891b1STim Kientzle	archive_write_set_compression_none.c		\
87b48b40f1STim Kientzle	archive_write_set_compression_program.c		\
88bfe891b1STim Kientzle	archive_write_set_format.c			\
8994451fa8STim Kientzle	archive_write_set_format_ar.c			\
90bfe891b1STim Kientzle	archive_write_set_format_by_name.c		\
91bfe891b1STim Kientzle	archive_write_set_format_cpio.c			\
9217e60e62STim Kientzle	archive_write_set_format_cpio_newc.c		\
93bfe891b1STim Kientzle	archive_write_set_format_pax.c			\
94bfe891b1STim Kientzle	archive_write_set_format_shar.c			\
95b48b40f1STim Kientzle	archive_write_set_format_ustar.c		\
96b48b40f1STim Kientzle	filter_fork.c
97bfe891b1STim Kientzle
98db38abe6STim Kientzle# Man pages to be installed.
99bfe891b1STim KientzleMAN=	archive_entry.3					\
100bfe891b1STim Kientzle	archive_read.3					\
101bfe891b1STim Kientzle	archive_util.3					\
102bfe891b1STim Kientzle	archive_write.3					\
103f81da3e5STim Kientzle	archive_write_disk.3				\
1049dd49f96STim Kientzle	cpio.5						\
105bfe891b1STim Kientzle	libarchive.3					\
106bfe891b1STim Kientzle	libarchive-formats.5				\
107bfe891b1STim Kientzle	tar.5
108bfe891b1STim Kientzle
109db38abe6STim Kientzle# Symlink the man pages under each function name.
110bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_acl_add_entry.3
111bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_acl_add_entry_w.3
112bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_acl_clear.3
113bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_acl_count.3
114bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_acl_next.3
115bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_acl_next_w.3
116bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_acl_reset.3
117bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_acl_text_w.3
118bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_clear.3
119bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_clone.3
120bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_copy_fflags_text_w.3
12175d0856cSTim KientzleMLINKS+=	archive_entry.3 archive_entry_copy_gname.3
122bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_copy_gname_w.3
123bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_copy_hardlink_w.3
124bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_copy_pathname_w.3
125bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_copy_stat.3
126bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_copy_symlink_w.3
12775d0856cSTim KientzleMLINKS+=	archive_entry.3 archive_entry_copy_uname.3
128bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_copy_uname_w.3
129b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_dev.3
130b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_devmajor.3
131b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_devminor.3
132b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_filetype.3
133bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_fflags.3
134bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_fflags_text.3
135bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_free.3
136bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_gid.3
137bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_gname.3
138bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_gname_w.3
139bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_hardlink.3
140bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_ino.3
141bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_mode.3
142bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_mtime.3
143bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_mtime_nsec.3
144b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_nlink.3
145bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_new.3
146bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_pathname.3
147bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_pathname_w.3
148bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_rdev.3
149bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_rdevmajor.3
150bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_rdevminor.3
151b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_atime.3
152b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_ctime.3
153b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_dev.3
154b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_devmajor.3
155b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_devminor.3
156bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_fflags.3
157bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_gid.3
158bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_gname.3
159bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_hardlink.3
160bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_link.3
161bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_mode.3
162b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_mtime.3
163b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_nlink.3
164bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_pathname.3
165b48b40f1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_rdev.3
166bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_rdevmajor.3
167bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_rdevminor.3
168bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_size.3
169bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_symlink.3
170bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_uid.3
171bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_set_uname.3
172bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_size.3
173bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_stat.3
174bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_symlink.3
175bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_uid.3
176bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_uname.3
177bfe891b1STim KientzleMLINKS+=	archive_entry.3 archive_entry_uname_w.3
178bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_data.3
179bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_data_block.3
180bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_data_into_buffer.3
181bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_data_into_fd.3
182bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_data_skip.3
183bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_extract.3
184bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_extract_set_progress_callback.3
185c12a9d81STim KientzleMLINKS+=	archive_read.3 archive_read_extract_set_skip_file.3
186bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_finish.3
187bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_new.3
188bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_next_header.3
189bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_open.3
190c12a9d81STim KientzleMLINKS+=	archive_read.3 archive_read_open2.3
19197fc4d2dSTim KientzleMLINKS+=	archive_read.3 archive_read_open_FILE.3
192bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_open_fd.3
193bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_open_file.3
194af6513d3STim KientzleMLINKS+=	archive_read.3 archive_read_open_filename.3
19597fc4d2dSTim KientzleMLINKS+=	archive_read.3 archive_read_open_memory.3
196bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_support_compression_all.3
197bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_support_compression_bzip2.3
198bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_support_compression_compress.3
199bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_support_compression_gzip.3
200bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_support_compression_none.3
201b48b40f1STim KientzleMLINKS+=	archive_read.3 archive_read_support_compression_program.3
202bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_support_format_all.3
203bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_support_format_cpio.3
20409cad9b5STim KientzleMLINKS+=	archive_read.3 archive_read_support_format_iso9660.3
205bfe891b1STim KientzleMLINKS+=	archive_read.3 archive_read_support_format_tar.3
2065958ff08STim KientzleMLINKS+=	archive_read.3 archive_read_support_format_zip.3
207f81da3e5STim KientzleMLINKS+=	archive_util.3 archive_clear_error.3
208bfe891b1STim KientzleMLINKS+=	archive_util.3 archive_compression.3
209bfe891b1STim KientzleMLINKS+=	archive_util.3 archive_compression_name.3
210bfe891b1STim KientzleMLINKS+=	archive_util.3 archive_errno.3
211bfe891b1STim KientzleMLINKS+=	archive_util.3 archive_error_string.3
212bfe891b1STim KientzleMLINKS+=	archive_util.3 archive_format.3
213bfe891b1STim KientzleMLINKS+=	archive_util.3 archive_format_name.3
214b772d06cSTim KientzleMLINKS+=	archive_util.3 archive_set_error.3
215bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_data.3
216bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_finish.3
217dc46be1cSTim KientzleMLINKS+=	archive_write.3 archive_write_finish_entry.3
218dc46be1cSTim KientzleMLINKS+=	archive_write.3 archive_write_get_bytes_in_last_block.3
219dc46be1cSTim KientzleMLINKS+=	archive_write.3 archive_write_get_bytes_per_block.3
220bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_header.3
221bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_new.3
222bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_open.3
22397fc4d2dSTim KientzleMLINKS+=	archive_write.3 archive_write_open_FILE.3
224bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_open_fd.3
225bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_open_file.3
226af6513d3STim KientzleMLINKS+=	archive_write.3 archive_write_open_filename.3
22797fc4d2dSTim KientzleMLINKS+=	archive_write.3 archive_write_open_memory.3
228bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_set_bytes_in_last_block.3
22997fc4d2dSTim KientzleMLINKS+=	archive_write.3 archive_write_set_bytes_per_block.3
230bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_set_callbacks.3
231bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_set_compression_bzip2.3
232bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_set_compression_gzip.3
233b48b40f1STim KientzleMLINKS+=	archive_write.3 archive_write_set_compression_none.3
234b48b40f1STim KientzleMLINKS+=	archive_write.3 archive_write_set_compression_program.3
235bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_set_format_pax.3
236bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_set_format_shar.3
237bfe891b1STim KientzleMLINKS+=	archive_write.3 archive_write_set_format_ustar.3
238f81da3e5STim KientzleMLINKS+=	archive_write_disk.3 archive_write_disk_new.3
239f81da3e5STim KientzleMLINKS+=	archive_write_disk.3 archive_write_disk_set_group_lookup.3
240f81da3e5STim KientzleMLINKS+=	archive_write_disk.3 archive_write_disk_set_options.3
241f81da3e5STim KientzleMLINKS+=	archive_write_disk.3 archive_write_disk_set_skip_file.3
242f81da3e5STim KientzleMLINKS+=	archive_write_disk.3 archive_write_disk_set_standard_lookup.3
243f81da3e5STim KientzleMLINKS+=	archive_write_disk.3 archive_write_disk_set_user_lookup.3
244bfe891b1STim KientzleMLINKS+=	libarchive.3 archive.3
245bfe891b1STim Kientzle
2469dd49f96STim Kientzlecheck:
247f81da3e5STim Kientzle	cd ${.CURDIR}/test && make test
248f81da3e5STim Kientzle
249bfe891b1STim Kientzle.include <bsd.lib.mk>
250