opkg-utils: Add support for pigz
PATCH 1/1 opkg-utils: Add support for pigz
Support explicit use of pigz when compressing the package contents by setting:
OPKGBUILDCMD = "opkg-build -Z pigz"
--- .../opkg-utils/opkg-utils/pigz.patch | 51 ++++++++++++++++++++++ .../opkg-utils/opkg-utils_0.3.6.bb | 1 + 2 files changed, 52 insertions(+) create mode 100644 meta/recipes-devtools/opkg-utils/opkg-utils/pigz.patch
meta/recipes-devtools/opkg-utils/opkg-utils/pigz.patch new file +51 -0
@@ -0,0 +1,51 @@ +From ab1436927b47badcd219a5f075dfc848020e061d Mon Sep 17 00:00:00 2001 +From: Mike Crowe <[email protected]> +Date: Thu, 4 Oct 2018 17:54:19 +0100 +Subject: [opkg-utils PATCH] opkg-build: Add support for explicit use of pigz +To: [email protected], + [email protected] + +oe-core has stopped[1] installing pigz as gzip. This means that in +order to persuade opkg-build to use pigz it must be specified +explicitly. Let's teach opkg-build to deal with being passed pigz as a +compressor. + +We can't combine the check for whether -T is required with the one for +gzip because opkg-build needs to call $compressor and gzip separately +to construct the package. + +[1] http://lists.openembedded.org/pipermail/openembedded-commits/2018-February/218767.html + +Upstream-status: Submitted https://groups.google.com/forum/#!topic/opkg-devel/E0WVOhjK61w +Signed-off-by: Mike Crowe <[email protected]> +--- + opkg-build | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/opkg-build b/opkg-build +index 93a7956..f8403ea 100755 +--- a/opkg-build ++++ b/opkg-build +@@ -170,7 +170,7 @@ fi + + compressor_ext() { + case $1 in +- gzip) ++ gzip|pigz) + echo gz + ;; + bzip2) +@@ -232,6 +232,10 @@ if [ $compressor = "gzip" ] ; then + compressorargs=$zipargs + elif [ $compressor = "xz" ] ; then + compressorargs="--threads 0" ++elif [ $compressor = "pigz" ] ; then ++ if $compressor --help 2>&1 | grep -- "-T" > /dev/null; then ++ compressorargs="-9nT" ++ fi + fi + + tsortargs= +-- +2.11.0 +
meta/recipes-devtools/opkg-utils/opkg-utils_0.3.6.bb +1 -0
@@ -12,6 +12,7 @@ SRC_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/${BPN}/snapshot/${BPN}-${PV file://0001-Only-use-sort-name-on-versions-of-tar-which-support-.patch \ file://0002-opkg-build-Use-local-time-for-build_date-since-opkg-.patch \ file://threaded-xz.patch \ + file://pigz.patch \ " SRC_URI_append_class-native = " file://tar_ignore_error.patch" UPSTREAM_CHECK_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/refs/"
Signature · 1 line
2.11.0
PATCH 1/1 gcc: Remove unnecessary --with-mpfr and --with-mpc when cross compiling
Passing --with-mpfr and --with-mpc when compiling the cross compiler appears to be at best unnecessary, and at worst can cause build failures.
Firstly, the paths passed in gcc-cross-canadian are using the undefined ${layout_exec_prefix}. This results in configure passing -I${STAGING_DIR_HOST}/include twice to the compiler when it's doing its test builds. This is mostly pointless since that directory doesn't exist with the default oe-core configuration - the correct path would be -I${STAGING_DIR_HOST}/usr/include.
The path for mpfr passed in gcc-cross is correct, but unnecessary since it is just the sysroot default.
I've gone back through the history, and it seems that these lines (or similar ones) were originally added way back in 8800d8be25295dd7c7d84dde62c3be4df8e43346 for GCC 4.1.1 in 2006! I asked[1] if anyone knew why this was necessary but received no response, so I can only assume that no-one knows.
I've successfully built for various targets with this patch applied and observed no problems.
[1] http://lists.openembedded.org/pipermail/openembedded-core/2018-September/155971.html
--- meta/recipes-devtools/gcc/gcc-cross-canadian.inc | 5 ----- meta/recipes-devtools/gcc/gcc-cross.inc | 1 - 2 files changed, 6 deletions(-)
meta/recipes-devtools/gcc/gcc-cross-canadian.inc +0 -5
@@ -160,11 +160,6 @@ SYSTEMLIBS1 = "${target_libdir}/" EXTRA_OECONF += "--enable-poison-system-directories" -EXTRA_OECONF += "\ - --with-mpfr=${STAGING_DIR_HOST}${layout_exec_prefix} \ - --with-mpc=${STAGING_DIR_HOST}${layout_exec_prefix} \ -" - EXTRA_OECONF_append_libc-baremetal = " --without-headers" EXTRA_OECONF_remove_libc-baremetal = "--with-sysroot=/not/exist" EXTRA_OECONF_remove_libc-baremetal = "--with-build-sysroot=${STAGING_DIR_TARGET}"
meta/recipes-devtools/gcc/gcc-cross.inc +0 -1
@@ -28,7 +28,6 @@ EXTRA_OECONF_append_sh4 = " \ " EXTRA_OECONF += "\ - --with-mpfr=${STAGING_DIR_NATIVE}${prefix_native} \ --with-system-zlib \ "
Signature · 1 line
2.11.0
✗ patchtest: failure for opkg-utils: Add support for pigz
In reply to Mike Crowe== Series Details ==
Series: opkg-utils: Add support for pigz
Revision: 1
URL : https://patchwork.openembedded.org/series/14385/
State : failure
== Summary ==
Thank you for submitting this patch series to OpenEmbedded Core. This is an automated response. Several tests have been executed on the proposed series by patchtest resulting in the following failures:
* Issue Upstream-Status is Submitted, but it is not mentioned where [test_upstream_status_presence_format]
Suggested fix Include where pigz.patch was submitted Current Upstream-status: Submitted https://groups.google.com/forum/#!topic/opkg-devel/E0WVOhjK61w Standard format Upstream-Status: Submitted [where]
If you believe any of these test results are incorrect, please reply to the mailing list ([email protected]) raising your concerns. Otherwise we would appreciate you correcting the issues and submitting a new version of the patchset if applicable. Please ensure you add/increment the version number when sending the new version (i.e. [PATCH] -> [PATCH v2] -> [PATCH v3] -> ...).
---
Guidelines: https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest Test suite: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe