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/wwwdocs] patch for making older snapshot work with 2.95.3



The last libstdc++ snapshot that can be used with gcc 2.95.2 is 2.90.8;
after that there were changes in the compiler itself which the library
sources tracked.  However, the 2.90.8 snapshot doesn't work with the 2.95.3
compiler, due to the very changes which made 2.95.3 necessary in the first
place (i.e., glibc).

This updates the v3 status.html page, and adds a trivial patch for those
users who want to go that route, in case they can't use GCC 3.0 but still
want libstdc++-v3.  The patch is below, the new file is attached.  It'll be
in the unchanging wwwdocs area rather than the rebuilt-daily onlinedocs area.



2001-05-23  Phil Edwards  <pme@sources.redhat.com>

	* libstdc++-2.90.8-compat-gcc-2.95.3.diff:  New file.
	* status.html:  Point to it.  Mention 2.95.3 situation.


Index: status.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/libstdc++/status.html,v
retrieving revision 1.11
diff -u -3 -p -r1.11 status.html
--- status.html	2001/05/17 21:31:38	1.11
+++ status.html	2001/05/23 17:38:09
@@ -26,6 +26,16 @@
    <A HREF="download.html">libstdc++-2.90.8.tar.gz</A>.
 </P>
 
+<P>If you are using
+   <A HREF="http://gcc.gnu.org/gcc-2.95/gcc-2.95.2.html";>GCC 2.95.3</A>,
+   then the most recent usable version of this library is <EM>still</EM>
+   the ninth snapshot release,
+   <A HREF="download.html">libstdc++-2.90.8.tar.gz</A>, <EM>and</EM> you
+   will need to apply
+   <A HREF="libstdc++-2.90.8-compat-gcc-2.95.3.diff">this patch</A> to
+   mirror the changes made in gcc/glibc.
+</P>
+
 <P>New things that work are in the latest
    <A HREF="http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/RELEASE-NOTES";>release notes</A>.
 </P>

  One of the changes between glibc 2.1 and 2.2 was the underlying type of
  the streampos typedef.  This necessitated a change in some of the gcc
  include files, and was one of the primary motivations for the 2.95.2 ->
  2.95.3 release.

  The patch here

      http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff

  (referenced from the gcc platform-specific installation page) takes care
  of the differences for the older libstdc++, since the new implementation
  wasn't distributed with the compiler at that time.

  The 2.90.8 snapshot of libstdc++-v3 is still the most recent one that
  will work with the 2.95.x compiler, but for 2.95.3 you need to apply
  the following patch to the libstdc++-v3 sources before configuring.
  I recommend that after patching, you wait a few seconds and then run
  "touch" on the src/Makefile.in file to insure that the build process
  will not incorrectly believe it is outdated.

  (Only the first hunk is glibc-2.2 related.  The other two hunks fix
  the -Werror problem that was discovered about ten minutes after 2.90.8
  was rolled.)


diff -ru3 libstdc++-2.90.8/config/c_io_libio.h libstdc++-2.90.8-fixed/config/c_io_libio.h
--- libstdc++-2.90.8/config/c_io_libio.h	Fri Mar 24 16:18:56 2000
+++ libstdc++-2.90.8-fixed/config/c_io_libio.h	Wed May 23 02:45:04 2001
@@ -44,9 +44,9 @@
   typedef _IO_ssize_t 	wstreamsize;
 #endif
 #if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-  typedef _IO_fpos64_t  __c_streampos;
+  typedef _IO_off64_t  __c_streampos;
 #else
-  typedef _IO_fpos_t    __c_streampos;
+  typedef _IO_off_t    __c_streampos;
 #endif
 
   typedef _IO_lock_t	__c_lock;
diff -ru3 libstdc++-2.90.8/src/Makefile.am libstdc++-2.90.8-fixed/src/Makefile.am
--- libstdc++-2.90.8/src/Makefile.am	Fri Mar 24 16:18:57 2000
+++ libstdc++-2.90.8-fixed/src/Makefile.am	Wed May 23 02:45:22 2001
@@ -40,7 +40,7 @@
 # rules automake generates would be used.  We cannot allow CXX to be used
 # in libtool since this would add -lstdc++ to the link line which of
 # course is impossible.
-WERROR = -Werror
+WERROR =
 # OPTIMIZE_CXXFLAGS =  -O3 -fstrict-aliasing -fsquangle -fnew-exceptions \
 #                  -ffunction-sections -fvtable-gc -Wl,--gc-sections
 AC_CXXFLAGS = @OPTLEVEL@ @DEBUGFLAGS@ @NAMESPACES@
diff -ru3 libstdc++-2.90.8/src/Makefile.in libstdc++-2.90.8-fixed/src/Makefile.in
--- libstdc++-2.90.8/src/Makefile.in	Fri Mar 24 16:18:57 2000
+++ libstdc++-2.90.8-fixed/src/Makefile.in	Wed May 23 02:45:29 2001
@@ -114,7 +114,7 @@
 # rules automake generates would be used.  We cannot allow CXX to be used
 # in libtool since this would add -lstdc++ to the link line which of
 # course is impossible.
-WERROR = -Werror
+WERROR =
 # OPTIMIZE_CXXFLAGS =  -O3 -fstrict-aliasing -fsquangle -fnew-exceptions \
 #                  -ffunction-sections -fvtable-gc -Wl,--gc-sections
 AC_CXXFLAGS = @OPTLEVEL@ @DEBUGFLAGS@ @NAMESPACES@


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