summaryrefslogtreecommitdiff
path: root/bootstrap/mods/mk/OpenBSD.bsd.prog.mk
diff options
context:
space:
mode:
Diffstat (limited to 'bootstrap/mods/mk/OpenBSD.bsd.prog.mk')
-rw-r--r--bootstrap/mods/mk/OpenBSD.bsd.prog.mk176
1 files changed, 176 insertions, 0 deletions
diff --git a/bootstrap/mods/mk/OpenBSD.bsd.prog.mk b/bootstrap/mods/mk/OpenBSD.bsd.prog.mk
new file mode 100644
index 00000000000..1e54a5f7fdb
--- /dev/null
+++ b/bootstrap/mods/mk/OpenBSD.bsd.prog.mk
@@ -0,0 +1,176 @@
+# $NetBSD: OpenBSD.bsd.prog.mk,v 1.1.1.1 2004/03/11 13:04:00 grant Exp $
+# From:
+# OpenBSD: bsd.prog.mk,v 1.30 2001/08/23 16:39:33 art Exp
+# NetBSD: bsd.prog.mk,v 1.55 1996/04/08 21:19:26 jtc Exp
+# @(#)bsd.prog.mk 5.26 (Berkeley) 6/25/91
+
+.if exists(${.CURDIR}/../Makefile.inc)
+.include "${.CURDIR}/../Makefile.inc"
+.endif
+
+.include <bsd.own.mk>
+
+.SUFFIXES: .out .o .c .cc .C .cxx .y .l .s .8 .7 .6 .5 .4 .3 .2 .1 .0
+
+.if ${WARNINGS:L} == "yes"
+CFLAGS+= ${CDIAGFLAGS}
+CXXFLAGS+= ${CXXDIAGFLAGS}
+.endif
+CFLAGS+= ${COPTS}
+CXXFLAGS+= ${CXXOPTS}
+
+.if (${MACHINE_ARCH} == "powerpc") || (${MACHINE_ARCH} == "alpha") || (${MACHINE_ARCH} == "sparc64")
+CRTBEGIN?= ${DESTDIR}/usr/lib/crtbegin.o
+CRTEND?= ${DESTDIR}/usr/lib/crtend.o
+.endif
+
+LIBCRT0?= ${DESTDIR}/usr/lib/crt0.o
+LIBC?= ${DESTDIR}/usr/lib/libc.a
+LIBCOMPAT?= ${DESTDIR}/usr/lib/libcompat.a
+LIBCURSES?= ${DESTDIR}/usr/lib/libcurses.a
+LIBCRYPTO?= ${DESTDIR}/usr/lib/libcrypto.a
+LIBDBM?= ${DESTDIR}/usr/lib/libdbm.a
+LIBDES?= ${DESTDIR}/usr/lib/libdes.a
+LIBEDIT?= ${DESTDIR}/usr/lib/libedit.a
+LIBGCC?= ${DESTDIR}/usr/lib/libgcc.a
+LIBKDB?= ${DESTDIR}/usr/lib/libkdb.a
+LIBKEYNOTE?= ${DESTDIR}/usr/lib/libkeynote.a
+LIBKRB?= ${DESTDIR}/usr/lib/libkrb.a
+LIBKAFS?= ${DESTDIR}/usr/lib/libkafs.a
+LIBKVM?= ${DESTDIR}/usr/lib/libkvm.a
+LIBL?= ${DESTDIR}/usr/lib/libl.a
+LIBM?= ${DESTDIR}/usr/lib/libm.a
+LIBMP?= ${DESTDIR}/usr/lib/libmp.a
+LIBOLDCURSES?= ${DESTDIR}/usr/lib/libocurses.a
+LIBPC?= ${DESTDIR}/usr/lib/libpc.a
+LIBPERL?= ${DESTDIR}/usr/lib/libperl.a
+LIBPLOT?= ${DESTDIR}/usr/lib/libplot.a
+LIBRESOLV?= ${DESTDIR}/usr/lib/libresolv.a
+LIBRPCSVC?= ${DESTDIR}/usr/lib/librpcsvc.a
+LIBSKEY?= ${DESTDIR}/usr/lib/libskey.a
+LIBSSL?= ${DESTDIR}/usr/lib/libssl.a
+LIBTELNET?= ${DESTDIR}/usr/lib/libtelnet.a
+LIBTERMCAP?= ${DESTDIR}/usr/lib/libtermcap.a
+LIBTERMLIB?= ${DESTDIR}/usr/lib/libtermlib.a
+LIBUTIL?= ${DESTDIR}/usr/lib/libutil.a
+LIBWRAP?= ${DESTDIR}/usr/lib/libwrap.a
+LIBY?= ${DESTDIR}/usr/lib/liby.a
+LIBZ?= ${DESTDIR}/usr/lib/libz.a
+
+.if defined(SHAREDSTRINGS)
+CLEANFILES+=strings
+.c.o:
+ ${CC} -E ${CFLAGS} ${.IMPSRC} | xstr -c -
+ @${CC} ${CFLAGS} -c x.c -o ${.TARGET}
+ @rm -f x.c
+
+.cc.o:
+ ${CXX} -E ${CXXFLAGS} ${.IMPSRC} | xstr -c -
+ @mv -f x.c x.cc
+ @${CXX} ${CXXFLAGS} -c x.cc -o ${.TARGET}
+ @rm -f x.cc
+
+.C.o:
+ ${CXX} -E ${CXXFLAGS} ${.IMPSRC} | xstr -c -
+ @mv -f x.c x.C
+ @${CXX} ${CXXFLAGS} -c x.C -o ${.TARGET}
+ @rm -f x.C
+
+.cxx.o:
+ ${CXX} -E ${CXXFLAGS} ${.IMPSRC} | xstr -c -
+ @mv -f x.c x.cxx
+ @${CXX} ${CXXFLAGS} -c x.cxx -o ${.TARGET}
+ @rm -f x.cxx
+.endif
+
+
+.if defined(PROG)
+SRCS?= ${PROG}.c
+.if !empty(SRCS:N*.h:N*.sh)
+OBJS+= ${SRCS:N*.h:N*.sh:R:S/$/.o/g}
+LOBJS+= ${LSRCS:.c=.ln} ${SRCS:M*.c:.c=.ln}
+.endif
+
+.if defined(OBJS) && !empty(OBJS)
+.if defined(DESTDIR)
+
+${PROG}: ${LIBCRT0} ${OBJS} ${LIBC} ${CRTBEGIN} ${CRTEND} ${DPADD}
+ ${CC} ${LDFLAGS} ${LDSTATIC} -o ${.TARGET} -nostdlib -L${DESTDIR}/usr/lib ${LIBCRT0} ${CRTBEGIN} ${OBJS} ${LDADD} -lgcc -lc -lgcc ${CRTEND}
+
+.else
+
+${PROG}: ${LIBCRT0} ${OBJS} ${LIBC} ${CRTBEGIN} ${CRTEND} ${DPADD}
+ ${CC} ${LDFLAGS} ${LDSTATIC} -o ${.TARGET} ${OBJS} ${LDADD}
+
+.endif # defined(DESTDIR)
+.endif # defined(OBJS) && !empty(OBJS)
+
+.if !defined(MAN)
+MAN= ${PROG}.1
+.endif # !defined(MAN)
+.endif # defined(PROG)
+
+.MAIN: all
+all: ${PROG} _SUBDIRUSE
+
+.if !target(clean)
+clean: _SUBDIRUSE
+ rm -f a.out [Ee]rrs mklog core *.core \
+ ${PROG} ${OBJS} ${LOBJS} ${CLEANFILES}
+.endif
+
+cleandir: _SUBDIRUSE clean
+
+.if !target(install)
+.if !target(beforeinstall)
+beforeinstall:
+.endif
+.if !target(afterinstall)
+afterinstall:
+.endif
+
+.if !target(realinstall)
+realinstall:
+.if defined(PROG)
+ ${INSTALL} ${INSTALL_COPY} ${INSTALL_STRIP} -o ${BINOWN} -g ${BINGRP} \
+ -m ${BINMODE} ${PROG} ${DESTDIR}${BINDIR}
+.endif
+.if defined(HIDEGAME)
+ (cd ${DESTDIR}/usr/games; rm -f ${PROG}; ln -s dm ${PROG})
+.endif
+.endif
+
+install: maninstall _SUBDIRUSE
+.if defined(LINKS) && !empty(LINKS)
+. for lnk file in ${LINKS}
+ @l=${DESTDIR}${lnk}; \
+ t=${DESTDIR}${file}; \
+ echo $$t -\> $$l; \
+ rm -f $$t; ln $$l $$t
+. endfor
+.endif
+
+maninstall: afterinstall
+afterinstall: realinstall
+realinstall: beforeinstall
+.endif
+
+.if !target(lint)
+lint: ${LOBJS}
+.if defined(LOBJS) && !empty(LOBJS)
+ @${LINT} ${LINTFLAGS} ${LDFLAGS:M-L*} ${LOBJS} ${LDADD}
+.endif
+.endif
+
+.if !defined(NOMAN)
+.include <bsd.man.mk>
+.endif
+
+.if !defined(NONLS)
+.include <bsd.nls.mk>
+.endif
+
+.include <bsd.obj.mk>
+.include <bsd.dep.mk>
+.include <bsd.subdir.mk>
+.include <bsd.sys.mk>