Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 Apr 2010 13:23:42 +0200
From:      Alexander Leidinger <netchild@FreeBSD.org>
To:        Navdeep Parhar <nparhar@gmail.com>
Cc:        freebsd-current@FreeBSD.org
Subject:   Re: Does "makeoptions WITH_CTF=yes" actually work?
Message-ID:  <20100414132342.74616nl7805cljgo@webmail.leidinger.net>
In-Reply-To: <y2vd04e16b71004140231u4b638141w17215bf037a9c94@mail.gmail.com>
References:  <g2md04e16b71004140133ubee176eboe6baaeb7ef0f0605@mail.gmail.com> <20100414105819.13143mf12ccgjy4g@webmail.leidinger.net> <y2vd04e16b71004140231u4b638141w17215bf037a9c94@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Quoting Navdeep Parhar <nparhar@gmail.com> (from Wed, 14 Apr 2010 =20
02:31:30 -0700):

> On Wed, Apr 14, 2010 at 1:58 AM, Alexander Leidinger
> <netchild@freebsd.org> wrote:
>> Quoting Navdeep Parhar <nparhar@gmail.com> (from Wed, 14 Apr 2010 01:33:=
29
>> -0700):
>>
>>> I read the UPDATING entry that accompanied r206082 and added WITH_CTF=
=3Dyes
>>> to
>>> my kernel config, hoping to get CTF information in the kernel and all
>>> modules. =C2=A0No luck.
>>> It appears that NO_CTF remains set to 1 inspite of the undef NO_CTF in
>>> various .mk files
>>> and ctfconvert never runs.
>>
>> This is the output I get in my kernel build directory:
>> ---snip---
>> # make -V NO_CTF -V WITH_CTF
>>
>> yes
>
> Can you also try a "makeoptions WITH_CTF=3Dyes" in your KERNCONF

The above one is with WITH_CTF in my kernel config, but this was =20
generated manually with cd /sys/i386/conf; config CONF; cd =20
../compile/CONF; make -V...

> and see if the results are as expected?  How was r206082 tested?  I'm
> trying to figure out the differences, if any, between your build setup an=
d
> mine.

I made a buildworld with and without WITH_CTF in src.conf to confirm =20
that it works (no installkernel, as the world is known to be not =20
useable with CTF), and I did a lot of tests by hand as above =20
(config;make).

>> ---snip---
>>
>>> I built the kernel with a "make -j16 buildkernel" in /usr/src.
>>
>> How do you determine if ctfconvert is run or not?
>
> I got rid of the @ in front of all the CTF commands in all the .mk files.=
  I
> could see that NO_CTF was 1 and so the ctfconvert after || wouldn't
> run.

Can it be that NO_CTF is somewhere, e.g. in src.conf or make.conf or =20
in the environment of the shell? Did you do an installworld before? =20
The installworld is maybe important, I do not have in mind if =20
/ush/share/mk/ or SRC/share/mk is used and as such the NO_CTF which =20
was before in /usr/share/mk/* could cause what you see.

> [ -z "${CTFCONVERT}" -o -n "${NO_CTF}" ] || ${CTFCONVERT} =20
> ${CTFFLAGS} ${.TARGET}
>
> [ -z "ctfconvert" -o -n "1" ] || ........
>
> Do you see anything different if you remove all the @'s?

I did a "objdump -h *.o | grep SUNW_ctf" and I get a lot of ctf =20
sections displayed. Adding the @ in front was the last action I did, =20
before that every case was working correctly.

>> If you expect to see
>> ctfconvert lines in the build output: this will not be the case, no matt=
er
>> if you enable it or not. With the current way of handling it, I'm not aw=
are
>> of a way how to print the command when ctfconvert is really executed (we=
 can
>> maybe add an echo which prints out something, but the question is if thi=
s is
>> worth the effort).
>>
>> You can run objdump -f <objectfile> and have a look if the .SUNW_ctf sec=
tion
>> is there to determine if CTF stuff was inserted or not.
>
> I tried this:
> # ctfdump /usr/obj/usr/src/sys/GENERIC/kernel
> /usr/obj/usr/src/sys/GENERIC/kernel does not contain .SUNW_ctf data

That's a lot of output (that I get when I do it on my kernel which was =20
build with makeoptions WITH_CTF=3Dyes), if you just want to know if =20
there is or is not ctf data in the kernel, the objdump (with -h, and =20
not -f as I wrote above) gives just one line if ctf date is present.

Bye,
Alexander.

--=20
http://www.Leidinger.net  Alexander @ Leidinger.net: PGP ID =3D B0063FE7
http://www.FreeBSD.org     netchild @ FreeBSD.org  : PGP ID =3D 72077137
=09   THE DAILY PLANET

=09SUPERMAN SAVES DESSERT!
=09Plans to "Eat it later"



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