[PATCH] Fix libstdc++/45711: --enable-libstdcxx-debug on darwin
Ralf Wildenhues
Ralf.Wildenhues@gmx.de
Mon Sep 20 20:18:00 GMT 2010
I can reproduce the issue by simulating broken install and mkdir
programs. The patch below should fix it.
OK for trunk?
The 4.5 branch probably has this issue as well, and 4.4 hasn't, because
it used older autotools which didn't provide MKDIR_P yet (and mkdir_p is
computed differently).
There is a workaround: specify absolute $INSTALL at toplevel configure,
for example:
../gcc/configure INSTALL="`pwd`/../install-sh -c"
With that in mind, I'll leave you to decide whether a backport to 4.5 is
desirable. If you agree, I'll do it.
Thanks,
Ralf
Fix PR libstdc++/45711.
libstdc++-v3/ChangeLog:
2010-09-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
PR libstdc++/45711
* src/Makefile.am (stamp-debug): Also adjust possibly-relative
file names in MKDIR_P, and, for consistency, also top_build_prefix.
* src/Makefile.in: Regenerate.
diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am
index d5194c3..bd748aa 100644
--- a/libstdc++-v3/src/Makefile.am
+++ b/libstdc++-v3/src/Makefile.am
@@ -421,13 +421,16 @@ endif
debugdir = debug
# Build a set of debug objects here.
+# Take care to fix all possibly-relative paths.
stamp-debug:
if test ! -d ${debugdir}; then \
mkdir -p ${debugdir}; \
(cd ${debugdir}; \
sed -e 's/top_builddir = \.\./top_builddir = ..\/../' \
+ -e 's/top_build_prefix = \.\./top_build_prefix = ..\/../' \
-e 's/srcdir = \.\./srcdir = ..\/../' \
-e 's/glibcxx_basedir = \.\./glibcxx_basedir = ..\/../' \
+ -e 's/MKDIR_P = \.\./MKDIR_P = ..\/../' \
-e 's/all-local: build_debug/all-local:/' \
-e 's/install-data-local: install_debug/install-data-local:/' \
< ../Makefile > Makefile) ; \
More information about the Gcc-patches
mailing list