Revision: 115552 https://trac.macports.org/changeset/115552 Author: jeremyhu@macports.org Date: 2014-01-04 12:06:01 -0800 (Sat, 04 Jan 2014) Log Message: ----------- gmake: Fix parallel builds when using gmake Modified Paths: -------------- trunk/dports/devel/gmake/Portfile Added Paths: ----------- trunk/dports/devel/gmake/files/ trunk/dports/devel/gmake/files/make-intermediate-parallel-bug.patch Modified: trunk/dports/devel/gmake/Portfile =================================================================== --- trunk/dports/devel/gmake/Portfile 2014-01-04 19:35:06 UTC (rev 115551) +++ trunk/dports/devel/gmake/Portfile 2014-01-04 20:06:01 UTC (rev 115552) @@ -3,6 +3,7 @@ PortSystem 1.0 name gmake version 3.82 +revision 1 categories devel maintainers nomaintainer description GNU Make @@ -30,5 +31,9 @@ --mandir=${prefix}/share/man depends_lib port:gettext port:libiconv +# https://bugs.webkit.org/show_bug.cgi?id=126471 +# https://savannah.gnu.org/bugs/?30653 +patchfiles make-intermediate-parallel-bug.patch + test.run yes test.target check Added: trunk/dports/devel/gmake/files/make-intermediate-parallel-bug.patch =================================================================== --- trunk/dports/devel/gmake/files/make-intermediate-parallel-bug.patch (rev 0) +++ trunk/dports/devel/gmake/files/make-intermediate-parallel-bug.patch 2014-01-04 20:06:01 UTC (rev 115552) @@ -0,0 +1,55 @@ +Index: remake.c +=================================================================== +RCS file: /sources/make/make/remake.c,v +retrieving revision 1.147 +diff -u -r1.147 remake.c +--- remake.c 13 Jul 2010 01:20:42 -0000 1.147 ++++ remake.c 5 Aug 2010 01:02:18 -0000 +@@ -614,6 +614,12 @@ + d->file->dontcare = file->dontcare; + } + ++ /* We may have already encountered this file earlier in the same ++ * pass before we knew we'd be updating this target. In that ++ * case calling update_file now would result in the file being ++ * inappropriately pruned so we toggle the considered bit back ++ * off first. */ ++ d->file->considered = !considered; + + dep_status |= update_file (d->file, depth); + +Index: tests/scripts/features/parallelism +=================================================================== +RCS file: /sources/make/make/tests/scripts/features/parallelism,v +retrieving revision 1.16 +diff -u -r1.16 parallelism +--- tests/scripts/features/parallelism 5 Jul 2010 18:32:03 -0000 1.16 ++++ tests/scripts/features/parallelism 5 Aug 2010 01:02:18 -0000 +@@ -164,6 +164,27 @@ + + rmfiles('inc.mk'); + ++utouch(-15, 'file2'); ++utouch(-10, 'file4'); ++utouch(-5, 'file1'); ++ ++run_make_test(q! ++.INTERMEDIATE: file3 ++ ++file4: file3 ++ @mv -f $< $@ ++ ++file3: file2 ++ @touch $@ ++ ++file2: file1 ++ @touch $@ ++!, ++ '--no-print-directory -j2'); ++ ++rmfiles('file1', 'file2', 'file3', 'file4'); ++ ++ + if ($all_tests) { + # Implicit files aren't properly recreated during parallel builds + # Savannah bug #26864
participants (1)
-
jeremyhu@macports.org