1.1 --- a/scripts/crosstool-NG.sh.in Tue Jan 25 20:31:16 2011 +0100
1.2 +++ b/scripts/crosstool-NG.sh.in Tue Jan 25 21:59:03 2011 +0100
1.3 @@ -295,6 +295,7 @@
1.4 CT_SYSROOT_DIR="${CT_PREFIX_DIR}/${CT_TARGET}/${CT_SYSROOT_DIR_PREFIX}/${CT_SYSROOT_NAME}"
1.5 CT_DEBUGROOT_DIR="${CT_PREFIX_DIR}/${CT_TARGET}/${CT_SYSROOT_DIR_PREFIX}/debug-root"
1.6 CT_HEADERS_DIR="${CT_SYSROOT_DIR}/usr/include"
1.7 + CT_SanitiseVarDir CT_SYSROOT_DIR CT_DEBUGROOT_DIR CT_HEADERS_DIR
1.8 BINUTILS_SYSROOT_ARG="--with-sysroot=${CT_SYSROOT_DIR}"
1.9 CC_CORE_SYSROOT_ARG="--with-sysroot=${CT_SYSROOT_DIR}"
1.10 CC_SYSROOT_ARG="--with-sysroot=${CT_SYSROOT_DIR}"
1.11 @@ -308,6 +309,7 @@
1.12 CT_SYSROOT_DIR="${CT_PREFIX_DIR}/${CT_TARGET}"
1.13 CT_DEBUGROOT_DIR="${CT_SYSROOT_DIR}"
1.14 CT_HEADERS_DIR="${CT_SYSROOT_DIR}/include"
1.15 + CT_SanitiseVarDir CT_SYSROOT_DIR CT_DEBUGROOT_DIR CT_HEADERS_DIR
1.16 # hack! Always use --with-sysroot for binutils.
1.17 # binutils 2.14 and later obey it, older binutils ignore it.
1.18 # Lets you build a working 32->64 bit cross gcc
2.1 --- a/scripts/functions Tue Jan 25 20:31:16 2011 +0100
2.2 +++ b/scripts/functions Tue Jan 25 21:59:03 2011 +0100
2.3 @@ -159,6 +159,24 @@
2.4 PATH="${new}"
2.5 }
2.6
2.7 +# Sanitise the directory name contained in the variable passed as argument:
2.8 +# - remove duplicate /
2.9 +# Usage: CT_SanitiseVarDir CT_PREFIX_DIR
2.10 +CT_SanitiseVarDir() {
2.11 + local var
2.12 + local old_dir
2.13 + local new_dir
2.14 +
2.15 + for var in "$@"; do
2.16 + eval "old_dir=\"\${${var}}\""
2.17 + new_dir="$( printf "${old_dir}" \
2.18 + |sed -r -e 's:/+:/:g;' \
2.19 + )"
2.20 + eval "${var}=\"${new_dir}\""
2.21 + CT_DoLog DEBUG "Sanitised '${var}': '${old_dir}' -> '${new_dir}'"
2.22 + done
2.23 +}
2.24 +
2.25 # Abort the execution with an error message
2.26 # Usage: CT_Abort <message>
2.27 CT_Abort() {