diff options
author | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2011-01-25 21:59:03 +0100 |
---|---|---|
committer | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2011-01-25 21:59:03 +0100 |
commit | 8efc6dae8a781e3fc058cda0b49a0a6cfd745bb5 (patch) | |
tree | 4dfc251f7be1bb889d2c0beacd69c72ac68448ef | |
parent | 94be1f470c148afe1b7b2a7e43b886c4ddea2e15 (diff) | |
download | crosstool-ng-8efc6dae8a781e3fc058cda0b49a0a6cfd745bb5.tar.gz crosstool-ng-8efc6dae8a781e3fc058cda0b49a0a6cfd745bb5.tar.bz2 crosstool-ng-8efc6dae8a781e3fc058cda0b49a0a6cfd745bb5.zip |
scripts: fix double slash in paths
Computed paths may contain double slashes.
This is not an issue but it is just ugly to look at.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
-rw-r--r-- | scripts/crosstool-NG.sh.in | 2 | ||||
-rw-r--r-- | scripts/functions | 18 |
2 files changed, 20 insertions, 0 deletions
diff --git a/scripts/crosstool-NG.sh.in b/scripts/crosstool-NG.sh.in index d7dba89d..2fa19949 100644 --- a/scripts/crosstool-NG.sh.in +++ b/scripts/crosstool-NG.sh.in @@ -295,6 +295,7 @@ if [ -z "${CT_RESTART}" ]; then CT_SYSROOT_DIR="${CT_PREFIX_DIR}/${CT_TARGET}/${CT_SYSROOT_DIR_PREFIX}/${CT_SYSROOT_NAME}" CT_DEBUGROOT_DIR="${CT_PREFIX_DIR}/${CT_TARGET}/${CT_SYSROOT_DIR_PREFIX}/debug-root" CT_HEADERS_DIR="${CT_SYSROOT_DIR}/usr/include" + CT_SanitiseVarDir CT_SYSROOT_DIR CT_DEBUGROOT_DIR CT_HEADERS_DIR BINUTILS_SYSROOT_ARG="--with-sysroot=${CT_SYSROOT_DIR}" CC_CORE_SYSROOT_ARG="--with-sysroot=${CT_SYSROOT_DIR}" CC_SYSROOT_ARG="--with-sysroot=${CT_SYSROOT_DIR}" @@ -308,6 +309,7 @@ if [ -z "${CT_RESTART}" ]; then CT_SYSROOT_DIR="${CT_PREFIX_DIR}/${CT_TARGET}" CT_DEBUGROOT_DIR="${CT_SYSROOT_DIR}" CT_HEADERS_DIR="${CT_SYSROOT_DIR}/include" + CT_SanitiseVarDir CT_SYSROOT_DIR CT_DEBUGROOT_DIR CT_HEADERS_DIR # hack! Always use --with-sysroot for binutils. # binutils 2.14 and later obey it, older binutils ignore it. # Lets you build a working 32->64 bit cross gcc diff --git a/scripts/functions b/scripts/functions index 0bc16f7f..ba92d118 100644 --- a/scripts/functions +++ b/scripts/functions @@ -159,6 +159,24 @@ CT_SanitizePath() { PATH="${new}" } +# Sanitise the directory name contained in the variable passed as argument: +# - remove duplicate / +# Usage: CT_SanitiseVarDir CT_PREFIX_DIR +CT_SanitiseVarDir() { + local var + local old_dir + local new_dir + + for var in "$@"; do + eval "old_dir=\"\${${var}}\"" + new_dir="$( printf "${old_dir}" \ + |sed -r -e 's:/+:/:g;' \ + )" + eval "${var}=\"${new_dir}\"" + CT_DoLog DEBUG "Sanitised '${var}': '${old_dir}' -> '${new_dir}'" + done +} + # Abort the execution with an error message # Usage: CT_Abort <message> CT_Abort() { |