[PATCH] libstdc++: Fix python/ not making install directories
Jonathan Wakely
jwakely.gcc@gmail.com
Sun Nov 13 19:42:52 GMT 2022
On Sun, 13 Nov 2022, 18:06 Arsen Arsenović via Libstdc++, <
libstdc++@gcc.gnu.org> wrote:
> I'm unsure why this issue only started manifesting now with how old this
> code is, but this should fix it.
>
I just pushed a change to how the debug build makefiles are generated,
which presumably uncovered this latent bug. I'll review the patch in the
morning.
> libstdc++-v3/ChangeLog:
>
> * python/Makefile.am: Call mkinstalldirs before INSTALL_DATA
> when installing gdb scripts.
> * python/Makefile.in: Regenerate.
> ---
> Hi,
>
> Someone spotted on IRC spotted an error: if trying to install to a fresh
> prefix/sysroot with --enable-libstdcxx-debug, the install fails since it's
> intended target directories don't exist. I could replicate this on
> r13-3944-g43435c7eb0ff60 using
>
> $ ../gcc/configure --disable-bootstrap \
> --enable-libstdcxx-debug \
> --enable-languages=c,c++ \
> --prefix=$(pwd)/pfx
>
> Install tested on x86_64-pc-linux-gnu with and without
> --enable-libstdcxx-debug.
>
> libstdc++-v3/python/Makefile.am | 4 ++++
> libstdc++-v3/python/Makefile.in | 4 ++++
> 2 files changed, 8 insertions(+)
>
> diff --git a/libstdc++-v3/python/Makefile.am
> b/libstdc++-v3/python/Makefile.am
> index f523d3a44dc..7987d33e6d9 100644
> --- a/libstdc++-v3/python/Makefile.am
> +++ b/libstdc++-v3/python/Makefile.am
> @@ -58,9 +58,13 @@ install-data-local: gdb.py
> libname=`sed -ne "/^old_library=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
> $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \
> fi; \
> + echo " $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)"; \
> + $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir); \
> echo " $(INSTALL_DATA) gdb.py
> $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py"; \
> $(INSTALL_DATA) gdb.py
> $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py ; \
> if [ -n "$(debug_gdb_py)" ]; then \
> sed "/^libdir = /s;'$$;/debug';" gdb.py > debug-gdb.py ; \
> + echo " $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)/debug"; \
> + $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)/debug; \
> $(INSTALL_DATA) debug-gdb.py
> $(DESTDIR)$(toolexeclibdir)/debug/$$libname-gdb.py ; \
> fi
> diff --git a/libstdc++-v3/python/Makefile.in
> b/libstdc++-v3/python/Makefile.in
> index 05e79b5ac1e..a68c1836481 100644
> --- a/libstdc++-v3/python/Makefile.in
> +++ b/libstdc++-v3/python/Makefile.in
> @@ -623,10 +623,14 @@ install-data-local: gdb.py
> libname=`sed -ne "/^old_library=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
> $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \
> fi; \
> + echo " $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)"; \
> + $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir); \
> echo " $(INSTALL_DATA) gdb.py
> $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py"; \
> $(INSTALL_DATA) gdb.py
> $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py ; \
> if [ -n "$(debug_gdb_py)" ]; then \
> sed "/^libdir = /s;'$$;/debug';" gdb.py > debug-gdb.py ; \
> + echo " $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)/debug"; \
> + $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)/debug; \
> $(INSTALL_DATA) debug-gdb.py
> $(DESTDIR)$(toolexeclibdir)/debug/$$libname-gdb.py ; \
> fi
>
> --
> 2.38.1
>
>
More information about the Libstdc++
mailing list