57 lines
1016 B
Makefile
57 lines
1016 B
Makefile
|
# $FreeBSD$
|
||
|
|
||
|
# Posix 1003.2 mandated rules
|
||
|
#
|
||
|
# 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
|