From cd9af17028c069f52fb0616074170093dd63c143 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Tue, 13 Jun 2017 18:41:40 +0300 Subject: adwaita-icon-theme: add a patch to speed up the do_install() task Goes down to 40 seconds from over 4 minutes :) Note that there is no control over the amount of shell jobs; on my machine this is not a problem, but if it's a problem on less capable hardware, we can add some kind of limiter. Signed-off-by: Alexander Kanavin Signed-off-by: Richard Purdie --- ...1-Run-installation-commands-as-shell-jobs.patch | 82 ++++++++++++++++++++++ .../gnome/adwaita-icon-theme_3.24.0.bb | 3 +- 2 files changed, 84 insertions(+), 1 deletion(-) create mode 100644 meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch new file mode 100644 index 0000000000..6c38e237f4 --- /dev/null +++ b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch @@ -0,0 +1,82 @@ +From 8dcd73b45a660dbdc560676835ba46f495334f14 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Tue, 13 Jun 2017 18:10:06 +0300 +Subject: [PATCH] Run installation commands as shell jobs + +This greatly speeds up installation time on multi-core systems. + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin +--- + src/fullcolor/Makefile.am | 3 ++- + src/spinner/Makefile.am | 5 +++-- + src/symbolic/Makefile.am | 7 ++++--- + 3 files changed, 9 insertions(+), 6 deletions(-) + +diff --git a/src/fullcolor/Makefile.am b/src/fullcolor/Makefile.am +index 1c940a5..3998ee6 100644 +--- a/src/fullcolor/Makefile.am ++++ b/src/fullcolor/Makefile.am +@@ -9,9 +9,10 @@ install-data-local: + for file in `cd $(top_srcdir)/$(SVGOUTDIR)/$$size && find . -name "*.png"`; do \ + context="`dirname $$file`"; \ + $(mkdir_p) $(DESTDIR)$(themedir)/$$size/$$context; \ +- $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file; \ ++ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file & \ + done; \ + done; ++ wait + + ## FIXME we should add a way to remove links generated by icon mapping + uninstall-local: +diff --git a/src/spinner/Makefile.am b/src/spinner/Makefile.am +index 86f4d7c..3fae8c1 100644 +--- a/src/spinner/Makefile.am ++++ b/src/spinner/Makefile.am +@@ -24,13 +24,14 @@ install-data-local: + for file in `cd $(top_srcdir)/$(SVGOUTDIR)/$$size; find . -name "*.png"`; do \ + context="`dirname $$file`"; \ + $(mkdir_p) $(DESTDIR)$(themedir)/$$size/$$context; \ +- $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file; \ ++ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file & \ + done; \ + for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32; find . -name "*.svg"`; do \ + context="`dirname $$file`"; \ + $(mkdir_p) $(DESTDIR)$(themedir)/scalable-up-to-32/$$context; \ +- $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file; \ ++ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file & \ + done ++ wait + + uninstall-local: + for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32; find . -name "*.svg"`; do \ +diff --git a/src/symbolic/Makefile.am b/src/symbolic/Makefile.am +index 24aac9b..61ba071 100644 +--- a/src/symbolic/Makefile.am ++++ b/src/symbolic/Makefile.am +@@ -25,18 +25,19 @@ install-data-local: + for file in `cd $(top_srcdir)/$(SVGOUTDIR)/$$size; find . -name "*.png"`; do \ + context="`dirname $$file`"; \ + $(mkdir_p) $(DESTDIR)$(themedir)/$$size/$$context; \ +- $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file; \ ++ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file & \ + done; \ + done + for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable; find . -name "*.svg"`; do \ + context="`dirname $$file`"; \ + $(mkdir_p) $(DESTDIR)$(themedir)/scalable/$$context; \ +- $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable/$$file $(DESTDIR)$(themedir)/scalable/$$file; \ ++ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable/$$file $(DESTDIR)$(themedir)/scalable/$$file & \ + for size in $(symbolic_encode_sizes); do \ + $(mkdir_p) $(DESTDIR)$(themedir)/$$size/$$context; \ +- $(GTK_ENCODE_SYMBOLIC_SVG) $(top_srcdir)/$(SVGOUTDIR)/scalable/$$file $$size -o $(DESTDIR)$(themedir)/$$size/$$context; \ ++ $(GTK_ENCODE_SYMBOLIC_SVG) $(top_srcdir)/$(SVGOUTDIR)/scalable/$$file $$size -o $(DESTDIR)$(themedir)/$$size/$$context & \ + done \ + done ++ wait + + uninstall-local: + for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable; find . -name "*.svg"`; do \ +-- +2.11.0 + diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme_3.24.0.bb b/meta/recipes-gnome/gnome/adwaita-icon-theme_3.24.0.bb index 5fdc71d1e3..d340536f0f 100644 --- a/meta/recipes-gnome/gnome/adwaita-icon-theme_3.24.0.bb +++ b/meta/recipes-gnome/gnome/adwaita-icon-theme_3.24.0.bb @@ -12,7 +12,8 @@ inherit allarch autotools pkgconfig gettext gtk-icon-cache upstream-version-is-e MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ file://0001-Don-t-use-AC_CANONICAL_HOST.patch \ - " + file://0001-Run-installation-commands-as-shell-jobs.patch \ + " SRC_URI[md5sum] = "3ccac0d600ffc936d2adfb80e9245bc5" SRC_URI[sha256sum] = "ccf79ff3bd340254737ce4d28b87f0ccee4b3358cd3cd5cd11dc7b42f41b272a" -- cgit 1.2.3-korg