Changeset View
Changeset View
Standalone View
Standalone View
head/share/mk/sys.mk
Show First 20 Lines • Show All 253 Lines • ▼ Show 20 Lines | |||||
.if defined(%POSIX) | .if defined(%POSIX) | ||||
YFLAGS ?= | YFLAGS ?= | ||||
.else | .else | ||||
YFLAGS ?= -d | YFLAGS ?= -d | ||||
.endif | .endif | ||||
.if defined(%POSIX) | .if defined(%POSIX) | ||||
# Posix 1003.2 mandated rules | .include "bsd.suffixes-posix.mk" | ||||
# | |||||
# Quoted directly from the Posix 1003.2 draft, only the macros | |||||
# $@, $< and $* have been replaced by ${.TARGET}, ${.IMPSRC}, and | |||||
# ${.PREFIX}, resp. | |||||
# SINGLE SUFFIX RULES | |||||
.c: | |||||
${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${.IMPSRC} | |||||
.f: | |||||
${FC} ${FFLAGS} ${LDFLAGS} -o ${.TARGET} ${.IMPSRC} | |||||
.sh: | |||||
cp -f ${.IMPSRC} ${.TARGET} | |||||
chmod a+x ${.TARGET} | |||||
# DOUBLE SUFFIX RULES | |||||
.c.o: | |||||
${CC} ${CFLAGS} -c ${.IMPSRC} | |||||
.f.o: | |||||
${FC} ${FFLAGS} -c ${.IMPSRC} | |||||
.y.o: | |||||
${YACC} ${YFLAGS} ${.IMPSRC} | |||||
${CC} ${CFLAGS} -c y.tab.c | |||||
rm -f y.tab.c | |||||
mv y.tab.o ${.TARGET} | |||||
.l.o: | |||||
${LEX} ${LFLAGS} ${.IMPSRC} | |||||
${CC} ${CFLAGS} -c lex.yy.c | |||||
rm -f lex.yy.c | |||||
mv lex.yy.o ${.TARGET} | |||||
.y.c: | |||||
${YACC} ${YFLAGS} ${.IMPSRC} | |||||
mv y.tab.c ${.TARGET} | |||||
.l.c: | |||||
${LEX} ${LFLAGS} ${.IMPSRC} | |||||
mv lex.yy.c ${.TARGET} | |||||
.c.a: | |||||
${CC} ${CFLAGS} -c ${.IMPSRC} | |||||
${AR} ${ARFLAGS} ${.TARGET} ${.PREFIX}.o | |||||
rm -f ${.PREFIX}.o | |||||
.f.a: | |||||
${FC} ${FFLAGS} -c ${.IMPSRC} | |||||
${AR} ${ARFLAGS} ${.TARGET} ${.PREFIX}.o | |||||
rm -f ${.PREFIX}.o | |||||
.else | .else | ||||
# non-Posix rule set | # non-Posix rule set | ||||
.include "bsd.suffixes.mk" | |||||
.sh: | |||||
cp -f ${.IMPSRC} ${.TARGET} | |||||
chmod a+x ${.TARGET} | |||||
.c.ln: | |||||
${LINT} ${LINTOBJFLAGS} ${CFLAGS:M-[DIU]*} ${.IMPSRC} || \ | |||||
touch ${.TARGET} | |||||
.cc.ln .C.ln .cpp.ln .cxx.ln: | |||||
${LINT} ${LINTOBJFLAGS} ${CXXFLAGS:M-[DIU]*} ${.IMPSRC} || \ | |||||
touch ${.TARGET} | |||||
.c: | |||||
${CC} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} | |||||
${CTFCONVERT_CMD} | |||||
.c.o: | |||||
${CC} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} | |||||
${CTFCONVERT_CMD} | |||||
.cc .cpp .cxx .C: | |||||
${CXX} ${CXXFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} | |||||
.cc.o .cpp.o .cxx.o .C.o: | |||||
${CXX} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET} | |||||
.m.o: | |||||
${OBJC} ${OBJCFLAGS} -c ${.IMPSRC} -o ${.TARGET} | |||||
${CTFCONVERT_CMD} | |||||
.p.o: | |||||
${PC} ${PFLAGS} -c ${.IMPSRC} -o ${.TARGET} | |||||
${CTFCONVERT_CMD} | |||||
.e .r .F .f: | |||||
${FC} ${RFLAGS} ${EFLAGS} ${FFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} \ | |||||
-o ${.TARGET} | |||||
.e.o .r.o .F.o .f.o: | |||||
${FC} ${RFLAGS} ${EFLAGS} ${FFLAGS} -c ${.IMPSRC} -o ${.TARGET} | |||||
.S.o: | |||||
${CC:N${CCACHE_BIN}} ${CFLAGS} ${ACFLAGS} -c ${.IMPSRC} -o ${.TARGET} | |||||
${CTFCONVERT_CMD} | |||||
.asm.o: | |||||
${CC:N${CCACHE_BIN}} -x assembler-with-cpp ${CFLAGS} ${ACFLAGS} -c ${.IMPSRC} \ | |||||
-o ${.TARGET} | |||||
${CTFCONVERT_CMD} | |||||
.s.o: | |||||
${AS} ${AFLAGS} -o ${.TARGET} ${.IMPSRC} | |||||
${CTFCONVERT_CMD} | |||||
# XXX not -j safe | |||||
.y.o: | |||||
${YACC} ${YFLAGS} ${.IMPSRC} | |||||
${CC} ${CFLAGS} -c y.tab.c -o ${.TARGET} | |||||
rm -f y.tab.c | |||||
${CTFCONVERT_CMD} | |||||
.l.o: | |||||
${LEX} -t ${LFLAGS} ${.IMPSRC} > ${.PREFIX}.tmp.c | |||||
${CC} ${CFLAGS} -c ${.PREFIX}.tmp.c -o ${.TARGET} | |||||
rm -f ${.PREFIX}.tmp.c | |||||
${CTFCONVERT_CMD} | |||||
# XXX not -j safe | |||||
.y.c: | |||||
${YACC} ${YFLAGS} ${.IMPSRC} | |||||
mv y.tab.c ${.TARGET} | |||||
.l.c: | |||||
${LEX} -t ${LFLAGS} ${.IMPSRC} > ${.TARGET} | |||||
.s.out .c.out .o.out: | |||||
${CC} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} | |||||
${CTFCONVERT_CMD} | |||||
.f.out .F.out .r.out .e.out: | |||||
${FC} ${EFLAGS} ${RFLAGS} ${FFLAGS} ${LDFLAGS} ${.IMPSRC} \ | |||||
${LDLIBS} -o ${.TARGET} | |||||
rm -f ${.PREFIX}.o | |||||
${CTFCONVERT_CMD} | |||||
# XXX not -j safe | |||||
.y.out: | |||||
${YACC} ${YFLAGS} ${.IMPSRC} | |||||
${CC} ${CFLAGS} ${LDFLAGS} y.tab.c ${LDLIBS} -ly -o ${.TARGET} | |||||
rm -f y.tab.c | |||||
${CTFCONVERT_CMD} | |||||
.l.out: | |||||
${LEX} -t ${LFLAGS} ${.IMPSRC} > ${.PREFIX}.tmp.c | |||||
${CC} ${CFLAGS} ${LDFLAGS} ${.PREFIX}.tmp.c ${LDLIBS} -ll -o ${.TARGET} | |||||
rm -f ${.PREFIX}.tmp.c | |||||
${CTFCONVERT_CMD} | |||||
# Pull in global settings. | # Pull in global settings. | ||||
__MAKE_CONF?=/etc/make.conf | __MAKE_CONF?=/etc/make.conf | ||||
.if exists(${__MAKE_CONF}) | .if exists(${__MAKE_CONF}) | ||||
.include "${__MAKE_CONF}" | .include "${__MAKE_CONF}" | ||||
.endif | .endif | ||||
# late include for customization | # late include for customization | ||||
▲ Show 20 Lines • Show All 45 Lines • Show Last 20 Lines |