bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #16138] multiple jobservers started up by parallel make (and so use


From: anonymous
Subject: [bug #16138] multiple jobservers started up by parallel make (and so uses 4 FDs instead of just 2)
Date: Mon, 20 Mar 2006 21:58:21 +0000
User-agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322)

URL:
  <http://savannah.gnu.org/bugs/?func=detailitem&item_id=16138>

                 Summary: multiple jobservers started up by parallel make
(and so uses 4 FDs instead of just 2)
                 Project: make
            Submitted by: None
            Submitted on: Mon 03/20/06 at 21:58
                Severity: 3 - Normal
              Item Group: Bug
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
       Component Version: 3.79.1
        Platform Version: POSIX-Based
           Fixed Release: None

    _______________________________________________________

Details:

The command 'make test' with the following makefile fails when trying to
process the 'submake' target in the 2nd makefile (makefile2) because file
descriptor 5 is being used by the parallel make jobserver.  If you then do
another 'make test', it works because 'dependfile' exists.  It seems that
when make is making the 'dependfile' so it can do the 'include dependfile' it
starts up a jobserver (using FD 3,4) and then when it processes the 'submake'
target, it does not know about the first jobserver and so starts up another
jobserver (using FD 5,6).

Running on a Linux machine where uname -a returns:
Linux lnxmach1 2.4.21-20.ELsmp #1 SMP Wed Aug 18 20:46:40 EDT 2004 i686 i686
i386 GNU/Linux

makefile
--------

test:
        @echo MAKE=$(MAKE) MAKEFLAGS=$(MAKEFLAGS)MFLAGS=$(MFLAGS)
        $(MAKE) -f makefile2 -j 2 submake

makefile2
---------

dependfile:
        @echo SOMEMACRO=joe > $@
        @echo MAKE=$(MAKE) MAKEFLAGS=$(MAKEFLAGS)MFLAGS=$(MFLAGS)
 
include dependfile
 
submake:
        @echo MAKE=$(MAKE) MAKEFLAGS=$(MAKEFLAGS)MFLAGS=$(MFLAGS)
        $(MAKE) -f makefile2 fdprint 5>output
 
fdprint:
        @echo MAKE=$(MAKE) MAKEFLAGS=$(MAKEFLAGS)MFLAGS=$(MFLAGS)
        @echo hi >&5








    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?func=detailitem&item_id=16138>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]