* Re: GCC-TM dependency build [not found] ` <20100408165919.GA6093@redhat.com> @ 2010-04-09 16:37 ` Richard Henderson 2010-04-10 2:48 ` Jonathan Wakely 0 siblings, 1 reply; 3+ messages in thread From: Richard Henderson @ 2010-04-09 16:37 UTC (permalink / raw) To: gcc; +Cc: Aldy Hernandez, jarias, Ulrich Drepper, aoliva On 04/08/2010 09:59 AM, Aldy Hernandez wrote: > The problem is that now the problem is present on a serial make (ala, > "/src/configure && make"). I've reliably reproduced this. As far as I can tell, it's a problem of makefile variable expansion in the top-level make. For the folks just joining in gcc@, the problem is in the building of libitm on the transactional-memory branch. Libitm is written in C++, and uses <cassert>. On the *first* invocation of make, the value of CXX_FOR_TARGET that is passed down to the libitm sub-make does *not* include the -I flags for the appropriate libstdc++ directories, and so <cassert> is not found and results in the obvious build error. This failure can apparently be masked by having an existing installation at PREFIX (which is I suppose why it took me so long to see the problem). On the *second* invocation of make, the value of CXX_FOR_TARGET *does* include the appropriate -I flags and compilation succeeds. This failure does not appear for libjava, the only other c++ library, because it only uses the C headers (<ctype.h> etc) instead of the C++ wrapper headers (<cctype>). It doesn't *really* use libstdc++ at all. As best I can figure, this... > GCC_TARGET_TOOL(c++, CXX_FOR_TARGET, CXX, > [gcc/g++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs], > c++) ... gets expanded too early in the make process. During the first invocation of make the testsuite_flags script does not yet exist, and the variable is not re-evaluated after configure-target-libstdc++-v3. I have no idea how to fix this. Ideas? r~ ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: GCC-TM dependency build 2010-04-09 16:37 ` GCC-TM dependency build Richard Henderson @ 2010-04-10 2:48 ` Jonathan Wakely 2010-04-12 18:28 ` Richard Henderson 0 siblings, 1 reply; 3+ messages in thread From: Jonathan Wakely @ 2010-04-10 2:48 UTC (permalink / raw) To: Richard Henderson; +Cc: gcc, Aldy Hernandez, jarias, Ulrich Drepper, aoliva On 9 April 2010 17:00, Richard Henderson wrote: > > I have no idea how to fix this. Ideas? Maybe a dumb question, I don't know the context of this problem... Is <cassert> the only C++ header that causes a problem? <cassert> is exactly equivalent to <assert.h> because it only declares macros, which are not in namespace std anyway. So if that's the only problem, using <assert.h> instead of <cassert> would solve it. ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: GCC-TM dependency build 2010-04-10 2:48 ` Jonathan Wakely @ 2010-04-12 18:28 ` Richard Henderson 0 siblings, 0 replies; 3+ messages in thread From: Richard Henderson @ 2010-04-12 18:28 UTC (permalink / raw) To: Jonathan Wakely; +Cc: gcc, Aldy Hernandez, jarias, Ulrich Drepper, aoliva On 04/09/2010 03:16 PM, Jonathan Wakely wrote: > Is<cassert> the only C++ header that causes a problem? > > <cassert> is exactly equivalent to<assert.h> because it only declares > macros, which are not in namespace std anyway. > > So if that's the only problem, using<assert.h> instead of<cassert> > would solve it. No, we also use <type_traits>, so avoiding the C wrapper headers doesn't really help. r~ ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2010-04-12 18:10 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20100331163055.GA2700@redhat.com> [not found] ` <4BB39088.5080502@redhat.com> [not found] ` <20100331184807.GA2923@redhat.com> [not found] ` <4BBB255B.8000504@bsc.es> [not found] ` <20100406121705.GA6766@redhat.com> [not found] ` <37064.192.168.6.2.1270740237.squirrel@webmail.bsc.es> [not found] ` <20100408153506.GA4966@redhat.com> [not found] ` <4BBE0781.7050907@redhat.com> [not found] ` <20100408164448.GA5771@redhat.com> [not found] ` <4BBE0AED.60407@redhat.com> [not found] ` <20100408165919.GA6093@redhat.com> 2010-04-09 16:37 ` GCC-TM dependency build Richard Henderson 2010-04-10 2:48 ` Jonathan Wakely 2010-04-12 18:28 ` Richard Henderson
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).