diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 309e506949f..a6f5d8dabce 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,13 @@ +2000-05-11 Phil Edwards + + * acinclude.m4: Fix minor typo with ctypes, add more sanity to + enable-cxx-flags, and remove GLIBCPP_ENABLE_NAMESPACES altogether. + * aclocal.m4: Regenerate. + * configure.in: Non-blank arguments break fewer Linuxes. + * configure: Regenerate. + * src/Makefile.am: Re-order AC_CXXFLAGS components. + * src/Makefile.in: Regenerate. + 2000-05-10 Benjamin Kosnik * bits/std_cmath.h: Tweaks. diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4 index fc86165973b..99d7e94fee8 100644 --- a/libstdc++-v3/acinclude.m4 +++ b/libstdc++-v3/acinclude.m4 @@ -350,7 +350,7 @@ AC_DEFUN(GLIBCPP_CHECK_CTYPE, [ ctype_default=no else ctype_include_dir="config/solaris/solaris2.7" - AC_MSG_RESULT("solaris2.[6,7]") + AC_MSG_RESULT("solaris2.[7,8]") ctype_default=no fi fi @@ -643,10 +643,12 @@ dnl experimental flags such as -fhonor-std, -fsquangle, -Dfloat=char, etc. dnl Somehow this same set of flags must be passed when [re]building dnl libgcc. dnl --disable-cxx-flags passes nothing. -dnl + See +dnl + See http://sourceware.cygnus.com/ml/libstdc++/2000-q2/msg00131.html +dnl http://sourceware.cygnus.com/ml/libstdc++/2000-q2/msg00284.html +dnl http://sourceware.cygnus.com/ml/libstdc++/2000-q1/msg00035.html dnl + Usage: GLIBCPP_ENABLE_CXX_FLAGS(default flags) -dnl If "default flags" is an empty string, the effect is the same -dnl as --disable or --enable=no. +dnl If "default flags" is an empty string (or "none"), the effect is +dnl the same as --disable or --enable=no. AC_DEFUN(GLIBCPP_ENABLE_CXX_FLAGS, [dnl define([GLIBCPP_ENABLE_CXX_FLAGS_DEFAULT], ifelse($1,,, $1))dnl AC_ARG_ENABLE(cxx-flags, @@ -656,11 +658,14 @@ changequote(<<, >>)dnl changequote([, ])dnl [case "x$enableval" in xyes) AC_MSG_ERROR([--enable-cxx-flags needs compiler flags as arguments]) ;; - xno|x) enable_cxx_flags= ;; + xno|x) enable_cxx_flags='' ;; *) enable_cxx_flags="$enableval" ;; esac], enable_cxx_flags='GLIBCPP_ENABLE_CXX_FLAGS_DEFAULT')dnl -dnl Run through flags (either default or command-line) and set things. +dnl Thinko on my part during design. This kludge is the workaround. +if test "$enable_cxx_flags" = "none"; then enable_cxx_flags=''; fi +dnl Run through flags (either default or command-line) and set anything +dnl extra (e.g., #defines) that must accompany particular g++ options. if test -n "$enable_cxx_flags"; then for f in $enable_cxx_flags; do case "$f" in @@ -676,40 +681,6 @@ AC_SUBST(EXTRA_CXX_FLAGS) ]) -dnl -dnl Check for certain special build configurations. -dnl -dnl GLIBCPP_ENABLE_NAMESPACES -dnl --enable-namespaces sets '-fhonor-std' and -dnl --disable-namespaces sets '-fno-honor-std' (the macro should be -dnl undefined by default in whatever.h.in). -dnl + Eventually, this will go away. -dnl + Usage: GLIBCPP_ENABLE_NAMESPACES[(DEFAULT)] -dnl Where DEFAULT is either `yes' or `no'. If ommitted, it -dnl defaults to `no'. -AC_DEFUN(GLIBCPP_ENABLE_NAMESPACES, [dnl -define([GLIBCPP_ENABLE_NAMESPACES_DEFAULT], ifelse($1, yes, yes, no))dnl -AC_ARG_ENABLE(namespaces, -changequote(<<, >>)dnl -<< --enable-namespaces turns on 'std' [default=>>GLIBCPP_ENABLE_NAMESPACES_DEFAULT], -changequote([, ])dnl -[case "$enableval" in - yes) enable_namespaces=yes ;; - no) enable_namespaces=no ;; - *) AC_MSG_ERROR([Unknown argument to enable/disable namespaces]) ;; - esac], -enable_namespaces=GLIBCPP_ENABLE_NAMESPACES_DEFAULT)dnl -dnl Option parsed, now set things appropriately -case "$enable_namespaces" in - yes) NAMESPACES='-fhonor-std' - ;; - no) NAMESPACES='-fno-honor-std' - ;; -esac -AC_SUBST(NAMESPACES) -]) - - dnl dnl Check for instructions to automatically rebuild libgcc.a. Requires, dnl of course, the location of the gcc objdir. Note that if --disable- diff --git a/libstdc++-v3/aclocal.m4 b/libstdc++-v3/aclocal.m4 index c5258815a6a..5afad852416 100644 --- a/libstdc++-v3/aclocal.m4 +++ b/libstdc++-v3/aclocal.m4 @@ -362,7 +362,7 @@ AC_DEFUN(GLIBCPP_CHECK_CTYPE, [ ctype_default=no else ctype_include_dir="config/solaris/solaris2.7" - AC_MSG_RESULT("solaris2.[6,7]") + AC_MSG_RESULT("solaris2.[7,8]") ctype_default=no fi fi @@ -655,10 +655,12 @@ dnl experimental flags such as -fhonor-std, -fsquangle, -Dfloat=char, etc. dnl Somehow this same set of flags must be passed when [re]building dnl libgcc. dnl --disable-cxx-flags passes nothing. -dnl + See +dnl + See http://sourceware.cygnus.com/ml/libstdc++/2000-q2/msg00131.html +dnl http://sourceware.cygnus.com/ml/libstdc++/2000-q2/msg00284.html +dnl http://sourceware.cygnus.com/ml/libstdc++/2000-q1/msg00035.html dnl + Usage: GLIBCPP_ENABLE_CXX_FLAGS(default flags) -dnl If "default flags" is an empty string, the effect is the same -dnl as --disable or --enable=no. +dnl If "default flags" is an empty string (or "none"), the effect is +dnl the same as --disable or --enable=no. AC_DEFUN(GLIBCPP_ENABLE_CXX_FLAGS, [dnl define([GLIBCPP_ENABLE_CXX_FLAGS_DEFAULT], ifelse($1,,, $1))dnl AC_ARG_ENABLE(cxx-flags, @@ -668,11 +670,14 @@ changequote(<<, >>)dnl changequote([, ])dnl [case "x$enableval" in xyes) AC_MSG_ERROR([--enable-cxx-flags needs compiler flags as arguments]) ;; - xno|x) enable_cxx_flags= ;; + xno|x) enable_cxx_flags='' ;; *) enable_cxx_flags="$enableval" ;; esac], enable_cxx_flags='GLIBCPP_ENABLE_CXX_FLAGS_DEFAULT')dnl -dnl Run through flags (either default or command-line) and set things. +dnl Thinko on my part during design. This kludge is the workaround. +if test "$enable_cxx_flags" = "none"; then enable_cxx_flags=''; fi +dnl Run through flags (either default or command-line) and set anything +dnl extra (e.g., #defines) that must accompany particular g++ options. if test -n "$enable_cxx_flags"; then for f in $enable_cxx_flags; do case "$f" in @@ -688,40 +693,6 @@ AC_SUBST(EXTRA_CXX_FLAGS) ]) -dnl -dnl Check for certain special build configurations. -dnl -dnl GLIBCPP_ENABLE_NAMESPACES -dnl --enable-namespaces sets '-fhonor-std' and -dnl --disable-namespaces sets '-fno-honor-std' (the macro should be -dnl undefined by default in whatever.h.in). -dnl + Eventually, this will go away. -dnl + Usage: GLIBCPP_ENABLE_NAMESPACES[(DEFAULT)] -dnl Where DEFAULT is either `yes' or `no'. If ommitted, it -dnl defaults to `no'. -AC_DEFUN(GLIBCPP_ENABLE_NAMESPACES, [dnl -define([GLIBCPP_ENABLE_NAMESPACES_DEFAULT], ifelse($1, yes, yes, no))dnl -AC_ARG_ENABLE(namespaces, -changequote(<<, >>)dnl -<< --enable-namespaces turns on 'std' [default=>>GLIBCPP_ENABLE_NAMESPACES_DEFAULT], -changequote([, ])dnl -[case "$enableval" in - yes) enable_namespaces=yes ;; - no) enable_namespaces=no ;; - *) AC_MSG_ERROR([Unknown argument to enable/disable namespaces]) ;; - esac], -enable_namespaces=GLIBCPP_ENABLE_NAMESPACES_DEFAULT)dnl -dnl Option parsed, now set things appropriately -case "$enable_namespaces" in - yes) NAMESPACES='-fhonor-std' - ;; - no) NAMESPACES='-fno-honor-std' - ;; -esac -AC_SUBST(NAMESPACES) -]) - - dnl dnl Check for instructions to automatically rebuild libgcc.a. Requires, dnl of course, the location of the gcc objdir. Note that if --disable- diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index f4d49447f86..a60ed9acbc3 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -43,7 +43,7 @@ ac_help="$ac_help --enable-threads=LIB use LIB thread package for target GCC." ac_help="$ac_help --enable-cxx-flags=FLAGS pass compiler FLAGS when building library; - [default=]" + [default=none]" # Initialize some variables set by options. # The variables have the same names as the options, with @@ -2452,19 +2452,19 @@ fi -#GLIBCPP_ENABLE_NAMESPACES(yes) #GLIBCPP_ENABLE_RELIBGCC([../..]) # Check whether --enable-cxx-flags or --disable-cxx-flags was given. if test "${enable_cxx_flags+set}" = set; then enableval="$enable_cxx_flags" case "x$enableval" in xyes) { echo "configure: error: --enable-cxx-flags needs compiler flags as arguments" 1>&2; exit 1; } ;; - xno|x) enable_cxx_flags= ;; + xno|x) enable_cxx_flags='' ;; *) enable_cxx_flags="$enableval" ;; esac else - enable_cxx_flags='' + enable_cxx_flags='none' fi +if test "$enable_cxx_flags" = "none"; then enable_cxx_flags=''; fi if test -n "$enable_cxx_flags"; then for f in $enable_cxx_flags; do case "$f" in @@ -3621,7 +3621,7 @@ cross_compiling=$ac_cv_prog_cc_cross ctype_default=no else ctype_include_dir="config/solaris/solaris2.7" - echo "$ac_t"""solaris2.6,7"" 1>&6 + echo "$ac_t"""solaris2.7,8"" 1>&6 ctype_default=no fi fi diff --git a/libstdc++-v3/configure.in b/libstdc++-v3/configure.in index c985fc4d9af..3cec23f1f93 100644 --- a/libstdc++-v3/configure.in +++ b/libstdc++-v3/configure.in @@ -29,9 +29,8 @@ GLIBCPP_ENABLE_DEBUG GLIBCPP_ENABLE_CSTDIO GLIBCPP_ENABLE_LONG_LONG GLIBCPP_ENABLE_THREADS -#GLIBCPP_ENABLE_NAMESPACES(yes) #GLIBCPP_ENABLE_RELIBGCC([../..]) -GLIBCPP_ENABLE_CXX_FLAGS([]) +GLIBCPP_ENABLE_CXX_FLAGS([none]) if test -n "$with_cross_host"; then diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am index 6f727e15bcf..b83c7c70b93 100644 --- a/libstdc++-v3/src/Makefile.am +++ b/libstdc++-v3/src/Makefile.am @@ -42,7 +42,7 @@ WERROR = -Werror # -fdata-sections -ffunction-sections \ # -fvtable-gc -Wl,--gc-sections # AC_CXXFLAGS = @OPTLEVEL@ @CPUFLAGS@ @EXTRA_CXX_FLAGS@ @DEBUGFLAGS@ -AC_CXXFLAGS = @CPUFLAGS@ @DEBUGFLAGS@ +AC_CXXFLAGS = @CPUFLAGS@ @EXTRA_CXX_FLAGS@ @DEBUGFLAGS@ AM_CXXFLAGS = -fno-implicit-templates \ -Wall -Wno-format -W -Wwrite-strings -Winline $(WERROR) \ $(OPTIMIZE_CXXFLAGS) $(AC_CXXFLAGS) diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in index 440f8c5b307..4c9c9f5ae3a 100644 --- a/libstdc++-v3/src/Makefile.in +++ b/libstdc++-v3/src/Makefile.in @@ -85,7 +85,6 @@ LIBTOOL = @LIBTOOL@ LN_S = @LN_S@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ -NAMESPACES = @NAMESPACES@ OBJDUMP = @OBJDUMP@ OPTLEVEL = @OPTLEVEL@ PACKAGE = @PACKAGE@ @@ -120,7 +119,7 @@ WERROR = -Werror # -fdata-sections -ffunction-sections \ # -fvtable-gc -Wl,--gc-sections # AC_CXXFLAGS = @OPTLEVEL@ @CPUFLAGS@ @EXTRA_CXX_FLAGS@ @DEBUGFLAGS@ -AC_CXXFLAGS = @CPUFLAGS@ @DEBUGFLAGS@ +AC_CXXFLAGS = @CPUFLAGS@ @EXTRA_CXX_FLAGS@ @DEBUGFLAGS@ AM_CXXFLAGS = -fno-implicit-templates \ -Wall -Wno-format -W -Wwrite-strings -Winline $(WERROR) \ $(OPTIMIZE_CXXFLAGS) $(AC_CXXFLAGS)