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

Annotation of src/Makefile, Revision 1.87

1.87    ! wcobb       1: #      $OpenBSD: Makefile,v 1.86 2002/08/11 22:48:05 art 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.58      espie      42: .if (${KERBEROS:L} == "yes")
1.2       tholo      43: SUBDIR+= kerberosIV
1.21      deraadt    44: .endif
                     45:
1.68      hin        46: .if (${KERBEROS5:L} == "yes")
                     47: SUBDIR+= kerberosV
                     48: .endif
                     49:
1.21      deraadt    50: .if   make(clean) || make(cleandir) || make(obj)
1.82      art        51: SUBDIR+= distrib regress
1.4       tholo      52: .endif
1.2       tholo      53:
1.1       deraadt    54: .if exists(regress)
                     55: regression-tests:
                     56:        @echo Running regression tests...
1.83      art        57:        @cd ${.CURDIR}/regress && ${MAKE} depend && exec ${MAKE} regress
1.1       deraadt    58: .endif
1.10      deraadt    59:
                     60: includes:
1.67      niklas     61:        cd ${.CURDIR}/include && ${MAKE} prereq && exec ${SUDO} ${MAKE} includes
1.1       deraadt    62:
1.7       deraadt    63: beforeinstall:
1.66      espie      64:        cd ${.CURDIR}/etc && exec ${MAKE} DESTDIR=${DESTDIR} distrib-dirs
                     65:        cd ${.CURDIR}/include && exec ${MAKE} includes
1.1       deraadt    66:
                     67: afterinstall:
                     68: .ifndef NOMAN
1.66      espie      69:        cd ${.CURDIR}/share/man && exec ${MAKE} makedb
1.1       deraadt    70: .endif
                     71:
                     72: build:
1.19      kstailey   73: .ifdef GLOBAL_AUTOCONF_CACHE
1.60      angelos    74:        cp /dev/null ${GLOBAL_AUTOCONF_CACHE}
1.18      kstailey   75: .endif
1.66      espie      76:        cd ${.CURDIR}/share/mk && exec ${SUDO} ${MAKE} install
                     77:        cd ${.CURDIR}/include && ${MAKE} prereq && exec ${SUDO} ${MAKE} includes
1.43      millert    78:        ${SUDO} ${MAKE} cleandir
1.66      espie      79:        cd ${.CURDIR}/lib && ${MAKE} depend && ${MAKE} && \
                     80:            NOMAN=1 exec ${SUDO} ${MAKE} install
                     81:        cd ${.CURDIR}/gnu/lib && ${MAKE} depend && ${MAKE} && \
                     82:            NOMAN=1 exec ${SUDO} ${MAKE} install
1.58      espie      83: .if (${KERBEROS:L} == "yes")
1.66      espie      84:        cd ${.CURDIR}/kerberosIV/lib && ${MAKE} depend && ${MAKE} && \
                     85:            NOMAN=1 exec ${SUDO} ${MAKE} install
1.54      niklas     86: .endif
1.68      hin        87: .if (${KERBEROS5:L} == "yes")
                     88:        cd ${.CURDIR}/kerberosV/lib && ${MAKE} depend && ${MAKE} && \
                     89:            NOMAN=1 exec ${SUDO} ${MAKE} install
                     90: .endif
1.66      espie      91:        cd ${.CURDIR}/gnu/usr.bin/perl && \
1.51      millert    92:            ${MAKE} -f Makefile.bsd-wrapper depend && \
                     93:            ${MAKE} -f Makefile.bsd-wrapper perl.lib && \
1.66      espie      94:            exec ${SUDO} ${MAKE} -f Makefile.bsd-wrapper install.lib
                     95:        ${MAKE} depend && ${MAKE} && exec ${SUDO} ${MAKE} install
1.15      niklas     96:
                     97: .if !defined(TARGET)
1.87    ! wcobb      98: cross-tools cross-distrib:
1.15      niklas     99:        echo "TARGET must be set"; exit 1
                    100: .else
1.87    ! wcobb     101: cross-tools:   cross-includes cross-binutils cross-gcc cross-lib
        !           102: cross-distrib: cross-tools cross-bin cross-etc-root-var
        !           103:
        !           104: CROSSCPPFLAGS?=        -nostdinc -I${CROSSDIR}/usr/include
        !           105: CROSSLDFLAGS?= -nostdlib -L${CROSSDIR}/usr/lib -static
        !           106: CROSSCFLAGS?=  ${CROSSCPPFLAGS}
        !           107: CROSSCXXFLAGS?=        ${CROSSCPPFLAGS}
        !           108: LDSTATIC?=     -static
1.15      niklas    109:
                    110: CROSSDIR=      ${DESTDIR}/usr/cross/${TARGET}
1.32      niklas    111: CROSSENV=      AR=${CROSSDIR}/usr/bin/ar AS=${CROSSDIR}/usr/bin/as \
                    112:                CC=${CROSSDIR}/usr/bin/cc CPP=${CROSSDIR}/usr/bin/cpp \
1.78      fgsch     113:                CXX=${CROSSDIR}/usr/bin/c++ \
1.32      niklas    114:                LD=${CROSSDIR}/usr/bin/ld NM=${CROSSDIR}/usr/bin/nm \
1.78      fgsch     115:                LORDER=/usr/bin/lorder RANLIB=${CROSSDIR}/usr/bin/ranlib \
1.32      niklas    116:                SIZE=${CROSSDIR}/usr/bin/size STRIP=${CROSSDIR}/usr/bin/strip \
1.87    ! wcobb     117:                HOSTCC="${CC}" HOSTCXX="${CXX}" NOMAN= DESTDIR=${CROSSDIR} \
        !           118:                HOSTCFLAGS="${CFLAGS}" HOSTCXXFLAGS="${CXXFLAGS}" \
        !           119:                HOSTLDFLAGS="${LDFLAGS}" \
        !           120:                CFLAGS="${CROSSCFLAGS}" CPPFLAGS="${CROSSCPPFLAGS}" \
        !           121:                CXXFLAGS="${CROSSCXXFLAGS}" \
        !           122:                LDFLAGS="${CROSSLDFLAGS}"
1.63      niklas    123: CROSSPATH=     ${PATH}:${CROSSDIR}/usr/bin
1.87    ! wcobb     124: CROSSLANGS?=   c c++
1.15      niklas    125:
1.87    ! wcobb     126: CROSSDIRS=     ${CROSSDIR}/.dirs_done
        !           127: CROSSOBJ=      ${CROSSDIR}/usr/obj/.obj_done
        !           128: CROSSINCLUDES= ${CROSSDIR}/usr/include/.includes_done
        !           129: CROSSBINUTILS= ${CROSSDIR}/usr/bin/.binutils_done
        !           130: CROSSGCC=      ${CROSSDIR}/usr/bin/.gcc_done
        !           131: NO_CROSS=      isakmpd tn3270 less sudo openssl libkeynote libssl \
        !           132:                photurisd keynote sectok ssh
        !           133:
        !           134: cross-dirs:    ${CROSSDIRS}
        !           135: cross-obj:     ${CROSSOBJ}
        !           136: cross-includes:        ${CROSSINCLUDES}
        !           137: cross-binutils:        ${CROSSBINUTILS}
        !           138: cross-gcc:     ${CROSSGCC}
        !           139:
        !           140: cross-env:     .PHONY
        !           141:        @echo ${CROSSENV} MACHINE=${TARGET} \
        !           142:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`
1.75      art       143:
1.87    ! wcobb     144: ${CROSSDIRS}:
1.69      brad      145:        @-mkdir -p ${CROSSDIR}
1.79      art       146:        @case ${TARGET} in \
                    147:                sparc|i386|m68k|alpha|hppa|powerpc|sparc64|m88k|vax) \
                    148:                        echo ${TARGET} ;;\
                    149:                amiga|sun3|mac68k|hp300|mvme68k) \
                    150:                        echo m68k ;;\
                    151:                mvme88k) \
                    152:                        echo m88k ;;\
                    153:                mvmeppc|macppc) \
                    154:                        echo powerpc ;;\
1.87    ! wcobb     155:                sgi) \
        !           156:                        echo mips ;;\
1.79      art       157:                *) \
                    158:                        (echo Unknown arch ${TARGET} >&2) ; exit 1;; \
                    159:        esac > ${CROSSDIR}/TARGET_ARCH
                    160:        @echo TARGET_ARCH is `cat ${CROSSDIR}/TARGET_ARCH`
                    161:        @eval `grep '^osr=' sys/conf/newvers.sh`; \
1.15      niklas    162:           sed "s/\$$/-unknown-openbsd$$osr/" ${CROSSDIR}/TARGET_ARCH > \
                    163:           ${CROSSDIR}/TARGET_CANON
1.48      imp       164:        @-mkdir -p ${CROSSDIR}
                    165:        @-mkdir -p ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`
                    166:        @ln -sf ${CROSSDIR}/usr/include \
1.78      fgsch     167:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/include
1.48      imp       168:        @ln -sf ${CROSSDIR}/usr/lib \
                    169:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/lib
                    170:        @-mkdir -p ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin
1.87    ! wcobb     171:        @(cd ${.CURDIR}/etc && DESTDIR=${CROSSDIR} ${MAKE} distrib-dirs)
        !           172:        @touch ${CROSSDIRS}
1.48      imp       173:
1.87    ! wcobb     174: ${CROSSOBJ}:   ${CROSSDIRS}
        !           175:        @-mkdir -p ${CROSSDIR}/usr/obj
        !           176:        @(cd ${.CURDIR} && \
        !           177:            BSDOBJDIR=${CROSSDIR}/usr/obj \
        !           178:            MACHINE=${TARGET} \
        !           179:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
        !           180:            BSDSRCDIR=${.CURDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
        !           181:            ${MAKE} obj)
        !           182:        @touch ${CROSSOBJ}
1.48      imp       183:
1.87    ! wcobb     184: ${CROSSINCLUDES}:      ${CROSSOBJ}
        !           185:        @-mkdir -p ${CROSSDIR}/usr/include
        !           186:        @(cd ${.CURDIR}/include && \
1.63      niklas    187:            MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
                    188:            ${MAKE} prereq && \
                    189:            MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.87    ! wcobb     190:            ${MAKE} DESTDIR=${CROSSDIR} includes)
        !           191:        @touch ${CROSSINCLUDES}
1.15      niklas    192:
1.87    ! wcobb     193: .if ${TARGET} == "alpha" || ${TARGET} == "hppa" || ${TARGET} == "macppc" || \
        !           194:     ${TARGET} == "mvmeppc" || ${TARGET} == "sgi" || ${TARGET} == "sparc" || \
        !           195:     ${TARGET} == "sparc64"
        !           196: BINUTILS=      ar as gasp ld nm objcopy objdump ranlib readelf size \
        !           197:                strings strip
        !           198: NEW_BINUTILS?= Yes
1.27      niklas    199: .else
1.87    ! wcobb     200: BINUTILS=      ar as ld nm ranlib objcopy objdump size strings strip
        !           201: NEW_BINUTILS?= No
1.27      niklas    202: .endif
                    203:
1.87    ! wcobb     204: ${CROSSBINUTILS}:      ${CROSSINCLUDES}
        !           205: .if ${NEW_BINUTILS:L} == "yes"
        !           206:        export BSDSRCDIR=${.CURDIR}; \
1.15      niklas    207:            (cd ${CROSSDIR}/usr/obj/gnu/usr.bin/binutils; \
1.25      mickey    208:            /bin/sh ${BSDSRCDIR}/gnu/usr.bin/binutils/configure \
1.15      niklas    209:            --prefix ${CROSSDIR}/usr \
1.59      art       210:            --disable-nls --disable-gdbtk --disable-commonbfdlib \
1.15      niklas    211:            --target `cat ${CROSSDIR}/TARGET_CANON` && \
1.78      fgsch     212:            ${MAKE} CFLAGS="${CFLAGS}" && ${MAKE} install )
1.87    ! wcobb     213: .else
1.36      mickey    214:        (cd ${.CURDIR}/gnu/usr.bin/gas; \
1.79      art       215:            TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.87    ! wcobb     216:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.79      art       217:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} depend all; \
                    218:            TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.87    ! wcobb     219:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.27      niklas    220:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    221:            ${MAKE} NOMAN= install)
                    222:        ln -sf ${CROSSDIR}/usr/bin/as \
                    223:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/as
1.36      mickey    224:        (cd ${.CURDIR}/gnu/usr.bin/ld; \
1.79      art       225:            TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.87    ! wcobb     226:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.79      art       227:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} NOMAN= depend all; \
                    228:            TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.87    ! wcobb     229:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.27      niklas    230:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    231:            ${MAKE} NOMAN= install)
                    232:        ln -sf ${CROSSDIR}/usr/bin/ld \
                    233:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/ld
1.36      mickey    234:        (cd ${.CURDIR}/usr.bin/ar; \
1.76      mickey    235:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} NOMAN= depend all; \
1.24      niklas    236:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    237:            ${MAKE} NOMAN= install)
1.27      niklas    238:        ln -sf ${CROSSDIR}/usr/bin/ar \
                    239:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/ar
1.36      mickey    240:        (cd ${.CURDIR}/usr.bin/ranlib; \
1.76      mickey    241:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} NOMAN= depend all; \
1.29      niklas    242:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    243:            ${MAKE} NOMAN= install)
                    244:        ln -sf ${CROSSDIR}/usr/bin/ranlib \
                    245:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/ranlib
1.36      mickey    246:        (cd ${.CURDIR}/usr.bin/strip; \
1.29      niklas    247:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.79      art       248:            ${MAKE} TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.87    ! wcobb     249:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.79      art       250:            NOMAN= depend all; \
1.29      niklas    251:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.79      art       252:            ${MAKE} TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.87    ! wcobb     253:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.79      art       254:            NOMAN= install)
1.29      niklas    255:        ln -sf ${CROSSDIR}/usr/bin/strip \
                    256:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/strip
1.36      mickey    257:        (cd ${.CURDIR}/usr.bin/size; \
1.32      niklas    258:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.79      art       259:            ${MAKE} TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.87    ! wcobb     260:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.79      art       261:            NOMAN= depend all; \
1.29      niklas    262:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    263:            ${MAKE} NOMAN= install)
                    264:        ln -sf ${CROSSDIR}/usr/bin/size \
                    265:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/size
1.36      mickey    266:        (cd ${.CURDIR}/usr.bin/nm; \
1.32      niklas    267:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.79      art       268:            ${MAKE} TARGET_MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.87    ! wcobb     269:            MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
1.79      art       270:            NOMAN= depend all; \
1.29      niklas    271:            DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    272:            ${MAKE} NOMAN= install)
                    273:        ln -sf ${CROSSDIR}/usr/bin/nm \
                    274:            ${CROSSDIR}/usr/`cat ${CROSSDIR}/TARGET_CANON`/bin/nm
1.87    ! wcobb     275: .endif
        !           276:        @for cmd in ${BINUTILS}; do \
        !           277:         if [ ! -e ${CROSSDIR}/usr/bin/$$cmd -a \
        !           278:         -e ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-$$cmd ]; then \
        !           279:            ln -sf ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-$$cmd \
        !           280:                ${CROSSDIR}/usr/bin/$$cmd ;\
        !           281:         elif [ -e ${CROSSDIR}/usr/bin/$$cmd -a \
        !           282:         ! -e ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-$$cmd ]; then \
        !           283:            ln -sf ${CROSSDIR}/usr/bin/$$cmd \
        !           284:                ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-$$cmd; \
        !           285:         fi ;\
        !           286:        done
        !           287:        @touch ${CROSSBINUTILS}
1.15      niklas    288:
1.87    ! wcobb     289: ${CROSSGCC}:           ${CROSSBINUTILS}
1.52      mickey    290:        (cd ${CROSSDIR}/usr/obj/gnu/egcs/gcc; \
                    291:            /bin/sh ${.CURDIR}/gnu/egcs/gcc/configure \
1.15      niklas    292:            --prefix ${CROSSDIR}/usr \
1.78      fgsch     293:            --target `cat ${CROSSDIR}/TARGET_CANON` \
                    294:            --with-gxx-include-dir=${CROSSDIR}/usr/include/g++ && \
1.87    ! wcobb     295:            PATH=${CROSSPATH} ${MAKE} BISON=yacc LANGUAGES="${CROSSLANGS}" \
        !           296:            LDFLAGS="${LDSTATIC}" build_infodir=. \
1.62      mickey    297:            GCC_FOR_TARGET="./xgcc -B./ -I${CROSSDIR}/usr/include" && \
1.87    ! wcobb     298:            ${MAKE} BISON=yacc LANGUAGES="${CROSSLANGS}" LDFLAGS="${LDSTATIC}" \
1.62      mickey    299:            GCC_FOR_TARGET="./xgcc -B./ -I${CROSSDIR}/usr/include" \
1.32      niklas    300:            build_infodir=. INSTALL_MAN= INSTALL_HEADERS_DIR= install)
1.31      niklas    301:        ln -sf ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-gcc \
                    302:            ${CROSSDIR}/usr/bin/cc
1.78      fgsch     303:        ln -sf ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-g++ \
                    304:            ${CROSSDIR}/usr/bin/c++
1.63      niklas    305:        ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
1.75      art       306:            ${CROSSDIR}/usr/obj/gnu/egcs/gcc/cpp \
1.63      niklas    307:            ${CROSSDIR}/usr/libexec/cpp
                    308:        sed -e 's#/usr/libexec/cpp#${CROSSDIR}/usr/libexec/cpp#' \
1.36      mickey    309:            -e 's#/usr/include#${CROSSDIR}/usr/include#' \
                    310:            ${.CURDIR}/usr.bin/cpp/cpp.sh > ${CROSSDIR}/usr/bin/cpp
1.31      niklas    311:        chmod ${BINMODE} ${CROSSDIR}/usr/bin/cpp
1.63      niklas    312:        chown ${BINOWN}:${BINGRP} ${CROSSDIR}/usr/bin/cpp
1.87    ! wcobb     313:        @touch ${CROSSGCC}
1.32      niklas    314:
1.46      niklas    315: # XXX MAKEOBJDIR maybe should be obj.${TARGET} here, revisit later
1.87    ! wcobb     316: cross-lib:     ${CROSSGCC}
1.32      niklas    317:        MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`; \
                    318:        export MACHINE MACHINE_ARCH; \
1.36      mickey    319:        (cd ${.CURDIR}/lib; \
1.32      niklas    320:            for lib in csu libc; do \
1.87    ! wcobb     321:            (cd $$lib; \
        !           322:                ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
        !           323:                    ${MAKE} depend all install); \
1.32      niklas    324:            done; \
1.46      niklas    325:            ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.87    ! wcobb     326:                SKIPDIR="${NO_CROSS} libocurses/PSD.doc" \
        !           327:                ${MAKE} depend all install)
1.58      espie     328: .if (${KERBEROS:L} == "yes")
1.63      niklas    329:        MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`; \
                    330:        export MACHINE MACHINE_ARCH; \
                    331:        cd kerberosIV/lib; \
1.68      hin       332:        ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.87    ! wcobb     333:            ${MAKE} depend all install
1.68      hin       334: .endif
                    335: .if (${KERBEROS5:L} == "yes")
                    336:        MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`; \
                    337:        export MACHINE MACHINE_ARCH; \
                    338:        cd kerberosV/lib; \
1.63      niklas    339:        ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
1.87    ! wcobb     340:            ${MAKE} depend all install
1.15      niklas    341: .endif
1.1       deraadt   342:
1.87    ! wcobb     343: cross-bin:     ${CROSSOBJ}
        !           344:        MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`; \
        !           345:        export MACHINE MACHINE_ARCH; \
        !           346:        for i in libexec bin sbin usr.bin usr.sbin; do \
        !           347:        (cd ${.CURDIR}/$$i; \
        !           348:            ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
        !           349:                SKIPDIR="${BINUTILS} ${NO_CROSS}" \
        !           350:                ${MAKE} depend all install); \
        !           351:        done
        !           352:
        !           353: cross-etc-root-var:    ${CROSSOBJ}
        !           354:        (cd ${.CURDIR}/etc && \
        !           355:            DESTDIR=${CROSSDIR} ${MAKE} distribution-etc-root-var)
        !           356:
        !           357: cross-depend:  .PHONY
        !           358:        @(cd ${.CURDIR} && \
        !           359:            BSDOBJDIR=${CROSSDIR}/usr/obj \
        !           360:            BSDSRCDIR=${.CURDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
        !           361:            SKIPDIR="${NO_CROSS}" \
        !           362:            ${MAKE} depend)
        !           363:
        !           364: cross-clean:   .PHONY
        !           365:        @(cd ${.CURDIR} && \
        !           366:            BSDOBJDIR=${CROSSDIR}/usr/obj \
        !           367:            BSDSRCDIR=${.CURDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
        !           368:            SKIPDIR="${NO_CROSS}" \
        !           369:            ${MAKE} clean)
        !           370:
        !           371: cross-cleandir:        .PHONY
        !           372:        @(cd ${.CURDIR} && \
        !           373:            BSDOBJDIR=${CROSSDIR}/usr/obj \
        !           374:            BSDSRCDIR=${.CURDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
        !           375:            SKIPDIR="${NO_CROSS}" \
        !           376:            ${MAKE} cleandir)
        !           377:
        !           378: .endif # defined(TARGET)
        !           379:
1.1       deraadt   380: .include <bsd.subdir.mk>