[BACK]Return to cross.sh CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / othersrc / crosscomp

Annotation of othersrc/crosscomp/cross.sh, Revision 1.3

1.1       garbled     1: #! /bin/sh
                      2: # $NetBSD$
                      3: # Copyright (c) 2000 The NetBSD Foundation, Inc.
                      4: # All rights reserved.
                      5: #
                      6: # This code is derived from software contributed to The NetBSD Foundation
                      7: # by Bill Sommerfeld and Tim Rightnour
                      8: #
                      9: # Redistribution and use in source and binary forms, with or without
                     10: # modification, are permitted provided that the following conditions
                     11: # are met:
                     12: # 1. Redistributions of source code must retain the above copyright
                     13: #    notice, this list of conditions and the following disclaimer.
                     14: # 2. Redistributions in binary form must reproduce the above copyright
                     15: #    notice, this list of conditions and the following disclaimer in the
                     16: #    documentation and/or other materials provided with the distribution.
                     17: # 3. All advertising materials mentioning features or use of this software
                     18: #    must display the following acknowledgement:
                     19: #        This product includes software developed by the NetBSD
                     20: #        Foundation, Inc. and its contributors.
                     21: # 4. Neither the name of The NetBSD Foundation nor the names of its
                     22: #    contributors may be used to endorse or promote products derived
                     23: #    from this software without specific prior written permission.
                     24: #
                     25: # THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
                     26: # ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
                     27: # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
                     28: # PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
                     29: # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
                     30: # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
                     31: # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
                     32: # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
                     33: # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
                     34: # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
                     35: # POSSIBILITY OF SUCH DAMAGE.
                     36: #
                     37:
                     38: # cross-compilation fun
                     39: DOUPDATE=no
                     40: vnconfig -u vnd0
                     41: PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/X11R6/bin:/usr/pkg/bin
                     42: export PATH
                     43:
                     44: # XXX You will need to edit the line below!
                     45: ROOT=/build
                     46: # XXX
                     47:
                     48: BSDSRCDIR=${ROOT}/src
                     49:
                     50: args=`getopt outgsd: $*`
                     51: if test $? != 0
                     52: then
                     53:     echo 'Usage: ...'
                     54:     exit 2
                     55: fi
                     56: set -- $args
                     57: for i
                     58: do
                     59:     case "$i"
                     60:     in
                     61:        -o)
                     62:            ONEBUILD=yes; shift
                     63:            ;;
                     64:         -t)
                     65:            SKIPTOOLS=yes; shift
                     66:            ;;
                     67:         -d)
                     68:            SUBDIR=$2; shift; shift
                     69:            ;;
                     70:        -u)
                     71:            DOUPDATE=yes; shift
                     72:            ;;
                     73:        -s)
                     74:            SKIPSUP=yes; shift
                     75:            ;;
                     76:        -g)
                     77:            DOGAMES=yes; shift
                     78:            ;;
                     79: #                           -o)
                     80: #                                   oarg=$2; shift; shift;;
                     81:             --)
                     82:                   shift; break;;
                     83:     esac
                     84: done
                     85:
                     86:
                     87:
                     88: # begin sup pull
                     89: if [ -z "$SKIPSUP" ]; then
                     90:        CVSROOT=:pserver:anoncvs@anoncvs.netbsd.org:/cvsroot
                     91:        export CVSROOT
                     92:        if [ ! -f ${BSDSRCDIR}/Makefile ]; then
                     93:                cvs checkout -P src-crypto-all
                     94:        else
1.3     ! garbled    95:                cvs update -dPA src | grep -v 'cvs server: Updating'
1.1       garbled    96:        fi
                     97: fi
                     98:
                     99: HOST_ARCH=$(uname -m)
1.2       garbled   100: TARGET_ARCH=${1-${HOST_ARCH}}
1.1       garbled   101: TARGET_MACHINE=$2              # XXX
                    102:
1.2       garbled   103: # phase 0.. cross-build make..  dammit.
                    104:
                    105: echo "BEGIN: Phase 0, build make"
1.1       garbled   106:
1.2       garbled   107: BSDSRCDIR=${ROOT}/src
                    108: CROSS=cross-${HOST_ARCH}-to-${TARGET_ARCH}
1.1       garbled   109: DESTDIR=${ROOT}/${TARGET_MACHINE}/tools
                    110: BSDOBJDIR=${ROOT}/${TARGET_MACHINE}/tools/obj
                    111: export MAKECONF=${ROOT}/${TARGET_MACHINE}/Makeconf
                    112: MAKEDIR=${BSDSRCDIR}/share/mk
                    113:
                    114: mkdir -p ${DESTDIR}
                    115: mkdir -p ${DESTDIR}/usr/bin
                    116: mkdir -p ${DESTDIR}/usr/sbin
                    117: mkdir -p ${DESTDIR}/usr/libexec
                    118: mkdir -p ${DESTDIR}/usr/share/doc/psd/12.make
                    119: mkdir -p ${DESTDIR}/usr/share/info
                    120: mkdir -p ${DESTDIR}/usr/share/misc
                    121: mkdir -p ${DESTDIR}/usr/share/ldscripts
                    122: mkdir -p ${DESTDIR}/usr/share/man/man1
                    123: mkdir -p ${DESTDIR}/usr/libdata/lint
                    124: mkdir -p ${DESTDIR}/usr/lib
                    125: mkdir -p ${BSDOBJDIR}
                    126:
                    127: BLDUSER=$(id -u -n)
                    128: BLDGROUP=$(id -g -n)
                    129:
1.2       garbled   130: MAKE="gmake -m ${MAKEDIR}"
1.1       garbled   131:
                    132: cd ${BSDSRCDIR}
                    133:
                    134: TOOLDIRS="usr.bin/make"
                    135: # static-link the cross-tools just to avoid lossage.
                    136:
                    137: cat << EOF > ${MAKECONF}
1.2       garbled   138: TARGET_ARCH=${TARGET_ARCH}
                    139: MACHINE_ARCH=${TARGET_ARCH}
1.1       garbled   140: MACHINE=${TARGET_MACHINE}
                    141: BSDSRCDIR=${BSDSRCDIR}
                    142: BSDOBJDIR=${BSDOBJDIR}
                    143: OBJMACHINE=1
                    144: # USROBJMACHINE=1
1.2       garbled   145: MKLINKLIB=yes
                    146: MKPROFILE=no
                    147: MKLINT=no
                    148: MKPIC=no
                    149: MKMAN=no
                    150: MKINFO=no
                    151: LIBCRTBEGIN=${LIBCRTBEGIN}
                    152: LIBCRTEND=${LIBCRTEND}
                    153: BINOWN=${BLDUSER}
                    154: BINGRP=${BLDGROUP}
                    155: DOCOWN=${BLDUSER}
                    156: DOCGRP=${BLDGROUP}
                    157: INFOOWN=${BLDUSER}
                    158: INFOGRP=${BLDGROUP}
                    159: LIBOWN=${BLDUSER}
                    160: LIBGRP=${BLDGROUP}
                    161: MANOWN=${BLDUSER}
                    162: MANGRP=${BLDGROUP}
                    163: EOF
                    164:
                    165: if [ -z "$BUILDAOUT" ]; then
                    166: cat << EOF >> ${MAKECONF}
1.1       garbled   167: BOOTSTRAP_ELF=1
1.2       garbled   168: EOF
                    169: fi
                    170:
                    171: export MAKEOBJDIR=xobj.${TARGET_MACHINE}
                    172:
                    173: if [ -z "$SKIPTOOLS" ]
                    174: then
                    175: for subdir in  ${TOOLDIRS}
                    176: do
                    177:        (cd ${subdir}
                    178:        unset DESTDIR
                    179:        MACHINE_ARCH=${TARGET_ARCH} MACHINE=${TARGET_MACHINE} ${MAKE} -f Makefile.boot obj )
                    180: done
                    181:
                    182: for subdir in  ${TOOLDIRS}
                    183: do
                    184:        ((cd ${subdir}
                    185:        unset DESTDIR
                    186:        for target in clean bmake
                    187:        do
                    188:            echo "BUILDING $target in $subdir"
                    189:                pwd
                    190:             MACHINE_ARCH=${TARGET_ARCH} MACHINE=${TARGET_MACHINE} ${MAKE} -f Makefile.boot ${target} || exit 1
                    191:        done) &&
                    192:        (cd ${subdir}
                    193:        for target in install
                    194:        do
                    195: #              MACHINE_ARCH=${TARGET_ARCH} MACHINE=${TARGET_MACHINE} ${MAKE} \
                    196: #                      DESTDIR=${DESTDIR} ${target} || exit 1
                    197:                cp bmake ${DESTDIR}/usr/bin/make
                    198:        done)) || exit 1
                    199: done
                    200: fi
                    201:
                    202: echo "Rebuilding MAKE with make"
                    203:
                    204: BSDSRCDIR=${ROOT}/src
                    205: CROSS=cross-${HOST_ARCH}-to-${TARGET_ARCH}
                    206: DESTDIR=${ROOT}/${TARGET_MACHINE}/tools
                    207: BSDOBJDIR=${ROOT}/${TARGET_MACHINE}/tools/obj
                    208: export MAKECONF=${ROOT}/${TARGET_MACHINE}/Makeconf
                    209: MAKEDIR=${BSDSRCDIR}/share/mk
                    210:
                    211: mkdir -p ${DESTDIR}
                    212: mkdir -p ${DESTDIR}/usr/bin
                    213: mkdir -p ${DESTDIR}/usr/sbin
                    214: mkdir -p ${DESTDIR}/usr/libexec
                    215: mkdir -p ${DESTDIR}/usr/share/doc/psd/12.make
                    216: mkdir -p ${DESTDIR}/usr/share/info
                    217: mkdir -p ${DESTDIR}/usr/share/misc
                    218: mkdir -p ${DESTDIR}/usr/share/ldscripts
                    219: mkdir -p ${DESTDIR}/usr/share/man/man1
                    220: mkdir -p ${DESTDIR}/usr/libdata/lint
                    221: mkdir -p ${DESTDIR}/usr/lib
                    222: mkdir -p ${BSDOBJDIR}
                    223:
                    224: BLDUSER=$(id -u -n)
                    225: BLDGROUP=$(id -g -n)
                    226:
                    227: MAKE="${DESTDIR}/usr/bin/make -m ${MAKEDIR}"
                    228:
                    229: cd ${BSDSRCDIR}
                    230:
                    231: TOOLDIRS="usr.bin/make"
                    232: # static-link the cross-tools just to avoid lossage.
                    233:
                    234: cat << EOF > ${MAKECONF}
                    235: TARGET_ARCH=${TARGET_ARCH}
                    236: MACHINE_ARCH=${TARGET_ARCH}
                    237: MACHINE=${TARGET_MACHINE}
                    238: BSDSRCDIR=${BSDSRCDIR}
                    239: BSDOBJDIR=${BSDOBJDIR}
                    240: OBJMACHINE=1
                    241: # USROBJMACHINE=1
1.1       garbled   242: MKLINKLIB=yes
                    243: MKPROFILE=no
                    244: MKLINT=no
                    245: MKPIC=no
                    246: MKMAN=no
                    247: MKINFO=no
                    248: LIBCRTBEGIN=${LIBCRTBEGIN}
                    249: LIBCRTEND=${LIBCRTEND}
                    250: BINOWN=${BLDUSER}
                    251: BINGRP=${BLDGROUP}
                    252: DOCOWN=${BLDUSER}
                    253: DOCGRP=${BLDGROUP}
                    254: INFOOWN=${BLDUSER}
                    255: INFOGRP=${BLDGROUP}
                    256: LIBOWN=${BLDUSER}
                    257: LIBGRP=${BLDGROUP}
                    258: MANOWN=${BLDUSER}
                    259: MANGRP=${BLDGROUP}
                    260: EOF
                    261:
1.2       garbled   262: if [ -z "$BUILDAOUT" ]; then
                    263: cat << EOF >> ${MAKECONF}
                    264: BOOTSTRAP_ELF=1
                    265: EOF
                    266: fi
                    267:
1.1       garbled   268: export MAKEOBJDIR=xobj.${TARGET_MACHINE}
                    269:
                    270: if [ -z "$SKIPTOOLS" ]
                    271: then
                    272: for subdir in  ${TOOLDIRS}
                    273: do
                    274:        (cd ${subdir}
                    275:        unset DESTDIR
1.2       garbled   276:        MACHINE_ARCH=${TARGET_ARCH} MACHINE=${TARGET_MACHINE} ${MAKE} obj )
1.1       garbled   277: done
                    278:
                    279: for subdir in  ${TOOLDIRS}
                    280: do
                    281:        ((cd ${subdir}
                    282:        unset DESTDIR
                    283:        for target in cleandir depend all
                    284:        do
                    285:            echo "BUILDING $target in $subdir"
1.2       garbled   286:             MACHINE_ARCH=${TARGET_ARCH} MACHINE=${TARGET_MACHINE} ${MAKE} ${target} || exit 1
1.1       garbled   287:        done) &&
                    288:        (cd ${subdir}
                    289:        for target in install
                    290:        do
1.2       garbled   291:                MACHINE_ARCH=${TARGET_ARCH} MACHINE=${TARGET_MACHINE} ${MAKE} \
1.1       garbled   292:                        DESTDIR=${DESTDIR} ${target} || exit 1
                    293:        done)) || exit 1
                    294: done
                    295: fi
1.2       garbled   296:
1.1       garbled   297: # phase 1: build cross-tools
                    298:
                    299: echo "BUILDING BEGIN: Stage 1"
                    300:
                    301: BLDUSER=$(id -u -n)
                    302: BLDGROUP=$(id -g -n)
                    303:
                    304: MAKE="${DESTDIR}/usr/bin/make -m ${MAKEDIR}"
                    305:
                    306: cd ${BSDSRCDIR}
                    307:
                    308: AS=gas.new
                    309: LD=ld.new
                    310: #TOOLDIRS=gnu/lib/libbfd gnu/usr.bin/${AS} gnu/usr.bin/${LD} gnu/usr.bin/gcc
                    311: TOOLDIRS="usr.bin/make gnu/lib/libbfd gnu/usr.bin/${AS} gnu/usr.bin/${LD} gnu/usr.bin/egcs gnu/usr.bin/binutils usr.bin/xinstall usr.sbin/config usr.bin/rpcgen usr.bin/menuc usr.bin/msgc usr.bin/xlint crypto-us/usr.bin/compile_et"
                    312: # static-link the cross-tools just to avoid lossage.
                    313:
                    314: cat << EOF > ${MAKECONF}
1.2       garbled   315: TARGET_ARCH=${TARGET_ARCH}
                    316: MACHINE_ARCH=${TARGET_ARCH}
1.1       garbled   317: MACHINE=${TARGET_MACHINE}
                    318: BSDSRCDIR=${BSDSRCDIR}
                    319: BSDOBJDIR=${BSDOBJDIR}
                    320: OBJMACHINE=1
                    321: # USROBJMACHINE=1
                    322: BOOTSTRAP_ELF=1
                    323: MKLINKLIB=yes
                    324: MKPROFILE=no
                    325: MKLINT=no
                    326: MKPIC=no
                    327: MKMAN=no
                    328: MKINFO=no
                    329: LIBCRTBEGIN=${LIBCRTBEGIN}
                    330: LIBCRTEND=${LIBCRTEND}
                    331: BINOWN=${BLDUSER}
                    332: BINGRP=${BLDGROUP}
                    333: DOCOWN=${BLDUSER}
                    334: DOCGRP=${BLDGROUP}
                    335: INFOOWN=${BLDUSER}
                    336: INFOGRP=${BLDGROUP}
                    337: LIBOWN=${BLDUSER}
                    338: LIBGRP=${BLDGROUP}
                    339: MANOWN=${BLDUSER}
                    340: MANGRP=${BLDGROUP}
                    341: EOF
                    342:
                    343: export MAKEOBJDIR=xobj.${TARGET_MACHINE}
                    344:
                    345: if [ -z "$SKIPTOOLS" ]
                    346: then
                    347: for subdir in  ${TOOLDIRS}
                    348: do
                    349:        (cd ${subdir}
                    350:        unset DESTDIR
1.2       garbled   351:        MACHINE_ARCH=${TARGET_ARCH} MACHINE=${TARGET_MACHINE} ${MAKE} obj )
1.1       garbled   352: done
                    353:
                    354: for subdir in  ${TOOLDIRS}
                    355: do
                    356:        ((cd ${subdir}
                    357:        unset DESTDIR
                    358:        for target in cleandir depend all
                    359:        do
                    360:            echo BUILDING $target in $subdir
1.2       garbled   361:             MACHINE_ARCH=${TARGET_ARCH} MACHINE=${TARGET_MACHINE} ${MAKE} ${target} || exit 1
1.1       garbled   362:        done) &&
                    363:        (cd ${subdir}
                    364:        for target in install
                    365:        do
1.2       garbled   366:                MACHINE_ARCH=${TARGET_ARCH} MACHINE=${TARGET_MACHINE} ${MAKE} \
1.1       garbled   367:                        DESTDIR=${DESTDIR} ${target} || exit 1
                    368:        done)) || exit 1
                    369: done
                    370: fi
                    371:
                    372: # phase 2: cross-build the world..
                    373:
                    374: echo "BUILDING BEGIN: Stage 2"
                    375:
                    376: unset MAKEOBJDIR
                    377:
                    378: TOOLDIR=${ROOT}/${TARGET_MACHINE}/tools
                    379:
                    380: DESTDIR=${ROOT}/${TARGET_MACHINE}/root
                    381: RELEASEDIR=${ROOT}/${TARGET_MACHINE}/release
                    382: BSDOBJDIR=${ROOT}/${TARGET_MACHINE}/obj
                    383:
                    384: MAKE="${TOOLDIR}/usr/bin/make -m ${MAKEDIR}"
                    385:
                    386: mkdir -p ${DESTDIR}
                    387: mkdir -p ${RELEASEDIR}
                    388: mkdir -p ${BSDOBJDIR}
                    389:
                    390: cp ${TOOLDIR}/usr/bin/as ${TOOLDIR}/usr/libexec/
                    391: cp ${TOOLDIR}/usr/bin/ld ${TOOLDIR}/usr/libexec/
                    392:
                    393: cat << EOF > ${MAKECONF}
                    394: AR=${TOOLDIR}/usr/bin/ar
                    395: AS=${TOOLDIR}/usr/bin/as
                    396: CC=${TOOLDIR}/usr/bin/cc -B${TOOLDIR}/usr/libexec/
                    397: CPP=${TOOLDIR}/usr/bin/cpp -B${TOOLDIR}/usr/libexec/
                    398: CXX=${TOOLDIR}/usr/bin/c++ -B${TOOLDIR}/usr/libexec/
                    399: FC=${TOOLDIR}/usr/bin/f77 -B${TOOLDIR}/usr/libexec/
                    400: LD=${TOOLDIR}/usr/bin/ld
                    401: LDFLAGS+=-nostdlib
                    402: NM=${TOOLDIR}/usr/bin/nm
                    403: OBJCOPY=${TOOLDIR}/usr/bin/objcopy
                    404: OBJDUMP=${TOOLDIR}/usr/bin/objdump
                    405: RANLIB=${TOOLDIR}/usr/bin/ranlib
                    406: MENUC=${TOOLDIR}/usr/bin/menuc
                    407: MSGC=${TOOLDIR}/usr/bin/msgc
                    408: SIZE=${TOOLDIR}/usr/bin/size
                    409: STRINGS=${TOOLDIR}/usr/bin/strings
                    410: STRIPPROG=${TOOLDIR}/usr/bin/strip
                    411: CONFIG=${TOOLDIR}/usr/sbin/config
1.3     ! garbled   412: RPCGEN=${TOOLDIR}/usr/bin/rpcgen
1.1       garbled   413: LINT=${TOOLDIR}/usr/bin/lint
                    414: LINTFLAGS+= -B${TOOLDIR}/usr/libexec -L${DESTDIR}/usr/libdata/lint
                    415: COMPILE_ET=${TOOLDIR}/usr/bin/compile_et
                    416:
1.2       garbled   417: TARGET_ARCH=${TARGET_ARCH}
                    418: MACHINE_ARCH=${TARGET_ARCH}
1.1       garbled   419: MACHINE=${TARGET_MACHINE}
                    420: BSDSRCDIR=${BSDSRCDIR}
                    421: BSDOBJDIR=${BSDOBJDIR}
                    422: OBJMACHINE=1
                    423: # USROBJMACHINE=1
                    424: DESTDIR=${DESTDIR}
                    425: OBJECT_FMT=ELF
                    426: MAKEDIR=${BSDSRCDIR}/share/mk
                    427: MAKE=${TOOLDIR}/usr/bin/make -m ${MAKEDIR}
1.3     ! garbled   428: MKCRYPTO=yes
1.1       garbled   429: KERBEROS=yes
                    430: KERBEROS5=yes
                    431: EOF
                    432:
                    433: case ${BLDUSER} in
                    434: root)
                    435:     ;;
                    436: *)
                    437:     cat <<EOF >>${MAKECONF}
                    438:     INSTALL=${TOOLDIR}/usr/bin/install -U
                    439:     USER_INSTALL=1
                    440: EOF
                    441:     ;;
                    442: esac
                    443:
                    444: cd ${BSDSRCDIR}
                    445: export STRIP=${TOOLDIR}/usr/bin/strip
                    446: export CC=${TOOLDIR}/usr/bin/cc
1.2       garbled   447: export MACHINE_ARCH=${TARGET_ARCH} MACHINE=${TARGET_MACHINE}
1.1       garbled   448: #menuc msgc
                    449: export MENUDEF=${TOOLDIR}/usr/share/misc
                    450: export MSGDEF=${TOOLDIR}/usr/share/misc
                    451:
                    452: if [ -z "$DOGAMES" ]; then
                    453:        mv ${BSDSRCDIR}/games ${BSDSRCDIR}/nogames
                    454: fi
                    455:
                    456: if [ ! -z "$SUBDIR" ]
                    457: then
                    458:     cd $SUBDIR
                    459:     case $DOUPDATE in
                    460:     no)
                    461:        ${MAKE} cleandir &&
                    462:        rmdir obj.${TARGET_MACHINE} &&
                    463:        ${MAKE} cleandir &&
                    464:        ${MAKE} obj &&
                    465:        ${MAKE} cleandir
                    466:        ${MAKE} includes &&
                    467:        ${MAKE} depend
                    468:        ;;
                    469:     yes)
                    470:        ;;
                    471:     esac
                    472:     ${MAKE} all
                    473: else
                    474:     case $DOUPDATE in
                    475:     no)
                    476:        ${MAKE} cleandir && ${MAKE} obj && ${MAKE} beforeinstall &&
                    477:        ${MAKE} includes &&
                    478:        (cd ${BSDSRCDIR}/lib/csu && ${MAKE} && ${MAKE} install) &&
                    479:        (cd ${BSDSRCDIR}/lib/libc && ${MAKE} && ${MAKE} install) &&
                    480:        ${MAKE} build &&
                    481:        cd etc && ${MAKE} release RELEASEDIR=${RELEASEDIR}
                    482:        ;;
                    483:     yes)
                    484: #      ${MAKE} obj &&
                    485:        ${MAKE} build UPDATE=1
                    486:        ;;
                    487:     esac
                    488: fi
                    489:
                    490: if [ -z "$DOGAMES" ]; then
                    491:        mv ${BSDSRCDIR}/nogames ${BSDSRCDIR}/games
                    492: fi
                    493:
                    494: # do we perform the anti-crypto build?
                    495: if [ ! -z "$ONEBUILD" ]; then
                    496:         exit 0
                    497: fi
                    498:
                    499: # phase 3: lameass crypto setup.
                    500:
                    501: echo "BUILDING BEGIN: Stage 3"
                    502:
                    503: cat << EOF > ${MAKECONF}
                    504: AR=${TOOLDIR}/usr/bin/ar
                    505: AS=${TOOLDIR}/usr/bin/as
                    506: CC=${TOOLDIR}/usr/bin/cc -B${TOOLDIR}/usr/libexec/
                    507: CPP=${TOOLDIR}/usr/bin/cpp -B${TOOLDIR}/usr/libexec/
                    508: CXX=${TOOLDIR}/usr/bin/c++ -B${TOOLDIR}/usr/libexec/
                    509: FC=${TOOLDIR}/usr/bin/f77 -B${TOOLDIR}/usr/libexec/
                    510: LD=${TOOLDIR}/usr/bin/ld
                    511: NM=${TOOLDIR}/usr/bin/nm
                    512: OBJCOPY=${TOOLDIR}/usr/bin/objcopy
                    513: OBJDUMP=${TOOLDIR}/usr/bin/objdump
                    514: RANLIB=${TOOLDIR}/usr/bin/ranlib
                    515: MENUC=${TOOLDIR}/usr/bin/menuc
                    516: MSGC=${TOOLDIR}/usr/bin/msgc
                    517: SIZE=${TOOLDIR}/usr/bin/size
                    518: STRINGS=${TOOLDIR}/usr/bin/strings
                    519: STRIPPROG=${TOOLDIR}/usr/bin/strip
                    520: INSTALL=${TOOLDIR}/usr/bin/install
                    521: CONFIG=${TOOLDIR}/usr/sbin/config
                    522: LINT=${TOOLDIR}/usr/bin/lint
                    523: LINTFLAGS+= -B${TOOLDIR}/usr/libexec -L${DESTDIR}/usr/libdata/lint
                    524: COMPILE_ET=${TOOLDIR}/usr/bin/compile_et
                    525:
1.2       garbled   526: TARGET_ARCH=${TARGET_ARCH}
                    527: MACHINE_ARCH=${TARGET_ARCH}
1.1       garbled   528: MACHINE=${TARGET_MACHINE}
                    529: BSDSRCDIR=${BSDSRCDIR}
                    530: BSDOBJDIR=${BSDOBJDIR}
                    531: OBJMACHINE=1
                    532: # USROBJMACHINE=1
                    533: DESTDIR=${DESTDIR}
                    534: OBJECT_FMT=ELF
                    535: MAKEDIR=${BSDSRCDIR}/share/mk
                    536: MAKE=${TOOLDIR}/usr/bin/make -m ${MAKEDIR}
                    537: KERBEROS=no
                    538: KERBEROS5=no
                    539: CRYPTOBASE=none
                    540: EOF
                    541:
                    542: cd ${BSDSRCDIR}
                    543:
                    544: if [ ! -z "$SUBDIR" ]
                    545: then
                    546:        cd $SUBDIR
                    547:        ${MAKE} cleandir &&
                    548:        rmdir obj.${TARGET_MACHINE} &&
                    549:        ${MAKE} cleandir &&
                    550:        ${MAKE} obj &&
                    551:        ${MAKE} cleandir
                    552:        ${MAKE} includes &&
                    553:        ${MAKE} depend
                    554:        ${MAKE} all
                    555: else
                    556:        ${MAKE} cleandir && ${MAKE} obj && ${MAKE} build &&
                    557:        cd etc && ${MAKE} release RELEASEDIR=${RELEASEDIR}
                    558: fi

CVSweb <webmaster@jp.NetBSD.org>