PATCH: libstdc++/5697
Loren James Rittle
rittle@latour.rsch.comm.mot.com
Tue Feb 19 13:42:00 GMT 2002
In article <Pine.BSF.4.44.0202191743310.20373-100000@naos.dbai.tuwien.ac.at>,
Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> writes:
> I am getting kind of nervous when I see new bootstrap failures introduced
> directly before the branch date for a release.
Let us not overstate the problem please. I feel bad enough having
broken your semi-quirky colon-in-objdir by basically undoing my own
patch from 2001-08-10, but I am almost sure that you are the sole
person I broke (BTW, three sets of eyes looked at the patch).
> This might be related to my builddir having a colon in the directory name.
Almost assuredly. Here is the exact patch thunk that broke you:
< ${target_builddir}/c++config.h: ../config.h \
---
> ${target_builddir}/c++config.h: ${glibcpp_builddir}/config.h \
This was done to make the rule match the files as used in the action.
It was my own work that introduced the inconsistency (and, yes, should
have been commented). Inconsistency was not a good enough reason to
touch it. I was actually updating all rules to match reality and that
one looked obviously wrong to me.
The patch below makes them consistent and uses the proper automake way
to obtain the CONFIG_HEADER instead of attempting to construct its
name using ad hoc methods (if a colon ever slips in the correct way to
refer to that file, you will need to bug automake people not me).
Tested in fully bootstrapped tree. Applied as obvious.
BTW, are you aware that if you have a colon in your srcdir, many
Makefiles in gcc will break? Also, are you aware that if you have a
colon in your target triple, many Makefiles in gcc will break? I know
these things by trivial visual inspection. I am beginning to wonder...
Regards,
Loren
2002-02-19 Loren Rittle <ljrittle@acm.org>
* include/Makefile.am: Use CONFIG_HEADER instead of ad hoc names.
* include/Makefile.in: Rebuilt.
Index: include/Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/include/Makefile.am,v
retrieving revision 1.29
diff -c -r1.29 Makefile.am
*** Makefile.am 2002/02/18 20:23:56 1.29
--- Makefile.am 2002/02/19 21:26:23
***************
*** 362,368 ****
fi
# Target includes dynamic.
! ${target_builddir}/c++config.h: ${glibcpp_builddir}/config.h \
${glibcpp_srcdir}/include/bits/c++config \
stamp-${target_alias}
@cat ${glibcpp_srcdir}/include/bits/c++config > $@ ;\
--- 362,368 ----
fi
# Target includes dynamic.
! ${target_builddir}/c++config.h: ${CONFIG_HEADER} \
${glibcpp_srcdir}/include/bits/c++config \
stamp-${target_alias}
@cat ${glibcpp_srcdir}/include/bits/c++config > $@ ;\
***************
*** 370,376 ****
-e 's/PACKAGE/_GLIBCPP_PACKAGE/g' \
-e 's/VERSION/_GLIBCPP_VERSION/g' \
-e 's/WORDS_/_GLIBCPP_WORDS_/g' \
! < ${glibcpp_builddir}/config.h >> $@ ;\
echo "#endif // _CPP_CPPCONFIG_" >>$@
# Target includes for threads
--- 370,376 ----
-e 's/PACKAGE/_GLIBCPP_PACKAGE/g' \
-e 's/VERSION/_GLIBCPP_VERSION/g' \
-e 's/WORDS_/_GLIBCPP_WORDS_/g' \
! < ${CONFIG_HEADER} >> $@ ;\
echo "#endif // _CPP_CPPCONFIG_" >>$@
# Target includes for threads
More information about the Libstdc++
mailing list