summaryrefslogtreecommitdiffstats
path: root/gcc48-specs-cygwin.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gcc48-specs-cygwin.patch')
-rw-r--r--gcc48-specs-cygwin.patch317
1 files changed, 0 insertions, 317 deletions
diff --git a/gcc48-specs-cygwin.patch b/gcc48-specs-cygwin.patch
deleted file mode 100644
index f29eec6..0000000
--- a/gcc48-specs-cygwin.patch
+++ /dev/null
@@ -1,317 +0,0 @@
---- gcc/config.build (revision 196430)
-+++ gcc/config.build (working copy)
-@@ -60,7 +60,7 @@
- # IBM 360/370/390 Architecture
- build_xm_defines='FATAL_EXIT_CODE=12'
- ;;
-- i[34567]86-*-cygwin* )
-+ i[34567]86-*-cygwin* | x86_64-*-cygwin* )
- build_xm_file=i386/xm-cygwin.h
- build_exeext=.exe
- ;;
---- gcc/config.gcc 2012-09-12 04:03:54.000000000 -0500
-+++ gcc/config.gcc 2013-03-11 03:41:03.674656700 -0500
-@@ -1438,15 +1438,30 @@ i[34567]86-*-cygwin*)
- xm_file=i386/xm-cygwin.h
- tmake_file="${tmake_file} i386/t-cygming t-slibgcc"
- target_gtfiles="\$(srcdir)/config/i386/winnt.c"
-- extra_options="${extra_options} i386/cygming.opt"
-+ extra_options="${extra_options} i386/cygming.opt i386/cygwin.opt"
- extra_objs="winnt.o winnt-stubs.o"
- c_target_objs="${c_target_objs} msformat-c.o"
- cxx_target_objs="${cxx_target_objs} winnt-cxx.o msformat-c.o"
- if test x$enable_threads = xyes; then
- thread_file='posix'
- fi
- use_gcc_stdint=wrap
- ;;
-+x86_64-*-cygwin*)
-+ need_64bit_isa=yes
-+ tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/cygwin.h i386/cygwin-w64.h i386/cygwin-stdint.h"
-+ xm_file=i386/xm-cygwin.h
-+ tmake_file="${tmake_file} i386/t-cygming t-slibgcc i386/t-cygwin-w64"
-+ target_gtfiles="\$(srcdir)/config/i386/winnt.c"
-+ extra_options="${extra_options} i386/cygming.opt i386/cygwin.opt"
-+ extra_objs="winnt.o winnt-stubs.o"
-+ c_target_objs="${c_target_objs} msformat-c.o"
-+ cxx_target_objs="${cxx_target_objs} winnt-cxx.o msformat-c.o"
-+ if test x$enable_threads = xyes; then
-+ thread_file='posix'
-+ fi
-+ use_gcc_stdint=wrap
-+ ;;
- i[34567]86-*-mingw* | x86_64-*-mingw*)
- tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h"
- xm_file=i386/xm-mingw32.h
-@@ -3699,7 +3715,9 @@
- ;;
- i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
- ;;
-- i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*)
-+ i[34567]86-*-cygwin* | x86_64-*-cygwin*)
-+ ;;
-+ i[34567]86-*-mingw* | x86_64-*-mingw*)
- ;;
- i[34567]86-*-freebsd* | x86_64-*-freebsd*)
- ;;
---- gcc/config.host (revision 196430)
-+++ gcc/config.host (working copy)
-@@ -214,7 +214,7 @@
- ;;
- esac
- ;;
-- i[34567]86-*-cygwin*)
-+ i[34567]86-*-cygwin* | x86_64-*-cygwin*)
- host_xm_file=i386/xm-cygwin.h
- out_host_hook_obj=host-cygwin.o
- host_xmake_file="${host_xmake_file} i386/x-cygwin"
---- gcc/config/i386/cygwin-stdint.h (revision 196430)
-+++ gcc/config/i386/cygwin-stdint.h (working copy)
-@@ -24,39 +24,39 @@
- #define INT8_TYPE "signed char"
- #define INT16_TYPE "short int"
- #define INT32_TYPE "int"
--#define INT64_TYPE "long long int"
-+#define INT64_TYPE (TARGET_64BIT ? "long int" : "long long int")
-
- #define UINT8_TYPE "unsigned char"
- #define UINT16_TYPE "short unsigned int"
- #define UINT32_TYPE "unsigned int"
--#define UINT64_TYPE "long long unsigned int"
-+#define UINT64_TYPE (TARGET_64BIT ? "long unsigned int" : "long long unsigned int")
-
- /* Minimum-width integer types */
-
- #define INT_LEAST8_TYPE "signed char"
- #define INT_LEAST16_TYPE "short int"
- #define INT_LEAST32_TYPE "int"
--#define INT_LEAST64_TYPE "long long int"
-+#define INT_LEAST64_TYPE (TARGET_64BIT ? "long int" : "long long int")
-
- #define UINT_LEAST8_TYPE "unsigned char"
- #define UINT_LEAST16_TYPE "short unsigned int"
- #define UINT_LEAST32_TYPE "unsigned int"
--#define UINT_LEAST64_TYPE "long long unsigned int"
-+#define UINT_LEAST64_TYPE (TARGET_64BIT ? "long unsigned int" : "long long unsigned int")
-
- /* Fastest minimum-width integer types */
-
- #define INT_FAST8_TYPE "signed char"
--#define INT_FAST16_TYPE "int"
--#define INT_FAST32_TYPE "int"
--#define INT_FAST64_TYPE "long long int"
-+#define INT_FAST16_TYPE (TARGET_64BIT ? "long int" : "int")
-+#define INT_FAST32_TYPE (TARGET_64BIT ? "long int" : "int")
-+#define INT_FAST64_TYPE (TARGET_64BIT ? "long int" : "long long int")
-
- #define UINT_FAST8_TYPE "unsigned char"
--#define UINT_FAST16_TYPE "unsigned int"
--#define UINT_FAST32_TYPE "unsigned int"
--#define UINT_FAST64_TYPE "long long unsigned int"
-+#define UINT_FAST16_TYPE (TARGET_64BIT ? "long unsigned int" : "unsigned int")
-+#define UINT_FAST32_TYPE (TARGET_64BIT ? "long unsigned int" : "unsigned int")
-+#define UINT_FAST64_TYPE (TARGET_64BIT ? "long unsigned int" : "long long unsigned int")
-
- /* Integer types capable of holding object pointers */
-
--#define INTPTR_TYPE "int"
--#define UINTPTR_TYPE "unsigned int"
-+#define INTPTR_TYPE (TARGET_64BIT ? "long int" : "int")
-+#define UINTPTR_TYPE (TARGET_64BIT ? "long unsigned int" : "unsigned int")
-
---- gcc/config/i386/cygwin.h (revision 196430)
-+++ gcc/config/i386/cygwin.h (working copy)
-@@ -18,11 +18,20 @@
- along with GCC; see the file COPYING3. If not see
- <http://www.gnu.org/licenses/>. */
-
--#define EXTRA_OS_CPP_BUILTINS() /* Nothing. */
-+#define EXTRA_OS_CPP_BUILTINS() \
-+ do \
-+ { \
-+ builtin_define ("__CYGWIN__"); \
-+ if (!TARGET_64BIT) \
-+ builtin_define ("__CYGWIN32__"); \
-+ builtin_define ("__unix__"); \
-+ builtin_define ("__unix"); \
-+ } \
-+ while (0)
-
- #undef CPP_SPEC
- #define CPP_SPEC "%(cpp_cpu) %{posix:-D_POSIX_SOURCE} \
-- -D__CYGWIN32__ -D__CYGWIN__ %{!ansi:-Dunix} -D__unix__ -D__unix \
-+ %{!ansi:-Dunix} %{pthread: } \
- %{mwin32:-DWIN32 -D_WIN32 -D__WIN32 -D__WIN32__ %{!ansi:-DWINNT}} \
- %{!nostdinc:%{!mno-win32:-idirafter ../include/w32api%s -idirafter ../../include/w32api%s}}\
- "
-@@ -71,12 +80,14 @@
- #undef LIB_SPEC
- #define LIB_SPEC "\
- %{pg:-lgmon} \
-+ %{pthread: } \
- -lcygwin \
- %{mwindows:-lgdi32 -lcomdlg32} \
- -ladvapi32 -lshell32 -luser32 -lkernel32"
-
- /* To implement C++ function replacement we always wrap the cxx
- malloc-like operators. See N2800 #17.6.4.6 [replacement.functions] */
-+#undef CXX_WRAP_SPEC_LIST
- #define CXX_WRAP_SPEC_LIST " \
- --wrap _Znwj \
- --wrap _Znaj \
-@@ -115,7 +126,9 @@
- %{shared: --shared} %{mdll:--dll} \
- %{static:-Bstatic} %{!static:-Bdynamic} \
- %{shared|mdll: --enable-auto-image-base -e __cygwin_dll_entry@12} \
-- --dll-search-prefix=cyg -tsaware"
-+ --dll-search-prefix=cyg \
-+ %{rdynamic: --export-all-symbols} \
-+ %{!shared: %{!mdll: --large-address-aware --tsaware}}"
-
- /* Binutils does not handle weak symbols from dlls correctly. For now,
- do not use them unnecessarily in gthr-posix.h. */
---- gcc/config/i386/cygwin.opt 1969-12-31 18:00:00.000000000 -0600
-+++ gcc/config/i386/cygwin.opt 2013-03-11 03:36:36.556378400 -0500
-@@ -0,0 +1,27 @@
-+; Cygwin-specific options.
-+
-+; Copyright (C) 2005, 2007, 2009, 2010, 2011 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/>.
-+
-+pthread
-+Driver
-+
-+rdynamic
-+Driver
-+
-+; Retain blank line above
---- gcc/config/i386/cygwin-w64.h (revision 0)
-+++ gcc/config/i386/cygwin-w64.h (working copy)
-@@ -0,0 +1,84 @@
-+/* Operating system specific defines to be used when targeting GCC for
-+ hosting on Windows 32/64 via Cygwin runtime, using GNU tools and
-+ the Windows API Library.
-+ Copyright (C) 2013 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/>. */
-+
-+/* Enable multilib. */
-+
-+#undef ASM_SPEC
-+#define ASM_SPEC "%{m32:--32} %{m64:--64}"
-+
-+/* To implement C++ function replacement we always wrap the cxx
-+ malloc-like operators. See N2800 #17.6.4.6 [replacement.functions] */
-+#undef CXX_WRAP_SPEC_LIST
-+#define CXX_WRAP_SPEC_LIST " \
-+ --wrap _Znwm \
-+ --wrap _Znam \
-+ --wrap _ZdlPv \
-+ --wrap _ZdaPv \
-+ --wrap _ZnwmRKSt9nothrow_t \
-+ --wrap _ZnamRKSt9nothrow_t \
-+ --wrap _ZdlPvRKSt9nothrow_t \
-+ --wrap _ZdaPvRKSt9nothrow_t \
-+"
-+
-+#undef SPEC_32
-+#undef SPEC_64
-+#define SPEC_32 "m32"
-+#define SPEC_64 "!m32"
-+
-+#undef SUB_LINK_ENTRY32
-+#undef SUB_LINK_ENTRY64
-+#define SUB_LINK_ENTRY32 "-e __cygwin_dll_entry@12"
-+#define SUB_LINK_ENTRY64 "-e _cygwin_dll_entry"
-+
-+#undef SUB_LINK_SPEC
-+#undef SUB_LINK_ENTRY
-+#define SUB_LINK_SPEC "%{" SPEC_64 ":-m i386pep} %{" SPEC_32 ":-m i386pe}"
-+#define SUB_LINK_ENTRY "%{" SPEC_64 ":" SUB_LINK_ENTRY64 "} %{" SPEC_32 ":" SUB_LINK_ENTRY32 "}"
-+
-+#undef MULTILIB_DEFAULTS
-+#define MULTILIB_DEFAULTS { "m64" }
-+
-+#undef LINK_SPEC
-+#define LINK_SPEC SUB_LINK_SPEC "\
-+ %{mwindows:--subsystem windows} \
-+ %{mconsole:--subsystem console} \
-+ " CXX_WRAP_SPEC " \
-+ %{shared: %{mdll: %eshared and mdll are not compatible}} \
-+ %{shared: --shared} %{mdll:--dll} \
-+ %{static:-Bstatic} %{!static:-Bdynamic} \
-+ %{shared|mdll: " SUB_LINK_ENTRY " --enable-auto-image-base} \
-+ %(shared_libgcc_undefs) \
-+ --dll-search-prefix=cyg \
-+ %{rdynamic: --export-all-symbols} \
-+ %{!shared: %{!mdll: %{" SPEC_32 ":--large-address-aware} --tsaware}}"
-+
-+/* Cygwin64 will have a 64-bit long type. */
-+#undef LONG_TYPE_SIZE
-+#define LONG_TYPE_SIZE (TARGET_64BIT ? 64 : 32)
-+
-+/* Override default "long long unsigned int" from cygming.h. */
-+#undef SIZE_TYPE
-+#define SIZE_TYPE (TARGET_64BIT ? "long unsigned int" : "unsigned int")
-+#undef PTRDIFF_TYPE
-+#define PTRDIFF_TYPE (TARGET_64BIT ? "long int" : "int")
-+
-+#undef LIBGCC_SONAME
-+#define LIBGCC_SONAME "cyggcc_s-seh-1.dll"
---- gcc/config/i386/t-cygwin-w64 (revision 0)
-+++ gcc/config/i386/t-cygwin-w64 (working copy)
-@@ -0,0 +1,3 @@
-+MULTILIB_OPTIONS = m64/m32
-+MULTILIB_DIRNAMES = 64
-+MULTILIB_OSDIRNAMES = ../lib ../lib32
---- gcc/configure.ac (revision 196430)
-+++ gcc/configure.ac (working copy)
-@@ -3611,7 +3611,7 @@
- # wrappers to aid in interposing and redirecting operators new, delete,
- # etc., as per n2800 #17.6.4.6 [replacement.functions]. Check if we
- # are configuring for a version of Cygwin that exports the wrappers.
-- if test x$host = x$target; then
-+ if test x$host = x$target && test x$host_cpu = xi686; then
- AC_CHECK_FUNC([__wrap__Znaj],[gcc_ac_cygwin_dll_wrappers=yes],[gcc_ac_cygwin_dll_wrappers=no])
- else
- # Can't check presence of libc functions during cross-compile, so
---- gcc/configure (revision 196430)
-+++ gcc/configure (working copy)
-@@ -24261,7 +24261,7 @@
- # wrappers to aid in interposing and redirecting operators new, delete,
- # etc., as per n2800 #17.6.4.6 [replacement.functions]. Check if we
- # are configuring for a version of Cygwin that exports the wrappers.
-- if test x$host = x$target; then
-+ if test x$host = x$target && test x$host_cpu = xi686; then
- ac_fn_c_check_func "$LINENO" "__wrap__Znaj" "ac_cv_func___wrap__Znaj"
- if test "x$ac_cv_func___wrap__Znaj" = x""yes; then :
- gcc_ac_cygwin_dll_wrappers=yes