Makefile revision 1.85
11.85Srillig# $NetBSD: Makefile,v 1.85 2021/09/05 13:46:31 rillig Exp $ 21.17Sthorpej 31.17Sthorpej.include <bsd.own.mk> 41.1Scgd 51.21StvPROG= lint1 61.66SrilligSRCS= cgram.y \ 71.82Srillig ckbool.c ckctype.c ckgetopt.c debug.c \ 81.66Srillig decl.c emit.c emit1.c err.c func.c init.c inittyp.c lex.c \ 91.80Srillig main1.c mem.c mem1.c oper.c scan.l tree.c tyname.c 101.48Schristos 111.21StvMAN= lint.7 121.21StvYHEADER= 131.69Srillig#DBG= -g 141.69Srillig#CPPFLAGS+= -DYYDEBUG=1 151.69Srillig#YFLAGS+= -v 161.69Srillig#LFLAGS+= -d 171.19Sthorpej 181.53SjoergCWARNFLAGS.clang+= -Wno-error=implicit-int-float-conversion 191.63SrilligLINTFLAGS+= -T 201.69SrilligLOBJS.${PROG}+= ${SRCS:M*.y:.y=.ln} 211.76SrilligLOBJS.${PROG}+= ${SRCS:M*.l:.l=.ln} 221.84SrilligLINTFLAGS.scan.c+= -X 107,126,330,331,332,333 # strict bool mode 231.53Sjoerg 241.67SrilligCPPFLAGS+= -DIS_LINT1 251.67SrilligCPPFLAGS+= -I${.CURDIR} 261.81SrilligCPPFLAGS+= ${DEBUG:D-DDEBUG -DYYDEBUG} 271.17Sthorpej 281.70SrilligCOPTS.err.c+= ${${ACTIVE_CC} == "clang":? -Wno-format-nonliteral :} 291.70Srillig 301.21StvBINDIR= /usr/libexec 311.9Schristos 321.85SrilligCLEANFILES+= ${MAN} ${MAN}.date 331.22Stv 341.22Stv.if ${USETOOLS} == "yes" 351.22StvLINT1= ${TOOLDIR}/libexec/${MACHINE_GNU_PLATFORM}-lint1 361.22Stv.endif 371.22StvLINT1?= ./${PROG} 381.22Stv 391.85Srillig${MAN}.date: err.c 401.85Srillig sed -E \ 411.85Srillig -e 's,.*(....)/([0-9]{2})/0?([0-9]+).*,\2 \3\, \1,' \ 421.85Srillig -e 's,^01,January,' \ 431.85Srillig -e 's,^02,February,' \ 441.85Srillig -e 's,^03,March,' \ 451.85Srillig -e 's,^04,April,' \ 461.85Srillig -e 's,^05,May,' \ 471.85Srillig -e 's,^06,June,' \ 481.85Srillig -e 's,^07,July,' \ 491.85Srillig -e 's,^08,August,' \ 501.85Srillig -e 's,^09,September,' \ 511.85Srillig -e 's,^10,October,' \ 521.85Srillig -e 's,^11,November,' \ 531.85Srillig -e 's,^12,December,' \ 541.85Srillig -e 1q \ 551.85Srillig ${.ALLSRC} > ${.TARGET} 561.85Srillig 571.85Srillig${MAN}: makeman ${LINT1:./%=%} Makefile ${MAN}.date 581.34Slukem ${_MKTARGET_CREATE} 591.85Srillig ${HOST_SH} ${.ALLSRC:M*makeman} "$$(cat ${.ALLSRC:M*.date})" ${LINT1} -m >${.TARGET} 601.1Scgd 611.26SlukemLDADD+= -lm 621.27Sdbj.ifndef HOSTPROG 631.26SlukemDPADD+= ${LIBM} 641.26Slukem 651.26SlukemLDADD+= -ll 661.26SlukemDPADD+= ${LIBL} 671.28Slukem.endif 681.24Stv 691.55Srillig.include "Makefile.err-msgs-h" 701.56Srillig${SRCS:Nerr.c}: err-msgs.h 711.46Schristos 721.58Srilligadd-test: .PHONY 731.58Srillig @set -eu; \ 741.58Srillig test=${NAME:Q}; \ 751.58Srillig [ "$$test" ] || { \ 761.58Srillig echo "usage: ${MAKE} add-test NAME=<name>"; \ 771.58Srillig exit; \ 781.58Srillig }; \ 791.58Srillig \ 801.58Srillig cd '../../../tests/usr.bin/xlint/lint1'; \ 811.58Srillig if [ -f "$$test.c" ]; then \ 821.58Srillig echo "error: test $$test already exists in $$PWD."; \ 831.58Srillig exit 1; \ 841.58Srillig fi; \ 851.58Srillig \ 861.58Srillig echo "=> Adding test $$test"; \ 871.58Srillig printf '%s\n' \ 881.58Srillig '/* $$''NetBSD$$ */' \ 891.58Srillig "# 3 \"$$test.c\"" \ 901.58Srillig '' \ 911.58Srillig '/*' \ 921.58Srillig ' * TODO: Explain the purpose of the test.' \ 931.64Srillig ' */' \ 941.58Srillig '' \ 951.79Srillig '/* lint1-extra-flags: -Z */' \ 961.79Srillig '/* lint1-flags: -Z */' \ 971.79Srillig '/* lint1-only-if: schar uchar ilp32 lp64 int long */' \ 981.79Srillig '/* lint1-skip-if: ldbl-64 ldbl-96 ldbl-128 */' \ 991.58Srillig '' \ 1001.58Srillig '// TODO: Add some code that passes.' \ 1011.58Srillig '// TODO: Add some code that fails.' \ 1021.58Srillig > "$$test.c"; \ 1031.58Srillig > "$$test.exp"; \ 1041.58Srillig cvs add "$$test.c" "$$test.exp"; \ 1051.58Srillig printf '%s\n' \ 1061.58Srillig '/^FILES+=/i' \ 1071.58Srillig "FILES+= $$test.c" \ 1081.58Srillig "FILES+= $$test.exp" \ 1091.58Srillig '.' 'w' 'q' \ 1101.58Srillig | ed Makefile; \ 1111.75Srillig ${MAKE} sync-mi 1121.58Srillig 1131.1Scgd.include <bsd.prog.mk> 114