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