Makefile revision 1.25
11.25Srillig# $NetBSD: Makefile,v 1.25 2021/10/22 19:27:53 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.1SkamilFILES+= f_decls.0 161.1SkamilFILES+= f_decls.0.stdout 171.24SrilligFILES+= indent_off_on.c 181.19SrilligFILES+= label.c 191.25SrilligFILES+= lex_ident.c 201.9SrilligFILES+= lex_char.0 211.9SrilligFILES+= lex_char.0.pro 221.9SrilligFILES+= lex_char.0.stdout 231.9SrilligFILES+= lex_string.0 241.9SrilligFILES+= lex_string.0.pro 251.9SrilligFILES+= lex_string.0.stdout 261.1SkamilFILES+= list_head.0 271.1SkamilFILES+= list_head.0.stdout 281.1SkamilFILES+= offsetof.0 291.1SkamilFILES+= offsetof.0.stdout 301.3SrilligFILES+= opt--version.0 311.3SrilligFILES+= opt--version.0.pro 321.3SrilligFILES+= opt--version.0.stdout 331.3SrilligFILES+= opt-P.0 341.3SrilligFILES+= opt-P.0.pro 351.3SrilligFILES+= opt-P.0.stdout 361.3SrilligFILES+= opt-T.0 371.3SrilligFILES+= opt-T.0.pro 381.3SrilligFILES+= opt-T.0.stdout 391.3SrilligFILES+= opt-U.0 401.3SrilligFILES+= opt-U.0.list 411.3SrilligFILES+= opt-U.0.pro 421.3SrilligFILES+= opt-U.0.stdout 431.6SrilligFILES+= opt-bap+sob.0 441.6SrilligFILES+= opt-bap+sob.0.pro 451.6SrilligFILES+= opt-bap+sob.0.stdout 461.3SrilligFILES+= opt-bl.0 471.3SrilligFILES+= opt-bl.0.pro 481.3SrilligFILES+= opt-bl.0.stdout 491.3SrilligFILES+= opt-br.0 501.3SrilligFILES+= opt-br.0.pro 511.3SrilligFILES+= opt-br.0.stdout 521.3SrilligFILES+= opt-c.0 531.3SrilligFILES+= opt-c.0.pro 541.3SrilligFILES+= opt-c.0.stdout 551.3SrilligFILES+= opt-cd.0 561.3SrilligFILES+= opt-cd.0.pro 571.3SrilligFILES+= opt-cd.0.stdout 581.3SrilligFILES+= opt-ci.0 591.3SrilligFILES+= opt-ci.0.pro 601.3SrilligFILES+= opt-ci.0.stdout 611.3SrilligFILES+= opt-cli.0 621.3SrilligFILES+= opt-cli.0.pro 631.3SrilligFILES+= opt-cli.0.stdout 641.3SrilligFILES+= opt-d.0 651.3SrilligFILES+= opt-d.0.pro 661.3SrilligFILES+= opt-d.0.stdout 671.3SrilligFILES+= opt-di.0 681.3SrilligFILES+= opt-di.0.pro 691.3SrilligFILES+= opt-di.0.stdout 701.3SrilligFILES+= opt-i.0 711.3SrilligFILES+= opt-i.0.pro 721.3SrilligFILES+= opt-i.0.stdout 731.3SrilligFILES+= opt-l.0 741.3SrilligFILES+= opt-l.0.pro 751.3SrilligFILES+= opt-l.0.stdout 761.3SrilligFILES+= opt-lc.0 771.3SrilligFILES+= opt-lc.0.pro 781.3SrilligFILES+= opt-lc.0.stdout 791.3SrilligFILES+= opt-ldi.0 801.3SrilligFILES+= opt-ldi.0.pro 811.3SrilligFILES+= opt-ldi.0.stdout 821.3SrilligFILES+= opt-npro.0 831.3SrilligFILES+= opt-npro.0.pro 841.3SrilligFILES+= opt-npro.0.stdout 851.3SrilligFILES+= opt-ta.0 861.3SrilligFILES+= opt-ta.0.pro 871.3SrilligFILES+= opt-ta.0.stdout 881.3SrilligFILES+= opt-ts.0 891.3SrilligFILES+= opt-ts.0.pro 901.3SrilligFILES+= opt-ts.0.stdout 911.13SrilligFILES+= opt.0 921.13SrilligFILES+= opt.0.pro 931.13SrilligFILES+= opt.0.stdout 941.16SrilligFILES+= opt_bacc.c 951.16SrilligFILES+= opt_bad.c 961.16SrilligFILES+= opt_badp.c 971.16SrilligFILES+= opt_bap.c 981.16SrilligFILES+= opt_bbb.c 991.16SrilligFILES+= opt_bc.c 1001.16SrilligFILES+= opt_bs.c 1011.16SrilligFILES+= opt_cdb.c 1021.16SrilligFILES+= opt_ce.c 1031.16SrilligFILES+= opt_cs.c 1041.16SrilligFILES+= opt_dj.c 1051.16SrilligFILES+= opt_eei.c 1061.16SrilligFILES+= opt_ei.c 1071.16SrilligFILES+= opt_fbs.c 1081.16SrilligFILES+= opt_fc1.c 1091.16SrilligFILES+= opt_fcb.c 1101.16SrilligFILES+= opt_ip.c 1111.16SrilligFILES+= opt_lp.c 1121.16SrilligFILES+= opt_lpl.c 1131.16SrilligFILES+= opt_pcs.c 1141.16SrilligFILES+= opt_psl.c 1151.16SrilligFILES+= opt_sc.c 1161.16SrilligFILES+= opt_sob.c 1171.16SrilligFILES+= opt_ut.c 1181.16SrilligFILES+= opt_v.c 1191.1SkamilFILES+= parens.0 1201.1SkamilFILES+= parens.0.stdout 1211.1SkamilFILES+= parens.0.pro 1221.21SrilligFILES+= ps_ind_level.c 1231.1SkamilFILES+= struct.0 1241.1SkamilFILES+= struct.0.stdout 1251.1SkamilFILES+= surplusbad.0 1261.1SkamilFILES+= surplusbad.0.stdout 1271.1SkamilFILES+= surplusbad.0.pro 1281.19SrilligFILES+= t_options.awk 1291.20SrilligFILES+= token_binary_op.c 1301.20SrilligFILES+= token_case_label.c 1311.20SrilligFILES+= token_colon.c 1321.20SrilligFILES+= token_comma.c 1331.18SrilligFILES+= token_comment.c 1341.20SrilligFILES+= token_decl.c 1351.20SrilligFILES+= token_do_stmt.c 1361.20SrilligFILES+= token_end_of_file.c 1371.20SrilligFILES+= token_for_exprs.c 1381.20SrilligFILES+= token_form_feed.c 1391.20SrilligFILES+= token_funcname.c 1401.17SrilligFILES+= token_ident.c 1411.20SrilligFILES+= token_if_expr.c 1421.20SrilligFILES+= token_if_expr_stmt.c 1431.20SrilligFILES+= token_if_expr_stmt_else.c 1441.20SrilligFILES+= token_keyword_do.c 1451.20SrilligFILES+= token_keyword_do_else.c 1461.20SrilligFILES+= token_keyword_else.c 1471.20SrilligFILES+= token_keyword_for_if_while.c 1481.20SrilligFILES+= token_keyword_struct_union_enum.c 1491.20SrilligFILES+= token_lbrace.c 1501.20SrilligFILES+= token_lparen.c 1511.20SrilligFILES+= token_newline.c 1521.20SrilligFILES+= token_period.c 1531.20SrilligFILES+= token_postfix_op.c 1541.20SrilligFILES+= token_preprocessing.c 1551.20SrilligFILES+= token_question.c 1561.20SrilligFILES+= token_rbrace.c 1571.20SrilligFILES+= token_rparen.c 1581.20SrilligFILES+= token_semicolon.c 1591.20SrilligFILES+= token_stmt.c 1601.20SrilligFILES+= token_stmt_list.c 1611.20SrilligFILES+= token_storage_class.c 1621.20SrilligFILES+= token_string_prefix.c 1631.20SrilligFILES+= token_switch_expr.c 1641.20SrilligFILES+= token_type_def.c 1651.20SrilligFILES+= token_unary_op.c 1661.20SrilligFILES+= token_while_expr.c 1671.1SkamilFILES+= types_from_file.0 1681.1SkamilFILES+= types_from_file.0.stdout 1691.1SkamilFILES+= types_from_file.0.list 1701.1SkamilFILES+= types_from_file.0.pro 1711.1SkamilFILES+= wchar.0 1721.1SkamilFILES+= wchar.0.stdout 1731.1Skamil 1741.7Srilligadd-test: .PHONY 1751.7Srillig @set -eu; \ 1761.23Srillig test=${NAME:Q}.c; \ 1771.23Srillig if [ "$$test" = ".c" ]; then \ 1781.7Srillig echo "usage: ${MAKE} add-test NAME=<name>"; \ 1791.7Srillig exit; \ 1801.23Srillig fi; \ 1811.7Srillig \ 1821.7Srillig if [ -f "$$test" ]; then \ 1831.7Srillig echo "error: test $$test already exists." 1>&2; \ 1841.7Srillig exit 1; \ 1851.7Srillig fi; \ 1861.7Srillig \ 1871.7Srillig echo "=> Adding test $$test"; \ 1881.7Srillig printf '%s\n' \ 1891.7Srillig '/* $$''NetBSD$$ */' \ 1901.7Srillig '/* $$''FreeBSD$$ */' \ 1911.7Srillig '' \ 1921.7Srillig '/*' \ 1931.7Srillig ' * TODO: Explain the purpose of the test.' \ 1941.9Srillig ' */' \ 1951.7Srillig '' \ 1961.23Srillig '#indent input' \ 1971.23Srillig '// TODO: add input' \ 1981.23Srillig '#indent end' \ 1991.23Srillig '' \ 2001.23Srillig '#indent run [-options]' \ 2011.23Srillig '// TODO: add expected output' \ 2021.23Srillig '#indent end' \ 2031.7Srillig > "$$test"; \ 2041.23Srillig cvs add "$$test"; \ 2051.7Srillig printf '%s\n' \ 2061.7Srillig '/^FILES+=/i' \ 2071.7Srillig "FILES+= $$test" \ 2081.7Srillig '.' 'w' 'q' \ 2091.7Srillig | ed Makefile; \ 2101.7Srillig ${MAKE} sync-mi 2111.7Srillig 2121.7Srillig# Note: only works for adding tests. 2131.7Srillig# To remove a test, the $$mi file must be edited manually. 2141.7Srilligsync-mi: .PHONY 2151.7Srillig @set -eu; \ 2161.7Srillig cd "${MAKEFILE:tA:H}/../../.."; \ 2171.7Srillig mi="distrib/sets/lists/tests/mi"; \ 2181.7Srillig cvs update "$$mi"; \ 2191.7Srillig fmt="./usr/tests/usr.bin/indent/%s\ttests-usr.bin-tests\tcompattestfile,atf\n"; \ 2201.7Srillig cat "$$mi" > "$$mi.tmp"; \ 2211.7Srillig printf "$$fmt" ${FILES:M${NAME}*} >> "$$mi.tmp"; \ 2221.7Srillig distrib/sets/fmt-list "$$mi.tmp"; \ 2231.7Srillig mv "$$mi.tmp" "$$mi"; \ 2241.7Srillig cvs diff "$$mi" || true 2251.7Srillig 2261.1Skamil.include <bsd.test.mk> 227