From 7e44983388a85ba2ef721b302f97b8accad23ba6 Mon Sep 17 00:00:00 2001 From: Alexey Neyman Date: Mon, 5 Dec 2016 00:05:56 -0800 Subject: Work around Cygwin idiosyncrasy. Cygwin doesn't like directory names ending with a dot, e.g. "multilib_." Signed-off-by: Alexey Neyman diff --git a/scripts/functions b/scripts/functions index efdf304..6fc1793 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}" \ -- cgit v0.10.2-6-g49f6