components/gcc49/patches/000-sol2.h.patch
changeset 6923 338aea22bf22
parent 6922 499ba999c1ee
child 6924 e8aaad6b5075
--- a/components/gcc49/patches/000-sol2.h.patch	Tue Jul 05 09:31:58 2016 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,198 +0,0 @@
-# Stefan Teleman <[email protected]>
-# We need to raise a number of macros depending on which Language
-# Standard we are compiling for.
-# We also need to link in specific *.o's to the Language Standard
-# we are compiling for.
---- gcc/config/sol2.h	2014-05-28 04:37:50.000000000 -0700
-+++ gcc/config/sol2.h	2015-12-17 10:34:30.939353421 -0800
-@@ -89,11 +89,80 @@
- 	   library.  */					\
- 	if (c_dialect_cxx ())				\
- 	  {						\
-+        if ((cxx_dialect == cxx98) || (cxx_dialect == cxx03))  \
-+        { \
-+          builtin_define ("__STDC_VERSION__=199409L");         \
-+          builtin_define ("_XOPEN_SOURCE=500");                \
-+          builtin_define ("_XPG5=1");                          \
-+        } \
-+        else if (cxx_dialect == cxx11)                         \
-+        { \
-+          builtin_define ("__STDC_VERSION__=199901L");         \
-+          builtin_define ("_STDC_C99=1");                      \
-+          builtin_define ("__C99FEATURES__=1");                \
-+          builtin_define ("__XPG7_THREAD_MODEL__=1");          \
-+          builtin_define ("_XOPEN_SOURCE=700");                \
-+          builtin_define ("_XPG6=1");                          \
-+          builtin_define ("__STDC_ISO_10646__=201011L");       \
-+          builtin_define ("__STDC_MB_MIGHT_NEQ_WC__=1");       \
-+          builtin_define ("__STDCPP_STRICT_POINTER_SAFETY__=1");  \
-+          builtin_define ("__STDCPP_THREADS__=1");             \
-+        } \
-+        else if ((cxx_dialect > cxx11) || (cxx_dialect == cxx1y)) \
-+        { \
-+          builtin_define ("__STDC_VERSION__=201112L");         \
-+          builtin_define ("_STDC_C99=1");                      \
-+          builtin_define ("_STDC_C11=1");                      \
-+          builtin_define ("__C99FEATURES__=1");                \
-+          builtin_define ("__XPG7_THREAD_MODEL__=1");          \
-+          builtin_define ("_XOPEN_SOURCE=700");                \
-+          builtin_define ("_XPG7=1");                          \
-+          builtin_define ("__STDC_ISO_10646__=201011L");       \
-+          builtin_define ("__STDC_MB_MIGHT_NEQ_WC__=1");       \
-+          builtin_define ("__STDCPP_STRICT_POINTER_SAFETY__=1");  \
-+          builtin_define ("__STDC_LIB_EXT1__=201112L");        \
-+          builtin_define ("__STDCPP_THREADS__=1");             \
-+        } \
-+        else \
-+        { \
- 	    builtin_define ("__STDC_VERSION__=199901L");\
- 	    builtin_define ("_XOPEN_SOURCE=600");	\
-+            builtin_define ("_XPG6=1");                         \
-+        } \
- 	    builtin_define ("_LARGEFILE_SOURCE=1");	\
- 	    builtin_define ("_LARGEFILE64_SOURCE=1");	\
--	    builtin_define ("__EXTENSIONS__");		\
-+        builtin_define ("_FILE_OFFSET_BITS=64");              \
-+        builtin_define ("__EXTENSIONS__=1");                  \
-+        builtin_define ("_REENTRANT=1");                      \
-+      }                                                       \
-+      if (c_language == clk_c)                                \
-+      { \
-+        builtin_define ("_LARGEFILE_SOURCE=1");	\
-+        builtin_define ("_LARGEFILE64_SOURCE=1");	\
-+        builtin_define ("_FILE_OFFSET_BITS=64");              \
-+        builtin_define ("_REENTRANT=1");                      \
-+        builtin_define ("__EXTENSIONS__=1");                  \
-+        if (flag_isoc11 == 1)                                 \
-+        { \
-+          builtin_define ("_STDC_C11=1");                     \
-+          builtin_define ("__STDC_ISO_10646__=201011L");      \
-+          builtin_define ("__STDC_MB_MIGHT_NEQ_WC__=1");      \
-+          builtin_define ("__STDC_ANALYZABLE=1");             \
-+          builtin_define ("__STDC_IEC_559__=1");              \
-+          builtin_define ("__STDC_IEC_559_COMPLEX__=1");      \
-+          builtin_define ("__STDC_LIB_EXT1__=201112L");       \
-+          builtin_define ("__XPG7_THREAD_MODEL__=1");         \
-+          builtin_define ("_XOPEN_SOURCE=700");               \
-+        } \
-+        else if (flag_isoc99 == 1)                            \
-+        { \
-+          builtin_define ("__C99FEATURES__=1");               \
-+          if (flag_isoc11 == 0)                               \
-+          { \
-+            builtin_define ("_STDC_C99=1");                   \
-+            builtin_define ("_XOPEN_SOURCE=600");             \
-+          } \
-+        } \
- 	  }						\
- 	TARGET_SUB_OS_CPP_BUILTINS();			\
-     } while (0)
-@@ -109,7 +178,12 @@
- #define ASM_SPEC_BASE \
- "%{v:-V} %{Qy:} %{!Qn:-Qy} %{Ym,*} -s %(asm_cpu)"
- 
-+/* GAS wants -KPIC, Sun as wants -K PIC */
-+#ifdef USE_GAS
- #define ASM_PIC_SPEC " %{fpic|fpie|fPIC|fPIE:-K PIC}"
-+#else
-+#define ASM_PIC_SPEC " %{fpic|fpie|fPIC|fPIE:-K PIC}"
-+#endif
- 
- #undef LIB_SPEC
- #define LIB_SPEC \
-@@ -127,8 +201,62 @@
- #endif
- 
- #undef STARTFILE_ARCH32_SPEC
--#define STARTFILE_ARCH32_SPEC "%{ansi:values-Xc.o%s} \
--			    %{!ansi:values-Xa.o%s}"
-+#define STARTFILE_ARCH32_SPEC "%{std=c++0x:values-Xc.o%s} \
-+  %{std=c++0x:values-xpg6.o%s} \
-+  %{std=c++14:values-Xc.o%s} \
-+  %{std=c++14:values-xpg6.o%s} \
-+  %{std=c++11:values-Xc.o%s} \
-+  %{std=c++11:values-xpg6.o%s} \
-+  %{std=c11:values-Xc.o%s} \
-+  %{std=c11:values-xpg6.o%s} \
-+  %{std=c1x:values-Xc.o%s} \
-+  %{std=c1x:values-xpg6.o%s} \
-+  %{std=c99:values-Xc.o%s} \
-+  %{std=c99:values-xpg6.o%s} \
-+  %{std=c9x:values-Xc.o%s} \
-+  %{std=c9x:values-xpg6.o%s} \
-+  %{std=gnu++0x:values-Xc.o%s} \
-+  %{std=gnu++0x:values-xpg6.o%s} \
-+  %{std=gnu++14:values-Xc.o%s} \
-+  %{std=gnu++14:values-xpg6.o%s} \
-+  %{std=gnu++11:values-Xc.o%s} \
-+  %{std=gnu++11:values-xpg6.o%s} \
-+  %{std=gnu11:values-Xc.o%s} \
-+  %{std=gnu11:values-xpg6.o%s} \
-+  %{std=gnu1x:values-Xc.o%s} \
-+  %{std=gnu1x:values-xpg6.o%s} \
-+  %{std=gnu99:values-Xc.o%s} \
-+  %{std=gnu99:values-xpg6.o%s} \
-+  %{std=gnu9x:values-Xc.o%s} \
-+  %{std=gnu9x:values-xpg6.o%s} \
-+  %{std=f2003:values-Xc.o%s} \
-+  %{std=f2003:values-xpg6.o%s} \
-+  %{std=f2008:values-Xc.o%s} \
-+  %{std=f2008:values-xpg6.o%s} \
-+  %{std=f2008ts:values-Xc.o%s} \
-+  %{std=f2008ts:values-xpg6.o%s} \
-+  %{std=f95:values-Xa.o%s} \
-+  %{std=f95:values-xpg4.o%s} \
-+  %{std=gnu:values-Xa.o%s} \
-+  %{std=gnu:values-xpg4.o%s} \
-+  %{std=legacy:values-Xa.o%s} \
-+  %{std=legacy:values-xpg4.o%s} \
-+  %{std=c++03:values-Xa.o%s} \
-+  %{std=c++03:values-xpg4.o%s} \
-+  %{std=c++98:values-Xa.o%s} \
-+  %{std=c++98:values-xpg4.o%s} \
-+  %{std=c89:values-Xa.o%s} \
-+  %{std=c89:values-xpg4.o%s} \
-+  %{std=c90:values-Xa.o%s} \
-+  %{std=c90:values-xpg4.o%s} \
-+  %{std=gnu++03:values-Xa.o%s} \
-+  %{std=gnu++03:values-xpg4.o%s} \
-+  %{std=gnu++98:values-Xa.o%s} \
-+  %{std=gnu++98:values-xpg4.o%s} \
-+  %{std=gnu89:values-Xa.o%s} \
-+  %{std=gnu89:values-xpg4.o%s} \
-+  %{std=gnu90:values-Xa.o%s} \
-+  %{std=gnu90:values-xpg4.o%s}"
- 
- #undef STARTFILE_ARCH_SPEC
- #define STARTFILE_ARCH_SPEC STARTFILE_ARCH32_SPEC
-@@ -154,8 +282,8 @@
-   "%{G:-G} \
-    %{YP,*} \
-    %{R*} \
--   %{!YP,*:%{p|pg:-Y P,%R/usr/ccs/lib/libp:%R/usr/lib/libp:%R/usr/ccs/lib:%R/lib:%R/usr/lib} \
--	   %{!p:%{!pg:-Y P,%R/usr/ccs/lib:%R/lib:%R/usr/lib}}}"
-+   %{!YP,*:%{p|pg:-Y P,%R/usr/lib/libp:%R/lib:%R/usr/lib} \
-+     %{!p:%{!pg:-Y P,%R/lib:%R/usr/lib}}}"
- 
- #undef LINK_ARCH32_SPEC
- #define LINK_ARCH32_SPEC LINK_ARCH32_SPEC_BASE
-@@ -191,6 +319,10 @@
- #define LINK_CLEARCAP_SPEC ""
- #endif
- 
-+/*
-+ * Change -z textwarn to -z text after clearing that [-fpie|-fPIE]
-+ * no longer generates any text relocation warnings.
-+ */
- #undef  LINK_SPEC
- #define LINK_SPEC \
-   "%{h*} %{v:-V} \
-@@ -199,6 +331,8 @@
-    %{shared:-G -dy %{!mimpure-text:-z text}} " \
-    LINK_LIBGCC_MAPFILE_SPEC LINK_CLEARCAP_SPEC " \
-    %{symbolic:-Bsymbolic -G -dy -z text} \
-+   %{fpie:-Qy -z direct -z textwarn -z type=pie -z aslr=enable} \
-+   %{fPIE:-Qy -z direct -z textwarn -z type=pie -z aslr=enable} \
-    %(link_arch) \
-    %{Qy:} %{!Qn:-Qy}"
-