Home | History | Annotate | Line # | Download | only in mk
sys.mk revision 1.9
      1 #	from: @(#)sys.mk	5.11 (Berkeley) 3/13/91
      2 #	$Id: sys.mk,v 1.9 1993/12/29 18:44:36 jtc Exp $
      3 
      4 unix=		We run UNIX.
      5 
      6 .SUFFIXES: .out .a .ln .o .c .cc .C .F .f .e .r .y .l .s .S .cl .p .h .sh
      7 .SUFFIXES: .0 .1 .2 .3 .4 .5 .6 .7 .8
      8 
      9 .LIBS:		.a
     10 
     11 AR=		ar
     12 ARFLAGS=	rl
     13 RANLIB=		ranlib
     14 
     15 AS=		as
     16 AFLAGS=
     17 
     18 CC=		cc
     19 CFLAGS=		-O
     20 
     21 CXX=		g++
     22 CXXFLAGS=	${CFLAGS}
     23 
     24 CPP=		cpp
     25 
     26 FC=		f77
     27 FFLAGS=		-O
     28 EFLAGS=
     29 
     30 LEX=		lex
     31 LFLAGS=
     32 
     33 LD=		ld
     34 LDFLAGS=
     35 
     36 LINT=		lint
     37 LINTFLAGS=	-chapbx
     38 
     39 MAKE=		make
     40 
     41 PC=		pc
     42 PFLAGS=
     43 
     44 RC=		f77
     45 RFLAGS=
     46 
     47 SHELL=		sh
     48 
     49 YACC=		yacc
     50 YFLAGS=		-d
     51 
     52 # single suffix rules
     53 .c:
     54 	${CC} ${CFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET}
     55 
     56 .cc .C:
     57 	${CXX} ${CXXFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET}
     58 
     59 .e .r .F .f:
     60 	${FC} ${RFLAGS} ${EFLAGS} ${FFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET}
     61 
     62 .p:
     63 	${PC} ${PFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET}
     64 
     65 .y:
     66 	${YACC} ${YFLAGS} ${.IMPSRC}
     67 	${CC} ${CFLAGS} y.tab.c ${LDLIBS} -ly -o ${.TARGET}
     68 	rm -f y.tab.c
     69 
     70 .l:
     71 	${LEX} ${LFLAGS} ${.IMPSRC}
     72 	${CC} ${CFLAGS} lex.yy.c ${LDLIBS} -ll -o ${.TARGET}
     73 	rm -f lex.yy.c
     74 
     75 .sh:
     76 	rm -f ${.TARGET}
     77 	cp ${.IMPSRC} ${.TARGET}
     78 
     79 
     80 # double suffix rules
     81 .c.o:
     82 	${CC} ${CFLAGS} -c ${.IMPSRC}
     83 
     84 .cc.o .C.o:
     85 	${CXX} ${CXXFLAGS} -c ${.IMPSRC}
     86 
     87 .e.o .r.o .F.o .f.o:
     88 	${FC} ${RFLAGS} ${EFLAGS} ${FFLAGS} -c ${.IMPSRC}
     89 
     90 .p.o:
     91 	${PC} ${PFLAGS} -c ${.IMPSRC}
     92 
     93 .s.o:
     94 	${AS} ${AFLAGS} -o ${.TARGET} ${.IMPSRC}
     95 
     96 .S.o:
     97 	${CC} -E ${CFLAGS} ${AFLAGS} ${.IMPSRC} | as -o ${.TARGET}
     98 
     99 .y.o:
    100 	${YACC} ${YFLAGS} ${.IMPSRC}
    101 	${CC} ${CFLAGS} -c y.tab.c -o ${.TARGET}
    102 	rm -f y.tab.c
    103 
    104 .l.o:
    105 	${LEX} ${LFLAGS} ${.IMPSRC}
    106 	${CC} ${CFLAGS} -c lex.yy.c -o ${.TARGET}
    107 	rm -f lex.yy.c
    108 
    109 .y.c:
    110 	${YACC} ${YFLAGS} ${.IMPSRC}
    111 	mv y.tab.c ${.TARGET}
    112 
    113 .l.c:
    114 	${LEX} ${LFLAGS} ${.IMPSRC}
    115 	mv lex.yy.c ${.TARGET}
    116 
    117 .c.a:
    118 	${CC} -c ${CFLAGS} $<
    119 	${AR} ${ARFLAGS} $@ $*.o
    120 	rm -f $*.o
    121 
    122 .f.a:
    123 	${CC} -c ${FFLAGS} $<
    124 	${AR} ${ARFLAGS} $@ $*.o
    125 	rm -f $*.o
    126 	
    127 
    128 .s.out .c.out .o.out:
    129 	${CC} ${CFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET}
    130 
    131 .f.out .F.out .r.out .e.out:
    132 	${FC} ${EFLAGS} ${RFLAGS} ${FFLAGS} ${.IMPSRC} \
    133 	    ${LDLIBS} -o ${.TARGET}
    134 	rm -f ${.PREFIX}.o
    135 
    136 .y.out:
    137 	${YACC} ${YFLAGS} ${.IMPSRC}
    138 	${CC} ${CFLAGS} y.tab.c ${LDLIBS} -ly -o ${.TARGET}
    139 	rm -f y.tab.c
    140 
    141 .l.out:
    142 	${LEX} ${LFLAGS} ${.IMPSRC}
    143 	${CC} ${CFLAGS} lex.yy.c ${LDLIBS} -ll -o ${.TARGET}
    144 	rm -f lex.yy.c
    145 
    146 .8.0 .7.0 .6.0 .5.0 .4.0 .3.0 .2.0 .1.0:
    147 	nroff -mandoc ${.IMPSRC} > ${.TARGET}
    148 
    149 .include <bsd.own.mk>
    150