diff options
| author | Gyorgy Sarvari <skandigraun@gmail.com> | 2025-09-03 20:03:43 +0200 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-09-08 18:02:39 +0100 |
| commit | 64857a709bcccd0f6738633e313f36d96219de54 (patch) | |
| tree | f9a52d2b1629bda7b16d67966d96eec922cbf477 /meta | |
| parent | 468bcd19506ea20082cafaaa5f53909c802dc19a (diff) | |
| download | poky-64857a709bcccd0f6738633e313f36d96219de54.tar.gz | |
apt: upgrade 2.6.1 -> 3.0.3
Changelog:
https://metadata.ftp-master.debian.org/changelogs/main/a/apt/apt_3.0.3_changelog
Dropped patches which are included in this release, or became obsolete:
0001-Fix-compilation-error-with-clang-libc-18.patch - included in this release
0001-Fix-musl-build.patch - included in this release
0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch - included in this release
0001-Remove-using-std-binary_function.patch - became obsolete, fixed upstream
0001-aptwebserver.cc-Include-array.patch - became obsolete, fixed upstream
0001-strutl-Add-missing-include-cstdint-gcc-15.patch - included in this release
Added a new patch to avoid compilation error with musl:
error: 'basename' was not declared in this scope; did you mean 'rename'?
Adapted DEPENDS list - gnutls and gcrypt dependencies were dropped in favor of openssl
in version 2.9.19.
Added a new PACKAGECONFIG, 'usrmerge', which displays a gentle warning if the system
isn't a usrmerge system during package installation.
Added new COMMON_ARCH CMake argument - if it is not defined, CMake is trying to
determine the value of this variable by running dpkg, which is usually a futile
endeavour. It is used in config creation, and to print some system info.
Also adapt a self test: the apt-key command has been deprecated since a while,
and in this release it was completely removed. Instead sources.list file
contains the signature data, on a per-repository basis.
(From OE-Core rev: 1413a6144679a8347a3487f1950612ee20ff382c)
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
14 files changed, 74 insertions, 264 deletions
diff --git a/meta/lib/oeqa/runtime/cases/apt.py b/meta/lib/oeqa/runtime/cases/apt.py index 8000645843..c6b62987f1 100644 --- a/meta/lib/oeqa/runtime/cases/apt.py +++ b/meta/lib/oeqa/runtime/cases/apt.py | |||
| @@ -54,7 +54,14 @@ class AptRepoTest(AptTest): | |||
| 54 | def setup_key(self): | 54 | def setup_key(self): |
| 55 | # the key is found on the target /etc/pki/packagefeed-gpg/ | 55 | # the key is found on the target /etc/pki/packagefeed-gpg/ |
| 56 | # named PACKAGEFEED-GPG-KEY-poky-branch | 56 | # named PACKAGEFEED-GPG-KEY-poky-branch |
| 57 | self.target.run('cd %s; apt-key add P*' % ('/etc/pki/packagefeed-gpg')) | 57 | # copy it to /etc/apt/keyrings/PACKAGEFEED-GPG-KEY-poky-branch.asc, and |
| 58 | # set it as the signing key for the repos | ||
| 59 | cmd = "KEY_FILE_PATH=`realpath /etc/pki/packagefeed-gpg/P*`; " | ||
| 60 | cmd += "KEY_FILE_NAME=`basename $KEY_FILE_PATH`; " | ||
| 61 | cmd += "mkdir -p /etc/apt/keyrings; " | ||
| 62 | cmd += "cp $KEY_FILE_PATH /etc/apt/keyrings/${KEY_FILE_NAME}.asc; " | ||
| 63 | cmd += 'sed -i "s|^deb |deb \[signed-by=/etc/apt/keyrings/${KEY_FILE_NAME}.asc\] |g" /etc/apt/sources.list' | ||
| 64 | self.target.run(cmd) | ||
| 58 | 65 | ||
| 59 | @skipIfNotFeature('package-management', | 66 | @skipIfNotFeature('package-management', |
| 60 | 'Test requires package-management to be in IMAGE_FEATURES') | 67 | 'Test requires package-management to be in IMAGE_FEATURES') |
diff --git a/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch b/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch index 199f11bf20..d37aa811cd 100644 --- a/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch +++ b/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch | |||
| @@ -14,7 +14,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt | |||
| 14 | index 2cd4f8e..4759812 100644 | 14 | index 2cd4f8e..4759812 100644 |
| 15 | --- a/CMakeLists.txt | 15 | --- a/CMakeLists.txt |
| 16 | +++ b/CMakeLists.txt | 16 | +++ b/CMakeLists.txt |
| 17 | @@ -21,9 +21,9 @@ set(CMAKE_EXE_LINKER_FLAGS_COVERAGE "-lgcov") | 17 | @@ -28,9 +28,9 @@ set(CMAKE_EXE_LINKER_FLAGS_COVERAGE "-lgcov") |
| 18 | set(CMAKE_SHARED_LINKER_FLAGS_COVERAGE "-lgcov") | 18 | set(CMAKE_SHARED_LINKER_FLAGS_COVERAGE "-lgcov") |
| 19 | 19 | ||
| 20 | # Work around bug in GNUInstallDirs | 20 | # Work around bug in GNUInstallDirs |
diff --git a/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch b/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch index 5443ff6caa..4bc6dce760 100644 --- a/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch +++ b/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch | |||
| @@ -16,7 +16,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt | |||
| 16 | index 668e2d762..62f441bfa 100644 | 16 | index 668e2d762..62f441bfa 100644 |
| 17 | --- a/CMakeLists.txt | 17 | --- a/CMakeLists.txt |
| 18 | +++ b/CMakeLists.txt | 18 | +++ b/CMakeLists.txt |
| 19 | @@ -246,7 +246,7 @@ add_subdirectory(apt-private) | 19 | @@ -251,7 +251,7 @@ add_subdirectory(apt-private) |
| 20 | endif() | 20 | endif() |
| 21 | add_subdirectory(cmdline) | 21 | add_subdirectory(cmdline) |
| 22 | add_subdirectory(completions) | 22 | add_subdirectory(completions) |
diff --git a/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch b/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch index 37a3133010..d21f5a49c5 100644 --- a/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch +++ b/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch | |||
| @@ -16,7 +16,7 @@ diff --git a/apt-pkg/init.cc b/apt-pkg/init.cc | |||
| 16 | index b9d9b15d2..1725c5966 100644 | 16 | index b9d9b15d2..1725c5966 100644 |
| 17 | --- a/apt-pkg/init.cc | 17 | --- a/apt-pkg/init.cc |
| 18 | +++ b/apt-pkg/init.cc | 18 | +++ b/apt-pkg/init.cc |
| 19 | @@ -281,8 +281,8 @@ bool pkgInitSystem(Configuration &Cnf,pkgSystem *&Sys) | 19 | @@ -295,8 +295,8 @@ bool pkgInitSystem(Configuration &Cnf,pkgSystem *&Sys) |
| 20 | return _error->Error(_("Unable to determine a suitable packaging system type")); | 20 | return _error->Error(_("Unable to determine a suitable packaging system type")); |
| 21 | } | 21 | } |
| 22 | 22 | ||
diff --git a/meta/recipes-devtools/apt/apt/0001-Fix-compilation-error-with-clang-libc-18.patch b/meta/recipes-devtools/apt/apt/0001-Fix-compilation-error-with-clang-libc-18.patch deleted file mode 100644 index e55205ca3f..0000000000 --- a/meta/recipes-devtools/apt/apt/0001-Fix-compilation-error-with-clang-libc-18.patch +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | From b4488583424b33f51cb031562a9e8df820ffda23 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Chongyun Lee <licy183@termux.dev> | ||
| 3 | Date: Thu, 15 Aug 2024 21:31:24 +0800 | ||
| 4 | Subject: [PATCH] Fix compilation error with clang/libc++ 18 | ||
| 5 | |||
| 6 | Upstream-Status: Backport [https://salsa.debian.org/apt-team/apt/-/commit/b4488583424b33f51cb031562a9e8df820ffda23] | ||
| 7 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 8 | --- | ||
| 9 | apt-pkg/cacheset.h | 4 ++-- | ||
| 10 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
| 11 | |||
| 12 | diff --git a/apt-pkg/cacheset.h b/apt-pkg/cacheset.h | ||
| 13 | index 5dbb9bf08..1c67a65d6 100644 | ||
| 14 | --- a/apt-pkg/cacheset.h | ||
| 15 | +++ b/apt-pkg/cacheset.h | ||
| 16 | @@ -218,11 +218,11 @@ public: | ||
| 17 | operator container_iterator(void) const { return _iter; } | ||
| 18 | inline iterator_type& operator++() { ++_iter; return static_cast<iterator_type&>(*this); } | ||
| 19 | inline iterator_type operator++(int) { iterator_type tmp(*this); operator++(); return tmp; } | ||
| 20 | - inline iterator_type operator+(typename container_iterator::difference_type const &n) { return iterator_type(_iter + n); } | ||
| 21 | + inline iterator_type operator+(typename container_iterator::difference_type const &n) const { return iterator_type(_iter + n); } | ||
| 22 | inline iterator_type operator+=(typename container_iterator::difference_type const &n) { _iter += n; return static_cast<iterator_type&>(*this); } | ||
| 23 | inline iterator_type& operator--() { --_iter;; return static_cast<iterator_type&>(*this); } | ||
| 24 | inline iterator_type operator--(int) { iterator_type tmp(*this); operator--(); return tmp; } | ||
| 25 | - inline iterator_type operator-(typename container_iterator::difference_type const &n) { return iterator_type(_iter - n); } | ||
| 26 | + inline iterator_type operator-(typename container_iterator::difference_type const &n) const { return iterator_type(_iter - n); } | ||
| 27 | inline typename container_iterator::difference_type operator-(iterator_type const &b) { return (_iter - b._iter); } | ||
| 28 | inline iterator_type operator-=(typename container_iterator::difference_type const &n) { _iter -= n; return static_cast<iterator_type&>(*this); } | ||
| 29 | inline bool operator!=(iterator_type const &i) const { return _iter != i._iter; } | ||
diff --git a/meta/recipes-devtools/apt/apt/0001-Fix-musl-build.patch b/meta/recipes-devtools/apt/apt/0001-Fix-musl-build.patch deleted file mode 100644 index 0cefbedd6d..0000000000 --- a/meta/recipes-devtools/apt/apt/0001-Fix-musl-build.patch +++ /dev/null | |||
| @@ -1,28 +0,0 @@ | |||
| 1 | From 6b8547161b902b01b639d05a4cdf849d7694556f Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
| 3 | Date: Fri, 22 May 2020 15:29:23 +0000 | ||
| 4 | Subject: [PATCH] apt-pkg/contrib/srvrec.h: Explicitly include sys/types.h | ||
| 5 | |||
| 6 | This avoids type errors with musl C library. | ||
| 7 | |||
| 8 | Upstream-Status: Submitted [https://salsa.debian.org/apt-team/apt/-/merge_requests/200] | ||
| 9 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
| 10 | --- | ||
| 11 | apt-pkg/contrib/srvrec.h | 1 + | ||
| 12 | 1 file changed, 1 insertion(+) | ||
| 13 | |||
| 14 | diff --git a/apt-pkg/contrib/srvrec.h b/apt-pkg/contrib/srvrec.h | ||
| 15 | index e5d0f43..2010184 100644 | ||
| 16 | --- a/apt-pkg/contrib/srvrec.h | ||
| 17 | +++ b/apt-pkg/contrib/srvrec.h | ||
| 18 | @@ -9,6 +9,7 @@ | ||
| 19 | #ifndef SRVREC_H | ||
| 20 | #define SRVREC_H | ||
| 21 | |||
| 22 | +#include <sys/types.h> | ||
| 23 | #include <string> | ||
| 24 | #include <vector> | ||
| 25 | #include <arpa/nameser.h> | ||
| 26 | -- | ||
| 27 | 2.20.1 | ||
| 28 | |||
diff --git a/meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch b/meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch deleted file mode 100644 index c3a5ded494..0000000000 --- a/meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch +++ /dev/null | |||
| @@ -1,47 +0,0 @@ | |||
| 1 | From dc7a8b3050a2a43f49515a03ae19713dfced75dc Mon Sep 17 00:00:00 2001 | ||
| 2 | From: David Kalnischkies <david@kalnischkies.de> | ||
| 3 | Date: Sat, 18 Nov 2023 13:10:05 +0000 | ||
| 4 | Subject: [PATCH] Raise cmake_minimum_required to 3.13 to avoid warnings | ||
| 5 | |||
| 6 | CMake Deprecation Warning at CMakeLists.txt:6 (cmake_minimum_required): | ||
| 7 | Compatibility with CMake < 3.5 will be removed from a future version of | ||
| 8 | CMake. | ||
| 9 | |||
| 10 | Update the VERSION argument <min> value or use a ...<max> suffix to tell | ||
| 11 | CMake that the project does not need compatibility with older versions. | ||
| 12 | |||
| 13 | Picking 3.13 here is a semi-random choice to avoid raising the requirement | ||
| 14 | too much needlessly while also hopefully avoiding needing to raise it | ||
| 15 | soon again based on the referenced mail. | ||
| 16 | |||
| 17 | While we are at it, lets also fix the other spewed warning: | ||
| 18 | |||
| 19 | CMake Warning (dev) at CMakeLists.txt:5 (project): | ||
| 20 | cmake_minimum_required() should be called prior to this top-level project() | ||
| 21 | call. Please see the cmake-commands(7) manual for usage documentation of | ||
| 22 | both commands. | ||
| 23 | |||
| 24 | References: https://lists.debian.org/msgid-search/20230617162957.6pklb6632zf4nijc@mail.gaussglocke.de | ||
| 25 | |||
| 26 | Upstream-Status: Backport [https://salsa.debian.org/apt-team/apt/-/commit/dc7a8b3050a2a43f49515a03ae19713dfced75dc] | ||
| 27 | Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de> | ||
| 28 | --- | ||
| 29 | CMakeLists.txt | 2 +- | ||
| 30 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 31 | |||
| 32 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
| 33 | index 62182cddf..dae12e7c3 100644 | ||
| 34 | --- a/CMakeLists.txt | ||
| 35 | +++ b/CMakeLists.txt | ||
| 36 | @@ -2,8 +2,8 @@ | ||
| 37 | # Licensed under the same terms as APT; i.e. GPL 2 or later. | ||
| 38 | |||
| 39 | # set minimum version | ||
| 40 | +cmake_minimum_required(VERSION 3.13) | ||
| 41 | project(apt) | ||
| 42 | -cmake_minimum_required(VERSION 3.4.0) | ||
| 43 | # Generic header locations | ||
| 44 | include_directories(${PROJECT_BINARY_DIR}/include) | ||
| 45 | |||
| 46 | -- | ||
| 47 | GitLab | ||
diff --git a/meta/recipes-devtools/apt/apt/0001-Remove-using-std-binary_function.patch b/meta/recipes-devtools/apt/apt/0001-Remove-using-std-binary_function.patch deleted file mode 100644 index 15b036b90d..0000000000 --- a/meta/recipes-devtools/apt/apt/0001-Remove-using-std-binary_function.patch +++ /dev/null | |||
| @@ -1,87 +0,0 @@ | |||
| 1 | From e91fb0618ce0a5d42f239d0fca602544858f0819 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Tue, 16 Aug 2022 08:44:18 -0700 | ||
| 4 | Subject: [PATCH] Remove using std::binary_function | ||
| 5 | |||
| 6 | std::binary_function and std::unary_function are deprecated since c++11 | ||
| 7 | and removed in c++17, therefore remove it and use lambda functions to get same | ||
| 8 | functionality implemented. | ||
| 9 | |||
| 10 | Upstream-Status: Submitted [https://salsa.debian.org/apt-team/apt/-/merge_requests/253] | ||
| 11 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 12 | --- | ||
| 13 | ftparchive/apt-ftparchive.cc | 33 ++++++++++----------------------- | ||
| 14 | 1 file changed, 10 insertions(+), 23 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/ftparchive/apt-ftparchive.cc b/ftparchive/apt-ftparchive.cc | ||
| 17 | index 0f6587281..0a253b12b 100644 | ||
| 18 | --- a/ftparchive/apt-ftparchive.cc | ||
| 19 | +++ b/ftparchive/apt-ftparchive.cc | ||
| 20 | @@ -48,6 +48,11 @@ | ||
| 21 | using namespace std; | ||
| 22 | unsigned Quiet = 0; | ||
| 23 | |||
| 24 | +auto ContentsCompare = [](const auto &a, const auto &b) { return a.ContentsMTime < b.ContentsMTime; }; | ||
| 25 | +auto DBCompare = [](const auto &a, const auto &b) { return a.BinCacheDB < b.BinCacheDB; }; | ||
| 26 | +auto SrcDBCompare = [](const auto &a, const auto &b) { return a.SrcCacheDB < b.SrcCacheDB; }; | ||
| 27 | + | ||
| 28 | + | ||
| 29 | static struct timeval GetTimevalFromSteadyClock() /*{{{*/ | ||
| 30 | { | ||
| 31 | auto const Time = std::chrono::steady_clock::now().time_since_epoch(); | ||
| 32 | @@ -116,24 +121,6 @@ struct PackageMap | ||
| 33 | bool SrcDone; | ||
| 34 | time_t ContentsMTime; | ||
| 35 | |||
| 36 | - struct ContentsCompare | ||
| 37 | - { | ||
| 38 | - inline bool operator() (const PackageMap &x,const PackageMap &y) | ||
| 39 | - {return x.ContentsMTime < y.ContentsMTime;}; | ||
| 40 | - }; | ||
| 41 | - | ||
| 42 | - struct DBCompare | ||
| 43 | - { | ||
| 44 | - inline bool operator() (const PackageMap &x,const PackageMap &y) | ||
| 45 | - {return x.BinCacheDB < y.BinCacheDB;}; | ||
| 46 | - }; | ||
| 47 | - | ||
| 48 | - struct SrcDBCompare | ||
| 49 | - { | ||
| 50 | - inline bool operator() (const PackageMap &x,const PackageMap &y) | ||
| 51 | - {return x.SrcCacheDB < y.SrcCacheDB;}; | ||
| 52 | - }; | ||
| 53 | - | ||
| 54 | void GetGeneral(Configuration &Setup,Configuration &Block); | ||
| 55 | bool GenPackages(Configuration &Setup,struct CacheDB::Stats &Stats); | ||
| 56 | bool GenSources(Configuration &Setup,struct CacheDB::Stats &Stats); | ||
| 57 | @@ -869,7 +856,7 @@ static bool DoGenerateContents(Configuration &Setup, | ||
| 58 | else | ||
| 59 | I->ContentsMTime = A.st_mtime; | ||
| 60 | } | ||
| 61 | - stable_sort(PkgList.begin(),PkgList.end(),PackageMap::ContentsCompare()); | ||
| 62 | + stable_sort(PkgList.begin(),PkgList.end(),ContentsCompare); | ||
| 63 | |||
| 64 | /* Now for Contents.. The process here is to do a make-like dependency | ||
| 65 | check. Each contents file is verified to be newer than the package files | ||
| 66 | @@ -941,8 +928,8 @@ static bool Generate(CommandLine &CmdL) | ||
| 67 | LoadBinDir(PkgList,Setup); | ||
| 68 | |||
| 69 | // Sort by cache DB to improve IO locality. | ||
| 70 | - stable_sort(PkgList.begin(),PkgList.end(),PackageMap::DBCompare()); | ||
| 71 | - stable_sort(PkgList.begin(),PkgList.end(),PackageMap::SrcDBCompare()); | ||
| 72 | + stable_sort(PkgList.begin(),PkgList.end(),DBCompare); | ||
| 73 | + stable_sort(PkgList.begin(),PkgList.end(),SrcDBCompare); | ||
| 74 | |||
| 75 | // Generate packages | ||
| 76 | if (_config->FindB("APT::FTPArchive::ContentsOnly", false) == false) | ||
| 77 | @@ -993,8 +980,8 @@ static bool Clean(CommandLine &CmdL) | ||
| 78 | LoadBinDir(PkgList,Setup); | ||
| 79 | |||
| 80 | // Sort by cache DB to improve IO locality. | ||
| 81 | - stable_sort(PkgList.begin(),PkgList.end(),PackageMap::DBCompare()); | ||
| 82 | - stable_sort(PkgList.begin(),PkgList.end(),PackageMap::SrcDBCompare()); | ||
| 83 | + stable_sort(PkgList.begin(),PkgList.end(),DBCompare); | ||
| 84 | + stable_sort(PkgList.begin(),PkgList.end(),SrcDBCompare); | ||
| 85 | |||
| 86 | string CacheDir = Setup.FindDir("Dir::CacheDir"); | ||
| 87 | |||
diff --git a/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch b/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch index 6f4d5b6e72..43ab6a4cd8 100644 --- a/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch +++ b/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch | |||
| @@ -23,7 +23,7 @@ diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc | |||
| 23 | index 93effa959..4375781d1 100644 | 23 | index 93effa959..4375781d1 100644 |
| 24 | --- a/apt-pkg/deb/dpkgpm.cc | 24 | --- a/apt-pkg/deb/dpkgpm.cc |
| 25 | +++ b/apt-pkg/deb/dpkgpm.cc | 25 | +++ b/apt-pkg/deb/dpkgpm.cc |
| 26 | @@ -1199,12 +1199,6 @@ void pkgDPkgPM::BuildPackagesProgressMap() | 26 | @@ -1210,12 +1210,6 @@ void pkgDPkgPM::BuildPackagesProgressMap() |
| 27 | } | 27 | } |
| 28 | } | 28 | } |
| 29 | } | 29 | } |
| @@ -36,7 +36,7 @@ index 93effa959..4375781d1 100644 | |||
| 36 | } | 36 | } |
| 37 | /*}}}*/ | 37 | /*}}}*/ |
| 38 | void pkgDPkgPM::StartPtyMagic() /*{{{*/ | 38 | void pkgDPkgPM::StartPtyMagic() /*{{{*/ |
| 39 | @@ -1741,7 +1735,8 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress) | 39 | @@ -1752,7 +1746,8 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress) |
| 40 | 40 | ||
| 41 | // support subpressing of triggers processing for special | 41 | // support subpressing of triggers processing for special |
| 42 | // cases like d-i that runs the triggers handling manually | 42 | // cases like d-i that runs the triggers handling manually |
diff --git a/meta/recipes-devtools/apt/apt/0001-aptwebserver.cc-Include-array.patch b/meta/recipes-devtools/apt/apt/0001-aptwebserver.cc-Include-array.patch deleted file mode 100644 index 2c1e617e55..0000000000 --- a/meta/recipes-devtools/apt/apt/0001-aptwebserver.cc-Include-array.patch +++ /dev/null | |||
| @@ -1,30 +0,0 @@ | |||
| 1 | From 5985f366750a73c81c7d86893a2b959b4af062a5 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Wed, 26 May 2021 22:12:46 -0700 | ||
| 4 | Subject: [PATCH] aptwebserver.cc: Include <array> | ||
| 5 | |||
| 6 | This helps getting std::array definition | ||
| 7 | |||
| 8 | Fixes | ||
| 9 | test/interactive-helper/aptwebserver.cc:36:55: error: constexpr variable cannot have non-literal type 'const std::array<std::array<const char *, 2>, 6>' | ||
| 10 | constexpr std::array<std::array<char const *,2>,6> htmlencode = {{ | ||
| 11 | |||
| 12 | Upstream-Status: Submitted [https://github.com/Debian/apt/pull/133] | ||
| 13 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 14 | |||
| 15 | --- | ||
| 16 | test/interactive-helper/aptwebserver.cc | 1 + | ||
| 17 | 1 file changed, 1 insertion(+) | ||
| 18 | |||
| 19 | diff --git a/test/interactive-helper/aptwebserver.cc b/test/interactive-helper/aptwebserver.cc | ||
| 20 | index f4f8d95..361c7a9 100644 | ||
| 21 | --- a/test/interactive-helper/aptwebserver.cc | ||
| 22 | +++ b/test/interactive-helper/aptwebserver.cc | ||
| 23 | @@ -23,6 +23,7 @@ | ||
| 24 | |||
| 25 | #include <array> | ||
| 26 | #include <algorithm> | ||
| 27 | +#include <array> | ||
| 28 | #include <fstream> | ||
| 29 | #include <iostream> | ||
| 30 | #include <list> | ||
diff --git a/meta/recipes-devtools/apt/apt/0001-cmake-Do-not-build-po-files.patch b/meta/recipes-devtools/apt/apt/0001-cmake-Do-not-build-po-files.patch index 036ce35963..08815a3ec4 100644 --- a/meta/recipes-devtools/apt/apt/0001-cmake-Do-not-build-po-files.patch +++ b/meta/recipes-devtools/apt/apt/0001-cmake-Do-not-build-po-files.patch | |||
| @@ -11,14 +11,14 @@ Fixes | |||
| 11 | Upstream-Status: Inappropriate [Cross-compile specific] | 11 | Upstream-Status: Inappropriate [Cross-compile specific] |
| 12 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | 12 | Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| 13 | --- | 13 | --- |
| 14 | CMakeLists.txt | 7 ------- | 14 | CMakeLists.txt | 9 --------- |
| 15 | 1 file changed, 7 deletions(-) | 15 | 1 file changed, 9 deletions(-) |
| 16 | 16 | ||
| 17 | diff --git a/CMakeLists.txt b/CMakeLists.txt | 17 | diff --git a/CMakeLists.txt b/CMakeLists.txt |
| 18 | index be157a55f..54163ae6c 100644 | 18 | index be157a55f..54163ae6c 100644 |
| 19 | --- a/CMakeLists.txt | 19 | --- a/CMakeLists.txt |
| 20 | +++ b/CMakeLists.txt | 20 | +++ b/CMakeLists.txt |
| 21 | @@ -252,15 +252,6 @@ add_subdirectory(ftparchive) | 21 | @@ -257,15 +257,6 @@ add_subdirectory(ftparchive) |
| 22 | add_subdirectory(methods) | 22 | add_subdirectory(methods) |
| 23 | add_subdirectory(test) | 23 | add_subdirectory(test) |
| 24 | 24 | ||
diff --git a/meta/recipes-devtools/apt/apt/0001-fix-compilation-with-musl.patch b/meta/recipes-devtools/apt/apt/0001-fix-compilation-with-musl.patch new file mode 100644 index 0000000000..d3c5fe658e --- /dev/null +++ b/meta/recipes-devtools/apt/apt/0001-fix-compilation-with-musl.patch | |||
| @@ -0,0 +1,49 @@ | |||
| 1 | From a6b024ceb71c43977838d625f5ac64b7e4815a56 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Gyorgy Sarvari <skandigraun@gmail.com> | ||
| 3 | Date: Thu, 28 Aug 2025 08:11:58 +0200 | ||
| 4 | Subject: [PATCH] fix compilation with musl | ||
| 5 | |||
| 6 | The basename() function requires the libgen.h header when | ||
| 7 | compiling with musl-libc, otherwise it complains: | ||
| 8 | |||
| 9 | error: 'basename' was not declared in this scope; did you mean 'rename'? | ||
| 10 | |||
| 11 | Also, musl's basename requires char* instead of const char* argument: | ||
| 12 | |||
| 13 | error: invalid conversion from 'const char*' to 'char*' [-fpermissive] | ||
| 14 | |||
| 15 | The musl implementation of basename modifies the argument only in case | ||
| 16 | it is a folder path (it cuts off the trailing slashes). In our case, | ||
| 17 | when argv[0] is passed, it is always a filename without a trailing | ||
| 18 | slash, so just cast the argument. | ||
| 19 | |||
| 20 | Upstream-Status: Submitted [https://salsa.debian.org/apt-team/apt/-/merge_requests/508] | ||
| 21 | Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com> | ||
| 22 | --- | ||
| 23 | cmdline/apt-internal-solver.cc | 3 ++- | ||
| 24 | 1 file changed, 2 insertions(+), 1 deletion(-) | ||
| 25 | |||
| 26 | diff --git a/cmdline/apt-internal-solver.cc b/cmdline/apt-internal-solver.cc | ||
| 27 | index ceedd96c7..74ed38c50 100644 | ||
| 28 | --- a/cmdline/apt-internal-solver.cc | ||
| 29 | +++ b/cmdline/apt-internal-solver.cc | ||
| 30 | @@ -35,6 +35,7 @@ | ||
| 31 | #include <list> | ||
| 32 | #include <sstream> | ||
| 33 | #include <string> | ||
| 34 | +#include <libgen.h> | ||
| 35 | #include <unistd.h> | ||
| 36 | |||
| 37 | #include <apti18n.h> | ||
| 38 | @@ -119,7 +120,7 @@ int main(int argc,const char *argv[]) /*{{{*/ | ||
| 39 | _config->Set("Debug::EDSP::WriteSolution", true); | ||
| 40 | |||
| 41 | _config->Set("APT::System", "Debian APT solver interface"); | ||
| 42 | - if (strcmp(basename(argv[0]), "solver3") == 0) | ||
| 43 | + if (strcmp(basename((char*)argv[0]), "solver3") == 0) | ||
| 44 | _config->Set("APT::Solver", "3.0"); | ||
| 45 | else if (_config->Find("APT::Solver") != "3.0") | ||
| 46 | _config->Set("APT::Solver", "internal"); | ||
| 47 | -- | ||
| 48 | 2.39.5 | ||
| 49 | |||
diff --git a/meta/recipes-devtools/apt/apt/0001-strutl-Add-missing-include-cstdint-gcc-15.patch b/meta/recipes-devtools/apt/apt/0001-strutl-Add-missing-include-cstdint-gcc-15.patch deleted file mode 100644 index b86ed8bb92..0000000000 --- a/meta/recipes-devtools/apt/apt/0001-strutl-Add-missing-include-cstdint-gcc-15.patch +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | From 9da1b0dbdcc90455bc9de49f73a96e7d18f83493 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Julian Andres Klode <julian.klode@canonical.com> | ||
| 3 | Date: Tue, 18 Feb 2025 10:29:40 +0100 | ||
| 4 | Subject: [PATCH] strutl: Add missing #include <cstdint> [gcc 15] | ||
| 5 | |||
| 6 | Closes: #1096322 | ||
| 7 | |||
| 8 | Upstream-Status: Backport [https://salsa.debian.org/apt-team/apt/-/commit/f82dcd7e4ebb3f70d28e9feb3621676f8c0cc024] | ||
| 9 | |||
| 10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 11 | --- | ||
| 12 | apt-pkg/contrib/strutl.cc | 1 + | ||
| 13 | 1 file changed, 1 insertion(+) | ||
| 14 | |||
| 15 | diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc | ||
| 16 | index 67100f1..c0a1cbc 100644 | ||
| 17 | --- a/apt-pkg/contrib/strutl.cc | ||
| 18 | +++ b/apt-pkg/contrib/strutl.cc | ||
| 19 | @@ -26,6 +26,7 @@ | ||
| 20 | |||
| 21 | #include <algorithm> | ||
| 22 | #include <array> | ||
| 23 | +#include <cstdint> | ||
| 24 | #include <iomanip> | ||
| 25 | #include <limits> | ||
| 26 | #include <locale> | ||
diff --git a/meta/recipes-devtools/apt/apt_2.6.1.bb b/meta/recipes-devtools/apt/apt_3.0.3.bb index b039599395..03a6869393 100644 --- a/meta/recipes-devtools/apt/apt_2.6.1.bb +++ b/meta/recipes-devtools/apt/apt_3.0.3.bb | |||
| @@ -8,14 +8,9 @@ SECTION = "base" | |||
| 8 | SRC_URI = "${DEBIAN_MIRROR}/main/a/apt/${BPN}_${PV}.tar.xz \ | 8 | SRC_URI = "${DEBIAN_MIRROR}/main/a/apt/${BPN}_${PV}.tar.xz \ |
| 9 | file://triehash \ | 9 | file://triehash \ |
| 10 | file://0001-Disable-documentation-directory-altogether.patch \ | 10 | file://0001-Disable-documentation-directory-altogether.patch \ |
| 11 | file://0001-Fix-musl-build.patch \ | ||
| 12 | file://0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch \ | 11 | file://0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch \ |
| 13 | file://0001-cmake-Do-not-build-po-files.patch \ | 12 | file://0001-cmake-Do-not-build-po-files.patch \ |
| 14 | file://0001-aptwebserver.cc-Include-array.patch \ | 13 | file://0001-fix-compilation-with-musl.patch \ |
| 15 | file://0001-Remove-using-std-binary_function.patch \ | ||
| 16 | file://0001-strutl-Add-missing-include-cstdint-gcc-15.patch \ | ||
| 17 | file://0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch \ | ||
| 18 | file://0001-Fix-compilation-error-with-clang-libc-18.patch \ | ||
| 19 | " | 14 | " |
| 20 | 15 | ||
| 21 | SRC_URI:append:class-native = " \ | 16 | SRC_URI:append:class-native = " \ |
| @@ -28,7 +23,7 @@ SRC_URI:append:class-nativesdk = " \ | |||
| 28 | file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \ | 23 | file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \ |
| 29 | " | 24 | " |
| 30 | 25 | ||
| 31 | SRC_URI[sha256sum] = "86b888c901fa2e78f1bf52a2aaa2f400ff82a472b94ff0ac6631939ee68fa6fd" | 26 | SRC_URI[sha256sum] = "5b5f6f6d26121742a83aa80d4ed0eb0c6ce9bea259518db412edefd95760e4ef" |
| 32 | LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263" | 27 | LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263" |
| 33 | 28 | ||
| 34 | # the package is taken from snapshots.debian.org; that source is static and goes stale | 29 | # the package is taken from snapshots.debian.org; that source is static and goes stale |
| @@ -47,7 +42,7 @@ USERADD_PARAM:${PN} = "--system --home /nonexistent --no-create-home _apt" | |||
| 47 | 42 | ||
| 48 | BBCLASSEXTEND = "native nativesdk" | 43 | BBCLASSEXTEND = "native nativesdk" |
| 49 | 44 | ||
| 50 | DEPENDS += "db gnutls lz4 zlib bzip2 xz libgcrypt xxhash" | 45 | DEPENDS += "db lz4 zlib bzip2 xz xxhash openssl" |
| 51 | 46 | ||
| 52 | EXTRA_OECMAKE:append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False \ | 47 | EXTRA_OECMAKE:append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False \ |
| 53 | -DDPKG_DATADIR=${datadir}/dpkg \ | 48 | -DDPKG_DATADIR=${datadir}/dpkg \ |
| @@ -55,8 +50,14 @@ EXTRA_OECMAKE:append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False \ | |||
| 55 | -DCMAKE_DISABLE_FIND_PACKAGE_ZSTD=True \ | 50 | -DCMAKE_DISABLE_FIND_PACKAGE_ZSTD=True \ |
| 56 | -DCMAKE_DISABLE_FIND_PACKAGE_SECCOMP=True \ | 51 | -DCMAKE_DISABLE_FIND_PACKAGE_SECCOMP=True \ |
| 57 | -DWITH_TESTS=False \ | 52 | -DWITH_TESTS=False \ |
| 53 | -DCOMMON_ARCH=${DPKG_ARCH} \ | ||
| 58 | " | 54 | " |
| 59 | 55 | ||
| 56 | PACKAGECONFIG ??= "" | ||
| 57 | # usrmerge displays a runtime warning during package installation in case | ||
| 58 | # the system doesn't have merged /usr folders. | ||
| 59 | PACKAGECONFIG[usrmerge] = "-DREQUIRE_MERGED_USR=ON,-DREQUIRE_MERGED_USR=OFF" | ||
| 60 | |||
| 60 | do_configure:prepend() { | 61 | do_configure:prepend() { |
| 61 | echo "set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH )" >> ${WORKDIR}/toolchain.cmake | 62 | echo "set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH )" >> ${WORKDIR}/toolchain.cmake |
| 62 | } | 63 | } |
