xref: /freebsd/lib/libarchive/Makefile (revision 1e413cf93298b5b97441a21d9a50fdcd0ee9945e)
1# $FreeBSD$
2
3LIB=	archive
4DPADD=	${LIBBZ2} ${LIBZ}
5LDADD=	-lbz2 -lz
6
7# The libarchive version stamp.
8# Version is three numbers:
9#  Major: Bumped ONLY when API/ABI breakage happens (see SHLIB_MAJOR)
10#  Minor: Bumped when significant new features are added
11#  Revision: Bumped on any notable change
12
13# The useful version number (one integer, easy to compare)
14LIBARCHIVE_VERSION= 2004010
15# The pretty version string
16LIBARCHIVE_VERSION_STRING!= echo $$((${LIBARCHIVE_VERSION} / 1000000)).$$((${LIBARCHIVE_VERSION} / 1000 % 1000)).$$((${LIBARCHIVE_VERSION} % 1000))
17
18# FreeBSD SHLIB_MAJOR value is managed as part of the FreeBSD system.
19# It has no real relation to the version number above.
20SHLIB_MAJOR= 4
21
22CFLAGS+=	-DPLATFORM_CONFIG_H=\"config_freebsd.h\"
23CFLAGS+=	-I${.OBJDIR}
24
25WARNS?=	6
26
27# Headers to be installed in /usr/include
28INCS=	archive.h archive_entry.h
29
30# Build archive.h from archive.h.in by substituting version information.
31# Note: FreeBSD has inttypes.h, so enable that include in archive.h.in
32archive.h:	archive.h.in Makefile
33	cat ${.CURDIR}/archive.h.in | sed				\
34		-e 's/@LIBARCHIVE_VERSION@/${LIBARCHIVE_VERSION}/g'	\
35		-e 's/@LIBARCHIVE_VERSION_STRING@/${LIBARCHIVE_VERSION_STRING}/g' \
36		-e 's/@SHLIB_MAJOR@/${SHLIB_MAJOR}/g'			\
37		-e 's|@ARCHIVE_H_INCLUDE_INTTYPES_H@|#include <inttypes.h>  /* For int64_t */|g' \
38		> archive.h
39
40# archive.h needs to be cleaned
41CLEANFILES+=	archive.h
42
43# Sources to be compiled.
44SRCS=	archive.h					\
45	archive_check_magic.c				\
46	archive_entry.c					\
47	archive_entry_copy_stat.c			\
48	archive_entry_stat.c				\
49	archive_entry_strmode.c				\
50	archive_entry_link_resolver.c			\
51	archive_read.c					\
52	archive_read_data_into_fd.c			\
53	archive_read_extract.c				\
54	archive_read_open_fd.c				\
55	archive_read_open_file.c			\
56	archive_read_open_filename.c			\
57	archive_read_open_memory.c			\
58	archive_read_support_compression_all.c		\
59	archive_read_support_compression_bzip2.c	\
60	archive_read_support_compression_compress.c	\
61	archive_read_support_compression_gzip.c		\
62	archive_read_support_compression_none.c		\
63	archive_read_support_compression_program.c	\
64	archive_read_support_format_all.c		\
65	archive_read_support_format_ar.c		\
66	archive_read_support_format_cpio.c		\
67	archive_read_support_format_empty.c		\
68	archive_read_support_format_iso9660.c		\
69	archive_read_support_format_mtree.c		\
70	archive_read_support_format_tar.c		\
71	archive_read_support_format_zip.c		\
72	archive_string.c				\
73	archive_string_sprintf.c			\
74	archive_util.c					\
75	archive_virtual.c				\
76	archive_write.c					\
77	archive_write_disk.c				\
78	archive_write_disk_set_standard_lookup.c	\
79	archive_write_open_fd.c				\
80	archive_write_open_file.c			\
81	archive_write_open_filename.c			\
82	archive_write_open_memory.c			\
83	archive_write_set_compression_bzip2.c		\
84	archive_write_set_compression_gzip.c		\
85	archive_write_set_compression_none.c		\
86	archive_write_set_compression_program.c		\
87	archive_write_set_format.c			\
88	archive_write_set_format_ar.c			\
89	archive_write_set_format_by_name.c		\
90	archive_write_set_format_cpio.c			\
91	archive_write_set_format_cpio_newc.c		\
92	archive_write_set_format_pax.c			\
93	archive_write_set_format_shar.c			\
94	archive_write_set_format_ustar.c		\
95	filter_fork.c
96
97# Man pages to be installed.
98MAN=	archive_entry.3					\
99	archive_read.3					\
100	archive_util.3					\
101	archive_write.3					\
102	archive_write_disk.3				\
103	cpio.5						\
104	libarchive.3					\
105	libarchive-formats.5				\
106	tar.5
107
108# Symlink the man pages under each function name.
109MLINKS+=	archive_entry.3 archive_entry_acl_add_entry.3
110MLINKS+=	archive_entry.3 archive_entry_acl_add_entry_w.3
111MLINKS+=	archive_entry.3 archive_entry_acl_clear.3
112MLINKS+=	archive_entry.3 archive_entry_acl_count.3
113MLINKS+=	archive_entry.3 archive_entry_acl_next.3
114MLINKS+=	archive_entry.3 archive_entry_acl_next_w.3
115MLINKS+=	archive_entry.3 archive_entry_acl_reset.3
116MLINKS+=	archive_entry.3 archive_entry_acl_text_w.3
117MLINKS+=	archive_entry.3 archive_entry_clear.3
118MLINKS+=	archive_entry.3 archive_entry_clone.3
119MLINKS+=	archive_entry.3 archive_entry_copy_fflags_text_w.3
120MLINKS+=	archive_entry.3 archive_entry_copy_gname.3
121MLINKS+=	archive_entry.3 archive_entry_copy_gname_w.3
122MLINKS+=	archive_entry.3 archive_entry_copy_hardlink_w.3
123MLINKS+=	archive_entry.3 archive_entry_copy_pathname_w.3
124MLINKS+=	archive_entry.3 archive_entry_copy_stat.3
125MLINKS+=	archive_entry.3 archive_entry_copy_symlink_w.3
126MLINKS+=	archive_entry.3 archive_entry_copy_uname.3
127MLINKS+=	archive_entry.3 archive_entry_copy_uname_w.3
128MLINKS+=	archive_entry.3 archive_entry_dev.3
129MLINKS+=	archive_entry.3 archive_entry_devmajor.3
130MLINKS+=	archive_entry.3 archive_entry_devminor.3
131MLINKS+=	archive_entry.3 archive_entry_filetype.3
132MLINKS+=	archive_entry.3 archive_entry_fflags.3
133MLINKS+=	archive_entry.3 archive_entry_fflags_text.3
134MLINKS+=	archive_entry.3 archive_entry_free.3
135MLINKS+=	archive_entry.3 archive_entry_gid.3
136MLINKS+=	archive_entry.3 archive_entry_gname.3
137MLINKS+=	archive_entry.3 archive_entry_gname_w.3
138MLINKS+=	archive_entry.3 archive_entry_hardlink.3
139MLINKS+=	archive_entry.3 archive_entry_ino.3
140MLINKS+=	archive_entry.3 archive_entry_mode.3
141MLINKS+=	archive_entry.3 archive_entry_mtime.3
142MLINKS+=	archive_entry.3 archive_entry_mtime_nsec.3
143MLINKS+=	archive_entry.3 archive_entry_nlink.3
144MLINKS+=	archive_entry.3 archive_entry_new.3
145MLINKS+=	archive_entry.3 archive_entry_pathname.3
146MLINKS+=	archive_entry.3 archive_entry_pathname_w.3
147MLINKS+=	archive_entry.3 archive_entry_rdev.3
148MLINKS+=	archive_entry.3 archive_entry_rdevmajor.3
149MLINKS+=	archive_entry.3 archive_entry_rdevminor.3
150MLINKS+=	archive_entry.3 archive_entry_set_atime.3
151MLINKS+=	archive_entry.3 archive_entry_set_ctime.3
152MLINKS+=	archive_entry.3 archive_entry_set_dev.3
153MLINKS+=	archive_entry.3 archive_entry_set_devmajor.3
154MLINKS+=	archive_entry.3 archive_entry_set_devminor.3
155MLINKS+=	archive_entry.3 archive_entry_set_fflags.3
156MLINKS+=	archive_entry.3 archive_entry_set_gid.3
157MLINKS+=	archive_entry.3 archive_entry_set_gname.3
158MLINKS+=	archive_entry.3 archive_entry_set_hardlink.3
159MLINKS+=	archive_entry.3 archive_entry_set_link.3
160MLINKS+=	archive_entry.3 archive_entry_set_mode.3
161MLINKS+=	archive_entry.3 archive_entry_set_mtime.3
162MLINKS+=	archive_entry.3 archive_entry_set_nlink.3
163MLINKS+=	archive_entry.3 archive_entry_set_pathname.3
164MLINKS+=	archive_entry.3 archive_entry_set_rdev.3
165MLINKS+=	archive_entry.3 archive_entry_set_rdevmajor.3
166MLINKS+=	archive_entry.3 archive_entry_set_rdevminor.3
167MLINKS+=	archive_entry.3 archive_entry_set_size.3
168MLINKS+=	archive_entry.3 archive_entry_set_symlink.3
169MLINKS+=	archive_entry.3 archive_entry_set_uid.3
170MLINKS+=	archive_entry.3 archive_entry_set_uname.3
171MLINKS+=	archive_entry.3 archive_entry_size.3
172MLINKS+=	archive_entry.3 archive_entry_stat.3
173MLINKS+=	archive_entry.3 archive_entry_symlink.3
174MLINKS+=	archive_entry.3 archive_entry_uid.3
175MLINKS+=	archive_entry.3 archive_entry_uname.3
176MLINKS+=	archive_entry.3 archive_entry_uname_w.3
177MLINKS+=	archive_read.3 archive_read_data.3
178MLINKS+=	archive_read.3 archive_read_data_block.3
179MLINKS+=	archive_read.3 archive_read_data_into_buffer.3
180MLINKS+=	archive_read.3 archive_read_data_into_fd.3
181MLINKS+=	archive_read.3 archive_read_data_skip.3
182MLINKS+=	archive_read.3 archive_read_extract.3
183MLINKS+=	archive_read.3 archive_read_extract_set_progress_callback.3
184MLINKS+=	archive_read.3 archive_read_extract_set_skip_file.3
185MLINKS+=	archive_read.3 archive_read_finish.3
186MLINKS+=	archive_read.3 archive_read_new.3
187MLINKS+=	archive_read.3 archive_read_next_header.3
188MLINKS+=	archive_read.3 archive_read_open.3
189MLINKS+=	archive_read.3 archive_read_open2.3
190MLINKS+=	archive_read.3 archive_read_open_FILE.3
191MLINKS+=	archive_read.3 archive_read_open_fd.3
192MLINKS+=	archive_read.3 archive_read_open_file.3
193MLINKS+=	archive_read.3 archive_read_open_filename.3
194MLINKS+=	archive_read.3 archive_read_open_memory.3
195MLINKS+=	archive_read.3 archive_read_support_compression_all.3
196MLINKS+=	archive_read.3 archive_read_support_compression_bzip2.3
197MLINKS+=	archive_read.3 archive_read_support_compression_compress.3
198MLINKS+=	archive_read.3 archive_read_support_compression_gzip.3
199MLINKS+=	archive_read.3 archive_read_support_compression_none.3
200MLINKS+=	archive_read.3 archive_read_support_compression_program.3
201MLINKS+=	archive_read.3 archive_read_support_format_all.3
202MLINKS+=	archive_read.3 archive_read_support_format_cpio.3
203MLINKS+=	archive_read.3 archive_read_support_format_iso9660.3
204MLINKS+=	archive_read.3 archive_read_support_format_tar.3
205MLINKS+=	archive_read.3 archive_read_support_format_zip.3
206MLINKS+=	archive_util.3 archive_clear_error.3
207MLINKS+=	archive_util.3 archive_compression.3
208MLINKS+=	archive_util.3 archive_compression_name.3
209MLINKS+=	archive_util.3 archive_errno.3
210MLINKS+=	archive_util.3 archive_error_string.3
211MLINKS+=	archive_util.3 archive_format.3
212MLINKS+=	archive_util.3 archive_format_name.3
213MLINKS+=	archive_util.3 archive_set_error.3
214MLINKS+=	archive_write.3 archive_write_data.3
215MLINKS+=	archive_write.3 archive_write_finish.3
216MLINKS+=	archive_write.3 archive_write_finish_entry.3
217MLINKS+=	archive_write.3 archive_write_get_bytes_in_last_block.3
218MLINKS+=	archive_write.3 archive_write_get_bytes_per_block.3
219MLINKS+=	archive_write.3 archive_write_header.3
220MLINKS+=	archive_write.3 archive_write_new.3
221MLINKS+=	archive_write.3 archive_write_open.3
222MLINKS+=	archive_write.3 archive_write_open_FILE.3
223MLINKS+=	archive_write.3 archive_write_open_fd.3
224MLINKS+=	archive_write.3 archive_write_open_file.3
225MLINKS+=	archive_write.3 archive_write_open_filename.3
226MLINKS+=	archive_write.3 archive_write_open_memory.3
227MLINKS+=	archive_write.3 archive_write_set_bytes_in_last_block.3
228MLINKS+=	archive_write.3 archive_write_set_bytes_per_block.3
229MLINKS+=	archive_write.3 archive_write_set_callbacks.3
230MLINKS+=	archive_write.3 archive_write_set_compression_bzip2.3
231MLINKS+=	archive_write.3 archive_write_set_compression_gzip.3
232MLINKS+=	archive_write.3 archive_write_set_compression_none.3
233MLINKS+=	archive_write.3 archive_write_set_compression_program.3
234MLINKS+=	archive_write.3 archive_write_set_format_pax.3
235MLINKS+=	archive_write.3 archive_write_set_format_shar.3
236MLINKS+=	archive_write.3 archive_write_set_format_ustar.3
237MLINKS+=	archive_write_disk.3 archive_write_disk_new.3
238MLINKS+=	archive_write_disk.3 archive_write_disk_set_group_lookup.3
239MLINKS+=	archive_write_disk.3 archive_write_disk_set_options.3
240MLINKS+=	archive_write_disk.3 archive_write_disk_set_skip_file.3
241MLINKS+=	archive_write_disk.3 archive_write_disk_set_standard_lookup.3
242MLINKS+=	archive_write_disk.3 archive_write_disk_set_user_lookup.3
243MLINKS+=	libarchive.3 archive.3
244
245check:
246	cd ${.CURDIR}/test && make test
247
248.include <bsd.lib.mk>
249