Home | History | Annotate | Line # | Download | only in indent
Makefile revision 1.34
      1  1.34  rillig #	$NetBSD: Makefile,v 1.34 2021/11/18 21:19:19 rillig Exp $
      2   1.1   kamil 
      3   1.1   kamil .include <bsd.own.mk>
      4   1.1   kamil 
      5   1.1   kamil TESTSDIR=	${TESTSBASE}/usr.bin/indent
      6  1.14  rillig TESTS_SH=	t_errors
      7  1.15  rillig TESTS_SH+=	t_misc
      8  1.16  rillig TESTS_SH+=	t_options
      9   1.1   kamil 
     10   1.1   kamil FILESDIR=	${TESTSDIR}
     11  1.34  rillig FILES+=		fmt_block.c
     12  1.25  rillig FILES+=		fmt_decl.c
     13  1.25  rillig FILES+=		fmt_else_comment.c
     14  1.30  rillig FILES+=		fmt_expr.c
     15  1.24  rillig FILES+=		indent_off_on.c
     16  1.19  rillig FILES+=		label.c
     17  1.34  rillig FILES+=		lex_char.c
     18  1.25  rillig FILES+=		lex_ident.c
     19  1.27  rillig FILES+=		lex_string.c
     20  1.34  rillig FILES+=		lsym_binary_op.c
     21  1.34  rillig FILES+=		lsym_case_label.c
     22  1.34  rillig FILES+=		lsym_colon.c
     23  1.34  rillig FILES+=		lsym_comma.c
     24  1.34  rillig FILES+=		lsym_comment.c
     25  1.34  rillig FILES+=		lsym_do.c
     26  1.34  rillig FILES+=		lsym_else.c
     27  1.34  rillig FILES+=		lsym_eof.c
     28  1.34  rillig FILES+=		lsym_for.c
     29  1.34  rillig FILES+=		lsym_form_feed.c
     30  1.34  rillig FILES+=		lsym_funcname.c
     31  1.34  rillig FILES+=		lsym_if.c
     32  1.34  rillig FILES+=		lsym_lbrace.c
     33  1.34  rillig FILES+=		lsym_lparen_or_lbracket.c
     34  1.34  rillig FILES+=		lsym_newline.c
     35  1.34  rillig FILES+=		lsym_offsetof.c
     36  1.34  rillig FILES+=		lsym_period.c
     37  1.34  rillig FILES+=		lsym_postfix_op.c
     38  1.34  rillig FILES+=		lsym_preprocessing.c
     39  1.34  rillig FILES+=		lsym_question.c
     40  1.34  rillig FILES+=		lsym_rbrace.c
     41  1.34  rillig FILES+=		lsym_return.c
     42  1.34  rillig FILES+=		lsym_rparen_or_rbracket.c
     43  1.34  rillig FILES+=		lsym_semicolon.c
     44  1.34  rillig FILES+=		lsym_sizeof.c
     45  1.34  rillig FILES+=		lsym_storage_class.c
     46  1.34  rillig FILES+=		lsym_string_prefix.c
     47  1.34  rillig FILES+=		lsym_switch.c
     48  1.34  rillig FILES+=		lsym_tag.c
     49  1.34  rillig FILES+=		lsym_type_in_parentheses.c
     50  1.34  rillig FILES+=		lsym_type_outside_parentheses.c
     51  1.34  rillig FILES+=		lsym_typedef.c
     52  1.34  rillig FILES+=		lsym_unary_op.c
     53  1.34  rillig FILES+=		lsym_while.c
     54  1.34  rillig FILES+=		lsym_word.c
     55  1.27  rillig FILES+=		opt_P.c
     56  1.27  rillig FILES+=		opt_T.c
     57  1.16  rillig FILES+=		opt_bacc.c
     58  1.16  rillig FILES+=		opt_bad.c
     59  1.16  rillig FILES+=		opt_badp.c
     60  1.16  rillig FILES+=		opt_bap.c
     61  1.32  rillig FILES+=		opt_bap_sob.c
     62  1.16  rillig FILES+=		opt_bbb.c
     63  1.16  rillig FILES+=		opt_bc.c
     64  1.27  rillig FILES+=		opt_bl_br.c
     65  1.16  rillig FILES+=		opt_bs.c
     66  1.27  rillig FILES+=		opt_c.c
     67  1.27  rillig FILES+=		opt_cd.c
     68  1.16  rillig FILES+=		opt_cdb.c
     69  1.16  rillig FILES+=		opt_ce.c
     70  1.27  rillig FILES+=		opt_ci.c
     71  1.27  rillig FILES+=		opt_cli.c
     72  1.16  rillig FILES+=		opt_cs.c
     73  1.27  rillig FILES+=		opt_d.c
     74  1.27  rillig FILES+=		opt_di.c
     75  1.16  rillig FILES+=		opt_dj.c
     76  1.16  rillig FILES+=		opt_eei.c
     77  1.16  rillig FILES+=		opt_ei.c
     78  1.16  rillig FILES+=		opt_fbs.c
     79  1.16  rillig FILES+=		opt_fc1.c
     80  1.16  rillig FILES+=		opt_fcb.c
     81  1.27  rillig FILES+=		opt_i.c
     82  1.16  rillig FILES+=		opt_ip.c
     83  1.27  rillig FILES+=		opt_l.c
     84  1.27  rillig FILES+=		opt_lc.c
     85  1.27  rillig FILES+=		opt_ldi.c
     86  1.16  rillig FILES+=		opt_lp.c
     87  1.16  rillig FILES+=		opt_lpl.c
     88  1.16  rillig FILES+=		opt_pcs.c
     89  1.16  rillig FILES+=		opt_psl.c
     90  1.16  rillig FILES+=		opt_sc.c
     91  1.16  rillig FILES+=		opt_sob.c
     92  1.27  rillig FILES+=		opt_ta.c
     93  1.27  rillig FILES+=		opt_ts.c
     94  1.16  rillig FILES+=		opt_ut.c
     95  1.16  rillig FILES+=		opt_v.c
     96  1.31  rillig FILES+=		opt_version.c
     97  1.21  rillig FILES+=		ps_ind_level.c
     98  1.34  rillig FILES+=		psym_decl.c
     99  1.34  rillig FILES+=		psym_do.c
    100  1.34  rillig FILES+=		psym_do_stmt.c
    101  1.34  rillig FILES+=		psym_else.c
    102  1.34  rillig FILES+=		psym_for_exprs.c
    103  1.34  rillig FILES+=		psym_if_expr.c
    104  1.34  rillig FILES+=		psym_if_expr_stmt.c
    105  1.34  rillig FILES+=		psym_if_expr_stmt_else.c
    106  1.34  rillig FILES+=		psym_lbrace.c
    107  1.34  rillig FILES+=		psym_rbrace.c
    108  1.34  rillig FILES+=		psym_semicolon.c
    109  1.34  rillig FILES+=		psym_stmt.c
    110  1.34  rillig FILES+=		psym_stmt_list.c
    111  1.34  rillig FILES+=		psym_switch_expr.c
    112  1.34  rillig FILES+=		psym_while_expr.c
    113  1.19  rillig FILES+=		t_options.awk
    114  1.20  rillig FILES+=		token_binary_op.c
    115  1.20  rillig FILES+=		token_case_label.c
    116  1.20  rillig FILES+=		token_colon.c
    117  1.20  rillig FILES+=		token_comma.c
    118  1.18  rillig FILES+=		token_comment.c
    119  1.20  rillig FILES+=		token_decl.c
    120  1.20  rillig FILES+=		token_do_stmt.c
    121  1.20  rillig FILES+=		token_end_of_file.c
    122  1.20  rillig FILES+=		token_for_exprs.c
    123  1.20  rillig FILES+=		token_form_feed.c
    124  1.20  rillig FILES+=		token_funcname.c
    125  1.17  rillig FILES+=		token_ident.c
    126  1.20  rillig FILES+=		token_if_expr.c
    127  1.20  rillig FILES+=		token_if_expr_stmt.c
    128  1.20  rillig FILES+=		token_if_expr_stmt_else.c
    129  1.20  rillig FILES+=		token_keyword_do.c
    130  1.20  rillig FILES+=		token_keyword_do_else.c
    131  1.20  rillig FILES+=		token_keyword_else.c
    132  1.20  rillig FILES+=		token_keyword_for_if_while.c
    133  1.20  rillig FILES+=		token_keyword_struct_union_enum.c
    134  1.20  rillig FILES+=		token_lbrace.c
    135  1.20  rillig FILES+=		token_lparen.c
    136  1.20  rillig FILES+=		token_newline.c
    137  1.20  rillig FILES+=		token_period.c
    138  1.20  rillig FILES+=		token_postfix_op.c
    139  1.20  rillig FILES+=		token_preprocessing.c
    140  1.20  rillig FILES+=		token_question.c
    141  1.20  rillig FILES+=		token_rbrace.c
    142  1.20  rillig FILES+=		token_rparen.c
    143  1.20  rillig FILES+=		token_semicolon.c
    144  1.20  rillig FILES+=		token_stmt.c
    145  1.20  rillig FILES+=		token_stmt_list.c
    146  1.20  rillig FILES+=		token_storage_class.c
    147  1.20  rillig FILES+=		token_string_prefix.c
    148  1.20  rillig FILES+=		token_switch_expr.c
    149  1.20  rillig FILES+=		token_type_def.c
    150  1.20  rillig FILES+=		token_unary_op.c
    151  1.20  rillig FILES+=		token_while_expr.c
    152   1.1   kamil 
    153   1.7  rillig add-test: .PHONY
    154   1.7  rillig 	@set -eu; \
    155  1.23  rillig 	test=${NAME:Q}.c; \
    156  1.23  rillig 	if [ "$$test" = ".c" ]; then \
    157   1.7  rillig 		echo "usage: ${MAKE} add-test NAME=<name>"; \
    158   1.7  rillig 		exit; \
    159  1.23  rillig 	fi; \
    160   1.7  rillig 	\
    161   1.7  rillig 	if [ -f "$$test" ]; then \
    162   1.7  rillig 		echo "error: test $$test already exists." 1>&2; \
    163   1.7  rillig 		exit 1; \
    164   1.7  rillig 	fi; \
    165   1.7  rillig 	\
    166   1.7  rillig 	echo "=> Adding test $$test"; \
    167   1.7  rillig 	printf '%s\n' \
    168   1.7  rillig 		'/* $$''NetBSD$$ */' \
    169   1.7  rillig 		'/* $$''FreeBSD$$ */' \
    170   1.7  rillig 		'' \
    171   1.7  rillig 		'/*' \
    172   1.7  rillig 		' * TODO: Explain the purpose of the test.' \
    173   1.9  rillig 		' */' \
    174   1.7  rillig 		'' \
    175  1.23  rillig 		'#indent input' \
    176  1.23  rillig 		'// TODO: add input' \
    177  1.23  rillig 		'#indent end' \
    178  1.23  rillig 		'' \
    179  1.23  rillig 		'#indent run [-options]' \
    180  1.23  rillig 		'// TODO: add expected output' \
    181  1.23  rillig 		'#indent end' \
    182   1.7  rillig 	> "$$test"; \
    183  1.23  rillig 	cvs add "$$test"; \
    184   1.7  rillig 	printf '%s\n' \
    185   1.7  rillig 		'/^FILES+=/i' \
    186   1.7  rillig 		"FILES+=		$$test" \
    187   1.7  rillig 		'.' 'w' 'q' \
    188   1.7  rillig 	| ed Makefile; \
    189   1.7  rillig 	${MAKE} sync-mi
    190   1.7  rillig 
    191   1.7  rillig # Note: only works for adding tests.
    192   1.7  rillig # To remove a test, the $$mi file must be edited manually.
    193   1.7  rillig sync-mi: .PHONY
    194   1.7  rillig 	@set -eu;							\
    195   1.7  rillig 	cd "${MAKEFILE:tA:H}/../../..";					\
    196   1.7  rillig 	mi="distrib/sets/lists/tests/mi";				\
    197   1.7  rillig 	cvs update "$$mi";						\
    198   1.7  rillig 	fmt="./usr/tests/usr.bin/indent/%s\ttests-usr.bin-tests\tcompattestfile,atf\n"; \
    199   1.7  rillig 	cat "$$mi" > "$$mi.tmp";					\
    200   1.7  rillig 	printf "$$fmt" ${FILES:M${NAME}*} >> "$$mi.tmp";		\
    201   1.7  rillig 	distrib/sets/fmt-list "$$mi.tmp";				\
    202   1.7  rillig 	mv "$$mi.tmp" "$$mi";						\
    203   1.7  rillig 	cvs diff "$$mi" || true
    204   1.7  rillig 
    205   1.1   kamil .include <bsd.test.mk>
    206