Changes in tools/toolchain.sh [3e05a69:f3a7b0d] in mainline


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • tools/toolchain.sh

    r3e05a69 rf3a7b0d  
    3131BINUTILS_GDB_GIT="https://github.com/HelenOS/binutils-gdb.git"
    3232
    33 BINUTILS_BRANCH="binutils-2_41-helenos"
    34 BINUTILS_VERSION="2.41"
    35 
    36 GDB_BRANCH="gdb-13.2-helenos"
    37 GDB_VERSION="13.2"
     33BINUTILS_BRANCH="binutils-2_31_1-helenos"
     34BINUTILS_VERSION="2.31.1"
     35
     36GDB_BRANCH="gdb-8_2-helenos"
     37GDB_VERSION="8.2"
    3838
    3939GCC_GIT="https://github.com/HelenOS/gcc.git"
    40 GCC_BRANCH="13_2_0-helenos"
    41 GCC_VERSION="13.2"
     40GCC_BRANCH="8_2_0-helenos"
     41GCC_VERSION="8.2.0"
    4242
    4343BASEDIR="$PWD"
    4444SRCDIR="$(readlink -f $(dirname "$0"))"
    4545
    46 # If we install into a temporary directory and copy from there,
    47 # we don't have to trust the upstream makefiles respect the prefix for
    48 # all files, and we also have a ready-made package for distribution.
    49 INSTALL_DIR="${BASEDIR}/PKG"
    50 
    5146SYSTEM_INSTALL=false
    52 
    53 BUILD_GDB=false
    54 BUILD_BINUTILS=true
    55 BUILD_GCC=true
    56 
    57 if [ -z "$JOBS" ] ; then
    58         JOBS="`nproc`"
    59 fi
     47REAL_INSTALL=true
     48USE_HELENOS_TARGET=true
    6049
    6150check_error() {
     
    7261        echo
    7362        echo "Syntax:"
    74         echo " $0 [--system-wide] [--with-gdb|--only-gdb] <platform>"
     63        echo " $0 [--system-wide] [--no-install] [--non-helenos-target] <platform>"
    7564        echo " $0 [--system-wide] --test-version [<platform>]"
    7665        echo
     
    8776        echo " sparc64    SPARC V9"
    8877        echo " all        build all targets"
     78        echo " essential  build only targets currently needed for HelenOS development"
    8979        echo " parallel   same as 'all', but all in parallel"
    9080        echo " 2-way      same as 'all', but 2-way parallel"
     
    10292        echo "     variable is not set, then the default value of \$HOME/.local/share"
    10393        echo "     is assumed."
     94        echo
     95        echo "If the --no-install option is used, the toolchain still uses the"
     96        echo "target installation directory as determined above, but the files"
     97        echo "are actually copied into the PKG/ subdirectory during the installation"
     98        echo "without affecting the actual target file system. This might be useful"
     99        echo "when preparing a system-wide installation, but avoiding running this"
     100        echo "script under the super user."
    104101        echo
    105102        echo "The --non-helenos-target option will build non-HelenOS-specific"
     
    142139        for PLATFORM in $PLATFORMS ; do
    143140                set_target_from_platform "$PLATFORM"
    144                 PREFIX="${CROSS_PREFIX}/bin/${TARGET}"
     141                PREFIX="${CROSS_PREFIX}/bin/${HELENOS_TARGET}"
    145142
    146143                echo "== $PLATFORM =="
     
    180177}
    181178
    182 ring_bell() {
    183         printf '\a'
    184         sleep 0.1
    185         printf '\a'
    186         sleep 0.1
    187         printf '\a'
    188         sleep 0.1
    189         printf '\a'
    190         sleep 0.1
    191         printf '\a'
    192 }
    193 
    194179show_countdown() {
    195180        TM="$1"
     
    256241
    257242check_dirs() {
    258         cd "${BASEDIR}"
    259         check_error $? "Unable to change directory to ${BASEDIR}."
     243        OUTSIDE="$1"
     244        BASE="$2"
     245        ORIGINAL="$PWD"
     246
     247        cd "${BASE}"
     248        check_error $? "Unable to change directory to ${BASE}."
    260249        ABS_BASE="$PWD"
    261 
    262         if $SYSTEM_INSTALL && [ ! -d "${CROSS_PREFIX}" ]; then
    263                 ring_bell
    264                 ( set -x ; sudo -k mkdir -p "${CROSS_PREFIX}" )
    265         else
    266                 mkdir -p "${CROSS_PREFIX}"
    267         fi
    268 
    269         cd "${CROSS_PREFIX}"
    270         check_error $? "Unable to change directory to ${CROSS_PREFIX}."
     250        cd "${ORIGINAL}"
     251        check_error $? "Unable to change directory to ${ORIGINAL}."
     252
     253        mkdir -p "${OUTSIDE}"
     254        cd "${OUTSIDE}"
     255        check_error $? "Unable to change directory to ${OUTSIDE}."
    271256
    272257        while [ "${#PWD}" -gt "${#ABS_BASE}" ]; do
     
    281266        fi
    282267
    283         cd "${BASEDIR}"
     268        cd "${ORIGINAL}"
     269        check_error $? "Unable to change directory to ${ORIGINAL}."
    284270}
    285271
     
    294280        change_title "Downloading sources"
    295281        echo ">>> Downloading sources"
    296 
    297         if $BUILD_BINUTILS ; then
    298                 git clone --depth 1 -b "$BINUTILS_BRANCH" "$BINUTILS_GDB_GIT" "binutils-$BINUTILS_VERSION"
    299                 # If the directory already existed, pull upstream changes.
    300                 git -C "binutils-$BINUTILS_VERSION" pull
    301         fi
    302 
    303         if $BUILD_GCC ; then
    304                 git clone --depth 1 -b "$GCC_BRANCH" "$GCC_GIT" "gcc-$GCC_VERSION"
    305                 git -C "gcc-$GCC_VERSION" pull
    306 
    307                 change_title "Downloading GCC prerequisites"
    308                 echo ">>> Downloading GCC prerequisites"
    309                 cd "gcc-${GCC_VERSION}"
    310                 ./contrib/download_prerequisites
    311                 cd ..
    312         fi
    313 
    314         if $BUILD_GDB ; then
    315                 git clone --depth 1 -b "$GDB_BRANCH" "$BINUTILS_GDB_GIT" "gdb-$GDB_VERSION"
    316                 git -C "gdb-$GDB_VERSION" pull
    317         fi
    318 
    319         # This sets the CROSS_PREFIX variable
    320         set_cross_prefix
    321 
    322         DESTDIR_SPEC="DESTDIR=${INSTALL_DIR}"
    323 
    324         check_dirs
     282        git clone --depth 1 -b "$BINUTILS_BRANCH" "$BINUTILS_GDB_GIT" "binutils-$BINUTILS_VERSION"
     283        git clone --depth 1 -b "$GDB_BRANCH" "$BINUTILS_GDB_GIT" "gdb-$GDB_VERSION"
     284        git clone --depth 1 -b "$GCC_BRANCH" "$GCC_GIT" "gcc-$GCC_VERSION"
     285
     286        # If the directory already existed, pull upstream changes.
     287        git -C "binutils-$BINUTILS_VERSION" pull
     288        git -C "gdb-$GDB_VERSION" pull
     289        git -C "gcc-$GCC_VERSION" pull
     290
     291        change_title "Downloading GCC prerequisites"
     292        echo ">>> Downloading GCC prerequisites"
     293        cd "gcc-${GCC_VERSION}"
     294        ./contrib/download_prerequisites
     295        cd ..
    325296}
    326297
     
    350321        esac
    351322
    352         TARGET="${GNU_ARCH}-helenos"
    353 }
    354 
    355 build_binutils() {
    356         # This sets the TARGET variable
    357         set_target_from_platform "$1"
     323        HELENOS_TARGET="${GNU_ARCH}-helenos"
     324
     325        case "$1" in
     326                "arm32")
     327                        LINUX_TARGET="${GNU_ARCH}-linux-gnueabi"
     328                        ;;
     329                *)
     330                        LINUX_TARGET="${GNU_ARCH}-linux-gnu"
     331                        ;;
     332        esac
     333}
     334
     335build_target() {
     336        PLATFORM="$1"
     337
     338        # This sets the *_TARGET variables
     339        set_target_from_platform "$PLATFORM"
     340        if $USE_HELENOS_TARGET ; then
     341                TARGET="$HELENOS_TARGET"
     342        else
     343                TARGET="$LINUX_TARGET"
     344        fi
    358345
    359346        WORKDIR="${BASEDIR}/${TARGET}"
     347        INSTALL_DIR="${BASEDIR}/PKG"
    360348        BINUTILSDIR="${WORKDIR}/binutils-${BINUTILS_VERSION}"
     349        GCCDIR="${WORKDIR}/gcc-${GCC_VERSION}"
     350        GDBDIR="${WORKDIR}/gdb-${GDB_VERSION}"
     351
     352        # This sets the CROSS_PREFIX variable
     353        set_cross_prefix
     354
     355        if [ -z "$JOBS" ] ; then
     356                JOBS="`nproc`"
     357        fi
     358
     359        PREFIX="${CROSS_PREFIX}"
    361360
    362361        echo ">>> Removing previous content"
    363362        cleanup_dir "${WORKDIR}"
    364363        mkdir -p "${WORKDIR}"
    365 
    366         echo ">>> Processing binutils (${TARGET})"
     364        check_dirs "${PREFIX}" "${WORKDIR}"
     365
     366        if $USE_HELENOS_TARGET ; then
     367                change_title "Creating build sysroot"
     368                echo ">>> Creating build sysroot"
     369                mkdir -p "${WORKDIR}/sysroot/include"
     370                mkdir "${WORKDIR}/sysroot/lib"
     371                ARCH="$PLATFORM"
     372                if [ "$ARCH" = "mips32eb" ]; then
     373                        ARCH=mips32
     374                fi
     375
     376                cp -r -L -t "${WORKDIR}/sysroot/include" \
     377                        ${SRCDIR}/../abi/include/* \
     378                        ${SRCDIR}/../uspace/lib/c/arch/${ARCH}/include/* \
     379                        ${SRCDIR}/../uspace/lib/c/include/*
     380                check_error $? "Failed to create build sysroot."
     381        fi
     382
     383
     384        echo ">>> Processing binutils (${PLATFORM})"
    367385        mkdir -p "${BINUTILSDIR}"
    368386        cd "${BINUTILSDIR}"
    369387        check_error $? "Change directory failed."
    370388
    371         change_title "binutils: configure (${TARGET})"
     389        change_title "binutils: configure (${PLATFORM})"
    372390        CFLAGS="-Wno-error -fcommon" "${BASEDIR}/downloads/binutils-${BINUTILS_VERSION}/configure" \
    373391                "--target=${TARGET}" \
    374                 "--prefix=${CROSS_PREFIX}" \
     392                "--prefix=${PREFIX}" \
    375393                "--program-prefix=${TARGET}-" \
    376394                --disable-nls \
     
    382400        check_error $? "Error configuring binutils."
    383401
    384         change_title "binutils: make (${TARGET})"
     402        change_title "binutils: make (${PLATFORM})"
    385403        make all -j$JOBS
    386404        check_error $? "Error compiling binutils."
    387405
    388         change_title "binutils: install (${TARGET})"
    389         make install $DESTDIR_SPEC
     406        change_title "binutils: install (${PLATFORM})"
     407        make install "DESTDIR=${INSTALL_DIR}"
    390408        check_error $? "Error installing binutils."
    391 }
    392 
    393 build_gcc() {
    394         # This sets the TARGET variable
    395         set_target_from_platform "$1"
    396 
    397         WORKDIR="${BASEDIR}/${TARGET}"
    398         GCCDIR="${WORKDIR}/gcc-${GCC_VERSION}"
    399 
    400         echo ">>> Removing previous content"
    401         cleanup_dir "${WORKDIR}"
    402         mkdir -p "${WORKDIR}"
    403 
    404         echo ">>> Processing GCC (${TARGET})"
     409
     410
     411        echo ">>> Processing GCC (${PLATFORM})"
    405412        mkdir -p "${GCCDIR}"
    406413        cd "${GCCDIR}"
    407414        check_error $? "Change directory failed."
    408415
    409         BUILDPATH="${CROSS_PREFIX}/bin:${PATH}"
    410 
    411         change_title "GCC: configure (${TARGET})"
    412         PATH="${BUILDPATH}" "${BASEDIR}/downloads/gcc-${GCC_VERSION}/configure" \
     416        if $USE_HELENOS_TARGET ; then
     417                SYSROOT=--with-sysroot --with-build-sysroot="${WORKDIR}/sysroot"
     418        else
     419                SYSROOT=--without-headers
     420        fi
     421
     422        change_title "GCC: configure (${PLATFORM})"
     423        PATH="$PATH:${INSTALL_DIR}/${PREFIX}/bin" "${BASEDIR}/downloads/gcc-${GCC_VERSION}/configure" \
    413424                "--target=${TARGET}" \
    414                 "--prefix=${CROSS_PREFIX}" \
     425                "--prefix=${PREFIX}" \
    415426                "--program-prefix=${TARGET}-" \
    416427                --with-gnu-as \
     
    421432                --disable-shared \
    422433                --disable-werror \
    423                 --without-headers  # TODO: Replace with proper sysroot so we can build more libs
     434                $SYSROOT
    424435        check_error $? "Error configuring GCC."
    425436
    426         change_title "GCC: make (${TARGET})"
    427         PATH="${BUILDPATH}" make all-gcc -j$JOBS
     437        change_title "GCC: make (${PLATFORM})"
     438        PATH="${PATH}:${PREFIX}/bin:${INSTALL_DIR}/${PREFIX}/bin" make all-gcc -j$JOBS
    428439        check_error $? "Error compiling GCC."
    429440
    430         change_title "GCC: install (${TARGET})"
    431         PATH="${BUILDPATH}" make install-gcc $DESTDIR_SPEC
     441        if $USE_HELENOS_TARGET ; then
     442                PATH="${PATH}:${PREFIX}/bin:${INSTALL_DIR}/${PREFIX}/bin" make all-target-libgcc -j$JOBS
     443                check_error $? "Error compiling libgcc."
     444                # TODO: libatomic and libstdc++ need some extra care
     445                #    PATH="${PATH}:${PREFIX}/bin:${INSTALL_DIR}/${PREFIX}/bin" make all-target-libatomic -j$JOBS
     446                #    check_error $? "Error compiling libatomic."
     447                #    PATH="${PATH}:${PREFIX}/bin:${INSTALL_DIR}/${PREFIX}/bin" make all-target-libstdc++-v3 -j$JOBS
     448                #    check_error $? "Error compiling libstdc++."
     449        fi
     450
     451        change_title "GCC: install (${PLATFORM})"
     452        PATH="${PATH}:${INSTALL_DIR}/${PREFIX}/bin" make install-gcc "DESTDIR=${INSTALL_DIR}"
     453        if $USE_HELENOS_TARGET ; then
     454                PATH="${PATH}:${INSTALL_DIR}/${PREFIX}/bin" make install-target-libgcc "DESTDIR=${INSTALL_DIR}"
     455                #    PATH="${PATH}:${INSTALL_DIR}/${PREFIX}/bin" make install-target-libatomic "DESTDIR=${INSTALL_DIR}"
     456                #    PATH="${PATH}:${INSTALL_DIR}/${PREFIX}/bin" make install-target-libstdc++-v3 "DESTDIR=${INSTALL_DIR}"
     457        fi
    432458        check_error $? "Error installing GCC."
    433 }
    434 
    435 build_libgcc() {
    436         # This sets the TARGET variable
    437         set_target_from_platform "$1"
    438 
    439         WORKDIR="${BASEDIR}/${TARGET}"
    440         GCCDIR="${WORKDIR}/gcc-${GCC_VERSION}"
    441 
    442         # No removing previous content here, we need the previous GCC build
    443 
    444         cd "${GCCDIR}"
    445         check_error $? "Change directory failed."
    446 
    447         BUILDPATH="${CROSS_PREFIX}/bin:${PATH}"
    448 
    449         change_title "libgcc: make (${TARGET})"
    450 
    451         PATH="${BUILDPATH}" make all-target-libgcc -j$JOBS
    452         check_error $? "Error compiling libgcc."
    453         # TODO: libatomic and libstdc++ need some extra care
    454         #    PATH="${BUILDPATH}" make all-target-libatomic -j$JOBS
    455         #    check_error $? "Error compiling libatomic."
    456         #    PATH="${BUILDPATH}" make all-target-libstdc++-v3 -j$JOBS
    457         #    check_error $? "Error compiling libstdc++."
    458 
    459         change_title "libgcc: install (${TARGET})"
    460 
    461         PATH="${BUILDPATH}" make install-target-libgcc $DESTDIR_SPEC
    462         #    PATH="${BUILDPATH}" make install-target-libatomic $DESTDIR_SPEC
    463         #    PATH="${BUILDPATH}" make install-target-libstdc++-v3 $DESTDIR_SPEC
    464         check_error $? "Error installing libgcc."
    465 }
    466 
    467 build_gdb() {
    468         # This sets the TARGET variable
    469         set_target_from_platform "$1"
    470 
    471         WORKDIR="${BASEDIR}/${TARGET}"
    472         GDBDIR="${WORKDIR}/gdb-${GDB_VERSION}"
    473 
    474         echo ">>> Removing previous content"
    475         cleanup_dir "${WORKDIR}"
    476         mkdir -p "${WORKDIR}"
    477 
    478         echo ">>> Processing GDB (${TARGET})"
     459
     460
     461        echo ">>> Processing GDB (${PLATFORM})"
    479462        mkdir -p "${GDBDIR}"
    480463        cd "${GDBDIR}"
    481464        check_error $? "Change directory failed."
    482465
    483         change_title "GDB: configure (${TARGET})"
    484         CFLAGS="-fcommon" "${BASEDIR}/downloads/gdb-${GDB_VERSION}/configure" \
     466        change_title "GDB: configure (${PLATFORM})"
     467        CFLAGS="-fcommon" PATH="$PATH:${INSTALL_DIR}/${PREFIX}/bin" "${BASEDIR}/downloads/gdb-${GDB_VERSION}/configure" \
    485468                "--target=${TARGET}" \
    486                 "--prefix=${CROSS_PREFIX}" \
     469                "--prefix=${PREFIX}" \
    487470                "--program-prefix=${TARGET}-" \
    488471                --enable-werror=no
    489472        check_error $? "Error configuring GDB."
    490473
    491         change_title "GDB: make (${TARGET})"
    492         make all-gdb -j$JOBS
     474        change_title "GDB: make (${PLATFORM})"
     475        PATH="${PATH}:${PREFIX}/bin:${INSTALL_DIR}/${PREFIX}/bin" make all-gdb -j$JOBS
    493476        check_error $? "Error compiling GDB."
    494477
    495         change_title "GDB: install (${TARGET})"
    496         make install-gdb $DESTDIR_SPEC
     478        change_title "GDB: make (${PLATFORM})"
     479        PATH="${PATH}:${INSTALL_DIR}/${PREFIX}/bin" make install-gdb "DESTDIR=${INSTALL_DIR}"
    497480        check_error $? "Error installing GDB."
    498 }
    499 
    500 install_pkg() {
    501         echo ">>> Moving to the destination directory."
    502         if $SYSTEM_INSTALL ; then
    503                 ring_bell
    504                 ( set -x ; sudo -k cp -r -t "${CROSS_PREFIX}" "${INSTALL_DIR}${CROSS_PREFIX}/"* )
    505         else
    506                 ( set -x ; cp -r -t "${CROSS_PREFIX}" "${INSTALL_DIR}${CROSS_PREFIX}/"* )
    507         fi
    508 }
    509 
    510 link_clang() {
     481
    511482        # Symlink clang and lld to the install path.
    512483        CLANG="`which clang 2> /dev/null || echo "/usr/bin/clang"`"
    513484        LLD="`which ld.lld 2> /dev/null || echo "/usr/bin/ld.lld"`"
    514485
    515         ln -s $CLANG "${INSTALL_DIR}${CROSS_PREFIX}/bin/${TARGET}-clang"
    516         ln -s $LLD "${INSTALL_DIR}${CROSS_PREFIX}/bin/${TARGET}-ld.lld"
     486        ln -s $CLANG "${INSTALL_DIR}/${PREFIX}/bin/${TARGET}-clang"
     487        ln -s $LLD "${INSTALL_DIR}/${PREFIX}/bin/${TARGET}-ld.lld"
     488
     489        if $REAL_INSTALL ; then
     490                echo ">>> Moving to the destination directory."
     491                cp -r -t "${PREFIX}" "${INSTALL_DIR}/${PREFIX}/"*
     492        fi
     493
     494        cd "${BASEDIR}"
     495        check_error $? "Change directory failed."
     496
     497        echo ">>> Cleaning up"
     498        cleanup_dir "${WORKDIR}"
     499
     500        echo
     501        echo ">>> Cross-compiler for ${TARGET} installed."
    517502}
    518503
     
    527512                        exit
    528513                        ;;
    529                 --with-gdb)
    530                         BUILD_GDB=true
     514                --no-install)
     515                        REAL_INSTALL=false
    531516                        shift
    532517                        ;;
    533                 --only-gdb)
    534                         BUILD_GDB=true
    535                         BUILD_BINUTILS=false
    536                         BUILD_GCC=false
     518                --non-helenos-target)
     519                        USE_HELENOS_TARGET=false
    537520                        shift
    538521                        ;;
     
    546529        show_usage
    547530fi
    548 
    549 PLATFORMS="amd64 arm32 arm64 ia32 ia64 mips32 mips32eb ppc32 riscv64 sparc64"
    550 
    551 run_one() {
    552         $1 $PLATFORM
    553 }
    554 
    555 run_all() {
    556         for x in $PLATFORMS ; do
    557                 $1 $x
    558         done
    559 }
    560 
    561 run_parallel() {
    562         for x in $PLATFORMS ; do
    563                 $1 $x &
    564         done
    565         wait
    566 }
    567 
    568 run_2way() {
    569         $1 amd64 &
    570         $1 arm32 &
    571         wait
    572 
    573         $1 arm64 &
    574         $1 ia32 &
    575         wait
    576 
    577         $1 ia64 &
    578         $1 mips32 &
    579         wait
    580 
    581         $1 mips32eb &
    582         $1 ppc32 &
    583         wait
    584 
    585         $1 riscv64 &
    586         $1 sparc64 &
    587         wait
    588 }
    589 
    590 everything() {
    591         RUNNER="$1"
    592 
    593         prepare
    594 
    595         if $BUILD_BINUTILS ; then
    596                 $RUNNER build_binutils
    597 
    598                 if $BUILD_GCC ; then
    599                         # gcc/libgcc may fail to build correctly if binutils is not installed first
    600                         echo ">>> Installing binutils"
    601                         install_pkg
    602                 fi
    603         fi
    604 
    605         if $BUILD_GCC ; then
    606                 $RUNNER build_gcc
    607 
    608                 # libgcc may fail to build correctly if gcc is not installed first
    609                 echo ">>> Installing GCC"
    610                 install_pkg
    611 
    612                 $RUNNER build_libgcc
    613         fi
    614 
    615         if $BUILD_GDB ; then
    616                 $RUNNER build_gdb
    617         fi
    618 
    619         echo ">>> Installing all files"
    620         install_pkg
    621 
    622         link_clang
    623 }
    624531
    625532case "$1" in
     
    629536                ;;
    630537        amd64|arm32|arm64|ia32|ia64|mips32|mips32eb|ppc32|riscv64|sparc64)
    631                 PLATFORM="$1"
    632                 everything run_one
     538                prepare
     539                build_target "$1"
    633540                ;;
    634541        "all")
    635                 everything run_all
     542                prepare
     543                build_target "amd64"
     544                build_target "arm32"
     545                build_target "arm64"
     546                build_target "ia32"
     547                build_target "ia64"
     548                build_target "mips32"
     549                build_target "mips32eb"
     550                build_target "ppc32"
     551                build_target "riscv64"
     552                build_target "sparc64"
     553                ;;
     554        "essential")
     555                prepare
     556                build_target "amd64"
     557                build_target "arm32"
     558                build_target "arm64"
     559                build_target "ia32"
     560                build_target "ia64"
     561                build_target "mips32"
     562                build_target "mips32eb"
     563                build_target "ppc32"
     564                build_target "sparc64"
    636565                ;;
    637566        "parallel")
    638                 everything run_parallel
     567                prepare
     568                build_target "amd64" &
     569                build_target "arm32" &
     570                build_target "arm64" &
     571                build_target "ia32" &
     572                build_target "ia64" &
     573                build_target "mips32" &
     574                build_target "mips32eb" &
     575                build_target "ppc32" &
     576                build_target "riscv64" &
     577                build_target "sparc64" &
     578                wait
    639579                ;;
    640580        "2-way")
    641                 everything run_2way
     581                prepare
     582                build_target "amd64" &
     583                build_target "arm32" &
     584                wait
     585
     586                build_target "arm64" &
     587                build_target "ia32" &
     588                wait
     589
     590                build_target "ia64" &
     591                build_target "mips32" &
     592                wait
     593
     594                build_target "mips32eb" &
     595                build_target "ppc32" &
     596                wait
     597
     598                build_target "riscv64" &
     599                build_target "sparc64" &
     600                wait
    642601                ;;
    643602        *)
Note: See TracChangeset for help on using the changeset viewer.