From: Benjamin Kosnik Date: Fri, 30 Mar 2001 08:14:15 +0000 (+0000) Subject: [multiple changes] X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=755f30f40c8dc6d6f123433172adaed967997c42;p=gcc.git [multiple changes] 2001-03-28 Benjamin Kosnik * mkcheck.in (LIBTOOL): Don't construct -B argument here... * tests_flags.in (CXX): Construct here. (static_fail): Don't remove compile.out. Format with spaces. (INCLUDES): Deal with xcompiling. * configure.in (xcompiling): Substitute. * testsuite/Makefile.am: Snake libjava configury. * testsuite/Makefile.in: Regenerate. * testsuite/23_containers/map_operators.cc: Tweaks. * testsuite/23_containers/set_operators.cc: Tweaks. 2001-03-28 Gabriel Dos Reis Enable dejagnu testing framework. * configure.in: Generate testsuite/Makefile. * configure: Regenerate. * Makefile.am (check-install): Change rule from this... (check-script-install): ...to this. (check): Change rule from this... (check-script):...to this. * Makefile.in: Regenerate. From-SVN: r40960 --- diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 17bb717bdb2..1a121eeda58 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,26 @@ +2001-03-28 Benjamin Kosnik + + * mkcheck.in (LIBTOOL): Don't construct -B argument here... + * tests_flags.in (CXX): Construct here. + (static_fail): Don't remove compile.out. Format with spaces. + (INCLUDES): Deal with xcompiling. + * configure.in (xcompiling): Substitute. + * testsuite/Makefile.am: Snake libjava configury. + * testsuite/Makefile.in: Regenerate. + * testsuite/23_containers/map_operators.cc: Tweaks. + * testsuite/23_containers/set_operators.cc: Tweaks. + +2001-03-28 Gabriel Dos Reis + + Enable dejagnu testing framework. + * configure.in: Generate testsuite/Makefile. + * configure: Regenerate. + * Makefile.am (check-install): Change rule from this... + (check-script-install): ...to this. + (check): Change rule from this... + (check-script):...to this. + * Makefile.in: Regenerate. + 2001-03-28 Alexandre Oliva * libsupc++/Makefile.am (CXXLINK): Add --tag disable-shared after diff --git a/libstdc++-v3/Makefile.am b/libstdc++-v3/Makefile.am index 9681725d8cb..b7985ffa4b3 100644 --- a/libstdc++-v3/Makefile.am +++ b/libstdc++-v3/Makefile.am @@ -24,20 +24,20 @@ AUTOMAKE_OPTIONS = 1.3 cygnus MAINT_CHARSET = latin1 -SUBDIRS = libio libmath libsupc++ src +SUBDIRS = libio libmath libsupc++ src testsuite mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs # Use $${builddir} instead of $(top_builddir) for arguments to "mkcheck" # because then the paths will be full pathnames, not relative # pathnames. (-Wl,--rpath seems to like this better.) -check: $(top_builddir)/mkcheck +check-script: $(top_builddir)/mkcheck -(chmod + $(top_builddir)/mkcheck; \ srcdir=`cd $(top_srcdir); pwd`; builddir=`pwd`; \ test -d testsuite || (mkdir testsuite; chmod u+w testsuite); \ cd testsuite; $${builddir}/mkcheck 0 $${builddir} $${srcdir}) -check-install: $(top_builddir)/mkcheck +check-script-install: $(top_builddir)/mkcheck -(chmod + $(top_builddir)/mkcheck; \ srcdir=`cd $(top_srcdir); pwd`; builddir=`pwd`; \ test -d testsuite || (mkdir testsuite; chmod u+w testsuite); \ diff --git a/libstdc++-v3/Makefile.in b/libstdc++-v3/Makefile.in index 29ebfd1f730..6fb1b8f22cc 100644 --- a/libstdc++-v3/Makefile.in +++ b/libstdc++-v3/Makefile.in @@ -112,11 +112,12 @@ gxx_include_dir = @gxx_include_dir@ ifGNUmake = @ifGNUmake@ libio_la = @libio_la@ toplevel_srcdir = @toplevel_srcdir@ +xcompiling = @xcompiling@ AUTOMAKE_OPTIONS = 1.3 cygnus MAINT_CHARSET = latin1 -SUBDIRS = libio libmath libsupc++ src +SUBDIRS = libio libmath libsupc++ src testsuite mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs @@ -312,7 +313,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ if test -f $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ @@ -410,13 +411,13 @@ mostlyclean distclean maintainer-clean # Use $${builddir} instead of $(top_builddir) for arguments to "mkcheck" # because then the paths will be full pathnames, not relative # pathnames. (-Wl,--rpath seems to like this better.) -check: $(top_builddir)/mkcheck +check-script: $(top_builddir)/mkcheck -(chmod + $(top_builddir)/mkcheck; \ srcdir=`cd $(top_srcdir); pwd`; builddir=`pwd`; \ test -d testsuite || (mkdir testsuite; chmod u+w testsuite); \ cd testsuite; $${builddir}/mkcheck 0 $${builddir} $${srcdir}) -check-install: $(top_builddir)/mkcheck +check-script-install: $(top_builddir)/mkcheck -(chmod + $(top_builddir)/mkcheck; \ srcdir=`cd $(top_srcdir); pwd`; builddir=`pwd`; \ test -d testsuite || (mkdir testsuite; chmod u+w testsuite); \ diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index dfdd9d41919..8ecf98e662b 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -15774,6 +15774,7 @@ else CANADIAN_TRUE='#' CANADIAN_FALSE= fi + cat > confcache <<\EOF # This file is a shell script that caches the results of configure @@ -15825,17 +15826,17 @@ rm -f confcache ac_safe=`echo "locale.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for locale.h""... $ac_c" 1>&6 -echo "configure:15829: checking for locale.h" >&5 +echo "configure:15830: checking for locale.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:15839: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:15840: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -15853,19 +15854,19 @@ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then echo "$ac_t""yes" 1>&6 echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6 -echo "configure:15857: checking for LC_MESSAGES" >&5 +echo "configure:15858: checking for LC_MESSAGES" >&5 if eval "test \"`echo '$''{'ac_cv_val_LC_MESSAGES'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { return LC_MESSAGES ; return 0; } EOF -if { (eval echo configure:15869: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:15870: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_val_LC_MESSAGES=yes else @@ -15910,13 +15911,13 @@ glibcpp_toolexecdir=no glibcpp_toolexeclibdir=no echo $ac_n "checking for interface version number""... $ac_c" 1>&6 -echo "configure:15914: checking for interface version number" >&5 +echo "configure:15915: checking for interface version number" >&5 libstdcxx_interface=$INTERFACE echo "$ac_t""$libstdcxx_interface" 1>&6 # Process the option --with-gxx-include-dir= echo $ac_n "checking for --with-gxx-include-dir""... $ac_c" 1>&6 -echo "configure:15920: checking for --with-gxx-include-dir" >&5 +echo "configure:15921: checking for --with-gxx-include-dir" >&5 # Check whether --with-gxx-include-dir or --without-gxx-include-dir was given. if test "${with_gxx_include_dir+set}" = set; then withval="$with_gxx_include_dir" @@ -15940,7 +15941,7 @@ echo "$ac_t""$gxx_include_dir" 1>&6 # Process the option "--enable-version-specific-runtime-libs" echo $ac_n "checking for --enable-version-specific-runtime-libs""... $ac_c" 1>&6 -echo "configure:15944: checking for --enable-version-specific-runtime-libs" >&5 +echo "configure:15945: checking for --enable-version-specific-runtime-libs" >&5 # Check whether --enable-version-specific-runtime-libs or --disable-version-specific-runtime-libs was given. if test "${enable_version_specific_runtime_libs+set}" = set; then enableval="$enable_version_specific_runtime_libs" @@ -15980,7 +15981,7 @@ if test x"$glibcpp_toolexecdir" = x"no"; then fi echo $ac_n "checking for install location""... $ac_c" 1>&6 -echo "configure:15984: checking for install location" >&5 +echo "configure:15985: checking for install location" >&5 echo "$ac_t""$gxx_include_dir" 1>&6 @@ -16152,7 +16153,7 @@ done ac_given_srcdir=$srcdir ac_given_INSTALL="$INSTALL" -trap 'rm -fr `echo "tests_flags mkcheck Makefile src/Makefile libmath/Makefile libio/Makefile libsupc++/Makefile config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 +trap 'rm -fr `echo "tests_flags mkcheck Makefile src/Makefile libmath/Makefile libio/Makefile libsupc++/Makefile testsuite/Makefile config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then diff --git a/libstdc++-v3/configure.in b/libstdc++-v3/configure.in index 1de7539fdfc..199afa561a4 100644 --- a/libstdc++-v3/configure.in +++ b/libstdc++-v3/configure.in @@ -236,6 +236,7 @@ AC_LINK_FILES($ATOMICITYH/bits/atomicity.h, include/bits/atomicity.h) AM_CONDITIONAL(NULL_TARGET, test "$NULL_TARGET" = yes) AM_CONDITIONAL(NATIVE, test "$NATIVE" = yes || test "$NULL_TARGET" = yes) AM_CONDITIONAL(CANADIAN, test "$CANADIAN" = yes) +AC_SUBST(xcompiling) AC_CACHE_SAVE AC_LC_MESSAGES @@ -272,7 +273,7 @@ fi # installed in the correct place. To work around this not being passed # down from config-ml.in -> top_srcdir/Makefile.am -> # top_srcdir/{src,libsupc++}/Makefile.am, manually append it here. -AC_OUTPUT(tests_flags mkcheck Makefile src/Makefile libmath/Makefile libio/Makefile libsupc++/Makefile, +AC_OUTPUT(tests_flags mkcheck Makefile src/Makefile libmath/Makefile libio/Makefile libsupc++/Makefile testsuite/Makefile, [if test -n "$CONFIG_FILES"; then ac_file=Makefile . ${glibcpp_basedir}/../config-ml.in grep '^MULTISUBDIR =' Makefile >> src/Makefile diff --git a/libstdc++-v3/libio/Makefile.in b/libstdc++-v3/libio/Makefile.in index 2f203f7eb74..07b420558db 100644 --- a/libstdc++-v3/libio/Makefile.in +++ b/libstdc++-v3/libio/Makefile.in @@ -106,6 +106,7 @@ gxx_include_dir = @gxx_include_dir@ ifGNUmake = @ifGNUmake@ libio_la = @libio_la@ toplevel_srcdir = @toplevel_srcdir@ +xcompiling = @xcompiling@ AUTOMAKE_OPTIONS = 1.3 cygnus @@ -292,7 +293,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ if test -f $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ diff --git a/libstdc++-v3/libmath/Makefile.in b/libstdc++-v3/libmath/Makefile.in index 0ff3b818409..4aa5b2a1d8f 100644 --- a/libstdc++-v3/libmath/Makefile.in +++ b/libstdc++-v3/libmath/Makefile.in @@ -106,6 +106,7 @@ gxx_include_dir = @gxx_include_dir@ ifGNUmake = @ifGNUmake@ libio_la = @libio_la@ toplevel_srcdir = @toplevel_srcdir@ +xcompiling = @xcompiling@ AUTOMAKE_OPTIONS = 1.3 cygnus @@ -269,7 +270,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ if test -f $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ diff --git a/libstdc++-v3/libsupc++/Makefile.in b/libstdc++-v3/libsupc++/Makefile.in index 598550d6681..edeec53e47e 100644 --- a/libstdc++-v3/libsupc++/Makefile.in +++ b/libstdc++-v3/libsupc++/Makefile.in @@ -104,6 +104,7 @@ gxx_include_dir = @gxx_include_dir@ ifGNUmake = @ifGNUmake@ libio_la = @libio_la@ toplevel_srcdir = @toplevel_srcdir@ +xcompiling = @xcompiling@ AUTOMAKE_OPTIONS = 1.3 cygnus MAINT_CHARSET = latin1 @@ -128,13 +129,11 @@ OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@ # These bits are all figured out from configure. Look in acinclude.m4 # or configure.in to see how they are set. See GLIBCPP_EXPORT_FLAGS # NB: DEBUGFLAGS have to be at the end so that -O2 can be overridden. -CONFIG_CXXFLAGS = \ - @EXTRA_CXX_FLAGS@ @SECTION_FLAGS@ @CSHADOW_FLAGS@ @DEBUG_FLAGS@ +CONFIG_CXXFLAGS = @EXTRA_CXX_FLAGS@ @SECTION_FLAGS@ @CSHADOW_FLAGS@ @DEBUG_FLAGS@ # Warning flags to use. -WARN_CXXFLAGS = \ - @WARN_FLAGS@ $(WERROR) -fdiagnostics-show-location=once +WARN_CXXFLAGS = @WARN_FLAGS@ $(WERROR) -fdiagnostics-show-location=once # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES @@ -146,38 +145,13 @@ LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ -INCLUDES = \ - -I$(toplevel_srcdir)/gcc -I$(toplevel_srcdir)/include \ - -I$(GLIBCPP_INCLUDE_DIR) $(CSTD_INCLUDES) -I$(top_builddir)/include \ - $(LIBSUPCXX_INCLUDES) - - -headers = \ - exception new typeinfo cxxabi.h exception_defines.h - - -sources = \ - del_op.cc \ - del_opnt.cc \ - del_opv.cc \ - del_opvnt.cc \ - eh_alloc.cc \ - eh_aux_runtime.cc \ - eh_catch.cc \ - eh_exception.cc \ - eh_globals.cc \ - eh_personality.cc \ - eh_terminate.cc \ - eh_throw.cc \ - new_handler.cc \ - new_op.cc \ - new_opnt.cc \ - new_opv.cc \ - new_opvnt.cc \ - pure.cc \ - tinfo.cc \ - tinfo2.cc \ - vec.cc +INCLUDES = -I$(toplevel_srcdir)/gcc -I$(toplevel_srcdir)/include -I$(GLIBCPP_INCLUDE_DIR) $(CSTD_INCLUDES) -I$(top_builddir)/include $(LIBSUPCXX_INCLUDES) + + +headers = exception new typeinfo cxxabi.h exception_defines.h + + +sources = del_op.cc del_opnt.cc del_opv.cc del_opvnt.cc eh_alloc.cc eh_aux_runtime.cc eh_catch.cc eh_exception.cc eh_globals.cc eh_personality.cc eh_terminate.cc eh_throw.cc new_handler.cc new_op.cc new_opnt.cc new_opv.cc new_opvnt.cc pure.cc tinfo.cc tinfo2.cc vec.cc libsupc___la_SOURCES = $(sources) @@ -193,12 +167,7 @@ LIBSUPCXX_CXXFLAGS = -prefer-pic # set this option because CONFIG_CXXFLAGS has to be after # OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden # as the occasion call for it. (ie, --enable-debug) -AM_CXXFLAGS = \ - -fno-implicit-templates \ - $(LIBSUPCXX_CXXFLAGS) \ - $(WARN_CXXFLAGS) \ - $(OPTIMIZE_CXXFLAGS) \ - $(CONFIG_CXXFLAGS) +AM_CXXFLAGS = -fno-implicit-templates $(LIBSUPCXX_CXXFLAGS) $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) # libstdc++ libtool notes @@ -222,9 +191,7 @@ AM_CXXFLAGS = \ # # We have to put --tag disable-shared after --tag CXX lest things # CXX undo the affect of disable-shared. -LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared \ - --mode=compile $(CXX) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(AM_CXXFLAGS) +LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared --mode=compile $(CXX) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(AM_CXXFLAGS) # 3) We'd have a problem when building the shared libstdc++ object if @@ -233,9 +200,7 @@ LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared \ # course is problematic at this point. So, we get the top-level # directory to configure libstdc++-v3 to use gcc as the C++ # compilation driver. -CXXLINK = $(LIBTOOL) --tag CXX --tag disable-shared \ - --mode=link $(CXX) \ - @OPT_LDFLAGS@ @SECTION_LDFLAGS@ $(AM_CXXFLAGS) $(LDFLAGS) -o $@ +CXXLINK = $(LIBTOOL) --tag CXX --tag disable-shared --mode=link $(CXX) @OPT_LDFLAGS@ @SECTION_LDFLAGS@ $(AM_CXXFLAGS) $(LDFLAGS) -o $@ CONFIG_HEADER = ../config.h CONFIG_CLEAN_FILES = diff --git a/libstdc++-v3/mkcheck.in b/libstdc++-v3/mkcheck.in index 3ad79d83991..72a2b76ff21 100755 --- a/libstdc++-v3/mkcheck.in +++ b/libstdc++-v3/mkcheck.in @@ -61,11 +61,6 @@ set `../tests_flags ${query} $*` || exit 1 BUILD_DIR=$1; SRC_DIR=$2; PREFIX_DIR=$3; CXX=$4; CXXFLAGS=$5; INCLUDES=$6; LIBS=$7; IFS=$saved_ifs -# Build libtoolized surrogates to compile and run testcases. Also, -# adjust CXX so that the newly built compiler can find headers. -if [ x$WHICH = x0 ] ; then - CXX="$CXX -B`dirname $CXX`/" -fi LIBTOOL="$BUILD_DIR/libtool" LTEXE="$LIBTOOL --mode=execute" LTCXX="$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $INCLUDES $LIBS" @@ -104,6 +99,7 @@ MAX_MEM_USAGE=16384 # Remove old executables. rm -rf "$TEST_DIR"/*exe +rm -rf "$TEST_DIR"/compile.out # Remove old core files (which now get left in cwd, not $TEST_DIR). rm -rf ./*core* @@ -324,7 +320,9 @@ test_file() # time_t's (no more overhead than grabbing two date(1)'s). compiler_invocation="$LTCXX $S_FLAG $SRC_NAME -o $EXENAME" COMP_TIME_START=$($TIMER_COMMAND) + echo $SRC_NAME >> compile.out $compiler_invocation >> compile.out 2>&1 + echo "" >> compile.out COMP_TIME_END=$($TIMER_COMMAND) if [ $COMP_TIME_START -lt $COMP_TIME_END ]; then @@ -334,7 +332,7 @@ test_file() fi if [ -f $EXENAME ]; then - rm compile.out +# rm compile.out size_command TEXT size_command DATA size_command SIZE @@ -372,8 +370,8 @@ test_file() else # the file did not compile/link. printf "\n" >> $LOG_FILE - `cat compile.out >> $LOG_FILE` - rm compile.out +# `cat compile.out >> $LOG_FILE` +# rm compile.out RESULT="-b" TEXT="0" DATA="0" diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in index 7d2619e3827..ade75536eb9 100644 --- a/libstdc++-v3/src/Makefile.in +++ b/libstdc++-v3/src/Makefile.in @@ -102,6 +102,7 @@ glibcpp_toolexeclibdir = @glibcpp_toolexeclibdir@ ifGNUmake = @ifGNUmake@ libio_la = @libio_la@ toplevel_srcdir = @toplevel_srcdir@ +xcompiling = @xcompiling@ AUTOMAKE_OPTIONS = 1.3 gnits MAINT_CHARSET = latin1 @@ -377,7 +378,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ if test -f $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ diff --git a/libstdc++-v3/tests_flags.in b/libstdc++-v3/tests_flags.in index e6dd1b287bc..5821dd5276a 100644 --- a/libstdc++-v3/tests_flags.in +++ b/libstdc++-v3/tests_flags.in @@ -108,6 +108,9 @@ case ${query} in -I${SRC_DIR}/include/std -I${SRC_DIR}/include/$C_DIR -I${SRC_DIR}/libsupc++ -I${SRC_DIR}/libio -I${SRC_DIR}/testsuite" + if test x@xcompiling@ == x1; then + INCLUDES="${INCLUDES} -I${SRC_DIR}/../newlib/libc/include" + fi ;; esac @@ -124,12 +127,12 @@ esac # LIB_PATH == where to find the C++ build libraries for libtool's use # GCC_LIB_PATH == where to find the gcc build libraries for libtool's use -# CXX == the full pathname of the compiler +# CXX == how to invoke the compiler case ${query} in --built-library) LIB_PATH=${BUILD_DIR}/src GCC_LIB_PATH=${BUILD_DIR}/../../gcc - CXX="${BUILD_DIR}/../../gcc/g++" + CXX="${BUILD_DIR}/../../gcc/g++ -B${BUILD_DIR}/../../gcc/" ;; --installed-library) LIB_PATH=${PREFIX_DIR}/lib @@ -138,11 +141,11 @@ case ${query} in ;; esac -# gcc compiler flags (maybe use glibcpp_cxxflags from configure.target, -# but that's really meant for building the library itself, not using it) +# CXXFLAGS == run the testsuite with any special configuration +# flags from the library build. CXXFLAGS="-ggdb3 -DDEBUG_ASSERT @SECTION_FLAGS@ @SECTION_LDFLAGS@" -# LIBS == any extra needed -l switches, etc (may need more libs, lose lose) +# LIBS == any extra may needed -L switches case ${query} in --built-library) LIBS="${LIB_PATH}/libstdc++.la -no-install -rpath ${GCC_LIB_PATH}" diff --git a/libstdc++-v3/testsuite/23_containers/map_operators.cc b/libstdc++-v3/testsuite/23_containers/map_operators.cc index 4def7aa79aa..c44cfacb3e4 100644 --- a/libstdc++-v3/testsuite/23_containers/map_operators.cc +++ b/libstdc++-v3/testsuite/23_containers/map_operators.cc @@ -1,6 +1,6 @@ // 2000-09-07 bgarcia@laurelnetworks.com -// Copyright (C) 2000 Free Software Foundation, Inc. +// Copyright (C) 2000, 2001 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -37,28 +37,27 @@ void test01() mapByIndex.insert(std::pair(6, 5)); std::map::iterator itr(mapByIndex.begin()); - - test &= itr != mapByName.end(); // XXX - notice, it's not mapByIndex!! - test &= itr == mapByName.end(); // XXX - notice, it's not mapByIndex!! - return 0; + // NB: notice, it's not mapByIndex!! + test &= itr != mapByName.end(); // ERROR - * XFAIL *-*-* + test &= itr == mapByName.end(); // ERROR - * XFAIL *-*-* } // http://gcc.gnu.org/ml/libstdc++/2000-11/msg00093.html void test02() { - typedef std::map MapInt; - - MapInt m; - - for (unsigned i=0;i<10;++i) - m.insert(MapInt::value_type(i,i)); - - for (MapInt::const_iterator i=m.begin();i!=m.end();++i) - std::cerr << i->second << ' '; - - for (MapInt::const_iterator i=m.begin();m.end()!=i;++i) - std::cerr << i->second << ' '; + typedef std::map MapInt; + + MapInt m; + + for (unsigned i=0;i<10;++i) + m.insert(MapInt::value_type(i,i)); + + for (MapInt::const_iterator i=m.begin();i!=m.end();++i) + std::cerr << i->second << ' '; + + for (MapInt::const_iterator i=m.begin();m.end()!=i;++i) + std::cerr << i->second << ' '; } int main() diff --git a/libstdc++-v3/testsuite/23_containers/set_operators.cc b/libstdc++-v3/testsuite/23_containers/set_operators.cc index 42e01e9de4a..e9bbc621c12 100644 --- a/libstdc++-v3/testsuite/23_containers/set_operators.cc +++ b/libstdc++-v3/testsuite/23_containers/set_operators.cc @@ -1,6 +1,6 @@ // 2000-09-07 bgarcia@laurelnetworks.com -// Copyright (C) 2000 Free Software Foundation, Inc. +// Copyright (C) 2000, 2001 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -25,7 +25,6 @@ // map and set // libstdc++/86: map & set iterator comparisons are not type-safe -// XXX this is XFAIL for the time being, ie this should not compile int main(void) { bool test = true; @@ -35,8 +34,9 @@ int main(void) std::set::iterator itr(setByIndex.begin()); - test &= itr != setByName.end(); // XXX - notice, it's not setByIndex!! - test &= itr == setByName.end(); // XXX - notice, it's not setByIndex!! + // NB: it's not setByIndex!! + test &= itr != setByName.end(); // ERROR - * XFAIL *-*-* + test &= itr == setByName.end(); // ERROR - * XFAIL *-*-* return 0; } diff --git a/libstdc++-v3/testsuite/Makefile.am b/libstdc++-v3/testsuite/Makefile.am index a6a1a78a261..0acdb092d4b 100644 --- a/libstdc++-v3/testsuite/Makefile.am +++ b/libstdc++-v3/testsuite/Makefile.am @@ -21,8 +21,14 @@ ## Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, ## USA. -AUTOMAKE_OPTIONS = 1.3 cygnus dejagnu +AUTOMAKE_OPTIONS = foreign dejagnu no-installinfo DEJATOOL = libstdc++ -RUNTEST = runtest +EXPECT = `if [ -f $(top_builddir)/../expect/expect ] ; then \ + echo $(top_builddir)/../expect/expect ; \ + else echo expect ; fi` + +RUNTEST = `if [ -f $(top_srcdir)/../dejagnu/runtest ] ; then \ + echo $(top_srcdir)/../dejagnu/runtest ; \ + else echo runtest; fi` diff --git a/libstdc++-v3/testsuite/config/default.exp b/libstdc++-v3/testsuite/config/default.exp index f2a4554ca3a..3ae770e782d 100644 --- a/libstdc++-v3/testsuite/config/default.exp +++ b/libstdc++-v3/testsuite/config/default.exp @@ -1,4 +1,4 @@ -# Copyright (C) 1997 Free Software Foundation, Inc. +# Copyright (C) 2001 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -17,4 +17,5 @@ # Please email any bugs, comments, and/or additions to this file to: # bug-gcc@prep.ai.mit.edu -load_lib "dg.exp" +load_lib "standard.exp" + diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp b/libstdc++-v3/testsuite/lib/libstdc++.exp index d1b8bef1465..8d8b5000b28 100644 --- a/libstdc++-v3/testsuite/lib/libstdc++.exp +++ b/libstdc++-v3/testsuite/lib/libstdc++.exp @@ -25,19 +25,19 @@ ## The global associative array lib_env contains the totality ## of options necessary to run testcases; the meanings of which are ## as follows: -## lib_env(CXX) The compiler used to run testcases. -## lib_env(CXXFLAGS) Special flags passed to the compiler. -## lib_env(INCLUDES) Includes options to pass to the compiler. -## lib_env(LDFLAGS) Additional library flags. -## lib_env(LIBTOOL) Path to the `libtool' script. -## lib_env(SRC_DIR) Where V3 master source lives. -## lib_env(BUILD_DIR) Where V3 is built. -## lib_env(static) Flags to pass to the linker to build a -## statically linked executable. -## lib_env(shared) Flags to pass to the linker to build a -## dynamically linked executable. +## lib_env(CXX) The compiler used to run testcases. +## lib_env(CXXFLAGS) Special flags passed to the compiler. +## lib_env(INCLUDES) Includes options to pass to the compiler. +## lib_env(LDFLAGS) Additional library flags. +## lib_env(LIBTOOL) Path to the `libtool' script. +## lib_env(SRC_DIR) Where V3 master source lives. +## lib_env(BUILD_DIR) Where V3 is built. +## lib_env(static) Flags to pass to the linker to build a +## statically linked executable. +## lib_env(shared) Flags to pass to the linker to build a +## dynamically linked executable. ## lib_env(testcase_options) Options specified by current testcase. -## These are specified through the @xxx@-keywords. +## These are specified through the @xxx@-keywords. load_lib dg.exp @@ -52,7 +52,7 @@ proc libstdc++-dg-init { args } { # By default, we assume we want to run program images. set dg-do-what-default run - # Get out the source and the build directories. + # Get the source and the build directories. set src-dir [lookfor_file $srcdir libstdc++-v3] set build-dir [lookfor_file $outdir libstdc++-v3] @@ -61,15 +61,16 @@ proc libstdc++-dg-init { args } { # mkcheck.in used to output these information. set output [remote_exec host $lib_env(CXX) -v] - if { [lindex $output 0] == 0 } { - set output [lindex $output 1] - regexp "gcc version.*$" $output version - regsub "\n+" $version "" version - clone_output "Compiler: $version" - clone_output "Compiler flags: $lib_env(CXXFLAGS)" - } else { - perror "Cannot determine compiler version: [lindex $output 1]" - } +# XXX don't try clever formatting hacks at the moment +# if { [lindex $output 0] == 0 } { +# set output [lindex $output 1] +# regexp "gcc version.*$" $output version +# regsub "\n+" $version "" version +# clone_output "Compiler: $version" +# clone_output "Compiler flags: $lib_env(CXXFLAGS)" +# } else { +# perror "Cannot determine compiler version: [lindex $output 1]" +# } } ## dg.exp callback. Called from dg-test to run PROGRAM. @@ -241,7 +242,7 @@ proc libstdc++-setup-flags {src-dir build-dir} { set lib_env(shared) "" set lib_env(LIBTOOL) "$lib_env(BUILD_DIR)/libtool" - set lib_env(FLAGS) "$lib_env(CXX) -B$lib_env(BUILD_DIR)/ \ + set lib_env(FLAGS) "$lib_env(CXX) \ $lib_env(INCLUDES) $lib_env(CXXFLAGS)" } else { perror "$output" @@ -304,7 +305,7 @@ proc libstdc++-process-options { testfile } { } ### -### The following is an abominal hack, non-recomandable software practice. +### The following is an abominable hack, non-commendable software practice. ### This is supposed to be a very-very short term solution. ### Please, do not add any piece of code without my approval. ### -- Gaby diff --git a/libstdc++-v3/testsuite/libstdc++.tests/tests.exp b/libstdc++-v3/testsuite/libstdc++.tests/tests.exp index d811803ad4c..6077c12bc87 100644 --- a/libstdc++-v3/testsuite/libstdc++.tests/tests.exp +++ b/libstdc++-v3/testsuite/libstdc++.tests/tests.exp @@ -25,3 +25,4 @@ libstdc++-dg-init libstdc++_runtest [glob -nocomplain $srcdir/*] dg-finish +