components/gcc49/patches/000-sol2.h.patch
author Yiteng Zhang <yiteng.zhang@oracle.com>
Tue, 26 Jan 2016 13:08:18 -0800
changeset 5341 acafdc8d7dfc
parent 5210 f83eefca4ec2
permissions -rw-r--r--
22494009 Python 3 fixes for pybonjour
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     1
# Stefan Teleman <[email protected]>
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     2
# We need to raise a number of macros depending on which Language
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     3
# Standard we are compiling for.
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     4
# We also need to link in specific *.o's to the Language Standard
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     5
# we are compiling for.
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     6
--- gcc/config/sol2.h	2014-05-28 04:37:50.000000000 -0700
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
     7
+++ gcc/config/sol2.h	2015-12-17 10:34:30.939353421 -0800
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
     8
@@ -89,11 +89,80 @@
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     9
 	   library.  */					\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    10
 	if (c_dialect_cxx ())				\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    11
 	  {						\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    12
+        if ((cxx_dialect == cxx98) || (cxx_dialect == cxx03))  \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    13
+        { \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    14
+          builtin_define ("__STDC_VERSION__=199409L");         \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    15
+          builtin_define ("_XOPEN_SOURCE=500");                \
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
    16
+          builtin_define ("_XPG5=1");                          \
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    17
+        } \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    18
+        else if (cxx_dialect == cxx11)                         \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    19
+        { \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    20
+          builtin_define ("__STDC_VERSION__=199901L");         \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    21
+          builtin_define ("_STDC_C99=1");                      \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    22
+          builtin_define ("__C99FEATURES__=1");                \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    23
+          builtin_define ("__XPG7_THREAD_MODEL__=1");          \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    24
+          builtin_define ("_XOPEN_SOURCE=700");                \
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
    25
+          builtin_define ("_XPG6=1");                          \
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    26
+          builtin_define ("__STDC_ISO_10646__=201011L");       \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    27
+          builtin_define ("__STDC_MB_MIGHT_NEQ_WC__=1");       \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    28
+          builtin_define ("__STDCPP_STRICT_POINTER_SAFETY__=1");  \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    29
+          builtin_define ("__STDCPP_THREADS__=1");             \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    30
+        } \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    31
+        else if ((cxx_dialect > cxx11) || (cxx_dialect == cxx1y)) \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    32
+        { \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    33
+          builtin_define ("__STDC_VERSION__=201112L");         \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    34
+          builtin_define ("_STDC_C99=1");                      \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    35
+          builtin_define ("_STDC_C11=1");                      \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    36
+          builtin_define ("__C99FEATURES__=1");                \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    37
+          builtin_define ("__XPG7_THREAD_MODEL__=1");          \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    38
+          builtin_define ("_XOPEN_SOURCE=700");                \
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
    39
+          builtin_define ("_XPG7=1");                          \
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    40
+          builtin_define ("__STDC_ISO_10646__=201011L");       \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    41
+          builtin_define ("__STDC_MB_MIGHT_NEQ_WC__=1");       \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    42
+          builtin_define ("__STDCPP_STRICT_POINTER_SAFETY__=1");  \
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
    43
+          builtin_define ("__STDC_LIB_EXT1__=201112L");        \
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    44
+          builtin_define ("__STDCPP_THREADS__=1");             \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    45
+        } \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    46
+        else \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    47
+        { \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    48
 	    builtin_define ("__STDC_VERSION__=199901L");\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    49
 	    builtin_define ("_XOPEN_SOURCE=600");	\
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
    50
+            builtin_define ("_XPG6=1");                         \
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    51
+        } \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    52
 	    builtin_define ("_LARGEFILE_SOURCE=1");	\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    53
 	    builtin_define ("_LARGEFILE64_SOURCE=1");	\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    54
-	    builtin_define ("__EXTENSIONS__");		\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    55
+        builtin_define ("_FILE_OFFSET_BITS=64");              \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    56
+        builtin_define ("__EXTENSIONS__=1");                  \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    57
+        builtin_define ("_REENTRANT=1");                      \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    58
+      }                                                       \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    59
+      if (c_language == clk_c)                                \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    60
+      { \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    61
+        builtin_define ("_LARGEFILE_SOURCE=1");	\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    62
+        builtin_define ("_LARGEFILE64_SOURCE=1");	\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    63
+        builtin_define ("_FILE_OFFSET_BITS=64");              \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    64
+        builtin_define ("_REENTRANT=1");                      \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    65
+        builtin_define ("__EXTENSIONS__=1");                  \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    66
+        if (flag_isoc11 == 1)                                 \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    67
+        { \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    68
+          builtin_define ("_STDC_C11=1");                     \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    69
+          builtin_define ("__STDC_ISO_10646__=201011L");      \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    70
+          builtin_define ("__STDC_MB_MIGHT_NEQ_WC__=1");      \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    71
+          builtin_define ("__STDC_ANALYZABLE=1");             \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    72
+          builtin_define ("__STDC_IEC_559__=1");              \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    73
+          builtin_define ("__STDC_IEC_559_COMPLEX__=1");      \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    74
+          builtin_define ("__STDC_LIB_EXT1__=201112L");       \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    75
+          builtin_define ("__XPG7_THREAD_MODEL__=1");         \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    76
+          builtin_define ("_XOPEN_SOURCE=700");               \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    77
+        } \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    78
+        else if (flag_isoc99 == 1)                            \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    79
+        { \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    80
+          builtin_define ("__C99FEATURES__=1");               \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    81
+          if (flag_isoc11 == 0)                               \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    82
+          { \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    83
+            builtin_define ("_STDC_C99=1");                   \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    84
+            builtin_define ("_XOPEN_SOURCE=600");             \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    85
+          } \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    86
+        } \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    87
 	  }						\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    88
 	TARGET_SUB_OS_CPP_BUILTINS();			\
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    89
     } while (0)
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
    90
@@ -109,7 +178,12 @@
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    91
 #define ASM_SPEC_BASE \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    92
 "%{v:-V} %{Qy:} %{!Qn:-Qy} %{Ym,*} -s %(asm_cpu)"
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    93
 
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    94
+/* GAS wants -KPIC, Sun as wants -K PIC */
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    95
+#ifdef USE_GAS
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    96
 #define ASM_PIC_SPEC " %{fpic|fpie|fPIC|fPIE:-K PIC}"
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    97
+#else
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    98
+#define ASM_PIC_SPEC " %{fpic|fpie|fPIC|fPIE:-K PIC}"
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    99
+#endif
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   100
 
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   101
 #undef LIB_SPEC
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   102
 #define LIB_SPEC \
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
   103
@@ -127,8 +201,62 @@
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   104
 #endif
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   105
 
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   106
 #undef STARTFILE_ARCH32_SPEC
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   107
-#define STARTFILE_ARCH32_SPEC "%{ansi:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   108
-			    %{!ansi:values-Xa.o%s}"
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   109
+#define STARTFILE_ARCH32_SPEC "%{std=c++0x:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   110
+  %{std=c++0x:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   111
+  %{std=c++14:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   112
+  %{std=c++14:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   113
+  %{std=c++11:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   114
+  %{std=c++11:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   115
+  %{std=c11:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   116
+  %{std=c11:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   117
+  %{std=c1x:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   118
+  %{std=c1x:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   119
+  %{std=c99:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   120
+  %{std=c99:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   121
+  %{std=c9x:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   122
+  %{std=c9x:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   123
+  %{std=gnu++0x:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   124
+  %{std=gnu++0x:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   125
+  %{std=gnu++14:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   126
+  %{std=gnu++14:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   127
+  %{std=gnu++11:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   128
+  %{std=gnu++11:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   129
+  %{std=gnu11:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   130
+  %{std=gnu11:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   131
+  %{std=gnu1x:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   132
+  %{std=gnu1x:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   133
+  %{std=gnu99:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   134
+  %{std=gnu99:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   135
+  %{std=gnu9x:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   136
+  %{std=gnu9x:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   137
+  %{std=f2003:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   138
+  %{std=f2003:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   139
+  %{std=f2008:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   140
+  %{std=f2008:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   141
+  %{std=f2008ts:values-Xc.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   142
+  %{std=f2008ts:values-xpg6.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   143
+  %{std=f95:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   144
+  %{std=f95:values-xpg4.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   145
+  %{std=gnu:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   146
+  %{std=gnu:values-xpg4.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   147
+  %{std=legacy:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   148
+  %{std=legacy:values-xpg4.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   149
+  %{std=c++03:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   150
+  %{std=c++03:values-xpg4.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   151
+  %{std=c++98:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   152
+  %{std=c++98:values-xpg4.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   153
+  %{std=c89:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   154
+  %{std=c89:values-xpg4.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   155
+  %{std=c90:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   156
+  %{std=c90:values-xpg4.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   157
+  %{std=gnu++03:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   158
+  %{std=gnu++03:values-xpg4.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   159
+  %{std=gnu++98:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   160
+  %{std=gnu++98:values-xpg4.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   161
+  %{std=gnu89:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   162
+  %{std=gnu89:values-xpg4.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   163
+  %{std=gnu90:values-Xa.o%s} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   164
+  %{std=gnu90:values-xpg4.o%s}"
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   165
 
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   166
 #undef STARTFILE_ARCH_SPEC
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   167
 #define STARTFILE_ARCH_SPEC STARTFILE_ARCH32_SPEC
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
   168
@@ -154,8 +282,8 @@
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   169
   "%{G:-G} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   170
    %{YP,*} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   171
    %{R*} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   172
-   %{!YP,*:%{p|pg:-Y P,%R/usr/ccs/lib/libp:%R/usr/lib/libp:%R/usr/ccs/lib:%R/lib:%R/usr/lib} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   173
-	   %{!p:%{!pg:-Y P,%R/usr/ccs/lib:%R/lib:%R/usr/lib}}}"
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   174
+   %{!YP,*:%{p|pg:-Y P,%R/usr/lib/libp:%R/lib:%R/usr/lib} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   175
+     %{!p:%{!pg:-Y P,%R/lib:%R/usr/lib}}}"
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   176
 
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   177
 #undef LINK_ARCH32_SPEC
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   178
 #define LINK_ARCH32_SPEC LINK_ARCH32_SPEC_BASE
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
   179
@@ -191,6 +319,10 @@
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   180
 #define LINK_CLEARCAP_SPEC ""
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   181
 #endif
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   182
 
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   183
+/*
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   184
+ * Change -z textwarn to -z text after clearing that [-fpie|-fPIE]
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   185
+ * no longer generates any text relocation warnings.
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   186
+ */
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   187
 #undef  LINK_SPEC
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   188
 #define LINK_SPEC \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   189
   "%{h*} %{v:-V} \
5210
f83eefca4ec2 22386263 GCC 4.9.3 in Solaris 11 needs more XPG
Stefan Teleman <stefan.teleman@oracle.com>
parents: 5205
diff changeset
   190
@@ -199,6 +331,8 @@
5205
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   191
    %{shared:-G -dy %{!mimpure-text:-z text}} " \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   192
    LINK_LIBGCC_MAPFILE_SPEC LINK_CLEARCAP_SPEC " \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   193
    %{symbolic:-Bsymbolic -G -dy -z text} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   194
+   %{fpie:-Qy -z direct -z textwarn -z type=pie -z aslr=enable} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   195
+   %{fPIE:-Qy -z direct -z textwarn -z type=pie -z aslr=enable} \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   196
    %(link_arch) \
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   197
    %{Qy:} %{!Qn:-Qy}"
eaff9ab86216 21637184 integrate GCC 4.9.3 in Solaris
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   198