1# $OpenBSD: sys.mk,v 1.95 2024/02/17 16:13:24 deraadt Exp $ 2# $NetBSD: sys.mk,v 1.27 1996/04/10 05:47:19 mycroft Exp $ 3# @(#)sys.mk 5.11 (Berkeley) 3/13/91 4 5.if defined(EXTRA_SYS_MK_INCLUDES) 6.for __SYS_MK_INCLUDE in ${EXTRA_SYS_MK_INCLUDES} 7.include ${__SYS_MK_INCLUDE} 8.endfor 9.endif 10 11unix= We run OpenBSD. 12OSMAJOR= 7 13OSMINOR= 5 14OSREV= $(OSMAJOR).$(OSMINOR) 15OSrev= $(OSMAJOR)$(OSMINOR) 16 17.SUFFIXES: .out .a .o .c .cc .C .cxx .cpp .F .f .r .y .l .s .S .cl .p .h .sh .m4 18 19AR?= ar 20ARFLAGS?= r 21RANLIB?= ranlib 22LORDER?= lorder 23 24AS?= as 25AFLAGS?= ${DEBUG} 26COMPILE.s?= ${CC} ${AFLAGS} -c 27LINK.s?= ${CC} ${AFLAGS} ${LDFLAGS} 28COMPILE.S?= ${CC} ${AFLAGS} ${CPPFLAGS} -c 29LINK.S?= ${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS} 30 31CC?= cc 32 33PIPE?= -pipe 34 35CFLAGS?= -O2 ${PIPE} ${DEBUG} 36COMPILE.c?= ${CC} ${CFLAGS} ${CPPFLAGS} -c 37LINK.c?= ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} 38 39HOSTCC?= cc 40 41CXX?= c++ 42CXXFLAGS?= -O2 ${PIPE} ${DEBUG} 43COMPILE.cc?= ${CXX} ${CXXFLAGS} ${CPPFLAGS} -c 44LINK.cc?= ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS} 45 46CPP?= cpp 47CPPFLAGS?= 48 49FC?= f77 50FFLAGS?= -O2 51RFLAGS?= 52COMPILE.f?= ${FC} ${FFLAGS} -c 53LINK.f?= ${FC} ${FFLAGS} ${LDFLAGS} 54COMPILE.F?= ${FC} ${FFLAGS} ${CPPFLAGS} -c 55LINK.F?= ${FC} ${FFLAGS} ${CPPFLAGS} ${LDFLAGS} 56COMPILE.r?= ${FC} ${FFLAGS} ${RFLAGS} -c 57LINK.r?= ${FC} ${FFLAGS} ${RFLAGS} ${LDFLAGS} 58 59LEX?= lex 60LFLAGS?= 61LEX.l?= ${LEX} ${LFLAGS} 62 63LD?= ld 64LDFLAGS+= ${DEBUG} 65 66MAKE?= make 67 68PC?= pc 69PFLAGS?= 70COMPILE.p?= ${PC} ${PFLAGS} ${CPPFLAGS} -c 71LINK.p?= ${PC} ${PFLAGS} ${CPPFLAGS} ${LDFLAGS} 72 73SHELL?= sh 74 75YACC?= yacc 76YFLAGS?= -d 77YACC.y?= ${YACC} ${YFLAGS} 78 79INSTALL?= install 80 81CTAGS?= /usr/bin/ctags 82 83# C 84.c: 85 ${LINK.c} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 86.c.o: 87 ${COMPILE.c} ${.IMPSRC} 88.c.a: 89 ${COMPILE.c} ${.IMPSRC} 90 ${AR} ${ARFLAGS} $@ $*.o 91 rm -f $*.o 92 93# C++ 94.cc: 95 ${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 96.cc.o: 97 ${COMPILE.cc} ${.IMPSRC} 98.cc.a: 99 ${COMPILE.cc} ${.IMPSRC} 100 ${AR} ${ARFLAGS} $@ $*.o 101 rm -f $*.o 102 103.C: 104 ${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 105.C.o: 106 ${COMPILE.cc} ${.IMPSRC} 107.C.a: 108 ${COMPILE.cc} ${.IMPSRC} 109 ${AR} ${ARFLAGS} $@ $*.o 110 rm -f $*.o 111 112.cxx: 113 ${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 114.cxx.o: 115 ${COMPILE.cc} ${.IMPSRC} 116.cxx.a: 117 ${COMPILE.cc} ${.IMPSRC} 118 ${AR} ${ARFLAGS} $@ $*.o 119 rm -f $*.o 120 121.cpp: 122 ${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 123.cpp.o: 124 ${COMPILE.cc} ${.IMPSRC} 125.cpp.a: 126 ${COMPILE.cc} ${.IMPSRC} 127 ${AR} ${ARFLAGS} $@ $*.o 128 rm -f $*.o 129 130# Fortran/Ratfor 131.f: 132 ${LINK.f} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 133.f.o: 134 ${COMPILE.f} ${.IMPSRC} 135.f.a: 136 ${COMPILE.f} ${.IMPSRC} 137 ${AR} ${ARFLAGS} $@ $*.o 138 rm -f $*.o 139 140.F: 141 ${LINK.F} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 142.F.o: 143 ${COMPILE.F} ${.IMPSRC} 144.F.a: 145 ${COMPILE.F} ${.IMPSRC} 146 ${AR} ${ARFLAGS} $@ $*.o 147 rm -f $*.o 148 149.r: 150 ${LINK.r} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 151.r.o: 152 ${COMPILE.r} ${.IMPSRC} 153.r.a: 154 ${COMPILE.r} ${.IMPSRC} 155 ${AR} ${ARFLAGS} $@ $*.o 156 rm -f $*.o 157 158# Pascal 159.p: 160 ${LINK.p} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 161.p.o: 162 ${COMPILE.p} ${.IMPSRC} 163.p.a: 164 ${COMPILE.p} ${.IMPSRC} 165 ${AR} ${ARFLAGS} $@ $*.o 166 rm -f $*.o 167 168# Assembly 169.s: 170 ${LINK.s} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 171.s.o: 172 ${COMPILE.s} ${.IMPSRC} 173.s.a: 174 ${COMPILE.s} ${.IMPSRC} 175 ${AR} ${ARFLAGS} $@ $*.o 176 rm -f $*.o 177.S: 178 ${LINK.S} -o ${.TARGET} ${.IMPSRC} ${LDLIBS} 179.S.o: 180 ${COMPILE.S} ${.IMPSRC} 181.S.a: 182 ${COMPILE.S} ${.IMPSRC} 183 ${AR} ${ARFLAGS} $@ $*.o 184 rm -f $*.o 185 186# Lex 187.l: 188 ${LEX.l} -o lex.${.PREFIX}.c ${.IMPSRC} 189 ${LINK.c} -o ${.TARGET} lex.${.PREFIX}.c ${LDLIBS} -ll 190 rm -f lex.${.PREFIX}.c 191.l.c: 192 ${LEX.l} -o ${.TARGET} ${.IMPSRC} 193.l.o: 194 ${LEX.l} -o lex.${.PREFIX}.c ${.IMPSRC} 195 ${COMPILE.c} -o ${.TARGET} lex.${.PREFIX}.c 196 rm -f lex.${.PREFIX}.c 197 if test -f ${.TARGET:R}.d; then sed -i -e 's,lex.${.PREFIX}.c,${.IMPSRC},' ${.TARGET:R}.d; fi 198 199# Yacc 200.y: 201 ${YACC.y} ${.IMPSRC} 202 ${LINK.c} -o ${.TARGET} y.tab.c ${LDLIBS} 203 rm -f y.tab.c 204.y.c: 205 ${YACC.y} ${.IMPSRC} 206 mv y.tab.c ${.TARGET} 207.y.o: 208 ${YACC.y} ${.IMPSRC} 209 ${COMPILE.c} -o ${.TARGET} y.tab.c 210 rm -f y.tab.c 211 if test -f ${.TARGET:R}.d; then sed -i -e 's,y.tab.c,${.IMPSRC},' ${.TARGET:R}.d; fi 212 213# Shell 214.sh: 215 rm -f ${.TARGET} 216 cp ${.IMPSRC} ${.TARGET} 217