aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Mason <rbmj@verizon.net>2012-11-03 15:53:28 +0000
committerBruce Korb <korbb@gcc.gnu.org>2012-11-03 15:53:28 +0000
commit2588b26e0e0374bccd928e2d102e81a9e334fc0b (patch)
treea6986ee5adfb979a07e590f264651d5cf98a61ca
parent358a3dbce6aad5488da4c4dd68d37ca74fbe4157 (diff)
downloadgcc-2588b26e0e0374bccd928e2d102e81a9e334fc0b.zip
gcc-2588b26e0e0374bccd928e2d102e81a9e334fc0b.tar.gz
gcc-2588b26e0e0374bccd928e2d102e81a9e334fc0b.tar.bz2
final patch for enabling VxWorks
From-SVN: r193124
-rw-r--r--ChangeLog5
-rw-r--r--configure.ac38
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/gcov-io.c3
-rw-r--r--libstdc++-v3/ChangeLog5
-rw-r--r--libstdc++-v3/config/os/vxworks/os_defines.h6
6 files changed, 47 insertions, 14 deletions
diff --git a/ChangeLog b/ChangeLog
index ffce691..961340b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-11-03 Robert Mason <rbmj@verizon.net>
+
+ * configure.ac: add --disable-libstdcxx configure option
+ and handle defaulted state only for VxWorks, ARM-wince-pe and AVR.
+
2012-10-30 Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com>
* MAINTAINERS (Write After Approval): Add myself.
diff --git a/configure.ac b/configure.ac
index c6665a1..a21cd8a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -427,6 +427,15 @@ AC_ARG_ENABLE(libssp,
ENABLE_LIBSSP=$enableval,
ENABLE_LIBSSP=yes)
+AC_ARG_ENABLE(libstdcxx,
+AS_HELP_STRING([--disable-libstdcxx],
+ [do not build libstdc++-v3 directory]),
+ENABLE_LIBSTDCXX=$enableval,
+ENABLE_LIBSTDCXX=default)
+[if test "${ENABLE_LIBSTDCXX}" = "no" ; then
+ noconfigdirs="$noconfigdirs libstdc++-v3"
+fi]
+
# Save it here so that, even in case of --enable-libgcj, if the Java
# front-end isn't enabled, we still get libgcj disabled.
libgcj_saved=$libgcj
@@ -562,19 +571,22 @@ case "${target}" in
esac
# Disable libstdc++-v3 for some systems.
-case "${target}" in
- *-*-vxworks*)
- # VxWorks uses the Dinkumware C++ library.
- noconfigdirs="$noconfigdirs target-libstdc++-v3"
- ;;
- arm*-wince-pe*)
- # the C++ libraries don't build on top of CE's C libraries
- noconfigdirs="$noconfigdirs target-libstdc++-v3"
- ;;
- avr-*-*)
- noconfigdirs="$noconfigdirs target-libstdc++-v3"
- ;;
-esac
+# Allow user to override this if they pass --enable-libstdc++-v3
+if test "${ENABLE_LIBSTDCXX}" = "default" ; then
+ case "${target}" in
+ *-*-vxworks*)
+ # VxWorks uses the Dinkumware C++ library.
+ noconfigdirs="$noconfigdirs target-libstdc++-v3"
+ ;;
+ arm*-wince-pe*)
+ # the C++ libraries don't build on top of CE's C libraries
+ noconfigdirs="$noconfigdirs target-libstdc++-v3"
+ ;;
+ avr-*-*)
+ noconfigdirs="$noconfigdirs target-libstdc++-v3"
+ ;;
+ esac
+fi
# Disable Fortran for some systems.
case "${target}" in
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0043200..e3eb2f2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2012-11-03 Robert Mason <rbmj@verizon.net>
+
+ * gcov-io.c (gcov_open): Add file mode to open call (need for VxWorks)
+
2012-11-03 Sandra Loosemore <sandra@codesourcery.com>
* doc/extend.texi: Copy-edit to use present tense except when
diff --git a/gcc/gcov-io.c b/gcc/gcov-io.c
index d64fb42..f562654 100644
--- a/gcc/gcov-io.c
+++ b/gcc/gcov-io.c
@@ -92,7 +92,8 @@ gcov_open (const char *name, int mode)
{
/* Read-only mode - acquire a read-lock. */
s_flock.l_type = F_RDLCK;
- fd = open (name, O_RDONLY);
+ /* pass mode (ignored) for compatibility */
+ fd = open (name, O_RDONLY, S_IRUSR | S_IWUSR);
}
else
{
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 75a3e11..3ceefae 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,8 @@
+2012-11-03 Robert Mason <rbmj@verizon.net>
+
+ * config/os/vxworks/os_defines.h:
+ Keep vxWorks from defining min()/max() as macros
+
2012-11-03 Jonathan Wakely <jwakely.gcc@gmail.com>
* doc/html/*: Regenerate.
diff --git a/libstdc++-v3/config/os/vxworks/os_defines.h b/libstdc++-v3/config/os/vxworks/os_defines.h
index c66063e..93ad1d4 100644
--- a/libstdc++-v3/config/os/vxworks/os_defines.h
+++ b/libstdc++-v3/config/os/vxworks/os_defines.h
@@ -33,4 +33,10 @@
// System-specific #define, typedefs, corrections, etc, go here. This
// file will come before all others.
+//Keep vxWorks from defining min()/max() as macros
+#ifdef NOMINMAX
+#undef NOMINMAX
+#endif
+#define NOMINMAX 1
+
#endif