bugmake - Bugs: bug #35248, Provide the ability to disable...

 
 

bug #35248: Provide the ability to disable debugging from the command line

Submitted by:  Mikhail T. <kot>
Submitted on:  Thu 05 Jan 2012 08:31:18 PM UTC  
 
Severity: 3 - NormalItem Group: Enhancement
Status: FixedPrivacy: Public
Assigned to: Paul D. Smith <psmith>Open/Closed: Closed
Component Version: 3.82Operating System: None
Fixed Release: 4.0Triage Status: None

Add a New Comment (Rich MarkupRich Markup):
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Sun 15 Sep 2013 01:01:40 AM UTC, comment #3:

Now you can specify "--debug=n" to disable any existing debug operations.

Paul D. Smith <psmith>
Project AdministratorIn charge of this item.
Thu 05 Jan 2012 09:20:49 PM UTC, comment #2:

Yes, it certainly looks like make's own output is being parsed as a makefile...

Line rules.mk:327 reads:

$(SHARED_LIBRARY): $(OBJS) $(RES) $(MAPFILE) $(SUB_SHLOBJS)

The project is Mozilla's NSS, BTW. Source downloaded from:

http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/

Mikhail T. <kot>
Thu 05 Jan 2012 09:14:27 PM UTC, comment #1:

It looks to me like somewhere in your makefiles you are invoking make and capturing its output and using that as part of the makefile so make is trying to parse it. When you run make with -d it not only prints its normal output that you expect, but also all the debug output.

I don't really see what can be done about that, from make's point of view. It can't know, itself, that this particular invocation of make should work differently.

This does seem like a possible valid enhancement request: that there be a flag to TURN OFF debugging. I don't think there's any way to do that today.

What, exactly, is in the makefile ../../../coreconf/rules.mk at line 327 (and thereabouts)?

Paul D. Smith <psmith>
Project AdministratorIn charge of this item.
Thu 05 Jan 2012 08:31:18 PM UTC, original submission:

Hello!

I'm working on a fairly convoluted set of makefiles and thought, using the -d flag will help me.

Unfortunately, with this flag make began to through an error, that does not appear, when make is run normally:

../../../coreconf/rules.mk:327: *** multiple target patterns. Stop.

Having modified the source (read.c) as per the attached patch, I now get more details:

      • FreeBSD8.2_OPT.OBJ/nssver.o
      • FreeBSD8.2_OPT.OBJ/utilwrap.o
      • FreeBSD8.2_OPT.OBJ/nss.def
      • ../certhigh/GNU
      • ../certhigh/Make
      • ../certhigh/3.82
      • ../certhigh/Built
      • ../certhigh/for
      • ../certhigh/amd64-portbld-freebsd8.2
      • ../certhigh/Copyright
      • ../certhigh/(C)
      • ../certhigh/2010
      • ../certhigh/Free
      • ../certhigh/Software
      • ../certhigh/Foundation,
      • ../certhigh/Inc.
      • ../certhigh/License
      • ../certhigh/GPLv3+

gmake[2]: Entering directory `/home/ports/security/nss/work/nss-3.13.1/mozilla/security/nss/lib/nss'
../../../coreconf/rules.mk:327: *** FreeBSD8.2_OPT.OBJ/nssinit.o: multiple target patterns. Stop.

In other words, it seems, make somehow misinterprets the comments-section of a Makefile... Using valgrind does not reveal any errors (except 4 "leaked" bytes).

make-3.81 has a similar problem, but it manifests itself differently. Instead of complaining about "multiple target patterns", make attempts to build bogus targets like:

Live child 0x28337ca0 (../certhigh/2006) PID 92047
Live child 0x28322b80 (../certhigh/(C)) PID 92046
Live child 0x28337a90 (../certhigh/Copyright) PID 92045
Live child 0x283378b0 (../certhigh/3.81) PID 92043
Live child 0x283376d0 (../certhigh/Make) PID 92042
Live child 0x28337220 (../certhigh/GNU) PID 92041

This may very well be due to something being wrong with the makefiles, but make's reaction should not differ depending on the debug flag...

Mikhail T. <kot>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

Attached Files
file #24746:  patch-patterns-debug added by kot (889B - application/octet-stream - Make the `multiple target patterns' error easier to debug)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by psmith (Posted a comment)
  • -unavailable- added by kot (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 7 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Sun 15 Sep 2013 01:01:40 AM UTCpsmithStatusNone=>Fixed
      Assigned toNone=>psmith
      Open/ClosedOpen=>Closed
      Fixed ReleaseNone=>4.0
    Sun 09 Sep 2012 11:59:29 PM UTCpsmithItem GroupBug=>Enhancement
      SummaryWhen running in debug-mode (-d), make reports a strange `multiple target patterns\' error=>Provide the ability to disable debugging from the command line
    Thu 05 Jan 2012 08:31:18 PM UTCkotAttached File-=>Added patch-patterns-debug, #24746

    Back to the top


    Powered by Savane 3.1-cleanup