Makefile revision 1.30
11.30Srillig#	$NetBSD: Makefile,v 1.30 2021/10/23 20:17:08 rillig Exp $
21.1Skamil
31.1Skamil.include <bsd.own.mk>
41.1Skamil
51.1SkamilTESTSDIR=	${TESTSBASE}/usr.bin/indent
61.14SrilligTESTS_SH=	t_errors
71.14SrilligTESTS_SH+=	t_indent
81.15SrilligTESTS_SH+=	t_misc
91.16SrilligTESTS_SH+=	t_options
101.1Skamil
111.1SkamilFILESDIR=	${TESTSDIR}
121.25SrilligFILES=		fmt_block.c
131.25SrilligFILES+=		fmt_decl.c
141.25SrilligFILES+=		fmt_else_comment.c
151.30SrilligFILES+=		fmt_expr.c
161.24SrilligFILES+=		indent_off_on.c
171.19SrilligFILES+=		label.c
181.25SrilligFILES+=		lex_ident.c
191.27SrilligFILES+=		lex_char.c
201.27SrilligFILES+=		lex_string.c
211.3SrilligFILES+=		opt--version.0
221.3SrilligFILES+=		opt--version.0.pro
231.3SrilligFILES+=		opt--version.0.stdout
241.3SrilligFILES+=		opt-U.0
251.3SrilligFILES+=		opt-U.0.list
261.3SrilligFILES+=		opt-U.0.pro
271.3SrilligFILES+=		opt-U.0.stdout
281.6SrilligFILES+=		opt-bap+sob.0
291.6SrilligFILES+=		opt-bap+sob.0.pro
301.6SrilligFILES+=		opt-bap+sob.0.stdout
311.3SrilligFILES+=		opt-npro.0
321.3SrilligFILES+=		opt-npro.0.pro
331.3SrilligFILES+=		opt-npro.0.stdout
341.13SrilligFILES+=		opt.0
351.13SrilligFILES+=		opt.0.pro
361.13SrilligFILES+=		opt.0.stdout
371.27SrilligFILES+=		opt_P.c
381.27SrilligFILES+=		opt_T.c
391.16SrilligFILES+=		opt_bacc.c
401.16SrilligFILES+=		opt_bad.c
411.16SrilligFILES+=		opt_badp.c
421.16SrilligFILES+=		opt_bap.c
431.16SrilligFILES+=		opt_bbb.c
441.16SrilligFILES+=		opt_bc.c
451.27SrilligFILES+=		opt_bl_br.c
461.16SrilligFILES+=		opt_bs.c
471.27SrilligFILES+=		opt_c.c
481.27SrilligFILES+=		opt_cd.c
491.16SrilligFILES+=		opt_cdb.c
501.16SrilligFILES+=		opt_ce.c
511.27SrilligFILES+=		opt_ci.c
521.27SrilligFILES+=		opt_cli.c
531.16SrilligFILES+=		opt_cs.c
541.27SrilligFILES+=		opt_d.c
551.27SrilligFILES+=		opt_di.c
561.16SrilligFILES+=		opt_dj.c
571.16SrilligFILES+=		opt_eei.c
581.16SrilligFILES+=		opt_ei.c
591.16SrilligFILES+=		opt_fbs.c
601.16SrilligFILES+=		opt_fc1.c
611.16SrilligFILES+=		opt_fcb.c
621.27SrilligFILES+=		opt_i.c
631.16SrilligFILES+=		opt_ip.c
641.27SrilligFILES+=		opt_l.c
651.27SrilligFILES+=		opt_lc.c
661.27SrilligFILES+=		opt_ldi.c
671.16SrilligFILES+=		opt_lp.c
681.16SrilligFILES+=		opt_lpl.c
691.16SrilligFILES+=		opt_pcs.c
701.16SrilligFILES+=		opt_psl.c
711.16SrilligFILES+=		opt_sc.c
721.16SrilligFILES+=		opt_sob.c
731.27SrilligFILES+=		opt_ta.c
741.27SrilligFILES+=		opt_ts.c
751.16SrilligFILES+=		opt_ut.c
761.16SrilligFILES+=		opt_v.c
771.21SrilligFILES+=		ps_ind_level.c
781.19SrilligFILES+=		t_options.awk
791.20SrilligFILES+=		token_binary_op.c
801.20SrilligFILES+=		token_case_label.c
811.20SrilligFILES+=		token_colon.c
821.20SrilligFILES+=		token_comma.c
831.18SrilligFILES+=		token_comment.c
841.20SrilligFILES+=		token_decl.c
851.20SrilligFILES+=		token_do_stmt.c
861.20SrilligFILES+=		token_end_of_file.c
871.20SrilligFILES+=		token_for_exprs.c
881.20SrilligFILES+=		token_form_feed.c
891.20SrilligFILES+=		token_funcname.c
901.17SrilligFILES+=		token_ident.c
911.20SrilligFILES+=		token_if_expr.c
921.20SrilligFILES+=		token_if_expr_stmt.c
931.20SrilligFILES+=		token_if_expr_stmt_else.c
941.20SrilligFILES+=		token_keyword_do.c
951.20SrilligFILES+=		token_keyword_do_else.c
961.20SrilligFILES+=		token_keyword_else.c
971.20SrilligFILES+=		token_keyword_for_if_while.c
981.20SrilligFILES+=		token_keyword_struct_union_enum.c
991.20SrilligFILES+=		token_lbrace.c
1001.20SrilligFILES+=		token_lparen.c
1011.20SrilligFILES+=		token_newline.c
1021.20SrilligFILES+=		token_period.c
1031.20SrilligFILES+=		token_postfix_op.c
1041.20SrilligFILES+=		token_preprocessing.c
1051.20SrilligFILES+=		token_question.c
1061.20SrilligFILES+=		token_rbrace.c
1071.20SrilligFILES+=		token_rparen.c
1081.20SrilligFILES+=		token_semicolon.c
1091.20SrilligFILES+=		token_stmt.c
1101.20SrilligFILES+=		token_stmt_list.c
1111.20SrilligFILES+=		token_storage_class.c
1121.20SrilligFILES+=		token_string_prefix.c
1131.20SrilligFILES+=		token_switch_expr.c
1141.20SrilligFILES+=		token_type_def.c
1151.20SrilligFILES+=		token_unary_op.c
1161.20SrilligFILES+=		token_while_expr.c
1171.1SkamilFILES+=		types_from_file.0
1181.1SkamilFILES+=		types_from_file.0.stdout
1191.1SkamilFILES+=		types_from_file.0.list
1201.1SkamilFILES+=		types_from_file.0.pro
1211.1Skamil
1221.7Srilligadd-test: .PHONY
1231.7Srillig	@set -eu; \
1241.23Srillig	test=${NAME:Q}.c; \
1251.23Srillig	if [ "$$test" = ".c" ]; then \
1261.7Srillig		echo "usage: ${MAKE} add-test NAME=<name>"; \
1271.7Srillig		exit; \
1281.23Srillig	fi; \
1291.7Srillig	\
1301.7Srillig	if [ -f "$$test" ]; then \
1311.7Srillig		echo "error: test $$test already exists." 1>&2; \
1321.7Srillig		exit 1; \
1331.7Srillig	fi; \
1341.7Srillig	\
1351.7Srillig	echo "=> Adding test $$test"; \
1361.7Srillig	printf '%s\n' \
1371.7Srillig		'/* $$''NetBSD$$ */' \
1381.7Srillig		'/* $$''FreeBSD$$ */' \
1391.7Srillig		'' \
1401.7Srillig		'/*' \
1411.7Srillig		' * TODO: Explain the purpose of the test.' \
1421.9Srillig		' */' \
1431.7Srillig		'' \
1441.23Srillig		'#indent input' \
1451.23Srillig		'// TODO: add input' \
1461.23Srillig		'#indent end' \
1471.23Srillig		'' \
1481.23Srillig		'#indent run [-options]' \
1491.23Srillig		'// TODO: add expected output' \
1501.23Srillig		'#indent end' \
1511.7Srillig	> "$$test"; \
1521.23Srillig	cvs add "$$test"; \
1531.7Srillig	printf '%s\n' \
1541.7Srillig		'/^FILES+=/i' \
1551.7Srillig		"FILES+=		$$test" \
1561.7Srillig		'.' 'w' 'q' \
1571.7Srillig	| ed Makefile; \
1581.7Srillig	${MAKE} sync-mi
1591.7Srillig
1601.7Srillig# Note: only works for adding tests.
1611.7Srillig# To remove a test, the $$mi file must be edited manually.
1621.7Srilligsync-mi: .PHONY
1631.7Srillig	@set -eu;							\
1641.7Srillig	cd "${MAKEFILE:tA:H}/../../..";					\
1651.7Srillig	mi="distrib/sets/lists/tests/mi";				\
1661.7Srillig	cvs update "$$mi";						\
1671.7Srillig	fmt="./usr/tests/usr.bin/indent/%s\ttests-usr.bin-tests\tcompattestfile,atf\n"; \
1681.7Srillig	cat "$$mi" > "$$mi.tmp";					\
1691.7Srillig	printf "$$fmt" ${FILES:M${NAME}*} >> "$$mi.tmp";		\
1701.7Srillig	distrib/sets/fmt-list "$$mi.tmp";				\
1711.7Srillig	mv "$$mi.tmp" "$$mi";						\
1721.7Srillig	cvs diff "$$mi" || true
1731.7Srillig
1741.1Skamil.include <bsd.test.mk>
175