diff options
Diffstat (limited to 'poky/meta/recipes-devtools')
106 files changed, 1344 insertions, 1750 deletions
diff --git a/poky/meta/recipes-devtools/apt/apt-native.inc b/poky/meta/recipes-devtools/apt/apt-native.inc deleted file mode 100644 index d82678632..000000000 --- a/poky/meta/recipes-devtools/apt/apt-native.inc +++ /dev/null @@ -1,74 +0,0 @@ -require apt.inc -inherit native - -DEPENDS += "dpkg-native gettext-native db-native curl-native xz-native" -PACKAGES = "" -USE_NLS = "yes" - -SRC_URI += "file://db_linking_hack.patch \ - file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \ -" - -python do_install () { - bb.build.exec_func('do_install_base', d) - bb.build.exec_func('do_install_config', d) -} - -python do_install_config () { - indir = os.path.dirname(d.getVar('FILE')) - infile = open(oe.path.join(indir, 'files', 'apt.conf'), 'r') - data = infile.read() - infile.close() - - data = d.expand(data) - - outdir = oe.path.join(d.getVar('D'), d.getVar('sysconfdir'), 'apt') - if not os.path.exists(outdir): - os.makedirs(outdir) - - outpath = oe.path.join(outdir, 'apt.conf.sample') - if not os.path.exists(outpath): - outfile = open(outpath, 'w') - outfile.write(data) - outfile.close() -} - -do_install_base () { - install -d ${D}${bindir} - install -m 0755 bin/apt-cdrom ${D}${bindir}/ - install -m 0755 bin/apt-get ${D}${bindir}/ - install -m 0755 bin/apt-config ${D}${bindir}/ - install -m 0755 bin/apt-cache ${D}${bindir}/ - install -m 0755 bin/apt-sortpkgs ${D}${bindir}/ - install -m 0755 bin/apt-extracttemplates ${D}${bindir}/ - install -m 0755 bin/apt-ftparchive ${D}${bindir}/ - - oe_libinstall -so -C bin libapt-private ${D}${libdir}/ - - oe_libinstall -so -C bin libapt-pkg$GLIBC_VER$LIBSTDCPP_VER ${D}${libdir}/ - oe_libinstall -so -C bin libapt-inst$GLIBC_VER$LIBSTDCPP_VER ${D}${libdir}/ - - install -d ${D}${libdir}/apt/methods - install -m 0755 bin/methods/* ${D}${libdir}/apt/methods/ - - install -d ${D}${libdir}/dpkg/methods/apt - install -m 0644 ${S}/dselect/desc.apt ${D}${libdir}/dpkg/methods/apt/ - install -m 0644 ${S}/dselect/names ${D}${libdir}/dpkg/methods/apt/ - install -m 0755 ${S}/dselect/install ${D}${libdir}/dpkg/methods/apt/ - install -m 0755 ${S}/dselect/setup ${D}${libdir}/dpkg/methods/apt/ - install -m 0755 ${S}/dselect/update ${D}${libdir}/dpkg/methods/apt/ - - install -d ${D}${sysconfdir}/apt - install -d ${D}${sysconfdir}/apt/apt.conf.d - install -d ${D}${sysconfdir}/apt/preferences.d - install -d ${D}${localstatedir}/lib/apt/lists/partial - install -d ${D}${localstatedir}/cache/apt/archives/partial - - install -d ${D}${localstatedir}/log/apt/ - - install -d ${D}${includedir}/apt-pkg - for h in `find ${S}/apt-pkg ${S}/apt-inst -name '*.h'` - do - install -m 0644 $h ${D}${includedir}/apt-pkg - done -} diff --git a/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb b/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb deleted file mode 100644 index 2952c2101..000000000 --- a/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb +++ /dev/null @@ -1,5 +0,0 @@ -require apt-native.inc - -SRC_URI += "file://noconfigure.patch \ - file://no-curl.patch \ -" diff --git a/poky/meta/recipes-devtools/apt/apt-package.inc b/poky/meta/recipes-devtools/apt/apt-package.inc deleted file mode 100644 index 922f739d0..000000000 --- a/poky/meta/recipes-devtools/apt/apt-package.inc +++ /dev/null @@ -1,94 +0,0 @@ -apt-manpages="doc/apt-cache.8 \ - doc/apt-cdrom.8 \ - doc/apt-config.8 \ - doc/apt-get.8 \ - doc/apt.8 \ - doc/apt.conf.5 \ - doc/apt_preferences.5 \ - doc/sources.list.5" -apt-utils-manpages="doc/apt-extracttemplates.1 \ - doc/apt-sortpkgs.1" - -def get_files_apt_doc(d, bb, manpages): - import re - manpages = re.sub(r'\bdoc/(\S+)/(\S+)\.\1\.(.)\b', r'${mandir}/\1/man\3/\2.\3', manpages) - manpages = re.sub(r'\bdoc/(\S+)\.(.)\b', r'${mandir}/man\2/\1.\2', manpages) - return manpages - -def get_commands_apt_doc(d, bb, manpages): - s = list() - __dir_cache__ = list() - for m in manpages.split(): - dest = get_files_apt_doc(d, bb, m) - dir = os.path.dirname(dest) - if not dir in __dir_cache__: - s.append("install -d ${D}/%s" % dir) - __dir_cache__.append(dir) - s.append("install -m 0644 %s ${D}/%s" % (m, dest)) - return "\n".join(s) - -PACKAGES += "${PN}-utils ${PN}-utils-doc" -FILES_${PN} = "${bindir}/apt-cdrom ${bindir}/apt-get \ - ${bindir}/apt-config ${bindir}/apt-cache \ - ${libdir}/apt ${libdir}/libapt*.so.* \ - ${localstatedir} ${sysconfdir} \ - ${libdir}/dpkg \ - ${systemd_unitdir}/system \ - " -RDEPENDS_${PN} += "perl" -FILES_${PN}-utils = "${bindir}/apt-sortpkgs ${bindir}/apt-extracttemplates" -FILES_${PN}-doc = "${@get_files_apt_doc(d, bb, d.getVar('apt-manpages'))} \ - ${docdir}/apt" -FILES_${PN}-utils-doc = "${@get_files_apt_doc(d, bb, d.getVar('apt-utils-manpages'))}" -FILES_${PN}-dev = "${libdir}/libapt*.so ${includedir}" - -inherit systemd - -SYSTEMD_SERVICE_${PN} = "apt-daily.timer" - -do_install () { - set -x - install -d ${D}${bindir} - install -m 0755 bin/apt-key ${D}${bindir}/ - install -m 0755 bin/apt-cdrom ${D}${bindir}/ - install -m 0755 bin/apt-get ${D}${bindir}/ - install -m 0755 bin/apt-config ${D}${bindir}/ - install -m 0755 bin/apt-cache ${D}${bindir}/ - - install -m 0755 bin/apt-sortpkgs ${D}${bindir}/ - install -m 0755 bin/apt-extracttemplates ${D}${bindir}/ - - oe_libinstall -so -C bin libapt-pkg ${D}${libdir} - oe_libinstall -so -C bin libapt-inst ${D}${libdir} - - install -d ${D}${libdir}/apt/methods - install -m 0755 bin/methods/* ${D}${libdir}/apt/methods/ - - install -d ${D}${libdir}/dpkg/methods/apt - install -m 0644 ${S}/dselect/desc.apt ${D}${libdir}/dpkg/methods/apt/ - install -m 0644 ${S}/dselect/names ${D}${libdir}/dpkg/methods/apt/ - install -m 0755 ${S}/dselect/install ${D}${libdir}/dpkg/methods/apt/ - install -m 0755 ${S}/dselect/setup ${D}${libdir}/dpkg/methods/apt/ - install -m 0755 ${S}/dselect/update ${D}${libdir}/dpkg/methods/apt/ - - install -d ${D}${sysconfdir}/apt - install -d ${D}${sysconfdir}/apt/apt.conf.d - install -d ${D}${sysconfdir}/apt/sources.list.d - install -d ${D}${sysconfdir}/apt/preferences.d - install -d ${D}${localstatedir}/lib/apt/lists/partial - install -d ${D}${localstatedir}/cache/apt/archives/partial - install -d ${D}${docdir}/apt/examples - install -m 0644 ${S}/doc/examples/* ${D}${docdir}/apt/examples/ - - install -d ${D}${includedir}/apt-pkg/ - install -m 0644 include/apt-pkg/*.h ${D}${includedir}/apt-pkg/ - - install -d ${D}${systemd_unitdir}/system/ - install -m 0755 ${S}/debian/apt.systemd.daily ${D}${libdir}/apt/ - install -m 0644 ${S}/debian/apt-daily.service ${D}${systemd_unitdir}/system/ - sed -i 's#/usr/lib/apt/#${libdir}/apt/#g' ${D}${systemd_unitdir}/system/apt-daily.service - install -m 0644 ${S}/debian/apt-daily.timer ${D}${systemd_unitdir}/system/ - install -d ${D}${sysconfdir}/cron.daily/ - install -m 0755 ${S}/debian/apt.apt-compat.cron.daily ${D}${sysconfdir}/cron.daily/ - sed -i 's#/usr/lib/apt/#${libdir}/apt/#g' ${D}${sysconfdir}/cron.daily/apt.apt-compat.cron.daily -} diff --git a/poky/meta/recipes-devtools/apt/apt.inc b/poky/meta/recipes-devtools/apt/apt.inc deleted file mode 100644 index 87d533782..000000000 --- a/poky/meta/recipes-devtools/apt/apt.inc +++ /dev/null @@ -1,40 +0,0 @@ -SUMMARY = "Advanced front-end for dpkg" -DESCRIPTION = "Provides command-line tools for searching and managing as well \ -as querying information about packages as a low-level access to all features \ -of the libapt-pkg library." -LICENSE = "GPLv2.0+" -SECTION = "base" - -SRC_URI = "https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/${BPN}/${PV}/${BPN}_${PV}.tar.xz \ - file://use-host.patch \ - file://makerace.patch \ - file://no-nls-dpkg.patch \ - file://fix-gcc-4.6-null-not-defined.patch \ - file://truncate-filename.patch \ - file://nodoc.patch \ - file://disable-configure-in-makefile.patch \ - file://disable-test.patch \ - file://0001-environment.mak-musl-based-systems-can-generate-shar.patch \ - file://0001-apt-1.2.12-Fix-musl-build.patch \ - file://0001-Include-array.h-for-std-array.patch \ - file://0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch \ - " -SRC_URI[md5sum] = "d30eed9304e82ea8238c854b5c5a34d9" -SRC_URI[sha256sum] = "03ded4f5e9b8d43ecec083704b2dcabf20c182ed382db9ac7251da0b0b038059" -LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263" - -# the package is taken from snapshots.debian.org; that source is static and goes stale -# so we check the latest upstream from a directory that does get updated -UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/a/apt/" - -inherit autotools gettext useradd upstream-version-is-even - -EXTRA_AUTORECONF = "--exclude=autopoint,autoheader" - -do_configure_prepend() { - rm -rf ${S}/buildlib/config.sub - rm -rf ${S}/buildlib/config.guess -} - -USERADD_PACKAGES = "${PN}" -USERADD_PARAM_${PN} = "--system --no-create-home --home-dir /nonexistent --shell /bin/false --user-group _apt" diff --git a/poky/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch b/poky/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch new file mode 100644 index 000000000..199f11bf2 --- /dev/null +++ b/poky/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch @@ -0,0 +1,29 @@ +From 9023589317843df4e57f8ebef1d9a8398ddb929d Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Thu, 28 May 2020 15:34:05 +0000 +Subject: [PATCH] CMakeLists.txt: avoid changing install paths based on host + distro + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + CMakeLists.txt | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 2cd4f8e..4759812 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -21,9 +21,9 @@ set(CMAKE_EXE_LINKER_FLAGS_COVERAGE "-lgcov") + set(CMAKE_SHARED_LINKER_FLAGS_COVERAGE "-lgcov") + + # Work around bug in GNUInstallDirs +-if (EXISTS "/etc/debian_version") +- set(CMAKE_INSTALL_LIBEXECDIR "lib") +-endif() ++#if (EXISTS "/etc/debian_version") ++set(CMAKE_INSTALL_LIBEXECDIR "lib") ++#endif() + + # Include stuff + include(Misc) diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch b/poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch new file mode 100644 index 000000000..cc422b74d --- /dev/null +++ b/poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch @@ -0,0 +1,27 @@ +From cd164b353ba7958d51b2f33f4079fb9787c983e2 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Fri, 10 May 2019 14:16:47 +0200 +Subject: [PATCH] Disable documentation directory altogether + +Even when WITH_DOC=False, the build requires po4a to generate manpages. + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 83334ba..2cd4f8e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -232,7 +232,7 @@ add_subdirectory(apt-private) + add_subdirectory(apt-inst) + add_subdirectory(cmdline) + add_subdirectory(completions) +-add_subdirectory(doc) ++#add_subdirectory(doc) + add_subdirectory(dselect) + add_subdirectory(ftparchive) + add_subdirectory(methods) diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch new file mode 100644 index 000000000..2322bd8e7 --- /dev/null +++ b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch @@ -0,0 +1,48 @@ +From 1ad21140787a6b8b0f774f75b50444d2c30a56f6 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Thu, 21 May 2020 20:28:12 +0000 +Subject: [PATCH] Do not configure packages on installation + +This is done separately in do_rootfs(). + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + +--- + apt-pkg/packagemanager.cc | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc +index 156f7ad..0f6a87c 100644 +--- a/apt-pkg/packagemanager.cc ++++ b/apt-pkg/packagemanager.cc +@@ -1013,10 +1013,12 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg, bool const Immediate, int c + return false; + + if (Immediate == true) { ++#if 0 + // Perform immediate configuration of the package. + if (SmartConfigure(Pkg, Depth + 1) == false) + _error->Error(_("Could not perform immediate configuration on '%s'. " + "Please see man 5 apt.conf under APT::Immediate-Configure for details. (%d)"),Pkg.FullName().c_str(),2); ++#endif + } + + return true; +@@ -1111,6 +1113,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall() + } + } + ++#if 0 + // Final run through the configure phase + if (ConfigureAll() == false) + return Failed; +@@ -1125,7 +1128,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall() + return Failed; + } + } +- ++#endif + return Completed; + } + // PM::DoInstallPostFork - compat /*{{{*/ diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch new file mode 100644 index 000000000..d3d3ab026 --- /dev/null +++ b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch @@ -0,0 +1,29 @@ +From b18d7aa7d71b53b86bac21cd1d8c3accabb28f2b Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Fri, 10 May 2019 16:47:38 +0200 +Subject: [PATCH] Do not init tables from dpkg configuration + +This would require sysroot relocation logic, and it's easier to just disable them. + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + +--- + apt-pkg/init.cc | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/apt-pkg/init.cc b/apt-pkg/init.cc +index a619368..6e5a6cf 100644 +--- a/apt-pkg/init.cc ++++ b/apt-pkg/init.cc +@@ -281,8 +281,8 @@ bool pkgInitSystem(Configuration &Cnf,pkgSystem *&Sys) + return _error->Error(_("Unable to determine a suitable packaging system type")); + } + +- if (pkgInitArchTupleMap() == false) +- return false; ++// if (pkgInitArchTupleMap() == false) ++// return false; + + return Sys->Initialize(Cnf); + } diff --git a/poky/meta/recipes-devtools/apt/apt/0001-apt-1.2.12-Fix-musl-build.patch b/poky/meta/recipes-devtools/apt/apt/0001-Fix-musl-build.patch index f7ac19bfd..a6e8ef1e5 100644 --- a/poky/meta/recipes-devtools/apt/apt/0001-apt-1.2.12-Fix-musl-build.patch +++ b/poky/meta/recipes-devtools/apt/apt/0001-Fix-musl-build.patch @@ -1,10 +1,7 @@ -From 33b97e089d4a98d3acd20bd78337dd915b989bc2 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linux.intel.com> -Date: Fri, 5 Aug 2016 15:24:27 -0500 -Subject: [PATCH] apt 1.2.12: Fix musl build -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit +From 081c6be2f2f1cd77f399ea414f8d89c107826624 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Fri, 22 May 2020 15:29:23 +0000 +Subject: [PATCH] Fix musl build methods/connect.cc: Musl doesn't support AI_IDN flag in netdb.h header so define it manually. @@ -12,15 +9,14 @@ apt-pkg/contrib/srvrec.h: Add explicity include of sys/types.h to avoid errors in types u_int_SIZE. Upstream-Status: Pending - -Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> --- apt-pkg/contrib/srvrec.h | 1 + - methods/connect.cc | 3 +++ - 2 files changed, 4 insertions(+) + methods/connect.cc | 5 +++++ + 2 files changed, 6 insertions(+) diff --git a/apt-pkg/contrib/srvrec.h b/apt-pkg/contrib/srvrec.h -index 01b8102..15b6875 100644 +index e22b7a1..b1115f5 100644 --- a/apt-pkg/contrib/srvrec.h +++ b/apt-pkg/contrib/srvrec.h @@ -9,6 +9,7 @@ @@ -28,23 +24,22 @@ index 01b8102..15b6875 100644 #define SRVREC_H +#include <sys/types.h> - #include <arpa/nameser.h> - #include <vector> #include <string> + #include <vector> + #include <arpa/nameser.h> diff --git a/methods/connect.cc b/methods/connect.cc -index 07a730b..bb0ab5a 100644 +index 1d6f891..122df35 100644 --- a/methods/connect.cc +++ b/methods/connect.cc -@@ -33,6 +33,9 @@ - #include <sys/socket.h> - #include <arpa/inet.h> - #include <netdb.h> +@@ -42,6 +42,11 @@ + #include "connect.h" + #include "rfc2553emu.h" + #include <apti18n.h> ++ +#ifndef AI_IDN +#define AI_IDN 0x0040 +#endif ++ + /*}}}*/ - #include "connect.h" - #include "rfc2553emu.h" --- -2.1.4 - + static std::string LastHost; diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Include-array.h-for-std-array.patch b/poky/meta/recipes-devtools/apt/apt/0001-Include-array.h-for-std-array.patch deleted file mode 100644 index e4a8faa2b..000000000 --- a/poky/meta/recipes-devtools/apt/apt/0001-Include-array.h-for-std-array.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 4d64ec843185bf6fd1b85c3a6a4c4e3c968c8ab1 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Sun, 20 Jan 2019 18:56:58 -0800 -Subject: [PATCH] Include <array.h> for std::array - -When compiling using clang/libc++ it fails to build because this header -is not included, with libstdc++ this seems to be pulled in -automatically. - -Fixes below error - -apt-pkg/contrib/strutl.cc:949:38: error: implicit instantiation of undefined template 'std::__1::array<const char *const, 7>' - std::array<char const * const, 7> c_weekdays = {{ "sun", "mon", "tue", "wed", "thu", "fri", "sat" }}; - -Signed-off-by: Khem Raj <raj.khem@gmail.com> -Upstream-Status: Backport [https://github.com/Debian/apt/commit/24a59c62efafbdb8387b2d3c5616b04b9fd21306] ---- - apt-pkg/contrib/strutl.cc | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc -index 60d0ca8..c2bfcbc 100644 ---- a/apt-pkg/contrib/strutl.cc -+++ b/apt-pkg/contrib/strutl.cc -@@ -21,6 +21,7 @@ - #include <apt-pkg/fileutl.h> - #include <apt-pkg/error.h> - -+#include <array> - #include <algorithm> - #include <iomanip> - #include <locale> --- -2.20.1 - diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch b/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch index 734ba00d4..8c4cc0450 100644 --- a/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch +++ b/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch @@ -1,11 +1,9 @@ -From dfc1370d50322e2e9d225a7a63b44993fc01a727 Mon Sep 17 00:00:00 2001 -From: Roy Li <rongqing.li@windriver.com> -Date: Fri, 22 May 2015 08:05:15 +0800 +From 742fbb243f99e940c3e6b31296f7f416f550a57a Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Thu, 21 May 2020 20:13:25 +0000 Subject: [PATCH] Revert "always run 'dpkg --configure -a' at the end of our dpkg callings" -Upstream-Status: Inappropriate [embedded specific] - This reverts commit a2a75ff4516f7609f4c55b42270abb8d08943c60, which always run 'dpkg --configure -a' at the end of our dpkg callings, but it does not work for cross-compile, since the rootfs dir can not @@ -14,19 +12,19 @@ be passed into dpkg, and lead to the below similar error: |mkdir: cannot create directory '/usr/lib/opkg': Permission denied ------- -Signed-off-by: Roy Li <rongqing.li@windriver.com> +Upstream-Status: Inappropriate [embedded specific] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + --- - apt-pkg/deb/dpkgpm.cc | 9 ++------- - test/integration/test-apt-progress-fd-deb822 | 14 +++++++------- - test/integration/test-no-fds-leaked-to-maintainer-scripts | 6 ++---- - 3 files changed, 11 insertions(+), 18 deletions(-) + apt-pkg/deb/dpkgpm.cc | 9 ++------- + 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc -index 533d9b367..6ce81bbd9 100644 +index ffa880d..5875e86 100644 --- a/apt-pkg/deb/dpkgpm.cc +++ b/apt-pkg/deb/dpkgpm.cc -@@ -1041,12 +1041,6 @@ void pkgDPkgPM::BuildPackagesProgressMap() - PackagesTotal++; +@@ -1215,12 +1215,6 @@ void pkgDPkgPM::BuildPackagesProgressMap() + } } } - /* one extra: We don't want the progress bar to reach 100%, especially not @@ -37,90 +35,14 @@ index 533d9b367..6ce81bbd9 100644 - ++PackagesTotal; } /*}}}*/ - bool pkgDPkgPM::Go(int StatusFd) -@@ -1268,8 +1262,9 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress) - - // support subpressing of triggers processing for special - // cases like d-i that runs the triggers handling manually -+ bool const SmartConf = (_config->Find("PackageManager::Configure", "all") != "all"); + bool pkgDPkgPM::Go(int StatusFd) /*{{{*/ +@@ -1716,7 +1710,8 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress) + + // support subpressing of triggers processing for special + // cases like d-i that runs the triggers handling manually +- if (_config->FindB("DPkg::ConfigurePending", true)) ++ bool const SmartConf = (_config->Find("PackageManager::Configure", "all") != "all"); ++ if (0) + List.emplace_back(Item::ConfigurePending, pkgCache::PkgIterator()); + } bool const TriggersPending = _config->FindB("DPkg::TriggersPending", false); -- if (_config->FindB("DPkg::ConfigurePending", true) == true) -+ if (_config->FindB("DPkg::ConfigurePending", SmartConf) == true) - List.push_back(Item(Item::ConfigurePending, PkgIterator())); - - // for the progress -diff --git a/test/integration/test-apt-progress-fd-deb822 b/test/integration/test-apt-progress-fd-deb822 -index a8d59608d..0c6a9bbbf 100755 ---- a/test/integration/test-apt-progress-fd-deb822 -+++ b/test/integration/test-apt-progress-fd-deb822 -@@ -27,36 +27,36 @@ Message: Installing testing (amd64) - - Status: progress - Package: testing:amd64 --Percent: 16.6667 -+Percent: 20 - Message: Preparing testing (amd64) - - Status: progress - Package: testing:amd64 --Percent: 33.3333 -+Percent: 40 - Message: Unpacking testing (amd64) - - Status: progress - Package: testing:amd64 --Percent: 50.0000 -+Percent: 60.0000 - Message: Preparing to configure testing (amd64) - - Status: progress --Percent: 50.0000 -+Percent: 60.0000 - Message: Running dpkg - - Status: progress - Package: testing:amd64 --Percent: 50.0000 -+Percent: 60.0000 - Message: Configuring testing (amd64) - - Status: progress - Package: testing:amd64 --Percent: 66.6667 -+Percent: 80 - Message: Configuring testing (amd64) - - Status: progress - Package: testing:amd64 --Percent: 83.3333 -+Percent: 100 - Message: Installed testing (amd64) - - Status: progress -diff --git a/test/integration/test-no-fds-leaked-to-maintainer-scripts b/test/integration/test-no-fds-leaked-to-maintainer-scripts -index d86e638cd..ef6d23be2 100755 ---- a/test/integration/test-no-fds-leaked-to-maintainer-scripts -+++ b/test/integration/test-no-fds-leaked-to-maintainer-scripts -@@ -59,8 +59,7 @@ startup packages configure - configure $PKGNAME 1.0 <none> - status unpacked $PKGNAME 1.0 - status half-configured $PKGNAME 1.0 --status installed $PKGNAME 1.0 --startup packages configure" cut -f 3- -d' ' rootdir/var/log/dpkg.log -+status installed $PKGNAME 1.0" cut -f 3- -d' ' rootdir/var/log/dpkg.log - } - checkinstall - -@@ -85,8 +84,7 @@ status config-files $PKGNAME 1.0 - status config-files $PKGNAME 1.0 - status config-files $PKGNAME 1.0 - status config-files $PKGNAME 1.0 --status not-installed $PKGNAME <none> --startup packages configure" cut -f 3- -d' ' rootdir/var/log/dpkg.log -+status not-installed $PKGNAME <none>" cut -f 3- -d' ' rootdir/var/log/dpkg.log - } - checkpurge - --- -2.11.0 - diff --git a/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch b/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch deleted file mode 100644 index ce5c00508..000000000 --- a/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 7e8839731ae3fdf7502b91643aa6b252f6c5eaa6 Mon Sep 17 00:00:00 2001 -From: Adrian Bunk <bunk@stusta.de> -Date: Thu, 14 May 2020 00:08:21 +0300 -Subject: The C.UTF-8 locale is not portable, use std::locale::classic() - -Upstream-Status: Inappropriate [Similar fix already in apt >= 1.3] -Signed-off-by: Adrian Bunk <bunk@stusta.de> ---- - ftparchive/writer.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ftparchive/writer.cc b/ftparchive/writer.cc -index 25963820a..6ad571d2a 100644 ---- a/ftparchive/writer.cc -+++ b/ftparchive/writer.cc -@@ -984,7 +984,7 @@ ReleaseWriter::ReleaseWriter(FileFd * const GivenOutput, string const &/*DB*/) : - AddPatterns(_config->FindVector("APT::FTPArchive::Release::Patterns")); - - time_t const now = time(NULL); -- auto const posix = std::locale("C.UTF-8"); -+ auto const posix = std::locale::classic(); - - // FIXME: use TimeRFC1123 here? But that uses GMT to satisfy HTTP/1.1 - std::ostringstream datestr; --- -2.20.1 - diff --git a/poky/meta/recipes-devtools/apt/apt/0001-environment.mak-musl-based-systems-can-generate-shar.patch b/poky/meta/recipes-devtools/apt/apt/0001-environment.mak-musl-based-systems-can-generate-shar.patch deleted file mode 100644 index 042372b51..000000000 --- a/poky/meta/recipes-devtools/apt/apt/0001-environment.mak-musl-based-systems-can-generate-shar.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 2f8aa21ace375c18977ed908b291c80a210a93c6 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Thu, 31 Dec 2015 08:06:12 +0000 -Subject: [PATCH] environment.mak: musl based systems can generate shared - objects too - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- -Upstream-Status: Pending - - buildlib/environment.mak.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/buildlib/environment.mak.in b/buildlib/environment.mak.in -index b0a8d9d..3a52344 100644 ---- a/buildlib/environment.mak.in -+++ b/buildlib/environment.mak.in -@@ -68,7 +68,7 @@ NEED_SOCKLEN_T_DEFINE = @NEED_SOCKLEN_T_DEFINE@ - - # Shared library things - HOST_OS = @host_os@ --ifneq ($(words $(filter gnu% linux-gnu% kfreebsd-gnu% %-gnu,$(HOST_OS))),0) -+ifneq ($(words $(filter gnu% linux-gnu% kfreebsd-gnu% %-gnu linux-musl%,$(HOST_OS))),0) - SONAME_MAGIC=-Wl,-soname -Wl, - LFLAGS_SO= - else --- -2.6.4 - diff --git a/poky/meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch b/poky/meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch deleted file mode 100644 index 7c2f64e3e..000000000 --- a/poky/meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch +++ /dev/null @@ -1,18 +0,0 @@ -Disable configure at compilation stage - -Upstream-Status: Inappropriate [configuration] -Signed-off-by: Constantin Musca <constantinx.musca@intel.com> - -Index: apt-0.9.7.7/Makefile -=================================================================== ---- apt-0.9.7.7.orig/Makefile -+++ apt-0.9.7.7/Makefile -@@ -33,7 +33,7 @@ veryclean: clean - # The startup target builds the necessary configure scripts. It should - # be used after a CVS checkout. - CONVERTED=environment.mak include/config.h include/apti18n.h build/doc/Doxyfile makefile --include buildlib/configure.mak -+#include buildlib/configure.mak - $(BUILDDIR)/include/config.h: buildlib/config.h.in - $(BUILDDIR)/include/apti18n.h: buildlib/apti18n.h.in - $(BUILDDIR)/environment.mak: buildlib/environment.mak.in diff --git a/poky/meta/recipes-devtools/apt/apt/disable-test.patch b/poky/meta/recipes-devtools/apt/apt/disable-test.patch deleted file mode 100644 index d16b5c771..000000000 --- a/poky/meta/recipes-devtools/apt/apt/disable-test.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 67bc7948e0a721c75d636931abc105da5dcb0763 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linux.intel.com> -Date: Thu, 26 May 2016 15:32:11 -0500 -Subject: [PATCH] [PATCH] disable test -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Upstream-Status: Inappropriate [configuration] - -test needs gtest package, so not build the test dir - -Signed-off-by: Roy Li <rongqing.li@windriver.com> -Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> ---- - Makefile | 9 +++------ - configure.ac | 7 ------- - 2 files changed, 3 insertions(+), 13 deletions(-) - -Index: apt-1.2.24/Makefile -=================================================================== ---- apt-1.2.24.orig/Makefile -+++ apt-1.2.24/Makefile -@@ -9,8 +9,8 @@ endif - .PHONY: default - default: startup all - --.PHONY: fast headers library clean veryclean all binary program doc test update-po --all headers library clean veryclean binary program doc manpages docbook test update-po startup dirs: -+.PHONY: fast headers library clean veryclean all binary program doc update-po -+all headers library clean veryclean binary program doc manpages docbook update-po startup dirs: - $(MAKE) -C vendor $@ - $(MAKE) -C apt-pkg $@ - $(MAKE) -C apt-inst $@ -@@ -21,8 +21,6 @@ all headers library clean veryclean bina - $(MAKE) -C dselect $@ - # $(MAKE) -C doc $@ - $(MAKE) -C po $@ -- # FIXME: -C test has issue swith parallel builds, investigate! -- -$(MAKE) -C test $@ - - fast: - $(MAKE) -C vendor all -@@ -32,9 +30,8 @@ fast: - $(MAKE) -C methods all - $(MAKE) -C cmdline all - $(MAKE) -C ftparchive all -- $(MAKE) -C test all - --all headers library clean veryclean binary program doc manpages docbook test update-po: startup dirs -+all headers library clean veryclean binary program doc manpages docbook update-po: startup dirs - - dirs: startup - -Index: apt-1.2.24/configure.ac -=================================================================== ---- apt-1.2.24.orig/configure.ac -+++ apt-1.2.24/configure.ac -@@ -90,13 +90,6 @@ AC_CHECK_LIB(curl, curl_easy_init, - AC_MSG_ERROR([failed: I need CURL due https support]), - ) - --AC_LANG_PUSH([C++]) --AC_CHECK_HEADER(gtest/gtest.h,, -- AC_MSG_WARN([failed: I need gtest (packaged as libgtest-dev) for unit testing]), --) --AC_LANG_POP([C++]) -- -- - AC_SUBST(BDBLIB) - - HAVE_ZLIB=no diff --git a/poky/meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch b/poky/meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch deleted file mode 100644 index 899c6ef2f..000000000 --- a/poky/meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch +++ /dev/null @@ -1,14 +0,0 @@ -Upstream-Status: Pending - -Index: apt-1.2.24/apt-pkg/contrib/weakptr.h -=================================================================== ---- apt-1.2.24.orig/apt-pkg/contrib/weakptr.h -+++ apt-1.2.24/apt-pkg/contrib/weakptr.h -@@ -21,6 +21,7 @@ - #ifndef WEAK_POINTER_H - #define WEAK_POINTER_H - -+#include <cstdlib> - #include <set> - #include <stddef.h> - diff --git a/poky/meta/recipes-devtools/apt/apt/makerace.patch b/poky/meta/recipes-devtools/apt/apt/makerace.patch deleted file mode 100644 index 0c686d6e2..000000000 --- a/poky/meta/recipes-devtools/apt/apt/makerace.patch +++ /dev/null @@ -1,23 +0,0 @@ -I was seeing various issues with parallel make, mainly due to to what was likely -partially installed headers. If you change into the source directory and -"NOISY=1 make ../obj/apt-pkg/sourcelist.opic" in apt-pkg, you'll see it -doesn't have any dependencies on the headers being installed. This patch -fixes that so things build correctly. - -RP 2012/3/19 - -Upstream-Status: Pending - -Index: apt-1.2.24/buildlib/library.mak -=================================================================== ---- apt-1.2.24.orig/buildlib/library.mak -+++ apt-1.2.24/buildlib/library.mak -@@ -65,7 +65,7 @@ $(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR - - # Compilation rules - vpath %.cc $(SUBDIRS) --$(OBJ)/%.opic: %.cc $(LIBRARYDEPENDS) -+$(OBJ)/%.opic: %.cc $(LIBRARYDEPENDS) $($(LOCAL)-HEADERS) - echo Compiling $< to $@ - $(CXX) -c $(INLINEDEPFLAG) $(CPPFLAGS) $(CXXSTD) $(CXXFLAGS) $(PICFLAGS) -o $@ '$(abspath $<)' - $(DoDep) diff --git a/poky/meta/recipes-devtools/apt/apt/no-nls-dpkg.patch b/poky/meta/recipes-devtools/apt/apt/no-nls-dpkg.patch deleted file mode 100644 index 98b6c96ca..000000000 --- a/poky/meta/recipes-devtools/apt/apt/no-nls-dpkg.patch +++ /dev/null @@ -1,28 +0,0 @@ -Upstream-Status: Pending - -Index: apt-1.2.24/apt-pkg/deb/dpkgpm.cc -=================================================================== ---- apt-1.2.24.orig/apt-pkg/deb/dpkgpm.cc -+++ apt-1.2.24/apt-pkg/deb/dpkgpm.cc -@@ -54,6 +54,12 @@ - #include <apti18n.h> - /*}}}*/ - -+#ifdef USE_NLS -+#define _dpkg(x) dgettext("dpkg", x) -+#else -+#define _dpkg(x) x -+#endif -+ - using namespace std; - - APT_PURE static string -@@ -1703,7 +1709,7 @@ void pkgDPkgPM::WriteApportReport(const - } - - // check if its not a follow up error -- const char *needle = dgettext("dpkg", "dependency problems - leaving unconfigured"); -+ const char *needle = _dpkg("dependency problems - leaving unconfigured"); - if(strstr(errormsg, needle) != NULL) { - std::clog << _("No apport report written because the error message indicates its a followup error from a previous failure.") << std::endl; - return; diff --git a/poky/meta/recipes-devtools/apt/apt/noconfigure.patch b/poky/meta/recipes-devtools/apt/apt/noconfigure.patch deleted file mode 100644 index ebc67203b..000000000 --- a/poky/meta/recipes-devtools/apt/apt/noconfigure.patch +++ /dev/null @@ -1,37 +0,0 @@ -Upstream-Status: Inappropriate [configuration] -Signed-off-by: Constantin Musca <constantinx.musca@intel.com> - - -diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc -index 249542c..0a1911f 100644 ---- a/apt-pkg/packagemanager.cc -+++ b/apt-pkg/packagemanager.cc -@@ -952,10 +952,12 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg, bool const Immediate, int c - return false; - - if (Immediate == true) { -+#if 0 - // Perform immedate configuration of the package. - if (SmartConfigure(Pkg, Depth + 1) == false) - _error->Error(_("Could not perform immediate configuration on '%s'. " - "Please see man 5 apt.conf under APT::Immediate-Configure for details. (%d)"),Pkg.FullName().c_str(),2); -+#endif - } - - return true; -@@ -1038,6 +1040,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall() - } - } - -+#if 0 - // Final run through the configure phase - if (ConfigureAll() == false) - return Failed; -@@ -1052,6 +1055,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall() - return Failed; - } - } -+#endif - - return Completed; - } diff --git a/poky/meta/recipes-devtools/apt/apt/nodoc.patch b/poky/meta/recipes-devtools/apt/apt/nodoc.patch deleted file mode 100644 index 78cf53884..000000000 --- a/poky/meta/recipes-devtools/apt/apt/nodoc.patch +++ /dev/null @@ -1,18 +0,0 @@ -Disable documentation - -Upstream-Status: Inappropriate [configuration] -Signed-off-by: Constantin Musca <constantinx.musca@intel.com> - -Index: apt-1.2.24/Makefile -=================================================================== ---- apt-1.2.24.orig/Makefile -+++ apt-1.2.24/Makefile -@@ -19,7 +19,7 @@ all headers library clean veryclean bina - $(MAKE) -C cmdline $@ - $(MAKE) -C ftparchive $@ - $(MAKE) -C dselect $@ -- $(MAKE) -C doc $@ -+# $(MAKE) -C doc $@ - $(MAKE) -C po $@ - # FIXME: -C test has issue swith parallel builds, investigate! - -$(MAKE) -C test $@ diff --git a/poky/meta/recipes-devtools/apt/apt/triehash b/poky/meta/recipes-devtools/apt/apt/triehash new file mode 100755 index 000000000..b08bc6ec3 --- /dev/null +++ b/poky/meta/recipes-devtools/apt/apt/triehash @@ -0,0 +1,728 @@ +#!/usr/bin/perl -w +# +# Copyright (C) 2016 Julian Andres Klode <jak@jak-linux.org> +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +=encoding utf8 + +=head1 NAME + +triehash - Generate a perfect hash function derived from a trie. + +=cut + +use strict; +use warnings; +use utf8; +use Getopt::Long; + +=head1 SYNOPSIS + +B<triehash> [S<I<option>>] [S<I<input file>>] + +=head1 DESCRIPTION + +triehash takes a list of words in input file and generates a function and +an enumeration to describe the word + +=head1 INPUT FILE FORMAT + +The file consists of multiple lines of the form: + + [label ~ ] word [= value] + +This maps word to value, and generates an enumeration with entries of the form: + + label = value + +If I<label> is undefined, the word will be used, the minus character will be +replaced by an underscore. If value is undefined it is counted upwards from +the last value. + +There may also be one line of the format + + [ label ~] = value + +Which defines the value to be used for non-existing keys. Note that this also +changes default value for other keys, as for normal entries. So if you place + + = 0 + +at the beginning of the file, unknown strings map to 0, and the other strings +map to values starting with 1. If label is not specified, the default is +I<Unknown>. + +=head1 OPTIONS + +=over 4 + +=item B<-C>I<.c file> B<--code>=I<.c file> + +Generate code in the given file. + +=item B<-H>I<header file> B<--header>=I<header file> + +Generate a header in the given file, containing a declaration of the hash +function and an enumeration. + +=item B<--enum-name=>I<word> + +The name of the enumeration. + +=item B<--function-name=>I<word> + +The name of the function. + +=item B<--label-prefix=>I<word> + +The prefix to use for labels. + +=item B<--label-uppercase> + +Uppercase label names when normalizing them. + +=item B<--namespace=>I<name> + +Put the function and enum into a namespace (C++) + +=item B<--class=>I<name> + +Put the function and enum into a class (C++) + +=item B<--enum-class> + +Generate an enum class instead of an enum (C++) + +=item B<--counter-name=>I<name> + +Use I<name> for a counter that is set to the latest entry in the enumeration ++ 1. This can be useful for defining array sizes. + +=item B<--ignore-case> + +Ignore case for words. + +=item B<--multi-byte>=I<value> + +Generate code reading multiple bytes at once. The value is a string of power +of twos to enable. The default value is 320 meaning that 8, 4, and single byte +reads are enabled. Specify 0 to disable multi-byte completely, or add 2 if you +also want to allow 2-byte reads. 2-byte reads are disabled by default because +they negatively affect performance on older Intel architectures. + +This generates code for both multiple bytes and single byte reads, but only +enables the multiple byte reads of GNU C compatible compilers, as the following +extensions are used: + +=over 8 + +=item Byte-aligned integers + +We must be able to generate integers that are aligned to a single byte using: + + typedef uint64_t __attribute__((aligned (1))) triehash_uu64; + +=item Byte-order + +The macros __BYTE_ORDER__ and __ORDER_LITTLE_ENDIAN__ must be defined. + +=back + +We forcefully disable multi-byte reads on platforms where the variable +I<__ARM_ARCH> is defined and I<__ARM_FEATURE_UNALIGNED> is not defined, +as there is a measurable overhead from emulating the unaligned reads on +ARM. + +=item B<--language=>I<language> + +Generate a file in the specified language. Currently known are 'C' and 'tree', +the latter generating a tree. + +=item B<--include=>I<header> + +Add the header to the include statements of the header file. The value must +be surrounded by quotes or angle brackets for C code. May be specified multiple +times. + +=back + +=cut + +my $unknown = -1; +my $unknown_label = undef; +my $counter_start = 0; +my $enum_name = 'PerfectKey'; +my $function_name = 'PerfectHash'; +my $enum_class = 0; + +my $code_name = '-'; +my $header_name = '-'; +my $code; +my $header; +my $label_prefix = undef; +my $label_uppercase = 0; +my $ignore_case = 0; +my $multi_byte = '320'; +my $language = 'C'; +my $counter_name = undef; +my @includes = (); + + +Getopt::Long::config('default', + 'bundling', + 'no_getopt_compat', + 'no_auto_abbrev', + 'permute', + 'auto_help'); + +GetOptions ('code|C=s' => \$code_name, + 'header|H=s' => \$header_name, + 'function-name=s' => \$function_name, + 'label-prefix=s' => \$label_prefix, + 'label-uppercase' => \$label_uppercase, + 'ignore-case' => \$ignore_case, + 'enum-name=s' => \$enum_name, + 'language|l=s' => \$language, + 'multi-byte=s' => \$multi_byte, + 'enum-class' => \$enum_class, + 'include=s' => \@includes, + 'counter-name=s' => \$counter_name) + or die('Could not parse options!'); + + +# This implements a simple trie. Each node has three attributes: +# +# children - A hash of keys to other nodes +# value - The value to be stored here +# label - A named representation of the value. +# +# The key at each level of the trie can consist of one or more bytes, and the +# trie can be normalized to a form where all keys at a level have the same +# length using rebuild_tree(). +package Trie { + + sub new { + my $class = shift; + my $self = {}; + bless $self, $class; + + $self->{children} = {}; + $self->{value} = undef; + $self->{label} = undef; + + return $self; + } + + # Return the largest power of 2 smaller or equal to the argument + sub alignpower2 { + my ($self, $length) = @_; + + return 8 if ($length >= 8 && $multi_byte =~ /3/); + return 4 if ($length >= 4 && $multi_byte =~ /2/); + return 2 if ($length >= 2 && $multi_byte =~ /1/); + + return 1; + } + + # Split the key into a head block and a tail + sub split_key { + my ($self, $key) = @_; + my $length = length $key; + my $split = $self->alignpower2($length); + + return (substr($key, 0, $split), substr($key, $split)); + } + + # Given a key, a label, and a value, insert that into the tree, possibly + # replacing an existing node. + sub insert { + my ($self, $key, $label, $value) = @_; + + if (length($key) == 0) { + $self->{label} = $label; + $self->{value} = $value; + return; + } + + my ($child, $tail) = $self->split_key($key); + + $self->{children}{$child} = Trie->new if (!defined($self->{children}{$child})); + + $self->{children}{$child}->insert($tail, $label, $value); + } + + # Construct a new trie that only contains words of a given length. This + # is used to split up the common trie after knowing all words, so we can + # switch on the expected word length first, and have the per-trie function + # implement simple longest prefix matching. + sub filter_depth { + my ($self, $togo) = @_; + + my $new = Trie->new; + + if ($togo != 0) { + my $found = 0; + foreach my $key (sort keys %{$self->{children}}) { + if ($togo > length($key) || defined $self->{children}{$key}->{value}) { + my $child = $self->{children}{$key}->filter_depth($togo - length($key)); + + $new->{children}{$key}= $child if defined $child; + $found = 1 if defined $child; + } + } + return if (!$found); + } else { + $new->{value} = $self->{value}; + $new->{label} = $self->{label}; + } + + return $new; + } + + # (helper for rebuild_tree) + # Reinsert all value nodes into the specified $trie, prepending $prefix + # to their $paths. + sub reinsert_value_nodes_into { + my ($self, $trie, $prefix) = @_; + + $trie->insert($prefix, $self->{label}, $self->{value}) if (defined $self->{value}); + + foreach my $key (sort keys %{$self->{children}}) { + $self->{children}{$key}->reinsert_value_nodes_into($trie, $prefix . $key); + } + } + + # (helper for rebuild_tree) + # Find the earliest point to split a key. Normally, we split at the maximum + # power of 2 that is greater or equal than the length of the key. When we + # are building an ASCII-optimised case-insensitive trie that simply ORs + # each byte with 0x20, we need to split at the first ambiguous character: + # + # For example, the words a-bc and a\rbc are identical in such a situation: + # '-' | 0x20 == '-' == '\r' | 0x20 + # We cannot simply switch on all 4 bytes at once, but need to split before + # the ambiguous character so we can process the ambiguous character on its + # own. + sub find_earlier_split { + my ($self, $key) = @_; + + if ($ignore_case) { + for my $i (0..length($key)-1) { + # If the key starts with an ambiguous character, we need to + # take only it. Otherwise, we need to take everything + # before the character. + return $self->alignpower2($i || 1) if (main::ambiguous(substr($key, $i, 1))); + } + } + return $self->alignpower2(length $key); + } + + # This rebuilds the trie, splitting each key before ambiguous characters + # as explained in find_earlier_split(), and then chooses the smallest + # such split at each level, so that all keys at all levels have the same + # length (so we can use a multi-byte switch). + sub rebuild_tree { + my $self = shift; + # Determine if/where we need to split before an ambiguous character + my $new_split = 99999999999999999; + foreach my $key (sort keys %{$self->{children}}) { + my $special_length = $self->find_earlier_split($key); + $new_split = $special_length if ($special_length < $new_split); + } + + # Start building a new uniform trie + my $newself = Trie->new; + $newself->{label} = $self->{label}; + $newself->{value} = $self->{value}; + $newself->{children} = {}; + + foreach my $key (sort keys %{$self->{children}}) { + my $head = substr($key, 0, $new_split); + my $tail = substr($key, $new_split); + # Rebuild the child node at $head, pushing $tail downwards + $newself->{children}{$head} //= Trie->new; + $self->{children}{$key}->reinsert_value_nodes_into($newself->{children}{$head}, $tail); + # We took up to one special character of each key label. There might + # be more, so we need to rebuild recursively. + $newself->{children}{$head} = $newself->{children}{$head}->rebuild_tree(); + } + + return $newself; + } +} + +# Code generator for C and C++ +package CCodeGen { + my $static = ($code_name eq $header_name) ? "static " : ""; + my $enum_specifier = $enum_class ? "enum class" : "enum"; + + sub new { + my $class = shift; + my $self = {}; + bless $self, $class; + + return $self; + } + + sub open_output { + my $self = shift; + if ($code_name ne '-') { + open($code, '>', $code_name) or die "Cannot open $code_name: $!" ; + } else { + $code = *STDOUT; + } + if($code_name eq $header_name) { + $header = $code; + } elsif ($header_name ne '-') { + open($header, '>', $header_name) or die "Cannot open $header_name: $!" ; + } else { + $header = *STDOUT; + } + } + + sub mangle_label { + my ($self, $label) = @_; + + $label = $label_prefix . $label if defined($label_prefix); + $label = uc $label if $label_uppercase; + + return $label; + } + + sub word_to_label { + my ($self, $word) = @_; + + $word =~ s/_/__/g; + $word =~ s/-/_/g; + + return $self->mangle_label($word); + } + + # Return a case label, by shifting and or-ing bytes in the word + sub case_label { + my ($self, $key) = @_; + + return sprintf("'%s'", substr($key, 0, 1)) if not $multi_byte; + + my $output = '0'; + + for my $i (0..length($key)-1) { + $output .= sprintf("| onechar('%s', %d, %d)", substr($key, $i, 1), 8 * $i, 8*length($key)); + } + + return $output; + } + + # Return an appropriate read instruction for $length bytes from $offset + sub switch_key { + my ($self, $offset, $length) = @_; + + return "string[$offset]" if $length == 1; + return sprintf("*((triehash_uu%s*) &string[$offset])", $length * 8); + } + + # Render the trie so that it matches the longest prefix. + sub print_table { + my ($self, $trie, $fh, $indent, $index) = @_; + $indent //= 0; + $index //= 0; + + # If we have children, try to match them. + if (%{$trie->{children}}) { + # The difference between lowercase and uppercase alphabetical characters + # is that they have one bit flipped. If we have alphabetical characters + # in the search space, and the entire search space works fine if we + # always turn on the flip, just OR the character we are switching over + # with the bit. + my $want_use_bit = 0; + my $can_use_bit = 1; + my $key_length = 0; + foreach my $key (sort keys %{$trie->{children}}) { + $can_use_bit &= not main::ambiguous($key); + $want_use_bit |= ($key =~ /^[a-zA-Z]+$/); + $key_length = length($key); + } + + if ($ignore_case && $can_use_bit && $want_use_bit) { + printf { $fh } ((' ' x $indent) . "switch(%s | 0x%s) {\n", $self->switch_key($index, $key_length), '20' x $key_length); + } else { + printf { $fh } ((' ' x $indent) . "switch(%s) {\n", $self->switch_key($index, $key_length)); + } + + my $notfirst = 0; + foreach my $key (sort keys %{$trie->{children}}) { + if ($notfirst) { + printf { $fh } (' ' x $indent . " break;\n"); + } + if ($ignore_case) { + printf { $fh } (' ' x $indent . "case %s:\n", $self->case_label(lc($key))); + printf { $fh } (' ' x $indent . "case %s:\n", $self->case_label(uc($key))) if lc($key) ne uc($key) && !($can_use_bit && $want_use_bit); + } else { + printf { $fh } (' ' x $indent . "case %s:\n", $self->case_label($key)); + } + + $self->print_table($trie->{children}{$key}, $fh, $indent + 1, $index + length($key)); + + $notfirst=1; + } + + printf { $fh } (' ' x $indent . "}\n"); + } + + + # This node has a value, so it is a possible end point. If no children + # matched, we have found our longest prefix. + if (defined $trie->{value}) { + printf { $fh } (' ' x $indent . "return %s;\n", ($enum_class ? "${enum_name}::" : '').$trie->{label}); + } + + } + + sub print_words { + my ($self, $trie, $fh, $indent, $sofar) = @_; + + $indent //= 0; + $sofar //= ''; + + + printf { $fh } (' ' x $indent."%s = %s,\n", $trie->{label}, $trie->{value}) if defined $trie->{value}; + + foreach my $key (sort keys %{$trie->{children}}) { + $self->print_words($trie->{children}{$key}, $fh, $indent, $sofar . $key); + } + } + + sub print_functions { + my ($self, $trie, %lengths) = @_; + foreach my $local_length (sort { $a <=> $b } (keys %lengths)) { + print { $code } ("static enum ${enum_name} ${function_name}${local_length}(const char *string)\n"); + print { $code } ("{\n"); + $self->print_table($trie->filter_depth($local_length)->rebuild_tree(), $code, 1); + printf { $code } (" return %s$unknown_label;\n", ($enum_class ? "${enum_name}::" : '')); + print { $code } ("}\n"); + } + } + + sub main { + my ($self, $trie, $num_values, %lengths) = @_; + print { $header } ("#ifndef TRIE_HASH_${function_name}\n"); + print { $header } ("#define TRIE_HASH_${function_name}\n"); + print { $header } ("#include <stddef.h>\n"); + print { $header } ("#include <stdint.h>\n"); + foreach my $include (@includes) { + print { $header } ("#include $include\n"); + } + printf { $header } ("enum { $counter_name = $num_values };\n") if (defined($counter_name)); + print { $header } ("${enum_specifier} ${enum_name} {\n"); + $self->print_words($trie, $header, 1); + printf { $header } (" $unknown_label = $unknown,\n"); + print { $header } ("};\n"); + print { $header } ("${static}enum ${enum_name} ${function_name}(const char *string, size_t length);\n"); + + print { $code } ("#include \"$header_name\"\n") if ($header_name ne $code_name); + + if ($multi_byte) { + print { $code } ("#ifdef __GNUC__\n"); + foreach my $i ((16, 32, 64)) { + print { $code } ("typedef uint${i}_t __attribute__((aligned (1))) triehash_uu${i};\n"); + print { $code } ("typedef char static_assert${i}[__alignof__(triehash_uu${i}) == 1 ? 1 : -1];\n"); + } + + print { $code } ("#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__\n"); + print { $code } ("#define onechar(c, s, l) (((uint64_t)(c)) << (s))\n"); + print { $code } ("#else\n"); + print { $code } ("#define onechar(c, s, l) (((uint64_t)(c)) << (l-8-s))\n"); + print { $code } ("#endif\n"); + print { $code } ("#if (!defined(__ARM_ARCH) || defined(__ARM_FEATURE_UNALIGNED)) && !defined(TRIE_HASH_NO_MULTI_BYTE)\n"); + print { $code } ("#define TRIE_HASH_MULTI_BYTE\n"); + print { $code } ("#endif\n"); + print { $code } ("#endif /*GNUC */\n"); + + print { $code } ("#ifdef TRIE_HASH_MULTI_BYTE\n"); + $self->print_functions($trie, %lengths); + $multi_byte = 0; + print { $code } ("#else\n"); + $self->print_functions($trie, %lengths); + print { $code } ("#endif /* TRIE_HASH_MULTI_BYTE */\n"); + } else { + $self->print_functions($trie, %lengths); + } + + print { $code } ("${static}enum ${enum_name} ${function_name}(const char *string, size_t length)\n"); + print { $code } ("{\n"); + print { $code } (" switch (length) {\n"); + foreach my $local_length (sort { $a <=> $b } (keys %lengths)) { + print { $code } (" case $local_length:\n"); + print { $code } (" return ${function_name}${local_length}(string);\n"); + } + print { $code } (" default:\n"); + printf { $code } (" return %s$unknown_label;\n", ($enum_class ? "${enum_name}::" : '')); + print { $code } (" }\n"); + print { $code } ("}\n"); + + # Print end of header here, in case header and code point to the same file + print { $header } ("#endif /* TRIE_HASH_${function_name} */\n"); + } +} + +# A character is ambiguous if the 1<<5 (0x20) bit does not correspond to the +# lower case bit. A word is ambiguous if any character is. This definition is +# used to check if we can perform the |0x20 optimization when building a case- +# insensitive trie. +sub ambiguous { + my $word = shift; + + foreach my $char (split //, $word) { + # If 0x20 does not solely indicate lowercase, it is ambiguous + return 1 if ord(lc($char)) != (ord($char) | 0x20); + return 1 if ord(uc($char)) != (ord($char) & ~0x20); + } + + return 0; +} + +sub build_trie { + my $codegen = shift; + my $trie = Trie->new; + + my $counter = $counter_start; + my $prev_value; + my %lengths; + + open(my $input, '<', $ARGV[0]) or die "Cannot open $ARGV[0]: $!"; + while (my $line = <$input>) { + my ($label, $word, $value) = $line =~ m{ + (?:\s*([^~\s]+)\s*~)? # Label ~ + (?:\s*([^~=\s]+))? # Word + (?:\s*=\s*([^\s]+)\s+)? # = Value + \s* + }x; + + if (defined $word) { + $label //= $codegen->word_to_label($word); + $value //= defined $prev_value ? $prev_value + 1 : 0; + + $trie->insert($word, $label, $value); + $lengths{length($word)} = 1; + } elsif (defined $value) { + $unknown = $value; + $unknown_label = $codegen->mangle_label($label) if defined $label; + } else { + die "Invalid line: $line"; + } + + $prev_value = $value; + $counter = $value + 1 if $value >= $counter; + } + + $unknown_label //= $codegen->mangle_label('Unknown'); + + return ($trie, $counter, %lengths); +} + +# Generates an ASCII art tree +package TreeCodeGen { + + sub new { + my $class = shift; + my $self = {}; + bless $self, $class; + + return $self; + } + + sub mangle_label { + my ($self, $label) = @_; + return $label; + } + + sub word_to_label { + my ($self, $word) = @_; + return $word; + } + + sub main { + my ($self, $trie, $counter, %lengths) = @_; + printf { $code } ("┌────────────────────────────────────────────────────┐\n"); + printf { $code } ("│ Initial trie │\n"); + printf { $code } ("└────────────────────────────────────────────────────┘\n"); + $self->print($trie); + printf { $code } ("┌────────────────────────────────────────────────────┐\n"); + printf { $code } ("│ Rebuilt trie │\n"); + printf { $code } ("└────────────────────────────────────────────────────┘\n"); + $self->print($trie->rebuild_tree()); + + foreach my $local_length (sort { $a <=> $b } (keys %lengths)) { + printf { $code } ("┌────────────────────────────────────────────────────┐\n"); + printf { $code } ("│ Trie for words of length %-4d │\n", $local_length); + printf { $code } ("└────────────────────────────────────────────────────┘\n"); + $self->print($trie->filter_depth($local_length)->rebuild_tree()); + } + } + + sub open_output { + my $self = shift; + if ($code_name ne '-') { + open($code, '>:encoding(utf8)', $code_name) or die "Cannot open $ARGV[0]: $!" ; + } else { + $code = *STDOUT; + binmode($code, ':encoding(utf8)'); + } + } + + # Print a trie + sub print { + my ($self, $trie, $depth) = @_; + $depth //= 0; + + print { $code } (' → ') if defined($trie->{label}); + print { $code } ($trie->{label} // '', "\n"); + foreach my $key (sort keys %{$trie->{children}}) { + print { $code } ('│ ' x ($depth), "├── $key"); + $self->print($trie->{children}{$key}, $depth + 1); + } + } +} + +my %codegens = ( + C => 'CCodeGen', + tree => 'TreeCodeGen', +); + + +defined($codegens{$language}) or die "Unknown language $language. Valid choices: ", join(', ', keys %codegens); +my $codegen = $codegens{$language}->new(); +my ($trie, $counter, %lengths) = build_trie($codegen); + +$codegen->open_output(); +$codegen->main($trie, $counter, %lengths); + + +=head1 LICENSE + +triehash is available under the MIT/Expat license, see the source code +for more information. + +=head1 AUTHOR + +Julian Andres Klode <jak@jak-linux.org> + +=cut + diff --git a/poky/meta/recipes-devtools/apt/apt/truncate-filename.patch b/poky/meta/recipes-devtools/apt/apt/truncate-filename.patch deleted file mode 100644 index db1c42b66..000000000 --- a/poky/meta/recipes-devtools/apt/apt/truncate-filename.patch +++ /dev/null @@ -1,35 +0,0 @@ -strutl.cc: the filename can't be longer than 255 - -The URItoFileName translates the path into the filename, but the -filename can't be longer than 255 according to -/usr/include/linux/limits.h. - -Truncate it when it is longer than 240 (leave some spaces for -".Packages" and "._Release" suffix) - -Upstream-Status: Pending -Signed-off-by: Robert Yang <liezhi.yang@windriver.com> ---- - apt-pkg/contrib/strutl.cc | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc ---- a/apt-pkg/contrib/strutl.cc -+++ b/apt-pkg/contrib/strutl.cc -@@ -399,7 +399,12 @@ string URItoFileName(const string &URI) - // "\x00-\x20{}|\\\\^\\[\\]<>\"\x7F-\xFF"; - string NewURI = QuoteString(U,"\\|{}[]<>\"^~_=!@#$%^&*"); - replace(NewURI.begin(),NewURI.end(),'/','_'); -- return NewURI; -+ -+ // Truncate from the head when it is longer than 240 -+ if(NewURI.length() > 240) -+ return NewURI.substr(NewURI.length() - 240, NewURI.length() - 1); -+ else -+ return NewURI; - } - /*}}}*/ - // Base64Encode - Base64 Encoding routine for short strings /*{{{*/ --- -1.7.10.4 - diff --git a/poky/meta/recipes-devtools/apt/apt/use-host.patch b/poky/meta/recipes-devtools/apt/apt/use-host.patch deleted file mode 100644 index b30fcff0d..000000000 --- a/poky/meta/recipes-devtools/apt/apt/use-host.patch +++ /dev/null @@ -1,15 +0,0 @@ -Upstream-Status: Pending - -Index: apt-0.9.7.7/configure.ac -=================================================================== ---- apt-0.9.7.7.orig/configure.ac -+++ apt-0.9.7.7/configure.ac -@@ -112,7 +112,7 @@ dnl This is often the dpkg architecture - dnl First check against the full canonical canoncial-system-type in $target - dnl and if that fails, just look for the cpu - AC_MSG_CHECKING(debian architecture) --archset="`dpkg-architecture -qDEB_HOST_ARCH`" -+archset="`echo $host_alias|cut -d'-' -f1`" - if test "x$archset" = "x"; then - AC_MSG_ERROR([failed: use --host= or output from dpkg-architecture]) - fi diff --git a/poky/meta/recipes-devtools/apt/apt_1.2.31.bb b/poky/meta/recipes-devtools/apt/apt_1.2.31.bb deleted file mode 100644 index ae0bce933..000000000 --- a/poky/meta/recipes-devtools/apt/apt_1.2.31.bb +++ /dev/null @@ -1,20 +0,0 @@ -DEPENDS = "curl db zlib" -RDEPENDS_${PN} = "dpkg bash debianutils" -require apt.inc - -require apt-package.inc - -PACKAGECONFIG ??= "lzma" -PACKAGECONFIG[lzma] = "ac_cv_lib_lzma_lzma_easy_encoder=yes,ac_cv_lib_lzma_lzma_easy_encoder=no,xz" -PACKAGECONFIG[bz2] = "ac_cv_lib_bz2_BZ2_bzopen=yes,ac_cv_lib_bz2_BZ2_bzopen=no,bzip2" -PACKAGECONFIG[lz4] = "ac_cv_lib_lz4_LZ4F_createCompressionContext=yes,ac_cv_lib_lz4_LZ4F_createCompressionContext=no,lz4" - -FILES_${PN} += "${bindir}/apt-key" -apt-manpages += "doc/apt-key.8" - -do_install_append() { - #Write the correct apt-architecture to apt.conf - APT_CONF=${D}/etc/apt/apt.conf - echo 'APT::Architecture "${DPKG_ARCH}";' > ${APT_CONF} - oe_libinstall -so -C bin libapt-private ${D}${libdir}/ -} diff --git a/poky/meta/recipes-devtools/apt/apt_1.8.2.1.bb b/poky/meta/recipes-devtools/apt/apt_1.8.2.1.bb new file mode 100644 index 000000000..bd1f4f39c --- /dev/null +++ b/poky/meta/recipes-devtools/apt/apt_1.8.2.1.bb @@ -0,0 +1,106 @@ +SUMMARY = "Advanced front-end for dpkg" +LICENSE = "GPLv2.0+" +SECTION = "base" + +# Triehash script taken from https://github.com/julian-klode/triehash +SRC_URI = "${DEBIAN_MIRROR}/main/a/apt/${BPN}_${PV}.tar.xz \ + file://triehash \ + file://0001-Disable-documentation-directory-altogether.patch \ + file://0001-Fix-musl-build.patch \ + file://0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch \ + " + +SRC_URI_append_class-native = " \ + file://0001-Do-not-init-tables-from-dpkg-configuration.patch \ + file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \ + file://0001-Do-not-configure-packages-on-installation.patch \ + " + +SRC_URI[sha256sum] = "6d447f2e9437ec24e78350b63bb0592bee1f050811d51990b0c783183b0983f8" +LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263" + +# the package is taken from snapshots.debian.org; that source is static and goes stale +# so we check the latest upstream from a directory that does get updated +UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/a/apt/" + +inherit cmake perlnative bash-completion upstream-version-is-even + +BBCLASSEXTEND = "native" + +DEPENDS += "virtual/libiconv virtual/libintl db gnutls lz4 zlib bzip2 xz" + +EXTRA_OECMAKE_append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False -DUSE_NLS=False -DDPKG_DATADIR=${datadir}/dpkg -DTRIEHASH_EXECUTABLE=${WORKDIR}/triehash" + +do_configure_prepend () { + echo "set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH )" >> ${WORKDIR}/toolchain.cmake + +} + +# Unfortunately apt hardcodes this all over the place +FILES_${PN} += "${prefix}/lib/dpkg ${prefix}/lib/apt" +RDEPENDS_${PN} += "bash perl dpkg" + +do_install_append_class-native() { + cat > ${D}${sysconfdir}/apt/apt.conf.sample << EOF +Dir "${STAGING_DIR_NATIVE}/" +{ + State "var/lib/apt/" + { + Lists "#APTCONF#/lists/"; + status "#ROOTFS#/var/lib/dpkg/status"; + }; + Cache "var/cache/apt/" + { + Archives "archives/"; + pkgcache ""; + srcpkgcache ""; + }; + Bin "${STAGING_BINDIR_NATIVE}/" + { + methods "${STAGING_LIBDIR}/apt/methods/"; + gzip "/bin/gzip"; + dpkg "dpkg"; + dpkg-source "dpkg-source"; + dpkg-buildpackage "dpkg-buildpackage"; + apt-get "apt-get"; + apt-cache "apt-cache"; + }; + Etc "#APTCONF#" + { + Preferences "preferences"; + }; + Log "var/log/apt"; +}; + +APT +{ + Install-Recommends "true"; + Immediate-Configure "false"; + Architecture "i586"; + Get + { + Assume-Yes "true"; + }; +}; + +Acquire +{ + AllowInsecureRepositories "true"; +}; + +DPkg::Options {"--root=#ROOTFS#";"--admindir=#ROOTFS#/var/lib/dpkg";"--force-all";"--no-debsig"}; +DPkg::Path ""; +EOF +} + +do_install_append_class-target() { + #Write the correct apt-architecture to apt.conf + APT_CONF=${D}/etc/apt/apt.conf + echo 'APT::Architecture "${DPKG_ARCH}";' > ${APT_CONF} +} + +# Avoid non-reproducible -src package +do_install_append () { + sed -i -e "s,${B},,g" \ + ${B}/apt-pkg/tagfile-keys.cc +} diff --git a/poky/meta/recipes-devtools/apt/files/apt.conf b/poky/meta/recipes-devtools/apt/files/apt.conf deleted file mode 100644 index c95a5b07a..000000000 --- a/poky/meta/recipes-devtools/apt/files/apt.conf +++ /dev/null @@ -1,42 +0,0 @@ -Dir "${STAGING_DIR_NATIVE}/" -{ - State "var/lib/apt/" - { - Lists "#APTCONF#/lists/"; - status "#ROOTFS#/var/lib/dpkg/status"; - }; - Cache "var/cache/apt/" - { - Archives "archives/"; - pkgcache ""; - srcpkgcache ""; - }; - Bin "${STAGING_BINDIR_NATIVE}/" - { - methods "${STAGING_LIBDIR}/apt/methods/"; - gzip "/bin/gzip"; - dpkg "dpkg"; - dpkg-source "dpkg-source"; - dpkg-buildpackage "dpkg-buildpackage"; - apt-get "apt-get"; - apt-cache "apt-cache"; - }; - Etc "#APTCONF#" - { - Preferences "preferences"; - }; -}; - -APT -{ - Install-Recommends "true"; - Immediate-Configure "false"; - Architecture "i586"; - Get - { - Assume-Yes "true"; - Force-Yes "true" - }; -}; - -DPkg::Options {"--root=#ROOTFS#";"--admindir=#ROOTFS#/var/lib/dpkg";"--force-all";"--no-force-overwrite";"--no-debsig"}; diff --git a/poky/meta/recipes-devtools/apt/files/db_linking_hack.patch b/poky/meta/recipes-devtools/apt/files/db_linking_hack.patch deleted file mode 100644 index a61d4b07c..000000000 --- a/poky/meta/recipes-devtools/apt/files/db_linking_hack.patch +++ /dev/null @@ -1,29 +0,0 @@ -Upstream-Status: Backport - -Index: apt-0.7.3/configure.ac -=================================================================== ---- apt-0.7.3.orig/configure.ac 2007-07-01 10:38:45.000000000 +0000 -+++ apt-0.7.3/configure.ac 2007-08-21 13:39:26.000000000 +0000 -@@ -67,8 +67,20 @@ - [AC_DEFINE(HAVE_BDB) - BDBLIB="-ldb" - AC_MSG_RESULT(yes)], -- [BDBLIB="" -- AC_MSG_RESULT(no)] -+ -+ LIBS="$LIBS -lpthread" -+ [AC_MSG_CHECKING(if we can link against BerkeleyDB with pthread) -+ AC_LINK_IFELSE( -+ [AC_LANG_PROGRAM( -+ [#include <db.h>], -+ [int r, s, t; db_version(&r, &s, &t);] -+ )], -+ [AC_DEFINE(HAVE_BDB) -+ BDBLIB="-ldb -lpthread" -+ AC_MSG_RESULT(yes)], -+ [BDBLIB="" -+ AC_MSG_RESULT(no)] -+ )] - )] - ) - diff --git a/poky/meta/recipes-devtools/apt/files/environment.patch b/poky/meta/recipes-devtools/apt/files/environment.patch deleted file mode 100644 index 9a0303803..000000000 --- a/poky/meta/recipes-devtools/apt/files/environment.patch +++ /dev/null @@ -1,15 +0,0 @@ -Upstream-Status: Backport - -Index: apt-0.6.46.2/buildlib/environment.mak.in -=================================================================== ---- apt-0.6.46.2.orig/buildlib/environment.mak.in 2007-03-29 11:38:58.000000000 +0100 -+++ apt-0.6.46.2/buildlib/environment.mak.in 2007-03-29 11:39:12.000000000 +0100 -@@ -62,7 +62,7 @@ - - # Shared library things - HOST_OS = @host_os@ --ifneq ($(words $(filter linux-gnu gnu% %gnu,$(HOST_OS))),0) -+ifneq ($(words $(filter linux-gnu linux-gnueabi gnu% %gnu,$(HOST_OS))),0) - SONAME_MAGIC=-Wl,-soname -Wl, - LFLAGS_SO= - else diff --git a/poky/meta/recipes-devtools/apt/files/no-curl.patch b/poky/meta/recipes-devtools/apt/files/no-curl.patch deleted file mode 100644 index 0838552b2..000000000 --- a/poky/meta/recipes-devtools/apt/files/no-curl.patch +++ /dev/null @@ -1,54 +0,0 @@ -Upstream-Status: Inappropriate [configuration] -From 5d61ac822fd9a3871cd5089389c210606232ecdc Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linux.intel.com> -Date: Thu, 26 May 2016 15:34:45 -0500 -Subject: [PATCH] Upstream-Status: Inappropriate [configuration] -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> ---- - configure.ac | 7 ------- - methods/makefile | 7 ------- - 2 files changed, 14 deletions(-) - -diff --git a/configure.ac b/configure.ac -index e47f459..cd24264 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -83,13 +83,6 @@ AC_CHECK_HEADER(db.h, - - LIBS="$saveLIBS" - --AC_CHECK_LIB(curl, curl_easy_init, -- [AC_CHECK_HEADER(curl/curl.h, -- curl_ok=yes, -- curl_ok=no)], -- AC_MSG_ERROR([failed: I need CURL due https support]), --) -- - AC_SUBST(BDBLIB) - - HAVE_ZLIB=no -diff --git a/methods/makefile b/methods/makefile -index 3274e92..255086b 100644 ---- a/methods/makefile -+++ b/methods/makefile -@@ -51,13 +51,6 @@ LIB_MAKES = apt-pkg/makefile - SOURCE = http.cc http_main.cc rfc2553emu.cc connect.cc server.cc - include $(PROGRAM_H) - --# The https method --PROGRAM=https --SLIBS = -lapt-pkg -lcurl $(INTLLIBS) -lresolv --LIB_MAKES = apt-pkg/makefile --SOURCE = https.cc server.cc --include $(PROGRAM_H) -- - # The ftp method - PROGRAM=ftp - SLIBS = -lapt-pkg $(SOCKETLIBS) $(INTLLIBS) -lresolv --- -2.1.4 - diff --git a/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch b/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch index 1592c02cb..0e84c4bf8 100644 --- a/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch +++ b/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch @@ -1,4 +1,4 @@ -From 081385f4d4bba367afad3bff1fa034f5263305e6 Mon Sep 17 00:00:00 2001 +From 857c843d4bcf576467b505eb05a47f3e7d32caaa Mon Sep 17 00:00:00 2001 From: Serhii Popovych <spopovyc@cisco.com> Date: Wed, 10 Feb 2016 17:07:32 +0000 Subject: [PATCH] perl: Replace -w option in shebangs with modern "use @@ -23,16 +23,16 @@ Signed-off-by: Robert Yang <liezhi.yang@windriver.com> 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/bin/aclocal.in b/bin/aclocal.in -index b3715d9..461d453 100644 +index 9a20325..bd185d4 100644 --- a/bin/aclocal.in +++ b/bin/aclocal.in @@ -1,4 +1,4 @@ -#!@PERL@ -w +#!@PERL@ - # -*- perl -*- + # aclocal - create aclocal.m4 by scanning configure.ac -*- perl -*- # @configure_input@ - -@@ -32,6 +32,7 @@ BEGIN + # Copyright (C) 1996-2020 Free Software Foundation, Inc. +@@ -26,6 +26,7 @@ BEGIN } use strict; @@ -41,16 +41,16 @@ index b3715d9..461d453 100644 use Automake::Config; use Automake::General; diff --git a/bin/automake.in b/bin/automake.in -index 8377d20..3a66965 100644 +index 5ed404a..d387b8e 100644 --- a/bin/automake.in +++ b/bin/automake.in @@ -1,4 +1,4 @@ -#!@PERL@ -w +#!@PERL@ - # -*- perl -*- + # automake - create Makefile.in from Makefile.am -*- perl -*- # @configure_input@ - -@@ -28,6 +28,7 @@ eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac' + # Copyright (C) 1994-2020 Free Software Foundation, Inc. +@@ -23,6 +23,7 @@ package Automake; use strict; diff --git a/poky/meta/recipes-devtools/automake/automake_1.16.1.bb b/poky/meta/recipes-devtools/automake/automake_1.16.2.bb index d82eed3c6..fd8ed0ed3 100644 --- a/poky/meta/recipes-devtools/automake/automake_1.16.1.bb +++ b/poky/meta/recipes-devtools/automake/automake_1.16.2.bb @@ -28,8 +28,8 @@ SRC_URI += "file://python-libdir.patch \ file://0001-build-fix-race-in-parallel-builds.patch \ " -SRC_URI[md5sum] = "83cc2463a4080efd46a72ba2c9f6b8f5" -SRC_URI[sha256sum] = "608a97523f97db32f1f5d5615c98ca69326ced2054c9f82e65bade7fc4c9dea8" +SRC_URI[md5sum] = "f1a14f2ab2b0fb861a011e1d94e589e0" +SRC_URI[sha256sum] = "b2f361094b410b4acbf4efba7337bdb786335ca09eb2518635a09fb7319ca5c1" PERL = "${USRBINPATH}/perl" PERL_class-native = "${USRBINPATH}/env perl" diff --git a/poky/meta/recipes-devtools/bison/bison/dont-depend-on-help2man.patch.patch b/poky/meta/recipes-devtools/bison/bison/dont-depend-on-help2man.patch.patch deleted file mode 100644 index 8a41a3a76..000000000 --- a/poky/meta/recipes-devtools/bison/bison/dont-depend-on-help2man.patch.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 31bb81ef15c42b10844eb8af8738f672076edf0e Mon Sep 17 00:00:00 2001 -From: Marko Lindqvist <cazfi74@gmail.com> -Date: Tue, 21 Apr 2015 00:48:45 -0700 -Subject: [PATCH] doc/local.mk: dont-depend-on-help2man.patch - -Upstream-Status: Inappropriate - -Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> - -Updated for bison 3.0.4 - -Signed-off-by: Robert Yang <liezhi.yang@windriver.com> - ---- - doc/local.mk | 9 +-------- - 1 file changed, 1 insertion(+), 8 deletions(-) - -diff --git a/doc/local.mk b/doc/local.mk -index d12836e..f9bf332 100644 ---- a/doc/local.mk -+++ b/doc/local.mk -@@ -101,10 +101,7 @@ endif ! CROSS_COMPILING - ## Man Pages. ## - ## ----------- ## - --dist_man_MANS = $(top_srcdir)/doc/bison.1 -- --EXTRA_DIST += $(dist_man_MANS:.1=.x) --MAINTAINERCLEANFILES += $(dist_man_MANS) -+EXTRA_DIST += bison.x - - # Differences to ignore when comparing the man page (the date). - remove_time_stamp = \ -@@ -127,10 +124,6 @@ $(top_srcdir)/doc/bison.1: $(MAN_DEPS) - fi - $(AM_V_at)rm -f $@*.tmp - --if ENABLE_YACC --nodist_man_MANS = doc/yacc.1 --endif -- - ## ----------------------------- ## - ## Graphviz examples generation. ## - ## ----------------------------- ## diff --git a/poky/meta/recipes-devtools/bison/bison_3.5.4.bb b/poky/meta/recipes-devtools/bison/bison_3.6.2.bb index 124bc41d3..2ec938123 100644 --- a/poky/meta/recipes-devtools/bison/bison_3.5.4.bb +++ b/poky/meta/recipes-devtools/bison/bison_3.6.2.bb @@ -10,11 +10,10 @@ SECTION = "devel" DEPENDS = "bison-native flex-native" SRC_URI = "${GNU_MIRROR}/bison/bison-${PV}.tar.xz \ - file://dont-depend-on-help2man.patch.patch \ file://add-with-bisonlocaledir.patch \ file://0001-bison-fix-the-parallel-build.patch \ -" -SRC_URI[sha256sum] = "4c17e99881978fa32c05933c5262457fa5b2b611668454f8dc2a695cd6b3720c" + " +SRC_URI[sha256sum] = "4a164b5cc971b896ce976bf4b624fab7279e0729cf983a5135df7e4df0970f6e" # No point in hardcoding path to m4, just use PATH EXTRA_OECONF += "M4=m4" diff --git a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.4.1.bb b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.6.1.bb index cdc971cf5..885d79dcd 100644 --- a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.4.1.bb +++ b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.6.1.bb @@ -14,7 +14,7 @@ DEPENDS = "util-linux attr e2fsprogs lzo acl" DEPENDS_append_class-target = " udev" RDEPENDS_${PN} = "libgcc" -SRCREV = "3fc2326d3474a5e4df2449f5e3043f7298501334" +SRCREV = "2a74d408f4b65d603e42f6e7b6b905ac81825fc9" SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git \ file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \ " diff --git a/poky/meta/recipes-devtools/build-compare/build-compare_git.bb b/poky/meta/recipes-devtools/build-compare/build-compare_git.bb index d2a4b5444..74a954db4 100644 --- a/poky/meta/recipes-devtools/build-compare/build-compare_git.bb +++ b/poky/meta/recipes-devtools/build-compare/build-compare_git.bb @@ -9,9 +9,9 @@ SRC_URI = "git://github.com/openSUSE/build-compare.git" # Date matches entry in build-compare.changes and date of SRCREV. # -SRCREV = "28bf642fcfdab94adb9b847329338005be6f73c7" +SRCREV = "102d844ce052c6dec6c56ee1d471bde72a1b4633" PE = "1" -PV = "2020.03.31+git${SRCPV}" +PV = "2020.05.29+git${SRCPV}" UPSTREAM_CHECK_COMMITS = "1" S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-devtools/ccache/ccache_3.7.7.bb b/poky/meta/recipes-devtools/ccache/ccache_3.7.7.bb deleted file mode 100644 index 3e7362b28..000000000 --- a/poky/meta/recipes-devtools/ccache/ccache_3.7.7.bb +++ /dev/null @@ -1,7 +0,0 @@ -require ccache.inc - -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://LICENSE.adoc;md5=22d514dbc01fdf9a9784334b6b59417a" - -SRC_URI[md5sum] = "500d7bd9ebc6ee3105d7fc332c1ef395" -SRC_URI[sha256sum] = "9b61f7fab2ec15305ee8382b03365503232dfb04b57414e7b0433768d530fa8a" diff --git a/poky/meta/recipes-devtools/ccache/ccache_3.7.9.bb b/poky/meta/recipes-devtools/ccache/ccache_3.7.9.bb new file mode 100644 index 000000000..a4de6c9fe --- /dev/null +++ b/poky/meta/recipes-devtools/ccache/ccache_3.7.9.bb @@ -0,0 +1,7 @@ +require ccache.inc + +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://LICENSE.adoc;md5=22d514dbc01fdf9a9784334b6b59417a" + +SRC_URI[md5sum] = "a4a38afc62ed189904357739fd8f3fb8" +SRC_URI[sha256sum] = "92838e2133c9e704fdab9ee2608dad86c99021278b9ac47d065aa8ff2ea8ce36" diff --git a/poky/meta/recipes-devtools/cmake/cmake-native_3.16.5.bb b/poky/meta/recipes-devtools/cmake/cmake-native_3.17.3.bb index b2952ee5f..b2952ee5f 100644 --- a/poky/meta/recipes-devtools/cmake/cmake-native_3.16.5.bb +++ b/poky/meta/recipes-devtools/cmake/cmake-native_3.17.3.bb diff --git a/poky/meta/recipes-devtools/cmake/cmake.inc b/poky/meta/recipes-devtools/cmake/cmake.inc index 09949b566..7f0307c15 100644 --- a/poky/meta/recipes-devtools/cmake/cmake.inc +++ b/poky/meta/recipes-devtools/cmake/cmake.inc @@ -10,8 +10,8 @@ HOMEPAGE = "http://www.cmake.org/" BUGTRACKER = "http://public.kitware.com/Bug/my_view_page.php" SECTION = "console/utils" LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://Copyright.txt;md5=622747147b46f22e1953876a7cba3323 \ - file://Source/cmake.h;md5=4494dee184212fc89c469c3acd555a14;beginline=1;endline=3 \ +LIC_FILES_CHKSUM = "file://Copyright.txt;md5=c721f56fce89ba2eadc2fdd8ba1f4d83 \ + file://Source/cmake.h;beginline=1;endline=3;md5=4494dee184212fc89c469c3acd555a14 \ " CMAKE_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}" @@ -22,7 +22,6 @@ SRC_URI = "https://cmake.org/files/v${CMAKE_MAJOR_VERSION}/cmake-${PV}.tar.gz \ file://0004-Fail-silently-if-system-Qt-installation-is-broken.patch \ " -SRC_URI[md5sum] = "d86ccaf3d2462b6b5947919abe5b9f15" -SRC_URI[sha256sum] = "5f760b50b8ecc9c0c37135fae5fbf00a2fef617059aa9d61c1bb91653e5a8bfc" +SRC_URI[sha256sum] = "0bd60d512275dc9f6ef2a2865426a184642ceb3761794e6b65bff233b91d8c40" UPSTREAM_CHECK_REGEX = "cmake-(?P<pver>\d+(\.\d+)+)\.tar" diff --git a/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch b/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch index e2a58d25e..f5c1a212f 100644 --- a/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch +++ b/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch @@ -1,4 +1,4 @@ -From ab272d703ce77f323aa1285526559c9efbf85834 Mon Sep 17 00:00:00 2001 +From d4aa2dbdc69774ad668756586d59331ad215a2c6 Mon Sep 17 00:00:00 2001 From: Cody P Schafer <dev@codyps.com> Date: Thu, 27 Apr 2017 11:35:05 -0400 Subject: [PATCH] CMakeDetermineSystem: use oe environment vars to load default diff --git a/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch b/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch index 61c8f27cd..cf1dda7c9 100644 --- a/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch +++ b/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch @@ -1,4 +1,4 @@ -From 5a86c7fa987bd407f228176df2abeffd015be9ea Mon Sep 17 00:00:00 2001 +From 126994379ea75c8826874656bb55f955182ae911 Mon Sep 17 00:00:00 2001 From: Otavio Salvador <otavio@ossystems.com.br> Date: Wed, 17 Jan 2018 10:02:14 -0200 Subject: [PATCH] cmake: Prevent the detection of Qt5 @@ -25,7 +25,7 @@ Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> 7 files changed, 8 insertions(+), 9 deletions(-) diff --git a/Source/QtDialog/CMakeLists.txt b/Source/QtDialog/CMakeLists.txt -index cb89d19..9e68981 100644 +index 98dd0e2..252302b 100644 --- a/Source/QtDialog/CMakeLists.txt +++ b/Source/QtDialog/CMakeLists.txt @@ -3,7 +3,7 @@ @@ -38,18 +38,18 @@ index cb89d19..9e68981 100644 include_directories(${Qt5Widgets_INCLUDE_DIRS}) add_definitions(${Qt5Widgets_DEFINITONS}) diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt -index 57fa7fc..d50c146 100644 +index aff7383..e220503 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt -@@ -1329,7 +1329,7 @@ ${CMake_SOURCE_DIR}/Utilities/Release/push.bash --dir dev -- '${CMake_BUILD_NIGH +@@ -215,7 +215,7 @@ if(BUILD_TESTING) set(CMake_TEST_Qt5 1) endif() if(CMake_TEST_Qt5) - find_package(Qt5Widgets QUIET NO_MODULE) + #find_package(Qt5Widgets QUIET NO_MODULE) endif() - if(CMake_TEST_Qt5 AND Qt5Widgets_FOUND) - add_subdirectory(Qt5Autogen) + + if(NOT CMake_TEST_EXTERNAL_CMAKE) diff --git a/Tests/Qt4And5Automoc/CMakeLists.txt b/Tests/Qt4And5Automoc/CMakeLists.txt index ad74961..a9dd74b 100644 --- a/Tests/Qt4And5Automoc/CMakeLists.txt @@ -96,10 +96,10 @@ index c08efc4..87e25d9 100644 set(CMAKE_CXX_STANDARD 11) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/output/bin) diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt -index 6b2f117..1002005 100644 +index e9f8bca..3a2da34 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt -@@ -376,7 +376,7 @@ else() +@@ -396,7 +396,7 @@ else() endif() find_package(Qt4 QUIET) diff --git a/poky/meta/recipes-devtools/cmake/cmake_3.16.5.bb b/poky/meta/recipes-devtools/cmake/cmake_3.17.3.bb index e0457677e..e0457677e 100644 --- a/poky/meta/recipes-devtools/cmake/cmake_3.16.5.bb +++ b/poky/meta/recipes-devtools/cmake/cmake_3.17.3.bb diff --git a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.15.7.bb b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.15.10.bb index c6a53ffec..13bfa2109 100644 --- a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.15.7.bb +++ b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.15.10.bb @@ -8,7 +8,7 @@ SRC_URI = "git://github.com/rpm-software-management/createrepo_c \ file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ " -SRCREV = "4ab6b56b8b718396386982afba4ade297c14d91a" +SRCREV = "9f3f3be6359d8f9b6b269e28d9ae1f279cc5f3aa" S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-devtools/dpkg/dpkg/tweak-options-require-tar-1.27.patch b/poky/meta/recipes-devtools/dpkg/dpkg/tweak-options-require-tar-1.27.patch index e9119918b..ac59dce69 100644 --- a/poky/meta/recipes-devtools/dpkg/dpkg/tweak-options-require-tar-1.27.patch +++ b/poky/meta/recipes-devtools/dpkg/dpkg/tweak-options-require-tar-1.27.patch @@ -1,3 +1,8 @@ +From 48bcc51ce042d1b779b34fae454c52b15bdd9cae Mon Sep 17 00:00:00 2001 +From: Kai Kang <kai.kang@windriver.com> +Date: Fri, 22 Feb 2019 01:47:16 -0500 +Subject: [PATCH] dpkg: 1.18.25 -> 1.19.4 + GNU tar >= 1.27 is required for --owner=NAME:ID and --group=NAME:ID. And fails to build .deb packages with error: @@ -11,9 +16,13 @@ Tweak tar options in dpkg-deb source code to make it work on old machines. Upstream-Status: Inappropriate [cross build specific] Signed-off-by: Kai Kang <kai.kang@windriver.com> + --- + dpkg-deb/build.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + diff --git a/dpkg-deb/build.c b/dpkg-deb/build.c -index 68d187511..86fe22e25 100644 +index 8436839..67c0c20 100644 --- a/dpkg-deb/build.c +++ b/dpkg-deb/build.c @@ -462,7 +462,7 @@ tarball_pack(const char *dir, filenames_feed_func *tar_filenames_feeder, diff --git a/poky/meta/recipes-devtools/dpkg/dpkg_1.19.7.bb b/poky/meta/recipes-devtools/dpkg/dpkg_1.20.0.bb index 50fe54dee..1e822bbdf 100644 --- a/poky/meta/recipes-devtools/dpkg/dpkg_1.19.7.bb +++ b/poky/meta/recipes-devtools/dpkg/dpkg_1.20.0.bb @@ -19,5 +19,5 @@ SRC_URI_append_class-native = " \ file://tweak-options-require-tar-1.27.patch \ " -SRC_URI[md5sum] = "60f57c5494e6dfa177504d47bfa0e383" -SRC_URI[sha256sum] = "4c27fededf620c0aa522fff1a48577ba08144445341257502e7730f2b1a296e8" +SRC_URI[md5sum] = "f88f077236a3ff3decae3b25c989893d" +SRC_URI[sha256sum] = "b633cc2b0e030efb61e11029d8a3fb1123f719864c9992da2e52b471c96d0900" diff --git a/poky/meta/recipes-devtools/gdb/gdb-9.1.inc b/poky/meta/recipes-devtools/gdb/gdb-9.2.inc index d019e6b38..017b61ef6 100644 --- a/poky/meta/recipes-devtools/gdb/gdb-9.1.inc +++ b/poky/meta/recipes-devtools/gdb/gdb-9.2.inc @@ -17,5 +17,5 @@ SRC_URI = "${GNU_MIRROR}/gdb/gdb-${PV}.tar.xz \ file://0010-Fix-invalid-sigprocmask-call.patch \ file://0011-gdbserver-ctrl-c-handling.patch \ " -SRC_URI[md5sum] = "f7e9f6236c425097d9e5f18a6ac40655" -SRC_URI[sha256sum] = "699e0ec832fdd2f21c8266171ea5bf44024bd05164fdf064e4d10cc4cf0d1737" +SRC_URI[md5sum] = "db95524e554870209ab7d9f8fd8dc557" +SRC_URI[sha256sum] = "360cd7ae79b776988e89d8f9a01c985d0b1fa21c767a4295e5f88cb49175c555" diff --git a/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_9.1.bb b/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_9.2.bb index 301035940..301035940 100644 --- a/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_9.1.bb +++ b/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_9.2.bb diff --git a/poky/meta/recipes-devtools/gdb/gdb-cross_9.1.bb b/poky/meta/recipes-devtools/gdb/gdb-cross_9.2.bb index 50cf159fd..50cf159fd 100644 --- a/poky/meta/recipes-devtools/gdb/gdb-cross_9.1.bb +++ b/poky/meta/recipes-devtools/gdb/gdb-cross_9.2.bb diff --git a/poky/meta/recipes-devtools/gdb/gdb_9.1.bb b/poky/meta/recipes-devtools/gdb/gdb_9.2.bb index d70757a15..d70757a15 100644 --- a/poky/meta/recipes-devtools/gdb/gdb_9.1.bb +++ b/poky/meta/recipes-devtools/gdb/gdb_9.2.bb diff --git a/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb b/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb index 48b7e6d4a..9d1874c7b 100644 --- a/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb +++ b/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb @@ -8,8 +8,8 @@ DEPENDS_class-native = "hostperl-runtime-native" INHIBIT_DEFAULT_DEPS = "1" -SRCREV = "5256817ace8493502ec88501a19e4051c2e220b0" -PV = "20200117+git${SRCPV}" +SRCREV = "e78c96e5288993aaea3ec44e5c6ee755c668da79" +PV = "20200515+git${SRCPV}" SRC_URI = "git://git.savannah.gnu.org/config.git \ file://gnu-configize.in" diff --git a/poky/meta/recipes-devtools/go/go-1.14.inc b/poky/meta/recipes-devtools/go/go-1.14.inc index c52593db6..d729b6526 100644 --- a/poky/meta/recipes-devtools/go/go-1.14.inc +++ b/poky/meta/recipes-devtools/go/go-1.14.inc @@ -1,7 +1,7 @@ require go-common.inc GO_BASEVERSION = "1.14" -GO_MINOR = ".1" +GO_MINOR = ".3" PV .= "${GO_MINOR}" FILESEXTRAPATHS_prepend := "${FILE_DIRNAME}/go-${GO_BASEVERSION}:" @@ -18,5 +18,4 @@ SRC_URI += "\ file://0008-use-GOBUILDMODE-to-set-buildmode.patch \ " SRC_URI_append_libc-musl = " file://0009-ld-replace-glibc-dynamic-linker-with-musl.patch" - -SRC_URI[main.sha256sum] = "2ad2572115b0d1b4cb4c138e6b3a31cee6294cb48af75ee86bec3dca04507676" +SRC_URI[main.sha256sum] = "93023778d4d1797b7bc6a53e86c3a9b150c923953225f8a48a2d5fabc971af56" diff --git a/poky/meta/recipes-devtools/help2man/help2man-native_1.47.11.bb b/poky/meta/recipes-devtools/help2man/help2man-native_1.47.15.bb index a60e85189..4f80a2bdb 100644 --- a/poky/meta/recipes-devtools/help2man/help2man-native_1.47.11.bb +++ b/poky/meta/recipes-devtools/help2man/help2man-native_1.47.15.bb @@ -1,12 +1,11 @@ SUMMARY = "Program for creating simple man pages" SECTION = "devel" LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" +LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464" DEPENDS = "autoconf-native automake-native" SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz" -SRC_URI[md5sum] = "dd322adcaede5bd5eaed075ff8971bc1" -SRC_URI[sha256sum] = "5985b257f86304c8791842c0c807a37541d0d6807ee973000cf8a3fe6ad47b88" +SRC_URI[sha256sum] = "c25a35b30eceb315361484b0ff1f81c924e8ee5c8881576f1ee762f001dbcd1c" inherit autotools native diff --git a/poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb b/poky/meta/recipes-devtools/jquery/jquery_3.5.1.bb index 5c6f9cddb..b4d7e80af 100644 --- a/poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb +++ b/poky/meta/recipes-devtools/jquery/jquery_3.5.1.bb @@ -2,7 +2,7 @@ SUMMARY = "jQuery is a fast, small, and feature-rich JavaScript library" HOMEPAGE = "https://jquery.com/" LICENSE = "MIT" SECTION = "devel" -LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}.js;startline=8;endline=10;md5=b1e67ece919e852643f1541a54492d65" +LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}.js;beginline=8;endline=10;md5=ebd7bc5d23ab165188e526a0c65d24bb" SRC_URI = "\ https://code.jquery.com/${BP}.js;name=js \ @@ -10,9 +10,9 @@ SRC_URI = "\ https://code.jquery.com/${BP}.min.map;name=map \ " -SRC_URI[js.sha256sum] = "aff01a147aeccc9b70a5efad1f2362fd709f3316296ec460d94aa7d31decdb37" -SRC_URI[min.sha256sum] = "c4dccdd9ae25b64078e0c73f273de94f8894d5c99e4741645ece29aeefc9c5a4" -SRC_URI[map.sha256sum] = "3149351c8cbc3fb230bbf6188617c7ffda77d9e14333f4f5f0aa1aae379df892" +SRC_URI[js.sha256sum] = "416a3b2c3bf16d64f6b5b6d0f7b079df2267614dd6847fc2f3271b4409233c37" +SRC_URI[min.sha256sum] = "f7f6a5894f1d19ddad6fa392b2ece2c5e578cbf7da4ea805b6885eb6985b6e3d" +SRC_URI[map.sha256sum] = "511d6f6d3e7acec78cd2505f04282b6e01329b4c24931f39d91739d0d1ddeef8" UPSTREAM_CHECK_REGEX = "jquery-(?P<pver>\d+(\.\d+)+)\.js" diff --git a/poky/meta/recipes-devtools/json-c/json-c/add-disable-werror-option-to-configure.patch b/poky/meta/recipes-devtools/json-c/json-c/add-disable-werror-option-to-configure.patch deleted file mode 100644 index 0c20c8458..000000000 --- a/poky/meta/recipes-devtools/json-c/json-c/add-disable-werror-option-to-configure.patch +++ /dev/null @@ -1,45 +0,0 @@ -json-c: Backport --disable-werror patch to allow compilation under icecc - -icecc preprocesses source files locally before shipping them off to be compiled -on remote hosts. This preprocessing removes comments, including /* fallthough */ -comments in switch statements that normally prevent an implicit-fallthrough -warning, see https://github.com/icecc/icecream/issues/419 - -Rather than turning off -Werror, the upstream project has implemented a -configure option, --disable-werror, in response to Ross's -https://github.com/json-c/json-c/issues/489 - -This patch from -https://github.com/json-c/json-c/commit/21c886534f8927fdc0fb5f8647394f3e0e0874b8 - -Upstream-Status: Backport [Not yet released] -Signed-off-by: Douglas Royds <douglas.royds@taitradio.com> - -From 21c886534f8927fdc0fb5f8647394f3e0e0874b8 Mon Sep 17 00:00:00 2001 -From: Pierce Lopez <pierce.lopez@gmail.com> -Date: Sun, 9 Jun 2019 10:52:08 -0400 -Subject: [PATCH] build: add --disable-werror option to configure - -to omit -Werror compiler option ---- - configure.ac | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 272ea6af9c..798fd5b747 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -165,7 +165,12 @@ AS_IF([test "x$enable_Bsymbolic" = "xcheck"], - AS_IF([test "x$enable_Bsymbolic" = "xyes"], [JSON_BSYMBOLIC_LDFLAGS=-Wl[,]-Bsymbolic-functions]) - AC_SUBST(JSON_BSYMBOLIC_LDFLAGS) - --AX_APPEND_COMPILE_FLAGS([-Wall -Werror -Wcast-qual -Wno-error=deprecated-declarations]) -+AC_ARG_ENABLE([werror], -+ AS_HELP_STRING([--disable-werror], [avoid treating compiler warnings as fatal errors])) -+ -+AS_IF([test "x$enable_werror" != "xno"], [AX_APPEND_COMPILE_FLAGS([-Werror])]) -+ -+AX_APPEND_COMPILE_FLAGS([-Wall -Wcast-qual -Wno-error=deprecated-declarations]) - AX_APPEND_COMPILE_FLAGS([-Wextra -Wwrite-string -Wno-unused-parameter]) - AX_APPEND_COMPILE_FLAGS([-D_GNU_SOURCE]) - diff --git a/poky/meta/recipes-devtools/json-c/json-c_0.13.1.bb b/poky/meta/recipes-devtools/json-c/json-c_0.14.bb index 522879f21..99fde873b 100644 --- a/poky/meta/recipes-devtools/json-c/json-c_0.13.1.bb +++ b/poky/meta/recipes-devtools/json-c/json-c_0.14.bb @@ -4,19 +4,14 @@ HOMEPAGE = "https://github.com/json-c/json-c/wiki" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2" -SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz \ - file://add-disable-werror-option-to-configure.patch \ - " -SRC_URI[md5sum] = "04969ad59cc37bddd83741a08b98f350" -SRC_URI[sha256sum] = "b87e608d4d3f7bfdd36ef78d56d53c74e66ab278d318b71e6002a369d36f4873" +SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz" +SRC_URI[sha256sum] = "b377de08c9b23ca3b37d9a9828107dff1de5ce208ff4ebb35005a794f30c6870" UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases" UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+)-\d+" RPROVIDES_${PN} = "libjson" -inherit autotools - -EXTRA_OECONF = "--disable-werror" +inherit cmake BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch b/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch deleted file mode 100644 index a97fb7390..000000000 --- a/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch +++ /dev/null @@ -1,23 +0,0 @@ -From d7eeac90fe02ccf5c5e4334e41ec75fc33803643 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Tue, 31 Mar 2020 16:12:28 +0200 -Subject: [PATCH] meson.build: do not install python gi bindings - -These are unnecessary for oe-core, and the install location -is incorrectly determined using native python. - -Upstream-Status: Inappropriate [oe-core specific] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> ---- - meson.build | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/meson.build b/meson.build -index a8b02b4..8ff737b 100644 ---- a/meson.build -+++ b/meson.build -@@ -171,4 +171,3 @@ configure_file( - ) - - subdir('modulemd') --subdir('bindings/python') diff --git a/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb b/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb index d440e60ee..fda01b8ad 100644 --- a/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb +++ b/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb @@ -4,17 +4,16 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=25a3927bff3ee4f5b21bcb0ed3fcd6bb" SRC_URI = "git://github.com/fedora-modularity/libmodulemd;protocol=https \ file://0001-modulemd-generate-the-manpage-only-if-the-feature-is.patch \ - file://0002-meson.build-do-not-install-python-gi-bindings.patch \ " -PV = "2.9.2" -SRCREV = "780750eab8a0587b20d033f335301f16d00ab9c9" +PV = "2.9.4" +SRCREV = "c7254db07b21495fc9bd247c5b17ee20149c05e3" S = "${WORKDIR}/git" -inherit meson gobject-introspection +inherit meson gobject-introspection python3-dir -EXTRA_OEMESON = "-Ddeveloper_build=false -Dwith_docs=false -Drpmio=disabled -Dlibmagic=disabled -Dwith_manpages=disabled" +EXTRA_OEMESON = "-Ddeveloper_build=false -Dwith_docs=false -Drpmio=disabled -Dlibmagic=disabled -Dwith_manpages=disabled -Dgobject_overrides_dir_py3=${PYTHON_SITEPACKAGES_DIR}/gi/overrides" DEPENDS += "glib-2.0 libyaml glib-2.0-native python3" @@ -23,3 +22,5 @@ BBCLASSEXTEND = "native nativesdk" GIR_MESON_OPTION = 'skip_introspection' GIR_MESON_ENABLE_FLAG = 'false' GIR_MESON_DISABLE_FLAG = 'true' + +FILES_${PN} += "${libdir}/${PYTHON_DIR}/*" diff --git a/poky/meta/recipes-devtools/librepo/librepo_1.11.2.bb b/poky/meta/recipes-devtools/librepo/librepo_1.11.3.bb index 6a0a59f86..3e745314a 100644 --- a/poky/meta/recipes-devtools/librepo/librepo_1.11.2.bb +++ b/poky/meta/recipes-devtools/librepo/librepo_1.11.3.bb @@ -8,7 +8,7 @@ SRC_URI = "git://github.com/rpm-software-management/librepo.git \ file://0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch \ " -SRCREV = "67c2d1f83f1bf87be3f26ba730fce7fbdf0c9fba" +SRCREV = "59b3f76ca6e79786a213cda72ecafa232d30553f" S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-devtools/meson/meson.inc b/poky/meta/recipes-devtools/meson/meson.inc index 0a58c971a..12bc08648 100644 --- a/poky/meta/recipes-devtools/meson/meson.inc +++ b/poky/meta/recipes-devtools/meson/meson.inc @@ -9,16 +9,14 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57" SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${PV}.tar.gz \ file://0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch \ - file://0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch \ file://0003-native_bindir.patch \ file://0001-python-module-do-not-manipulate-the-environment-when.patch \ file://disable-rpath-handling.patch \ file://cross-prop-default.patch \ - file://0001-mesonbuild-environment.py-check-environment-for-vari.patch \ file://0001-modules-python.py-do-not-substitute-python-s-install.patch \ + file://0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch \ " -SRC_URI[sha256sum] = "3e8f830f33184397c2eb0b651ec502adb63decb28978bdc84b3558d71284c21f" -SRC_URI[md5sum] = "80303535995fcae72bdb887df102b421" +SRC_URI[sha256sum] = "a7716eeae8f8dff002e4147642589ab6496ff839e4376a5aed761f83c1fa0455" SRC_URI_append_class-native = " \ file://0001-Make-CPU-family-warnings-fatal.patch \ diff --git a/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch b/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch index e64488be4..01a8bb3d5 100644 --- a/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch +++ b/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch @@ -1,4 +1,4 @@ -From ee638fd4a299bfc53a2238e9f71ae310c8d97460 Mon Sep 17 00:00:00 2001 +From 830db2c7a136b2446d740c9ca025374352ffd16d Mon Sep 17 00:00:00 2001 From: Ross Burton <ross.burton@intel.com> Date: Tue, 3 Jul 2018 13:59:09 +0100 Subject: [PATCH] Make CPU family warnings fatal @@ -12,10 +12,10 @@ Signed-off-by: Ross Burton <ross.burton@intel.com> 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py -index 0f277a7..24578ea 100644 +index 17058df..18bbf86 100644 --- a/mesonbuild/envconfig.py +++ b/mesonbuild/envconfig.py -@@ -192,7 +192,7 @@ class MachineInfo: +@@ -225,7 +225,7 @@ class MachineInfo: cpu_family = literal['cpu_family'] if cpu_family not in known_cpu_families: @@ -25,10 +25,10 @@ index 0f277a7..24578ea 100644 endian = literal['endian'] if endian not in ('little', 'big'): diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py -index dc8b14f..3aab71e 100644 +index a2f78a4..59fcb07 100644 --- a/mesonbuild/environment.py +++ b/mesonbuild/environment.py -@@ -354,9 +354,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str: +@@ -364,9 +364,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str: trial = 'parisc' if trial not in known_cpu_families: diff --git a/poky/meta/recipes-devtools/meson/meson/0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch b/poky/meta/recipes-devtools/meson/meson/0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch new file mode 100644 index 000000000..35c18f078 --- /dev/null +++ b/poky/meta/recipes-devtools/meson/meson/0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch @@ -0,0 +1,41 @@ +From 7be634fa9705d0367f48a91305f9acb642ff0a11 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Wed, 27 May 2020 16:43:05 +0000 +Subject: [PATCH] gnome.py: prefix g-i paths with PKG_CONFIG_SYSROOT_DIR + +When using sysroots for builds, the standard target paths for the +tools need to be prefixed (pkg-config is not clever enough to +determine when a custom variable is a path) + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + mesonbuild/modules/gnome.py | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py +index 89d5d5d..d75f2e5 100644 +--- a/mesonbuild/modules/gnome.py ++++ b/mesonbuild/modules/gnome.py +@@ -739,17 +739,17 @@ class GnomeModule(ExtensionModule): + if giscanner.found(): + giscanner_path = giscanner.get_command()[0] + if not any(x in giscanner_path for x in gi_util_dirs_check): +- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {}) ++ giscanner = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {}) + else: +- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {}) ++ giscanner = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {}) + + gicompiler = self.interpreter.find_program_impl('g-ir-compiler') + if gicompiler.found(): + gicompiler_path = gicompiler.get_command()[0] + if not any(x in gicompiler_path for x in gi_util_dirs_check): +- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {}) ++ gicompiler = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {}) + else: +- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {}) ++ gicompiler = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {}) + + ns = kwargs.pop('namespace') + nsversion = kwargs.pop('nsversion') diff --git a/poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch b/poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch deleted file mode 100644 index f4456235f..000000000 --- a/poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch +++ /dev/null @@ -1,26 +0,0 @@ -From a72dc2b1cddcf180ce782860896deae0b12d5000 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Mon, 25 Mar 2019 18:52:48 +0100 -Subject: [PATCH] mesonbuild/environment.py: check environment for various - binaries - -Upstream-Status: Inappropriate [oe-core specific] -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> - ---- - mesonbuild/environment.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py -index 9a029f4..0cfdf9c 100644 ---- a/mesonbuild/environment.py -+++ b/mesonbuild/environment.py -@@ -448,7 +448,7 @@ class Environment: - config = MesonConfigFile.from_config_parser( - coredata.load_configs(self.coredata.cross_files)) - properties.host = Properties(config.get('properties', {}), False) -- binaries.host = BinaryTable(config.get('binaries', {}), False) -+ binaries.host = BinaryTable(config.get('binaries', {}), True) - if 'host_machine' in config: - machines.host = MachineInfo.from_literal(config['host_machine']) - if 'target_machine' in config: diff --git a/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch b/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch index d2c3f8cdf..246c4d7be 100644 --- a/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch +++ b/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch @@ -1,4 +1,4 @@ -From 9c221c74bd306dfa6fec22c8f156eb9d4e4f7fcb Mon Sep 17 00:00:00 2001 +From 45df8f0a71c6b60cb98a336f8690af04965dfa9b Mon Sep 17 00:00:00 2001 From: Peter Kjellerstedt <pkj@axis.com> Date: Thu, 26 Jul 2018 16:32:49 +0200 Subject: [PATCH] Support building allarch recipes again @@ -13,10 +13,10 @@ Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> 1 file changed, 1 insertion(+) diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py -index 24578ea..216e71f 100644 +index 18bbf86..e76315e 100644 --- a/mesonbuild/envconfig.py +++ b/mesonbuild/envconfig.py -@@ -36,6 +36,7 @@ _T = typing.TypeVar('_T') +@@ -36,6 +36,7 @@ _T = T.TypeVar('_T') known_cpu_families = ( diff --git a/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch b/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch deleted file mode 100644 index 61b26bb88..000000000 --- a/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 9ccaed380780178c4dab3a681f652ac7cd27452d Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Fri, 4 Aug 2017 16:18:47 +0300 -Subject: [PATCH] gobject-introspection: determine g-ir-scanner and - g-ir-compiler paths from pkgconfig - -Do not hardcode the name of those binaries; gobject-introspection -provides them via pkgconfig, and they can be set to something else -(for example when cross-compiling). - -Upstream-Status: Pending -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> - ---- - mesonbuild/modules/gnome.py | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py -index 7c5a363..0002498 100644 ---- a/mesonbuild/modules/gnome.py -+++ b/mesonbuild/modules/gnome.py -@@ -744,15 +744,15 @@ class GnomeModule(ExtensionModule): - if kwargs.get('install_dir'): - raise MesonException('install_dir is not supported with generate_gir(), see "install_dir_gir" and "install_dir_typelib"') - -- giscanner = self.interpreter.find_program_impl('g-ir-scanner') -- gicompiler = self.interpreter.find_program_impl('g-ir-compiler') -- - girtargets = [self._unwrap_gir_target(arg, state) for arg in args] - - if len(girtargets) > 1 and any([isinstance(el, build.Executable) for el in girtargets]): - raise MesonException('generate_gir only accepts a single argument when one of the arguments is an executable') - - self.gir_dep, pkgargs = self._get_gir_dep(state) -+ giscanner = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {}) -+ gicompiler = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {}) -+ - - ns = kwargs.pop('namespace') - nsversion = kwargs.pop('nsversion') diff --git a/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch b/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch index a5baca093..64e9fae9e 100644 --- a/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch +++ b/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch @@ -1,4 +1,4 @@ -From e76726321067748362b39937bd1e663a1a948ad5 Mon Sep 17 00:00:00 2001 +From da2091f6dfe978fc6140fc2d01bcafbbfae8d8db Mon Sep 17 00:00:00 2001 From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> Date: Wed, 15 Nov 2017 15:05:01 +0100 Subject: [PATCH] native_bindir @@ -22,10 +22,10 @@ Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py -index 40e304c..4b687df 100644 +index 50f4179..e1529d8 100644 --- a/mesonbuild/dependencies/base.py +++ b/mesonbuild/dependencies/base.py -@@ -184,7 +184,7 @@ class Dependency: +@@ -157,7 +157,7 @@ class Dependency: def get_exe_args(self, compiler): return [] @@ -34,16 +34,16 @@ index 40e304c..4b687df 100644 raise DependencyException('{!r} is not a pkgconfig dependency'.format(self.name)) def get_configtool_variable(self, variable_name): -@@ -247,7 +247,7 @@ class InternalDependency(Dependency): - self.sources = sources +@@ -225,7 +225,7 @@ class InternalDependency(Dependency): self.ext_deps = ext_deps + self.variables = variables - def get_pkgconfig_variable(self, variable_name, kwargs): + def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False): raise DependencyException('Method "get_pkgconfig_variable()" is ' 'invalid for an internal dependency') -@@ -673,15 +673,18 @@ class PkgConfigDependency(ExternalDependency): +@@ -633,15 +633,18 @@ class PkgConfigDependency(ExternalDependency): return s.format(self.__class__.__name__, self.name, self.is_found, self.version_reqs) @@ -65,7 +65,7 @@ index 40e304c..4b687df 100644 # Always copy the environment since we're going to modify it # with pkg-config variables if env is None: -@@ -701,7 +704,7 @@ class PkgConfigDependency(ExternalDependency): +@@ -667,7 +670,7 @@ class PkgConfigDependency(ExternalDependency): targs = tuple(args) cache = PkgConfigDependency.pkgbin_cache if (self.pkgbin, targs, fenv) not in cache: @@ -74,7 +74,7 @@ index 40e304c..4b687df 100644 return cache[(self.pkgbin, targs, fenv)] def _convert_mingw_paths(self, args: T.List[str]) -> T.List[str]: -@@ -907,7 +910,7 @@ class PkgConfigDependency(ExternalDependency): +@@ -876,7 +879,7 @@ class PkgConfigDependency(ExternalDependency): (self.name, out_raw)) self.link_args, self.raw_link_args = self._search_libs(out, out_raw) @@ -83,7 +83,7 @@ index 40e304c..4b687df 100644 options = ['--variable=' + variable_name, self.name] if 'define_variable' in kwargs: -@@ -920,7 +923,7 @@ class PkgConfigDependency(ExternalDependency): +@@ -889,7 +892,7 @@ class PkgConfigDependency(ExternalDependency): options = ['--define-variable=' + '='.join(definition)] + options @@ -93,10 +93,10 @@ index 40e304c..4b687df 100644 if ret != 0: if self.required: diff --git a/mesonbuild/dependencies/ui.py b/mesonbuild/dependencies/ui.py -index da411ef..856506a 100644 +index 741f0b8..134dd54 100644 --- a/mesonbuild/dependencies/ui.py +++ b/mesonbuild/dependencies/ui.py -@@ -330,7 +330,7 @@ class QtBaseDependency(ExternalDependency): +@@ -320,7 +320,7 @@ class QtBaseDependency(ExternalDependency): self.bindir = self.get_pkgconfig_host_bins(core) if not self.bindir: # If exec_prefix is not defined, the pkg-config file is broken @@ -105,7 +105,7 @@ index da411ef..856506a 100644 if prefix: self.bindir = os.path.join(prefix, 'bin') -@@ -508,7 +508,7 @@ class Qt4Dependency(QtBaseDependency): +@@ -524,7 +524,7 @@ class Qt4Dependency(QtBaseDependency): applications = ['moc', 'uic', 'rcc', 'lupdate', 'lrelease'] for application in applications: try: @@ -114,7 +114,7 @@ index da411ef..856506a 100644 except MesonException: pass -@@ -518,7 +518,7 @@ class Qt5Dependency(QtBaseDependency): +@@ -534,7 +534,7 @@ class Qt5Dependency(QtBaseDependency): QtBaseDependency.__init__(self, 'qt5', env, kwargs) def get_pkgconfig_host_bins(self, core): diff --git a/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch b/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch index 4b1fb57dd..38e50d72f 100644 --- a/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch +++ b/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch @@ -1,4 +1,9 @@ -We need to allow our rpaths generated through the compiler flags to make it into +From 3af10fa8cd4e97181288d72227dea712290fd5e6 Mon Sep 17 00:00:00 2001 +From: Richard Purdie <richard.purdie@linuxfoundation.org> +Date: Fri, 23 Nov 2018 15:28:28 +0000 +Subject: [PATCH] meson: Disable rpath stripping at install time + +We need to allow our rpaths generated through the compiler flags to make it into our binaries. Therefore disable the meson manipulations of these unless there is a specific directive to do something differently in the project. @@ -6,13 +11,17 @@ RP 2018/11/23 Upstream-Status: Submitted [https://github.com/mesonbuild/meson/issues/2567] -Index: meson-0.47.2/mesonbuild/minstall.py -=================================================================== ---- meson-0.47.2.orig/mesonbuild/minstall.py -+++ meson-0.47.2/mesonbuild/minstall.py -@@ -486,8 +486,11 @@ class Installer: - printed_symlink_error = True - if os.path.isfile(outname): +--- + mesonbuild/minstall.py | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py +index ace0569..85bd8df 100644 +--- a/mesonbuild/minstall.py ++++ b/mesonbuild/minstall.py +@@ -508,8 +508,11 @@ class Installer: + if file_copied: + self.did_install_something = True try: - depfixer.fix_rpath(outname, install_rpath, final_path, - install_name_mappings, verbose=False) diff --git a/poky/meta/recipes-devtools/meson/meson_0.53.2.bb b/poky/meta/recipes-devtools/meson/meson_0.54.2.bb index de9b905c1..de9b905c1 100644 --- a/poky/meta/recipes-devtools/meson/meson_0.53.2.bb +++ b/poky/meta/recipes-devtools/meson/meson_0.54.2.bb diff --git a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.53.2.bb b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.54.2.bb index 67add2c25..67add2c25 100644 --- a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.53.2.bb +++ b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.54.2.bb diff --git a/poky/meta/recipes-devtools/patchelf/patchelf/fix-phdrs.patch b/poky/meta/recipes-devtools/patchelf/patchelf/fix-phdrs.patch new file mode 100644 index 000000000..d087bd785 --- /dev/null +++ b/poky/meta/recipes-devtools/patchelf/patchelf/fix-phdrs.patch @@ -0,0 +1,37 @@ +When running patchelf on some existing patchelf'd binaries to change to longer +RPATHS, ldd would report the binaries as invalid. The output of objdump -x on +those libraryies should show the top of the .dynamic section is getting trashed, +something like: + +0x600000001 0x0000000000429000 +0x335000 0x0000000000335000 +0xc740 0x000000000000c740 +0x1000 0x0000000000009098 +SONAME libglib-2.0.so.0 + +(which should be RPATH and DT_NEEDED entries) + +This was tracked down to the code which injects the PT_LOAD section. + +The issue is that if the program headers were previously relocated to the end +of the file which was how patchelf operated previously, the relocation code +wouldn't work properly on a second run as it now assumes they're located after +the elf header. This change forces them back to immediately follow the elf +header which is where the code has made space for them. + +Upstream-Status: Submitted [https://github.com/NixOS/patchelf/pull/202] +Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> +RP 2020/6/2 + +Index: git/src/patchelf.cc +=================================================================== +--- git.orig/src/patchelf.cc ++++ git/src/patchelf.cc +@@ -762,6 +762,7 @@ void ElfFile<ElfFileParamNames>::rewrite + } + + /* Add a segment that maps the replaced sections into memory. */ ++ wri(hdr->e_phoff, sizeof(Elf_Ehdr)); + phdrs.resize(rdi(hdr->e_phnum) + 1); + wri(hdr->e_phnum, rdi(hdr->e_phnum) + 1); + Elf_Phdr & phdr = phdrs[rdi(hdr->e_phnum) - 1]; diff --git a/poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb b/poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb index d29e094ed..84e640773 100644 --- a/poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb +++ b/poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb @@ -1,6 +1,7 @@ SRC_URI = "git://github.com/NixOS/patchelf;protocol=https \ file://handle-read-only-files.patch \ file://fix-adjusting-startPage.patch \ + file://fix-phdrs.patch \ " LICENSE = "GPLv3" diff --git a/poky/meta/recipes-devtools/python-numpy/python-numpy.inc b/poky/meta/recipes-devtools/python-numpy/python-numpy.inc index 0bff979a6..6a437e7c3 100644 --- a/poky/meta/recipes-devtools/python-numpy/python-numpy.inc +++ b/poky/meta/recipes-devtools/python-numpy/python-numpy.inc @@ -9,8 +9,8 @@ SRC_URI = "https://github.com/${SRCNAME}/${SRCNAME}/releases/download/v${PV}/${S file://0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch \ file://0001-convert-shebang-from-python-to-python3.patch \ " -SRC_URI[md5sum] = "cd631c761f141d382b4e1b31c8232fc0" -SRC_URI[sha256sum] = "93ee59ec38f3bf8f9a42d5f4301f60e6825a4a6385a145f70badcd2bf2a11134" +SRC_URI[md5sum] = "70e6c294f8dffa8d630eda1b0d42ae4d" +SRC_URI[sha256sum] = "e0781ec6627e85f2a618478ee278893343fb8b40577b4c74b2ec15c7a5b8f698" UPSTREAM_CHECK_URI = "https://github.com/numpy/numpy/releases" UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar" diff --git a/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.18.3.bb b/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.18.4.bb index d388e88d2..d388e88d2 100644 --- a/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.18.3.bb +++ b/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.18.4.bb diff --git a/poky/meta/recipes-devtools/python/files/0001-bpo-39503-CVE-2020-8492-Fix-AbstractBasicAuthHandler.patch b/poky/meta/recipes-devtools/python/files/0001-bpo-39503-CVE-2020-8492-Fix-AbstractBasicAuthHandler.patch deleted file mode 100644 index e16b99bcb..000000000 --- a/poky/meta/recipes-devtools/python/files/0001-bpo-39503-CVE-2020-8492-Fix-AbstractBasicAuthHandler.patch +++ /dev/null @@ -1,248 +0,0 @@ -From 0b297d4ff1c0e4480ad33acae793fbaf4bf015b4 Mon Sep 17 00:00:00 2001 -From: Victor Stinner <vstinner@python.org> -Date: Thu, 2 Apr 2020 02:52:20 +0200 -Subject: [PATCH] bpo-39503: CVE-2020-8492: Fix AbstractBasicAuthHandler - (GH-18284) - -Upstream-Status: Backport -(https://github.com/python/cpython/commit/0b297d4ff1c0e4480ad33acae793fbaf4bf015b4) - -CVE: CVE-2020-8492 - -The AbstractBasicAuthHandler class of the urllib.request module uses -an inefficient regular expression which can be exploited by an -attacker to cause a denial of service. Fix the regex to prevent the -catastrophic backtracking. Vulnerability reported by Ben Caller -and Matt Schwager. - -AbstractBasicAuthHandler of urllib.request now parses all -WWW-Authenticate HTTP headers and accepts multiple challenges per -header: use the realm of the first Basic challenge. - -Co-Authored-By: Serhiy Storchaka <storchaka@gmail.com> -Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com> ---- - Lib/test/test_urllib2.py | 90 ++++++++++++------- - Lib/urllib/request.py | 69 ++++++++++---- - .../2020-03-25-16-02-16.bpo-39503.YmMbYn.rst | 3 + - .../2020-01-30-16-15-29.bpo-39503.B299Yq.rst | 5 ++ - 4 files changed, 115 insertions(+), 52 deletions(-) - create mode 100644 Misc/NEWS.d/next/Library/2020-03-25-16-02-16.bpo-39503.YmMbYn.rst - create mode 100644 Misc/NEWS.d/next/Security/2020-01-30-16-15-29.bpo-39503.B299Yq.rst - -diff --git a/Lib/test/test_urllib2.py b/Lib/test/test_urllib2.py -index 8abedaac98..e69ac3e213 100644 ---- a/Lib/test/test_urllib2.py -+++ b/Lib/test/test_urllib2.py -@@ -1446,40 +1446,64 @@ class HandlerTests(unittest.TestCase): - bypass = {'exclude_simple': True, 'exceptions': []} - self.assertTrue(_proxy_bypass_macosx_sysconf('test', bypass)) - -- def test_basic_auth(self, quote_char='"'): -- opener = OpenerDirector() -- password_manager = MockPasswordManager() -- auth_handler = urllib.request.HTTPBasicAuthHandler(password_manager) -- realm = "ACME Widget Store" -- http_handler = MockHTTPHandler( -- 401, 'WWW-Authenticate: Basic realm=%s%s%s\r\n\r\n' % -- (quote_char, realm, quote_char)) -- opener.add_handler(auth_handler) -- opener.add_handler(http_handler) -- self._test_basic_auth(opener, auth_handler, "Authorization", -- realm, http_handler, password_manager, -- "http://acme.example.com/protected", -- "http://acme.example.com/protected", -- ) -- -- def test_basic_auth_with_single_quoted_realm(self): -- self.test_basic_auth(quote_char="'") -- -- def test_basic_auth_with_unquoted_realm(self): -- opener = OpenerDirector() -- password_manager = MockPasswordManager() -- auth_handler = urllib.request.HTTPBasicAuthHandler(password_manager) -- realm = "ACME Widget Store" -- http_handler = MockHTTPHandler( -- 401, 'WWW-Authenticate: Basic realm=%s\r\n\r\n' % realm) -- opener.add_handler(auth_handler) -- opener.add_handler(http_handler) -- with self.assertWarns(UserWarning): -+ def check_basic_auth(self, headers, realm): -+ with self.subTest(realm=realm, headers=headers): -+ opener = OpenerDirector() -+ password_manager = MockPasswordManager() -+ auth_handler = urllib.request.HTTPBasicAuthHandler(password_manager) -+ body = '\r\n'.join(headers) + '\r\n\r\n' -+ http_handler = MockHTTPHandler(401, body) -+ opener.add_handler(auth_handler) -+ opener.add_handler(http_handler) - self._test_basic_auth(opener, auth_handler, "Authorization", -- realm, http_handler, password_manager, -- "http://acme.example.com/protected", -- "http://acme.example.com/protected", -- ) -+ realm, http_handler, password_manager, -+ "http://acme.example.com/protected", -+ "http://acme.example.com/protected") -+ -+ def test_basic_auth(self): -+ realm = "realm2@example.com" -+ realm2 = "realm2@example.com" -+ basic = f'Basic realm="{realm}"' -+ basic2 = f'Basic realm="{realm2}"' -+ other_no_realm = 'Otherscheme xxx' -+ digest = (f'Digest realm="{realm2}", ' -+ f'qop="auth, auth-int", ' -+ f'nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", ' -+ f'opaque="5ccc069c403ebaf9f0171e9517f40e41"') -+ for realm_str in ( -+ # test "quote" and 'quote' -+ f'Basic realm="{realm}"', -+ f"Basic realm='{realm}'", -+ -+ # charset is ignored -+ f'Basic realm="{realm}", charset="UTF-8"', -+ -+ # Multiple challenges per header -+ f'{basic}, {basic2}', -+ f'{basic}, {other_no_realm}', -+ f'{other_no_realm}, {basic}', -+ f'{basic}, {digest}', -+ f'{digest}, {basic}', -+ ): -+ headers = [f'WWW-Authenticate: {realm_str}'] -+ self.check_basic_auth(headers, realm) -+ -+ # no quote: expect a warning -+ with support.check_warnings(("Basic Auth Realm was unquoted", -+ UserWarning)): -+ headers = [f'WWW-Authenticate: Basic realm={realm}'] -+ self.check_basic_auth(headers, realm) -+ -+ # Multiple headers: one challenge per header. -+ # Use the first Basic realm. -+ for challenges in ( -+ [basic, basic2], -+ [basic, digest], -+ [digest, basic], -+ ): -+ headers = [f'WWW-Authenticate: {challenge}' -+ for challenge in challenges] -+ self.check_basic_auth(headers, realm) - - def test_proxy_basic_auth(self): - opener = OpenerDirector() -diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py -index 7fe50535da..2a3d71554f 100644 ---- a/Lib/urllib/request.py -+++ b/Lib/urllib/request.py -@@ -937,8 +937,15 @@ class AbstractBasicAuthHandler: - - # allow for double- and single-quoted realm values - # (single quotes are a violation of the RFC, but appear in the wild) -- rx = re.compile('(?:.*,)*[ \t]*([^ \t]+)[ \t]+' -- 'realm=(["\']?)([^"\']*)\\2', re.I) -+ rx = re.compile('(?:^|,)' # start of the string or ',' -+ '[ \t]*' # optional whitespaces -+ '([^ \t]+)' # scheme like "Basic" -+ '[ \t]+' # mandatory whitespaces -+ # realm=xxx -+ # realm='xxx' -+ # realm="xxx" -+ 'realm=(["\']?)([^"\']*)\\2', -+ re.I) - - # XXX could pre-emptively send auth info already accepted (RFC 2617, - # end of section 2, and section 1.2 immediately after "credentials" -@@ -950,27 +957,51 @@ class AbstractBasicAuthHandler: - self.passwd = password_mgr - self.add_password = self.passwd.add_password - -+ def _parse_realm(self, header): -+ # parse WWW-Authenticate header: accept multiple challenges per header -+ found_challenge = False -+ for mo in AbstractBasicAuthHandler.rx.finditer(header): -+ scheme, quote, realm = mo.groups() -+ if quote not in ['"', "'"]: -+ warnings.warn("Basic Auth Realm was unquoted", -+ UserWarning, 3) -+ -+ yield (scheme, realm) -+ -+ found_challenge = True -+ -+ if not found_challenge: -+ if header: -+ scheme = header.split()[0] -+ else: -+ scheme = '' -+ yield (scheme, None) -+ - def http_error_auth_reqed(self, authreq, host, req, headers): - # host may be an authority (without userinfo) or a URL with an - # authority -- # XXX could be multiple headers -- authreq = headers.get(authreq, None) -+ headers = headers.get_all(authreq) -+ if not headers: -+ # no header found -+ return - -- if authreq: -- scheme = authreq.split()[0] -- if scheme.lower() != 'basic': -- raise ValueError("AbstractBasicAuthHandler does not" -- " support the following scheme: '%s'" % -- scheme) -- else: -- mo = AbstractBasicAuthHandler.rx.search(authreq) -- if mo: -- scheme, quote, realm = mo.groups() -- if quote not in ['"',"'"]: -- warnings.warn("Basic Auth Realm was unquoted", -- UserWarning, 2) -- if scheme.lower() == 'basic': -- return self.retry_http_basic_auth(host, req, realm) -+ unsupported = None -+ for header in headers: -+ for scheme, realm in self._parse_realm(header): -+ if scheme.lower() != 'basic': -+ unsupported = scheme -+ continue -+ -+ if realm is not None: -+ # Use the first matching Basic challenge. -+ # Ignore following challenges even if they use the Basic -+ # scheme. -+ return self.retry_http_basic_auth(host, req, realm) -+ -+ if unsupported is not None: -+ raise ValueError("AbstractBasicAuthHandler does not " -+ "support the following scheme: %r" -+ % (scheme,)) - - def retry_http_basic_auth(self, host, req, realm): - user, pw = self.passwd.find_user_password(realm, host) -diff --git a/Misc/NEWS.d/next/Library/2020-03-25-16-02-16.bpo-39503.YmMbYn.rst b/Misc/NEWS.d/next/Library/2020-03-25-16-02-16.bpo-39503.YmMbYn.rst -new file mode 100644 -index 0000000000..be80ce79d9 ---- /dev/null -+++ b/Misc/NEWS.d/next/Library/2020-03-25-16-02-16.bpo-39503.YmMbYn.rst -@@ -0,0 +1,3 @@ -+:class:`~urllib.request.AbstractBasicAuthHandler` of :mod:`urllib.request` -+now parses all WWW-Authenticate HTTP headers and accepts multiple challenges -+per header: use the realm of the first Basic challenge. -diff --git a/Misc/NEWS.d/next/Security/2020-01-30-16-15-29.bpo-39503.B299Yq.rst b/Misc/NEWS.d/next/Security/2020-01-30-16-15-29.bpo-39503.B299Yq.rst -new file mode 100644 -index 0000000000..9f2800581c ---- /dev/null -+++ b/Misc/NEWS.d/next/Security/2020-01-30-16-15-29.bpo-39503.B299Yq.rst -@@ -0,0 +1,5 @@ -+CVE-2020-8492: The :class:`~urllib.request.AbstractBasicAuthHandler` class of the -+:mod:`urllib.request` module uses an inefficient regular expression which can -+be exploited by an attacker to cause a denial of service. Fix the regex to -+prevent the catastrophic backtracking. Vulnerability reported by Ben Caller -+and Matt Schwager. --- -2.24.1 - diff --git a/poky/meta/recipes-devtools/python/python-cython.inc b/poky/meta/recipes-devtools/python/python-cython.inc index 437e79662..eee567ed2 100644 --- a/poky/meta/recipes-devtools/python/python-cython.inc +++ b/poky/meta/recipes-devtools/python/python-cython.inc @@ -7,8 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e23fadd6ceef8c618fc1c65191d846fa" PYPI_PACKAGE = "Cython" BBCLASSEXTEND = "native nativesdk" -SRC_URI[md5sum] = "a899abaa48b68bb679aef45ceb4b89d3" -SRC_URI[sha256sum] = "232755284f942cbb3b43a06cd85974ef3c970a021aef19b5243c03ee2b08fa05" +SRC_URI[sha256sum] = "97f98a7dc0d58ea833dc1f8f8b3ce07adf4c0f030d1886c5399a2135ed415258" UPSTREAM_CHECK_REGEX = "Cython-(?P<pver>.*)\.tar" inherit pypi diff --git a/poky/meta/recipes-devtools/python/python-gitdb.inc b/poky/meta/recipes-devtools/python/python-gitdb.inc index a91bb32c3..618d85ff8 100644 --- a/poky/meta/recipes-devtools/python/python-gitdb.inc +++ b/poky/meta/recipes-devtools/python/python-gitdb.inc @@ -8,7 +8,7 @@ inherit pypi PYPI_PACKAGE = "gitdb" -SRC_URI[sha256sum] = "6f0ecd46f99bb4874e5678d628c3a198e2b4ef38daea2756a2bfd8df7dd5c1a5" +SRC_URI[sha256sum] = "c9e1f2d0db7ddb9a704c2a0217be31214e91a4fe1dea1efad19ae42ba0c285c9" DEPENDS = "${PYTHON_PN}-async ${PYTHON_PN}-setuptools-native ${PYTHON_PN}-smmap" diff --git a/poky/meta/recipes-devtools/python/python-setuptools.inc b/poky/meta/recipes-devtools/python/python-setuptools.inc index e9ad93dbe..c91cca9f0 100644 --- a/poky/meta/recipes-devtools/python/python-setuptools.inc +++ b/poky/meta/recipes-devtools/python/python-setuptools.inc @@ -12,8 +12,8 @@ SRC_URI_append_class-native = " file://0001-conditionally-do-not-fetch-code-by-e SRC_URI += "file://0001-change-shebang-to-python3.patch" -SRC_URI[md5sum] = "0c956eea142af9c2b02d72e3c042af30" -SRC_URI[sha256sum] = "89c6e6011ec2f6d57d43a3f9296c4ef022c2cbf49bab26b407fe67992ae3397f" +SRC_URI[md5sum] = "6e9de90b242fdd60ef59f497424ce13a" +SRC_URI[sha256sum] = "145fa62b9d7bb544fce16e9b5a9bf4ab2032d2f758b7cd674af09a92736aff74" DEPENDS += "${PYTHON_PN}" diff --git a/poky/meta/recipes-devtools/python/python-smmap.inc b/poky/meta/recipes-devtools/python/python-smmap.inc index b878b4b39..7703722bc 100644 --- a/poky/meta/recipes-devtools/python/python-smmap.inc +++ b/poky/meta/recipes-devtools/python/python-smmap.inc @@ -9,10 +9,9 @@ LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=e910b35b0ef4e1f665 inherit pypi -PYPI_PACKAGE = "smmap2" +PYPI_PACKAGE = "smmap" -SRC_URI[md5sum] = "1c59a985be5aa645c4c5a4e063a40dd5" -SRC_URI[sha256sum] = "29a9ffa0497e7f2be94ca0ed1ca1aa3cd4cf25a1f6b4f5f87f74b46ed91d609a" +SRC_URI[sha256sum] = "9c98bbd1f9786d22f14b3d4126894d56befb835ec90cef151af566c7e19b5d24" RDEPENDS_${PN} += "${PYTHON_PN}-codecs \ ${PYTHON_PN}-mmap \ diff --git a/poky/meta/recipes-devtools/python/python-subunit.inc b/poky/meta/recipes-devtools/python/python-subunit.inc index afaaa51fa..fc63b38aa 100644 --- a/poky/meta/recipes-devtools/python/python-subunit.inc +++ b/poky/meta/recipes-devtools/python/python-subunit.inc @@ -6,8 +6,8 @@ LIC_FILES_CHKSUM = "file://README.rst;beginline=1;endline=20;md5=909c08e291647fd PYPI_PACKAGE = "python-subunit" -SRC_URI[md5sum] = "16d468a3aeafe6c60a0c3b2b9132d65b" -SRC_URI[sha256sum] = "9607edbee4c1e5a30ff88549ce8d9feb0b9bcbcb5e55033a9d76e86075465cbb" +SRC_URI[md5sum] = "30f1ab20651d94442dd9a7f8c9e8d633" +SRC_URI[sha256sum] = "042039928120fbf392e8c983d60f3d8ae1b88f90a9f8fd7188ddd9c26cad1e48" inherit pypi diff --git a/poky/meta/recipes-devtools/python/python-testtools.inc b/poky/meta/recipes-devtools/python/python-testtools.inc index d0b2e46d7..f1f1e2646 100644 --- a/poky/meta/recipes-devtools/python/python-testtools.inc +++ b/poky/meta/recipes-devtools/python/python-testtools.inc @@ -6,8 +6,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=e2c9d3e8ba7141c83bfef190e0b9379a" inherit pypi -SRC_URI[md5sum] = "0f0feb915497816cb99e39437494217e" -SRC_URI[sha256sum] = "5827ec6cf8233e0f29f51025addd713ca010061204fdea77484a2934690a0559" +SRC_URI[md5sum] = "e8fc7185b47cfb908c641f8c4b2a6add" +SRC_URI[sha256sum] = "64c974a6cca4385d05f4bbfa2deca1c39ce88ede31c3448bee86a7259a9a61c8" DEPENDS += " \ ${PYTHON_PN}-pbr \ diff --git a/poky/meta/recipes-devtools/python/python3-cython_0.29.16.bb b/poky/meta/recipes-devtools/python/python3-cython_0.29.19.bb index 2ce6bdbd6..2ce6bdbd6 100644 --- a/poky/meta/recipes-devtools/python/python3-cython_0.29.16.bb +++ b/poky/meta/recipes-devtools/python/python3-cython_0.29.19.bb diff --git a/poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb b/poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb deleted file mode 100644 index 2dcd9c8af..000000000 --- a/poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb +++ /dev/null @@ -1,3 +0,0 @@ -inherit setuptools3 -require python-gitdb.inc - diff --git a/poky/meta/recipes-devtools/python/python3-gitdb_4.0.5.bb b/poky/meta/recipes-devtools/python/python3-gitdb_4.0.5.bb new file mode 100644 index 000000000..fe56bf964 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-gitdb_4.0.5.bb @@ -0,0 +1,4 @@ +inherit setuptools3 +require python-gitdb.inc + +SRC_URI[md5sum] = "0e2d3f34efece5deda7c55fede6507cc" diff --git a/poky/meta/recipes-devtools/python/python3-mako_1.1.1.bb b/poky/meta/recipes-devtools/python/python3-mako_1.1.3.bb index bc38009de..cda4e9922 100644 --- a/poky/meta/recipes-devtools/python/python3-mako_1.1.1.bb +++ b/poky/meta/recipes-devtools/python/python3-mako_1.1.3.bb @@ -8,8 +8,7 @@ PYPI_PACKAGE = "Mako" inherit pypi setuptools3 -SRC_URI[md5sum] = "2660a4916f2f63456e6885c727b7cd2f" -SRC_URI[sha256sum] = "2984a6733e1d472796ceef37ad48c26f4a984bb18119bb2dbc37a44d8f6e75a4" +SRC_URI[sha256sum] = "8195c8c1400ceb53496064314c6736719c6f25e7479cd24c77be3d9361cddc27" RDEPENDS_${PN} = "${PYTHON_PN}-html \ ${PYTHON_PN}-netclient \ diff --git a/poky/meta/recipes-devtools/python/python3-pycairo_1.19.0.bb b/poky/meta/recipes-devtools/python/python3-pycairo_1.19.1.bb index 8f60834c1..34c8543bc 100644 --- a/poky/meta/recipes-devtools/python/python3-pycairo_1.19.0.bb +++ b/poky/meta/recipes-devtools/python/python3-pycairo_1.19.1.bb @@ -13,8 +13,8 @@ DEPENDS = "cairo python3" SRC_URI = "https://github.com/pygobject/pycairo/releases/download/v${PV}/pycairo-${PV}.tar.gz" UPSTREAM_CHECK_URI = "https://github.com/pygobject/pycairo/releases/" -SRC_URI[md5sum] = "38b84416021640b01250c8f8ec4c52d4" -SRC_URI[sha256sum] = "4f5ba9374a46c98729dd3727d993f5e17ed0286fd6738ed464fe4efa0612d19c" +SRC_URI[md5sum] = "59bc5c5d1debc3af0f6791af9d612551" +SRC_URI[sha256sum] = "2c143183280feb67f5beb4e543fd49990c28e7df427301ede04fc550d3562e84" S = "${WORKDIR}/pycairo-${PV}" diff --git a/poky/meta/recipes-devtools/python/python3-pygments_2.5.2.bb b/poky/meta/recipes-devtools/python/python3-pygments_2.6.1.bb index 474b95494..bffef59e6 100644 --- a/poky/meta/recipes-devtools/python/python3-pygments_2.5.2.bb +++ b/poky/meta/recipes-devtools/python/python3-pygments_2.6.1.bb @@ -5,8 +5,8 @@ LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://LICENSE;md5=e1d7b7bffbfeaa14083fd2bd3236aea8" inherit setuptools3 -SRC_URI[md5sum] = "465a35559863089d959d783a69f79b9f" -SRC_URI[sha256sum] = "98c8aa5a9f778fcd1026a17361ddaf7330d1b7c62ae97c3bb0ae73e0b9b6b0fe" +SRC_URI[md5sum] = "a48c5219de92f12c41acba814730b31a" +SRC_URI[sha256sum] = "647344a061c249a3b74e230c739f434d7ea4d8b1d5f3721bc0f3558049b38f44" DEPENDS += "\ ${PYTHON_PN} \ diff --git a/poky/meta/recipes-devtools/python/python3-pygobject_3.34.0.bb b/poky/meta/recipes-devtools/python/python3-pygobject_3.36.1.bb index 6babf0cae..0a34d4373 100644 --- a/poky/meta/recipes-devtools/python/python3-pygobject_3.34.0.bb +++ b/poky/meta/recipes-devtools/python/python3-pygobject_3.36.1.bb @@ -14,8 +14,8 @@ SRC_URI = " \ http://ftp.gnome.org/pub/GNOME/sources/${SRCNAME}/${@gnome_verdir("${PV}")}/${SRCNAME}-${PV}.tar.xz \ file://0001-Do-not-build-tests.patch \ " -SRC_URI[md5sum] = "ca1dc4f31c1d6d283758e8f315a88ab6" -SRC_URI[sha256sum] = "87e2c9aa785f352ef111dcc5f63df9b85cf6e05e52ff04f803ffbebdacf5271a" +SRC_URI[md5sum] = "ebfebc4533856572281add29f08412bf" +SRC_URI[sha256sum] = "d1bf42802d1cec113b5adaa0e7bf7f3745b44521dc2163588d276d5cd61d718f" UNKNOWN_CONFIGURE_WHITELIST = "introspection" diff --git a/poky/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch b/poky/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch index 33af8daed..6dcf52771 100644 --- a/poky/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch +++ b/poky/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch @@ -8,8 +8,7 @@ Upstream-Status: Pending Signed-off-by: Changqing Li <changqing.li@windriver.com> --- pkg_resources/_vendor/appdirs.py | 2 +- - setuptools/command/easy_install.py | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) + 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/pkg_resources/_vendor/appdirs.py b/pkg_resources/_vendor/appdirs.py index ae67001..933e398 100644 @@ -21,16 +20,6 @@ index ae67001..933e398 100644 # -*- coding: utf-8 -*- # Copyright (c) 2005-2010 ActiveState Software Inc. # Copyright (c) 2013 Eddy Petrișor -diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py -index abca1ae..6bcdc98 100644 ---- a/setuptools/command/easy_install.py -+++ b/setuptools/command/easy_install.py -@@ -1,4 +1,4 @@ --#!/usr/bin/env python -+#!/usr/bin/env python3 - """ - Easy Install - ------------ -- 2.24.1 diff --git a/poky/meta/recipes-devtools/python/python3-setuptools_45.2.0.bb b/poky/meta/recipes-devtools/python/python3-setuptools_47.1.1.bb index 0dc1ed862..0dc1ed862 100644 --- a/poky/meta/recipes-devtools/python/python3-setuptools_45.2.0.bb +++ b/poky/meta/recipes-devtools/python/python3-setuptools_47.1.1.bb diff --git a/poky/meta/recipes-devtools/python/python3-six_1.14.0.bb b/poky/meta/recipes-devtools/python/python3-six_1.14.0.bb deleted file mode 100644 index 151c366ca..000000000 --- a/poky/meta/recipes-devtools/python/python3-six_1.14.0.bb +++ /dev/null @@ -1,5 +0,0 @@ -inherit setuptools3 -require python-six.inc - -SRC_URI[md5sum] = "21674588a57e649d1a6d977ec3122140" -SRC_URI[sha256sum] = "236bdbdce46e6e6a3d61a337c0f8b763ca1e8717c03b369e87a7ec7ce1319c0a" diff --git a/poky/meta/recipes-devtools/python/python3-six_1.15.0.bb b/poky/meta/recipes-devtools/python/python3-six_1.15.0.bb new file mode 100644 index 000000000..6c6f3f962 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-six_1.15.0.bb @@ -0,0 +1,5 @@ +inherit setuptools3 +require python-six.inc + +SRC_URI[md5sum] = "9f90a0eaa0ea7747fda01ca79d21ebcb" +SRC_URI[sha256sum] = "30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259" diff --git a/poky/meta/recipes-devtools/python/python3-smmap_2.0.5.bb b/poky/meta/recipes-devtools/python/python3-smmap_3.0.4.bb index e87b8df8c..5f0f341d6 100644 --- a/poky/meta/recipes-devtools/python/python3-smmap_2.0.5.bb +++ b/poky/meta/recipes-devtools/python/python3-smmap_3.0.4.bb @@ -1,2 +1,3 @@ inherit setuptools3 require python-smmap.inc + diff --git a/poky/meta/recipes-devtools/python/python3-subunit_1.3.0.bb b/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb index 55066e2d0..55066e2d0 100644 --- a/poky/meta/recipes-devtools/python/python3-subunit_1.3.0.bb +++ b/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb diff --git a/poky/meta/recipes-devtools/python/python3-testtools_2.3.0.bb b/poky/meta/recipes-devtools/python/python3-testtools_2.4.0.bb index a254b90a7..a254b90a7 100644 --- a/poky/meta/recipes-devtools/python/python3-testtools_2.3.0.bb +++ b/poky/meta/recipes-devtools/python/python3-testtools_2.4.0.bb diff --git a/poky/meta/recipes-devtools/python/python3/0001-Don-t-search-system-for-headers-libraries.patch b/poky/meta/recipes-devtools/python/python3/0001-Don-t-search-system-for-headers-libraries.patch index acf8e1e9b..3e471b9a4 100644 --- a/poky/meta/recipes-devtools/python/python3/0001-Don-t-search-system-for-headers-libraries.patch +++ b/poky/meta/recipes-devtools/python/python3/0001-Don-t-search-system-for-headers-libraries.patch @@ -1,16 +1,17 @@ -From 85e8f86ad2b7dec0848cd55b8e810a5e2722b20a Mon Sep 17 00:00:00 2001 +From b880e78bf4a1852e260188e6df3ec6034403d2fc Mon Sep 17 00:00:00 2001 From: Jeremy Puhlman <jpuhlman@mvista.com> Date: Wed, 4 Mar 2020 00:06:42 +0000 Subject: [PATCH] Don't search system for headers/libraries Upstream-Status: Inappropriate [oe-core specific] Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com> + --- setup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py -index 9da1b3a..59782c0 100644 +index 7208cd0..c0bd0ad 100644 --- a/setup.py +++ b/setup.py @@ -674,8 +674,8 @@ class PyBuildExt(build_ext): @@ -24,6 +25,3 @@ index 9da1b3a..59782c0 100644 # lib_dirs and inc_dirs are used to search for files; # if a file is found in one of those directories, it can # be assumed that no additional -I,-L directives are needed. --- -2.24.1 - diff --git a/poky/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch b/poky/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch index e7af3c6f5..2b68c0acc 100644 --- a/poky/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch +++ b/poky/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch @@ -1,4 +1,4 @@ -From 7ada9c749f6beb51c13a3debc850755e911548a6 Mon Sep 17 00:00:00 2001 +From bc59d49efff41051034d7fbf5d0c8505e4c3134b Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Thu, 31 Jan 2019 16:46:30 +0100 Subject: [PATCH] distutils/sysconfig: append diff --git a/poky/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch b/poky/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch index 61ac3e71d..820fb98ed 100644 --- a/poky/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch +++ b/poky/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch @@ -1,4 +1,4 @@ -From 251347fc970a397a9cd63ed3f87c5e6c52e15187 Mon Sep 17 00:00:00 2001 +From 064187668fcbefdd39a8cde372bf651124c3e578 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Tue, 14 May 2013 15:00:26 -0700 Subject: [PATCH] python3: Add target and native recipes diff --git a/poky/meta/recipes-devtools/python/python3_3.8.2.bb b/poky/meta/recipes-devtools/python/python3_3.8.3.bb index 0474f0721..4367923b5 100644 --- a/poky/meta/recipes-devtools/python/python3_3.8.2.bb +++ b/poky/meta/recipes-devtools/python/python3_3.8.3.bb @@ -32,7 +32,6 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \ file://0001-configure.ac-fix-LIBPL.patch \ file://0001-python3-Do-not-hardcode-lib-for-distutils.patch \ file://0020-configure.ac-setup.py-do-not-add-a-curses-include-pa.patch \ - file://0001-bpo-39503-CVE-2020-8492-Fix-AbstractBasicAuthHandler.patch \ " SRC_URI_append_class-native = " \ @@ -41,8 +40,8 @@ SRC_URI_append_class-native = " \ file://0001-Don-t-search-system-for-headers-libraries.patch \ " -SRC_URI[md5sum] = "e9d6ebc92183a177b8e8a58cad5b8d67" -SRC_URI[sha256sum] = "2646e7dc233362f59714c6193017bb2d6f7b38d6ab4a0cb5fbac5c36c4d845df" +SRC_URI[md5sum] = "3000cf50aaa413052aef82fd2122ca78" +SRC_URI[sha256sum] = "dfab5ec723c218082fe3d5d7ae17ecbdebffa9a1aea4d64aa3a2ecdd2e795864" # exclude pre-releases for both python 2.x and 3.x UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar" diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Bump-up-the-limit-of-signature-header-to-64MB.patch b/poky/meta/recipes-devtools/rpm/files/0001-Bump-up-the-limit-of-signature-header-to-64MB.patch new file mode 100644 index 000000000..0a19c12a7 --- /dev/null +++ b/poky/meta/recipes-devtools/rpm/files/0001-Bump-up-the-limit-of-signature-header-to-64MB.patch @@ -0,0 +1,62 @@ +From e8bf0eba7143abb6e69db82ee747a0c6790dd00a Mon Sep 17 00:00:00 2001 +From: Hongxu Jia <hongxu.jia@windriver.com> +Date: Wed, 3 Jun 2020 10:25:24 +0800 +Subject: [PATCH] Bump up the limit of signature header to 64MB + +Since commits [Place file signatures into the signature header where they +belong][1] applied, run `rpm -Kv **.rpm' failed if signature header +is larger than 64KB. Here are steps: + +1) A unsigned rpm package, the size is 227560 bytes +$ ls -al xz-src-5.2.5-r0.corei7_64.rpm +-rw-------. 1 mockbuild 1000 227560 Jun 3 09:59 + +2) Sign the rpm package +$ rpmsign --addsign ... xz-src-5.2.5-r0.corei7_64.rpm + +3) The size of signed rpm is 312208 bytes +$ ls -al xz-src-5.2.5-r0.corei7_64.rpm +-rw-------. 1 mockbuild 1000 312208 Jun 3 09:48 + +4) Run `rpm -Kv' failed with signature hdr data out of range +$ rpm -Kv xz-src-5.2.5-r0.corei7_64.rpm +xz-src-5.2.5-r0.corei7_64.rpm: +error: xz-src-5.2.5-r0.corei7_64.rpm: signature hdr data: BAD, no. of +bytes(88864) out of range + +From 1) and 3), the size of signed rpm package increased +312208 - 227560 = 84648, so the check of dl_max (64KB,65536) +is not enough. + +As [1] said: + + This also means the signature header can be MUCH bigger than ever + before,so bump up the limit (to 64MB, arbitrary something for now) + +So [1] missed to multiply by 1024. + +[1] https://github.com/rpm-software-management/rpm/commit/f558e886050c4e98f6cdde391df679a411b3f62c + +Upstream-Status: Backport [https://github.com/rpm-software-management/rpm/commit/486579912381ede82172dc6d0ff3941a6d0536b5] + +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> +--- + lib/header.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/lib/header.c b/lib/header.c +index 9ec7ed0..cbf6890 100644 +--- a/lib/header.c ++++ b/lib/header.c +@@ -1906,7 +1906,7 @@ rpmRC hdrblobRead(FD_t fd, int magic, int exact_size, rpmTagVal regionTag, hdrbl + + if (regionTag == RPMTAG_HEADERSIGNATURES) { + il_max = 32; +- dl_max = 64 * 1024; ++ dl_max = 64 * 1024 * 1024; + } + + memset(block, 0, sizeof(block)); +-- +2.25.4 + diff --git a/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb b/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb index 8add14246..cbe1acffe 100644 --- a/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb +++ b/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb @@ -40,6 +40,7 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.15.x \ file://0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch \ file://0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch \ file://0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch \ + file://0001-Bump-up-the-limit-of-signature-header-to-64MB.patch \ " PE = "1" diff --git a/poky/meta/recipes-devtools/strace/strace_5.5.bb b/poky/meta/recipes-devtools/strace/strace_5.6.bb index ae552da02..53679cd0d 100644 --- a/poky/meta/recipes-devtools/strace/strace_5.5.bb +++ b/poky/meta/recipes-devtools/strace/strace_5.6.bb @@ -15,8 +15,8 @@ SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \ file://uintptr_t.patch \ file://0001-strace-fix-reproducibilty-issues.patch \ " -SRC_URI[md5sum] = "dbce2e84632b39a4ed86b9fc60447af9" -SRC_URI[sha256sum] = "9f58958c8e59ea62293d907d10572e352b582bd7948ed21aa28ebb47e5bf30ff" +SRC_URI[md5sum] = "f8e0394d4e537b3faadf0a72f5d1d17e" +SRC_URI[sha256sum] = "189968eeae06ed9e20166ec55a830943c84374676a457c9fe010edc7541f1b01" inherit autotools ptest @@ -27,7 +27,7 @@ PACKAGECONFIG_class-target ??= "\ PACKAGECONFIG[bluez] = "ac_cv_header_bluetooth_bluetooth_h=yes,ac_cv_header_bluetooth_bluetooth_h=no,bluez5" PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind" -EXTRA_OECONF += "--enable-mpers=no" +EXTRA_OECONF += "--enable-mpers=no --disable-gcc-Werror" CFLAGS_append_libc-musl = " -Dsigcontext_struct=sigcontext" diff --git a/poky/meta/recipes-devtools/vala/vala_0.46.6.bb b/poky/meta/recipes-devtools/vala/vala_0.48.6.bb index 66f620384..9dace1348 100644 --- a/poky/meta/recipes-devtools/vala/vala_0.46.6.bb +++ b/poky/meta/recipes-devtools/vala/vala_0.48.6.bb @@ -4,5 +4,4 @@ SRC_URI += "file://0001-git-version-gen-don-t-append-dirty-if-we-re-not-in-g.pat file://0001-vapigen.m4-use-PKG_CONFIG_SYSROOT_DIR.patch \ " -SRC_URI[md5sum] = "d9af125648505503b139ebc2d2c9eee5" -SRC_URI[sha256sum] = "ef31649932872f094971d46453b21c60a41661670f98afa334062425b4aec47a" +SRC_URI[sha256sum] = "d18d08ed030ce0e0f044f4c15c9df3c25b15beaf8700e45e43b736a6debf9707" diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch deleted file mode 100644 index 9afa7f6a5..000000000 --- a/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch +++ /dev/null @@ -1,144 +0,0 @@ -From abbc0761fa0349d49b10dc8c0f10af6bc0578c40 Mon Sep 17 00:00:00 2001 -From: Mark Wielaard <mark@klomp.org> -Date: Tue, 12 May 2020 16:58:36 +0200 -Subject: [PATCH 1/2] gcc10 arm64 build needs __getauxval for linking with - libgcc - -Provide a new library libgcc-sup-<platform>.a that contains symbols -needed by libgcc. This needs to be linked after -lgcc to provide -any symbols missing which would normally be provided by glibc. -At the moment this only provides __getauxval on arm64 linux. - -https://bugs.kde.org/show_bug.cgi?id=421321 - -Signed-off-by: Khem Raj <raj.khem@gmail.com> -Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=abbc0761fa0349d49b10dc8c0f10af6bc0578c40] - ---- - Makefile.tool.am | 3 +- - coregrind/Makefile.am | 26 +++++++++++++++++ - coregrind/m_libgcc_sup.c | 61 ++++++++++++++++++++++++++++++++++++++++ - 3 files changed, 89 insertions(+), 1 deletion(-) - create mode 100644 coregrind/m_libgcc_sup.c - -diff --git a/Makefile.tool.am b/Makefile.tool.am -index cc2fa0ee6..2bf90de5d 100644 ---- a/Makefile.tool.am -+++ b/Makefile.tool.am -@@ -17,7 +17,8 @@ TOOL_DEPENDENCIES_@VGCONF_PLATFORM_SEC_CAPS@ = \ - endif - - --TOOL_LDADD_COMMON = -lgcc -+TOOL_LDADD_COMMON = -lgcc \ -+ $(top_builddir)/coregrind/libgcc-sup-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a - TOOL_LDADD_@VGCONF_PLATFORM_PRI_CAPS@ = \ - $(TOOL_DEPENDENCIES_@VGCONF_PLATFORM_PRI_CAPS@) $(TOOL_LDADD_COMMON) - if VGCONF_HAVE_PLATFORM_SEC -diff --git a/coregrind/Makefile.am b/coregrind/Makefile.am -index 6a1a925fb..1753fb633 100644 ---- a/coregrind/Makefile.am -+++ b/coregrind/Makefile.am -@@ -542,6 +542,32 @@ libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_DEPENDENCIES = \ - libnolto_coregrind-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a - endif - -+#---------------------------------------------------------------------------- -+# libgcc-sup-<platform>.a -+# Special supplemental library for functions normally supplied by glibc -+# used by libgcc. -+#---------------------------------------------------------------------------- -+ -+pkglib_LIBRARIES += libgcc-sup-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a -+if VGCONF_HAVE_PLATFORM_SEC -+pkglib_LIBRARIES += libgcc-sup-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a -+endif -+ -+libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_SOURCES = \ -+ m_libgcc_sup.c -+libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CPPFLAGS = \ -+ $(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@) -+libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CFLAGS = \ -+ $(AM_CFLAGS_PSO_@VGCONF_PLATFORM_PRI_CAPS@) -+if VGCONF_HAVE_PLATFORM_SEC -+libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_SOURCES = \ -+ m_libgcc_sup.c -+libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CPPFLAGS = \ -+ $(AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@) -+libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CFLAGS = \ -+ $(AM_CFLAGS_PSO_@VGCONF_PLATFORM_SEC_CAPS@) -+endif -+ - #---------------------------------------------------------------------------- - # libreplacemalloc_toolpreload-<platform>.a - #---------------------------------------------------------------------------- -diff --git a/coregrind/m_libgcc_sup.c b/coregrind/m_libgcc_sup.c -new file mode 100644 -index 000000000..e29325459 ---- /dev/null -+++ b/coregrind/m_libgcc_sup.c -@@ -0,0 +1,61 @@ -+/* -*- mode: C; c-basic-offset: 3; -*- */ -+ -+/*--------------------------------------------------------------------*/ -+/*--- Supplemental functions for libgcc normally provided by glibc ---*/ -+/*--------------------------------------------------------------------*/ -+ -+/* -+ This file is part of Valgrind, a dynamic binary instrumentation -+ framework. -+ -+ Copyright (C) 2020 Mark Wielaard -+ mark@klomp.org -+ -+ This program is free software; you can redistribute it and/or -+ modify it under the terms of the GNU General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ This program is distributed in the hope that it will be useful, but -+ WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, see <http://www.gnu.org/licenses/>. -+ -+ The GNU General Public License is contained in the file COPYING. -+*/ -+ -+#include "config.h" -+#include "pub_core_basics.h" -+#include "pub_core_clientstate.h" -+ -+/*====================================================================*/ -+/*=== arm64 libgcc support function for init_have_lse_atomics ===*/ -+/*====================================================================*/ -+ -+#if defined(VGP_arm64_linux) -+struct auxv -+{ -+ Word a_type; -+ union { -+ void *a_ptr; -+ Word a_val; -+ } u; -+}; -+#define AT_NULL 0 -+ -+unsigned long int __getauxval (unsigned long int type); -+unsigned long int __getauxval (unsigned long int type) -+{ -+ struct auxv *p; -+ for (p = (struct auxv *) VG_(client_auxv); -+ p != NULL && p->a_type != AT_NULL; -+ p++) -+ if (p->a_type == type) -+ return p->u.a_val; -+ -+ return 0; -+} -+#endif --- -2.26.2 - diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-Make-pthread_detatch-call-portable-across-plat.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-Make-pthread_detatch-call-portable-across-plat.patch deleted file mode 100644 index f407d8191..000000000 --- a/poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-Make-pthread_detatch-call-portable-across-plat.patch +++ /dev/null @@ -1,87 +0,0 @@ -From 92fcf75d6d3903e45492b041bf4ad07787d2e58a Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Mon, 27 Jan 2020 19:50:04 -0800 -Subject: [PATCH] drd/tests/pth_detached3: Make pthread_detach() call portable - across platforms - -pthread_t is opaque type therefore we can not apply simple arithmetic to -variables of pthread_t type this test needs to pass a invalid pthread_t -handle, typcasting to uintptr_t works too and is portable across glibc and -musl - -Fixes -| pth_detached3.c:24:25: error: invalid use of undefined type 'struct __pthread' -| 24 | pthread_detach(thread + 8); -| | ^ - -[ bvanassche: reformatted patch description and fixed up line numbers ] - -Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=92fcf75d6d3903e45492b041bf4ad07787d2e58a] -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - drd/tests/pth_detached3.c | 3 ++- - drd/tests/pth_detached3.stderr.exp1 | 4 ++-- - drd/tests/pth_detached3.stderr.exp2 | 4 ++-- - 3 files changed, 6 insertions(+), 5 deletions(-) - -diff --git a/drd/tests/pth_detached3.c b/drd/tests/pth_detached3.c -index c02eef1..efeb15b 100644 ---- a/drd/tests/pth_detached3.c -+++ b/drd/tests/pth_detached3.c -@@ -4,6 +4,7 @@ - #include <errno.h> - #include <pthread.h> - #include <stdio.h> -+#include <stdint.h> - - static void* thread_func(void* arg) - { -@@ -21,7 +22,7 @@ int main(int argc, char** argv) - pthread_detach(thread); - - /* Invoke pthread_detach() with an invalid thread ID. */ -- pthread_detach(thread + 8); -+ pthread_detach((pthread_t)((uintptr_t)thread + 8)); - - fprintf(stderr, "Finished.\n"); - -diff --git a/drd/tests/pth_detached3.stderr.exp1 b/drd/tests/pth_detached3.stderr.exp1 -index 58412ec..8dd58ba 100644 ---- a/drd/tests/pth_detached3.stderr.exp1 -+++ b/drd/tests/pth_detached3.stderr.exp1 -@@ -1,11 +1,11 @@ - - pthread_detach(): invalid thread ID 0x........ - at 0x........: pthread_detach (drd_pthread_intercepts.c:?) -- by 0x........: main (pth_detached3.c:21) -+ by 0x........: main (pth_detached3.c:22) - - pthread_detach(): invalid thread ID 0x........ - at 0x........: pthread_detach (drd_pthread_intercepts.c:?) -- by 0x........: main (pth_detached3.c:24) -+ by 0x........: main (pth_detached3.c:25) - - Finished. - -diff --git a/drd/tests/pth_detached3.stderr.exp2 b/drd/tests/pth_detached3.stderr.exp2 -index bdc5cf8..e82dee1 100644 ---- a/drd/tests/pth_detached3.stderr.exp2 -+++ b/drd/tests/pth_detached3.stderr.exp2 -@@ -2,12 +2,12 @@ - pthread_detach(): invalid thread ID 0x........ - at 0x........: vgDrd_set_joinable (drd_pthread_intercepts.c:?) - by 0x........: pthread_detach (drd_pthread_intercepts.c:?) -- by 0x........: main (pth_detached3.c:21) -+ by 0x........: main (pth_detached3.c:22) - - pthread_detach(): invalid thread ID 0x........ - at 0x........: vgDrd_set_joinable (drd_pthread_intercepts.c:?) - by 0x........: pthread_detach (drd_pthread_intercepts.c:?) -- by 0x........: main (pth_detached3.c:24) -+ by 0x........: main (pth_detached3.c:25) - - Finished. - --- -2.9.3 - diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch index 75bb0aa7c..4570f6399 100644 --- a/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch +++ b/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch @@ -4,7 +4,8 @@ Date: Tue, 16 Oct 2018 21:01:04 -0400 Subject: [PATCH] Fix out of tree builds. The paths to these files need to be fully specified in -the out of tree build case. glibc-2.X.supp is a generated file so the full path +the out of tree build case. glibc-2.X.supp is a generated file so the +full path is deliberately not specified in that case. RP 2013/03/23 @@ -16,81 +17,81 @@ Upstream-Status: Pending Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com> --- - configure.ac | 68 ++++++++++++++++++++++++++-------------------------- - 1 file changed, 34 insertions(+), 34 deletions(-) + configure.ac | 66 ++++++++++++++++++++++++++-------------------------- + 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/configure.ac b/configure.ac -index c18ae5f2a..99667ce57 100644 +index 524230d..54861c5 100755 --- a/configure.ac +++ b/configure.ac -@@ -392,50 +392,50 @@ case "${host_os}" in +@@ -396,50 +396,50 @@ case "${host_os}" in 9.*) AC_MSG_RESULT([Darwin 9.x (${kernel}) / Mac OS X 10.5 Leopard]) AC_DEFINE([DARWIN_VERS], DARWIN_10_5, [Darwin / Mac OS X version]) - DEFAULT_SUPP="darwin9.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="darwin9-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin9.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin9-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin9.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin9-drd.supp ${DEFAULT_SUPP}" ;; 10.*) AC_MSG_RESULT([Darwin 10.x (${kernel}) / Mac OS X 10.6 Snow Leopard]) AC_DEFINE([DARWIN_VERS], DARWIN_10_6, [Darwin / Mac OS X version]) - DEFAULT_SUPP="darwin10.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin10.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin10.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ;; 11.*) AC_MSG_RESULT([Darwin 11.x (${kernel}) / Mac OS X 10.7 Lion]) AC_DEFINE([DARWIN_VERS], DARWIN_10_7, [Darwin / Mac OS X version]) - DEFAULT_SUPP="darwin11.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin11.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin11.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ;; 12.*) AC_MSG_RESULT([Darwin 12.x (${kernel}) / Mac OS X 10.8 Mountain Lion]) AC_DEFINE([DARWIN_VERS], DARWIN_10_8, [Darwin / Mac OS X version]) - DEFAULT_SUPP="darwin12.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin12.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin12.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ;; 13.*) AC_MSG_RESULT([Darwin 13.x (${kernel}) / Mac OS X 10.9 Mavericks]) AC_DEFINE([DARWIN_VERS], DARWIN_10_9, [Darwin / Mac OS X version]) - DEFAULT_SUPP="darwin13.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin13.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin13.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ;; 14.*) AC_MSG_RESULT([Darwin 14.x (${kernel}) / Mac OS X 10.10 Yosemite]) AC_DEFINE([DARWIN_VERS], DARWIN_10_10, [Darwin / Mac OS X version]) - DEFAULT_SUPP="darwin14.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin14.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin14.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ;; 15.*) AC_MSG_RESULT([Darwin 15.x (${kernel}) / Mac OS X 10.11 El Capitan]) AC_DEFINE([DARWIN_VERS], DARWIN_10_11, [Darwin / Mac OS X version]) - DEFAULT_SUPP="darwin15.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin15.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin15.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ;; 16.*) AC_MSG_RESULT([Darwin 16.x (${kernel}) / macOS 10.12 Sierra]) AC_DEFINE([DARWIN_VERS], DARWIN_10_12, [Darwin / Mac OS X version]) - DEFAULT_SUPP="darwin16.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin16.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin16.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}" ;; 17.*) AC_MSG_RESULT([Darwin 17.x (${kernel}) / macOS 10.13 High Sierra]) -@@ -460,7 +460,7 @@ case "${host_os}" in +@@ -464,7 +464,7 @@ case "${host_os}" in DEFAULT_SUPP="solaris12.supp ${DEFAULT_SUPP}" ;; *) @@ -99,7 +100,7 @@ index c18ae5f2a..99667ce57 100644 ;; esac ;; -@@ -468,7 +468,7 @@ case "${host_os}" in +@@ -472,7 +472,7 @@ case "${host_os}" in solaris2.12*) AC_MSG_RESULT([ok (${host_os})]) VGCONF_OS="solaris" @@ -108,33 +109,33 @@ index c18ae5f2a..99667ce57 100644 ;; *) -@@ -1051,29 +1051,29 @@ AC_MSG_CHECKING([the glibc version]) +@@ -1095,29 +1095,29 @@ AC_MSG_CHECKING([the glibc version]) case "${GLIBC_VERSION}" in 2.2) AC_MSG_RESULT(${GLIBC_VERSION} family) - DEFAULT_SUPP="glibc-2.2.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.2-LinuxThreads-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.2.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.2-LinuxThreads-helgrind.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.2.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.2-LinuxThreads-helgrind.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}" ;; 2.[[3-6]]) AC_MSG_RESULT(${GLIBC_VERSION} family) - DEFAULT_SUPP="glibc-${GLIBC_VERSION}.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-${GLIBC_VERSION}.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-${GLIBC_VERSION}.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}" ;; 2.[[7-9]]) AC_MSG_RESULT(${GLIBC_VERSION} family) DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}" ;; 2.10|2.11) AC_MSG_RESULT(${GLIBC_VERSION} family) @@ -143,23 +144,23 @@ index c18ae5f2a..99667ce57 100644 DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}" ;; 2.*) AC_MSG_RESULT(${GLIBC_VERSION} family) -@@ -1082,8 +1082,8 @@ case "${GLIBC_VERSION}" in +@@ -1126,8 +1126,8 @@ case "${GLIBC_VERSION}" in AC_DEFINE([GLIBC_MANDATORY_INDEX_AND_STRLEN_REDIRECT], 1, [Define to 1 if index() and strlen() have been optimized heavily (x86 glibc >= 2.12)]) DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}" ;; darwin) AC_MSG_RESULT(Darwin) -@@ -1093,7 +1093,7 @@ case "${GLIBC_VERSION}" in +@@ -1137,7 +1137,7 @@ case "${GLIBC_VERSION}" in bionic) AC_MSG_RESULT(Bionic) AC_DEFINE([BIONIC_LIBC], 1, [Define to 1 if you're using Bionic]) @@ -168,7 +169,7 @@ index c18ae5f2a..99667ce57 100644 ;; solaris) AC_MSG_RESULT(Solaris) -@@ -1120,11 +1120,11 @@ if test "$VGCONF_OS" != "solaris"; then +@@ -1164,8 +1164,8 @@ if test "$VGCONF_OS" != "solaris"; then # attempt to detect whether such libraries are installed on the # build machine (or even if any X facilities are present); just # add the suppressions antidisirregardless. @@ -176,13 +177,9 @@ index c18ae5f2a..99667ce57 100644 - DEFAULT_SUPP="xfree-3.supp ${DEFAULT_SUPP}" + DEFAULT_SUPP="$srcdir/xfree-4.supp ${DEFAULT_SUPP}" + DEFAULT_SUPP="$srcdir/xfree-3.supp ${DEFAULT_SUPP}" - - # Add glibc and X11 suppressions for exp-sgcheck -- DEFAULT_SUPP="exp-sgcheck.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="$srcdir/exp-sgcheck.supp ${DEFAULT_SUPP}" fi -- -2.17.0 +2.17.1 diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0004-pth_atfork1.c-Define-error-API-for-musl.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0004-pth_atfork1.c-Define-error-API-for-musl.patch deleted file mode 100644 index 1cb706254..000000000 --- a/poky/meta/recipes-devtools/valgrind/valgrind/0004-pth_atfork1.c-Define-error-API-for-musl.patch +++ /dev/null @@ -1,37 +0,0 @@ -From fb77fef4f866dac7bcc6d1ae025da60564869f84 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Sat, 10 Jun 2017 01:06:11 -0700 -Subject: [PATCH 4/6] pth_atfork1.c: Define error() API for musl - -Upstream-Status: Pending - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - none/tests/pth_atfork1.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/none/tests/pth_atfork1.c b/none/tests/pth_atfork1.c -index 34201ef..b7f5f2d 100644 ---- a/none/tests/pth_atfork1.c -+++ b/none/tests/pth_atfork1.c -@@ -18,7 +18,7 @@ - Boston, MA 02111-1307, USA. */ - - #include <errno.h> --#if !defined(__APPLE__) && !defined(__sun) -+#if !defined(__APPLE__) && !defined(__sun) && defined(__GLIBC__) - # include <error.h> - #endif - #include <stdlib.h> -@@ -27,7 +27,7 @@ - #include <sys/wait.h> - #include <stdio.h> - --#if defined(__APPLE__) || defined(__sun) -+#if defined(__APPLE__) || defined(__sun) || (defined(__linux__) && !defined(__GLIBC__)) - #include <string.h> /* strerror */ - static void error (int status, int errnum, char* msg) - { --- -2.13.1 - diff --git a/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb b/poky/meta/recipes-devtools/valgrind/valgrind_3.16.0.bb index a764d1817..5402f39a5 100644 --- a/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb +++ b/poky/meta/recipes-devtools/valgrind/valgrind_3.16.0.bb @@ -3,7 +3,7 @@ HOMEPAGE = "http://valgrind.org/" BUGTRACKER = "http://valgrind.org/support/bug_reports.html" LICENSE = "GPLv2 & GPLv2+ & BSD" LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://include/pub_tool_basics.h;beginline=6;endline=29;md5=d4de0407239381463cf01dd276d7c22e \ + file://include/pub_tool_basics.h;beginline=6;endline=29;md5=41c410e8d3f305aee7aaa666b2e4f366 \ file://include/valgrind.h;beginline=1;endline=56;md5=ad3b317f3286b6b704575d9efe6ca5df \ file://COPYING.DOCS;md5=24ea4c7092233849b4394699333b5c56" @@ -27,7 +27,6 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \ file://0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch \ file://0002-context-APIs-are-not-available-on-musl.patch \ file://0003-correct-include-directive-path-for-config.h.patch \ - file://0004-pth_atfork1.c-Define-error-API-for-musl.patch \ file://0005-tc20_verifywrap.c-Fake-__GLIBC_PREREQ-with-musl.patch \ file://0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch \ file://0002-memcheck-x86-Define-__THROW-if-not-defined.patch \ @@ -40,12 +39,10 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \ file://0001-adjust-path-filter-for-2-memcheck-tests.patch \ file://s390x_vec_op_t.patch \ file://0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch \ - file://0001-tests-Make-pthread_detatch-call-portable-across-plat.patch \ file://0001-memcheck-tests-Fix-timerfd-syscall-test.patch \ - file://0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch \ " -SRC_URI[md5sum] = "46e5fbdcbc3502a5976a317a0860a975" -SRC_URI[sha256sum] = "417c7a9da8f60dd05698b3a7bc6002e4ef996f14c13f0ff96679a16873e78ab1" +SRC_URI[md5sum] = "495b30af5e5ed62ebb9bb777ee19b27f" +SRC_URI[sha256sum] = "582d5127ba56dfeaab4c6ced92a742b2921148e28a5d55055aedd8f75f1cf633" UPSTREAM_CHECK_REGEX = "valgrind-(?P<pver>\d+(\.\d+)+)\.tar" COMPATIBLE_HOST = '(i.86|x86_64|arm|aarch64|mips|powerpc|powerpc64).*-linux' |