[BACK]Return to bsd.prog.mk CVS log [TXT][DIR] Up to [local] / src / share / mk

Annotation of src/share/mk/bsd.prog.mk, Revision 1.5

1.5     ! mickey      1: #      $OpenBSD: bsd.prog.mk,v 1.4 1996/06/02 05:58:20 tholo Exp $
1.3       deraadt     2: #      $NetBSD: bsd.prog.mk,v 1.55 1996/04/08 21:19:26 jtc Exp $
1.1       deraadt     3: #      @(#)bsd.prog.mk 5.26 (Berkeley) 6/25/91
                      4:
                      5: .if exists(${.CURDIR}/../Makefile.inc)
                      6: .include "${.CURDIR}/../Makefile.inc"
                      7: .endif
                      8:
                      9: .include <bsd.own.mk>
                     10:
                     11: .SUFFIXES: .out .o .c .cc .C .y .l .s .8 .7 .6 .5 .4 .3 .2 .1 .0
                     12:
                     13: CFLAGS+=       ${COPTS}
                     14:
                     15: LIBCRT0?=      ${DESTDIR}/usr/lib/crt0.o
                     16: LIBC?=         ${DESTDIR}/usr/lib/libc.a
                     17: LIBCOMPAT?=    ${DESTDIR}/usr/lib/libcompat.a
                     18: LIBCRYPT?=     ${DESTDIR}/usr/lib/libcrypt.a
                     19: LIBCURSES?=    ${DESTDIR}/usr/lib/libcurses.a
                     20: LIBDBM?=       ${DESTDIR}/usr/lib/libdbm.a
                     21: LIBDES?=       ${DESTDIR}/usr/lib/libdes.a
                     22: LIBEDIT?=      ${DESTDIR}/usr/lib/libedit.a
                     23: LIBGCC?=       ${DESTDIR}/usr/lib/libgcc.a
                     24: LIBKDB?=       ${DESTDIR}/usr/lib/libkdb.a
                     25: LIBKRB?=       ${DESTDIR}/usr/lib/libkrb.a
                     26: LIBKVM?=       ${DESTDIR}/usr/lib/libkvm.a
1.3       deraadt    27: LIBL?=         ${DESTDIR}/usr/lib/libl.a
1.1       deraadt    28: LIBM?=         ${DESTDIR}/usr/lib/libm.a
                     29: LIBMP?=                ${DESTDIR}/usr/lib/libmp.a
1.4       tholo      30: LIBOLDCURSES?= ${DESTDIR}/usr/lib/libocurses.a
1.1       deraadt    31: LIBPC?=                ${DESTDIR}/usr/lib/libpc.a
                     32: LIBPLOT?=      ${DESTDIR}/usr/lib/libplot.a
                     33: LIBRESOLV?=    ${DESTDIR}/usr/lib/libresolv.a
                     34: LIBRPCSVC?=    ${DESTDIR}/usr/lib/librpcsvc.a
                     35: LIBSKEY?=      ${DESTDIR}/usr/lib/libskey.a
                     36: LIBTERMCAP?=   ${DESTDIR}/usr/lib/libtermcap.a
1.4       tholo      37: LIBTERMLIB?=   ${DESTDIR}/usr/lib/libtermlib.a
1.1       deraadt    38: LIBUTIL?=      ${DESTDIR}/usr/lib/libutil.a
1.3       deraadt    39: LIBY?=         ${DESTDIR}/usr/lib/liby.a
1.1       deraadt    40:
                     41: .if defined(SHAREDSTRINGS)
                     42: CLEANFILES+=strings
                     43: .c.o:
                     44:        ${CC} -E ${CFLAGS} ${.IMPSRC} | xstr -c -
                     45:        @${CC} ${CFLAGS} -c x.c -o ${.TARGET}
                     46:        @rm -f x.c
                     47:
                     48: .cc.o:
                     49:        ${CXX} -E ${CXXFLAGS} ${.IMPSRC} | xstr -c -
                     50:        @mv -f x.c x.cc
                     51:        @${CXX} ${CXXFLAGS} -c x.cc -o ${.TARGET}
                     52:        @rm -f x.cc
                     53:
                     54: .C.o:
                     55:        ${CXX} -E ${CXXFLAGS} ${.IMPSRC} | xstr -c -
                     56:        @mv -f x.c x.C
                     57:        @${CXX} ${CXXFLAGS} -c x.C -o ${.TARGET}
                     58:        @rm -f x.C
                     59: .endif
                     60:
                     61:
                     62: .if defined(PROG)
                     63: SRCS?= ${PROG}.c
                     64: .if !empty(SRCS:N*.h:N*.sh)
                     65: OBJS+= ${SRCS:N*.h:N*.sh:R:S/$/.o/g}
                     66: LOBJS+=        ${LSRCS:.c=.ln} ${SRCS:M*.c:.c=.ln}
                     67: .endif
                     68:
                     69: .if defined(OBJS) && !empty(OBJS)
                     70: .if defined(DESTDIR)
                     71:
                     72: ${PROG}: ${LIBCRT0} ${OBJS} ${LIBC} ${DPADD}
                     73:        ${CC} ${LDFLAGS} ${LDSTATIC} -o ${.TARGET} -nostdlib -L${DESTDIR}/usr/lib ${LIBCRT0} ${OBJS} ${LDADD} -lgcc -lc -lgcc
                     74:
                     75: .else
                     76:
                     77: ${PROG}: ${LIBCRT0} ${OBJS} ${LIBC} ${DPADD}
                     78:        ${CC} ${LDFLAGS} ${LDSTATIC} -o ${.TARGET} ${OBJS} ${LDADD}
                     79:
                     80: .endif # defined(DESTDIR)
                     81: .endif # defined(OBJS) && !empty(OBJS)
                     82:
                     83: .if    !defined(MAN)
                     84: MAN=   ${PROG}.1
                     85: .endif # !defined(MAN)
                     86: .endif # defined(PROG)
                     87:
                     88: .MAIN: all
                     89: all: ${PROG} _SUBDIRUSE
                     90:
                     91: .if !target(clean)
                     92: clean: _SUBDIRUSE
                     93:        rm -f a.out [Ee]rrs mklog core *.core \
                     94:            ${PROG} ${OBJS} ${LOBJS} ${CLEANFILES}
                     95: .endif
                     96:
                     97: cleandir: _SUBDIRUSE clean
                     98:
                     99: .if !target(install)
                    100: .if !target(beforeinstall)
                    101: beforeinstall:
                    102: .endif
                    103: .if !target(afterinstall)
                    104: afterinstall:
                    105: .endif
                    106:
                    107: .if !target(realinstall)
                    108: realinstall:
                    109: .if defined(PROG)
                    110:        install ${COPY} ${STRIP} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
                    111:            ${PROG} ${DESTDIR}${BINDIR}
                    112: .endif
                    113: .if defined(HIDEGAME)
                    114:        (cd ${DESTDIR}/usr/games; rm -f ${PROG}; ln -s dm ${PROG})
                    115: .endif
                    116: .endif
                    117:
                    118: install: maninstall _SUBDIRUSE
                    119: .if defined(LINKS) && !empty(LINKS)
                    120:        @set ${LINKS}; \
                    121:        while test $$# -ge 2; do \
1.5     ! mickey    122:                l=${DESTDIR}${BINDIR}/$$1; \
1.1       deraadt   123:                shift; \
1.5     ! mickey    124:                t=${DESTDIR}${BINDIR}/$$1; \
1.1       deraadt   125:                shift; \
                    126:                echo $$t -\> $$l; \
                    127:                rm -f $$t; \
                    128:                ln $$l $$t; \
                    129:        done; true
                    130: .endif
                    131:
                    132: maninstall: afterinstall
                    133: afterinstall: realinstall
                    134: realinstall: beforeinstall
                    135: .endif
                    136:
                    137: .if !target(lint)
                    138: lint: ${LOBJS}
                    139: .if defined(LOBJS) && !empty(LOBJS)
                    140:        @${LINT} ${LINTFLAGS} ${LDFLAGS:M-L*} ${LOBJS} ${LDADD}
                    141: .endif
                    142: .endif
                    143:
                    144: .if !defined(NOMAN)
                    145: .include <bsd.man.mk>
                    146: .endif
                    147:
                    148: .if !defined(NONLS)
                    149: .include <bsd.nls.mk>
                    150: .endif
                    151:
                    152: .include <bsd.obj.mk>
                    153: .include <bsd.dep.mk>
                    154: .include <bsd.subdir.mk>
1.3       deraadt   155: .include <bsd.sys.mk>