diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 04a98956e22..85ca56a0346 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,11 @@
+2003-05-30 Phil Edwards
+
+ * docs/doxygen/filter: New file.
+ * docs/doxygen/filter.sed: New file.
+ * docs/doxygen/run_doxygen: Add g flag to sed substitutions. Duh.
+ * docs/doxygen/user.cfg.in (INPUT_FILTER): Point to new filter.
+ * docs/html/documentation.html: Fix links to doxygen pages.
+
2003-05-30 Paolo Carlini
* include/bits/fstream.tcc (_M_convert_to_external): Don't
diff --git a/libstdc++-v3/docs/doxygen/filter b/libstdc++-v3/docs/doxygen/filter
new file mode 100755
index 00000000000..4ea2d41b955
--- /dev/null
+++ b/libstdc++-v3/docs/doxygen/filter
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+script=$1
+file=$2
+
+# Possibly allow some files to go unchanged. Other
+# future manipulations are likely.
+case $file in
+ */alloc_policies.h)
+ cat $file ;;
+ *) sed -f $script $file ;;
+esac
+
diff --git a/libstdc++-v3/docs/doxygen/filter.sed b/libstdc++-v3/docs/doxygen/filter.sed
new file mode 100644
index 00000000000..e9c11a481c0
--- /dev/null
+++ b/libstdc++-v3/docs/doxygen/filter.sed
@@ -0,0 +1,26 @@
+# Input filter for doxygen.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Phil Edwards
+
+# single+capital is easy
+s/_Tp/Type/g
+s/_\([A-Z]\)/\1/g
+
+# double+lower is not so easy; some names should be left alone.
+# The following is a sloppy start. Possibly just require GNU tools
+# and use extensions.
+s/__a/a/g
+s/__c/c/g
+s/__first/first/g
+s/__in/in/g
+s/__last/last/g
+s/__n/n/g
+s/__out/out/g
+s/__pred/pred/g
+s/__position/position/g
+s/__pos/position/g
+s/__s/s/g
+s/__value/value/g
+s/__x/x/g
+s/__y/y/g
+
diff --git a/libstdc++-v3/docs/doxygen/run_doxygen b/libstdc++-v3/docs/doxygen/run_doxygen
index 248625a47b6..76b51110dff 100644
--- a/libstdc++-v3/docs/doxygen/run_doxygen
+++ b/libstdc++-v3/docs/doxygen/run_doxygen
@@ -134,8 +134,8 @@ test $do_man = yes && {
(
set -e
cd $builddir
- sed -e "s=@outdir@=${outdir}=" \
- -e "s=@srcdir@=${srcdir}=" \
+ sed -e "s=@outdir@=${outdir}=g" \
+ -e "s=@srcdir@=${srcdir}=g" \
-e "s=@html_output_dir@=html_${mode}=" \
-e "s=@enabled_sections@=${enabled_sections}=" \
-e "s=@do_html@=${do_html}=" \
diff --git a/libstdc++-v3/docs/doxygen/user.cfg.in b/libstdc++-v3/docs/doxygen/user.cfg.in
index a9644f7bd63..f661f925ff2 100644
--- a/libstdc++-v3/docs/doxygen/user.cfg.in
+++ b/libstdc++-v3/docs/doxygen/user.cfg.in
@@ -384,6 +384,7 @@ RECURSIVE = YES
EXCLUDE = Makefile \
CVS \
+ include/bits/demangle.h \
stdc++.h.gch
# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
@@ -433,7 +434,7 @@ IMAGE_PATH =
# input file. Doxygen will then use the output that the filter program writes
# to standard output.
-INPUT_FILTER =
+INPUT_FILTER = "@srcdir@/docs/doxygen/filter @srcdir@/docs/doxygen/filter.sed"
# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
# INPUT_FILTER) will be used to filter the input files when producing source
@@ -459,7 +460,7 @@ INLINE_SOURCES = NO
# doxygen to hide any special comment blocks from generated source code
# fragments. Normal C and C++ comments will always remain visible.
-STRIP_CODE_COMMENTS = YES
+STRIP_CODE_COMMENTS = NO
# If the REFERENCED_BY_RELATION tag is set to YES (the default)
# then for each documented function all documented
diff --git a/libstdc++-v3/docs/html/documentation.html b/libstdc++-v3/docs/html/documentation.html
index 827ed22c55f..778999d9687 100644
--- a/libstdc++-v3/docs/html/documentation.html
+++ b/libstdc++-v3/docs/html/documentation.html
@@ -67,24 +67,25 @@
the library classes, finding out what is in a particular include
file, looking at inheritance diagrams, etc.
-The Source-Level documentation can be viewed online:
+The source-level documentation for the most recent releases can
+ be viewed online:
+
This generated HTML collection, as above, is also available for download in
the libstdc++ snapshots directory at
<URL:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/>
.
- You will almost certainly need to use one of the mirror sites to download
- the tarball. After unpacking, simply load
- libstdc++-html-*/index.html into a browser. Feedback (and
- additional documentation!) is welcome.
+ You will almost certainly need to use one of the
+ mirror sites to download
+ the tarball. After unpacking, simply load libstdc++-html-*/index.html
+ into a browser.
+
+Documentation for older releases is available for download only, not
+ online viewing.
In addition, an initial set of man pages are also available in the
same place as the HTML collections. Start with C++Intro(3).