1179323Skientzle# $FreeBSD$
2179323Skientzle
3228797SmmLIBARCHIVEDIR=	${.CURDIR}/../../../contrib/libarchive
4179323Skientzle
5228797Smm.PATH:	${LIBARCHIVEDIR}/cpio
6224154SmmCPIO_SRCS= cmdline.c
7179323Skientzle
8228797Smm.PATH:	${LIBARCHIVEDIR}/libarchive_fe
9238856SmmCPIO_SRCS+= err.c
10224154Smm
11228797Smm.PATH:	${LIBARCHIVEDIR}/cpio/test
12179323SkientzleTESTS=	\
13179323Skientzle	test_0.c				\
14179323Skientzle	test_basic.c				\
15248616Smm	test_cmdline.c				\
16248616Smm	test_extract_cpio_Z.c			\
17248616Smm	test_extract_cpio_bz2.c			\
18248616Smm	test_extract_cpio_grz.c			\
19248616Smm	test_extract_cpio_gz.c			\
20248616Smm	test_extract_cpio_lrz.c			\
21248616Smm	test_extract_cpio_lz.c			\
22248616Smm	test_extract_cpio_lzma.c		\
23248616Smm	test_extract_cpio_lzo.c			\
24248616Smm	test_extract_cpio_xz.c			\
25179323Skientzle	test_format_newc.c			\
26179323Skientzle	test_gcpio_compat.c			\
27232153Smm	test_option_0.c				\
28224154Smm	test_option_B_upper.c			\
29224154Smm	test_option_C_upper.c			\
30224154Smm	test_option_J_upper.c			\
31224154Smm	test_option_L_upper.c			\
32224154Smm	test_option_Z_upper.c			\
33179323Skientzle	test_option_a.c				\
34248616Smm	test_option_b64encode.c			\
35179323Skientzle	test_option_c.c				\
36179323Skientzle	test_option_d.c				\
37179323Skientzle	test_option_f.c				\
38248616Smm	test_option_grzip.c			\
39179323Skientzle	test_option_help.c			\
40224154Smm	test_option_l.c				\
41248616Smm	test_option_lrzip.c			\
42224154Smm	test_option_lzma.c			\
43248616Smm	test_option_lzop.c			\
44179323Skientzle	test_option_m.c				\
45179323Skientzle	test_option_t.c				\
46179323Skientzle	test_option_u.c				\
47248616Smm	test_option_uuencode.c			\
48179323Skientzle	test_option_version.c			\
49248616Smm	test_option_xz.c			\
50179323Skientzle	test_option_y.c				\
51179323Skientzle	test_option_z.c				\
52179323Skientzle	test_owner_parse.c			\
53182094Skientzle	test_passthrough_dotdot.c		\
54238856Smm	test_passthrough_reverse.c
55179323Skientzle
56179323Skientzle# Build the test program
57179323SkientzleSRCS= list.h					\
58179323Skientzle	${CPIO_SRCS}				\
59179323Skientzle	${TESTS}				\
60179323Skientzle	main.c
61179323Skientzle
62248616Smm.PATH:	${LIBARCHIVEDIR}/test_utils
63248616SmmSRCS+=	test_utils.c
64248616Smm
65182100SkientzleCLEANFILES+= list.h bsdcpio_test
66179323Skientzle
67179323SkientzleNO_MAN=yes
68179323Skientzle
69179323SkientzlePROG=bsdcpio_test
70207849SmmDPADD=${LIBARCHIVE} ${LIBBZ2} ${LIBZ} ${LIBLZMA}
71238856SmmCFLAGS+=	-DPLATFORM_CONFIG_H=\"${.CURDIR}/../../../lib/libarchive/config_freebsd.h\"
72238856SmmCFLAGS+=	-I${.CURDIR}/../../../lib/libarchive -I${.OBJDIR}
73207849SmmLDADD= -larchive -lz -lbz2 -llzma
74224154Smm#CFLAGS+= -static -g -O2 -Wall
75224154SmmCFLAGS+= -g -O2 -Wall
76179323SkientzleCFLAGS+= -I${.OBJDIR}
77228797SmmCFLAGS+= -I${LIBARCHIVEDIR}/cpio -I${LIBARCHIVEDIR}/libarchive_fe
78248616SmmCFLAGS+= -I${LIBARCHIVEDIR}/test_utils
79179323Skientzle
80179323Skientzle# Uncomment to link against dmalloc
81179323Skientzle#LDADD+= -L/usr/local/lib -ldmalloc
82179323Skientzle#CFLAGS+= -I/usr/local/include -DUSE_DMALLOC
83179323Skientzle
84179323Skientzlecheck test:	bsdcpio_test
85228797Smm	${.OBJDIR}/bsdcpio_test -p ${.OBJDIR}/../bsdcpio \
86228797Smm	-r ${LIBARCHIVEDIR}/cpio/test
87179323Skientzle
88179323Skientzle${.OBJDIR}/list.h list.h: ${TESTS} Makefile
89228797Smm	(cd ${LIBARCHIVEDIR}/cpio/test; cat ${TESTS}) | \
90228797Smm	grep DEFINE_TEST > ${.OBJDIR}/list.h
91179323Skientzle
92179323Skientzleclean:
93182100Skientzle	rm -f ${CLEANFILES}
94179323Skientzle	rm -f *~
95179323Skientzle	-chmod -R +w /tmp/bsdcpio_test.*
96238856Smm	rm -rf /tmp/bsdcpio_test.*
97179323Skientzle
98179323Skientzle.include <bsd.prog.mk>
99