On Fri, Apr 25, 2025 at 12:55 PM Jonathan Wakely <jwak...@redhat.com> wrote:
> This ensures that wstring-inst.o and similar files will be rebuilt when > string-inst.cc changes. > > libstdc++-v3/ChangeLog: > > * src/c++11/Makefile.am: Add prerequisites for targets that > depend on string-inst.cc. > * src/c++11/Makefile.in: Regenerate. > --- > > We could make a lot of other changes like this, but for now I'm only > bothered by the one that affected me recently. We could also make .o > files depend on the headers they use, but that's a lot more work. > > I've been using this in my local tree for a couple of weeks without > issues. > LGTM. > > libstdc++-v3/src/c++11/Makefile.am | 8 ++++++++ > libstdc++-v3/src/c++11/Makefile.in | 8 ++++++++ > 2 files changed, 16 insertions(+) > > diff --git a/libstdc++-v3/src/c++11/Makefile.am > b/libstdc++-v3/src/c++11/Makefile.am > index b39115832e2..26d6fa0e01a 100644 > --- a/libstdc++-v3/src/c++11/Makefile.am > +++ b/libstdc++-v3/src/c++11/Makefile.am > @@ -168,7 +168,15 @@ localename.lo: localename.cc > localename.o: localename.cc > $(CXXCOMPILE) -fchar8_t -c $< > > +wstring-inst.lo: wstring-inst.cc string-inst.cc > +wstring-inst.o: wstring-inst.cc string-inst.cc > + > if ENABLE_DUAL_ABI > +cow-string-inst.lo: cow-string-inst.cc string-inst.cc > +cow-string-inst.o: cow-string-inst.cc string-inst.cc > +cow-wstring-inst.lo: cow-wstring-inst.cc string-inst.cc > +cow-wstring-inst.o: cow-wstring-inst.cc string-inst.cc > + > # Rewrite the type info for __ios_failure. > rewrite_ios_failure_typeinfo = sed -e > '/^_*_ZTISt13__ios_failure:/,/_ZTVN10__cxxabiv120__si_class_type_infoE/s/_ZTVN10__cxxabiv120__si_class_type_infoE/_ZTVSt19__iosfail_type_info/' > > diff --git a/libstdc++-v3/src/c++11/Makefile.in > b/libstdc++-v3/src/c++11/Makefile.in > index 770e948a98a..dafdb260ec1 100644 > --- a/libstdc++-v3/src/c++11/Makefile.in > +++ b/libstdc++-v3/src/c++11/Makefile.in > @@ -896,6 +896,14 @@ localename.lo: localename.cc > localename.o: localename.cc > $(CXXCOMPILE) -fchar8_t -c $< > > +wstring-inst.lo: wstring-inst.cc string-inst.cc > +wstring-inst.o: wstring-inst.cc string-inst.cc > + > +@enable_dual_abi_t...@cow-string-inst.lo: cow-string-inst.cc > string-inst.cc > +@ENABLE_DUAL_ABI_TRUE@cow-string-inst.o: cow-string-inst.cc > string-inst.cc > +@enable_dual_abi_t...@cow-wstring-inst.lo: cow-wstring-inst.cc > string-inst.cc > +@ENABLE_DUAL_ABI_TRUE@cow-wstring-inst.o: cow-wstring-inst.cc > string-inst.cc > + > @ENABLE_DUAL_ABI_TRUE@cxx11-ios_failure-lt.s: cxx11-ios_failure.cc > @ENABLE_DUAL_ABI_TRUE@ $(LTCXXCOMPILE) -gno-as-loc-support -S $< -o > tmp-cxx11-ios_failure-lt.s > @ENABLE_DUAL_ABI_TRUE@ -test -f tmp-cxx11-ios_failure-lt.o && mv -f > tmp-cxx11-ios_failure-lt.o tmp-cxx11-ios_failure-lt.s > -- > 2.49.0 > >