aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2001-05-16 01:11:20 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2001-05-16 01:11:20 +0000
commit99d8dccc0711f5cdd9fb597fd7ec6fcdaccb1dbe (patch)
tree179dcecdc263001426ecd71f51203108ee9c4883
parent6f4226f843dbf259ca7b49c839252b76f38f754f (diff)
downloadgcc-99d8dccc0711f5cdd9fb597fd7ec6fcdaccb1dbe.zip
gcc-99d8dccc0711f5cdd9fb597fd7ec6fcdaccb1dbe.tar.gz
gcc-99d8dccc0711f5cdd9fb597fd7ec6fcdaccb1dbe.tar.bz2
sol2.h (CPLUSPLUS_CPP_SPEC): Define.
* config/sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Define. * porting.texi: Correct documentation about handling _LARRGEFILE_SOURCE and its ilk. * config/os/solaris/solaris2.5/bits/os_defines.h: Remove definitions of _XOPEN_SOURCE, _LARGEFILE64_SOURCE, and __EXTENSIONS__. * config/os/solaris/solaris2.6/bits/os_defines.h: Likewise. * config/os/solaris/solaris2.7/bits/os_defines.h: Likewise. From-SVN: r42125
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/sparc/sol2.h22
-rw-r--r--libstdc++-v3/ChangeLog10
-rw-r--r--libstdc++-v3/config/os/solaris/solaris2.5/bits/os_defines.h5
-rw-r--r--libstdc++-v3/config/os/solaris/solaris2.6/bits/os_defines.h5
-rw-r--r--libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h6
-rw-r--r--libstdc++-v3/porting.texi25
7 files changed, 50 insertions, 27 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0ac1f3d..e1b1c6a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2001-05-15 Mark Mitchell <mark@codesourcery.com>
+
+ * config/sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Define.
+
2001-05-15 Geoffrey Keating <geoffk@redhat.com>
* objc/objc-act.c (handle_class_ref): Use rest_of_decl_compilation
diff --git a/gcc/config/sparc/sol2.h b/gcc/config/sparc/sol2.h
index 5075f9a..bf0466d 100644
--- a/gcc/config/sparc/sol2.h
+++ b/gcc/config/sparc/sol2.h
@@ -35,6 +35,28 @@ Boston, MA 02111-1307, USA. */
%{compat-bsd:-iwithprefixbefore ucbinclude -I/usr/ucbinclude} \
"
+/* For C++ we need to add some additional macro definitions required
+ by the C++ standard library. */
+#define CPLUSPLUS_CPP_SPEC "\
+-D_XOPEN_SOURCE=500 -D_LARGEFILE_SOURCE=1 -D_LARGEFILE64_SOURCE=1 \
+-D__EXTENSIONS__ \
+%{mcypress:} \
+%{msparclite:-D__sparclite__} \
+%{mf930:-D__sparclite__} %{mf934:-D__sparclite__} \
+%{mv8:-D__sparc_v8__} \
+%{msupersparc:-D__supersparc__ -D__sparc_v8__} \
+%{mcpu=sparclet:-D__sparclet__} %{mcpu=tsc701:-D__sparclet__} \
+%{mcpu=sparclite:-D__sparclite__} \
+%{mcpu=f930:-D__sparclite__} %{mcpu=f934:-D__sparclite__} \
+%{mcpu=v8:-D__sparc_v8__} \
+%{mcpu=supersparc:-D__supersparc__ -D__sparc_v8__} \
+%{mcpu=hypersparc:-D__hypersparc__ -D__sparc_v8__} \
+%{mcpu=sparclite86x:-D__sparclite86x__} \
+%{mcpu=v9:-D__sparc_v9__} \
+%{mcpu=ultrasparc:-D__sparc_v9__} \
+%{!mcpu*:%{!mcypress:%{!msparclite:%{!mf930:%{!mf934:%{!mv8:%{!msupersparc:%(cpp_cpu_default)}}}}}}} \
+"
+
/* The sun bundled assembler doesn't accept -Yd, (and neither does gas).
It's safe to pass -s always, even if -g is not used. */
#undef ASM_SPEC
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 6d68629..c427746 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,13 @@
+2001-05-15 Mark Mitchell <mark@codesourcery.com>
+
+ * porting.texi: Correct documentation about handling
+ _LARRGEFILE_SOURCE and its ilk.
+ * config/os/solaris/solaris2.5/bits/os_defines.h: Remove
+ definitions of _XOPEN_SOURCE, _LARGEFILE64_SOURCE, and
+ __EXTENSIONS__.
+ * config/os/solaris/solaris2.6/bits/os_defines.h: Likewise.
+ * config/os/solaris/solaris2.7/bits/os_defines.h: Likewise.
+
2001-05-15 Zack Weinberg <zackw@stanford.edu>
* testsuite/21_strings/inserters_extractors.cc,
diff --git a/libstdc++-v3/config/os/solaris/solaris2.5/bits/os_defines.h b/libstdc++-v3/config/os/solaris/solaris2.5/bits/os_defines.h
index c947be7..4dd1fa2 100644
--- a/libstdc++-v3/config/os/solaris/solaris2.5/bits/os_defines.h
+++ b/libstdc++-v3/config/os/solaris/solaris2.5/bits/os_defines.h
@@ -31,11 +31,6 @@
#ifndef _GLIBCPP_OS_DEFINES
# define _GLIBCPP_OS_DEFINES
-// Need these to get sane definitions, esp. of 64-bit types and typedefs.
-#define _XOPEN_SOURCE 500
-#define _LARGEFILE64_SOURCE 1
-#define __EXTENSIONS__
-
/* System-specific #define, typedefs, corrections, etc, go here. This
file will come before all others. */
// These are typedefs which libio assumes are already in place (because
diff --git a/libstdc++-v3/config/os/solaris/solaris2.6/bits/os_defines.h b/libstdc++-v3/config/os/solaris/solaris2.6/bits/os_defines.h
index c947be7..4dd1fa2 100644
--- a/libstdc++-v3/config/os/solaris/solaris2.6/bits/os_defines.h
+++ b/libstdc++-v3/config/os/solaris/solaris2.6/bits/os_defines.h
@@ -31,11 +31,6 @@
#ifndef _GLIBCPP_OS_DEFINES
# define _GLIBCPP_OS_DEFINES
-// Need these to get sane definitions, esp. of 64-bit types and typedefs.
-#define _XOPEN_SOURCE 500
-#define _LARGEFILE64_SOURCE 1
-#define __EXTENSIONS__
-
/* System-specific #define, typedefs, corrections, etc, go here. This
file will come before all others. */
// These are typedefs which libio assumes are already in place (because
diff --git a/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h b/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h
index ec63697..cb0afed 100644
--- a/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h
+++ b/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h
@@ -31,12 +31,6 @@
#ifndef _GLIBCPP_OS_DEFINES
# define _GLIBCPP_OS_DEFINES
-// Need these to get sane definitions, esp. of 64-bit types and typedefs.
-#define _XOPEN_SOURCE 500
-#define _LARGEFILE_SOURCE 1
-#define _LARGEFILE64_SOURCE 1
-#define __EXTENSIONS__
-
// These are typedefs which libio assumes are already in place (because
// they really are, under Linux).
#define __off_t off_t
diff --git a/libstdc++-v3/porting.texi b/libstdc++-v3/porting.texi
index 7d42171..1315de3 100644
--- a/libstdc++-v3/porting.texi
+++ b/libstdc++-v3/porting.texi
@@ -126,17 +126,20 @@ provide these macros. Note that this file does not have to include a
header file that defines @code{off_t}, or the other types; you simply
have to provide the macros.
-In addition, several libstdc++-v3 source files unconditionally define the macro
-@code{_POSIX_SOURCE}. On many systems, defining this macro causes large
-portions of the C library header files to be eliminated at preprocessing
-time. Therefore, you may have to @code{#undef} this macro, or define
-other macros (like @code{_LARGEFILE_SOURCE} or @code{__EXTENSIONS__}).
-You won't know what macros to define or undefine at this point; you'll
-have to try compiling the library and seeing what goes wrong. If you
-see errors about calling functions that have not been declared, look in
-your C library headers to see if the functions are declared there, and
-then figure out what macros you should but in @file{bits/os_defines.h}
-to make these declarations available.
+In addition, several libstdc++-v3 source files unconditionally define
+the macro @code{_POSIX_SOURCE}. On many systems, defining this macro
+causes large portions of the C library header files to be eliminated
+at preprocessing time. Therefore, you may have to @code{#undef} this
+macro, or define other macros (like @code{_LARGEFILE_SOURCE} or
+@code{__EXTENSIONS__}). You won't know what macros to define or
+undefine at this point; you'll have to try compiling the library and
+seeing what goes wrong. If you see errors about calling functions
+that have not been declared, look in your C library headers to see if
+the functions are declared there, and then figure out what macros you
+need to define. You will need to add them to the
+@code{CPLUSPLUS_CPP_SPEC} macro in the GCC configuration file for your
+target. It will not work to simply define these macros in
+@file{os_defines.h}.
Finally, you should bracket the entire file in an include-guard, like
this: