cc/gcc: install the core compilers in the build-tools dir
author"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jan 01 17:49:44 2012 +0100 (2012-01-01)
changeset 29240eab838768b1
parent 2923 60f5ceb1b413
child 2925 d99b1adc4402
cc/gcc: install the core compilers in the build-tools dir

There really is no good reason to install the core compilers in their
own places, one for each pass. We can install them with the other
build tools.

Also, this implies that:
- there are fewer directories to save/restore
- there are fewer symlinks to create for binutils
- the PATH is shorter

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
scripts/build/binutils/binutils.sh
scripts/build/binutils/elf2flt.sh
scripts/build/cc/gcc.sh
scripts/crosstool-NG.sh.in
scripts/functions
     1.1 --- a/scripts/build/binutils/binutils.sh	Mon Jan 02 21:38:12 2012 +0100
     1.2 +++ b/scripts/build/binutils/binutils.sh	Sun Jan 01 17:49:44 2012 +0100
     1.3 @@ -134,15 +134,11 @@
     1.4      # are not executable on the build machine.
     1.5      case "${CT_TOOLCHAIN_TYPE}" in
     1.6          cross|native)
     1.7 -            mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin"
     1.8 -            mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin"
     1.9 -            mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin"
    1.10 -            mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin"
    1.11 +            mkdir -p "${CT_BUILDTOOLS_PREFIX_DIR}/${CT_TARGET}/bin"
    1.12 +            mkdir -p "${CT_BUILDTOOLS_PREFIX_DIR}/bin"
    1.13              for t in "${binutils_tools[@]}"; do
    1.14 -                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
    1.15 -                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
    1.16 -                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
    1.17 -                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
    1.18 +                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_BUILDTOOLS_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
    1.19 +                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_BUILDTOOLS_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
    1.20              done 2>&1 |CT_DoLog ALL
    1.21              ;;
    1.22          *)  ;;
     2.1 --- a/scripts/build/binutils/elf2flt.sh	Mon Jan 02 21:38:12 2012 +0100
     2.2 +++ b/scripts/build/binutils/elf2flt.sh	Sun Jan 01 17:49:44 2012 +0100
     2.3 @@ -64,15 +64,11 @@
     2.4      # are not executable on the build machine.
     2.5      case "${CT_TOOLCHAIN_TYPE}" in
     2.6          cross|native)
     2.7 -            mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin"
     2.8 -            mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin"
     2.9 -            mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin"
    2.10 -            mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin"
    2.11 +            mkdir -p "${CT_BUILDTOOLS_PREFIX_DIR}/${CT_TARGET}/bin"
    2.12 +            mkdir -p "${CT_BUILDTOOLS_PREFIX_DIR}/bin"
    2.13              for t in elf2flt flthdr; do
    2.14 -                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
    2.15 -                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
    2.16 -                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
    2.17 -                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
    2.18 +                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_BUILDTOOLS_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
    2.19 +                ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_BUILDTOOLS_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
    2.20              done 2>&1 |CT_DoLog ALL
    2.21              ;;
    2.22          *)  ;;
     3.1 --- a/scripts/build/cc/gcc.sh	Mon Jan 02 21:38:12 2012 +0100
     3.2 +++ b/scripts/build/cc/gcc.sh	Sun Jan 01 17:49:44 2012 +0100
     3.3 @@ -71,7 +71,7 @@
     3.4              core_opts+=( "mode=static" )
     3.5              core_opts+=( "host=${CT_HOST}" )
     3.6              core_opts+=( "complibs=${CT_COMPLIBS_DIR}" )
     3.7 -            core_opts+=( "prefix=${CT_CC_CORE_STATIC_PREFIX_DIR}" )
     3.8 +            core_opts+=( "prefix=${CT_BUILDTOOLS_PREFIX_DIR}" )
     3.9              core_opts+=( "cflags=${CT_CFLAGS_FOR_HOST}" )
    3.10              ;;
    3.11          *)
    3.12 @@ -100,12 +100,12 @@
    3.13      # In case we're NPTL, build the shared core gcc and the target libgcc.
    3.14      # In any other case, build the static core gcc and, if using gcc-4.3+,
    3.15      # also build the target libgcc.
    3.16 +    core_opts+=( "prefix=${CT_BUILDTOOLS_PREFIX_DIR}" )
    3.17      case "${CT_BARE_METAL},${CT_CANADIAN},${CT_THREADS}" in
    3.18          y,*,*)
    3.19              do_core=y
    3.20              core_opts+=( "host=${CT_HOST}" )
    3.21              core_opts+=( "mode=static" )
    3.22 -            core_opts+=( "prefix=${CT_CC_CORE_STATIC_PREFIX_DIR}" )
    3.23              core_opts+=( "complibs=${CT_COMPLIBS_DIR}" )
    3.24              core_opts+=( "cflags=${CT_CFLAGS_FOR_HOST}" )
    3.25              ;;
    3.26 @@ -116,7 +116,6 @@
    3.27              core_opts+=( "host=${CT_HOST}" )
    3.28              core_opts+=( "build_libgcc=yes" )
    3.29              core_opts+=( "complibs=${CT_COMPLIBS_DIR}" )
    3.30 -            core_opts+=( "prefix=${CT_CC_CORE_SHARED_PREFIX_DIR}" )
    3.31              core_opts+=( "cflags=${CT_CFLAGS_FOR_HOST}" )
    3.32              ;;
    3.33          ,,win32)
    3.34 @@ -125,7 +124,6 @@
    3.35              core_opts+=( "host=${CT_HOST}" )
    3.36              core_opts+=( "build_libgcc=yes" )
    3.37              core_opts+=( "complibs=${CT_COMPLIBS_DIR}" )
    3.38 -            core_opts+=( "prefix=${CT_CC_CORE_STATIC_PREFIX_DIR}" )
    3.39              core_opts+=( "cflags=${CT_CFLAGS_FOR_HOST}" )
    3.40              ;;
    3.41          *)
    3.42 @@ -133,7 +131,6 @@
    3.43              core_opts+=( "mode=static" )
    3.44              core_opts+=( "host=${CT_HOST}" )
    3.45              core_opts+=( "complibs=${CT_COMPLIBS_DIR}" )
    3.46 -            core_opts+=( "prefix=${CT_CC_CORE_STATIC_PREFIX_DIR}" )
    3.47              core_opts+=( "cflags=${CT_CFLAGS_FOR_HOST}" )
    3.48              if [ "${CT_CC_GCC_4_3_or_later}" = "y" ]; then
    3.49                  core_opts+=( "build_libgcc=yes" )
     4.1 --- a/scripts/crosstool-NG.sh.in	Mon Jan 02 21:38:12 2012 +0100
     4.2 +++ b/scripts/crosstool-NG.sh.in	Sun Jan 01 17:49:44 2012 +0100
     4.3 @@ -162,11 +162,6 @@
     4.4  # Compute test suite install directory
     4.5  CT_TEST_SUITE_DIR=${CT_INSTALL_DIR}/test-suite
     4.6  
     4.7 -# Note: we'll always install the core compiler in its own directory, so as to
     4.8 -# not mix the two builds: core and final.
     4.9 -CT_CC_CORE_STATIC_PREFIX_DIR="${CT_BUILD_DIR}/${CT_CC}-core-static"
    4.10 -CT_CC_CORE_SHARED_PREFIX_DIR="${CT_BUILD_DIR}/${CT_CC}-core-shared"
    4.11 -
    4.12  # We must ensure that we can restart if asked for!
    4.13  if [ -n "${CT_RESTART}" -a ! -d "${CT_STATE_DIR}"  ]; then
    4.14      CT_DoLog ERROR "You asked to restart a non-restartable build"
    4.15 @@ -239,10 +234,6 @@
    4.16  CT_DoExecLog ALL mkdir -p "${CT_INSTALL_DIR}"
    4.17  CT_DoExecLog ALL mkdir -p "${CT_PREFIX_DIR}"
    4.18  CT_DoExecLog ALL mkdir -p "${CT_COMPLIBS_DIR}"
    4.19 -if [ -z "${CT_CANADIAN}" ]; then
    4.20 -    CT_DoExecLog ALL mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}"
    4.21 -    CT_DoExecLog ALL mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}"
    4.22 -fi
    4.23  
    4.24  # Only create the state dir if asked for a restartable build
    4.25  [ -n "${CT_DEBUG_CT_SAVE_STEPS}" ] && CT_DoExecLog ALL mkdir -p "${CT_STATE_DIR}"
    4.26 @@ -457,13 +448,12 @@
    4.27  
    4.28      # Carefully add paths in the order we want them:
    4.29      #  - first try in ${CT_PREFIX_DIR}/bin
    4.30 -    #  - then try in ${CT_CC_CORE_SHARED_PREFIX_DIR}/bin
    4.31 -    #  - then try in ${CT_CC_CORE_STATIC_PREFIX_DIR}/bin
    4.32 +    #  - then try the buildtools dir
    4.33      #  - fall back to searching user's PATH
    4.34      # Of course, neither cross-native nor canadian can run on BUILD,
    4.35      # so don't add those PATHs in this case...
    4.36      case "${CT_TOOLCHAIN_TYPE}" in
    4.37 -        cross)  export PATH="${CT_BUILDTOOLS_PREFIX_DIR}/bin:${CT_PREFIX_DIR}/bin:${CT_CC_CORE_SHARED_PREFIX_DIR}/bin:${CT_CC_CORE_STATIC_PREFIX_DIR}/bin:${PATH}";;
    4.38 +        cross)  export PATH="${CT_PREFIX_DIR}/bin:${CT_BUILDTOOLS_PREFIX_DIR}/bin:${PATH}";;
    4.39          canadian) export PATH="${CT_BUILDTOOLS_PREFIX_DIR}/bin:${PATH}";;
    4.40          *)  ;;
    4.41      esac
     5.1 --- a/scripts/functions	Mon Jan 02 21:38:12 2012 +0100
     5.2 +++ b/scripts/functions	Sun Jan 01 17:49:44 2012 +0100
     5.3 @@ -1148,8 +1148,6 @@
     5.4      CT_DoTarballIfExists "${CT_BUILDTOOLS_PREFIX_DIR}" "${state_dir}/buildtools_dir"
     5.5      CT_DoTarballIfExists "${CT_COMPLIBS_DIR}" "${state_dir}/complibs_dir"
     5.6      CT_DoTarballIfExists "${CT_CONFIG_DIR}" "${state_dir}/config_dir"
     5.7 -    CT_DoTarballIfExists "${CT_CC_CORE_STATIC_PREFIX_DIR}" "${state_dir}/cc_core_static_prefix_dir"
     5.8 -    CT_DoTarballIfExists "${CT_CC_CORE_SHARED_PREFIX_DIR}" "${state_dir}/cc_core_shared_prefix_dir"
     5.9      CT_DoTarballIfExists "${CT_PREFIX_DIR}" "${state_dir}/prefix_dir" --exclude '*.log'
    5.10  
    5.11      CT_DoLog STATE "  Saving log file"
    5.12 @@ -1180,8 +1178,6 @@
    5.13      CT_DoLog ${CT_LOG_LEVEL_MAX} "Restoring state at step '${state_name}', as requested."
    5.14  
    5.15      CT_DoExtractTarballIfExists "${state_dir}/prefix_dir" "${CT_PREFIX_DIR}"
    5.16 -    CT_DoExtractTarballIfExists "${state_dir}/cc_core_shared_prefix_dir" "${CT_CC_CORE_SHARED_PREFIX_DIR}"
    5.17 -    CT_DoExtractTarballIfExists "${state_dir}/cc_core_static_prefix_dir" "${CT_CC_CORE_STATIC_PREFIX_DIR}"
    5.18      CT_DoExtractTarballIfExists "${state_dir}/config_dir" "${CT_CONFIG_DIR}"
    5.19      CT_DoExtractTarballIfExists "${state_dir}/complibs_dir" "${CT_COMPLIBS_DIR}"
    5.20      CT_DoExtractTarballIfExists "${state_dir}/buildtools_dir" "${CT_BUILDTOOLS_PREFIX_DIR}"