builworld fails if debugging enabled in usr.sbin/pkg_install/lib
Conrad J. Sabatier
conrads at cox.net
Thu Aug 12 16:07:00 PDT 2004
On 12-Aug-2004 Ruslan Ermilov wrote:
> On Thu, Aug 12, 2004 at 02:58:23PM -0500, Conrad J. Sabatier wrote:
>>
>> I have the following in /etc/make.conf:
>>
>> .if defined(DEBUG)
>> CFLAGS+=-g
>> .endif
>>
>> And then use "make -DDEBUG buildworld".
>>
> I suspected something like this.
> src/usr.sbin/pkg_install/*/Makefile's added the contents of the
> DEBUG variable to CFLAGS. By passing the -DDEBUG to make(1), you
> effectively set the value of the DEBUG variable to 1 (see the make(1)
> manpage), so "1" was added to CFLAGS.
>
> I've "fixed" these makefiles to not add DEBUG to CFLAGS. Note that
> the name DEBUG is unsafe to use anyway. Also, there's an
> alternative and standard way to recompile your programs and libraries
> with -g: there's the DEBUG_FLAGS variable, so you could as well do it
> like this:
>
> make buildworld DEBUG_FLAGS=-g
>
> Passing DEBUG_FLAGS=-g to ``make installworld'' will also cause the
> binaries to *not* be stripped when installing, which is essential
> for having the debugger symbols in binaries. Please consider
> switching to this method of building world with debug infomation.
Ah, great! I never knew about this before. Thanks!
--
Conrad J. Sabatier <conrads at cox.net> -- "In Unix veritas"
More information about the freebsd-current
mailing list