webkitgtk24: add patch to disable dependency tracking
PATCH 1/1 webkitgtk24: add patch to disable dependency tracking
From: Gustavo Zacarias <[email protected]>
Saves about 2 minutes of build time, on a 4c4t build machine from 42 minutes down to 40.
--- .../webkitgtk24/0004-fix-dependency-tracking.patch | 117 +++++++++++++++++++++ package/webkitgtk24/webkitgtk24.mk | 2 - 2 files changed, 117 insertions(+), 2 deletions(-) create mode 100644 package/webkitgtk24/0004-fix-dependency-tracking.patch
package/webkitgtk24/0004-fix-dependency-tracking.patch new file +117 -0
@@ -0,0 +1,117 @@ +Fixes the need to enable depedency tracking on multicore builds. +Reduced version from https://bugs.webkit.org/show_bug.cgi?id=94488 + +Signed-off-by: Gustavo Zacarias <[email protected]> + +diff --git a/Source/WebCore/GNUmakefile.am b/Source/WebCore/GNUmakefile.am +index cfecee7..d41fe63 100644 +--- a/Source/WebCore/GNUmakefile.am ++++ b/Source/WebCore/GNUmakefile.am +@@ -390,11 +390,14 @@ audio_DATA = $(WebCore)/platform/audio/resources/Composite.wav + dist_audio_DATA = $(audio_DATA) + endif # END ENABLE_WEB_AUDIO + ++DerivedSources/ANGLE: ++ $(AM_V_at)mkdir -p $@ ++ + # ANGLE tokenizer & parser +-DerivedSources/ANGLE/glslang.cpp: Source/ThirdParty/ANGLE/src/compiler/glslang.l DerivedSources/ANGLE/glslang_tab.cpp ++DerivedSources/ANGLE/glslang.cpp: Source/ThirdParty/ANGLE/src/compiler/glslang.l DerivedSources/ANGLE/glslang_tab.cpp DerivedSources/ANGLE + $(AM_V_GEN)$(FLEX) --noline --nounistd --outfile="$@" "$<" + +-DerivedSources/ANGLE/glslang_tab.cpp: Source/ThirdParty/ANGLE/src/compiler/glslang.y ++DerivedSources/ANGLE/glslang_tab.cpp: Source/ThirdParty/ANGLE/src/compiler/glslang.y DerivedSources/ANGLE + $(AM_V_GEN)$(BISON) --no-lines --defines="DerivedSources/ANGLE/glslang_tab.h" --skeleton=yacc.c --output="$@" $< + DerivedSources/ANGLE/glslang_tab.h: DerivedSources/ANGLE/glslang_tab.cpp + +diff --git a/Source/WebCore/bindings/gobject/GNUmakefile.am b/Source/WebCore/bindings/gobject/GNUmakefile.am +index 6864e10..4e4eaac 100644 +--- a/Source/WebCore/bindings/gobject/GNUmakefile.am ++++ b/Source/WebCore/bindings/gobject/GNUmakefile.am +@@ -474,10 +474,12 @@ BUILT_SOURCES += \ + + gdom_class_list := $(subst WebKitDOM,, $(filter-out %Private, $(basename $(notdir $(webkitgtk_gdom_built_sources))))) + gdom_class_list += Custom EventTarget Object Deprecated +-DerivedSources/webkitdom/webkitdom.h: $(WebCore)/bindings/scripts/gobject-generate-headers.pl $(WebCore)/bindings/gobject/GNUmakefile.am ++DerivedSources/webkitdom: ++ $(AM_V_at)mkdir -p $@ ++DerivedSources/webkitdom/webkitdom.h: $(WebCore)/bindings/scripts/gobject-generate-headers.pl $(WebCore)/bindings/gobject/GNUmakefile.am DerivedSources/webkitdom + $(AM_V_GEN)echo $(gdom_class_list) | $(PERL) $< gdom > $@ + +-DerivedSources/webkitdom/webkitdomdefines.h: $(WebCore)/bindings/scripts/gobject-generate-headers.pl $(WebCore)/bindings/gobject/GNUmakefile.am ++DerivedSources/webkitdom/webkitdomdefines.h: $(WebCore)/bindings/scripts/gobject-generate-headers.pl $(WebCore)/bindings/gobject/GNUmakefile.am DerivedSources/webkitdom + $(AM_V_GEN)echo $(gdom_class_list) | $(PERL) $< defines > $@ + + noinst_DATA += DerivedSources/webkitdom/webkitdom.symbols +@@ -519,16 +521,16 @@ CLEAN_FILES = \ + # DerivedSources/webkitdom directory. The reason is that we want all header files distributed in the + # include/webkit-x.y/webkitdom directory, but do not want to name the WebCore/bindings/gobject directory + # "webkitdom", as that's a bit presumptuous for a GTK binding. +-$(top_builddir)/DerivedSources/webkitdom/WebKitDOMObject.h: $(WebCore)/bindings/gobject/WebKitDOMObject.h ++$(top_builddir)/DerivedSources/webkitdom/WebKitDOMObject.h: $(WebCore)/bindings/gobject/WebKitDOMObject.h $(top_builddir)/DerivedSources/webkitdom + $(AM_V_GEN)cp -f $< $@ + +-$(top_builddir)/DerivedSources/webkitdom/WebKitDOMEventTarget.h: $(WebCore)/bindings/gobject/WebKitDOMEventTarget.h ++$(top_builddir)/DerivedSources/webkitdom/WebKitDOMEventTarget.h: $(WebCore)/bindings/gobject/WebKitDOMEventTarget.h $(top_builddir)/DerivedSources/webkitdom + $(AM_V_GEN)cp -f $< $@ + +-$(top_builddir)/DerivedSources/webkitdom/WebKitDOMEventTargetPrivate.h: $(WebCore)/bindings/gobject/WebKitDOMEventTargetPrivate.h ++$(top_builddir)/DerivedSources/webkitdom/WebKitDOMEventTargetPrivate.h: $(WebCore)/bindings/gobject/WebKitDOMEventTargetPrivate.h $(top_builddir)/DerivedSources/webkitdom + $(AM_V_GEN)cp -f $< $@ + +-$(top_builddir)/DerivedSources/webkitdom/WebKitDOMCustom.h: $(WebCore)/bindings/gobject/WebKitDOMCustom.h ++$(top_builddir)/DerivedSources/webkitdom/WebKitDOMCustom.h: $(WebCore)/bindings/gobject/WebKitDOMCustom.h $(top_builddir)/DerivedSources/webkitdom + $(AM_V_GEN)cp -f $< $@ + + $(top_builddir)/DerivedSources/webkitdom/WebKitDOMDeprecated.h: $(WebCore)/bindings/gobject/WebKitDOMDeprecated.h +diff --git a/Source/WebKit/gtk/GNUmakefile.am b/Source/WebKit/gtk/GNUmakefile.am +index 4954f19..db1e777 100644 +--- a/Source/WebKit/gtk/GNUmakefile.am ++++ b/Source/WebKit/gtk/GNUmakefile.am +@@ -349,13 +349,16 @@ $(GENSOURCES_WEBKIT)/webkitmarshal.cpp: stamp-webkitmarshal.cpp + $(GENSOURCES_WEBKIT)/webkitmarshal.h: stamp-webkitmarshal.h + @true + +-stamp-webkitmarshal.cpp: $(WEBKIT_MARSHAL_LIST) ++$(GENSOURCES_WEBKIT): ++ $(AM_V_at)mkdir -p $@ ++ ++stamp-webkitmarshal.cpp: $(WEBKIT_MARSHAL_LIST) $(GENSOURCES_WEBKIT) + $(AM_V_GEN) echo "extern \"C\" {" > $(GENSOURCES_WEBKIT)/webkitmarshal.cpp && \ + $(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --body >> $(GENSOURCES_WEBKIT)/webkitmarshal.cpp && \ + echo '}' >> $(GENSOURCES_WEBKIT)/webkitmarshal.cpp && \ + echo timestamp > $(@F) + +-stamp-webkitmarshal.h: $(WEBKIT_MARSHAL_LIST) ++stamp-webkitmarshal.h: $(WEBKIT_MARSHAL_LIST) $(GENSOURCES_WEBKIT) + $(AM_V_GEN)$(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --header > $(GENSOURCES_WEBKIT)/webkitmarshal.h && \ + echo timestamp > $(@F) + +@@ -370,7 +373,7 @@ stamp-webkitenumtypes.h: $(webkitgtk_h_api) $(WebKit)/GNUmakefile.am + && rm -f xgen-gth \ + && echo timestamp > $(@F) + +-$(GENSOURCES_WEBKIT)/webkitenumtypes.cpp: $(webkitgtk_h_api) $(WebKit)/GNUmakefile.am ++$(GENSOURCES_WEBKIT)/webkitenumtypes.cpp: $(webkitgtk_h_api) $(WebKit)/GNUmakefile.am $(GENSOURCES_WEBKIT) + $(AM_V_GEN)glib-mkenums --template $(srcdir)/Source/WebKit/gtk/webkit/webkitenumtypes.cpp.template $(webkitgtk_h_api) | \ + sed 's,web_kit,webkit,' \ + > xgen-gtc \ +diff --git a/Tools/WebKitTestRunner/GNUmakefile.am b/Tools/WebKitTestRunner/GNUmakefile.am +index 0e17835..cbfa8e2 100644 +--- a/Tools/WebKitTestRunner/GNUmakefile.am ++++ b/Tools/WebKitTestRunner/GNUmakefile.am +@@ -156,7 +156,10 @@ code_generation_dependencies = \ + Source/WebCore/bindings/scripts/InFilesParser.pm \ + Source/WebCore/bindings/scripts/generate-bindings.pl + +-DerivedSources/InjectedBundle/JS%.cpp: Tools/WebKitTestRunner/InjectedBundle/Bindings/%.idl $(code_generation_dependencies) ++$(top_builddir)/DerivedSources/InjectedBundle: ++ $(AM_V_at)mkdir -p $@ ++ ++DerivedSources/InjectedBundle/JS%.cpp: Tools/WebKitTestRunner/InjectedBundle/Bindings/%.idl $(code_generation_dependencies) $(top_builddir)/DerivedSources/InjectedBundle + $(AM_V_GEN)$(PERL) \ + -I $(srcdir)/Source/WebCore/bindings/scripts \ + -I $(srcdir)/Tools/WebKitTestRunner/InjectedBundle/Bindings \ +-- +1.8.4.2 +
package/webkitgtk24/webkitgtk24.mk +0 -2
@@ -33,9 +33,7 @@ ifeq ($(BR2_i386)$(BR2_mips)$(BR2_mipsel)$(BR2_sh),y) WEBKITGTK24_CONF_ENV += LIBS="-latomic" endif -# dependency tracking is to avoid build issues in the GEN/WTF phase WEBKITGTK24_CONF_OPTS = \ - --enable-dependency-tracking \ --enable-spellcheck \ --disable-geolocation \ --disable-glibtest \
Signature · 1 line
2.4.9
PATCH 1/1 webkitgtk24: add patch to disable dependency tracking
Gustavo, All,
On 2015-10-16 12:49 -0300, gustavo.zacarias at free-electrons.com spake thusly:
Quoted 18 lines
From: Gustavo Zacarias <[email protected]>
Saves about 2 minutes of build time, on a 4c4t build machine from 42 minutes down to 40.
Signed-off-by Gustavo Zacarias <[email protected]>--- .../webkitgtk24/0004-fix-dependency-tracking.patch | 117 +++++++++++++++++++++ package/webkitgtk24/webkitgtk24.mk | 2 - 2 files changed, 117 insertions(+), 2 deletions(-) create mode 100644 package/webkitgtk24/0004-fix-dependency-tracking.patchpackage/webkitgtk24/0004-fix-dependency-tracking.patch new file +0
-0
package/webkitgtk24/0004-fix-dependency-tracking.patch line 4
Quoted 4 lines
package/webkitgtk24/0004-fix-dependency-tracking.patch new file +4
-0@@ -0,0 +1,117 @@ +Fixes the need to enable depedency tracking on multicore builds. +Reduced version from https://bugs.webkit.org/show_bug.cgi?id=94488 + +Signed-off-by: Gustavo Zacarias <[email protected]>
Is that patch upstream?
If it is, please add a pointer to the upstream commit.
If not, then I'd prefer we do not carry that. Gaining 2 minutes over 42 is just below 5%, so I am not persuaded this is worth it.
Regards,
Yann E. MORIN.
Quoted 133 lines
package/webkitgtk24/0004-fix-dependency-tracking.patch new file +112
-0+diff --git a/Source/WebCore/GNUmakefile.am b/Source/WebCore/GNUmakefile.am +index cfecee7..d41fe63 100644 +--- a/Source/WebCore/GNUmakefile.am ++++ b/Source/WebCore/GNUmakefile.am +@@ -390,11 +390,14 @@ audio_DATA = $(WebCore)/platform/audio/resources/Composite.wav + dist_audio_DATA = $(audio_DATA) + endif # END ENABLE_WEB_AUDIO + ++DerivedSources/ANGLE: ++ $(AM_V_at)mkdir -p $@ ++ + # ANGLE tokenizer & parser +-DerivedSources/ANGLE/glslang.cpp: Source/ThirdParty/ANGLE/src/compiler/glslang.l DerivedSources/ANGLE/glslang_tab.cpp ++DerivedSources/ANGLE/glslang.cpp: Source/ThirdParty/ANGLE/src/compiler/glslang.l DerivedSources/ANGLE/glslang_tab.cpp DerivedSources/ANGLE + $(AM_V_GEN)$(FLEX) --noline --nounistd --outfile="$@" "$<" + +-DerivedSources/ANGLE/glslang_tab.cpp: Source/ThirdParty/ANGLE/src/compiler/glslang.y ++DerivedSources/ANGLE/glslang_tab.cpp: Source/ThirdParty/ANGLE/src/compiler/glslang.y DerivedSources/ANGLE + $(AM_V_GEN)$(BISON) --no-lines --defines="DerivedSources/ANGLE/glslang_tab.h" --skeleton=yacc.c --output="$@" $< + DerivedSources/ANGLE/glslang_tab.h: DerivedSources/ANGLE/glslang_tab.cpp + +diff --git a/Source/WebCore/bindings/gobject/GNUmakefile.am b/Source/WebCore/bindings/gobject/GNUmakefile.am +index 6864e10..4e4eaac 100644 +--- a/Source/WebCore/bindings/gobject/GNUmakefile.am ++++ b/Source/WebCore/bindings/gobject/GNUmakefile.am +@@ -474,10 +474,12 @@ BUILT_SOURCES += \ + + gdom_class_list := $(subst WebKitDOM,, $(filter-out %Private, $(basename $(notdir $(webkitgtk_gdom_built_sources))))) + gdom_class_list += Custom EventTarget Object Deprecated +-DerivedSources/webkitdom/webkitdom.h: $(WebCore)/bindings/scripts/gobject-generate-headers.pl $(WebCore)/bindings/gobject/GNUmakefile.am ++DerivedSources/webkitdom: ++ $(AM_V_at)mkdir -p $@ ++DerivedSources/webkitdom/webkitdom.h: $(WebCore)/bindings/scripts/gobject-generate-headers.pl $(WebCore)/bindings/gobject/GNUmakefile.am DerivedSources/webkitdom + $(AM_V_GEN)echo $(gdom_class_list) | $(PERL) $< gdom > $@ + +-DerivedSources/webkitdom/webkitdomdefines.h: $(WebCore)/bindings/scripts/gobject-generate-headers.pl $(WebCore)/bindings/gobject/GNUmakefile.am ++DerivedSources/webkitdom/webkitdomdefines.h: $(WebCore)/bindings/scripts/gobject-generate-headers.pl $(WebCore)/bindings/gobject/GNUmakefile.am DerivedSources/webkitdom + $(AM_V_GEN)echo $(gdom_class_list) | $(PERL) $< defines > $@ + + noinst_DATA += DerivedSources/webkitdom/webkitdom.symbols +@@ -519,16 +521,16 @@ CLEAN_FILES = \ + # DerivedSources/webkitdom directory. The reason is that we want all header files distributed in the + # include/webkit-x.y/webkitdom directory, but do not want to name the WebCore/bindings/gobject directory + # "webkitdom", as that's a bit presumptuous for a GTK binding. +-$(top_builddir)/DerivedSources/webkitdom/WebKitDOMObject.h: $(WebCore)/bindings/gobject/WebKitDOMObject.h ++$(top_builddir)/DerivedSources/webkitdom/WebKitDOMObject.h: $(WebCore)/bindings/gobject/WebKitDOMObject.h $(top_builddir)/DerivedSources/webkitdom + $(AM_V_GEN)cp -f $< $@ + +-$(top_builddir)/DerivedSources/webkitdom/WebKitDOMEventTarget.h: $(WebCore)/bindings/gobject/WebKitDOMEventTarget.h ++$(top_builddir)/DerivedSources/webkitdom/WebKitDOMEventTarget.h: $(WebCore)/bindings/gobject/WebKitDOMEventTarget.h $(top_builddir)/DerivedSources/webkitdom + $(AM_V_GEN)cp -f $< $@ + +-$(top_builddir)/DerivedSources/webkitdom/WebKitDOMEventTargetPrivate.h: $(WebCore)/bindings/gobject/WebKitDOMEventTargetPrivate.h ++$(top_builddir)/DerivedSources/webkitdom/WebKitDOMEventTargetPrivate.h: $(WebCore)/bindings/gobject/WebKitDOMEventTargetPrivate.h $(top_builddir)/DerivedSources/webkitdom + $(AM_V_GEN)cp -f $< $@ + +-$(top_builddir)/DerivedSources/webkitdom/WebKitDOMCustom.h: $(WebCore)/bindings/gobject/WebKitDOMCustom.h ++$(top_builddir)/DerivedSources/webkitdom/WebKitDOMCustom.h: $(WebCore)/bindings/gobject/WebKitDOMCustom.h $(top_builddir)/DerivedSources/webkitdom + $(AM_V_GEN)cp -f $< $@ + + $(top_builddir)/DerivedSources/webkitdom/WebKitDOMDeprecated.h: $(WebCore)/bindings/gobject/WebKitDOMDeprecated.h +diff --git a/Source/WebKit/gtk/GNUmakefile.am b/Source/WebKit/gtk/GNUmakefile.am +index 4954f19..db1e777 100644 +--- a/Source/WebKit/gtk/GNUmakefile.am ++++ b/Source/WebKit/gtk/GNUmakefile.am +@@ -349,13 +349,16 @@ $(GENSOURCES_WEBKIT)/webkitmarshal.cpp: stamp-webkitmarshal.cpp + $(GENSOURCES_WEBKIT)/webkitmarshal.h: stamp-webkitmarshal.h + @true + +-stamp-webkitmarshal.cpp: $(WEBKIT_MARSHAL_LIST) ++$(GENSOURCES_WEBKIT): ++ $(AM_V_at)mkdir -p $@ ++ ++stamp-webkitmarshal.cpp: $(WEBKIT_MARSHAL_LIST) $(GENSOURCES_WEBKIT) + $(AM_V_GEN) echo "extern \"C\" {" > $(GENSOURCES_WEBKIT)/webkitmarshal.cpp && \ + $(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --body >> $(GENSOURCES_WEBKIT)/webkitmarshal.cpp && \ + echo '}' >> $(GENSOURCES_WEBKIT)/webkitmarshal.cpp && \ + echo timestamp > $(@F) + +-stamp-webkitmarshal.h: $(WEBKIT_MARSHAL_LIST) ++stamp-webkitmarshal.h: $(WEBKIT_MARSHAL_LIST) $(GENSOURCES_WEBKIT) + $(AM_V_GEN)$(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --header > $(GENSOURCES_WEBKIT)/webkitmarshal.h && \ + echo timestamp > $(@F) + +@@ -370,7 +373,7 @@ stamp-webkitenumtypes.h: $(webkitgtk_h_api) $(WebKit)/GNUmakefile.am + && rm -f xgen-gth \ + && echo timestamp > $(@F) + +-$(GENSOURCES_WEBKIT)/webkitenumtypes.cpp: $(webkitgtk_h_api) $(WebKit)/GNUmakefile.am ++$(GENSOURCES_WEBKIT)/webkitenumtypes.cpp: $(webkitgtk_h_api) $(WebKit)/GNUmakefile.am $(GENSOURCES_WEBKIT) + $(AM_V_GEN)glib-mkenums --template $(srcdir)/Source/WebKit/gtk/webkit/webkitenumtypes.cpp.template $(webkitgtk_h_api) | \ + sed 's,web_kit,webkit,' \ + > xgen-gtc \ +diff --git a/Tools/WebKitTestRunner/GNUmakefile.am b/Tools/WebKitTestRunner/GNUmakefile.am +index 0e17835..cbfa8e2 100644 +--- a/Tools/WebKitTestRunner/GNUmakefile.am ++++ b/Tools/WebKitTestRunner/GNUmakefile.am +@@ -156,7 +156,10 @@ code_generation_dependencies = \ + Source/WebCore/bindings/scripts/InFilesParser.pm \ + Source/WebCore/bindings/scripts/generate-bindings.pl + +-DerivedSources/InjectedBundle/JS%.cpp: Tools/WebKitTestRunner/InjectedBundle/Bindings/%.idl $(code_generation_dependencies) ++$(top_builddir)/DerivedSources/InjectedBundle: ++ $(AM_V_at)mkdir -p $@ ++ ++DerivedSources/InjectedBundle/JS%.cpp: Tools/WebKitTestRunner/InjectedBundle/Bindings/%.idl $(code_generation_dependencies) $(top_builddir)/DerivedSources/InjectedBundle + $(AM_V_GEN)$(PERL) \ + -I $(srcdir)/Source/WebCore/bindings/scripts \ + -I $(srcdir)/Tools/WebKitTestRunner/InjectedBundle/Bindings \ +-- +1.8.4.2 +package/webkitgtk24/webkitgtk24.mk +0
-2@@ -33,9 +33,7 @@ ifeq ($(BR2_i386)$(BR2_mips)$(BR2_mipsel)$(BR2_sh),y) WEBKITGTK24_CONF_ENV += LIBS="-latomic" endif -# dependency tracking is to avoid build issues in the GEN/WTF phase WEBKITGTK24_CONF_OPTS = \ - --enable-dependency-tracking \ --enable-spellcheck \ --disable-geolocation \ --disable-glibtest \Signature · 6 lines
2.4.9 _______________________________________________ buildroot mailing list buildroot at busybox.net http://lists.busybox.net/mailman/listinfo/buildroot
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 1/1 webkitgtk24: add patch to disable dependency tracking
Quoted 9 lines · Yann E. MORIN
Is that patch upstream?
If it is, please add a pointer to the upstream commit.
If not, then I'd prefer we do not carry that. Gaining 2 minutes over 42 is just below 5%, so I am not persuaded this is worth it.
Regards,
Yann E. MORIN.
Hi Yann.
According to the tracker it is, however it still applies which makes it odd. Anyway it doesn't solve the problem for all build combinations hence i've marked it as rejected in patchwork already (x86_64 with jit fails). The time savings are so small that it probably doesn't make much sense, also 2.6.x+ switched to cmake making this irrelevant, and i've got a 2.10.x bump in the works.
Regards.