[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.14

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