diff options
author | Alexey Neyman <stilor@att.net> | 2016-12-05 00:05:56 -0800 |
---|---|---|
committer | Alexey Neyman <stilor@att.net> | 2016-12-06 10:33:20 -0800 |
commit | 7e44983388a85ba2ef721b302f97b8accad23ba6 (patch) | |
tree | 4ad81b0fed8e92dc49061d11d1f67ff7be0b1b2d | |
parent | 25f5b82d2e76971aa1c679c347fb3d3493f426b8 (diff) | |
download | crosstool-ng-7e44983388a85ba2ef721b302f97b8accad23ba6.tar.gz crosstool-ng-7e44983388a85ba2ef721b302f97b8accad23ba6.tar.bz2 crosstool-ng-7e44983388a85ba2ef721b302f97b8accad23ba6.zip |
Work around Cygwin idiosyncrasy.
Cygwin doesn't like directory names ending with a dot, e.g. "multilib_."
Signed-off-by: Alexey Neyman <stilor@att.net>
-rw-r--r-- | scripts/functions | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/scripts/functions b/scripts/functions index efdf3045..6fc17935 100644 --- a/scripts/functions +++ b/scripts/functions @@ -1574,6 +1574,7 @@ CT_IterateMultilibs() { local -a multilibs local multi_dir multi_os_dir multi_root multi_flags multi_index multi_target local root_suffix + local dir_postfix # Name used internally below if [ "${prefix}" = "sysroot-check" ]; then @@ -1655,7 +1656,12 @@ CT_IterateMultilibs() { multi_os_dir=. fi - CT_mkdir_pushd "${prefix}_${multi_dir//\//_}" + # Brain-dead Cygwin hack: Cygwin cannot run a binary if there is a directory + # component in the path that ends with a dot. Unfortunately, that's the case + # for the default library name with GCC. + dir_postfix=_${multi_dir//\//_} + dir_postfix=${dir_postfix%_.} + CT_mkdir_pushd "${prefix}${dir_postfix}" $func multi_dir="${multi_dir}" \ multi_os_dir="${multi_os_dir}" \ multi_flags="${multi_flags}" \ |