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

1.62    ! bouyer      1: #      $NetBSD: bsd.hostprog.mk,v 1.61 2011/02/20 20:16:01 jmmv 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.11      tv          8: clean:         cleanprog
1.1       wrstuden    9:
1.17      tv         10: ##### Default values
1.61      jmmv       11: LIBATF_C?=     /usr/lib/libatf-c.a
                     12: LIBATF_CXX?=   /usr/lib/libatf-c++.a
1.47      gdamore    13: LIBBLUETOOTH?= /usr/lib/libbluetooth.a
1.1       wrstuden   14: LIBBZ2?=       /usr/lib/libbz2.a
                     15: LIBC?=         /usr/lib/libc.a
                     16: LIBC_PIC?=     /usr/lib/libc_pic.a
1.51      christos   17: LIBC_SO?=      /usr/lib/libc.so
1.1       wrstuden   18: LIBCOMPAT?=    /usr/lib/libcompat.a
                     19: LIBCRYPT?=     /usr/lib/libcrypt.a
                     20: LIBCURSES?=    /usr/lib/libcurses.a
                     21: LIBDBM?=       /usr/lib/libdbm.a
                     22: LIBDES?=       /usr/lib/libdes.a
                     23: LIBEDIT?=      /usr/lib/libedit.a
1.28      provos     24: LIBEVENT?=     /usr/lib/libevent.a
1.53      joerg      25: LIBFETCH?=     /usr/lib/libfetch.a
1.9       garbled    26: LIBFORM?=      /usr/lib/libform.a
1.1       wrstuden   27: LIBGCC?=       /usr/lib/libgcc.a
                     28: LIBGNUMALLOC?= /usr/lib/libgnumalloc.a
1.8       itojun     29: LIBINTL?=      /usr/lib/libintl.a
1.1       wrstuden   30: LIBIPSEC?=     /usr/lib/libipsec.a
                     31: LIBKVM?=       /usr/lib/libkvm.a
                     32: LIBL?=         /usr/lib/libl.a
1.58      joerg      33: LIBLZMA?=      /usr/lib/liblzma.a
1.1       wrstuden   34: LIBM?=         /usr/lib/libm.a
1.42      ross       35: LIBMAGIC?=     /usr/lib/libmagic.a
1.4       blymn      36: LIBMENU?=      /usr/lib/libmenu.a
1.1       wrstuden   37: LIBMP?=                /usr/lib/libmp.a
                     38: LIBNTP?=       /usr/lib/libntp.a
                     39: LIBOBJC?=      /usr/lib/libobjc.a
1.52      pooka      40: LIBP2K?=       /usr/lib/libp2k.a
1.1       wrstuden   41: LIBPC?=                /usr/lib/libpc.a
                     42: LIBPCAP?=      /usr/lib/libpcap.a
1.12      thorpej    43: LIBPCI?=       /usr/lib/libpci.a
1.1       wrstuden   44: LIBPLOT?=      /usr/lib/libplot.a
                     45: LIBPOSIX?=     /usr/lib/libposix.a
1.49      pooka      46: LIBPUFFS?=     /usr/lib/libpuffs.a
1.62    ! bouyer     47: LIBQUOTA?=     /usr/lib/libquota.a
1.1       wrstuden   48: LIBRESOLV?=    /usr/lib/libresolv.a
                     49: LIBRPCSVC?=    /usr/lib/librpcsvc.a
1.52      pooka      50: LIBRUMP?=      /usr/lib/librump.a
1.59      pooka      51: LIBRUMPCLIENT?=        /usr/lib/librumpclient.a
1.54      pooka      52: LIBRUMPNET?=   /usr/lib/librumpnet.a
1.52      pooka      53: LIBRUMPUSER?=  /usr/lib/librumpuser.a
1.54      pooka      54: LIBRUMPVFS?=   /usr/lib/librumpvfs.a
1.1       wrstuden   55: LIBSKEY?=      /usr/lib/libskey.a
1.50      christos   56: LIBSSP?=       /usr/lib/libssp.a
1.48      mrg        57: LIBSTDCXX?=    /usr/lib/libstdc++.a
                     58: LIBSUPCXX?=    /usr/lib/libsupc++.a
1.57      roy        59: LIBTERMINFO?=  /usr/lib/libterminfo.a
1.1       wrstuden   60: LIBUTIL?=      /usr/lib/libutil.a
                     61: LIBWRAP?=      /usr/lib/libwrap.a
1.52      pooka      62: LIBUKFS?=      /usr/lib/libukfs.a
1.1       wrstuden   63: LIBY?=         /usr/lib/liby.a
                     64: LIBZ?=         /usr/lib/libz.a
                     65:
1.52      pooka      66: ##### rump file system modules
                     67: LIBRUMPFS_CD9660FS?=   /usr/lib/librumpfs_cd9660fs.a
                     68: LIBRUMPFS_EFS?=                /usr/lib/librumpfs_efs.a
                     69: LIBRUMPFS_EXT2FS?=     /usr/lib/librumpfs_ext2fs.a
                     70: LIBRUMPFS_FFS?=                /usr/lib/librumpfs_ffs.a
                     71: LIBRUMPFS_HFS?=                /usr/lib/librumpfs_hfs.a
                     72: LIBRUMPFS_LFS?=                /usr/lib/librumpfs_lfs.a
                     73: LIBRUMPFS_MSDOSFS?=    /usr/lib/librumpfs_msdosfs.a
                     74: LIBRUMPFS_NTFS?=       /usr/lib/librumpfs_ntfs.a
                     75: LIBRUMPFS_SYSPUFFS?=   /usr/lib/librumpfs_syspuffs.a
                     76: LIBRUMPFS_TMPFS?=      /usr/lib/librumpfs_tmpfs.a
                     77: LIBRUMPFS_UDF?=                /usr/lib/librumpfs_udf.a
                     78: LIBRUMPFS_UFS?=                /usr/lib/librumpfs_ufs.a
                     79:
1.23      tv         80: HOST_MKDEP?=   CC=${HOST_CC:Q} mkdep
1.36      dsl        81: MKDEP_SUFFIXES?=       .lo .ln
1.20      tv         82:
                     83: # Override these:
                     84: INSTALL:=      ${INSTALL:NSTRIP=*}
1.23      tv         85: MKDEP:=                ${HOST_MKDEP}
1.18      tv         86:
1.39      lukem      87: .if ${TOOLCHAIN_MISSING} == "no" || defined(EXTERNAL_TOOLCHAIN)
1.18      tv         88: OBJHOSTMACHINE=        # set
                     89: .endif
1.17      tv         90:
                     91: ##### Build rules
1.45      jwise      92: .if defined(HOSTPROG_CXX)
                     93: HOSTPROG=      ${HOSTPROG_CXX}
                     94: .endif
                     95:
1.1       wrstuden   96: .if defined(HOSTPROG)
                     97: SRCS?=         ${HOSTPROG}.c
                     98:
1.43      lukem      99: _YHPSRCS=      ${SRCS:M*.[ly]:C/\..$/.c/} ${YHEADER:D${SRCS:M*.y:.y=.h}}
                    100: DPSRCS+=       ${_YHPSRCS}
                    101: CLEANFILES+=   ${_YHPSRCS}
1.1       wrstuden  102:
                    103: .if !empty(SRCS:N*.h:N*.sh)
                    104: OBJS+=         ${SRCS:N*.h:N*.sh:R:S/$/.lo/g}
                    105: LOBJS+=                ${LSRCS:.c=.ln} ${SRCS:M*.c:.c=.ln}
                    106: .endif
                    107:
                    108: .if defined(OBJS) && !empty(OBJS)
1.43      lukem     109: .NOPATH: ${OBJS} ${HOSTPROG} ${_YHPSRCS}
1.1       wrstuden  110:
1.32      lukem     111: ${OBJS} ${LOBJS}: ${DPSRCS}
                    112: ${HOSTPROG}: ${OBJS} ${DPADD}
1.37      lukem     113:        ${_MKTARGET_LINK}
1.1       wrstuden  114:        ${HOST_LINK.c} ${HOST_LDSTATIC} -o ${.TARGET} ${OBJS} ${LDADD}
                    115:
                    116: .endif # defined(OBJS) && !empty(OBJS)
                    117:
                    118: .if !defined(MAN)
                    119: MAN=   ${HOSTPROG}.1
                    120: .endif # !defined(MAN)
                    121: .endif # defined(HOSTPROG)
                    122:
1.5       mycroft   123: realall: ${HOSTPROG}
1.1       wrstuden  124:
1.41      lukem     125: cleanprog: .PHONY
1.1       wrstuden  126:        rm -f a.out [Ee]rrs mklog core *.core \
                    127:            ${HOSTPROG} ${OBJS} ${LOBJS} ${CLEANFILES}
                    128:
                    129: beforedepend:
1.19      tv        130: CFLAGS:=       ${HOST_CFLAGS}
1.60      joerg     131: CPPFLAGS:=     ${HOST_CPPFLAGS:N-Wp,-iremap,*}
1.1       wrstuden  132:
                    133: lint: ${LOBJS}
                    134: .if defined(LOBJS) && !empty(LOBJS)
1.40      lukem     135:        ${LINT} ${LINTFLAGS} ${LDFLAGS:C/-L[  ]*/-L/Wg:M-L*} ${LOBJS} ${LDADD}
1.1       wrstuden  136: .endif
                    137:
1.17      tv        138: ##### Pull in related .mk logic
1.55      apb       139: LINKSMODE?= ${BINMODE}
1.1       wrstuden  140: .include <bsd.man.mk>
                    141: .include <bsd.nls.mk>
                    142: .include <bsd.files.mk>
                    143: .include <bsd.inc.mk>
                    144: .include <bsd.links.mk>
                    145: .include <bsd.dep.mk>
                    146:
1.17      tv        147: ${TARGETS}:    # ensure existence
1.44      jmc       148:
                    149: # Override YACC/LEX rules so nbtool_config.h can be forced as the 1st include
                    150: .l.c:
                    151:        ${_MKTARGET_LEX}
                    152:        ${LEX.l} -o${.TARGET} ${.IMPSRC}
                    153:        echo '#if HAVE_NBTOOL_CONFIG_H' > ${.TARGET}.1
                    154:        echo '#include "nbtool_config.h"' >> ${.TARGET}.1
                    155:        echo '#endif' >> ${.TARGET}.1
                    156:        cat ${.TARGET} >> ${.TARGET}.1
                    157:        mv ${.TARGET}.1 ${.TARGET}
                    158: .y.c:
                    159:        ${_MKTARGET_YACC}
                    160:        ${YACC.y} -o ${.TARGET} ${.IMPSRC}
                    161:        echo '#if HAVE_NBTOOL_CONFIG_H' > ${.TARGET}.1
                    162:        echo '#include "nbtool_config.h"' >> ${.TARGET}.1
                    163:        echo '#endif' >> ${.TARGET}.1
                    164:        cat ${.TARGET} >> ${.TARGET}.1
                    165:        mv ${.TARGET}.1 ${.TARGET}

CVSweb <webmaster@jp.NetBSD.org>