]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
libstdc++: Regenerate the src/debug Makefiles as needed
authorJonathan Wakely <jwakely@redhat.com>
Thu, 16 Sep 2021 20:21:56 +0000 (21:21 +0100)
committerJonathan Wakely <jwakely@redhat.com>
Thu, 16 Sep 2021 22:06:38 +0000 (23:06 +0100)
When the build configuration changes and Makefiles are recreated, the
src/debug/Makefile and src/debug/*/Makefile files are not recreated,
because they're not managed in the usual way by automake. This can lead
to build failures or surprising inconsistencies between the main and
debug versions of the library when doing incremental builds.

This causes them to be regenerated if any of the corresponding non-debug
makefiles is newer.

Signed-off-by: Jonathan Wakely <jwakely@redhat.com>
libstdc++-v3/ChangeLog:

* src/Makefile.am (stamp-debug): Add all Makefiles as
prerequisites.
* src/Makefile.in: Regenerate.

libstdc++-v3/src/Makefile.am
libstdc++-v3/src/Makefile.in

index 16f4cc6eff4ad4ff9eefe1986f0b7198f2753f06..f27d3f8c87ee5daa56cfff7b1fe28ff5a50ecb86 100644 (file)
@@ -369,7 +369,7 @@ endif
 # Build a debug variant.
 # Take care to fix all possibly-relative paths.
 debugdir = ${glibcxx_builddir}/src/debug
-stamp-debug:
+stamp-debug: Makefile $(foreach dir,$(SUBDIRS),$(dir)/Makefile)
        if test ! -d ${debugdir} || test ! -f ${debugdir}/Makefile ; then \
          mkdir -p ${debugdir}; \
          for d in $(SUBDIRS); do mkdir -p  ${debugdir}/$$d; done; \
index 4df5c829a7fb443c8acbeea771b0064796cc2697..05b25ed5e9db211c186d6d20d74af93916c874a7 100644 (file)
@@ -1090,7 +1090,7 @@ libstdc++convenience.la: $(toolexeclib_LTLIBRARIES)
          cp .libs/libstdc++convenience.a .libs/libstdc++.a; \
        fi; \
        echo `date` > stamp-libstdc++convenience;
-stamp-debug:
+stamp-debug: Makefile $(foreach dir,$(SUBDIRS),$(dir)/Makefile)
        if test ! -d ${debugdir} || test ! -f ${debugdir}/Makefile ; then \
          mkdir -p ${debugdir}; \
          for d in $(SUBDIRS); do mkdir -p  ${debugdir}/$$d; done; \