configure.ac (--enable-mingw-wildcard): Add new configurable feature.
authorThomas Preud'homme <thomas.preudhomme@arm.com>
Thu, 4 May 2017 11:02:08 +0000 (11:02 +0000)
committerJonathan Yong <jyong@gcc.gnu.org>
Thu, 4 May 2017 11:02:08 +0000 (11:02 +0000)
2017-05-04  Thomas Preud'homme  <thomas.preudhomme@arm.com>

* configure.ac (--enable-mingw-wildcard): Add new configurable feature.
* configure: Regenerate.
* config.in: Regenerate.
* config/i386/driver-mingw32.c: new file.
* config/i386/x-mingw32: Add rule to build driver-mingw32.o.
* config.host: Link driver-mingw32.o on MinGW host.
* doc/install.texi: Document new --enable-mingw-wildcard configure
option.

From-SVN: r247588

gcc/ChangeLog
gcc/config.host
gcc/config.in
gcc/config/i386/driver-mingw32.c [new file with mode: 0644]
gcc/config/i386/x-mingw32
gcc/configure
gcc/configure.ac

index 84c1f68574408dbffa2b3afd726d865e3fdaf56c..9791c007345b48e9f141afe256bd3f420ccc7987 100644 (file)
@@ -1,3 +1,14 @@
+2017-05-04  Thomas Preud'homme  <thomas.preudhomme@arm.com>
+
+       * configure.ac (--enable-mingw-wildcard): Add new configurable feature.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+       * config/i386/driver-mingw32.c: new file.
+       * config/i386/x-mingw32: Add rule to build driver-mingw32.o.
+       * config.host: Link driver-mingw32.o on MinGW host.
+       * doc/install.texi: Document new --enable-mingw-wildcard configure
+       option.
+
 2017-05-04  Marek Polacek  <polacek@redhat.com>
 
        PR tree-optimization/80612
index 6b28f3033ef92f1f0e09cc41f3a90be05c5e1e43..5e2db5327e3094a19cd29c81ceb1a9e2b11797c9 100644 (file)
@@ -239,6 +239,7 @@ case ${host} in
     host_xmake_file="${host_xmake_file} i386/x-mingw32"
     host_exeext=.exe
     out_host_hook_obj=host-mingw32.o
+    host_extra_gcc_objs="${host_extra_gcc_objs} driver-mingw32.o"
     host_lto_plugin_soname=liblto_plugin-0.dll
     ;;
   x86_64-*-mingw*)
@@ -247,6 +248,7 @@ case ${host} in
     host_xmake_file="${host_xmake_file} i386/x-mingw32"
     host_exeext=.exe
     out_host_hook_obj=host-mingw32.o
+    host_extra_gcc_objs="${host_extra_gcc_objs} driver-mingw32.o"
     host_lto_plugin_soname=liblto_plugin-0.dll
     ;;
   i[34567]86-*-darwin* | x86_64-*-darwin*)
index d87cb3c9fab0499137702be24085e6f61d7f89e4..bf2aa7b2e7d81a593b72a8d0359864773754ef5d 100644 (file)
 #endif
 
 
+/* Value to set mingw's _dowildcard to. */
+#ifndef USED_FOR_TARGET
+#undef MINGW_DOWILDCARD
+#endif
+
+
 /* Define if host mkdir takes a single argument. */
 #ifndef USED_FOR_TARGET
 #undef MKDIR_TAKES_ONE_ARG
diff --git a/gcc/config/i386/driver-mingw32.c b/gcc/config/i386/driver-mingw32.c
new file mode 100644 (file)
index 0000000..b70363a
--- /dev/null
@@ -0,0 +1,26 @@
+/* Host OS specific configuration for the gcc driver.
+   Copyright (C) 2017 Free Software Foundation, Inc.
+
+This file is part of GCC.
+
+GCC 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 3, or (at your option)
+any later version.
+
+GCC 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 GCC; see the file COPYING3.  If not see
+<http://www.gnu.org/licenses/>.  */
+
+#include "config.h"
+
+/* When defined, force the use (if non null) or not (otherwise) of CLI
+   globbing.  */
+#ifdef MINGW_DOWILDCARD
+int _dowildcard = MINGW_DOWILDCARD;
+#endif
index 6a2d5a5069461b93884fa68ffbcbb13585d24c37..85f2793e5e934b6bf5629667578940cf3f172be3 100644 (file)
@@ -29,3 +29,6 @@ host-mingw32.o : $(srcdir)/config/i386/host-mingw32.c $(CONFIG_H) $(SYSTEM_H) \
   coretypes.h hosthooks.h hosthooks-def.h toplev.h $(DIAGNOSTIC_H) $(HOOKS_H)
        $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
                $(srcdir)/config/i386/host-mingw32.c
+
+driver-mingw32.o : $(srcdir)/config/i386/driver-mingw32.c $(CONFIG_H)
+       $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $<
index bde3dd8f77a3b1925d13fe1e8826597d9d3f0a87..c823ffe6290435c41bd8e0e44dfef3934af80983 100755 (executable)
@@ -922,6 +922,7 @@ with_libiconv_prefix
 enable_sjlj_exceptions
 with_gcc_major_version_only
 enable_secureplt
+enable_mingw_wildcard
 enable_leading_mingw64_underscores
 enable_cld
 enable_frame_pointer
@@ -1634,6 +1635,8 @@ Optional Features:
   --enable-sjlj-exceptions
                           arrange to use setjmp/longjmp exception handling
   --enable-secureplt      enable -msecure-plt by default for PowerPC
+  --enable-mingw-wildcard Set whether to expand wildcard on command-line.
+                          Default to platform configuration
   --enable-leading-mingw64-underscores
                           enable leading underscores on 64 bit mingw targets
   --enable-cld            enable -mcld by default for 32bit x86
@@ -11964,6 +11967,21 @@ if test "${enable_secureplt+set}" = set; then :
 fi
 
 
+# Check whether --enable-mingw-wildcard was given.
+if test "${enable_mingw_wildcard+set}" = set; then :
+  enableval=$enable_mingw_wildcard;
+else
+  enable_mingw_wildcard=platform
+fi
+
+if test x"$enable_mingw_wildcard" != xplatform ; then :
+
+cat >>confdefs.h <<_ACEOF
+#define MINGW_DOWILDCARD $(test x"$enable_mingw_wildcard" = xno; echo $?)
+_ACEOF
+
+fi
+
 # Check whether --enable-leading-mingw64-underscores was given.
 if test "${enable_leading_mingw64_underscores+set}" = set; then :
   enableval=$enable_leading_mingw64_underscores;
@@ -18422,7 +18440,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 18425 "configure"
+#line 18443 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -18528,7 +18546,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 18531 "configure"
+#line 18549 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
index 8b6a2ed3e2028b5eee4f968604d5a690dc899d00..acfe9797389643e81cb63ca9a6bf791555dc0acd 100644 (file)
@@ -1811,6 +1811,16 @@ AC_ARG_ENABLE(secureplt,
                [enable -msecure-plt by default for PowerPC])],
 [], [])
 
+AC_ARG_ENABLE(mingw-wildcard,
+[AS_HELP_STRING([--enable-mingw-wildcard],
+               [Set whether to expand wildcard on command-line.
+                Default to platform configuration])],
+[],[enable_mingw_wildcard=platform])
+AS_IF([test x"$enable_mingw_wildcard" != xplatform ],
+      [AC_DEFINE_UNQUOTED(MINGW_DOWILDCARD,
+                $(test x"$enable_mingw_wildcard" = xno; echo $?),
+                [Value to set mingw's _dowildcard to.])])
+
 AC_ARG_ENABLE(leading-mingw64-underscores,
   AS_HELP_STRING([--enable-leading-mingw64-underscores],
                  [enable leading underscores on 64 bit mingw targets]),