Get make_installer calls to run in parallel

Desktop / LibreOffice - Thorsten Behrens [allotropia.de] - 22 May 2022 19:35 UTC

If available, use GNU parallel to run N make_installer.pl scripts in parallel, to scale packaging LibreOffice up with the rest of gbuild.

- fallback if no GNU parallel found - run make_installer sequentially as before
- push most of the make_installer.pl input param tweaks from gbuild down into a shared call_installer.sh script
- call gnu parallel with generated number of "templ:lang:prodname:ext:pkgfmt:strip-flag" tuples, one for each package to build (empty templ for non-windows, to save on cmd line length)
- such that we can run all those in parallel (taking into account the build's PARALLELISM parameter)
- there's still the main package build running epm sequentially for umpteen sub-packages from within _one_ make_installer.pl instance, but that's much harder to parallelize from inside Perl (so we punt on that here)

Change-Id: Ie7d3084ed60d003d587c5e64dc9fb1809b23e409 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133957

6204336cc724 Get make_installer calls to run in parallel
config_host.mk.in | 1 +
configure.ac | 4 ++
instsetoo_native/CustomTarget_install.mk | 77 +++++++++++++-------------------
solenv/bin/call_installer.sh | 58 ++++++++++++++++++++++++
4 files changed, 94 insertions(+), 46 deletions(-)

Upstream: cgit.freedesktop.org


  • Share