Makefile revision 1.7
1# $OpenBSD: Makefile,v 1.7 2004/04/27 18:02:07 avsm Exp $
2
3C_MODULES?=	strlcpy strlcat getcwd memcpy fread memcpy declare \
4		sscanf vararray md builtins
5CPP_MODULES?=	snprintf sscanf
6
7C_STRLCPY=	1 2 3 4 5 6
8C_STRLCAT=	1 2 3 4 5 6
9C_GETCWD=	1 2 3 4
10C_MEMCPY=	1 2 3 4 5 6
11C_FREAD=	1 2 3 4
12C_DECLARE=	1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
13C_SSCANF=	1 2 3 4 5
14C_VARARRAY=	1 2
15C_MD=		1 2 3 4 5 6
16C_BUILTINS=	1
17
18CPP_SNPRINTF=	1 2 3 4 5
19CPP_SSCANF=	1
20
21TCC=		gcc
22TCFLAGS=	-Wbounded -Wformat -pedantic
23TCXX=		g++
24TCXXFLAGS=	${TCFLAGS}
25REGRESS_TARGETS= ${C_TARGETS} ${CPP_TARGETS}
26
27.for i in ${C_MODULES}
28.  for j in ${C_${i:U}}
29C_TARGETS+= c-${i}-${j} 
30c-${i}-${j}:
31	${TCC} ${TCFLAGS} -o /dev/null ${i}-${j}.c 2>&1 | diff -u - ${.CURDIR}/${i}-${j}.c${EXP}
32.  endfor
33.endfor
34
35.for i in ${CPP_MODULES}
36.  for j in ${CPP_${i:U}}
37CPP_TARGETS+= cpp-${i}-${j}
38cpp-${i}-${j}:
39	${TCXX} ${TCXXFLAGS} -o /dev/null ${i}-${j}.cpp 2>&1 | grep -v 'misused' | diff -u - ${.CURDIR}/${i}-${j}.cpp${EXP}
40.  endfor
41.endfor
42
43generate:
44.for i in ${C_TARGETS}
45	-${TCC} ${TCFLAGS} -o /dev/null ${i:C/^c-//g}.c >${i:C/^c-//g}.c${EXP} 2>&1
46.endfor
47.for i in ${CPP_TARGETS}
48	-${TCXX} ${TCXXFLAGS} -o /dev/null ${i:C/^cpp-//g}.cpp >${i:C/^cpp-//g}.cpp${EXP} 2>&1
49.endfor
50
51.PHONY:	${REGRESS_TARGETS} generate regress
52
53.include <bsd.regress.mk>
54.if ${USE_GCC3:L:Myes}
55EXP=		.exp.gcc3
56.else
57EXP=		.exp
58.endif
59