mirror of
https://git.yoctoproject.org/poky
synced 2026-09-29 07:36:20 +02:00
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>
This commit is contained in:
committed by
Richard Purdie
parent
468bcd1950
commit
64857a709b
@@ -54,7 +54,14 @@ class AptRepoTest(AptTest):
|
|||||||
def setup_key(self):
|
def setup_key(self):
|
||||||
# the key is found on the target /etc/pki/packagefeed-gpg/
|
# the key is found on the target /etc/pki/packagefeed-gpg/
|
||||||
# named PACKAGEFEED-GPG-KEY-poky-branch
|
# named PACKAGEFEED-GPG-KEY-poky-branch
|
||||||
self.target.run('cd %s; apt-key add P*' % ('/etc/pki/packagefeed-gpg'))
|
# copy it to /etc/apt/keyrings/PACKAGEFEED-GPG-KEY-poky-branch.asc, and
|
||||||
|
# set it as the signing key for the repos
|
||||||
|
cmd = "KEY_FILE_PATH=`realpath /etc/pki/packagefeed-gpg/P*`; "
|
||||||
|
cmd += "KEY_FILE_NAME=`basename $KEY_FILE_PATH`; "
|
||||||
|
cmd += "mkdir -p /etc/apt/keyrings; "
|
||||||
|
cmd += "cp $KEY_FILE_PATH /etc/apt/keyrings/${KEY_FILE_NAME}.asc; "
|
||||||
|
cmd += 'sed -i "s|^deb |deb \[signed-by=/etc/apt/keyrings/${KEY_FILE_NAME}.asc\] |g" /etc/apt/sources.list'
|
||||||
|
self.target.run(cmd)
|
||||||
|
|
||||||
@skipIfNotFeature('package-management',
|
@skipIfNotFeature('package-management',
|
||||||
'Test requires package-management to be in IMAGE_FEATURES')
|
'Test requires package-management to be in IMAGE_FEATURES')
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|||||||
index 2cd4f8e..4759812 100644
|
index 2cd4f8e..4759812 100644
|
||||||
--- a/CMakeLists.txt
|
--- a/CMakeLists.txt
|
||||||
+++ b/CMakeLists.txt
|
+++ b/CMakeLists.txt
|
||||||
@@ -21,9 +21,9 @@ set(CMAKE_EXE_LINKER_FLAGS_COVERAGE "-lgcov")
|
@@ -28,9 +28,9 @@ set(CMAKE_EXE_LINKER_FLAGS_COVERAGE "-lgcov")
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS_COVERAGE "-lgcov")
|
set(CMAKE_SHARED_LINKER_FLAGS_COVERAGE "-lgcov")
|
||||||
|
|
||||||
# Work around bug in GNUInstallDirs
|
# Work around bug in GNUInstallDirs
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|||||||
index 668e2d762..62f441bfa 100644
|
index 668e2d762..62f441bfa 100644
|
||||||
--- a/CMakeLists.txt
|
--- a/CMakeLists.txt
|
||||||
+++ b/CMakeLists.txt
|
+++ b/CMakeLists.txt
|
||||||
@@ -246,7 +246,7 @@ add_subdirectory(apt-private)
|
@@ -251,7 +251,7 @@ add_subdirectory(apt-private)
|
||||||
endif()
|
endif()
|
||||||
add_subdirectory(cmdline)
|
add_subdirectory(cmdline)
|
||||||
add_subdirectory(completions)
|
add_subdirectory(completions)
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ diff --git a/apt-pkg/init.cc b/apt-pkg/init.cc
|
|||||||
index b9d9b15d2..1725c5966 100644
|
index b9d9b15d2..1725c5966 100644
|
||||||
--- a/apt-pkg/init.cc
|
--- a/apt-pkg/init.cc
|
||||||
+++ b/apt-pkg/init.cc
|
+++ b/apt-pkg/init.cc
|
||||||
@@ -281,8 +281,8 @@ bool pkgInitSystem(Configuration &Cnf,pkgSystem *&Sys)
|
@@ -295,8 +295,8 @@ bool pkgInitSystem(Configuration &Cnf,pkgSystem *&Sys)
|
||||||
return _error->Error(_("Unable to determine a suitable packaging system type"));
|
return _error->Error(_("Unable to determine a suitable packaging system type"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
From b4488583424b33f51cb031562a9e8df820ffda23 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Chongyun Lee <licy183@termux.dev>
|
|
||||||
Date: Thu, 15 Aug 2024 21:31:24 +0800
|
|
||||||
Subject: [PATCH] Fix compilation error with clang/libc++ 18
|
|
||||||
|
|
||||||
Upstream-Status: Backport [https://salsa.debian.org/apt-team/apt/-/commit/b4488583424b33f51cb031562a9e8df820ffda23]
|
|
||||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
||||||
---
|
|
||||||
apt-pkg/cacheset.h | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/apt-pkg/cacheset.h b/apt-pkg/cacheset.h
|
|
||||||
index 5dbb9bf08..1c67a65d6 100644
|
|
||||||
--- a/apt-pkg/cacheset.h
|
|
||||||
+++ b/apt-pkg/cacheset.h
|
|
||||||
@@ -218,11 +218,11 @@ public:
|
|
||||||
operator container_iterator(void) const { return _iter; }
|
|
||||||
inline iterator_type& operator++() { ++_iter; return static_cast<iterator_type&>(*this); }
|
|
||||||
inline iterator_type operator++(int) { iterator_type tmp(*this); operator++(); return tmp; }
|
|
||||||
- inline iterator_type operator+(typename container_iterator::difference_type const &n) { return iterator_type(_iter + n); }
|
|
||||||
+ inline iterator_type operator+(typename container_iterator::difference_type const &n) const { return iterator_type(_iter + n); }
|
|
||||||
inline iterator_type operator+=(typename container_iterator::difference_type const &n) { _iter += n; return static_cast<iterator_type&>(*this); }
|
|
||||||
inline iterator_type& operator--() { --_iter;; return static_cast<iterator_type&>(*this); }
|
|
||||||
inline iterator_type operator--(int) { iterator_type tmp(*this); operator--(); return tmp; }
|
|
||||||
- inline iterator_type operator-(typename container_iterator::difference_type const &n) { return iterator_type(_iter - n); }
|
|
||||||
+ inline iterator_type operator-(typename container_iterator::difference_type const &n) const { return iterator_type(_iter - n); }
|
|
||||||
inline typename container_iterator::difference_type operator-(iterator_type const &b) { return (_iter - b._iter); }
|
|
||||||
inline iterator_type operator-=(typename container_iterator::difference_type const &n) { _iter -= n; return static_cast<iterator_type&>(*this); }
|
|
||||||
inline bool operator!=(iterator_type const &i) const { return _iter != i._iter; }
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
From 6b8547161b902b01b639d05a4cdf849d7694556f 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] apt-pkg/contrib/srvrec.h: Explicitly include sys/types.h
|
|
||||||
|
|
||||||
This avoids type errors with musl C library.
|
|
||||||
|
|
||||||
Upstream-Status: Submitted [https://salsa.debian.org/apt-team/apt/-/merge_requests/200]
|
|
||||||
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
|
|
||||||
---
|
|
||||||
apt-pkg/contrib/srvrec.h | 1 +
|
|
||||||
1 file changed, 1 insertion(+)
|
|
||||||
|
|
||||||
diff --git a/apt-pkg/contrib/srvrec.h b/apt-pkg/contrib/srvrec.h
|
|
||||||
index e5d0f43..2010184 100644
|
|
||||||
--- a/apt-pkg/contrib/srvrec.h
|
|
||||||
+++ b/apt-pkg/contrib/srvrec.h
|
|
||||||
@@ -9,6 +9,7 @@
|
|
||||||
#ifndef SRVREC_H
|
|
||||||
#define SRVREC_H
|
|
||||||
|
|
||||||
+#include <sys/types.h>
|
|
||||||
#include <string>
|
|
||||||
#include <vector>
|
|
||||||
#include <arpa/nameser.h>
|
|
||||||
--
|
|
||||||
2.20.1
|
|
||||||
|
|
||||||
@@ -1,47 +0,0 @@
|
|||||||
From dc7a8b3050a2a43f49515a03ae19713dfced75dc Mon Sep 17 00:00:00 2001
|
|
||||||
From: David Kalnischkies <david@kalnischkies.de>
|
|
||||||
Date: Sat, 18 Nov 2023 13:10:05 +0000
|
|
||||||
Subject: [PATCH] Raise cmake_minimum_required to 3.13 to avoid warnings
|
|
||||||
|
|
||||||
CMake Deprecation Warning at CMakeLists.txt:6 (cmake_minimum_required):
|
|
||||||
Compatibility with CMake < 3.5 will be removed from a future version of
|
|
||||||
CMake.
|
|
||||||
|
|
||||||
Update the VERSION argument <min> value or use a ...<max> suffix to tell
|
|
||||||
CMake that the project does not need compatibility with older versions.
|
|
||||||
|
|
||||||
Picking 3.13 here is a semi-random choice to avoid raising the requirement
|
|
||||||
too much needlessly while also hopefully avoiding needing to raise it
|
|
||||||
soon again based on the referenced mail.
|
|
||||||
|
|
||||||
While we are at it, lets also fix the other spewed warning:
|
|
||||||
|
|
||||||
CMake Warning (dev) at CMakeLists.txt:5 (project):
|
|
||||||
cmake_minimum_required() should be called prior to this top-level project()
|
|
||||||
call. Please see the cmake-commands(7) manual for usage documentation of
|
|
||||||
both commands.
|
|
||||||
|
|
||||||
References: https://lists.debian.org/msgid-search/20230617162957.6pklb6632zf4nijc@mail.gaussglocke.de
|
|
||||||
|
|
||||||
Upstream-Status: Backport [https://salsa.debian.org/apt-team/apt/-/commit/dc7a8b3050a2a43f49515a03ae19713dfced75dc]
|
|
||||||
Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
|
|
||||||
---
|
|
||||||
CMakeLists.txt | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
||||||
index 62182cddf..dae12e7c3 100644
|
|
||||||
--- a/CMakeLists.txt
|
|
||||||
+++ b/CMakeLists.txt
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
# Licensed under the same terms as APT; i.e. GPL 2 or later.
|
|
||||||
|
|
||||||
# set minimum version
|
|
||||||
+cmake_minimum_required(VERSION 3.13)
|
|
||||||
project(apt)
|
|
||||||
-cmake_minimum_required(VERSION 3.4.0)
|
|
||||||
# Generic header locations
|
|
||||||
include_directories(${PROJECT_BINARY_DIR}/include)
|
|
||||||
|
|
||||||
--
|
|
||||||
GitLab
|
|
||||||
@@ -1,87 +0,0 @@
|
|||||||
From e91fb0618ce0a5d42f239d0fca602544858f0819 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Khem Raj <raj.khem@gmail.com>
|
|
||||||
Date: Tue, 16 Aug 2022 08:44:18 -0700
|
|
||||||
Subject: [PATCH] Remove using std::binary_function
|
|
||||||
|
|
||||||
std::binary_function and std::unary_function are deprecated since c++11
|
|
||||||
and removed in c++17, therefore remove it and use lambda functions to get same
|
|
||||||
functionality implemented.
|
|
||||||
|
|
||||||
Upstream-Status: Submitted [https://salsa.debian.org/apt-team/apt/-/merge_requests/253]
|
|
||||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
||||||
---
|
|
||||||
ftparchive/apt-ftparchive.cc | 33 ++++++++++-----------------------
|
|
||||||
1 file changed, 10 insertions(+), 23 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/ftparchive/apt-ftparchive.cc b/ftparchive/apt-ftparchive.cc
|
|
||||||
index 0f6587281..0a253b12b 100644
|
|
||||||
--- a/ftparchive/apt-ftparchive.cc
|
|
||||||
+++ b/ftparchive/apt-ftparchive.cc
|
|
||||||
@@ -48,6 +48,11 @@
|
|
||||||
using namespace std;
|
|
||||||
unsigned Quiet = 0;
|
|
||||||
|
|
||||||
+auto ContentsCompare = [](const auto &a, const auto &b) { return a.ContentsMTime < b.ContentsMTime; };
|
|
||||||
+auto DBCompare = [](const auto &a, const auto &b) { return a.BinCacheDB < b.BinCacheDB; };
|
|
||||||
+auto SrcDBCompare = [](const auto &a, const auto &b) { return a.SrcCacheDB < b.SrcCacheDB; };
|
|
||||||
+
|
|
||||||
+
|
|
||||||
static struct timeval GetTimevalFromSteadyClock() /*{{{*/
|
|
||||||
{
|
|
||||||
auto const Time = std::chrono::steady_clock::now().time_since_epoch();
|
|
||||||
@@ -116,24 +121,6 @@ struct PackageMap
|
|
||||||
bool SrcDone;
|
|
||||||
time_t ContentsMTime;
|
|
||||||
|
|
||||||
- struct ContentsCompare
|
|
||||||
- {
|
|
||||||
- inline bool operator() (const PackageMap &x,const PackageMap &y)
|
|
||||||
- {return x.ContentsMTime < y.ContentsMTime;};
|
|
||||||
- };
|
|
||||||
-
|
|
||||||
- struct DBCompare
|
|
||||||
- {
|
|
||||||
- inline bool operator() (const PackageMap &x,const PackageMap &y)
|
|
||||||
- {return x.BinCacheDB < y.BinCacheDB;};
|
|
||||||
- };
|
|
||||||
-
|
|
||||||
- struct SrcDBCompare
|
|
||||||
- {
|
|
||||||
- inline bool operator() (const PackageMap &x,const PackageMap &y)
|
|
||||||
- {return x.SrcCacheDB < y.SrcCacheDB;};
|
|
||||||
- };
|
|
||||||
-
|
|
||||||
void GetGeneral(Configuration &Setup,Configuration &Block);
|
|
||||||
bool GenPackages(Configuration &Setup,struct CacheDB::Stats &Stats);
|
|
||||||
bool GenSources(Configuration &Setup,struct CacheDB::Stats &Stats);
|
|
||||||
@@ -869,7 +856,7 @@ static bool DoGenerateContents(Configuration &Setup,
|
|
||||||
else
|
|
||||||
I->ContentsMTime = A.st_mtime;
|
|
||||||
}
|
|
||||||
- stable_sort(PkgList.begin(),PkgList.end(),PackageMap::ContentsCompare());
|
|
||||||
+ stable_sort(PkgList.begin(),PkgList.end(),ContentsCompare);
|
|
||||||
|
|
||||||
/* Now for Contents.. The process here is to do a make-like dependency
|
|
||||||
check. Each contents file is verified to be newer than the package files
|
|
||||||
@@ -941,8 +928,8 @@ static bool Generate(CommandLine &CmdL)
|
|
||||||
LoadBinDir(PkgList,Setup);
|
|
||||||
|
|
||||||
// Sort by cache DB to improve IO locality.
|
|
||||||
- stable_sort(PkgList.begin(),PkgList.end(),PackageMap::DBCompare());
|
|
||||||
- stable_sort(PkgList.begin(),PkgList.end(),PackageMap::SrcDBCompare());
|
|
||||||
+ stable_sort(PkgList.begin(),PkgList.end(),DBCompare);
|
|
||||||
+ stable_sort(PkgList.begin(),PkgList.end(),SrcDBCompare);
|
|
||||||
|
|
||||||
// Generate packages
|
|
||||||
if (_config->FindB("APT::FTPArchive::ContentsOnly", false) == false)
|
|
||||||
@@ -993,8 +980,8 @@ static bool Clean(CommandLine &CmdL)
|
|
||||||
LoadBinDir(PkgList,Setup);
|
|
||||||
|
|
||||||
// Sort by cache DB to improve IO locality.
|
|
||||||
- stable_sort(PkgList.begin(),PkgList.end(),PackageMap::DBCompare());
|
|
||||||
- stable_sort(PkgList.begin(),PkgList.end(),PackageMap::SrcDBCompare());
|
|
||||||
+ stable_sort(PkgList.begin(),PkgList.end(),DBCompare);
|
|
||||||
+ stable_sort(PkgList.begin(),PkgList.end(),SrcDBCompare);
|
|
||||||
|
|
||||||
string CacheDir = Setup.FindDir("Dir::CacheDir");
|
|
||||||
|
|
||||||
@@ -23,7 +23,7 @@ diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc
|
|||||||
index 93effa959..4375781d1 100644
|
index 93effa959..4375781d1 100644
|
||||||
--- a/apt-pkg/deb/dpkgpm.cc
|
--- a/apt-pkg/deb/dpkgpm.cc
|
||||||
+++ b/apt-pkg/deb/dpkgpm.cc
|
+++ b/apt-pkg/deb/dpkgpm.cc
|
||||||
@@ -1199,12 +1199,6 @@ void pkgDPkgPM::BuildPackagesProgressMap()
|
@@ -1210,12 +1210,6 @@ void pkgDPkgPM::BuildPackagesProgressMap()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -36,7 +36,7 @@ index 93effa959..4375781d1 100644
|
|||||||
}
|
}
|
||||||
/*}}}*/
|
/*}}}*/
|
||||||
void pkgDPkgPM::StartPtyMagic() /*{{{*/
|
void pkgDPkgPM::StartPtyMagic() /*{{{*/
|
||||||
@@ -1741,7 +1735,8 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress)
|
@@ -1752,7 +1746,8 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress)
|
||||||
|
|
||||||
// support subpressing of triggers processing for special
|
// support subpressing of triggers processing for special
|
||||||
// cases like d-i that runs the triggers handling manually
|
// cases like d-i that runs the triggers handling manually
|
||||||
|
|||||||
@@ -1,30 +0,0 @@
|
|||||||
From 5985f366750a73c81c7d86893a2b959b4af062a5 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Khem Raj <raj.khem@gmail.com>
|
|
||||||
Date: Wed, 26 May 2021 22:12:46 -0700
|
|
||||||
Subject: [PATCH] aptwebserver.cc: Include <array>
|
|
||||||
|
|
||||||
This helps getting std::array definition
|
|
||||||
|
|
||||||
Fixes
|
|
||||||
test/interactive-helper/aptwebserver.cc:36:55: error: constexpr variable cannot have non-literal type 'const std::array<std::array<const char *, 2>, 6>'
|
|
||||||
constexpr std::array<std::array<char const *,2>,6> htmlencode = {{
|
|
||||||
|
|
||||||
Upstream-Status: Submitted [https://github.com/Debian/apt/pull/133]
|
|
||||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
||||||
|
|
||||||
---
|
|
||||||
test/interactive-helper/aptwebserver.cc | 1 +
|
|
||||||
1 file changed, 1 insertion(+)
|
|
||||||
|
|
||||||
diff --git a/test/interactive-helper/aptwebserver.cc b/test/interactive-helper/aptwebserver.cc
|
|
||||||
index f4f8d95..361c7a9 100644
|
|
||||||
--- a/test/interactive-helper/aptwebserver.cc
|
|
||||||
+++ b/test/interactive-helper/aptwebserver.cc
|
|
||||||
@@ -23,6 +23,7 @@
|
|
||||||
|
|
||||||
#include <array>
|
|
||||||
#include <algorithm>
|
|
||||||
+#include <array>
|
|
||||||
#include <fstream>
|
|
||||||
#include <iostream>
|
|
||||||
#include <list>
|
|
||||||
@@ -11,14 +11,14 @@ Fixes
|
|||||||
Upstream-Status: Inappropriate [Cross-compile specific]
|
Upstream-Status: Inappropriate [Cross-compile specific]
|
||||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||||
---
|
---
|
||||||
CMakeLists.txt | 7 -------
|
CMakeLists.txt | 9 ---------
|
||||||
1 file changed, 7 deletions(-)
|
1 file changed, 9 deletions(-)
|
||||||
|
|
||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
index be157a55f..54163ae6c 100644
|
index be157a55f..54163ae6c 100644
|
||||||
--- a/CMakeLists.txt
|
--- a/CMakeLists.txt
|
||||||
+++ b/CMakeLists.txt
|
+++ b/CMakeLists.txt
|
||||||
@@ -252,15 +252,6 @@ add_subdirectory(ftparchive)
|
@@ -257,15 +257,6 @@ add_subdirectory(ftparchive)
|
||||||
add_subdirectory(methods)
|
add_subdirectory(methods)
|
||||||
add_subdirectory(test)
|
add_subdirectory(test)
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,49 @@
|
|||||||
|
From a6b024ceb71c43977838d625f5ac64b7e4815a56 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Gyorgy Sarvari <skandigraun@gmail.com>
|
||||||
|
Date: Thu, 28 Aug 2025 08:11:58 +0200
|
||||||
|
Subject: [PATCH] fix compilation with musl
|
||||||
|
|
||||||
|
The basename() function requires the libgen.h header when
|
||||||
|
compiling with musl-libc, otherwise it complains:
|
||||||
|
|
||||||
|
error: 'basename' was not declared in this scope; did you mean 'rename'?
|
||||||
|
|
||||||
|
Also, musl's basename requires char* instead of const char* argument:
|
||||||
|
|
||||||
|
error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
|
||||||
|
|
||||||
|
The musl implementation of basename modifies the argument only in case
|
||||||
|
it is a folder path (it cuts off the trailing slashes). In our case,
|
||||||
|
when argv[0] is passed, it is always a filename without a trailing
|
||||||
|
slash, so just cast the argument.
|
||||||
|
|
||||||
|
Upstream-Status: Submitted [https://salsa.debian.org/apt-team/apt/-/merge_requests/508]
|
||||||
|
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
|
||||||
|
---
|
||||||
|
cmdline/apt-internal-solver.cc | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/cmdline/apt-internal-solver.cc b/cmdline/apt-internal-solver.cc
|
||||||
|
index ceedd96c7..74ed38c50 100644
|
||||||
|
--- a/cmdline/apt-internal-solver.cc
|
||||||
|
+++ b/cmdline/apt-internal-solver.cc
|
||||||
|
@@ -35,6 +35,7 @@
|
||||||
|
#include <list>
|
||||||
|
#include <sstream>
|
||||||
|
#include <string>
|
||||||
|
+#include <libgen.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include <apti18n.h>
|
||||||
|
@@ -119,7 +120,7 @@ int main(int argc,const char *argv[]) /*{{{*/
|
||||||
|
_config->Set("Debug::EDSP::WriteSolution", true);
|
||||||
|
|
||||||
|
_config->Set("APT::System", "Debian APT solver interface");
|
||||||
|
- if (strcmp(basename(argv[0]), "solver3") == 0)
|
||||||
|
+ if (strcmp(basename((char*)argv[0]), "solver3") == 0)
|
||||||
|
_config->Set("APT::Solver", "3.0");
|
||||||
|
else if (_config->Find("APT::Solver") != "3.0")
|
||||||
|
_config->Set("APT::Solver", "internal");
|
||||||
|
--
|
||||||
|
2.39.5
|
||||||
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
From 9da1b0dbdcc90455bc9de49f73a96e7d18f83493 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Julian Andres Klode <julian.klode@canonical.com>
|
|
||||||
Date: Tue, 18 Feb 2025 10:29:40 +0100
|
|
||||||
Subject: [PATCH] strutl: Add missing #include <cstdint> [gcc 15]
|
|
||||||
|
|
||||||
Closes: #1096322
|
|
||||||
|
|
||||||
Upstream-Status: Backport [https://salsa.debian.org/apt-team/apt/-/commit/f82dcd7e4ebb3f70d28e9feb3621676f8c0cc024]
|
|
||||||
|
|
||||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
||||||
---
|
|
||||||
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 67100f1..c0a1cbc 100644
|
|
||||||
--- a/apt-pkg/contrib/strutl.cc
|
|
||||||
+++ b/apt-pkg/contrib/strutl.cc
|
|
||||||
@@ -26,6 +26,7 @@
|
|
||||||
|
|
||||||
#include <algorithm>
|
|
||||||
#include <array>
|
|
||||||
+#include <cstdint>
|
|
||||||
#include <iomanip>
|
|
||||||
#include <limits>
|
|
||||||
#include <locale>
|
|
||||||
@@ -8,14 +8,9 @@ SECTION = "base"
|
|||||||
SRC_URI = "${DEBIAN_MIRROR}/main/a/apt/${BPN}_${PV}.tar.xz \
|
SRC_URI = "${DEBIAN_MIRROR}/main/a/apt/${BPN}_${PV}.tar.xz \
|
||||||
file://triehash \
|
file://triehash \
|
||||||
file://0001-Disable-documentation-directory-altogether.patch \
|
file://0001-Disable-documentation-directory-altogether.patch \
|
||||||
file://0001-Fix-musl-build.patch \
|
|
||||||
file://0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch \
|
file://0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch \
|
||||||
file://0001-cmake-Do-not-build-po-files.patch \
|
file://0001-cmake-Do-not-build-po-files.patch \
|
||||||
file://0001-aptwebserver.cc-Include-array.patch \
|
file://0001-fix-compilation-with-musl.patch \
|
||||||
file://0001-Remove-using-std-binary_function.patch \
|
|
||||||
file://0001-strutl-Add-missing-include-cstdint-gcc-15.patch \
|
|
||||||
file://0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch \
|
|
||||||
file://0001-Fix-compilation-error-with-clang-libc-18.patch \
|
|
||||||
"
|
"
|
||||||
|
|
||||||
SRC_URI:append:class-native = " \
|
SRC_URI:append:class-native = " \
|
||||||
@@ -28,7 +23,7 @@ SRC_URI:append:class-nativesdk = " \
|
|||||||
file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \
|
file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \
|
||||||
"
|
"
|
||||||
|
|
||||||
SRC_URI[sha256sum] = "86b888c901fa2e78f1bf52a2aaa2f400ff82a472b94ff0ac6631939ee68fa6fd"
|
SRC_URI[sha256sum] = "5b5f6f6d26121742a83aa80d4ed0eb0c6ce9bea259518db412edefd95760e4ef"
|
||||||
LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||||
|
|
||||||
# the package is taken from snapshots.debian.org; that source is static and goes stale
|
# 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"
|
|||||||
|
|
||||||
BBCLASSEXTEND = "native nativesdk"
|
BBCLASSEXTEND = "native nativesdk"
|
||||||
|
|
||||||
DEPENDS += "db gnutls lz4 zlib bzip2 xz libgcrypt xxhash"
|
DEPENDS += "db lz4 zlib bzip2 xz xxhash openssl"
|
||||||
|
|
||||||
EXTRA_OECMAKE:append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False \
|
EXTRA_OECMAKE:append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False \
|
||||||
-DDPKG_DATADIR=${datadir}/dpkg \
|
-DDPKG_DATADIR=${datadir}/dpkg \
|
||||||
@@ -55,8 +50,14 @@ EXTRA_OECMAKE:append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False \
|
|||||||
-DCMAKE_DISABLE_FIND_PACKAGE_ZSTD=True \
|
-DCMAKE_DISABLE_FIND_PACKAGE_ZSTD=True \
|
||||||
-DCMAKE_DISABLE_FIND_PACKAGE_SECCOMP=True \
|
-DCMAKE_DISABLE_FIND_PACKAGE_SECCOMP=True \
|
||||||
-DWITH_TESTS=False \
|
-DWITH_TESTS=False \
|
||||||
|
-DCOMMON_ARCH=${DPKG_ARCH} \
|
||||||
"
|
"
|
||||||
|
|
||||||
|
PACKAGECONFIG ??= ""
|
||||||
|
# usrmerge displays a runtime warning during package installation in case
|
||||||
|
# the system doesn't have merged /usr folders.
|
||||||
|
PACKAGECONFIG[usrmerge] = "-DREQUIRE_MERGED_USR=ON,-DREQUIRE_MERGED_USR=OFF"
|
||||||
|
|
||||||
do_configure:prepend() {
|
do_configure:prepend() {
|
||||||
echo "set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH )" >> ${WORKDIR}/toolchain.cmake
|
echo "set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH )" >> ${WORKDIR}/toolchain.cmake
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user