ctfconvert broken for C++ objects?
Justin T. Gibbs
gibbs at FreeBSD.org
Fri Feb 21 22:48:05 UTC 2014
On Feb 20, 2014, at 10:26 AM, Roman Divacky <rdivacky at freebsd.org> wrote:
> The dwarf backend for ctfconvert was completely reimplemented a few weeks ago.
> It's now based on elftoolchain libdwarf.
>
> Test on current.
The failures I’ve experienced occur when attempting to ctfconvert the C++ code in the base (e.g. ATF or devd). You can replicate the failures on head by applying the share/mk patch below (a version of my previous patch rebased on head).
On a slightly related node, do you know why there is a FreeBSD version ranged exclusion around bootstrapping the dtrace tools?
From src/Makefile.inc1:
# dtrace tools are required for older bootstrap env and cross-build
.if ${MK_CDDL} != "no" && \
((${BOOTSTRAPPING} < 1000034 && \
!(${BOOTSTRAPPING} >= 901505 && ${BOOTSTRAPPING} < 999999)) \
|| (${MACHINE} != ${TARGET} || ${MACHINE_ARCH} != ${TARGET_ARCH}))
_dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf lib/libelf \
lib/libdwarf cddl/usr.bin/ctfconvert cddl/usr.bin/ctfmerge
.endif
We had to disable this protection in our build so that the fixes to the dtrace tool chain took effect prior to compiling any C++ code during buildworld.
In testing this on head, I also found that 9-stable’s g++ segfaulted when bootstrapping clang, so I had to buildworld using 9-stable’s clang to get past the bootstrap phase. (By 9-stable, I mean a 9-stable tree from October/November from last year).
—
Justin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ctf_for_c++.diffs
Type: application/octet-stream
Size: 1015 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-toolchain/attachments/20140221/d8ff4c1f/attachment.obj>
More information about the freebsd-toolchain
mailing list