Home | History | Annotate | Line # | Download | only in indent
Makefile revision 1.23
      1  1.23  rillig #	$NetBSD: Makefile,v 1.23 2021/10/19 19:59:05 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.14  rillig TESTS_SH+=	t_indent
      8  1.15  rillig TESTS_SH+=	t_misc
      9  1.16  rillig TESTS_SH+=	t_options
     10   1.1   kamil 
     11   1.1   kamil FILESDIR=	${TESTSDIR}
     12  1.17  rillig FILES=		block.0
     13   1.5  rillig FILES+=		block.0.stdout
     14   1.1   kamil FILES+=		declarations.0
     15  1.11  rillig FILES+=		declarations.0.stderr
     16   1.1   kamil FILES+=		declarations.0.stdout
     17   1.1   kamil FILES+=		elsecomment.0
     18   1.1   kamil FILES+=		elsecomment.0.stdout
     19   1.1   kamil FILES+=		elsecomment.0.pro
     20   1.1   kamil FILES+=		f_decls.0
     21   1.1   kamil FILES+=		f_decls.0.stdout
     22   1.7  rillig FILES+=		indent_variables.0
     23   1.7  rillig FILES+=		indent_variables.0.pro
     24   1.7  rillig FILES+=		indent_variables.0.stdout
     25  1.19  rillig FILES+=		label.c
     26  1.10  rillig FILES+=		lex.0
     27  1.10  rillig FILES+=		lex.0.pro
     28  1.10  rillig FILES+=		lex.0.stdout
     29   1.9  rillig FILES+=		lex_char.0
     30   1.9  rillig FILES+=		lex_char.0.pro
     31   1.9  rillig FILES+=		lex_char.0.stdout
     32   1.9  rillig FILES+=		lex_string.0
     33   1.9  rillig FILES+=		lex_string.0.pro
     34   1.9  rillig FILES+=		lex_string.0.stdout
     35   1.4  rillig FILES+=		lineno.0
     36   1.4  rillig FILES+=		lineno.0.pro
     37   1.4  rillig FILES+=		lineno.0.stdout
     38   1.1   kamil FILES+=		list_head.0
     39   1.1   kamil FILES+=		list_head.0.stdout
     40   1.1   kamil FILES+=		offsetof.0
     41   1.1   kamil FILES+=		offsetof.0.stdout
     42   1.3  rillig FILES+=		opt--version.0
     43   1.3  rillig FILES+=		opt--version.0.pro
     44   1.3  rillig FILES+=		opt--version.0.stdout
     45   1.3  rillig FILES+=		opt-P.0
     46   1.3  rillig FILES+=		opt-P.0.pro
     47   1.3  rillig FILES+=		opt-P.0.stdout
     48   1.3  rillig FILES+=		opt-T.0
     49   1.3  rillig FILES+=		opt-T.0.pro
     50   1.3  rillig FILES+=		opt-T.0.stdout
     51   1.3  rillig FILES+=		opt-U.0
     52   1.3  rillig FILES+=		opt-U.0.list
     53   1.3  rillig FILES+=		opt-U.0.pro
     54   1.3  rillig FILES+=		opt-U.0.stdout
     55   1.6  rillig FILES+=		opt-bap+sob.0
     56   1.6  rillig FILES+=		opt-bap+sob.0.pro
     57   1.6  rillig FILES+=		opt-bap+sob.0.stdout
     58   1.3  rillig FILES+=		opt-bl.0
     59   1.3  rillig FILES+=		opt-bl.0.pro
     60   1.3  rillig FILES+=		opt-bl.0.stdout
     61   1.3  rillig FILES+=		opt-br.0
     62   1.3  rillig FILES+=		opt-br.0.pro
     63   1.3  rillig FILES+=		opt-br.0.stdout
     64   1.3  rillig FILES+=		opt-c.0
     65   1.3  rillig FILES+=		opt-c.0.pro
     66   1.3  rillig FILES+=		opt-c.0.stdout
     67   1.3  rillig FILES+=		opt-cd.0
     68   1.3  rillig FILES+=		opt-cd.0.pro
     69   1.3  rillig FILES+=		opt-cd.0.stdout
     70   1.3  rillig FILES+=		opt-ci.0
     71   1.3  rillig FILES+=		opt-ci.0.pro
     72   1.3  rillig FILES+=		opt-ci.0.stdout
     73   1.3  rillig FILES+=		opt-cli.0
     74   1.3  rillig FILES+=		opt-cli.0.pro
     75   1.3  rillig FILES+=		opt-cli.0.stdout
     76   1.3  rillig FILES+=		opt-d.0
     77   1.3  rillig FILES+=		opt-d.0.pro
     78   1.3  rillig FILES+=		opt-d.0.stdout
     79   1.3  rillig FILES+=		opt-di.0
     80   1.3  rillig FILES+=		opt-di.0.pro
     81   1.3  rillig FILES+=		opt-di.0.stdout
     82   1.3  rillig FILES+=		opt-i.0
     83   1.3  rillig FILES+=		opt-i.0.pro
     84   1.3  rillig FILES+=		opt-i.0.stdout
     85   1.3  rillig FILES+=		opt-l.0
     86   1.3  rillig FILES+=		opt-l.0.pro
     87   1.3  rillig FILES+=		opt-l.0.stdout
     88   1.3  rillig FILES+=		opt-lc.0
     89   1.3  rillig FILES+=		opt-lc.0.pro
     90   1.3  rillig FILES+=		opt-lc.0.stdout
     91   1.3  rillig FILES+=		opt-ldi.0
     92   1.3  rillig FILES+=		opt-ldi.0.pro
     93   1.3  rillig FILES+=		opt-ldi.0.stdout
     94   1.3  rillig FILES+=		opt-npro.0
     95   1.3  rillig FILES+=		opt-npro.0.pro
     96   1.3  rillig FILES+=		opt-npro.0.stdout
     97   1.3  rillig FILES+=		opt-ta.0
     98   1.3  rillig FILES+=		opt-ta.0.pro
     99   1.3  rillig FILES+=		opt-ta.0.stdout
    100   1.3  rillig FILES+=		opt-ts.0
    101   1.3  rillig FILES+=		opt-ts.0.pro
    102   1.3  rillig FILES+=		opt-ts.0.stdout
    103  1.13  rillig FILES+=		opt.0
    104  1.13  rillig FILES+=		opt.0.pro
    105  1.13  rillig FILES+=		opt.0.stdout
    106  1.16  rillig FILES+=		opt_bacc.c
    107  1.16  rillig FILES+=		opt_bad.c
    108  1.16  rillig FILES+=		opt_badp.c
    109  1.16  rillig FILES+=		opt_bap.c
    110  1.16  rillig FILES+=		opt_bbb.c
    111  1.16  rillig FILES+=		opt_bc.c
    112  1.16  rillig FILES+=		opt_bs.c
    113  1.16  rillig FILES+=		opt_cdb.c
    114  1.16  rillig FILES+=		opt_ce.c
    115  1.16  rillig FILES+=		opt_cs.c
    116  1.16  rillig FILES+=		opt_dj.c
    117  1.16  rillig FILES+=		opt_eei.c
    118  1.16  rillig FILES+=		opt_ei.c
    119  1.16  rillig FILES+=		opt_fbs.c
    120  1.16  rillig FILES+=		opt_fc1.c
    121  1.16  rillig FILES+=		opt_fcb.c
    122  1.16  rillig FILES+=		opt_ip.c
    123  1.16  rillig FILES+=		opt_lp.c
    124  1.16  rillig FILES+=		opt_lpl.c
    125  1.16  rillig FILES+=		opt_pcs.c
    126  1.16  rillig FILES+=		opt_psl.c
    127  1.16  rillig FILES+=		opt_sc.c
    128  1.16  rillig FILES+=		opt_sob.c
    129  1.16  rillig FILES+=		opt_ut.c
    130  1.16  rillig FILES+=		opt_v.c
    131   1.1   kamil FILES+=		parens.0
    132   1.1   kamil FILES+=		parens.0.stdout
    133   1.1   kamil FILES+=		parens.0.pro
    134  1.21  rillig FILES+=		ps_ind_level.c
    135   1.1   kamil FILES+=		struct.0
    136   1.1   kamil FILES+=		struct.0.stdout
    137   1.1   kamil FILES+=		surplusbad.0
    138   1.1   kamil FILES+=		surplusbad.0.stdout
    139   1.1   kamil FILES+=		surplusbad.0.pro
    140  1.19  rillig FILES+=		t_options.awk
    141  1.20  rillig FILES+=		token_binary_op.c
    142  1.20  rillig FILES+=		token_case_label.c
    143  1.20  rillig FILES+=		token_colon.c
    144  1.20  rillig FILES+=		token_comma.c
    145  1.18  rillig FILES+=		token_comment.c
    146  1.20  rillig FILES+=		token_decl.c
    147  1.20  rillig FILES+=		token_do_stmt.c
    148  1.20  rillig FILES+=		token_end_of_file.c
    149  1.20  rillig FILES+=		token_for_exprs.c
    150  1.20  rillig FILES+=		token_form_feed.c
    151  1.20  rillig FILES+=		token_funcname.c
    152  1.17  rillig FILES+=		token_ident.c
    153  1.20  rillig FILES+=		token_if_expr.c
    154  1.20  rillig FILES+=		token_if_expr_stmt.c
    155  1.20  rillig FILES+=		token_if_expr_stmt_else.c
    156  1.20  rillig FILES+=		token_keyword_do.c
    157  1.20  rillig FILES+=		token_keyword_do_else.c
    158  1.20  rillig FILES+=		token_keyword_else.c
    159  1.20  rillig FILES+=		token_keyword_for_if_while.c
    160  1.20  rillig FILES+=		token_keyword_struct_union_enum.c
    161  1.20  rillig FILES+=		token_lbrace.c
    162  1.20  rillig FILES+=		token_lparen.c
    163  1.20  rillig FILES+=		token_newline.c
    164  1.20  rillig FILES+=		token_period.c
    165  1.20  rillig FILES+=		token_postfix_op.c
    166  1.20  rillig FILES+=		token_preprocessing.c
    167  1.20  rillig FILES+=		token_question.c
    168  1.20  rillig FILES+=		token_rbrace.c
    169  1.20  rillig FILES+=		token_rparen.c
    170  1.20  rillig FILES+=		token_semicolon.c
    171  1.20  rillig FILES+=		token_stmt.c
    172  1.20  rillig FILES+=		token_stmt_list.c
    173  1.20  rillig FILES+=		token_storage_class.c
    174  1.20  rillig FILES+=		token_string_prefix.c
    175  1.20  rillig FILES+=		token_switch_expr.c
    176  1.20  rillig FILES+=		token_type_def.c
    177  1.20  rillig FILES+=		token_unary_op.c
    178  1.20  rillig FILES+=		token_while_expr.c
    179   1.1   kamil FILES+=		types_from_file.0
    180   1.1   kamil FILES+=		types_from_file.0.stdout
    181   1.1   kamil FILES+=		types_from_file.0.list
    182   1.1   kamil FILES+=		types_from_file.0.pro
    183   1.1   kamil FILES+=		wchar.0
    184   1.1   kamil FILES+=		wchar.0.stdout
    185   1.1   kamil 
    186   1.7  rillig add-test: .PHONY
    187   1.7  rillig 	@set -eu; \
    188  1.23  rillig 	test=${NAME:Q}.c; \
    189  1.23  rillig 	if [ "$$test" = ".c" ]; then \
    190   1.7  rillig 		echo "usage: ${MAKE} add-test NAME=<name>"; \
    191   1.7  rillig 		exit; \
    192  1.23  rillig 	fi; \
    193   1.7  rillig 	\
    194   1.7  rillig 	if [ -f "$$test" ]; then \
    195   1.7  rillig 		echo "error: test $$test already exists." 1>&2; \
    196   1.7  rillig 		exit 1; \
    197   1.7  rillig 	fi; \
    198   1.7  rillig 	\
    199   1.7  rillig 	echo "=> Adding test $$test"; \
    200   1.7  rillig 	printf '%s\n' \
    201   1.7  rillig 		'/* $$''NetBSD$$ */' \
    202   1.7  rillig 		'/* $$''FreeBSD$$ */' \
    203   1.7  rillig 		'' \
    204   1.7  rillig 		'/*' \
    205   1.7  rillig 		' * TODO: Explain the purpose of the test.' \
    206   1.9  rillig 		' */' \
    207   1.7  rillig 		'' \
    208  1.23  rillig 		'#indent input' \
    209  1.23  rillig 		'// TODO: add input' \
    210  1.23  rillig 		'#indent end' \
    211  1.23  rillig 		'' \
    212  1.23  rillig 		'#indent run [-options]' \
    213  1.23  rillig 		'// TODO: add expected output' \
    214  1.23  rillig 		'#indent end' \
    215   1.7  rillig 	> "$$test"; \
    216  1.23  rillig 	cvs add "$$test"; \
    217   1.7  rillig 	printf '%s\n' \
    218   1.7  rillig 		'/^FILES+=/i' \
    219   1.7  rillig 		"FILES+=		$$test" \
    220   1.7  rillig 		'.' 'w' 'q' \
    221   1.7  rillig 	| ed Makefile; \
    222   1.7  rillig 	${MAKE} sync-mi
    223   1.7  rillig 
    224   1.7  rillig # Note: only works for adding tests.
    225   1.7  rillig # To remove a test, the $$mi file must be edited manually.
    226   1.7  rillig sync-mi: .PHONY
    227   1.7  rillig 	@set -eu;							\
    228   1.7  rillig 	cd "${MAKEFILE:tA:H}/../../..";					\
    229   1.7  rillig 	mi="distrib/sets/lists/tests/mi";				\
    230   1.7  rillig 	cvs update "$$mi";						\
    231   1.7  rillig 	fmt="./usr/tests/usr.bin/indent/%s\ttests-usr.bin-tests\tcompattestfile,atf\n"; \
    232   1.7  rillig 	cat "$$mi" > "$$mi.tmp";					\
    233   1.7  rillig 	printf "$$fmt" ${FILES:M${NAME}*} >> "$$mi.tmp";		\
    234   1.7  rillig 	distrib/sets/fmt-list "$$mi.tmp";				\
    235   1.7  rillig 	mv "$$mi.tmp" "$$mi";						\
    236   1.7  rillig 	cvs diff "$$mi" || true
    237   1.7  rillig 
    238   1.1   kamil .include <bsd.test.mk>
    239