1246149Ssjg# $Id: Linux.mk,v 1.7 2011/03/02 05:05:21 sjg Exp $ 2246149Ssjg# $NetBSD: sys.mk,v 1.19.2.1 1994/07/26 19:58:31 cgd Exp $ 3246149Ssjg# @(#)sys.mk 5.11 (Berkeley) 3/13/91 4246149Ssjg 5246149SsjgOS?= Linux 6246149Ssjgunix?= We run ${OS}. 7246149Ssjg 8246149SsjgROOT_GROUP= root 9246149Ssjg 10246149Ssjg# would be better to work out where it is... 11246149SsjgLIBCRT0= /dev/null 12246149Ssjg 13246149SsjgNEED_SOLINKS=yes 14246149Ssjg 15246149Ssjg.SUFFIXES: .out .a .ln .o .c .cc .C .F .f .r .y .l .s .S .cl .p .h .sh .m4 16246149Ssjg 17246149Ssjg.LIBS: .a 18246149Ssjg 19246149SsjgAR= ar 20246149SsjgARFLAGS= rl 21246149SsjgRANLIB= ranlib 22246149Ssjg 23246149SsjgAS= as 24246149SsjgAFLAGS= 25246149SsjgCOMPILE.s= ${AS} ${AFLAGS} 26246149SsjgLINK.s= ${CC} ${AFLAGS} ${LDFLAGS} 27246149SsjgCOMPILE.S= ${CC} ${AFLAGS} ${CPPFLAGS} -c 28246149SsjgLINK.S= ${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS} 29246149Ssjg.if exists(/usr/local/bin/gcc) 30246149SsjgCC= gcc -pipe 31246149SsjgDBG= -O -g 32246149SsjgSTATIC?= -static 33246149Ssjg.else 34246149SsjgCC= cc -pipe 35246149SsjgDBG= -g 36246149SsjgSTATIC= -Bstatic 37246149Ssjg.endif 38246149SsjgCFLAGS= ${DBG} 39246149SsjgCOMPILE.c= ${CC} ${CFLAGS} ${CPPFLAGS} -c 40246149SsjgLINK.c= ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} 41246149Ssjg 42246149SsjgCXX= g++ 43246149SsjgCXXFLAGS= ${CFLAGS} 44246149SsjgCOMPILE.cc= ${CXX} ${CXXFLAGS} ${CPPFLAGS} -c 45246149SsjgLINK.cc= ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS} 46246149Ssjg 47246149SsjgCPP= cpp 48246149Ssjg.if defined(DESTDIR) 49246149SsjgCPPFLAGS+= -nostdinc -idirafter ${DESTDIR}/usr/include 50246149Ssjg.endif 51246149Ssjg 52246149SsjgMK_DEP= mkdeps.sh -N 53246149SsjgFC= f77 54246149SsjgFFLAGS= -O 55246149SsjgRFLAGS= 56246149SsjgCOMPILE.f= ${FC} ${FFLAGS} -c 57246149SsjgLINK.f= ${FC} ${FFLAGS} ${LDFLAGS} 58246149SsjgCOMPILE.F= ${FC} ${FFLAGS} ${CPPFLAGS} -c 59246149SsjgLINK.F= ${FC} ${FFLAGS} ${CPPFLAGS} ${LDFLAGS} 60246149SsjgCOMPILE.r= ${FC} ${FFLAGS} ${RFLAGS} -c 61246149SsjgLINK.r= ${FC} ${FFLAGS} ${RFLAGS} ${LDFLAGS} 62246149Ssjg 63246149SsjgLEX= lex 64246149SsjgLFLAGS= 65246149SsjgLEX.l= ${LEX} ${LFLAGS} 66246149Ssjg 67246149SsjgLD= ld 68246149SsjgLDFLAGS= 69246149Ssjg 70246149SsjgLINT= lint 71246149SsjgLINTFLAGS= -chapbx 72246149Ssjg 73246149SsjgMAKE= bmake 74246149Ssjg 75246149SsjgPC= pc 76246149SsjgPFLAGS= 77246149SsjgCOMPILE.p= ${PC} ${PFLAGS} ${CPPFLAGS} -c 78246149SsjgLINK.p= ${PC} ${PFLAGS} ${CPPFLAGS} ${LDFLAGS} 79246149Ssjg 80246149SsjgSHELL= sh 81246149Ssjg 82246149SsjgYACC= yacc 83246149SsjgYFLAGS= -d 84246149SsjgYACC.y= ${YACC} ${YFLAGS} 85246149Ssjg 86246149Ssjg# C 87246149Ssjg.c: 88246149Ssjg ${LINK.c} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 89246149Ssjg.c.o: 90246149Ssjg ${COMPILE.c} ${.IMPSRC} 91246149Ssjg.c.a: 92246149Ssjg ${COMPILE.c} ${.IMPSRC} 93246149Ssjg ${AR} ${ARFLAGS} $@ $*.o 94246149Ssjg rm -f $*.o 95246149Ssjg 96246149Ssjg# C++ 97246149Ssjg.cc: 98246149Ssjg ${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 99246149Ssjg.cc.o: 100246149Ssjg ${COMPILE.cc} ${.IMPSRC} 101246149Ssjg.cc.a: 102246149Ssjg ${COMPILE.cc} ${.IMPSRC} 103246149Ssjg ${AR} ${ARFLAGS} $@ $*.o 104246149Ssjg rm -f $*.o 105246149Ssjg 106246149Ssjg.C: 107246149Ssjg ${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 108246149Ssjg.C.o: 109246149Ssjg ${COMPILE.cc} ${.IMPSRC} 110246149Ssjg.C.a: 111246149Ssjg ${COMPILE.cc} ${.IMPSRC} 112246149Ssjg ${AR} ${ARFLAGS} $@ $*.o 113246149Ssjg rm -f $*.o 114246149Ssjg 115246149Ssjg# Fortran/Ratfor 116246149Ssjg.f: 117246149Ssjg ${LINK.f} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 118246149Ssjg.f.o: 119246149Ssjg ${COMPILE.f} ${.IMPSRC} 120246149Ssjg.f.a: 121246149Ssjg ${COMPILE.f} ${.IMPSRC} 122246149Ssjg ${AR} ${ARFLAGS} $@ $*.o 123246149Ssjg rm -f $*.o 124246149Ssjg 125246149Ssjg.F: 126246149Ssjg ${LINK.F} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 127246149Ssjg.F.o: 128246149Ssjg ${COMPILE.F} ${.IMPSRC} 129246149Ssjg.F.a: 130246149Ssjg ${COMPILE.F} ${.IMPSRC} 131246149Ssjg ${AR} ${ARFLAGS} $@ $*.o 132246149Ssjg rm -f $*.o 133246149Ssjg 134246149Ssjg.r: 135246149Ssjg ${LINK.r} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 136246149Ssjg.r.o: 137246149Ssjg ${COMPILE.r} ${.IMPSRC} 138246149Ssjg.r.a: 139246149Ssjg ${COMPILE.r} ${.IMPSRC} 140246149Ssjg ${AR} ${ARFLAGS} $@ $*.o 141246149Ssjg rm -f $*.o 142246149Ssjg 143246149Ssjg# Pascal 144246149Ssjg.p: 145246149Ssjg ${LINK.p} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 146246149Ssjg.p.o: 147246149Ssjg ${COMPILE.p} ${.IMPSRC} 148246149Ssjg.p.a: 149246149Ssjg ${COMPILE.p} ${.IMPSRC} 150246149Ssjg ${AR} ${ARFLAGS} $@ $*.o 151246149Ssjg rm -f $*.o 152246149Ssjg 153246149Ssjg# Assembly 154246149Ssjg.s: 155246149Ssjg ${LINK.s} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 156246149Ssjg.s.o: 157246149Ssjg ${COMPILE.s} -o ${.TARGET} ${.IMPSRC} 158246149Ssjg.s.a: 159246149Ssjg ${COMPILE.s} ${.IMPSRC} 160246149Ssjg ${AR} ${ARFLAGS} $@ $*.o 161246149Ssjg rm -f $*.o 162246149Ssjg.S: 163246149Ssjg ${LINK.S} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 164246149Ssjg.S.o: 165246149Ssjg ${COMPILE.S} ${.IMPSRC} 166246149Ssjg.S.a: 167246149Ssjg ${COMPILE.S} ${.IMPSRC} 168246149Ssjg ${AR} ${ARFLAGS} $@ $*.o 169246149Ssjg rm -f $*.o 170246149Ssjg 171246149Ssjg# Lex 172246149Ssjg.l: 173246149Ssjg ${LEX.l} ${.IMPSRC} 174246149Ssjg ${LINK.c} -o ${.TARGET} lex.yy.c ${LDLIBS} -ll 175246149Ssjg rm -f lex.yy.c 176246149Ssjg.l.c: 177246149Ssjg ${LEX.l} ${.IMPSRC} 178246149Ssjg mv lex.yy.c ${.TARGET} 179246149Ssjg.l.o: 180246149Ssjg ${LEX.l} ${.IMPSRC} 181246149Ssjg ${COMPILE.c} -o ${.TARGET} lex.yy.c 182246149Ssjg rm -f lex.yy.c 183246149Ssjg 184246149Ssjg# Yacc 185246149Ssjg.y: 186246149Ssjg ${YACC.y} ${.IMPSRC} 187246149Ssjg ${LINK.c} -o ${.TARGET} y.tab.c ${LDLIBS} 188246149Ssjg rm -f y.tab.c 189246149Ssjg.y.c: 190246149Ssjg ${YACC.y} ${.IMPSRC} 191246149Ssjg mv y.tab.c ${.TARGET} 192246149Ssjg.y.o: 193246149Ssjg ${YACC.y} ${.IMPSRC} 194246149Ssjg ${COMPILE.c} -o ${.TARGET} y.tab.c 195246149Ssjg rm -f y.tab.c 196246149Ssjg 197246149Ssjg# Shell 198246149Ssjg.sh: 199246149Ssjg rm -f ${.TARGET} 200246149Ssjg cp ${.IMPSRC} ${.TARGET} 201