1 # $Id: SunOS.mk,v 1.8 2017/05/05 18:02:17 sjg Exp $
3 .if ${.PARSEFILE} == "sys.mk"
4 .include <host-target.mk>
6 OS?= SunOS.${HOST_OSMAJOR}
10 .if ${HOST_OSMAJOR} > 4
13 SHLIB_FULLVERSION = ${SHLIB_MAJOR}
15 # suppress the dependency
19 # the PATH below may find an ancient gcc
20 CC := ${gcc:L:${M_whence}}
24 # the stuff in /usr/xpg4/bin is usually more sane.
25 PATH=/usr/xpg4/bin:/usr/sbin:/usr/bin:/usr/ucb:/usr/sfw/bin:/opt/gnu/bin:/usr/ccs/bin:/usr/local/bin
29 HOST_LIBDIRS = /usr/lib /lib /usr/sfw/lib
44 .SUFFIXES: .out .a .ln .o .c ${CXX_SUFFIXES} .F .f .r .y .l .s .S .cl .p .h .sh .m4
54 COMPILE.s= ${AS} ${AFLAGS}
55 LINK.s= ${CC} ${AFLAGS} ${LDFLAGS}
56 COMPILE.S= ${CC} ${AFLAGS} ${CPPFLAGS} -c
57 LINK.S= ${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS}
58 .if exists(/opt/gnu/bin/gcc) || exists(/usr/local/bin/gcc)
68 COMPILE.c= ${CC} ${CFLAGS} ${CPPFLAGS} -c
69 LINK.c= ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}
73 COMPILE.cc= ${CXX} ${CXXFLAGS} ${CPPFLAGS} -c
74 LINK.cc= ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}
77 CPPFLAGS+= -nostdinc -idirafter ${DESTDIR}/usr/include
84 COMPILE.f= ${FC} ${FFLAGS} -c
85 LINK.f= ${FC} ${FFLAGS} ${LDFLAGS}
86 COMPILE.F= ${FC} ${FFLAGS} ${CPPFLAGS} -c
87 LINK.F= ${FC} ${FFLAGS} ${CPPFLAGS} ${LDFLAGS}
88 COMPILE.r= ${FC} ${FFLAGS} ${RFLAGS} -c
89 LINK.r= ${FC} ${FFLAGS} ${RFLAGS} ${LDFLAGS}
93 LEX.l= ${LEX} ${LFLAGS}
103 COMPILE.p= ${PC} ${PFLAGS} ${CPPFLAGS} -c
104 LINK.p= ${PC} ${PFLAGS} ${CPPFLAGS} ${LDFLAGS}
108 .if exists(/usr/local/bin/bison) || exists(/opt/gnu/bin/bison)
114 YACC.y= ${YACC} ${YFLAGS}
118 ${LINK.c} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
120 ${COMPILE.c} ${.IMPSRC}
122 ${COMPILE.c} ${.IMPSRC}
123 ${AR} ${ARFLAGS} $@ $*.o
128 ${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
129 ${CXX_SUFFIXES:%=%.o}:
130 ${COMPILE.cc} ${.IMPSRC}
131 ${CXX_SUFFIXES:%=%.a}:
132 ${COMPILE.cc} ${.IMPSRC}
133 ${AR} ${ARFLAGS} $@ $*.o
138 ${LINK.f} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
140 ${COMPILE.f} ${.IMPSRC}
142 ${COMPILE.f} ${.IMPSRC}
143 ${AR} ${ARFLAGS} $@ $*.o
147 ${LINK.F} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
149 ${COMPILE.F} ${.IMPSRC}
151 ${COMPILE.F} ${.IMPSRC}
152 ${AR} ${ARFLAGS} $@ $*.o
156 ${LINK.r} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
158 ${COMPILE.r} ${.IMPSRC}
160 ${COMPILE.r} ${.IMPSRC}
161 ${AR} ${ARFLAGS} $@ $*.o
166 ${LINK.p} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
168 ${COMPILE.p} ${.IMPSRC}
170 ${COMPILE.p} ${.IMPSRC}
171 ${AR} ${ARFLAGS} $@ $*.o
176 ${LINK.s} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
178 ${COMPILE.s} ${.IMPSRC}
180 ${COMPILE.s} ${.IMPSRC}
181 ${AR} ${ARFLAGS} $@ $*.o
184 ${LINK.S} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
186 ${COMPILE.S} ${.IMPSRC}
188 ${COMPILE.S} ${.IMPSRC}
189 ${AR} ${ARFLAGS} $@ $*.o
195 ${LINK.c} -o ${.TARGET} lex.yy.c ${LDLIBS} -ll
199 mv lex.yy.c ${.TARGET}
202 ${COMPILE.c} -o ${.TARGET} lex.yy.c
208 ${LINK.c} -o ${.TARGET} y.tab.c ${LDLIBS}
212 mv y.tab.c ${.TARGET}
215 ${COMPILE.c} -o ${.TARGET} y.tab.c
221 cp ${.IMPSRC} ${.TARGET}