[BACK]Return to bsd.hostprog.mk CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / share / mk

Annotation of src/share/mk/bsd.hostprog.mk, Revision 1.34

1.34    ! lukem       1: #      $NetBSD: bsd.hostprog.mk,v 1.33 2003/10/18 15:33:59 lukem Exp $
1.1       wrstuden    2: #      @(#)bsd.prog.mk 8.2 (Berkeley) 4/2/94
                      3:
1.17      tv          4: .include <bsd.init.mk>
1.19      tv          5: .include <bsd.sys.mk>
1.1       wrstuden    6:
1.17      tv          7: ##### Basic targets
1.30      lukem       8: .PHONY:                cleanprog
1.11      tv          9: clean:         cleanprog
1.1       wrstuden   10:
1.17      tv         11: ##### Default values
1.1       wrstuden   12: LIBBZ2?=       /usr/lib/libbz2.a
                     13: LIBC?=         /usr/lib/libc.a
                     14: LIBC_PIC?=     /usr/lib/libc_pic.a
1.9       garbled    15: LIBCDK?=       /usr/lib/libcdk.a
1.1       wrstuden   16: LIBCOMPAT?=    /usr/lib/libcompat.a
                     17: LIBCRYPT?=     /usr/lib/libcrypt.a
                     18: LIBCURSES?=    /usr/lib/libcurses.a
                     19: LIBDBM?=       /usr/lib/libdbm.a
                     20: LIBDES?=       /usr/lib/libdes.a
                     21: LIBEDIT?=      /usr/lib/libedit.a
1.28      provos     22: LIBEVENT?=     /usr/lib/libevent.a
1.9       garbled    23: LIBFORM?=      /usr/lib/libform.a
1.1       wrstuden   24: LIBGCC?=       /usr/lib/libgcc.a
                     25: LIBGNUMALLOC?= /usr/lib/libgnumalloc.a
1.8       itojun     26: LIBINTL?=      /usr/lib/libintl.a
1.1       wrstuden   27: LIBIPSEC?=     /usr/lib/libipsec.a
                     28: LIBKDB?=       /usr/lib/libkdb.a
                     29: LIBKRB?=       /usr/lib/libkrb.a
                     30: LIBKVM?=       /usr/lib/libkvm.a
                     31: LIBL?=         /usr/lib/libl.a
                     32: LIBM?=         /usr/lib/libm.a
1.4       blymn      33: LIBMENU?=      /usr/lib/libmenu.a
1.1       wrstuden   34: LIBMP?=                /usr/lib/libmp.a
                     35: LIBNTP?=       /usr/lib/libntp.a
                     36: LIBOBJC?=      /usr/lib/libobjc.a
                     37: LIBPC?=                /usr/lib/libpc.a
                     38: LIBPCAP?=      /usr/lib/libpcap.a
1.12      thorpej    39: LIBPCI?=       /usr/lib/libpci.a
1.1       wrstuden   40: LIBPLOT?=      /usr/lib/libplot.a
                     41: LIBPOSIX?=     /usr/lib/libposix.a
                     42: LIBRESOLV?=    /usr/lib/libresolv.a
                     43: LIBRPCSVC?=    /usr/lib/librpcsvc.a
                     44: LIBSKEY?=      /usr/lib/libskey.a
                     45: LIBTERMCAP?=   /usr/lib/libtermcap.a
                     46: LIBUTIL?=      /usr/lib/libutil.a
                     47: LIBWRAP?=      /usr/lib/libwrap.a
                     48: LIBY?=         /usr/lib/liby.a
                     49: LIBZ?=         /usr/lib/libz.a
                     50:
1.23      tv         51: HOST_MKDEP?=   CC=${HOST_CC:Q} mkdep
1.20      tv         52:
                     53: # Override these:
                     54: INSTALL:=      ${INSTALL:NSTRIP=*}
1.23      tv         55: MKDEP:=                ${HOST_MKDEP}
1.18      tv         56:
1.25      thorpej    57: .if ${TOOLCHAIN_MISSING} != "yes" || defined(EXTERNAL_TOOLCHAIN)
1.18      tv         58: OBJHOSTMACHINE=        # set
                     59: .endif
1.17      tv         60:
                     61: ##### Build rules
1.1       wrstuden   62: .if defined(HOSTPROG)
                     63: SRCS?=         ${HOSTPROG}.c
                     64:
1.31      lukem      65: DPSRCS+=       ${SRCS:M*.l:.l=.c} ${SRCS:M*.y:.y=.c}
1.32      lukem      66: CLEANFILES+=   ${SRCS:M*.l:.l=.c} ${SRCS:M*.y:.y=.c}
                     67: CLEANFILES+=   ${YHEADER:D${SRCS:M*.y:.y=.h}}
1.1       wrstuden   68:
                     69: .if !empty(SRCS:N*.h:N*.sh)
                     70: OBJS+=         ${SRCS:N*.h:N*.sh:R:S/$/.lo/g}
                     71: LOBJS+=                ${LSRCS:.c=.ln} ${SRCS:M*.c:.c=.ln}
                     72: .endif
                     73:
                     74: .if defined(OBJS) && !empty(OBJS)
1.22      tv         75: .NOPATH: ${OBJS} ${HOSTPROG} ${SRCS:M*.[ly]:C/\..$/.c/} ${YHEADER:D${SRCS:M*.y:.y=.h}}
1.1       wrstuden   76:
1.32      lukem      77: ${OBJS} ${LOBJS}: ${DPSRCS}
                     78: ${HOSTPROG}: ${OBJS} ${DPADD}
1.34    ! lukem      79:        ${_MKMSGLINK.m} ${HOSTPROG}
1.33      lukem      80:        ${_MKCMD}\
1.1       wrstuden   81:        ${HOST_LINK.c} ${HOST_LDSTATIC} -o ${.TARGET} ${OBJS} ${LDADD}
                     82:
                     83: .endif # defined(OBJS) && !empty(OBJS)
                     84:
                     85: .if !defined(MAN)
                     86: MAN=   ${HOSTPROG}.1
                     87: .endif # !defined(MAN)
                     88: .endif # defined(HOSTPROG)
                     89:
1.5       mycroft    90: realall: ${HOSTPROG}
1.1       wrstuden   91:
                     92: cleanprog:
1.33      lukem      93:        ${_MKCMD}\
1.1       wrstuden   94:        rm -f a.out [Ee]rrs mklog core *.core \
                     95:            ${HOSTPROG} ${OBJS} ${LOBJS} ${CLEANFILES}
                     96:
                     97: beforedepend:
1.19      tv         98: CFLAGS:=       ${HOST_CFLAGS}
                     99: CPPFLAGS:=     ${HOST_CPPFLAGS}
1.1       wrstuden  100:
                    101: .if defined(SRCS)
                    102: afterdepend: .depend
1.27      msaitoh   103:        @(TMP=/tmp/_depend$$$$; trap 'rm -f $$TMP ; exit 1' 1 2 3 13 15; \
1.1       wrstuden  104:            sed -e 's/^\([^\.]*\).o[ ]*:/\1.lo \1.ln:/' \
                    105:              < .depend > $$TMP; \
                    106:            mv $$TMP .depend)
                    107: .endif
                    108:
                    109: lint: ${LOBJS}
                    110: .if defined(LOBJS) && !empty(LOBJS)
1.33      lukem     111:        ${_MKCMD}\
1.1       wrstuden  112:        ${LINT} ${LINTFLAGS} ${LDFLAGS:M-L*} ${LOBJS} ${LDADD}
                    113: .endif
                    114:
1.17      tv        115: ##### Pull in related .mk logic
1.1       wrstuden  116: .include <bsd.man.mk>
                    117: .include <bsd.nls.mk>
                    118: .include <bsd.files.mk>
                    119: .include <bsd.inc.mk>
                    120: .include <bsd.links.mk>
                    121: .include <bsd.dep.mk>
                    122:
1.17      tv        123: ${TARGETS}:    # ensure existence

CVSweb <webmaster@jp.NetBSD.org>