PR libstdc++/89466 avoid slow xsltproc command in configure
authorJonathan Wakely <jwakely@redhat.com>
Wed, 27 Feb 2019 11:25:44 +0000 (11:25 +0000)
committerJonathan Wakely <redi@gcc.gnu.org>
Wed, 27 Feb 2019 11:25:44 +0000 (11:25 +0000)
commita4395a846a9343960714568e7cf8af4425e63a50
treeccec7e20ed538f582a99e34533b8b0533544b73a
parent5fce606fc2b2bfad6ac252fa32f3bf280b834e6b
PR libstdc++/89466 avoid slow xsltproc command in configure

Certain broken versions of xsltproc ignore the --nonet option and will
attempt to fetch the docbook stylesheet from the WWW when it isn't in
the local XML catalog.

This patch checks for the local stylesheet directory first, and doesn't
use xsltproc if no local stylesheets are found. Checking for the local
directory is done using xmlcatalog if available, only checking the
hardcoded list of directories if xmlcatalog fails. The right directory
for Suse is added to the hardcoded list.

This should avoid doing an xsltproc check that would need to download
the stylesheet, so no network connection is made even if a broken
xsltproc is present.

PR libstdc++/89466
* acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Reorder check for local
stylesheet directories before check for xsltproc. Try to use
xmlcatalog to find local stylesheet directory before trying hardcoded
paths. Add path used by suse to hardcoded paths. Adjust xsltproc
check to look for the same stylesheet as doc/Makefile.am uses. Don't
use xsltproc if xmlcatalog fails to find a local stylesheet.
* configure.ac: Check for xmlcatalog.
* Makefile.in: Regenerate.
* configure: Likewise.
* doc/Makefile.in: Likewise.
* include/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* python/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* src/c++11/Makefile.in: Likewise.
* src/c++17/Makefile.in: Likewise.
* src/c++98/Makefile.in: Likewise.
* src/filesystem/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.

From-SVN: r269249
16 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/Makefile.in
libstdc++-v3/acinclude.m4
libstdc++-v3/configure
libstdc++-v3/configure.ac
libstdc++-v3/doc/Makefile.in
libstdc++-v3/include/Makefile.in
libstdc++-v3/libsupc++/Makefile.in
libstdc++-v3/po/Makefile.in
libstdc++-v3/python/Makefile.in
libstdc++-v3/src/Makefile.in
libstdc++-v3/src/c++11/Makefile.in
libstdc++-v3/src/c++17/Makefile.in
libstdc++-v3/src/c++98/Makefile.in
libstdc++-v3/src/filesystem/Makefile.in
libstdc++-v3/testsuite/Makefile.in