Makefile revision 1.4
1# $OpenBSD: Makefile,v 1.4 2003/10/07 22:24:26 avsm Exp $
2
3C_MODULES?=	strlcpy strlcat getcwd memcpy fread memcpy declare \
4		sscanf vararray md
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
13C_SSCANF=	1 2
14C_VARARRAY=	1 2
15C_MD=		1 2 3 4 5 6
16
17CPP_SNPRINTF=	1 2 3 4 5
18CPP_SSCANF=	1
19
20TCC=		gcc
21TCFLAGS=	-Wbounded -Wformat -pedantic
22TCXX=		g++
23TCXXFLAGS=	${TCFLAGS}
24REGRESS_TARGETS= ${C_TARGETS} ${CPP_TARGETS}
25
26.for i in ${C_MODULES}
27.  for j in ${C_${i:U}}
28C_TARGETS+= c-${i}-${j} 
29c-${i}-${j}:
30	${TCC} ${TCFLAGS} -o /dev/null ${i}-${j}.c 2>&1 | diff -u - ${.CURDIR}/${i}-${j}.c.exp
31.  endfor
32.endfor
33
34.for i in ${CPP_MODULES}
35.  for j in ${CPP_${i:U}}
36CPP_TARGETS+= cpp-${i}-${j}
37cpp-${i}-${j}:
38	${TCXX} ${TCXXFLAGS} -o /dev/null ${i}-${j}.cpp 2>&1 | grep -v 'misused' | diff -u - ${.CURDIR}/${i}-${j}.cpp.exp
39.  endfor
40.endfor
41
42generate:
43.for i in ${C_TARGETS}
44	-${TCC} ${TCFLAGS} -o /dev/null ${i:C/^c-//g}.c >${i:C/^c-//g}.c.exp 2>&1
45.endfor
46.for i in ${CPP_TARGETS}
47	-${TCXX} ${TCXXFLAGS} -o /dev/null ${i:C/^cpp-//g}.cpp >${i:C/^cpp-//g}.cpp.exp 2>&1
48.endfor
49
50.PHONY:	${REGRESS_TARGETS} generate regress
51
52.include <bsd.regress.mk>
53