diff options
Diffstat (limited to 'gcc48-specs-cygwin.patch')
-rw-r--r-- | gcc48-specs-cygwin.patch | 317 |
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 |