Bug 173676 - media-gfx/graphviz-2.12 has a parallel build issue (within ./tclpkg/gv)
|
Bug#:
173676
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: graphics@gentoo.org
|
Reported By: XL@XLsigned.net
|
|
Component: Ebuilds
|
|
|
URL:
|
|
Summary: media-gfx/graphviz-2.12 has a parallel build issue (within ./tclpkg/gv)
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2007-04-07 17:03 0000
|
Unfortunately bug #167484 has been closed without reason,
although a "parallel build issue" occurs in folder "./tclpkg/gv"
which is caused my invalid "mutiple target rules" in the Makefile.
The following rules (given as an example. The "ruby", "java", ...
rules are broken as well)
-- original ------------------------------------------
gv_perl.cpp $(PERL_hdr): gv.i
$(SWIG) -c++ -perl -o gv_perl.cpp $(srcdir)/gv.i
gv_python.cpp $(PYTHON_hdr): gv.i
$(SWIG) -c++ -python -o gv_python.cpp $(srcdir)/gv.i
------------------------------------------------------
should be rewritten as
-- modified ------------------------------------------
$(PERL_hdr): gv_perl.cpp
gv_perl.cpp: gv.i
$(SWIG) -c++ -perl -o gv_perl.cpp $(srcdir)/gv.i
gv_php.cpp $(PHP_hdr): gv.i
$(SWIG) -c++ -php -o gv_php.cpp $(srcdir)/gv.i
$(PYTHON_hdr): gv_python.cpp
gv_python.cpp: gv.i
$(SWIG) -c++ -python -o gv_python.cpp $(srcdir)/gv.i
------------------------------------------------------
This not only prevents swig from being run _twice_, but also
prevents swig to overwrite gv_python.cpp, gc_perl.cpp on
the second run when building gv.py, pv.pm which might occur
(-jN) while gv_python.cpp, gc_perl.cpp are already being
compiled.
Actually this should better be fixed upstream and/or I
should have attached a patch for Makefile.am, but maybe
I'll do this later ...
Cheers
Axel
*** Bug 167484 has been marked as a duplicate of this bug. ***
Created an attachment (id=115683) [details]
patches "./tclpkg/gv/Makefile.am"
... so that all but the IO and LUA multi-target rules that call "swig"
are split into separate rules which avoids duplicate envocations of
"swig" and parallel build issues.
// Both IO_hdr and LUA_hdr are empty, so there is no need to
// modify those rules
Axel
It appears that neither upstream nor media-gfx herd are taking
further steps on this matter ...
... which is a little hard to understand, because according to
Murphy's Law "emerge --update ... world" (or any other command
that pulls in the graphviz ebuild ) will typically fail a few
minutes after leaving it unattended and going to bed.
:-( Axel
*** Bug 181925 has been marked as a duplicate of this bug. ***
*** Bug 141132 has been marked as a duplicate of this bug. ***
Patch committed as it has been accepted upstream