[BACK]Return to Makefile CVS log [TXT][DIR] Up to [local] / src

Annotation of src/Makefile, Revision 1.107

1.107   ! mickey      1: #      $OpenBSD: Makefile,v 1.106 2004/10/21 20:47:29 grange Exp $
1.1       deraadt     2:
1.16      deraadt     3: #
                      4: # For more information on building in tricky environments, please see
                      5: # the list of possible environment variables described in
                      6: # /usr/share/mk/bsd.README.
1.85      todd        7: #
1.16      deraadt     8: # Building recommendations:
1.85      todd        9: #
1.16      deraadt    10: # 1) If at all possible, put this source tree in /usr/src.  If /usr/src
                     11: # must be a symbolic link, setenv BSDSRCDIR to point to the real location.
                     12: #
                     13: # 2) It is also recommended that you compile with objects outside the
                     14: # source tree. To do this, ensure /usr/obj exists or points to some
                     15: # area of disk of sufficient size.  Then do "cd /usr/src; make obj".
                     16: # This will make a symbolic link called "obj" in each directory, as
                     17: # well as populate the /usr/obj properly with directories for the
                     18: # objects.
                     19: #
1.41      art        20: # 3) It is strongly recommended that you build and install a new kernel
                     21: # before rebuilding your system. Some of the new programs may use new
                     22: # functionality or depend on API changes that your old kernel doesn't have.
                     23: #
                     24: # 4) If you are reasonably sure that things will compile OK, use the
1.16      deraadt    25: # "make build" target supplied here. Good luck.
1.38      mickey     26: #
1.41      art        27: # 5) If you want to setup a cross-build environment, there is a "cross-tools"
1.85      todd       28: # target available which upon completion of "make TARGET=<target> cross-tools"
1.38      mickey     29: # (where <target> is one of the names in the /sys/arch directory) will produce
                     30: # a set of compilation tools along with the includes in the /usr/cross/<target>
1.87      wcobb      31: # directory. The "cross-distrib" target will build cross-tools as well as
                     32: # binaries for a given <target>.
1.38      mickey     33: #
1.16      deraadt    34:
1.6       mickey     35: .include <bsd.own.mk>  # for NOMAN, if it's there.
1.1       deraadt    36:
                     37: SUBDIR+= lib include bin libexec sbin usr.bin usr.sbin share games
                     38: SUBDIR+= gnu
                     39:
1.5       tholo      40: SUBDIR+= sys lkm
1.1       deraadt    41:
1.68      hin        42: .if (${KERBEROS5:L} == "yes")
                     43: SUBDIR+= kerberosV
                     44: .endif
                     45:
1.21      deraadt    46: .if   make(clean) || make(cleandir) || make(obj)
1.82      art        47: SUBDIR+= distrib regress
1.4       tholo      48: .endif
1.2       tholo      49:
1.1       deraadt    50: .if exists(regress)
                     51: regression-tests:
                     52:        @echo Running regression tests...
1.83      art        53:        @cd ${.CURDIR}/regress && ${MAKE} depend && exec ${MAKE} regress
1.1       deraadt    54: .endif
1.10      deraadt    55:
                     56: includes:
1.67      niklas     57:        cd ${.CURDIR}/include && ${MAKE} prereq && exec ${SUDO} ${MAKE} includes
1.1       deraadt    58:
1.7       deraadt    59: beforeinstall:
1.66      espie      60:        cd ${.CURDIR}/etc && exec ${MAKE} DESTDIR=${DESTDIR} distrib-dirs
                     61:        cd ${.CURDIR}/include && exec ${MAKE} includes
1.1       deraadt    62:
                     63: afterinstall:
                     64: .ifndef NOMAN
1.66      espie      65:        cd ${.CURDIR}/share/man && exec ${MAKE} makedb
1.1       deraadt    66: .endif
                     67:
                     68: build:
1.19      kstailey   69: .ifdef GLOBAL_AUTOCONF_CACHE
1.60      angelos    70:        cp /dev/null ${GLOBAL_AUTOCONF_CACHE}
1.18      kstailey   71: .endif
1.66      espie      72:        cd ${.CURDIR}/share/mk && exec ${SUDO} ${MAKE} install
                     73:        cd ${.CURDIR}/include && ${MAKE} prereq && exec ${SUDO} ${MAKE} includes
1.43      millert    74:        ${SUDO} ${MAKE} cleandir
1.66      espie      75:        cd ${.CURDIR}/lib && ${MAKE} depend && ${MAKE} && \
                     76:            NOMAN=1 exec ${SUDO} ${MAKE} install
                     77:        cd ${.CURDIR}/gnu/lib && ${MAKE} depend && ${MAKE} && \
                     78:            NOMAN=1 exec ${SUDO} ${MAKE} install
                     79:        ${MAKE} depend && ${MAKE} && exec ${SUDO} ${MAKE} install
1.15      niklas     80:
                     81: .if !defined(TARGET)
1.87      wcobb      82: cross-tools cross-distrib:
1.15      niklas     83:        echo "TARGET must be set"; exit 1
                     84: .else
1.87      wcobb      85: cross-tools:   cross-includes cross-binutils cross-gcc cross-lib
                     86: cross-distrib: cross-tools cross-bin cross-etc-root-var
                     87:
                     88: CROSSCPPFLAGS?=        -nostdinc -I${CROSSDIR}/usr/include
                     89: CROSSLDFLAGS?= -nostdlib -L${CROSSDIR}/usr/lib -static
                     90: CROSSCFLAGS?=  ${CROSSCPPFLAGS}
                     91: CROSSCXXFLAGS?=        ${CROSSCPPFLAGS}
                     92: LDSTATIC?=     -static
1.15      niklas     93:
                     94: CROSSDIR=      ${DESTDIR}/usr/cross/${TARGET}
1.32      niklas     95: CROSSENV=      AR=${CROSSDIR}/usr/bin/ar AS=${CROSSDIR}/usr/bin/as \
                     96:                CC=${CROSSDIR}/usr/bin/cc CPP=${CROSSDIR}/usr/bin/cpp \
1.78      fgsch      97:                CXX=${CROSSDIR}/usr/bin/c++ \
1.32      niklas     98:                LD=${CROSSDIR}/usr/bin/ld NM=${CROSSDIR}/usr/bin/nm \
1.78      fgsch      99:                LORDER=/usr/bin/lorder RANLIB=${CROSSDIR}/usr/bin/ranlib \
1.32      niklas    100:                SIZE=${CROSSDIR}/usr/bin/size STRIP=${CROSSDIR}/usr/bin/strip \
1.89      mickey    101:                HOSTCC=\"${CC}\" HOSTCXX=\"${CXX}\" NOMAN= DESTDIR=${CROSSDIR} \
                    102:                HOSTCFLAGS=\"${CFLAGS}\" HOSTCXXFLAGS=\"${CXXFLAGS}\" \
                    103:                HOSTLDFLAGS=\"${LDFLAGS} \" \
                    104:                CFLAGS=\"${CROSSCFLAGS}\" CPPFLAGS=\"${CROSSCPPFLAGS}\" \
                    105:                CXXFLAGS=\"${CROSSCXXFLAGS}\" \
                    106:                LDFLAGS=\"${CROSSLDFLAGS}\"
1.63      niklas    107: CROSSPATH=     ${PATH}:${CROSSDIR}/usr/bin
1.87      wcobb     108: CROSSLANGS?=   c c++
1.15      niklas    109:
1.87      wcobb     110: CROSSDIRS=     ${CROSSDIR}/.dirs_done
                    111: CROSSOBJ=      ${CROSSDIR}/usr/obj/.obj_done
                    112: CROSSINCLUDES= ${CROSSDIR}/usr/include/.includes_done
                    113: CROSSBINUTILS= ${CROSSDIR}/usr/bin/.binutils_done
                    114: CROSSGCC=      ${CROSSDIR}/usr/bin/.gcc_done
                    115: NO_CROSS=      isakmpd tn3270 less sudo openssl libkeynote libssl \
                    116:                photurisd keynote sectok ssh
                    117:
                    118: cross-dirs:    ${CROSSDIRS}
                    119: cross-obj:     ${CROSSOBJ}
                    120: cross-includes:        ${CROSSINCLUDES}
                    121: cross-binutils:        ${CROSSBINUTILS}
                    122: cross-gcc:     ${CROSSGCC}
                    123:
                    124: cross-env:     .PHONY
                    125:        @echo ${CROSSENV} MACHINE=${TARGET} \
                    126:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`
1.75      art       127:
1.87      wcobb     128: ${CROSSDIRS}:
1.69      brad      129:        @-mkdir -p ${CROSSDIR}
1.79      art       130:        @case ${TARGET} in \
1.107   ! mickey    131:                alpha|amd64|hppa|hppa64|i386|m68k|m88k|powerpc|sparc|sparc64|vax) \
1.79      art       132:                        echo ${TARGET} ;;\
1.99      brad      133:                amiga|hp300|mac68k|mvme68k) \
1.79      art       134:                        echo m68k ;;\
1.102     miod      135:                luna88k|mvme88k) \
1.79      art       136:                        echo m88k ;;\
1.103     drahn     137:                macppc|mvmeppc) \
1.79      art       138:                        echo powerpc ;;\
1.87      wcobb     139:                sgi) \
1.104     pefo      140:                        echo mips64 ;;\
1.79      art       141:                *) \
                    142:                        (echo Unknown arch ${TARGET} >&2) ; exit 1;; \
                    143:        esac > ${CROSSDIR}/TARGET_ARCH
                    144:        @echo TARGET_ARCH is `cat ${CROSSDIR}/TARGET_ARCH`
                    145:        @eval `grep '^osr=' sys/conf/newvers.sh`; \
1.15      niklas    146:           sed "s/\$$/-unknown-openbsd$$osr/" ${CROSSDIR}/TARGET_ARCH > \
                    147:           ${CROSSDIR}/TARGET_CANON
1.48      imp       148:        @-mkdir -p ${CROSSDIR}
                    149:        @-mkdir -p ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`
                    150:        @ln -sf ${CROSSDIR}/usr/include \
1.78      fgsch     151:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/include
1.48      imp       152:        @ln -sf ${CROSSDIR}/usr/lib \
                    153:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/lib
                    154:        @-mkdir -p ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin
1.87      wcobb     155:        @(cd ${.CURDIR}/etc && DESTDIR=${CROSSDIR} ${MAKE} distrib-dirs)
                    156:        @touch ${CROSSDIRS}
1.48      imp       157:
1.87      wcobb     158: ${CROSSOBJ}:   ${CROSSDIRS}
                    159:        @-mkdir -p ${CROSSDIR}/usr/obj
                    160:        @(cd ${.CURDIR} && \
                    161:            BSDOBJDIR=${CROSSDIR}/usr/obj \
                    162:            MACHINE=${TARGET} \
                    163:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
                    164:            BSDSRCDIR=${.CURDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    165:            ${MAKE} obj)
                    166:        @touch ${CROSSOBJ}
1.48      imp       167:
1.87      wcobb     168: ${CROSSINCLUDES}:      ${CROSSOBJ}
                    169:        @-mkdir -p ${CROSSDIR}/usr/include
                    170:        @(cd ${.CURDIR}/include && \
1.63      niklas    171:            MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
                    172:            ${MAKE} prereq && \
                    173:            MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.87      wcobb     174:            ${MAKE} DESTDIR=${CROSSDIR} includes)
                    175:        @touch ${CROSSINCLUDES}
1.15      niklas    176:
1.107   ! mickey    177: .if ${MACHINE_ARCH} == "m68k" || ${MACHINE_ARCH} == "m88k" || \
        !           178:     ${MACHINE_ARCH} == "vax"
        !           179: BINUTILS=      ar as ld nm ranlib objcopy objdump strings strip
        !           180: NEW_BINUTILS?= No
        !           181: .else
1.87      wcobb     182: BINUTILS=      ar as gasp ld nm objcopy objdump ranlib readelf size \
                    183:                strings strip
                    184: NEW_BINUTILS?= Yes
1.27      niklas    185: .endif
                    186:
1.87      wcobb     187: ${CROSSBINUTILS}:      ${CROSSINCLUDES}
                    188: .if ${NEW_BINUTILS:L} == "yes"
1.106     grange    189:        (cd ${.CURDIR}/gnu/usr.bin/binutils; \
                    190:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    191:            TARGET_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
                    192:            ${MAKE} -f Makefile.bsd-wrapper depend && \
                    193:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    194:            TARGET_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
                    195:            ${MAKE} -f Makefile.bsd-wrapper all && \
                    196:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    197:            ${MAKE} -f Makefile.bsd-wrapper install)
1.87      wcobb     198: .else
1.36      mickey    199:        (cd ${.CURDIR}/gnu/usr.bin/gas; \
1.79      art       200:            TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
                    201:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} depend all; \
                    202:            TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.27      niklas    203:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    204:            ${MAKE} NOMAN= install)
                    205:        ln -sf ${CROSSDIR}/usr/bin/as \
                    206:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/as
1.36      mickey    207:        (cd ${.CURDIR}/gnu/usr.bin/ld; \
1.79      art       208:            TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.88      miod      209:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    210:            ${MAKE} NOPIC= NOMAN= depend all; \
1.79      art       211:            TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.27      niklas    212:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.88      miod      213:            ${MAKE} NOPIC= NOMAN= install)
1.27      niklas    214:        ln -sf ${CROSSDIR}/usr/bin/ld \
                    215:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/ld
1.36      mickey    216:        (cd ${.CURDIR}/usr.bin/ar; \
1.76      mickey    217:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} NOMAN= depend all; \
1.24      niklas    218:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    219:            ${MAKE} NOMAN= install)
1.27      niklas    220:        ln -sf ${CROSSDIR}/usr/bin/ar \
                    221:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/ar
1.36      mickey    222:        (cd ${.CURDIR}/usr.bin/ranlib; \
1.76      mickey    223:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} NOMAN= depend all; \
1.29      niklas    224:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    225:            ${MAKE} NOMAN= install)
                    226:        ln -sf ${CROSSDIR}/usr/bin/ranlib \
                    227:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/ranlib
1.36      mickey    228:        (cd ${.CURDIR}/usr.bin/strip; \
1.29      niklas    229:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.79      art       230:            ${MAKE} TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
                    231:            NOMAN= depend all; \
1.29      niklas    232:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.79      art       233:            ${MAKE} TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
                    234:            NOMAN= install)
1.29      niklas    235:        ln -sf ${CROSSDIR}/usr/bin/strip \
                    236:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/strip
1.101     mickey    237: .endif
1.36      mickey    238:        (cd ${.CURDIR}/usr.bin/nm; \
1.32      niklas    239:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.105     grange    240:            ${MAKE} NOMAN= depend all; \
1.29      niklas    241:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    242:            ${MAKE} NOMAN= install)
                    243:        ln -sf ${CROSSDIR}/usr/bin/nm \
1.96      mickey    244:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/nm
                    245:        ln -sf ${CROSSDIR}/usr/bin/size \
1.101     mickey    246:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/size
1.87      wcobb     247:        @for cmd in ${BINUTILS}; do \
                    248:         if [ ! -e ${CROSSDIR}/usr/bin/$$cmd -a \
                    249:         -e ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-$$cmd ]; then \
                    250:            ln -sf ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-$$cmd \
                    251:                ${CROSSDIR}/usr/bin/$$cmd ;\
                    252:         elif [ -e ${CROSSDIR}/usr/bin/$$cmd -a \
                    253:         ! -e ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-$$cmd ]; then \
                    254:            ln -sf ${CROSSDIR}/usr/bin/$$cmd \
                    255:                ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-$$cmd; \
                    256:         fi ;\
1.106     grange    257:         if [ -e ${CROSSDIR}/usr/bin/$$cmd -a \
                    258:         ! -e ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/$$cmd ]; then \
                    259:            ln -sf ${CROSSDIR}/usr/bin/$$cmd \
                    260:                ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/$$cmd; \
                    261:         fi ;\
1.87      wcobb     262:        done
                    263:        @touch ${CROSSBINUTILS}
1.15      niklas    264:
1.106     grange    265: # bsd.own.mk can't do it for us
                    266: .if ${TARGET} == "amd64" || ${TARGET} == "cats" || \
                    267:     ${TARGET} == "hppa" || ${TARGET} == "hppa64" || \
                    268:     ${TARGET} == "sparc64" || ${TARGET} == "sgi"
                    269: USE_GCC3=yes
                    270: .endif
                    271:
1.87      wcobb     272: ${CROSSGCC}:           ${CROSSBINUTILS}
1.106     grange    273: .if ${USE_GCC3:L} == "yes"
                    274:        (cd ${.CURDIR}/gnu/usr.bin/gcc; \
                    275:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    276:            TARGET_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` CROSSDIR=${CROSSDIR} \
                    277:            ${MAKE} -f Makefile.bsd-wrapper depend && \
                    278:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    279:            TARGET_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` CROSSDIR=${CROSSDIR} \
                    280:            ${MAKE} -f Makefile.bsd-wrapper all && \
                    281:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    282:            ${MAKE} -f Makefile.bsd-wrapper install)
                    283:        ln -sf ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-g++ \
                    284:            ${CROSSDIR}/usr/bin/c++
                    285:        ln -sf ${CROSSDIR}/usr/libexec/cpp \
                    286:            ${CROSSDIR}/usr/bin/cpp
                    287: .else
1.52      mickey    288:        (cd ${CROSSDIR}/usr/obj/gnu/egcs/gcc; \
                    289:            /bin/sh ${.CURDIR}/gnu/egcs/gcc/configure \
1.101     mickey    290:            --with-gnu-as --with-gnu-ld --prefix ${CROSSDIR}/usr \
1.78      fgsch     291:            --target `cat ${CROSSDIR}/TARGET_CANON` \
1.101     mickey    292:            --enable-languages="c,c++" --enable-cpp --disable-nls \
1.78      fgsch     293:            --with-gxx-include-dir=${CROSSDIR}/usr/include/g++ && \
1.87      wcobb     294:            PATH=${CROSSPATH} ${MAKE} BISON=yacc LANGUAGES="${CROSSLANGS}" \
1.101     mickey    295:            CFLAGS="${CFLAGS} -I${.CURDIR}/gnu/lib/libiberty/include" \
                    296:            LIBIBERTY_INCLUDES=${.CURDIR}/gnu/lib/libiberty/include \
                    297:            DEMANGLER_PROG= DEMANGLE_H= LDFLAGS="${LDSTATIC}" build_infodir=. \
1.62      mickey    298:            GCC_FOR_TARGET="./xgcc -B./ -I${CROSSDIR}/usr/include" && \
1.87      wcobb     299:            ${MAKE} BISON=yacc LANGUAGES="${CROSSLANGS}" LDFLAGS="${LDSTATIC}" \
1.62      mickey    300:            GCC_FOR_TARGET="./xgcc -B./ -I${CROSSDIR}/usr/include" \
1.101     mickey    301:            CFLAGS="${CFLAGS} -I${.CURDIR}/gnu/lib/libiberty/include" \
                    302:            LIBIBERTY_INCLUDES=${.CURDIR}/gnu/lib/libiberty/include \
1.32      niklas    303:            build_infodir=. INSTALL_MAN= INSTALL_HEADERS_DIR= install)
1.31      niklas    304:        ln -sf ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-gcc \
                    305:            ${CROSSDIR}/usr/bin/cc
1.78      fgsch     306:        ln -sf ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-g++ \
                    307:            ${CROSSDIR}/usr/bin/c++
1.63      niklas    308:        ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
1.75      art       309:            ${CROSSDIR}/usr/obj/gnu/egcs/gcc/cpp \
1.63      niklas    310:            ${CROSSDIR}/usr/libexec/cpp
                    311:        sed -e 's#/usr/libexec/cpp#${CROSSDIR}/usr/libexec/cpp#' \
1.36      mickey    312:            -e 's#/usr/include#${CROSSDIR}/usr/include#' \
                    313:            ${.CURDIR}/usr.bin/cpp/cpp.sh > ${CROSSDIR}/usr/bin/cpp
1.31      niklas    314:        chmod ${BINMODE} ${CROSSDIR}/usr/bin/cpp
1.63      niklas    315:        chown ${BINOWN}:${BINGRP} ${CROSSDIR}/usr/bin/cpp
1.106     grange    316: .endif
1.87      wcobb     317:        @touch ${CROSSGCC}
1.32      niklas    318:
1.46      niklas    319: # XXX MAKEOBJDIR maybe should be obj.${TARGET} here, revisit later
1.87      wcobb     320: cross-lib:     ${CROSSGCC}
1.32      niklas    321:        MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`; \
                    322:        export MACHINE MACHINE_ARCH; \
1.36      mickey    323:        (cd ${.CURDIR}/lib; \
1.32      niklas    324:            for lib in csu libc; do \
1.87      wcobb     325:            (cd $$lib; \
1.93      mickey    326:                eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.87      wcobb     327:                    ${MAKE} depend all install); \
1.32      niklas    328:            done; \
1.93      mickey    329:            eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.94      mickey    330:                SKIPDIR=\"${NO_CROSS} libocurses/PSD.doc\" \
1.87      wcobb     331:                ${MAKE} depend all install)
1.1       deraadt   332:
1.87      wcobb     333: cross-bin:     ${CROSSOBJ}
                    334:        MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`; \
                    335:        export MACHINE MACHINE_ARCH; \
                    336:        for i in libexec bin sbin usr.bin usr.sbin; do \
                    337:        (cd ${.CURDIR}/$$i; \
1.93      mickey    338:            eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.94      mickey    339:                SKIPDIR=\"${BINUTILS} ${NO_CROSS}\" \
1.87      wcobb     340:                ${MAKE} depend all install); \
                    341:        done
                    342:
                    343: cross-etc-root-var:    ${CROSSOBJ}
                    344:        (cd ${.CURDIR}/etc && \
                    345:            DESTDIR=${CROSSDIR} ${MAKE} distribution-etc-root-var)
                    346:
                    347: cross-depend:  .PHONY
                    348:        @(cd ${.CURDIR} && \
                    349:            BSDOBJDIR=${CROSSDIR}/usr/obj \
                    350:            BSDSRCDIR=${.CURDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    351:            SKIPDIR="${NO_CROSS}" \
                    352:            ${MAKE} depend)
                    353:
                    354: cross-clean:   .PHONY
                    355:        @(cd ${.CURDIR} && \
                    356:            BSDOBJDIR=${CROSSDIR}/usr/obj \
                    357:            BSDSRCDIR=${.CURDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    358:            SKIPDIR="${NO_CROSS}" \
                    359:            ${MAKE} clean)
                    360:
                    361: cross-cleandir:        .PHONY
                    362:        @(cd ${.CURDIR} && \
                    363:            BSDOBJDIR=${CROSSDIR}/usr/obj \
                    364:            BSDSRCDIR=${.CURDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    365:            SKIPDIR="${NO_CROSS}" \
                    366:            ${MAKE} cleandir)
                    367:
                    368: .endif # defined(TARGET)
                    369:
1.1       deraadt   370: .include <bsd.subdir.mk>