This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

[v3] C headers, part 1



This is a slightly modified version of this patch:

http://gcc.gnu.org/ml/gcc-patches/2001-05/msg01349.html

I've tested this with x86/native, both build and install
directories. I'm in the process of checking this with a powerpc-eabism
cross.

This organizes all the include configure/make bits for libstdc++,
gathering scattered rules and configury and stashing them into
include/Makefile.am. By doing this, a number of significant advantages
are gained:

1) better dependency tracking for generated c++ includes
   Something that was not being done with the current configure-based approach.

2) simplifies/streamlines install process

3) clarifies what is generated, what is copied, etc. Since so many of
   the c++ includes are generated, this kind of organization makes
   sense both now (limits, c++config.h, ctype, etc.) but also for what
   lies ahead (some way of doing shadow headers, which may involve
   additional generated files.)

Thanks Stephen.

I'll give people some time to comment, but I'd like to get this in
soon so that the rest of the C header fixes (which depend on this) can
also go in.

-benjamin

2001-06-06  Stephen M. Webb  <stephen@bregmasoft.com>

	* include/Makefile.am: New file encapsulating header generation rules.
	* Makefile.am: Added reference to the include subdirectory.
	* acinclude.m4: Moved rules for building includesinto various
	Makefiles.
	* configure.in: Added include/Makefile to AC_OUTPUT.
	* testsuite_flags.in: Changed build-includes to match new header
	scheme.
	* libio/Makefile.am: Changed INCLUDES to match new scheme.
	* libmath/Makefile.am: Same.
	* libsupc++/Makefile.am: Same.
	* src/Makefile.am: Moved rules to build headers out, sources in.
	* mkc++config: Removed.

Index: Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/Makefile.am,v
retrieving revision 1.22
diff -c -p -r1.22 Makefile.am
*** Makefile.am	2001/05/14 01:14:55	1.22
--- Makefile.am	2001/06/06 22:25:35
***************
*** 24,30 ****
  AUTOMAKE_OPTIONS = 1.3 cygnus
  MAINT_CHARSET = latin1
  
! SUBDIRS = libio libmath libsupc++ src testsuite
  
  mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs
  
--- 24,30 ----
  AUTOMAKE_OPTIONS = 1.3 cygnus
  MAINT_CHARSET = latin1
  
! SUBDIRS = include libio libmath libsupc++ src testsuite
  
  mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs
  
*************** doxygen-maint:
*** 58,64 ****
  	  ${srcdir}/docs/doxygen/run_doxygen --mode=maint $${srcdir} $${outdir})
  
  .PHONY: doxygen doxygen-maint
- 
  
  # Multilib support.
  MAKEOVERRIDES=
--- 58,63 ----
Index: acinclude.m4
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/acinclude.m4,v
retrieving revision 1.150
diff -c -p -r1.150 acinclude.m4
*** acinclude.m4	2001/05/31 12:14:49	1.150
--- acinclude.m4	2001/06/06 22:25:41
*************** AC_DEFUN(GLIBCPP_CHECK_TARGET, [
*** 757,763 ****
      . [$]{glibcpp_basedir}/configure.target
      AC_MSG_RESULT(CPU config directory is $cpu_include_dir)
      AC_MSG_RESULT(OS config directory is $os_include_dir)
-     AC_LINK_FILES($os_include_dir/bits/os_defines.h, include/bits/os_defines.h)
  ])
  
  
--- 757,762 ----
*************** AC_DEFUN(GLIBCPP_ENABLE_CLOCALE, [
*** 995,1001 ****
        ;;
    esac
  
!   AC_LINK_FILES($CLOCALE_H, include/bits/c++locale.h)
    AC_LINK_FILES($CLOCALE_CC, src/c++locale.cc)
  ])
  
--- 994,1000 ----
        ;;
    esac
  
!   AC_SUBST(CLOCALE_H)
    AC_LINK_FILES($CLOCALE_CC, src/c++locale.cc)
  ])
  
*************** AC_DEFUN(GLIBCPP_ENABLE_CSTDIO, [
*** 1095,1107 ****
        exit 1
        ;;
    esac
!   AC_LINK_FILES($CSTDIO_H, include/bits/c++io.h)
!   AC_LINK_FILES($BASIC_FILE_H, include/bits/basic_file_model.h)
    AC_LINK_FILES($BASIC_FILE_CC, src/basic_file.cc)
  
    # 2000-08-04 bkoz hack
    CCODECVT_C=config/c_io_libio_codecvt.c
!   AC_LINK_FILES($CCODECVT_C, libio/c_codecvt.c)
    # 2000-08-04 bkoz hack
  
    AM_CONDITIONAL(GLIBCPP_BUILD_LIBIO,
--- 1094,1106 ----
        exit 1
        ;;
    esac
!   AC_SUBST(CSTDIO_H)
!   AC_SUBST(BASIC_FILE_H)
    AC_LINK_FILES($BASIC_FILE_CC, src/basic_file.cc)
  
    # 2000-08-04 bkoz hack
    CCODECVT_C=config/c_io_libio_codecvt.c
!   AC_SUBST(CCODECVT_C)
    # 2000-08-04 bkoz hack
  
    AM_CONDITIONAL(GLIBCPP_BUILD_LIBIO,
*************** AC_DEFUN(GLIBCPP_ENABLE_THREADS, [
*** 1149,1155 ****
        ;;
    esac
  
!   AC_LINK_FILES(config/$THREADH, include/bits/c++threads.h)
    if test $THREADH != threads-no.h; then
      AC_DEFINE(_GLIBCPP_USE_THREADS)
    fi
--- 1148,1155 ----
        ;;
    esac
  
!   CTHREAD_H=config/$THREADH
!   AC_SUBST(CTHREAD_H)
    if test $THREADH != threads-no.h; then
      AC_DEFINE(_GLIBCPP_USE_THREADS)
    fi
*************** dnl Option parsed, now other scripts can
*** 1443,1450 ****
  dnl
  dnl Set up *_INCLUDES and *_INCLUDE_DIR variables for all sundry Makefile.am's.
  dnl
- dnl GLIBCPP_INCLUDE_DIR
- dnl C_INCLUDE_DIR
  dnl TOPLEVEL_INCLUDES
  dnl LIBMATH_INCLUDES
  dnl LIBSUPCXX_INCLUDES
--- 1443,1448 ----
*************** dnl CSHADOW_INCLUDES
*** 1453,1467 ****
  dnl
  dnl GLIBCPP_EXPORT_INCLUDE
  AC_DEFUN(GLIBCPP_EXPORT_INCLUDES, [
!   # Root level of the include sources.
!   GLIBCPP_INCLUDE_DIR='$(top_srcdir)/include'
  
-   # Can either use include/c or include/c_std to grab "C" headers. This
-   # variable is set to the include directory currently in use.
-   # set with C_INCLUDE_DIR in GLIBCPP_ENABLE_CHEADERS
-    
    # Passed down for canadian crosses.
!   if  test x"$CANADIAN" = xyes; then
      TOPLEVEL_INCLUDES='-I$(includedir)'
    fi
  
--- 1451,1461 ----
  dnl
  dnl GLIBCPP_EXPORT_INCLUDE
  AC_DEFUN(GLIBCPP_EXPORT_INCLUDES, [
!   # Root level of the build directory include sources.
!   GLIBCPP_INCLUDES="-I${glibcpp_builddir}/include/${target_alias} -I${glibcpp_builddir}/include"
  
    # Passed down for canadian crosses.
!   if test x"$CANADIAN" = xyes; then
      TOPLEVEL_INCLUDES='-I$(includedir)'
    fi
  
*************** AC_DEFUN(GLIBCPP_EXPORT_INCLUDES, [
*** 1469,1494 ****
  
    LIBSUPCXX_INCLUDES='-I$(top_srcdir)/libsupc++'
  
!   #if GLIBCPP_NEED_LIBIO
!   LIBIO_INCLUDES='-I$(top_builddir)/libio -I$(top_srcdir)/libio'
!   #else
!   #LIBIO_INCLUDES='-I$(top_srcdir)/libio'
!   #endif
! 
!   #if GLIBCPP_USE_CSHADOW
!   #  CSHADOW_INCLUDES='-I$(GLIBCPP_INCLUDE_DIR)/std -I$(C_INCLUDE_DIR) \
!   #                   -I$(top_blddir)/cshadow'
!   #else
!   CSTD_INCLUDES='-I$(GLIBCPP_INCLUDE_DIR)/std -I$(C_INCLUDE_DIR)'
!   #endif
  
    # Now, export this to all the little Makefiles....
!   AC_SUBST(GLIBCPP_INCLUDE_DIR)
    AC_SUBST(TOPLEVEL_INCLUDES)
    AC_SUBST(LIBMATH_INCLUDES)
    AC_SUBST(LIBSUPCXX_INCLUDES)
-   AC_SUBST(LIBIO_INCLUDES)
-   AC_SUBST(CSTD_INCLUDES)
  ])
  
  
--- 1463,1478 ----
  
    LIBSUPCXX_INCLUDES='-I$(top_srcdir)/libsupc++'
  
!   if test x"$need_libio" = xyes; then
!     LIBIO_INCLUDES='-I$(top_builddir)/libio -I$(top_srcdir)/libio'
!     AC_SUBST(LIBIO_INCLUDES)
!   fi
  
    # Now, export this to all the little Makefiles....
!   AC_SUBST(GLIBCPP_INCLUDES)
    AC_SUBST(TOPLEVEL_INCLUDES)
    AC_SUBST(LIBMATH_INCLUDES)
    AC_SUBST(LIBSUPCXX_INCLUDES)
  ])
  
  
Index: configure.in
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/configure.in,v
retrieving revision 1.63
diff -c -p -r1.63 configure.in
*** configure.in	2001/06/01 09:22:05	1.63
--- configure.in	2001/06/06 22:26:23
*************** if test -n "$with_cross_host"; then
*** 76,82 ****
    # We are being configured with a cross compiler.  AC_REPLACE_FUNCS
    # may not work correctly, because the compiler may not be able to
    # link executables.
!   xcompiling=1
    NATIVE=no
  
    # If Canadian cross, then don't pick up tools from the build
--- 76,82 ----
    # We are being configured with a cross compiler.  AC_REPLACE_FUNCS
    # may not work correctly, because the compiler may not be able to
    # link executables.
!   GLIBCPP_IS_CROSS_COMPILING=1
    NATIVE=no
  
    # If Canadian cross, then don't pick up tools from the build
*************** else
*** 196,202 ****
    # We are being configured natively. We can do more elaborate tests
    # that include AC_TRY_COMPILE now, as the linker is assumed to be
    # working.
!   xcompiling=0
    NATIVE=yes
    CANADIAN=no
    NULL_TARGET=no
--- 196,202 ----
    # We are being configured natively. We can do more elaborate tests
    # that include AC_TRY_COMPILE now, as the linker is assumed to be
    # working.
!   GLIBCPP_IS_CROSS_COMPILING=0
    NATIVE=yes
    CANADIAN=no
    NULL_TARGET=no
*************** else
*** 221,235 ****
    AC_FUNC_MMAP
  fi
  
! # Now that ctype is determined for all possible targets, we can do this...
! AC_LINK_FILES($os_include_dir/bits/ctype_base.h, \
! include/bits/ctype_base.h)
! AC_LINK_FILES($os_include_dir/bits/ctype_inline.h, \
! include/bits/ctype_inline.h)
! AC_LINK_FILES($os_include_dir/bits/ctype_noninline.h, \
! include/bits/ctype_noninline.h)
! 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)
--- 221,234 ----
    AC_FUNC_MMAP
  fi
  
! # Propagate the target-specific source directories through the build chain
! OS_INC_SRCDIR=$os_include_dir/bits
! ATOMICITY_INC_SRCDIR=$ATOMICITYH/bits
! AC_SUBST(OS_INC_SRCDIR)
! AC_SUBST(ATOMICITY_INC_SRCDIR)
  
+ # Set up cross-compile flags
+ AC_SUBST(GLIBCPP_IS_CROSS_COMPILING)
  AM_CONDITIONAL(NULL_TARGET, test "$NULL_TARGET" = yes)
  AM_CONDITIONAL(NATIVE, test "$NATIVE" = yes || test "$NULL_TARGET" = yes)
  AM_CONDITIONAL(CANADIAN, test "$CANADIAN" = yes)
*************** else
*** 243,251 ****
    multilib_arg=
  fi
  
- 
- # Generate the various Makefiles, include files, and scripts.
- 
  # Needed so that g++ can find the correct include subdir automatically.
  INTERFACE=v3
  
--- 242,247 ----
*************** else
*** 263,283 ****
    LIBSUPCXX_PICFLAGS=
  fi
  AC_SUBST(LIBSUPCXX_PICFLAGS)
- 
- # This should be done by mkincludedir, but hack around it now.
- blddir=`pwd`
- echo "checking for $blddir/include"
- 
- if test ! -d "$blddir/include"; then
-   mkdir "$blddir/include"
- fi
  
  # NB: Multilibs need MULTISUBDIR defined correctly in src/Makefile.am
  # and libsupc++/Makefile.am so that multilib installs will end up
  # 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(Makefile src/Makefile libmath/Makefile libio/Makefile libsupc++/Makefile testsuite/Makefile mkcheck testsuite_flags,
  [if test -n "$CONFIG_FILES"; then
    ac_file=Makefile . ${glibcpp_basedir}/../config-ml.in
    grep '^MULTISUBDIR =' Makefile >> src/Makefile
--- 259,275 ----
    LIBSUPCXX_PICFLAGS=
  fi
  AC_SUBST(LIBSUPCXX_PICFLAGS)
  
+ # Generate the various Makefiles, include files, and scripts.
  # NB: Multilibs need MULTISUBDIR defined correctly in src/Makefile.am
  # and libsupc++/Makefile.am so that multilib installs will end up
  # 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(Makefile \
! 	  include/Makefile src/Makefile \
! 	  libmath/Makefile libio/Makefile libsupc++/Makefile \
! 	  testsuite/Makefile mkcheck testsuite_flags,
  [if test -n "$CONFIG_FILES"; then
    ac_file=Makefile . ${glibcpp_basedir}/../config-ml.in
    grep '^MULTISUBDIR =' Makefile >> src/Makefile
*************** glibcpp_basedir=${glibcpp_basedir}
*** 296,317 ****
  CC="${CC}"
  CXX="${CXX}"
  )
- 
- 
- # Generate bits/c++config.h
- # NB: This must be the first generated file as others include it. . .
- $srcdir/mkc++config $blddir $srcdir
- 
- # Generate bits/std_limits.h and src/limitsMEMBERS.cc
- if test ! -f stamp-limits; then
-   $srcdir/mknumeric_limits $blddir $srcdir $xcompiling
-   if test ! -f include/bits/std_limits.h; then
-     echo "mknumeric_limits failed to execute properly: exiting"
-     exit 1
-   else
-     touch stamp-limits 
-   fi
- fi
  
  
  # Sanity checking & User-visible messages.
--- 288,293 ----
Index: testsuite_flags.in
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/testsuite_flags.in,v
retrieving revision 1.3
diff -c -p -r1.3 testsuite_flags.in
*** testsuite_flags.in	2001/05/16 02:03:30	1.3
--- testsuite_flags.in	2001/06/06 22:26:23
*************** case ${query} in
*** 32,43 ****
        echo ${INCLUDES}
        ;;
      --build-includes)
!       C_DIR="`basename  @C_INCLUDE_DIR@`"
!       INCLUDES="-nostdinc++ -I${BUILD_DIR}/include -I${SRC_DIR}/include
!                 -I${SRC_DIR}/include/std  -I${SRC_DIR}/include/$C_DIR
! 	        -I${SRC_DIR}/libsupc++ -I${SRC_DIR}/libio 
! 		-I${SRC_DIR}/testsuite
! 		-I${SRC_DIR}/include/backwards -I${SRC_DIR}/include/ext"
        echo ${INCLUDES}
        ;;
      --install-cxx)
--- 32,40 ----
        echo ${INCLUDES}
        ;;
      --build-includes)
!       INCLUDES="-nostdinc++ @GLIBCPP_INCLUDES@
!                 -I${SRC_DIR}/libsupc++ -I${SRC_DIR}/libio
!                 -I${SRC_DIR}/testsuite"
        echo ${INCLUDES}
        ;;
      --install-cxx)
Index: include/Makefile.am
===================================================================
RCS file: Makefile.am
diff -N Makefile.am
*** /dev/null	Tue May  5 13:32:27 1998
--- Makefile.am	Wed Jun  6 15:26:25 2001
***************
*** 0 ****
--- 1,400 ----
+ ## Makefile for the include subdirectory of the GNU C++ Standard library.
+ ##
+ ## Copyright (C) 2001 Free Software Foundation, Inc.
+ ##
+ ## This file is part of the libstdc++ version 3 distribution.
+ ## Process this file with automake to produce Makefile.in.
+ 
+ ## 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
+ ## terms of the GNU General Public License as published by the
+ ## Free Software Foundation; either version 2, or (at your option)
+ ## any later version.
+ 
+ ## This library is distributed in the hope that it will be useful,
+ ## but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ ## GNU General Public License for more details.
+ 
+ ## You should have received a copy of the GNU General Public License along
+ ## with this library; see the file COPYING.  If not, write to the Free
+ ## Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+ ## USA.
+ 
+ ## $Id$
+ 
+ AUTOMAKE_OPTIONS = 1.3 gnits
+ MAINT_CHARSET = latin1
+ 
+ mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs
+ 
+ # Cross compiler and multilib support.
+ CXX = @glibcpp_CXX@
+ glibcpp_srcdir=@glibcpp_srcdir@
+ glibcpp_builddir=@glibcpp_builddir@
+ 
+ base_srcdir = ${glibcpp_srcdir}/include/bits
+ base_builddir = ./bits
+ base_headers = \
+ 	${base_srcdir}/basic_file.h \
+ 	${base_srcdir}/basic_ios.h \
+ 	${base_srcdir}/basic_ios.tcc \
+ 	${base_srcdir}/basic_string.h \
+ 	${base_srcdir}/basic_string.tcc \
+ 	${base_srcdir}/boost_concept_check.h \
+ 	${base_srcdir}/char_traits.h \
+ 	${base_srcdir}/codecvt.h \
+ 	${base_srcdir}/concept_check.h \
+ 	${base_srcdir}/cpp_type_traits.h \
+ 	${base_srcdir}/fpos.h \
+ 	${base_srcdir}/fstream.tcc \
+ 	${base_srcdir}/functexcept.h \
+ 	${base_srcdir}/generic_shadow.h \
+ 	${base_srcdir}/gslice.h \
+ 	${base_srcdir}/gslice_array.h \
+ 	${base_srcdir}/indirect_array.h \
+ 	${base_srcdir}/ios_base.h \
+ 	${base_srcdir}/istream.tcc \
+ 	${base_srcdir}/locale_facets.h \
+ 	${base_srcdir}/locale_facets.tcc \
+ 	${base_srcdir}/localefwd.h \
+ 	${base_srcdir}/mask_array.h \
+ 	${base_srcdir}/ostream.tcc \
+ 	${base_srcdir}/pthread_allocimpl.h \
+ 	${base_srcdir}/sbuf_iter.h \
+ 	${base_srcdir}/slice.h \
+ 	${base_srcdir}/slice_array.h \
+ 	${base_srcdir}/sstream.tcc \
+ 	${base_srcdir}/std_algorithm.h \
+ 	${base_srcdir}/std_bitset.h \
+ 	${base_srcdir}/std_complex.h \
+ 	${base_srcdir}/std_deque.h \
+ 	${base_srcdir}/std_fstream.h \
+ 	${base_srcdir}/std_functional.h \
+ 	${base_srcdir}/std_iomanip.h \
+ 	${base_srcdir}/std_ios.h \
+ 	${base_srcdir}/std_iosfwd.h \
+ 	${base_srcdir}/std_iostream.h \
+ 	${base_srcdir}/std_istream.h \
+ 	${base_srcdir}/std_iterator.h \
+ 	${base_srcdir}/std_list.h \
+ 	${base_srcdir}/std_locale.h \
+ 	${base_srcdir}/std_map.h \
+ 	${base_srcdir}/std_memory.h \
+ 	${base_srcdir}/std_numeric.h \
+ 	${base_srcdir}/std_ostream.h \
+ 	${base_srcdir}/std_queue.h \
+ 	${base_srcdir}/std_set.h \
+ 	${base_srcdir}/std_sstream.h \
+ 	${base_srcdir}/std_stack.h \
+ 	${base_srcdir}/std_stdexcept.h \
+ 	${base_srcdir}/std_streambuf.h \
+ 	${base_srcdir}/std_string.h \
+ 	${base_srcdir}/std_utility.h \
+ 	${base_srcdir}/std_valarray.h \
+ 	${base_srcdir}/std_vector.h \
+ 	${base_srcdir}/stl_algo.h \
+ 	${base_srcdir}/stl_algobase.h \
+ 	${base_srcdir}/stl_alloc.h \
+ 	${base_srcdir}/stl_bvector.h \
+ 	${base_srcdir}/stl_construct.h \
+ 	${base_srcdir}/stl_deque.h \
+ 	${base_srcdir}/stl_function.h \
+ 	${base_srcdir}/stl_heap.h \
+ 	${base_srcdir}/stl_iterator.h \
+ 	${base_srcdir}/stl_iterator_base_funcs.h \
+ 	${base_srcdir}/stl_iterator_base_types.h \
+ 	${base_srcdir}/stl_list.h \
+ 	${base_srcdir}/stl_map.h \
+ 	${base_srcdir}/stl_multimap.h \
+ 	${base_srcdir}/stl_multiset.h \
+ 	${base_srcdir}/stl_numeric.h \
+ 	${base_srcdir}/stl_pair.h \
+ 	${base_srcdir}/stl_pthread_alloc.h \
+ 	${base_srcdir}/stl_queue.h \
+ 	${base_srcdir}/stl_raw_storage_iter.h \
+ 	${base_srcdir}/stl_relops.h \
+ 	${base_srcdir}/stl_set.h \
+ 	${base_srcdir}/stl_stack.h \
+ 	${base_srcdir}/stl_tempbuf.h \
+ 	${base_srcdir}/stl_threads.h \
+ 	${base_srcdir}/stl_tree.h \
+ 	${base_srcdir}/stl_uninitialized.h \
+ 	${base_srcdir}/stl_vector.h \
+ 	${base_srcdir}/streambuf.tcc \
+ 	${base_srcdir}/stringfwd.h \
+ 	${base_srcdir}/type_traits.h \
+ 	${base_srcdir}/valarray_array.h \
+ 	${base_srcdir}/valarray_array.tcc \
+ 	${base_srcdir}/valarray_meta.h
+ 
+ backward_srcdir = ${glibcpp_srcdir}/include/backward
+ backward_builddir = ./backward
+ backward_headers = \
+ 	${backward_srcdir}/complex.h \
+ 	${backward_srcdir}/iomanip.h \
+ 	${backward_srcdir}/istream.h \
+ 	${backward_srcdir}/ostream.h \
+ 	${backward_srcdir}/stream.h \
+ 	${backward_srcdir}/streambuf.h \
+ 	${backward_srcdir}/algo.h \
+ 	${backward_srcdir}/algobase.h \
+ 	${backward_srcdir}/alloc.h \
+ 	${backward_srcdir}/bvector.h \
+ 	${backward_srcdir}/defalloc.h \
+ 	${backward_srcdir}/deque.h \
+ 	${backward_srcdir}/function.h \
+ 	${backward_srcdir}/hash_map.h \
+ 	${backward_srcdir}/hash_set.h \
+ 	${backward_srcdir}/hashtable.h \
+ 	${backward_srcdir}/heap.h \
+ 	${backward_srcdir}/iostream.h \
+ 	${backward_srcdir}/iterator.h \
+ 	${backward_srcdir}/list.h \
+ 	${backward_srcdir}/map.h \
+ 	${backward_srcdir}/multimap.h \
+ 	${backward_srcdir}/new.h \
+ 	${backward_srcdir}/multiset.h \
+ 	${backward_srcdir}/pair.h \
+ 	${backward_srcdir}/queue.h \
+ 	${backward_srcdir}/rope.h \
+ 	${backward_srcdir}/set.h \
+ 	${backward_srcdir}/slist.h \
+ 	${backward_srcdir}/stack.h \
+ 	${backward_srcdir}/tempbuf.h \
+ 	${backward_srcdir}/tree.h \
+ 	${backward_srcdir}/vector.h \
+ 	${backward_srcdir}/fstream.h \
+ 	${backward_srcdir}/strstream.h \
+ 	${backward_srcdir}/strstream \
+ 	${backward_srcdir}/backward_warning.h
+ 
+ ext_srcdir = ${glibcpp_srcdir}/include/ext
+ ext_builddir = ./ext
+ ext_headers = \
+ 	${ext_srcdir}/rope \
+ 	${ext_srcdir}/ropeimpl.h \
+ 	${ext_srcdir}/stl_rope.h \
+ 	${ext_srcdir}/slist \
+ 	${ext_srcdir}/hash_map \
+ 	${ext_srcdir}/hash_set \
+ 	${ext_srcdir}/stl_hashtable.h \
+ 	${ext_srcdir}/stl_hash_fun.h
+ 
+ c_base_srcdir = @C_INCLUDE_DIR@/bits
+ c_base_builddir = ./${target_alias}/bits
+ c_base_headers = \
+ 	${c_base_srcdir}/std_cassert.h \
+ 	${c_base_srcdir}/std_cctype.h \
+ 	${c_base_srcdir}/std_cerrno.h \
+ 	${c_base_srcdir}/std_cfloat.h \
+ 	${c_base_srcdir}/std_climits.h \
+ 	${c_base_srcdir}/std_clocale.h \
+ 	${c_base_srcdir}/std_cmath.h \
+ 	${c_base_srcdir}/std_csetjmp.h \
+ 	${c_base_srcdir}/std_csignal.h \
+ 	${c_base_srcdir}/std_cstdarg.h \
+ 	${c_base_srcdir}/std_cstddef.h \
+ 	${c_base_srcdir}/std_cstdio.h \
+ 	${c_base_srcdir}/std_cstdlib.h \
+ 	${c_base_srcdir}/std_cstring.h \
+ 	${c_base_srcdir}/std_ctime.h \
+ 	${c_base_srcdir}/std_cwchar.h \
+ 	${c_base_srcdir}/std_cwctype.h \
+ 	${c_base_srcdir}/cmath.tcc
+ 
+ if GLIBCPP_USE_CSHADOW
+ c_shadow_headers = \
+ 	assert.h ctype.h errno.h float.h limits.h locale.h math.h setjmp.h \
+ 	signal.h stdarg.h stddef.h stdio.h stdlib.h string.h time.h wchar.h \
+ 	wctype.h fcntl.h libio.h iolibio.h libioP.h pthread.h iconv.h \
+ 	features.h langinfo.h \
+ 	bits/wrap_libio.h bits/wrap_iolibio.h bits/wrap_libioP.h \
+ 	bits/wrap_iconv.h bits/wrap_fcntl.h bits/wrap_pthread.h \
+ 	bits/wrap_features.h bits/wrap_langinfo.h \
+ 	sys/cdefs.h
+ else
+ c_shadow_headers =
+ endif
+ 
+ std_srcdir = ${glibcpp_srcdir}/include/std
+ std_builddir = ./
+ std_headers = \
+ 	${std_srcdir}/algorithm \
+ 	${std_srcdir}/bitset \
+ 	${std_srcdir}/complex \
+ 	${std_srcdir}/deque \
+ 	${std_srcdir}/fstream \
+ 	${std_srcdir}/functional \
+ 	${std_srcdir}/iomanip \
+ 	${std_srcdir}/ios \
+ 	${std_srcdir}/iosfwd \
+ 	${std_srcdir}/iostream \
+ 	${std_srcdir}/istream \
+ 	${std_srcdir}/iterator \
+ 	${std_srcdir}/limits \
+ 	${std_srcdir}/list \
+ 	${std_srcdir}/locale \
+ 	${std_srcdir}/map \
+ 	${std_srcdir}/memory \
+ 	${std_srcdir}/numeric \
+ 	${std_srcdir}/ostream \
+ 	${std_srcdir}/queue \
+ 	${std_srcdir}/set \
+ 	${std_srcdir}/sstream \
+ 	${std_srcdir}/stack \
+ 	${std_srcdir}/stdexcept \
+ 	${std_srcdir}/streambuf \
+ 	${std_srcdir}/string \
+ 	${std_srcdir}/utility \
+ 	${std_srcdir}/valarray \
+ 	${std_srcdir}/vector \
+ 	${std_srcdir}/cassert \
+ 	${std_srcdir}/cctype \
+ 	${std_srcdir}/cerrno \
+ 	${std_srcdir}/cfloat \
+ 	${std_srcdir}/climits \
+ 	${std_srcdir}/clocale \
+ 	${std_srcdir}/ciso646 \
+ 	${std_srcdir}/cmath \
+ 	${std_srcdir}/csetjmp \
+ 	${std_srcdir}/csignal \
+ 	${std_srcdir}/cstdarg \
+ 	${std_srcdir}/cstddef \
+ 	${std_srcdir}/cstdio \
+ 	${std_srcdir}/cstdlib \
+ 	${std_srcdir}/cstring \
+ 	${std_srcdir}/ctime \
+ 	${std_srcdir}/cwchar \
+ 	${std_srcdir}/cwctype
+ 
+ libio_srcdir = ${glibcpp_srcdir}/libio
+ libio_builddir = ./
+ if GLIBCPP_NEED_LIBIO
+ libio_headers = \
+ 	$(libio_srcdir)/libio/_G_config.h \
+ 	$(libio_srcdir)/libio/libio.h
+ else
+ libio_headers =
+ endif
+ 
+ target_srcdir = ${glibcpp_srcdir}/@OS_INC_SRCDIR@
+ target_builddir = ./${target_alias}/bits
+ target_headers = \
+ 	${target_srcdir}/ctype_base.h \
+ 	${target_srcdir}/ctype_inline.h \
+ 	${target_srcdir}/ctype_noninline.h \
+ 	${target_srcdir}/os_defines.h \
+ 	${glibcpp_srcdir}/@ATOMICITY_INC_SRCDIR@/atomicity.h
+ 
+ # Here are the rules for building the headers
+ all-local: \
+ 	${target_builddir}/c++config.h \
+ 	${target_builddir}/std_limits.h \
+ 	stamp-std stamp-base stamp-c_base stamp-backward \
+ 	stamp-ext stamp-libio stamp-target \
+ 	${target_builddir}/basic_file_model.h \
+ 	${target_builddir}/c++io.h \
+ 	${target_builddir}/c++locale.h \
+ 	${target_builddir}/c++threads.h
+ 
+ stamp-std: ${std_headers}
+ 	@if [ ! -d "${std_builddir}" ]; then \
+ 	  mkdir -p ${std_builddir} ;\
+ 	fi ;\
+ 	cp $? ${std_builddir} ;\
+ 	echo `date` > stamp-std
+ 
+ stamp-base: ${base_headers}
+ 	@if [ ! -d "${base_builddir}" ]; then \
+ 	  mkdir -p ${base_builddir} ;\
+ 	fi ;\
+ 	cp $? ${base_builddir} ;\
+ 	echo `date` > stamp-base
+ 
+ stamp-c_base: ${c_base_headers}
+ 	@if [ ! -d "${c_base_builddir}" ]; then \
+ 	  mkdir -p ${c_base_builddir} ;\
+ 	fi ;\
+ 	cp $? ${c_base_builddir} ;\
+ 	echo `date` > stamp-c_base
+ 
+ stamp-backward: ${backward_headers}
+ 	@if [ ! -d "${backward_builddir}" ]; then \
+ 	  mkdir -p ${backward_builddir} ;\
+ 	fi ;\
+ 	cp $? ${backward_builddir} ;\
+ 	echo `date` > stamp-backward
+ 
+ stamp-ext: ${ext_headers}
+ 	@if [ ! -d "${ext_builddir}" ]; then \
+ 	  mkdir -p ${ext_builddir} ;\
+ 	fi ;\
+ 	cp $? ${ext_builddir} ;\
+ 	echo `date` > stamp-ext
+ 
+ stamp-libio: ${libio_headers}
+ 	@if [ ! -d "${libio_builddir}" ]; then \
+ 	  mkdir -p ${libio_builddir} ;\
+ 	fi ;\
+ 	cp $? ${libio_builddir} ;\
+ 	echo `date` > stamp-libio
+ 
+ stamp-target: ${target_headers} ${target_builddir}
+ 	@cp $? ${target_builddir} ;\
+ 	echo `date` > stamp-target
+ 
+ ${target_builddir}/basic_file_model.h: ${glibcpp_srcdir}/@BASIC_FILE_H@ \
+ 				       ${target_builddir}
+ 	@cp ${glibcpp_srcdir}/@BASIC_FILE_H@ ${target_builddir}/basic_file_model.h
+ 
+ ${target_builddir}/c++io.h: ${glibcpp_srcdir}/@CSTDIO_H@ ${target_builddir}
+ 	@cp ${glibcpp_srcdir}/@CSTDIO_H@ $@
+ 
+ ${target_builddir}/c++locale.h: ${glibcpp_srcdir}/@CLOCALE_H@ ${target_builddir}
+ 	@cp ${glibcpp_srcdir}/@CLOCALE_H@ $@
+ 
+ ${target_builddir}/c++threads.h: ${glibcpp_srcdir}/@CTHREAD_H@ \
+ 				 ${target_builddir}
+ 	@cp ${glibcpp_srcdir}/@CTHREAD_H@ $@
+ 
+ ${target_builddir}:
+ 	@if [ ! -d ${target_builddir} ]; then \
+ 	  mkdir -p ${target_builddir} ;\
+ 	fi
+ 
+ ${target_builddir}/c++config.h: ${glibcpp_builddir}/config.h \
+ 				${glibcpp_srcdir}/include/bits/c++config \
+ 				${target_builddir}
+ 	@cat ${glibcpp_srcdir}/include/bits/c++config > $@ ;\
+ 	sed -e 's/HAVE_/_GLIBCPP_HAVE_/g' \
+ 	-e 's/PACKAGE/_GLIBCPP_PACKAGE/g' \
+ 	-e 's/VERSION/_GLIBCPP_VERSION/g' \
+ 	-e 's/WORDS_/_GLIBCPP_WORDS_/g' \
+ 	< ${glibcpp_builddir}/config.h >> $@ ;\
+ 	echo "#endif // _CPP_CPPCONFIG_" >>$@
+ 
+ # This tool leaves the header in the wrong place, but rather than fix the
+ # tool, the destination get massaged here.
+ ${target_builddir}/std_limits.h: ${target_builddir}/c++config.h \
+ 				 stamp-target ${target_builddir}
+ 	CC="$(CC) -I${glibcpp_builddir} -I${target_builddir}/.." \
+ 	${glibcpp_srcdir}/mknumeric_limits \
+ 	${glibcpp_builddir} ${glibcpp_srcdir} @GLIBCPP_IS_CROSS_COMPILING@ ;\
+ 	mv ${glibcpp_builddir}/include/bits/std_limits.h ${target_builddir}
+ 
+ # One big happy istallation:  just copy everything
+ # from the build to the install tree (except for the build stamps)
+ gxx_include_dir = @gxx_include_dir@
+ 
+ install-data-local:
+ 	for file in `find . ! -name stamp-\* -print`; do \
+ 	installFile=${gxx_include_dir}/$${file} ;\
+ 	if [ -d $${file} ]; then \
+ 	  $(INSTALL) -d $${installFile} ;\
+ 	else \
+ 	  $(INSTALL_DATA) $${file} $${installFile} ;\
+ 	fi ;\
+ 	done
+ 
+ # TODO: clean targets
Index: libio/Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/libio/Makefile.am,v
retrieving revision 1.20
diff -c -p -r1.20 Makefile.am
*** Makefile.am	2001/02/03 09:01:44	1.20
--- Makefile.am	2001/06/06 22:26:27
*************** noinst_LTLIBRARIES =
*** 32,49 ****
  endif
  
  # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES
! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@
! C_INCLUDE_DIR = @C_INCLUDE_DIR@
  TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@
- LIBMATH_INCLUDES = @LIBMATH_INCLUDES@
- LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@
  LIBIO_INCLUDES = @LIBIO_INCLUDES@
- CSHADOW_INCLUDES = @CSHADOW_INCLUDES@
  
  INCLUDES = \
  	-nostdinc++ \
! 	-I$(top_builddir)/include -I$(GLIBCPP_INCLUDE_DIR) \
! 	$(LIBIO_INCLUDES) $(TOPLEVEL_INCLUDES)	
  
  libio_headers = \
          libio.h libioP.h iolibio.h
--- 32,44 ----
  endif
  
  # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES
! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@
  TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@
  LIBIO_INCLUDES = @LIBIO_INCLUDES@
  
  INCLUDES = \
  	-nostdinc++ \
! 	$(GLIBCPP_INCLUDES) $(LIBIO_INCLUDES) $(TOPLEVEL_INCLUDES)	
  
  libio_headers = \
          libio.h libioP.h iolibio.h
Index: libmath/Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/libmath/Makefile.am,v
retrieving revision 1.11
diff -c -p -r1.11 Makefile.am
*** Makefile.am	2001/02/03 09:01:44	1.11
--- Makefile.am	2001/06/06 22:26:29
*************** libmath_la_SOURCES = \
*** 46,60 ****
  LINK = $(LIBTOOL) --mode=link "$(CCLD)" $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
  
  # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES
! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@
! C_INCLUDE_DIR = @C_INCLUDE_DIR@
  TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@
- LIBMATH_INCLUDES = @LIBMATH_INCLUDES@
- LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@
- LIBIO_INCLUDES = @LIBIO_INCLUDES@
- CSHADOW_INCLUDES = @CSHADOW_INCLUDES@
  
  INCLUDES = \
! 	-I$(GLIBCPP_INCLUDE_DIR) -I$(top_builddir)/include  \
! 	$(TOPLEVEL_INCLUDES) 
  
--- 46,54 ----
  LINK = $(LIBTOOL) --mode=link "$(CCLD)" $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
  
  # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES
! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@
  TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@
  
  INCLUDES = \
! 	$(GLIBCPP_INCLUDES) $(TOPLEVEL_INCLUDES) 
  
Index: libsupc++/Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/libsupc++/Makefile.am,v
retrieving revision 1.27
diff -c -p -r1.27 Makefile.am
*** Makefile.am	2001/06/04 02:24:06	1.27
--- Makefile.am	2001/06/06 22:26:30
*************** WARN_CXXFLAGS = \
*** 55,72 ****
  	@WARN_FLAGS@ $(WERROR) -fdiagnostics-show-location=once
  
  # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES
! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@
! C_INCLUDE_DIR = @C_INCLUDE_DIR@
! CSTD_INCLUDES = @CSTD_INCLUDES@
! LIBMATH_INCLUDES = @LIBMATH_INCLUDES@
  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 
--- 55,66 ----
  	@WARN_FLAGS@ $(WERROR) -fdiagnostics-show-location=once
  
  # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES
! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@
  LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@
  
  INCLUDES = \
  	-I$(toplevel_srcdir)/gcc -I$(toplevel_srcdir)/include \
! 	$(GLIBCPP_INCLUDES) $(LIBSUPCXX_INCLUDES)
  
  headers = \
  	exception new typeinfo cxxabi.h exception_defines.h 
Index: src/Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/src/Makefile.am,v
retrieving revision 1.86
diff -c -p -r1.86 Makefile.am
*** Makefile.am	2001/06/01 09:22:05	1.86
--- Makefile.am	2001/06/06 22:26:32
*************** WARN_CXXFLAGS = \
*** 49,57 ****
  	@WARN_FLAGS@ $(WERROR) -fdiagnostics-show-location=once
  
  # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES
! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@
! C_INCLUDE_DIR = @C_INCLUDE_DIR@
! CSTD_INCLUDES = @CSTD_INCLUDES@
  LIBMATH_INCLUDES = @LIBMATH_INCLUDES@
  LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@
  LIBIO_INCLUDES = @LIBIO_INCLUDES@
--- 49,55 ----
  	@WARN_FLAGS@ $(WERROR) -fdiagnostics-show-location=once
  
  # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES
! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@
  LIBMATH_INCLUDES = @LIBMATH_INCLUDES@
  LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@
  LIBIO_INCLUDES = @LIBIO_INCLUDES@
*************** TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@
*** 59,168 ****
  
  INCLUDES = \
  	-nostdinc++ \
! 	-I$(GLIBCPP_INCLUDE_DIR) $(CSTD_INCLUDES) -I$(top_builddir)/include \
  	$(LIBSUPCXX_INCLUDES) $(LIBIO_INCLUDES) $(LIBMATH_INCLUDES) \
  	$(TOPLEVEL_INCLUDES)
  
- base_headers = \
- 	bits/cpp_type_traits.h bits/char_traits.h bits/codecvt.h \
- 	bits/stringfwd.h bits/std_string.h bits/basic_string.h \
- 	bits/basic_string.tcc \
- 	bits/generic_shadow.h bits/std_utility.h \
- 	bits/std_complex.h \
- 	bits/valarray_array.h bits/valarray_array.tcc bits/valarray_meta.h \
- 	bits/std_valarray.h bits/mask_array.h bits/slice.h bits/slice_array.h \
- 	bits/gslice.h bits/gslice_array.h bits/indirect_array.h \
- 	bits/std_fstream.h bits/std_iomanip.h \
- 	bits/ios_base.h bits/fpos.h bits/basic_ios.h bits/basic_ios.tcc \
- 	bits/std_ios.h bits/std_iosfwd.h bits/std_iostream.h \
- 	bits/std_istream.h bits/istream.tcc bits/std_locale.h \
- 	bits/fstream.tcc bits/ostream.tcc bits/sbuf_iter.h bits/sstream.tcc \
- 	bits/std_ostream.h bits/std_sstream.h bits/std_streambuf.h \
- 	bits/streambuf.tcc bits/basic_file.h \
- 	bits/locale_facets.h bits/locale_facets.tcc bits/localefwd.h \
- 	bits/stl_pthread_alloc.h bits/pthread_allocimpl.h \
- 	bits/stl_threads.h \
- 	bits/stl_iterator_base_types.h bits/stl_iterator_base_funcs.h \
- 	bits/std_bitset.h bits/std_deque.h bits/std_functional.h \
- 	bits/std_iterator.h bits/std_list.h \
- 	bits/std_map.h bits/std_memory.h bits/std_numeric.h \
- 	bits/std_queue.h bits/std_set.h bits/std_stack.h \
- 	bits/std_stdexcept.h bits/functexcept.h bits/std_vector.h \
- 	bits/stl_algo.h bits/stl_algobase.h bits/stl_alloc.h \
- 	bits/stl_deque.h bits/stl_function.h \
- 	bits/stl_heap.h bits/stl_iterator.h bits/stl_list.h bits/stl_map.h \
- 	bits/stl_multimap.h bits/stl_multiset.h bits/stl_numeric.h \
- 	bits/stl_pair.h bits/stl_queue.h bits/stl_raw_storage_iter.h \
- 	bits/stl_relops.h bits/stl_set.h bits/stl_stack.h bits/stl_tempbuf.h \
- 	bits/stl_tree.h bits/stl_uninitialized.h bits/stl_vector.h \
- 	bits/stl_bvector.h bits/type_traits.h bits/std_algorithm.h \
- 	bits/stl_construct.h bits/boost_concept_check.h bits/concept_check.h
- 
- 
- backward_headers = \
- 	backward/complex.h backward/iomanip.h backward/istream.h \
- 	backward/ostream.h backward/stream.h backward/streambuf.h \
- 	backward/algo.h backward/algobase.h backward/alloc.h \
- 	backward/bvector.h backward/defalloc.h backward/deque.h \
- 	backward/function.h backward/hash_map.h backward/hash_set.h \
- 	backward/hashtable.h backward/heap.h backward/iostream.h \
- 	backward/iterator.h backward/list.h backward/map.h \
- 	backward/multimap.h backward/new.h backward/multiset.h \
- 	backward/pair.h backward/queue.h backward/rope.h backward/set.h \
- 	backward/slist.h backward/stack.h backward/tempbuf.h backward/tree.h \
- 	backward/vector.h backward/fstream.h backward/strstream.h \
- 	backward/strstream backward/backward_warning.h
- 
- ext_headers = \
- 	ext/rope ext/ropeimpl.h ext/stl_rope.h \
- 	ext/slist ext/hash_map ext/hash_set \
- 	ext/stl_hashtable.h ext/stl_hash_fun.h 
- 
- c_base_headers = \
- 	bits/std_cassert.h bits/std_cctype.h bits/std_cerrno.h \
- 	bits/std_cfloat.h bits/std_climits.h bits/std_clocale.h \
- 	bits/std_cmath.h bits/std_csetjmp.h bits/std_csignal.h \
- 	bits/std_cstdarg.h bits/std_cstddef.h bits/std_cstdio.h \
- 	bits/std_cstdlib.h bits/std_cstring.h bits/std_ctime.h \
- 	bits/std_cwchar.h bits/std_cwctype.h bits/cmath.tcc
- 
- if GLIBCPP_USE_CSHADOW
- c_shadow_headers = \
- 	assert.h ctype.h errno.h float.h limits.h locale.h math.h setjmp.h \
- 	signal.h stdarg.h stddef.h stdio.h stdlib.h string.h time.h wchar.h \
- 	wctype.h fcntl.h libio.h iolibio.h libioP.h pthread.h iconv.h \
- 	features.h langinfo.h \
- 	bits/wrap_libio.h bits/wrap_iolibio.h bits/wrap_libioP.h \
- 	bits/wrap_iconv.h bits/wrap_fcntl.h bits/wrap_pthread.h \
- 	bits/wrap_features.h bits/wrap_langinfo.h \
- 	sys/cdefs.h 
- else
- c_shadow_headers =
- endif
- 
- std_headers = \
- 	algorithm bitset complex deque fstream functional \
- 	iomanip ios iosfwd iostream istream iterator limits list locale \
- 	map memory numeric ostream queue set sstream stack stdexcept \
- 	streambuf string utility valarray vector \
- 	cassert cctype cerrno cfloat climits clocale ciso646 \
- 	cmath csetjmp csignal cstdarg cstddef cstdio cstdlib \
- 	cstring ctime cwchar cwctype
- 
- if GLIBCPP_NEED_LIBIO 
- libio_headers = \
- 	$(top_srcdir)/libio/_G_config.h $(top_srcdir)/libio/libio.h
- else
- libio_headers =
- endif
- 
- build_headers = \
- 	bits/std_limits.h \
- 	bits/c++config.h bits/c++io.h bits/c++locale.h bits/c++threads.h \
- 	bits/basic_file_model.h \
- 	bits/atomicity.h bits/os_defines.h \
- 	bits/ctype_base.h bits/ctype_noninline.h bits/ctype_inline.h 
- 
  sources = \
  	limitsMEMBERS.cc \
  	stdexcept.cc functexcept.cc bitset.cc \
--- 57,66 ----
  
  INCLUDES = \
  	-nostdinc++ \
! 	$(GLIBCPP_INCLUDES) \
  	$(LIBSUPCXX_INCLUDES) $(LIBIO_INCLUDES) $(LIBMATH_INCLUDES) \
  	$(TOPLEVEL_INCLUDES)
  
  sources = \
  	limitsMEMBERS.cc \
  	stdexcept.cc functexcept.cc bitset.cc \
*************** sources = \
*** 173,179 ****
  	string-inst.cc wstring-inst.cc 
  
  
! VPATH = $(top_srcdir):$(top_srcdir)/src:$(GLIBCPP_INCLUDE_DIR):$(GLIBCPP_INCLUDE_DIR)/std:$(C_INCLUDE_DIR)
  
  libstdc___la_SOURCES = $(sources)
  
--- 71,77 ----
  	string-inst.cc wstring-inst.cc 
  
  
! VPATH = $(top_srcdir):$(top_srcdir)/src
  
  libstdc___la_SOURCES = $(sources)
  
*************** libstdc___la_DEPENDENCIES = $(libstdc___
*** 188,283 ****
  
  # Use special rules for the deprecated source files so that they find
  # deprecated include files.
  strstream.lo: strstream.cc
  	$(LTCXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $<
  strstream.o: strstream.cc
  	$(CXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $<
- 
- # Make sure cshadow headers are built first.
- if GLIBCPP_USE_CSHADOW
- CSHADOW_H = $(top_builddir)/stamp-cshadow
- else
- CSHADOW_H =
- endif
- 
- # Specify that all *.o's depend on this.
- $(libstdc___la_OBJECTS): $(CSHADOW_H)
- 
- $(top_builddir)/stamp-cshadow: $(top_srcdir)/mkinclosure \
- 	                       $(top_srcdir)/mkcshadow
- 	$(top_srcdir)/mkinclosure \
- 	"-I $(top_builddir)/../../gcc/include -I /usr/include -G fcntl.h unistd.h" | $(top_srcdir)/mkcshadow;
- 	rm -f  $(top_builddir)/stamp-cshadow 
- 	echo "done" > $(top_builddir)/stamp-cshadow 
- 
- 
- # Check for various configure bits that change where the headers get installed.
- gxx_include_dir = @gxx_include_dir@
- gxx_target_include_dir = $(gxx_include_dir)/$(target_alias)
- 
- # We have our own special, ridiculously complicated installation routine
- # here, as automake/autoconf is currently brain-damaged when it comes
- # to installing sub-directories of headers. In particular, we want to
- # 1) install build headers from (blddir)/include/bits -> (install)/bits
- # 2) install source headers from
- #      (srcdir)/include/bits -> (install)/bits
- #      (srcdir)/include/ext -> (install)/ext
- #      (srcdir)/include/backward -> (install)/backward
- #      ... and the always entertaining "C" compatibility bits
- #      where * represents configure-time directory switching
- #      (srcdir)/include/c* -> (install)/
- #      (srcdir)/include/c*/bits -> (install)/bits
- #      (srcdir)/include/c*/sys -> (install)/sys
- install-data-local: myinstalldirs myinstallheaders
- 
- # NB: installation of shadow header directories is not attempted.
- myinstalldirs:
- 	if test -z "$(MULTISUBDIR)"; then \
- 	$(mkinstalldirs) $(DESTDIR)$(gxx_include_dir)/backward; \
- 	$(mkinstalldirs) $(DESTDIR)$(gxx_include_dir)/bits; \
- 	$(mkinstalldirs) $(DESTDIR)$(gxx_include_dir)/ext; \
- 	$(mkinstalldirs) $(DESTDIR)$(gxx_target_include_dir)/bits; \
- 	fi
- 
- # NB: As libio_headers may be empty, need this to make sure bash doesn't
- # choke on an empty for... loop by using libio_headers_install
- # NB: installation of shadow headers is not attempted.
- src_incdir = @GLIBCPP_INCLUDE_DIR@
- bld_incdir = $(top_builddir)/include
- c_incdir = @C_INCLUDE_DIR@
- myinstallheaders: 
- 	if test -z "$(MULTISUBDIR)"; then \
- 	for i in $(base_headers); do \
- 	echo "$(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/bits/";\
- 	  $(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/bits/; \
- 	done; \
- 	for i in $(ext_headers); do \
- 	echo "$(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/ext/";\
- 	  $(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/ext/; \
- 	done; \
- 	for i in $(backward_headers); do \
- 	echo "$(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/backward/";\
- 	  $(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/backward/; \
- 	done; \
- 	for i in $(c_base_headers); do \
- 	echo "$(INSTALL_DATA) $(c_incdir)/$$i $(gxx_include_dir)/bits/";\
- 	  $(INSTALL_DATA) $(c_incdir)/$$i $(gxx_include_dir)/bits/; \
- 	done; \
- 	for i in $(std_headers); do \
- 	echo "$(INSTALL_DATA) $(src_incdir)/std/$$i $(gxx_include_dir)";\
- 	  $(INSTALL_DATA) $(src_incdir)/std/$$i $(gxx_include_dir); \
- 	done; \
- 	for i in $(build_headers); do \
- 	echo "$(INSTALL_DATA) $(bld_incdir)/$$i \
- 	  $(gxx_target_include_dir)/bits/"; $(INSTALL_DATA) \
- 	  $(bld_incdir)/$$i $(gxx_target_include_dir)/bits/; \
- 	done; \
- 	libio_headers_install='$(libio_headers)'; \
- 	for i in $$libio_headers_install; do \
- 	echo "$(INSTALL_DATA) $$i $(gxx_include_dir)"; \
- 	  $(INSTALL_DATA) $$i $(gxx_include_dir); \
- 	done; \
- 	fi;
  
  
  # AM_CXXFLAGS needs to be in each subdirectory so that it can be
--- 86,96 ----
  
  # Use special rules for the deprecated source files so that they find
  # deprecated include files.
+ GLIBCPP_INCLUDE_DIR=@glibcpp_builddir@/include
  strstream.lo: strstream.cc
  	$(LTCXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $<
  strstream.o: strstream.cc
  	$(CXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $<
  
  
  # AM_CXXFLAGS needs to be in each subdirectory so that it can be
Index: testsuite/Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/testsuite/Makefile.in,v
retrieving revision 1.6
diff -c -p -r1.6 Makefile.in
*** Makefile.in	2001/05/14 01:15:36	1.6
--- Makefile.in	2001/06/06 22:26:33
*************** target_alias = @target_alias@
*** 65,74 ****
  target_triplet = @target@
  AR = @AR@
  AS = @AS@
  CC = @CC@
  CPP = @CPP@
  CSHADOW_FLAGS = @CSHADOW_FLAGS@
! CSTD_INCLUDES = @CSTD_INCLUDES@
  CXX = @CXX@
  CXXCPP = @CXXCPP@
  C_INCLUDE_DIR = @C_INCLUDE_DIR@
--- 65,79 ----
  target_triplet = @target@
  AR = @AR@
  AS = @AS@
+ ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@
+ BASIC_FILE_H = @BASIC_FILE_H@
  CC = @CC@
+ CCODECVT_C = @CCODECVT_C@
+ CLOCALE_H = @CLOCALE_H@
  CPP = @CPP@
  CSHADOW_FLAGS = @CSHADOW_FLAGS@
! CSTDIO_H = @CSTDIO_H@
! CTHREAD_H = @CTHREAD_H@
  CXX = @CXX@
  CXXCPP = @CXXCPP@
  C_INCLUDE_DIR = @C_INCLUDE_DIR@
*************** EXEEXT = @EXEEXT@
*** 78,84 ****
  EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@
  GCJ = @GCJ@
  GCJFLAGS = @GCJFLAGS@
! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@
  LIBIO_INCLUDES = @LIBIO_INCLUDES@
  LIBMATHOBJS = @LIBMATHOBJS@
  LIBMATH_INCLUDES = @LIBMATH_INCLUDES@
--- 83,90 ----
  EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@
  GCJ = @GCJ@
  GCJFLAGS = @GCJFLAGS@
! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@
! GLIBCPP_IS_CROSS_COMPILING = @GLIBCPP_IS_CROSS_COMPILING@
  LIBIO_INCLUDES = @LIBIO_INCLUDES@
  LIBMATHOBJS = @LIBMATHOBJS@
  LIBMATH_INCLUDES = @LIBMATH_INCLUDES@
*************** OBJDUMP = @OBJDUMP@
*** 93,98 ****
--- 99,105 ----
  OBJEXT = @OBJEXT@
  OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@
  OPT_LDFLAGS = @OPT_LDFLAGS@
+ OS_INC_SRCDIR = @OS_INC_SRCDIR@
  PACKAGE = @PACKAGE@
  RANLIB = @RANLIB@
  SECTION_FLAGS = @SECTION_FLAGS@


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]