From c8f4712845034714fed763414987305bacafe1fd Mon Sep 17 00:00:00 2001 From: Brad Bishop Date: Mon, 24 Jun 2019 09:36:18 -0400 Subject: subtree updates poky: 50d272863d..0b3e371116: Alistair Francis (1): recipes-bsp/opensbi: Fix the u-boot payload name Changqing Li (2): update-rc.d: update SRCREV and license checksum update-rc.d: support enable/disable options Chen Qi (2): context.py: avoid skipping tests by meaningless command argument oeqa: avoid class setup method to run when skipping the whole class Joe Slater (1): glib-2.0: Fix CVE-2019-12450 Jonathan Rajotte (1): lttng-tools: update to 2.10.7 Joseph Reynolds (1): dropbear: new feature: disable-weak-ciphers Joshua Watt (4): perl: Improve ptest package reproducibility python3: Reformat sysconfig perl: Reproducible build fixes bash: Remove .build files for reproducible builds Martin Jansa (1): gcc-runtime.inc: create the correct directory before creating the symlinks in it Ricardo Ribalda Delgado (1): go: avoid host contamination by GOCACHE Ross Burton (1): pigz: bump alternative priority Tim Orling (1): ptest-packagelists.inc: add libmodule-build-perl-ptest meta-openembedded: 3b245e4fe8..64974b8779: Adrian Bunk (9): libauthen-radius-perl: Remove manual RDEPENDS from PN-ptest to PN package network-manager-applet: Remove obsolete dbus-glib and libnm-glib dependencies ndctl: Remove the unnecessary dependency on virtual/kernel tipcutils: Remove the unnecessary dependency on virtual/kernel xl2tpd: Remove the old 1.3.6 version gpsd: Force using python-scons-native for now efibootmgr: Remove, was moved to oe-core efivar: Remove, was moved to oe-core wireless-regdb: Remove, was moved to oe-core Andrey Zhizhikin (1): cpuburn-arm: add aarch64 machine and build configuration Ankit Navik (1): safec: Add Safe C license Bartosz Golaszewski (1): libgpiod: upgrade to v1.4 Hongxu Jia (1): dracut: fix generated initramfs boot failure under bash 5 Kai Kang (1): xfce4-screensaver: 0.1.4 -> 0.1.5 Khem Raj (5): stressapptest: Fix build with libc++ stressapptest: Implement reading sysfs and use it if sysconf is not there stressapptest: Use git SHA instead of git archive gmime: Add recipe pidgin-sipe: Depend on gmime Maciej Pijanowski (1): recipes-benchmark/stressapptest_1.0.9.bb: add recipe Mingli Yu (3): mariadb: Upgrade to 10.3.16 mozjs: Fix do_patch error for mips64-n32 python-lxml: replace -Og with -O for mips64-32 Naveen Saini (1): pm-graph: fix multilib build failure Nicola Lunghi (1): libp11: No need to delete *.la anymore Oleksandr Kravchuk (1): openconnect: update to 8.03 Pascal Bach (3): protobuf: 3.6.1 -> 3.8.0 protobuf-c: add patch for protobuf 3 compatibility python3-protobuf, python-protobuf: 3.6.1 -> 3.8.0 Persian Prince (1): blueman_%.bbappend: Avoid PAK archive (application/x-pak) Saikiran Madugula (1): gitver: Pass git directory argument to gitrev_run Tim Orling (1): libmodule-build-perl: drop, has moved to oe-core Yi Zhao (1): snort: upgrade 2.9.11.1 -> 2.9.13 Zang Ruochen (3): python-twisted: upgrade 19.2.0 -> 19.2.1 python-wrapt: upgrade 1.11.1 -> 1.11.2 python-certifi: upgrade 2019.3.9 -> 2019.6.16 Change-Id: I0c3385628e0382c56c94fa27ba4d14e301c2e558 Signed-off-by: Brad Bishop --- poky/meta/recipes-devtools/gcc/gcc-runtime.inc | 2 +- poky/meta/recipes-devtools/go/go-cross.inc | 1 + poky/meta/recipes-devtools/go/go-runtime.inc | 1 + poky/meta/recipes-devtools/go/go-target.inc | 1 + ...environment-variable-to-suppress-comments.patch | 30 ++++++++++++++++++++ .../perl/files/0002-Constant-Fix-up-shebang.patch | 32 ++++++++++++++++++++++ poky/meta/recipes-devtools/perl/perl-ptest.inc | 9 ++++-- poky/meta/recipes-devtools/perl/perl_5.30.0.bb | 5 ++++ .../python/python3/reformat_sysconfig.py | 21 ++++++++++++++ poky/meta/recipes-devtools/python/python3_3.7.3.bb | 7 +++++ 10 files changed, 105 insertions(+), 4 deletions(-) create mode 100644 poky/meta/recipes-devtools/perl/files/0001-enc2xs-Add-environment-variable-to-suppress-comments.patch create mode 100644 poky/meta/recipes-devtools/perl/files/0002-Constant-Fix-up-shebang.patch create mode 100644 poky/meta/recipes-devtools/python/python3/reformat_sysconfig.py (limited to 'poky/meta/recipes-devtools') diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc index ba767e1a38..a5c2600d7f 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc @@ -114,7 +114,7 @@ do_install_append_class-target () { ln -s ${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-linux fi elif [ "${TARGET_VENDOR_MULTILIB_ORIGINAL}" != "" -a "${TARGET_VENDOR}" != "${TARGET_VENDOR_MULTILIB_ORIGINAL}" ]; then - mkdir ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR_MULTILIB_ORIGINAL}-linux + mkdir ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR_MULTILIB_ORIGINAL}-${TARGET_OS} ln -s ../${TARGET_SYS}/bits ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR_MULTILIB_ORIGINAL}-${TARGET_OS}/bits ln -s ../${TARGET_SYS}/ext ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR_MULTILIB_ORIGINAL}-${TARGET_OS}/ext fi diff --git a/poky/meta/recipes-devtools/go/go-cross.inc b/poky/meta/recipes-devtools/go/go-cross.inc index 29ce7f6e84..3d344a74d3 100644 --- a/poky/meta/recipes-devtools/go/go-cross.inc +++ b/poky/meta/recipes-devtools/go/go-cross.inc @@ -14,6 +14,7 @@ export GO386 = "${TARGET_GO386}" export GOMIPS = "${TARGET_GOMIPS}" export GOROOT_BOOTSTRAP = "${STAGING_LIBDIR_NATIVE}/go" export GOROOT_FINAL = "${libdir}/go" +export GOCACHE = "${B}/.cache" CC = "${@d.getVar('BUILD_CC').strip()}" do_configure[noexec] = "1" diff --git a/poky/meta/recipes-devtools/go/go-runtime.inc b/poky/meta/recipes-devtools/go/go-runtime.inc index c219aa3789..e282195619 100644 --- a/poky/meta/recipes-devtools/go/go-runtime.inc +++ b/poky/meta/recipes-devtools/go/go-runtime.inc @@ -15,6 +15,7 @@ export CGO_CFLAGS = "${CFLAGS}" export CGO_CPPFLAGS = "${CPPFLAGS}" export CGO_CXXFLAGS = "${CXXFLAGS}" export CGO_LDFLAGS = "${LDFLAGS}" +export GOCACHE = "${B}/.cache" GO_EXTLDFLAGS ?= "${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} ${LDFLAGS}" GO_SHLIB_LDFLAGS ?= '-ldflags="--linkmode=external -extldflags '${GO_EXTLDFLAGS}'"' diff --git a/poky/meta/recipes-devtools/go/go-target.inc b/poky/meta/recipes-devtools/go/go-target.inc index 379f87b498..91efd3e977 100644 --- a/poky/meta/recipes-devtools/go/go-target.inc +++ b/poky/meta/recipes-devtools/go/go-target.inc @@ -10,6 +10,7 @@ export GO386 = "${TARGET_GO386}" export GOMIPS = "${TARGET_GOMIPS}" export GOROOT_BOOTSTRAP = "${STAGING_LIBDIR_NATIVE}/go" export GOROOT_FINAL = "${libdir}/go" +export GOCACHE = "${B}/.cache" GO_LDFLAGS = "" GO_LDFLAGS_class-nativesdk = "-linkmode external" export GO_LDFLAGS diff --git a/poky/meta/recipes-devtools/perl/files/0001-enc2xs-Add-environment-variable-to-suppress-comments.patch b/poky/meta/recipes-devtools/perl/files/0001-enc2xs-Add-environment-variable-to-suppress-comments.patch new file mode 100644 index 0000000000..07f153162b --- /dev/null +++ b/poky/meta/recipes-devtools/perl/files/0001-enc2xs-Add-environment-variable-to-suppress-comments.patch @@ -0,0 +1,30 @@ +From 31a2c5555f9ef32f35d7d5ce1fd09a010ba5f5c6 Mon Sep 17 00:00:00 2001 +From: Joshua Watt +Date: Mon, 17 Jun 2019 10:47:15 -0500 +Subject: [PATCH 1/2] enc2xs: Add environment variable to suppress comments + +Comment generation in enc2xs can now be suppressed by setting the +ENC2XS_NO_COMMENTS environment variable. This allows enc2xs to produce +reproducible output by omitting the name of the generating program. + +Signed-off-by: Joshua Watt +Upstream-status: Accepted [https://github.com/dankogai/p5-encode/pull/145] +--- + cpan/Encode/bin/enc2xs | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/cpan/Encode/bin/enc2xs b/cpan/Encode/bin/enc2xs +index 619b64b757..bfce9ee735 100644 +--- a/cpan/Encode/bin/enc2xs ++++ b/cpan/Encode/bin/enc2xs +@@ -144,6 +144,7 @@ getopts('CM:SQqOo:f:n:v',\%opt); + $opt{M} and make_makefile_pl($opt{M}, @ARGV); + $opt{C} and make_configlocal_pm($opt{C}, @ARGV); + $opt{v} ||= $ENV{ENC2XS_VERBOSE}; ++$opt{q} ||= $ENV{ENC2XS_NO_COMMENTS}; + + sub verbose { + print STDERR @_ if $opt{v}; +-- +2.21.0 + diff --git a/poky/meta/recipes-devtools/perl/files/0002-Constant-Fix-up-shebang.patch b/poky/meta/recipes-devtools/perl/files/0002-Constant-Fix-up-shebang.patch new file mode 100644 index 0000000000..e70ff67f72 --- /dev/null +++ b/poky/meta/recipes-devtools/perl/files/0002-Constant-Fix-up-shebang.patch @@ -0,0 +1,32 @@ +From 260ebd15e16cd86b9b58e5c5f3a496b3853ca46d Mon Sep 17 00:00:00 2001 +From: Joshua Watt +Date: Mon, 17 Jun 2019 10:47:23 -0500 +Subject: [PATCH 2/2] Constant: Fix up shebang + +The instructions indicate that the script should be explicitly passed to +"perl -x", so automatically setting the #! to be ^X is unnecessary and +makes the file non-reproducible when building because ^X could be the +absolute path to miniperl. + +Signed-off-by: Joshua Watt +Upstream-status: Submitted [https://rt.cpan.org/Public/Bug/Display.html?id=129866] +--- + cpan/ExtUtils-Constant/lib/ExtUtils/Constant/XS.pm | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cpan/ExtUtils-Constant/lib/ExtUtils/Constant/XS.pm b/cpan/ExtUtils-Constant/lib/ExtUtils/Constant/XS.pm +index 14eb809714..d4d074e121 100644 +--- a/cpan/ExtUtils-Constant/lib/ExtUtils/Constant/XS.pm ++++ b/cpan/ExtUtils-Constant/lib/ExtUtils/Constant/XS.pm +@@ -219,7 +219,7 @@ sub dogfood { + Regenerate these constant functions by feeding this entire source file to + perl -x + +-#!$^X -w ++#!/usr/bin/env perl -x -w + use ExtUtils::Constant qw (constant_types C_constant XS_constant); + + EOT +-- +2.21.0 + diff --git a/poky/meta/recipes-devtools/perl/perl-ptest.inc b/poky/meta/recipes-devtools/perl/perl-ptest.inc index 9dd9b7da57..7152057762 100644 --- a/poky/meta/recipes-devtools/perl/perl-ptest.inc +++ b/poky/meta/recipes-devtools/perl/perl-ptest.inc @@ -2,6 +2,9 @@ inherit ptest SRC_URI += "file://run-ptest \ " + +DEBUG_PREFIX_MAP_REGEX = "${@'\\|'.join(d.getVar('DEBUG_PREFIX_MAP').split())}" + do_install_ptest () { mkdir -p ${D}${PTEST_PATH} sed -e "s:\/usr\/local:${bindir}:g" -i cpan/version/t/* @@ -13,7 +16,7 @@ do_install_ptest () { --exclude='win32/config.*' --exclude=plan9 --exclude=README.plan9 --exclude=perlplan9.pod --exclude=Configure \ --exclude=veryclean.sh --exclude=realclean.sh --exclude=getioctlsizes \ --exclude=dl_aix.xs --exclude=sdbm.3 --exclude='cflags.SH' --exclude=makefile.old \ - --exclude=miniperl --exclude=generate_uudmap --exclude=patches * | ( cd ${D}${PTEST_PATH} && tar -x ) + --exclude=miniperl --exclude=generate_uudmap --exclude=patches --exclude='config.log' * | ( cd ${D}${PTEST_PATH} && tar -x ) ln -sf ${bindir}/perl ${D}${PTEST_PATH}/t/perl @@ -21,12 +24,12 @@ do_install_ptest () { find "${D}${PTEST_PATH}" \ \( -name '*.PL' -o -name 'myconfig' -o -name 'cflags' -o -name '*.pl' -o -name '*.sh' -o -name '*.pm' \ -o -name 'h2xs' -o -name 'h2ph' \ - -o -name '*.h' -o -name 'config.sh-*' -o -name 'pod2man' -o -name 'pod2text' \) \ + -o -name '*.h' -o -name 'config.sh-*' -o -name 'pod2man' -o -name 'pod2text' -o -name 'Makefile.config' \) \ -type f -exec sed -i \ -e "s,${D},,g" \ -e "s,--sysroot=${STAGING_DIR_HOST},,g" \ -e "s,-isystem${STAGING_INCDIR} ,,g" \ - -e 's|${DEBUG_PREFIX_MAP}||g' \ + -e 's^${DEBUG_PREFIX_MAP_REGEX}^^g' \ -e "s,${STAGING_BINDIR_NATIVE}/perl-native/,${bindir}/,g" \ -e "s,${STAGING_LIBDIR},${libdir},g" \ -e "s,${STAGING_BINDIR},${bindir},g" \ diff --git a/poky/meta/recipes-devtools/perl/perl_5.30.0.bb b/poky/meta/recipes-devtools/perl/perl_5.30.0.bb index b18a6b6913..e3664290e3 100644 --- a/poky/meta/recipes-devtools/perl/perl_5.30.0.bb +++ b/poky/meta/recipes-devtools/perl/perl_5.30.0.bb @@ -19,6 +19,8 @@ SRC_URI = "https://www.cpan.org/src/5.0/perl-${PV}.tar.gz;name=perl \ file://perl-dynloader.patch \ file://0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch \ file://fix-setgroup.patch \ + file://0001-enc2xs-Add-environment-variable-to-suppress-comments.patch \ + file://0002-Constant-Fix-up-shebang.patch \ " SRC_URI_append_class-native = " \ file://perl-configpm-switch.patch \ @@ -37,6 +39,9 @@ DEPENDS += "db gdbm zlib virtual/crypt" PERL_LIB_VER = "${@'.'.join(d.getVar('PV').split('.')[0:2])}.0" +# Don't generate comments in enc2xs output files. They are not reproducible +export ENC2XS_NO_COMMENTS = "1" + do_unpack_append() { bb.build.exec_func('do_copy_perlcross', d) } diff --git a/poky/meta/recipes-devtools/python/python3/reformat_sysconfig.py b/poky/meta/recipes-devtools/python/python3/reformat_sysconfig.py new file mode 100644 index 0000000000..c4164313e8 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3/reformat_sysconfig.py @@ -0,0 +1,21 @@ +#! /usr/bin/env python3 +# +# SPDX-License-Identifier: MIT +# +# Copyright 2019 by Garmin Ltd. or its subsidiaries +# +# A script to reformat python sysconfig + +import sys +import pprint +l = {} +g = {} +with open(sys.argv[1], 'r') as f: + exec(f.read(), g, l) + +with open(sys.argv[1], 'w') as f: + for k in sorted(l.keys()): + f.write('%s = ' % k) + pprint.pprint(l[k], stream=f, width=sys.maxsize) + f.write('\n') + diff --git a/poky/meta/recipes-devtools/python/python3_3.7.3.bb b/poky/meta/recipes-devtools/python/python3_3.7.3.bb index 8e77dbe959..3409d94ba0 100644 --- a/poky/meta/recipes-devtools/python/python3_3.7.3.bb +++ b/poky/meta/recipes-devtools/python/python3_3.7.3.bb @@ -25,6 +25,7 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \ file://0001-Makefile-fix-Issue36464-parallel-build-race-problem.patch \ file://0001-bpo-36852-proper-detection-of-mips-architecture-for-.patch \ file://crosspythonpath.patch \ + file://reformat_sysconfig.py \ " SRC_URI_append_class-native = " \ @@ -165,6 +166,12 @@ py_package_preprocess () { ${PKGD}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata*.py \ ${PKGD}/${bindir}/python${PYTHON_BINABI}-config + # Reformat _sysconfigdata after modifying it so that it remains + # reproducible + for c in ${PKGD}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata*.py; do + python3 ${WORKDIR}/reformat_sysconfig.py $c + done + # Recompile _sysconfigdata after modifying it cd ${PKGD} sysconfigfile=`find . -name _sysconfigdata_*.py` -- cgit v1.2.3