cygport debug junk

Yaakov (Cygwin/X) yselkowitz@users.sourceforge.net
Wed Jul 18 22:53:00 GMT 2012


On 2012-07-18 17:07, Ken Brown wrote:
> On 7/18/2012 4:57 PM, Andrew Schulman wrote:
>> My cygport is 0.10.11-1.  I haven't run cygport in a while, and now
>> I'm trying
>> to compile a new package.  When I do, by default it seems that I get
>>
>> CC = "gcc -c -ggdb -O2 -pipe
>> -fdebug-prefix-map=/home/ASchulma/dev/cygwin/wbox/wbox-5-1/build=/usr/src/debug/wbox-5-1\
>>
>> -fdebug-prefix-map=/home/ASchulma/dev/cygwin/wbox/wbox-5-1/src/wbox-5=/usr/src/debug/wbox-5-1"
>>
>> and the install target then creates a bunch of (IMO) debug junk in
>> /usr/lib/debug and /usr/src/debug.

Debuginfo is not "junk".  Like most Linux binary distros, these files 
are automatically packed into a ${PN}-debuginfo package and excluded 
from other (sub)packages without further intervention by the maintainer. 
  Users can then install gdb and these debuginfo packages to debug 
software in place, without having to install BRs and rebuild packages.

>> Is this a change that's been made recently in cygport?

http://cygwin.com/ml/cygwin-announce/2012-07/msg00000.html

>> Can it be easily turned off?

Yes, it can, as described in the manual, but the only time you should is 
if you are trying to debug a package in its build-tree (e.g. noinst 
test/example apps), and then only temporarily, e.g.:

RESTRICT=debuginfo cygport foo-1.2.3-1 build

>> I grepped through /usr/share/cygport for that, and found that
>> compilers.cygclass uses it, but I don't include that in my cygport script
>> (below).

You mean compilers.cygpart; .cygpart files are just the main cygport 
script functions broken up into manageable sections, like .c files which 
are compiled into an executable.  .cygclass files are optional "modules" 
which are imported with inherit().

> It's been discussed quite a bit on cygwin-apps.  See, for instance, the
> thread starting at
> http://cygwin.com/ml/cygwin-apps/2012-06/msg00071.html and continuing
> into July.  If you don't want to provide a debuginfo package, put
> "_CYGPORT_RESTRICT_debuginfo_=1" in your .cygport file.

Bzzzt.  Don't use internal structures.  If it's not documented in the 
manual, you shouldn't be using it in your .cygport, and anything 
starting with an underscore is purely internal.

But again, while I can't state this as policy, you really shouldn't be 
disabling debuginfo on a widespread or permanent basis.  It's a feature 
and it's there for a reason.


Yaakov


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list