Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Mar 2010 16:32:54 +0700
From:      =?UTF-8?B?IkMuIEJlcmdzdHLDtm0i?= <cbergstrom@pathscale.com>
To:        =?UTF-8?B?TWFyaXVzIE7DvG5uZXJpY2g=?= <marius@nuenneri.ch>
Cc:        freebsd-hackers@freebsd.org, Shrikanth Kamath <shrikanth07@gmail.com>
Subject:   Re: ctfconvert dependency...
Message-ID:  <4B98B8C6.6010309@pathscale.com>
In-Reply-To: <b649e5e1003110119n2e18552bva7514913e6e3f0ee@mail.gmail.com>
References:  <291941b81003100954n276d467an234c24e28f3b28e5@mail.gmail.com> <4B989DD6.601@pathscale.com> <b649e5e1003110119n2e18552bva7514913e6e3f0ee@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Marius Nünnerich wrote:
> 2010/3/11 "C. Bergström" <cbergstrom@pathscale.com>:
>   
>> Shrikanth Kamath wrote:
>>     
>>> Just trying to understand the build dependency for ctfconvert...
>>>
>>> I see ctfconvert (cddl/usr.bin/ctfconvert/)  has dependency on libctf.a
>>> (cddl/lib/libctf/)
>>>
>>> Now the snippet in bsd.lib.mk has this check for various target suffixes,
>>>
>>> .c.So:
>>> .if defined(CTFCONVERT)
>>>        ${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
>>> .endif
>>>
>>> and sys.mk
>>>
>>> .c
>>> .if defined(CTFCONVERT)
>>>        ${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
>>> .endif
>>>
>>> My query, libctf includes  <bsd.lib.mk> in it's Makefile, so will the
>>> above
>>> not try to
>>> run 'ctfconvert' on libctf itself?
>>>
>>>       
>> I'm going to make some assumptions and go out on a limb here..
>>
>> The CDDL code in FBSD came from OpenSolaris (specifically onnv-gate hg repo)
>>  When OpenSolaris is built they convert stab debugging information over to
>> CTF (compressed text format?).  This is done so that they can have debugging
>> information, but without the overhead of stab (or dwarf2).  I don't know how
>> much of the original onnv-gate Makefiles came over from OpenSolaris, but
>> assuming the FBSD kernel doesn't need/use CTF format this dependency can and
>> probably should go away.  (Only (k)mdb supports CTF that I'm aware of?)
>>
>> Hopefully this is useful information and I'm not too wrong or someone will
>> correct me
>>     
>
> The CTF information is needed by DTrace.
> My guess is that it will run ctfconvert on itself so it should be
> there from a prior install or it is part of some early toolchain
> stuff.
>   
CTF is needed by DTrace where?  The build may depend on it, but this is 
probably for legacy reasons only.  DTrace in opensolaris isn't dependent 
on  it to function correctly.  Replace the $(CTFCONVERT) and a few other 
utilities with /bin/true and the build will succeed.  (I can only speak 
first hand from OSUNIX/OpenSolaris though and not FBSD..)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B98B8C6.6010309>