Makefile revision 1.65 1 # $NetBSD: Makefile,v 1.65 2021/06/20 18:09:48 rillig Exp $
2
3 NOMAN= # defined
4 MAX_MESSAGE= 344 # see lint1/err.c
5
6 .include <bsd.own.mk>
7
8 TESTSDIR= ${TESTSBASE}/usr.bin/xlint/lint1
9
10 TESTS_SH= t_integration
11
12 FILESDIR= ${TESTSDIR}
13 FILES+= c99_init_designator.c
14 FILES+= c99_init_designator.exp
15 FILES+= d_alignof.c
16 FILES+= d_bltinoffsetof.c
17 FILES+= d_c99_bool.c
18 FILES+= d_c99_bool.exp
19 FILES+= d_c99_bool_strict.c
20 FILES+= d_c99_bool_strict.exp
21 FILES+= d_c99_bool_strict_syshdr.c
22 FILES+= d_c99_bool_strict_syshdr.exp
23 FILES+= d_c99_anon_struct.c
24 FILES+= d_c99_anon_union.c
25 FILES+= d_c99_complex_num.c
26 FILES+= d_c99_complex_split.c
27 FILES+= d_c99_complex_split.exp
28 FILES+= d_c99_compound_literal_comma.c
29 FILES+= d_c99_decls_after_stmt.c
30 FILES+= d_c99_decls_after_stmt2.c
31 FILES+= d_c99_decls_after_stmt3.c
32 FILES+= d_c99_flex_array_packed.c
33 FILES+= d_c99_for_loops.c
34 FILES+= d_c99_func.c
35 FILES+= d_c99_init.c
36 FILES+= d_c99_init.exp
37 FILES+= d_c99_nested_struct.c
38 FILES+= d_c99_recursive_init.c
39 FILES+= d_c99_struct_init.c
40 FILES+= d_c99_union_cast.c
41 FILES+= d_c99_union_cast.exp
42 FILES+= d_c99_union_init1.c
43 FILES+= d_c99_union_init2.c
44 FILES+= d_c99_union_init3.c
45 FILES+= d_c99_union_init4.c
46 FILES+= d_c99_union_init5.c
47 FILES+= d_c9x_array_init.c
48 FILES+= d_c9x_recursive_init.c
49 FILES+= d_cast_fun_array_param.c
50 FILES+= d_cast_init.c
51 FILES+= d_cast_init2.c
52 FILES+= d_cast_lhs.c
53 FILES+= d_cast_typeof.c
54 FILES+= d_compound_literals1.c
55 FILES+= d_compound_literals2.c
56 FILES+= d_constant_conv1.c
57 FILES+= d_constant_conv1.exp
58 FILES+= d_constant_conv2.c
59 FILES+= d_constant_conv2.exp
60 FILES+= d_cvt_constant.c
61 FILES+= d_cvt_constant.exp
62 FILES+= d_cvt_in_ternary.c
63 FILES+= d_decl_old_style_arguments.c
64 FILES+= d_decl_old_style_arguments.exp
65 FILES+= d_ellipsis_in_switch.c
66 FILES+= d_fold_test.c
67 FILES+= d_fold_test.exp
68 FILES+= d_gcc_compound_statements1.c
69 FILES+= d_gcc_compound_statements1.exp
70 FILES+= d_gcc_compound_statements2.c
71 FILES+= d_gcc_compound_statements3.c
72 FILES+= d_gcc_extension.c
73 FILES+= d_gcc_func.c
74 FILES+= d_gcc_variable_array_init.c
75 FILES+= d_incorrect_array_size.c
76 FILES+= d_incorrect_array_size.exp
77 FILES+= d_init_array_using_string.c
78 FILES+= d_init_array_using_string.exp
79 FILES+= d_init_pop_member.c
80 FILES+= d_init_pop_member.exp
81 FILES+= d_lint_assert.c
82 FILES+= d_lint_assert.exp
83 FILES+= d_long_double_int.c
84 FILES+= d_long_double_int.exp
85 FILES+= d_nested_structs.c
86 FILES+= d_nolimit_init.c
87 FILES+= d_packed_structs.c
88 FILES+= d_pr_22119.c
89 FILES+= d_pr_22119.exp
90 FILES+= d_return_type.c
91 FILES+= d_return_type.exp
92 FILES+= d_shift_to_narrower_type.c
93 FILES+= d_struct_init_nested.c
94 FILES+= d_struct_init_nested.exp
95 FILES+= d_type_conv1.c
96 FILES+= d_type_conv1.exp
97 FILES+= d_type_conv2.c
98 FILES+= d_type_conv2.exp
99 FILES+= d_type_conv3.c
100 FILES+= d_type_conv3.exp
101 FILES+= d_type_question_colon.c
102 FILES+= d_typefun.c
103 FILES+= d_typename_as_var.c
104 FILES+= d_zero_sized_arrays.c
105 FILES+= decl_struct_member.c
106 FILES+= decl_struct_member.exp
107 FILES+= emit.c
108 FILES+= emit.exp
109 FILES+= emit.ln
110 FILES+= expr_range.c
111 FILES+= expr_range.exp
112 FILES+= feat_stacktrace.c
113 FILES+= feat_stacktrace.exp
114 FILES+= gcc_attribute.c
115 FILES+= gcc_attribute.exp
116 FILES+= gcc_attribute_aligned.c
117 FILES+= gcc_attribute_aligned.exp
118 FILES+= gcc_bit_field_types.c
119 FILES+= gcc_bit_field_types.exp
120 FILES+= gcc_init_compound_literal.c
121 FILES+= gcc_init_compound_literal.exp
122 FILES+= gcc_typeof_after_statement.c
123 FILES+= gcc_typeof_after_statement.exp
124 FILES+= lex_char.c
125 FILES+= lex_char.exp
126 FILES+= lex_comment.c
127 FILES+= lex_comment.exp
128 FILES+= lex_floating.c
129 FILES+= lex_floating.exp
130 FILES+= lex_integer.c
131 FILES+= lex_integer.exp
132 FILES+= lex_string.c
133 FILES+= lex_string.exp
134 FILES+= lex_wide_char.c
135 FILES+= lex_wide_char.exp
136 FILES+= lex_wide_string.c
137 FILES+= lex_wide_string.exp
138 FILES+= ${:U0 ${:U:${:Urange=${MAX_MESSAGE}}}:C,^.$,0&,:C,^..$,0&,:@i@msg_${i}.c msg_${i}.exp@:Nmsg_176.exp}
139 FILES+= op_colon.c
140 FILES+= op_colon.exp
141 FILES+= stmt_for.c
142 FILES+= stmt_for.exp
143
144 # ----- begin hack -----
145 # Prevent that ${DESTDIR}/emit.ln gets ${DESTDIR}/emit.c as implicit source.
146 # The suffix transformation rule '.c.ln' thinks that ${DESTDIR}/emit.ln should
147 # depend in ${DESTDIR}/emit.c, but these files are not intended to depend on
148 # each other, they have these suffixes just for convenience and convention.
149 .if make(install)
150 . if ${MKUPDATE} == "no" # see bsd.files.mk
151 ${DESTDIR}${FILESDIR}/emit.ln! .PHONY
152 . else
153 ${DESTDIR}${FILESDIR}/emit.ln: .PHONY
154 . endif
155 .endif
156 # ----- end hack -----
157
158 # Note: only works for adding tests.
159 # To remove a test, the $$mi file must be edited manually.
160 sync-mi: .PHONY
161 @set -eu; \
162 cd "${MAKEFILE:tA:H}/../../../.."; \
163 mi="distrib/sets/lists/tests/mi"; \
164 cvs update "$$mi"; \
165 fmt="./usr/tests/usr.bin/xlint/lint1/%s\ttests-usr.bin-tests\tcompattestfile,atf\n"; \
166 cat "$$mi" > "$$mi.tmp"; \
167 printf "$$fmt" ${FILES} >> "$$mi.tmp"; \
168 distrib/sets/fmt-list "$$mi.tmp"; \
169 mv "$$mi.tmp" "$$mi"; \
170 cvs diff "$$mi" || true
171
172 .include <bsd.test.mk>
173