diff options
Diffstat (limited to 't/compile5.sh')
-rwxr-xr-x | t/compile5.sh | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/t/compile5.sh b/t/compile5.sh new file mode 100755 index 000000000..02afca3fd --- /dev/null +++ b/t/compile5.sh @@ -0,0 +1,85 @@ +#! /bin/sh +# Copyright (C) 2010-2012 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Make sure the file name translation in the 'compile' script works +# correctly + +. ./defs || Exit 1 + +get_shell_script compile + +# Use a dummy cl, since cl isn't readily available on all systems +cat >cl <<'END' +#! /bin/sh +echo "$@" +END + +chmod +x ./cl + +cat >>configure.ac << 'END' +AC_CANONICAL_HOST +AC_CONFIG_FILES([check_host], [chmod +x check_host]) +AC_OUTPUT +END + +: >Makefile.am + +# This will be sourced, nor executed. +cat >check_host.in << 'END' +case '@host_os@' in + mingw*) + ;; + *) + skip_ "target OS is not MinGW" + ;; +esac +case @build_os@ in + mingw* | cygwin*) + ;; + *) + winepath -w / \ + || skip_ "not on MinGW or Cygwin, and winepath not available" + ;; +esac +END + +$ACLOCAL +$AUTOCONF +$AUTOMAKE -a +./configure +. ./check_host + +pwd=`pwd` + +# POSIX mandates that the compiler accepts a space between the -I, +# -l and -L options and their respective arguments. Traditionally, +# this should work also without a space. Try both usages. +for sp in '' ' '; do + # Check if "compile cl" transforms absolute file names to + # host format (e.g /somewhere -> c:/msys/1.0/somewhere). + + res=`./compile ./cl -L${sp}"$pwd" | sed -e 's/-link -LIBPATH://'` + + case $res in + ?:[\\/]*) + ;; + *) + Exit 1 + ;; + esac +done + +: |