mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-28 17:11:34 +02:00
Merge pull request #811 from flatcar/krnowak/sys-packages-dev-glob
Automate updates of system packages: dev-*
This commit is contained in:
commit
391f1d1298
12
.github/workflows/portage-stable-packages-list
vendored
12
.github/workflows/portage-stable-packages-list
vendored
@ -124,6 +124,7 @@ dev-lang/perl
|
||||
dev-lang/python
|
||||
dev-lang/python-exec
|
||||
dev-lang/python-exec-conf
|
||||
dev-lang/yasm
|
||||
|
||||
dev-libs/boost
|
||||
dev-libs/cJSON
|
||||
@ -134,18 +135,28 @@ dev-libs/glib
|
||||
dev-libs/gmp
|
||||
dev-libs/gobject-introspection
|
||||
dev-libs/gobject-introspection-common
|
||||
dev-libs/inih
|
||||
dev-libs/jsoncpp
|
||||
dev-libs/libaio
|
||||
dev-libs/libassuan
|
||||
dev-libs/libbsd
|
||||
dev-libs/libgcrypt
|
||||
dev-libs/libgpg-error
|
||||
dev-libs/libksba
|
||||
dev-libs/libltdl
|
||||
dev-libs/libnl
|
||||
dev-libs/libpcre
|
||||
dev-libs/libpcre2
|
||||
dev-libs/libpipeline
|
||||
dev-libs/libtasn1
|
||||
dev-libs/libusb
|
||||
dev-libs/libuv
|
||||
dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
dev-libs/nettle
|
||||
dev-libs/oniguruma
|
||||
dev-libs/popt
|
||||
dev-libs/userspace-rcu
|
||||
|
||||
dev-perl/File-Slurp
|
||||
dev-perl/Locale-gettext
|
||||
@ -339,6 +350,7 @@ sys-apps/file
|
||||
sys-apps/findutils
|
||||
sys-apps/gawk
|
||||
sys-apps/gentoo-functions
|
||||
sys-apps/gptfdisk
|
||||
sys-apps/help2man
|
||||
sys-apps/i2c-tools
|
||||
sys-apps/iucode_tool
|
||||
|
10
changelog/updates/2023-05-10-sys-packages-dev-glob.md
Normal file
10
changelog/updates/2023-05-10-sys-packages-dev-glob.md
Normal file
@ -0,0 +1,10 @@
|
||||
- inih ([56](https://github.com/benhoyt/inih/releases/tag/r56))
|
||||
- libbsd ([0.11.7](https://lists.freedesktop.org/archives/libbsd/2022-October/000337.html))
|
||||
- libgcrypt ([1.10.1](https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=blob;f=NEWS;h=03132c2a115e35783a782c64777cf5f5b1a2825f;hb=ae0e567820c37f9640440b3cff77d7c185aa6742))
|
||||
- libgpg-error ([1.46](https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgpg-error.git;a=blob;f=NEWS;h=14b0ba97d6ba2b10b3178f2e4a3e24bfc2355bb3;hb=ea031873aa9642831017937fd33e9009d514ee07))
|
||||
- libpcre (8.45)
|
||||
- libpipeline ([1.5.7](https://gitlab.com/libpipeline/libpipeline/-/tags/1.5.7))
|
||||
- libusb ([1.0.26](https://github.com/libusb/libusb/blob/v1.0.26/ChangeLog))
|
||||
- popt ([1.19](https://github.com/rpm-software-management/popt/releases/tag/popt-1.19-release))
|
||||
- userspace-rcu ([0.14.0](https://github.com/urcu/userspace-rcu/blob/v0.13.2/ChangeLog))
|
||||
- gptfdisk ([1.0.9](https://sourceforge.net/p/gptfdisk/code/ci/1d46f3723bc25f5598266f7d9a3548af3cee0c77/tree/NEWS))
|
@ -19,7 +19,9 @@
|
||||
=dev-lang/rust-1.69.0 ~amd64 ~arm64
|
||||
=virtual/rust-1.69.0 ~amd64 ~arm64
|
||||
|
||||
=dev-libs/libgcrypt-1.9.4 ~amd64 ~arm64
|
||||
# Keep versions on both arches in sync.
|
||||
=dev-libs/libbsd-0.11.7-r2 ~arm64
|
||||
=dev-libs/libgcrypt-1.10.1-r3 ~arm64
|
||||
|
||||
# Required for CVE-2023-28484 and CVE-2023-29469
|
||||
=dev-libs/libxml2-2.10.4 ~amd64 ~arm64
|
||||
|
@ -14,8 +14,6 @@ net-misc/curl kerberos telnet
|
||||
net-misc/iputils arping tracepath
|
||||
sys-devel/gettext -git
|
||||
|
||||
sys-apps/gptfdisk -icu
|
||||
|
||||
# for profile migration, needs to be enabled despite the fact it's
|
||||
# enabled by default in the ebuild, because berkdb is disabled
|
||||
# globally in make.defaults.
|
||||
|
@ -1,8 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
<name>Gentoo Base System</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
<name>Gentoo Base System</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">yasm/yasm</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -1 +1 @@
|
||||
DIST inih-53.tar.gz 16984 BLAKE2B 1242e6273c9dd9a11ea026a3495a487b2aa72d8e01f34304d8568c88897ae9c9bb425246f992dc16f4dc2210ec14c597d0ef595cec84ff98a5d6101ee5a643b9 SHA512 99bc40c294b521e9973184bfb30d60c129735991f33b387b3d023827a34672b0489eadf91e38895ea725168dbc7b27bb02c1975debe7573b4b209d0e947b2100
|
||||
DIST inih-56.tar.gz 18458 BLAKE2B 51935959a9eb4e393b17302f0932a232963883680f10d404c63d5f2ebbd3bf0b740f44edfa1b2541d0e130016eb853ebedf68a1c40797f658496e2a8c966af3d SHA512 ff3e0910990f73e5b21fddc84737ab346279f201c86c7ad864c6cad9de5bde57c3e0a433b9b8f3585b7d86feaae2ea074185f92891dcadc98c274c1c0745d2d2
|
||||
|
@ -1,37 +1,30 @@
|
||||
# Copyright 2020-2021 Gentoo Authors
|
||||
# Copyright 2020-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
inherit meson-multilib
|
||||
# Tests not wired up to meson and don't seem to be intended for downstream use yet
|
||||
# e.g. hardcoding gcc, just a shell script
|
||||
|
||||
inherit meson
|
||||
|
||||
DESCRIPTION="inih (INI not invented here) simple .INI file parser"
|
||||
HOMEPAGE="https://github.com/benhoyt/inih"
|
||||
|
||||
SRC_URI="https://github.com/benhoyt/inih/archive/r${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
S="${WORKDIR}"/inih-r${PV}
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
|
||||
IUSE="static-libs"
|
||||
DOCS=( README.md )
|
||||
|
||||
S="${WORKDIR}/inih-r${PV}"
|
||||
|
||||
multilib_src_configure() {
|
||||
src_configure() {
|
||||
local emesonargs=(
|
||||
-Ddefault_library=$(usex static-libs both shared)
|
||||
-Ddefault_library=shared
|
||||
-Ddistro_install=true
|
||||
-Dwith_INIReader=true
|
||||
)
|
||||
|
||||
meson_src_configure
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
local DOCS=(
|
||||
LICENSE.txt
|
||||
README.md
|
||||
)
|
||||
einstalldocs
|
||||
}
|
@ -1,3 +1 @@
|
||||
DIST libassuan-2.5.3.tar.bz2 572348 BLAKE2B ae3a5a9a03e85d62cf87271cd4a0718a2b89a4f90ea814837913e4b2bb6e5af9746e766d99685cc0cc3a801efaee597e491a2bc03d42ac26059580ea4680fd7a SHA512 e7ccb651ea75b07b2e687d48d86d0ab83cba8e2af7f30da2aec794808e13e6ec93f21d607db50d3431f1c23cb3a07a2793b71170e69fa2f5a82cffb81961f617
|
||||
DIST libassuan-2.5.4.tar.bz2 574039 BLAKE2B 2eec42c47840741a4726fc35c3ed04300e5fbcd37f808b121534aeaa04d0d0f609a30ad48cfbe33a81ee4b2ebbb822b9a48a5c602268f1b802bf5d7d19d72e9c SHA512 764993d5311c24f0c0f970016e903e1a16783a2050c42072dbc1bc4f350f119e53b0be17ed6df25a0086bc9f8c25ee4f3134330577968480997263f95e05594f
|
||||
DIST libassuan-2.5.5.tar.bz2 572263 BLAKE2B 24952e97c757b97c387ab4c2c4bf7b040f2874e9326c129805c7f5326fa14d80e083b0842e336a635531a2c8d4a66d428c816bae6b175f1c4518add1ffa3554d SHA512 70117f77aa43bbbe0ed28da5ef23834c026780a74076a92ec775e30f851badb423e9a2cb9e8d142c94e4f6f8a794988c1b788fd4bd2271e562071adf0ab16403
|
||||
|
@ -1,48 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit libtool
|
||||
|
||||
DESCRIPTION="IPC library used by GnuPG and GPGME"
|
||||
HOMEPAGE="https://www.gnupg.org/related_software/libassuan/index.en.html"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-3 LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
|
||||
# Note: On each bump, update dep bounds on each version from configure.ac!
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.8"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
elibtoolize
|
||||
|
||||
# fix standards conflict
|
||||
sed -i \
|
||||
-e '/_XOPEN_SOURCE/s/500/600/' \
|
||||
-e 's/_XOPEN_SOURCE_EXTENDED/_NO&/' \
|
||||
-e 's/__EXTENSIONS__/_NO&/' \
|
||||
configure || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
--disable-static
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
# ppl need to use libassuan-config for --cflags and --libs
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
}
|
@ -1,48 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit libtool
|
||||
|
||||
DESCRIPTION="IPC library used by GnuPG and GPGME"
|
||||
HOMEPAGE="https://www.gnupg.org/related_software/libassuan/index.en.html"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-3 LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
|
||||
# Note: On each bump, update dep bounds on each version from configure.ac!
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.17"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
elibtoolize
|
||||
|
||||
# fix standards conflict
|
||||
sed -i \
|
||||
-e '/_XOPEN_SOURCE/s/500/600/' \
|
||||
-e 's/_XOPEN_SOURCE_EXTENDED/_NO&/' \
|
||||
-e 's/__EXTENSIONS__/_NO&/' \
|
||||
configure || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
--disable-static
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
# ppl need to use libassuan-config for --cflags and --libs
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
@ -11,10 +11,11 @@ SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-3 LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
|
||||
# Note: On each bump, update dep bounds on each version from configure.ac!
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.17"
|
||||
# We need >= 1.28 for gpgrt_malloc
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.28"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
|
@ -1,11 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<name>Lars Wendler</name>
|
||||
<email>polynomial-c@gentoo.org</email>
|
||||
</maintainer>
|
||||
<longdescription>
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
<name>Gentoo Base System</name>
|
||||
</maintainer>
|
||||
<longdescription>
|
||||
In an ideal world, Assuan is irrelevant. Assuan's primary use is to
|
||||
allow a client to interact with a non-persistent server. Using Assuan,
|
||||
this is accomplished by forking a subprocess and communicating with it
|
||||
@ -15,5 +15,5 @@ across several transactions: not only is there a penalty for an
|
||||
increased number of context switches, but also a significant amount of
|
||||
data is MEMCPYed from the client to a file descriptor and from the file
|
||||
descriptor to the server.
|
||||
</longdescription>
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
||||
|
@ -1,2 +1,2 @@
|
||||
DIST libbsd-0.11.3.tar.xz 399712 BLAKE2B 1af04b8fcbc0bfa59fba549639d61a33ac934fe7ee42b506d1b0452e0b836b0bfdd3d8739de90465be46fe6a9d326a2d11bcf72280aa19ccba81db5da6d63d89 SHA512 a7015ea1ffa3766b1a4690526a25231898ad8275149b31fb6801082450172249997c36165626d101ffce53b59767a46676eebc0806426922fe4e773a0376c1f5
|
||||
DIST libbsd-0.11.5.tar.xz 409972 BLAKE2B 00c89ad1be351e7851538eac2744f5aef87b5937330d514d17af8a20a04bc6eab0e2bda61d0080da1d1439306b3b191ab68b4bc4cd8558ff0adfe402bfbf5b52 SHA512 c52c19eddd53630aca14f9f6221f7b84aa9cc798b4bb91e867822b161793313aab872ac1c0350d29312a72fee6e2061f3910ff918b724ec171d8c9de5837c841
|
||||
DIST libbsd-0.11.7.tar.xz 418508 BLAKE2B 2ff0aa951c5b37a58ab101aade52d077d52f3695bb8535c99dec89659775501d93af16f164fef946776f445ee88a276d00870f64cb3fef58942ce26af6d2eaa9 SHA512 51fda4724f41dd8a4628afd58c21236a7588d9045e337e06eeabf83805a9aaaa53705441ca901ad11f1c65f18e881523bdc97721a7d3d6a5cced27f2450d09a2
|
||||
DIST libbsd-0.11.7.tar.xz.asc 833 BLAKE2B 925cd4f5b68c0dccceb476cb188bb5a8185ad77895b9b458ff6819ae241dbd8cbf1c18dd12d10b90b3a9ea3f9e065b44566d1a908d0c111ecbd435434b922a66 SHA512 bdcce69ee261039900896c5be48659f1b6b809f3a6e8a5220aac30a6687926ac29e478a3ea737727d077d6575ee11b86eed896932568fdd261a9aaeb46d695b6
|
||||
|
32
sdk_container/src/third_party/portage-stable/dev-libs/libbsd/files/libbsd-0.11.7-musl-lfs.patch
vendored
Normal file
32
sdk_container/src/third_party/portage-stable/dev-libs/libbsd/files/libbsd-0.11.7-musl-lfs.patch
vendored
Normal file
@ -0,0 +1,32 @@
|
||||
https://bugs.gentoo.org/905912
|
||||
https://gitlab.freedesktop.org/libbsd/libbsd/-/merge_requests/24
|
||||
|
||||
From c36c29f014b0ef56a3aef984fa40b0e100b6f419 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Thu, 15 Dec 2022 09:02:22 -0800
|
||||
Subject: [PATCH] funopen: Replace off64_t with off_t in funopen_seek
|
||||
|
||||
AC_SYS_LARGEFILE in configure.ac is setting needed defines to make
|
||||
64bit off_t on relevant platforms.
|
||||
|
||||
Fixes build on musl
|
||||
|
||||
| ../../../../../../../../workspace/sources/libbsd/src/funopen.c:68:28: error: unknown type name 'off64_t'; did you mean 'off_t'?
|
||||
| funopen_seek(void *cookie, off64_t *offset, int whence)
|
||||
| ^~~~~~~
|
||||
| off_t
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
--- a/src/funopen.c
|
||||
+++ b/src/funopen.c
|
||||
@@ -65,7 +65,7 @@ funopen_write(void *cookie, const char *buf, size_t size)
|
||||
}
|
||||
|
||||
static int
|
||||
-funopen_seek(void *cookie, off64_t *offset, int whence)
|
||||
+funopen_seek(void *cookie, off_t *offset, int whence)
|
||||
{
|
||||
struct funopen_cookie *cookiewrap = cookie;
|
||||
off_t soff = *offset;
|
||||
--
|
||||
GitLab
|
@ -0,0 +1,36 @@
|
||||
From dec783dce5a7131e232a06e63a544645b5463dd8 Mon Sep 17 00:00:00 2001
|
||||
From: Guillem Jover <guillem@hadrons.org>
|
||||
Date: Sun, 12 Feb 2023 23:55:09 +0100
|
||||
Subject: [PATCH] build: Fix version script linker support detection
|
||||
|
||||
When the linker uses --no-undefined-version either specified by the user
|
||||
or as the default behavior (such as with newer clang >= 16 releases),
|
||||
a missing symbol definition will cause a linker error if that symbol is
|
||||
listed in the version script.
|
||||
|
||||
Upstream commit: https://gitlab.freedesktop.org/libbsd/libbsd/-/commit/dec783dce5a7131e232a06e63a544645b5463dd8
|
||||
|
||||
---
|
||||
configure.ac | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 17d113c..7d17a93 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -33,7 +33,11 @@ AC_CACHE_CHECK([if ld supports --version-script flag],
|
||||
save_LDFLAGS=$LDFLAGS
|
||||
LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map"
|
||||
AC_LINK_IFELSE([
|
||||
- AC_LANG_PROGRAM([], [])
|
||||
+ AC_LANG_PROGRAM([[
|
||||
+extern int symbol(void);
|
||||
+int symbol(void) { return 0; }
|
||||
+]], [[
|
||||
+]])
|
||||
], [
|
||||
libbsd_cv_version_script=yes
|
||||
], [
|
||||
--
|
||||
2.39.1.615.ga0422de7ea.dirty
|
||||
|
@ -1,42 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit multilib-minimal
|
||||
|
||||
DESCRIPTION="Library to provide useful functions commonly found on BSD systems"
|
||||
HOMEPAGE="https://libbsd.freedesktop.org/wiki/ https://gitlab.freedesktop.org/libbsd/libbsd"
|
||||
SRC_URI="https://${PN}.freedesktop.org/releases/${P}.tar.xz"
|
||||
|
||||
LICENSE="BSD BSD-2 BSD-4 ISC"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="static-libs"
|
||||
|
||||
RDEPEND="app-crypt/libmd[${MULTILIB_USEDEP}]"
|
||||
DEPEND="${RDEPEND}
|
||||
>=sys-kernel/linux-headers-3.17
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
local f="${EROOT}/usr/$(get_libdir)/${PN}.a"
|
||||
if ! has_version ${CATEGORY}/${PN}; then
|
||||
if [[ -e ${f} ]]; then
|
||||
eerror "${m}"
|
||||
die "You need to remove ${f} by hand or re-emerge sys-libs/glibc first."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# The build system will install libbsd-ctor.a despite of USE="-static-libs"
|
||||
# which is correct, see:
|
||||
# https://gitlab.freedesktop.org/libbsd/libbsd/commit/c5b959028734ca2281250c85773d9b5e1d259bc8
|
||||
ECONF_SOURCE="${S}" econf $(use_enable static-libs static)
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
}
|
55
sdk_container/src/third_party/portage-stable/dev-libs/libbsd/libbsd-0.11.7-r2.ebuild
vendored
Normal file
55
sdk_container/src/third_party/portage-stable/dev-libs/libbsd/libbsd-0.11.7-r2.ebuild
vendored
Normal file
@ -0,0 +1,55 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/guillemjover.asc
|
||||
inherit autotools multilib multilib-minimal verify-sig
|
||||
|
||||
DESCRIPTION="Library to provide useful functions commonly found on BSD systems"
|
||||
HOMEPAGE="https://libbsd.freedesktop.org/wiki/ https://gitlab.freedesktop.org/libbsd/libbsd"
|
||||
SRC_URI="https://${PN}.freedesktop.org/releases/${P}.tar.xz"
|
||||
SRC_URI+=" verify-sig? ( https://${PN}.freedesktop.org/releases/${P}.tar.xz.asc )"
|
||||
|
||||
LICENSE="BSD BSD-2 BSD-4 ISC"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="static-libs"
|
||||
|
||||
RDEPEND="app-crypt/libmd[${MULTILIB_USEDEP}]"
|
||||
DEPEND="${RDEPEND}
|
||||
>=sys-kernel/linux-headers-3.17
|
||||
"
|
||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-guillemjover )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/libbsd-build-Fix-version-script-linker-support-detection.patch"
|
||||
"${FILESDIR}/libbsd-0.11.7-musl-lfs.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Drop on next release, only needed for lld patch
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# The build system will install libbsd-ctor.a despite USE="-static-libs"
|
||||
# which is correct, see:
|
||||
# https://gitlab.freedesktop.org/libbsd/libbsd/commit/c5b959028734ca2281250c85773d9b5e1d259bc8
|
||||
ECONF_SOURCE="${S}" econf $(use_enable static-libs static)
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
|
||||
# ld scripts on standalone prefix (RAP) systems should have the prefix
|
||||
# stripped from any paths, as the sysroot is automatically prepended.
|
||||
local ldscript=${ED}/usr/$(get_libdir)/${PN}$(get_libname)
|
||||
if use prefix && ! use prefix-guest && grep -qIF "ld script" "${ldscript}" 2>/dev/null; then
|
||||
sed -i "s|${EPREFIX}/|/|g" "${ldscript}" || die
|
||||
fi
|
||||
}
|
@ -3,24 +3,27 @@
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit multilib-minimal
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/guillemjover.asc
|
||||
inherit multilib-minimal verify-sig
|
||||
|
||||
DESCRIPTION="Library to provide useful functions commonly found on BSD systems"
|
||||
HOMEPAGE="https://libbsd.freedesktop.org/wiki/ https://gitlab.freedesktop.org/libbsd/libbsd"
|
||||
SRC_URI="https://${PN}.freedesktop.org/releases/${P}.tar.xz"
|
||||
SRC_URI+=" verify-sig? ( https://${PN}.freedesktop.org/releases/${P}.tar.xz.asc )"
|
||||
|
||||
LICENSE="BSD BSD-2 BSD-4 ISC"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="static-libs"
|
||||
|
||||
RDEPEND="app-crypt/libmd[${MULTILIB_USEDEP}]"
|
||||
DEPEND="${RDEPEND}
|
||||
>=sys-kernel/linux-headers-3.17
|
||||
"
|
||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-guillemjover )"
|
||||
|
||||
multilib_src_configure() {
|
||||
# The build system will install libbsd-ctor.a despite of USE="-static-libs"
|
||||
# The build system will install libbsd-ctor.a despite USE="-static-libs"
|
||||
# which is correct, see:
|
||||
# https://gitlab.freedesktop.org/libbsd/libbsd/commit/c5b959028734ca2281250c85773d9b5e1d259bc8
|
||||
ECONF_SOURCE="${S}" econf $(use_enable static-libs static)
|
@ -1,11 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
<name>Gentoo Base System</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>freedesktop-bugs@gentoo.org</email>
|
||||
<name>Gentoo Freedesktop Project</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="cpe">cpe:/a:libbsd:libbsd</remote-id>
|
||||
<remote-id type="freedesktop-gitlab">libbsd/libbsd</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -1,3 +1,6 @@
|
||||
DIST libgcrypt-1.8.7.tar.bz2 2985660 BLAKE2B cb2132b826f3f3af240e6c9ac5fd992808aa17ce64144d17452591a5b1e402564af82c021b58f5fd620ebeb5894ac9654835f6d8376ec05ee41fc02189dd6825 SHA512 6309d17624d8029848990d225d5924886c951cef691266c8e010fbbb7f678972cee70cbb91d370ad0bcdc8c8761402a090c2c853c9427ec79293624a59da5060
|
||||
DIST libgcrypt-1.8.8.tar.bz2 2987685 BLAKE2B 7b590c06d91403f1bbfa108379b3747271e9c83acc5547a4d43ef9ada9b0b7c78654cdc24f6cd0db012d50628ae4ec9320dcb63a901ec2dadde6a7ed56dbed7e SHA512 9861f3b5da3cb013eb79efbf2859864f8c2c11b41484b051c981c45cc0bf1569202838226da10ebddeb7a7b7f39ebd3a95f107b9bf6f908074ccc9a51ea94db8
|
||||
DIST libgcrypt-1.10.1.tar.bz2 3778457 BLAKE2B 46f30459891183b6d9ec18f1c7907fee0ad156c7dd75044f3db2b4d1c19dc6f30b2dfa6f85bc82adc9243aaba913e40fb6faf77d2226ca5a33897220d032437a SHA512 e5ca7966624fff16c3013795836a2c4377f0193dbb4ac5ad2b79654b1fa8992e17d83816569a402212dc8367a7980d4141f5d6ac282bae6b9f02186365b61f13
|
||||
DIST libgcrypt-1.10.1.tar.bz2.sig 119 BLAKE2B 5261d7dbfd5d82b2d3fa2ebf864a9ef0c7c978dd66a71c078df7bbb3b63f5d85180e5f909f43a49712fc16c45f7aabaa6bc30ed82a39ffc9a5d483ea6a94d162 SHA512 b156ae05079776698bc95ba5a9e48e95de8f716aa1760ef4b2e7cb8518ccec660337fc7823f865bde870461800d472fd8e458d03a7095b6bb614f6dd96f796d8
|
||||
DIST libgcrypt-1.10.2.tar.bz2 3795164 BLAKE2B c86b29648664aae3fb694b20ad258828d2cecbb09db2b83df00fbdebd5d74228c92015c50f659c250cb0768ccaef7949294d9b7cdcd47e1387b7dce81d35da19 SHA512 3a850baddfe8ffe8b3e96dc54af3fbb9e1dab204db1f06b9b90b8fbbfb7fb7276260cd1e61ba4dde5a662a2385385007478834e62e95f785d2e3d32652adb29e
|
||||
DIST libgcrypt-1.10.2.tar.bz2.sig 119 BLAKE2B 3753134a1ed1fd2bfd2c64f175c3745db02791359646b3f0229c80ce4ccedbb147ee889a6b8c4fe4bf7e9067d804ee18a8411cd347026cd1656ad1d4d5686bec SHA512 9350444a0bcfa49217815a831f2286ccea470311673257bd809eb5dedbe97d2a5543b0bc7fb752312df69adeb7ac5f064e433f2545a8bf3e494027986cd8020c
|
||||
DIST libgcrypt-1.9.4.tar.bz2 3239704 BLAKE2B b8244bc12a68955797b0c2b474ac5c95df1014231f7180a2ffa113e3aacedc98eed60ee1e4b30b032a5fcd6a04855ae07142c223906d5db9c28328a71e014f33 SHA512 d0e117ac73c94d70e9521ee1e6328691498cc8328f8c4e21338096908f5c04c7b838966eb63d59494565f4e19f506c07dab4f4d922150d75610d9f7b57abbf60
|
||||
DIST libgcrypt-1.9.4.tar.bz2.sig 119 BLAKE2B 4012c22259a9fd56f9da6c87d60077cea0dbfef85d4d4ad1ff6a2375ddefafc4cd03ee9083d18e080c14c95887b495062af886732a9593bcf1b8f187d21073fe SHA512 4aee16449b4b50dac62bd80217e769f32f43fb7cd994402b7d9cffbb1934b2771041c8c0c41a63ced9c8d9408025f9c5608ffc7f00e5e9a9b92a07cb5118a98a
|
||||
|
@ -0,0 +1,50 @@
|
||||
https://bugs.gentoo.org/902765
|
||||
https://dev.gnupg.org/T6432
|
||||
https://dev.gnupg.org/rC7edf1abb9a0d892a80cbf7ab42f64b2720671ee9
|
||||
|
||||
From 7edf1abb9a0d892a80cbf7ab42f64b2720671ee9 Mon Sep 17 00:00:00 2001
|
||||
From: NIIBE Yutaka <gniibe@fsij.org>
|
||||
Date: Mon, 3 Apr 2023 14:00:15 +0900
|
||||
Subject: [PATCH] build: Allow build with -Oz.
|
||||
|
||||
* cipher/Makefile.am [ENABLE_O_FLAG_MUNGING]: Support -Oz.
|
||||
* random/Makefile.am [ENABLE_O_FLAG_MUNGING]: Support -Oz.
|
||||
|
||||
--
|
||||
|
||||
GnuPG-bug-id: 6432
|
||||
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
|
||||
---
|
||||
cipher/Makefile.am | 2 +-
|
||||
random/Makefile.am | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/cipher/Makefile.am b/cipher/Makefile.am
|
||||
index cf1fbe85..e67b1ee2 100644
|
||||
--- a/cipher/Makefile.am
|
||||
+++ b/cipher/Makefile.am
|
||||
@@ -165,7 +165,7 @@ gost-s-box$(EXEEXT_FOR_BUILD): gost-s-box.c
|
||||
|
||||
|
||||
if ENABLE_O_FLAG_MUNGING
|
||||
-o_flag_munging = sed -e 's/-O\([2-9sg][2-9sg]*\)/-O1/' -e 's/-Ofast/-O1/g'
|
||||
+o_flag_munging = sed -e 's/-O\([2-9sgz][2-9sgz]*\)/-O1/' -e 's/-Ofast/-O1/g'
|
||||
else
|
||||
o_flag_munging = cat
|
||||
endif
|
||||
diff --git a/random/Makefile.am b/random/Makefile.am
|
||||
index af978570..0c935a05 100644
|
||||
--- a/random/Makefile.am
|
||||
+++ b/random/Makefile.am
|
||||
@@ -56,7 +56,7 @@ jitterentropy-base.c jitterentropy.h jitterentropy-base-user.h
|
||||
|
||||
# The rndjent module needs to be compiled without optimization. */
|
||||
if ENABLE_O_FLAG_MUNGING
|
||||
-o_flag_munging = sed -e 's/-O\([1-9sg][1-9sg]*\)/-O0/g' -e 's/-Ofast/-O0/g'
|
||||
+o_flag_munging = sed -e 's/-O\([1-9sgz][1-9sgz]*\)/-O0/g' -e 's/-Ofast/-O0/g'
|
||||
else
|
||||
o_flag_munging = cat
|
||||
endif
|
||||
--
|
||||
2.40.0
|
||||
|
@ -0,0 +1,134 @@
|
||||
https://lists.gnupg.org/pipermail/gcrypt-devel/2022-December/005410.html
|
||||
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1211,7 +1211,8 @@ AC_CACHE_CHECK([whether GCC assembler is compatible for ARM assembly implementat
|
||||
/* Test if '.type' and '.size' are supported. */
|
||||
".size asmfunc,.-asmfunc;\n\t"
|
||||
".type asmfunc,%function;\n\t"
|
||||
- );]], [ asmfunc(); ] )],
|
||||
+ );
|
||||
+ void asmfunc(void);]], [ asmfunc(); ] )],
|
||||
[gcry_cv_gcc_arm_platform_as_ok=yes])
|
||||
fi])
|
||||
if test "$gcry_cv_gcc_arm_platform_as_ok" = "yes" ; then
|
||||
@@ -1238,7 +1239,8 @@ AC_CACHE_CHECK([whether GCC assembler is compatible for ARMv8/Aarch64 assembly i
|
||||
"eor x0, x0, x30, ror #12;\n\t"
|
||||
"add x0, x0, x30, asr #12;\n\t"
|
||||
"eor v0.16b, v0.16b, v31.16b;\n\t"
|
||||
- );]], [ asmfunc(); ] )],
|
||||
+ );
|
||||
+ void asmfunc(void);]], [ asmfunc(); ] )],
|
||||
[gcry_cv_gcc_aarch64_platform_as_ok=yes])
|
||||
fi])
|
||||
if test "$gcry_cv_gcc_aarch64_platform_as_ok" = "yes" ; then
|
||||
@@ -1267,7 +1269,8 @@ AC_CACHE_CHECK([whether GCC assembler supports for CFI directives],
|
||||
".cfi_restore_state\n\t"
|
||||
".long 0\n\t"
|
||||
".cfi_endproc\n\t"
|
||||
- );]])],
|
||||
+ );
|
||||
+ void asmfunc(void)]])],
|
||||
[gcry_cv_gcc_asm_cfi_directives=yes])])
|
||||
if test "$gcry_cv_gcc_asm_cfi_directives" = "yes" ; then
|
||||
AC_DEFINE(HAVE_GCC_ASM_CFI_DIRECTIVES,1,
|
||||
@@ -1666,7 +1669,8 @@ if test $amd64_as_feature_detection = yes; then
|
||||
[gcry_cv_gcc_as_const_division_ok],
|
||||
[gcry_cv_gcc_as_const_division_ok=no
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM(
|
||||
- [[__asm__(".text\n\tfn:\n\t xorl \$(123456789/12345678), %ebp;\n\t");]],
|
||||
+ [[__asm__(".text\n\tfn:\n\t xorl \$(123456789/12345678), %ebp;\n\t");
|
||||
+ void fn(void);]],
|
||||
[fn();])],
|
||||
[gcry_cv_gcc_as_const_division_ok=yes])])
|
||||
if test "$gcry_cv_gcc_as_const_division_ok" = "no" ; then
|
||||
@@ -1679,7 +1683,8 @@ if test $amd64_as_feature_detection = yes; then
|
||||
[gcry_cv_gcc_as_const_division_with_wadivide_ok],
|
||||
[gcry_cv_gcc_as_const_division_with_wadivide_ok=no
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM(
|
||||
- [[__asm__(".text\n\tfn:\n\t xorl \$(123456789/12345678), %ebp;\n\t");]],
|
||||
+ [[__asm__(".text\n\tfn:\n\t xorl \$(123456789/12345678), %ebp;\n\t");
|
||||
+ void fn(void);]],
|
||||
[fn();])],
|
||||
[gcry_cv_gcc_as_const_division_with_wadivide_ok=yes])])
|
||||
if test "$gcry_cv_gcc_as_const_division_with_wadivide_ok" = "no" ; then
|
||||
@@ -1715,7 +1720,8 @@ if test $amd64_as_feature_detection = yes; then
|
||||
* and "-Wa,--divide" workaround failed, this causes assembly
|
||||
* to be disable on this machine. */
|
||||
"xorl \$(123456789/12345678), %ebp;\n\t"
|
||||
- );]], [ asmfunc(); ])],
|
||||
+ );
|
||||
+ void asmfunc(void);]], [ asmfunc(); ])],
|
||||
[gcry_cv_gcc_amd64_platform_as_ok=yes])
|
||||
fi])
|
||||
if test "$gcry_cv_gcc_amd64_platform_as_ok" = "yes" ; then
|
||||
@@ -1734,7 +1740,8 @@ if test $amd64_as_feature_detection = yes; then
|
||||
".globl asmfunc\n\t"
|
||||
"asmfunc:\n\t"
|
||||
"xorq \$(1234), %rbp;\n\t"
|
||||
- );]], [ asmfunc(); ])],
|
||||
+ );
|
||||
+ void asmfunc(void);]], [ asmfunc(); ])],
|
||||
[gcry_cv_gcc_win64_platform_as_ok=yes])])
|
||||
if test "$gcry_cv_gcc_win64_platform_as_ok" = "yes" ; then
|
||||
AC_DEFINE(HAVE_COMPATIBLE_GCC_WIN64_PLATFORM_AS,1,
|
||||
@@ -1767,7 +1774,8 @@ AC_CACHE_CHECK([whether GCC assembler is compatible for Intel syntax assembly im
|
||||
"sub eax, [esp + 4];\n\t"
|
||||
"add dword ptr [esp + eax], 0b10101;\n\t"
|
||||
".att_syntax prefix\n\t"
|
||||
- );]], [ actest(); ])],
|
||||
+ );
|
||||
+ void actest(void);]], [ actest(); ])],
|
||||
[gcry_cv_gcc_platform_as_ok_for_intel_syntax=yes])
|
||||
fi])
|
||||
if test "$gcry_cv_gcc_platform_as_ok_for_intel_syntax" = "yes" ; then
|
||||
@@ -1832,6 +1840,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports NEON instructions],
|
||||
"vadd.u64 %q0, %q1;\n\t"
|
||||
"vadd.s64 %d3, %d2, %d3;\n\t"
|
||||
);
|
||||
+ void testfn(void);
|
||||
]], [ testfn(); ])],
|
||||
[gcry_cv_gcc_inline_asm_neon=yes])
|
||||
fi])
|
||||
@@ -1879,6 +1888,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports AArch32 Crypto Extension i
|
||||
|
||||
"vmull.p64 q0, d0, d0;\n\t"
|
||||
);
|
||||
+ void testfn(void);
|
||||
]], [ testfn(); ])],
|
||||
[gcry_cv_gcc_inline_asm_aarch32_crypto=yes])
|
||||
fi])
|
||||
@@ -1907,6 +1917,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports AArch64 NEON instructions]
|
||||
"dup v0.8b, w0;\n\t"
|
||||
"ld4 {v0.8b,v1.8b,v2.8b,v3.8b},[x0],\#32;\n\t"
|
||||
);
|
||||
+ void testfn(void);
|
||||
]], [ testfn(); ])],
|
||||
[gcry_cv_gcc_inline_asm_aarch64_neon=yes])
|
||||
fi])
|
||||
@@ -1955,6 +1966,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports AArch64 Crypto Extension i
|
||||
"pmull v0.1q, v0.1d, v31.1d;\n\t"
|
||||
"pmull2 v0.1q, v0.2d, v31.2d;\n\t"
|
||||
);
|
||||
+ void testfn(void);
|
||||
]], [ testfn(); ])],
|
||||
[gcry_cv_gcc_inline_asm_aarch64_crypto=yes])
|
||||
fi])
|
||||
@@ -2050,6 +2062,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports PowerPC AltiVec/VSX/crypto
|
||||
"vshasigmad %v0, %v1, 0, 15;\n"
|
||||
"vpmsumd %v11, %v11, %v11;\n"
|
||||
);
|
||||
+ void testfn(void);
|
||||
]], [ testfn(); ] )],
|
||||
[gcry_cv_gcc_inline_asm_ppc_altivec=yes])
|
||||
fi])
|
||||
@@ -2075,6 +2088,7 @@ AC_CACHE_CHECK([whether GCC inline assembler supports PowerISA 3.00 instructions
|
||||
"testfn:\n"
|
||||
"stxvb16x %r1,%v12,%v30;\n"
|
||||
);
|
||||
+ void testfn(void);
|
||||
]], [ testfn(); ])],
|
||||
[gcry_cv_gcc_inline_asm_ppc_arch_3_00=yes])
|
||||
fi])
|
||||
|
||||
|
@ -0,0 +1,35 @@
|
||||
https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=c0692324fe8b3806eefc5017767917dca9cd94d0
|
||||
https://dev.gnupg.org/T5976
|
||||
https://bugs.gentoo.org/832871
|
||||
|
||||
From c0692324fe8b3806eefc5017767917dca9cd94d0 Mon Sep 17 00:00:00 2001
|
||||
From: NIIBE Yutaka <gniibe@fsij.org>
|
||||
Date: Tue, 17 May 2022 10:44:55 +0900
|
||||
Subject: [PATCH] mpi: Allow building with --disable-asm for HPPA.
|
||||
|
||||
* mpi/longlong.h [__hppa] (udiv_qrnnd): Only define
|
||||
when assembler is enabled.
|
||||
|
||||
--
|
||||
|
||||
GnuPG-bug-id: 5976
|
||||
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
|
||||
--- a/mpi/longlong.h
|
||||
+++ b/mpi/longlong.h
|
||||
@@ -430,14 +430,14 @@ extern UDItype __udiv_qrnnd ();
|
||||
# define UMUL_TIME 40
|
||||
# define UDIV_TIME 80
|
||||
# endif
|
||||
-# ifndef LONGLONG_STANDALONE
|
||||
+# if !defined(LONGLONG_STANDALONE) && !defined(ASM_DISABLED)
|
||||
# define udiv_qrnnd(q, r, n1, n0, d) \
|
||||
do { USItype __r; \
|
||||
(q) = __udiv_qrnnd (&__r, (n1), (n0), (d)); \
|
||||
(r) = __r; \
|
||||
} while (0)
|
||||
extern USItype __udiv_qrnnd ();
|
||||
-# endif /* !LONGLONG_STANDALONE */
|
||||
+# endif /* !LONGLONG_STANDALONE && !ASM_DISABLED */
|
||||
# define count_leading_zeros(count, x) \
|
||||
do { \
|
||||
USItype __tmp; \
|
@ -0,0 +1,20 @@
|
||||
https://dev.gnupg.org/T6442
|
||||
|
||||
Patch as suggested by Werned in https://dev.gnupg.org/T6442#169396
|
||||
|
||||
--- a/random/rndgetentropy.c
|
||||
+++ b/random/rndgetentropy.c
|
||||
@@ -94,8 +94,13 @@
|
||||
* and might not be applicable on other FIPS modules not running
|
||||
* RHEL kernel.
|
||||
*/
|
||||
+#ifdef GRND_RANDOM
|
||||
nbytes = length < 32 ? length : 32;
|
||||
ret = getrandom (buffer, nbytes, GRND_RANDOM);
|
||||
+#else
|
||||
+ ret = -1;
|
||||
+ gpg_err_set_errno (ENOSYS);
|
||||
+#endif
|
||||
}
|
||||
else
|
||||
{
|
@ -1,26 +0,0 @@
|
||||
The version taken from GnuPG 1.4 assumes any cross-compiled package have
|
||||
prefixed underscores, which is not the case; by using libtool's own macro,
|
||||
we can avoid the whole issue.
|
||||
|
||||
--- libgcrypt-1.6.1/configure.ac
|
||||
+++ libgcrypt-1.6.1/configure.ac
|
||||
@@ -1022,7 +1022,7 @@
|
||||
# Check whether underscores in symbols are required. This needs to be
|
||||
# done before setting up the assembler stuff.
|
||||
#
|
||||
-GNUPG_SYS_SYMBOL_UNDERSCORE()
|
||||
+LT_SYS_SYMBOL_USCORE
|
||||
|
||||
|
||||
#################################
|
||||
--- libgcrypt-1.6.1/mpi/config.links
|
||||
+++ libgcrypt-1.6.1/mpi/config.links
|
||||
@@ -362,7 +362,7 @@
|
||||
|
||||
# Make sysdep.h
|
||||
echo '/* created by config.links - do not edit */' >./mpi/sysdep.h
|
||||
-if test x$ac_cv_sys_symbol_underscore = xyes; then
|
||||
+if test x$sys_symbol_underscore = xyes; then
|
||||
cat <<EOF >>./mpi/sysdep.h
|
||||
#if __STDC__
|
||||
#define C_SYMBOL_NAME(name) _##name
|
@ -0,0 +1,44 @@
|
||||
https://lists.gnupg.org/pipermail/gcrypt-devel/2022-January/005224.html
|
||||
|
||||
From bc0b82ad8201a4d7bffa3cf0f5504b72c1011cb1 Mon Sep 17 00:00:00 2001
|
||||
From: Sam James <sam@gentoo.org>
|
||||
Date: Tue, 18 Jan 2022 12:44:22 +0000
|
||||
Subject: [PATCH] cipher/cipher-gcm: fix build failure on ARM NEON
|
||||
|
||||
'features' is only defined when relevant CPU features are found, but
|
||||
one of the uses below its definition checked for GCM_USE_ARM_NEON which
|
||||
wasn't in the guard above it.
|
||||
|
||||
i.e. We used to only define 'features' when:
|
||||
- GCM_USE_INTEL_PCLMUL
|
||||
- GCM_USE_ARM_PMULL
|
||||
- GCM_USE_S390X_CRYPTO
|
||||
- GCM_USE_PPC_VPMSUM
|
||||
- GCM_USE_S390X_CRYPTO
|
||||
- GCM_USE_PPC_VPMSUM
|
||||
is set.
|
||||
|
||||
We were missing GCM_USE_ARM_NEON so when we check for GCM_USE_ARM_NEON
|
||||
below, it'd fail as features wasn't defined.
|
||||
|
||||
Bug: https://bugs.gentoo.org/831397
|
||||
---
|
||||
cipher/cipher-gcm.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/cipher/cipher-gcm.c b/cipher/cipher-gcm.c
|
||||
index a039c5e9..22834f35 100644
|
||||
--- a/cipher/cipher-gcm.c
|
||||
+++ b/cipher/cipher-gcm.c
|
||||
@@ -583,7 +583,8 @@ static void
|
||||
setupM (gcry_cipher_hd_t c)
|
||||
{
|
||||
#if defined(GCM_USE_INTEL_PCLMUL) || defined(GCM_USE_ARM_PMULL) || \
|
||||
- defined(GCM_USE_S390X_CRYPTO) || defined(GCM_USE_PPC_VPMSUM)
|
||||
+ defined(GCM_USE_ARM_NEON) || defined(GCM_USE_S390X_CRYPTO) || \
|
||||
+ defined(GCM_USE_PPC_VPMSUM)
|
||||
unsigned int features = _gcry_get_hw_features ();
|
||||
#endif
|
||||
|
||||
--
|
||||
2.34.1
|
@ -0,0 +1,21 @@
|
||||
https://bugs.gentoo.org/868384
|
||||
--- a/src/libgcrypt-config.in
|
||||
+++ b/src/libgcrypt-config.in
|
||||
@@ -154,7 +154,7 @@ if test "$echo_cflags" = "yes"; then
|
||||
|
||||
tmp=""
|
||||
for i in $includes $cflags_final; do
|
||||
- if echo "$tmp" | fgrep -v -- "$i" >/dev/null; then
|
||||
+ if echo "$tmp" | grep -F -v -- "$i" >/dev/null; then
|
||||
tmp="$tmp $i"
|
||||
fi
|
||||
done
|
||||
@@ -178,7 +178,7 @@ if test "$echo_libs" = "yes"; then
|
||||
|
||||
tmp=""
|
||||
for i in $libdirs $libs_final; do
|
||||
- if echo "$tmp" | fgrep -v -- "$i" >/dev/null; then
|
||||
+ if echo "$tmp" | grep -F -v -- "$i" >/dev/null; then
|
||||
tmp="$tmp $i"
|
||||
fi
|
||||
done
|
@ -0,0 +1,16 @@
|
||||
Drop guard for CPU detection, configure won't get this wrong, and this
|
||||
check fails on some PPC platforms where these guards aren't set (due to
|
||||
different kernel/libc).
|
||||
|
||||
--- a/src/hwf-ppc.c
|
||||
+++ b/src/hwf-ppc.c
|
||||
@@ -33,9 +33,6 @@
|
||||
#include "g10lib.h"
|
||||
#include "hwf-common.h"
|
||||
|
||||
-#if !defined (__powerpc__) && !defined (__powerpc64__)
|
||||
-# error Module build for wrong CPU.
|
||||
-#endif
|
||||
|
||||
|
||||
#if defined(HAVE_SYS_AUXV_H) && defined(HAVE_ELF_AUX_INFO) && \
|
170
sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild
vendored
Normal file
170
sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild
vendored
Normal file
@ -0,0 +1,170 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gnupg.asc
|
||||
inherit autotools flag-o-matic linux-info multilib-minimal toolchain-funcs verify-sig
|
||||
|
||||
DESCRIPTION="General purpose crypto library based on the code used in GnuPG"
|
||||
HOMEPAGE="https://www.gnupg.org/"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
|
||||
|
||||
LICENSE="LGPL-2.1 MIT"
|
||||
SLOT="0/20" # subslot = soname major version
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="+asm cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3 cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1 doc +getentropy static-libs"
|
||||
|
||||
# Build system only has --disable-arm-crypto-support right now
|
||||
# If changing this, update src_configure logic too.
|
||||
# ARM CPUs seem to, right now, support all-or-nothing for crypto extensions,
|
||||
# but this looks like it might change in future. This is just a safety check
|
||||
# in case people somehow do have a CPU which only supports some. They must
|
||||
# for now disable them all if that's the case.
|
||||
REQUIRED_USE="
|
||||
cpu_flags_arm_aes? ( cpu_flags_arm_sha1 cpu_flags_arm_sha2 )
|
||||
cpu_flags_arm_sha1? ( cpu_flags_arm_aes cpu_flags_arm_sha2 )
|
||||
cpu_flags_arm_sha2? ( cpu_flags_arm_aes cpu_flags_arm_sha1 )
|
||||
cpu_flags_ppc_vsx3? ( cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 )
|
||||
cpu_flags_ppc_vsx2? ( cpu_flags_ppc_altivec )
|
||||
"
|
||||
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]
|
||||
getentropy? (
|
||||
kernel_linux? (
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.25 )
|
||||
elibc_musl? ( >=sys-libs/musl-1.1.20 )
|
||||
)
|
||||
)"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="doc? ( virtual/texi2dvi )
|
||||
verify-sig? ( sec-keys/openpgp-keys-gnupg )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-multilib-syspath.patch
|
||||
"${FILESDIR}"/${PN}-powerpc-darwin.patch
|
||||
"${FILESDIR}"/${PN}-1.10.1-fix-no-asm-hppa.patch
|
||||
"${FILESDIR}"/${PN}-1.9.4-no-fgrep-libgcrypt-config.patch
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/libgcrypt-config
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
if [[ ${MERGE_TYPE} == buildonly ]]; then
|
||||
return
|
||||
fi
|
||||
if use kernel_linux && use getentropy; then
|
||||
unset KV_FULL
|
||||
get_running_version
|
||||
if [[ -n ${KV_FULL} ]] && kernel_is -lt 3 17; then
|
||||
eerror "The getentropy function requires the getrandom syscall."
|
||||
eerror "This was introduced in Linux 3.17."
|
||||
eerror "Your system is currently running Linux ${KV_FULL}."
|
||||
eerror "Disable the 'getentropy' USE flag or upgrade your kernel."
|
||||
die "Kernel is too old for getentropy"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
:
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if [[ ${CHOST} == *86*-solaris* ]] ; then
|
||||
# ASM code uses GNU ELF syntax, divide in particular, we need to
|
||||
# allow this via ASFLAGS, since we don't have a flag-o-matic
|
||||
# function for that, we'll have to abuse cflags for this
|
||||
append-cflags -Wa,--divide
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == powerpc* ]] ; then
|
||||
# ./configure does a lot of automagic, prevent that
|
||||
# generic ppc32+ppc64 altivec
|
||||
use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec=no
|
||||
use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec_cflags=no
|
||||
# power8 vector extension, aka arch 2.07 ISA, also checked below via ppc-crypto-support
|
||||
use cpu_flags_ppc_vsx2 || local -x gcry_cv_gcc_inline_asm_ppc_altivec=no
|
||||
# power9 vector extension, aka arch 3.00 ISA
|
||||
use cpu_flags_ppc_vsx3 || local -x gcry_cv_gcc_inline_asm_ppc_arch_3_00=no
|
||||
fi
|
||||
|
||||
# Workaround for GCC < 11.3 bug
|
||||
# https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=0b399721ce9709ae25f9d2050360c5ab2115ae29
|
||||
# https://dev.gnupg.org/T5581
|
||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102124
|
||||
if use arm64 && tc-is-gcc && (($(gcc-major-version) == 11)) && (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)) ; then
|
||||
append-flags -fno-tree-loop-vectorize
|
||||
fi
|
||||
|
||||
# ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
|
||||
# https://github.com/gentoo/gentoo/pull/28355
|
||||
# mold needs this too but right now tc-ld-is-mold is also not available
|
||||
if tc-ld-is-lld; then
|
||||
append-ldflags -Wl,--undefined-version
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
|
||||
--enable-noexecstack
|
||||
$(use_enable cpu_flags_arm_neon neon-support)
|
||||
# See REQUIRED_USE comment above
|
||||
$(use_enable cpu_flags_arm_aes arm-crypto-support)
|
||||
$(use_enable cpu_flags_ppc_vsx2 ppc-crypto-support)
|
||||
$(use_enable cpu_flags_x86_aes aesni-support)
|
||||
$(use_enable cpu_flags_x86_avx avx-support)
|
||||
$(use_enable cpu_flags_x86_avx2 avx2-support)
|
||||
$(use_enable cpu_flags_x86_padlock padlock-support)
|
||||
$(use_enable cpu_flags_x86_sha shaext-support)
|
||||
$(use_enable cpu_flags_x86_sse4_1 sse41-support)
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
|
||||
# disabled due to various applications requiring privileges
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
# causes bus-errors on sparc64-solaris
|
||||
$([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm")
|
||||
|
||||
$(use asm || echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
)
|
||||
|
||||
if use kernel_linux; then
|
||||
# --enable-random=getentropy requires getentropy/getrandom.
|
||||
# --enable-random=linux enables legacy code that tries getrandom
|
||||
# and falls back to reading /dev/random.
|
||||
myeconfargs+=( --enable-random=$(usex getentropy getentropy linux) )
|
||||
fi
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
default
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
}
|
173
sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r3.ebuild
vendored
Normal file
173
sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r3.ebuild
vendored
Normal file
@ -0,0 +1,173 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gnupg.asc
|
||||
inherit autotools flag-o-matic linux-info multilib-minimal toolchain-funcs verify-sig
|
||||
|
||||
DESCRIPTION="General purpose crypto library based on the code used in GnuPG"
|
||||
HOMEPAGE="https://www.gnupg.org/"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
|
||||
|
||||
LICENSE="LGPL-2.1 MIT"
|
||||
SLOT="0/20" # subslot = soname major version
|
||||
KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="+asm cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3 cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1 doc +getentropy static-libs"
|
||||
|
||||
# Build system only has --disable-arm-crypto-support right now
|
||||
# If changing this, update src_configure logic too.
|
||||
# ARM CPUs seem to, right now, support all-or-nothing for crypto extensions,
|
||||
# but this looks like it might change in future. This is just a safety check
|
||||
# in case people somehow do have a CPU which only supports some. They must
|
||||
# for now disable them all if that's the case.
|
||||
REQUIRED_USE="
|
||||
cpu_flags_arm_aes? ( cpu_flags_arm_sha1 cpu_flags_arm_sha2 )
|
||||
cpu_flags_arm_sha1? ( cpu_flags_arm_aes cpu_flags_arm_sha2 )
|
||||
cpu_flags_arm_sha2? ( cpu_flags_arm_aes cpu_flags_arm_sha1 )
|
||||
cpu_flags_ppc_vsx3? ( cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 )
|
||||
cpu_flags_ppc_vsx2? ( cpu_flags_ppc_altivec )
|
||||
"
|
||||
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]
|
||||
getentropy? (
|
||||
kernel_linux? (
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.25 )
|
||||
elibc_musl? ( >=sys-libs/musl-1.1.20 )
|
||||
)
|
||||
)"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="doc? ( virtual/texi2dvi )
|
||||
verify-sig? ( sec-keys/openpgp-keys-gnupg )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-multilib-syspath.patch
|
||||
"${FILESDIR}"/${PN}-powerpc-darwin.patch
|
||||
"${FILESDIR}"/${PN}-1.10.1-fix-no-asm-hppa.patch
|
||||
"${FILESDIR}"/${PN}-1.9.4-no-fgrep-libgcrypt-config.patch
|
||||
"${FILESDIR}"/${PN}-1.10.1-configure-clang16.patch
|
||||
"${FILESDIR}"/libgcrypt-1.10-build-Allow-build-with-Oz.patch
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/libgcrypt-config
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
if [[ ${MERGE_TYPE} == buildonly ]]; then
|
||||
return
|
||||
fi
|
||||
if use kernel_linux && use getentropy; then
|
||||
unset KV_FULL
|
||||
get_running_version
|
||||
if [[ -n ${KV_FULL} ]] && kernel_is -lt 3 17; then
|
||||
eerror "The getentropy function requires the getrandom syscall."
|
||||
eerror "This was introduced in Linux 3.17."
|
||||
eerror "Your system is currently running Linux ${KV_FULL}."
|
||||
eerror "Disable the 'getentropy' USE flag or upgrade your kernel."
|
||||
die "Kernel is too old for getentropy"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
:
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if [[ ${CHOST} == *86*-solaris* ]] ; then
|
||||
# ASM code uses GNU ELF syntax, divide in particular, we need to
|
||||
# allow this via ASFLAGS, since we don't have a flag-o-matic
|
||||
# function for that, we'll have to abuse cflags for this
|
||||
append-cflags -Wa,--divide
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == powerpc* ]] ; then
|
||||
# ./configure does a lot of automagic, prevent that
|
||||
# generic ppc32+ppc64 altivec
|
||||
use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec=no
|
||||
use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec_cflags=no
|
||||
# power8 vector extension, aka arch 2.07 ISA, also checked below via ppc-crypto-support
|
||||
use cpu_flags_ppc_vsx2 || local -x gcry_cv_gcc_inline_asm_ppc_altivec=no
|
||||
# power9 vector extension, aka arch 3.00 ISA
|
||||
use cpu_flags_ppc_vsx3 || local -x gcry_cv_gcc_inline_asm_ppc_arch_3_00=no
|
||||
fi
|
||||
|
||||
# Workaround for GCC < 11.3 bug
|
||||
# https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=0b399721ce9709ae25f9d2050360c5ab2115ae29
|
||||
# https://dev.gnupg.org/T5581
|
||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102124
|
||||
if use arm64 && tc-is-gcc && (($(gcc-major-version) == 11)) &&
|
||||
(($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)) ; then
|
||||
append-flags -fno-tree-loop-vectorize
|
||||
fi
|
||||
|
||||
# ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
|
||||
# https://github.com/gentoo/gentoo/pull/28355
|
||||
# mold needs this too but right now tc-ld-is-mold is also not available
|
||||
if tc-ld-is-lld; then
|
||||
append-ldflags -Wl,--undefined-version
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
|
||||
--enable-noexecstack
|
||||
$(use_enable cpu_flags_arm_neon neon-support)
|
||||
# See REQUIRED_USE comment above
|
||||
$(use_enable cpu_flags_arm_aes arm-crypto-support)
|
||||
$(use_enable cpu_flags_ppc_vsx2 ppc-crypto-support)
|
||||
$(use_enable cpu_flags_x86_aes aesni-support)
|
||||
$(use_enable cpu_flags_x86_avx avx-support)
|
||||
$(use_enable cpu_flags_x86_avx2 avx2-support)
|
||||
$(use_enable cpu_flags_x86_padlock padlock-support)
|
||||
$(use_enable cpu_flags_x86_sha shaext-support)
|
||||
$(use_enable cpu_flags_x86_sse4_1 sse41-support)
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
|
||||
# disabled due to various applications requiring privileges
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
# causes bus-errors on sparc64-solaris
|
||||
$([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm")
|
||||
|
||||
$(use asm || echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
)
|
||||
|
||||
if use kernel_linux; then
|
||||
# --enable-random=getentropy requires getentropy/getrandom.
|
||||
# --enable-random=linux enables legacy code that tries getrandom
|
||||
# and falls back to reading /dev/random.
|
||||
myeconfargs+=( --enable-random=$(usex getentropy getentropy linux) )
|
||||
fi
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
default
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
}
|
171
sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.2.ebuild
vendored
Normal file
171
sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.2.ebuild
vendored
Normal file
@ -0,0 +1,171 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gnupg.asc
|
||||
inherit autotools flag-o-matic linux-info multilib-minimal toolchain-funcs verify-sig
|
||||
|
||||
DESCRIPTION="General purpose crypto library based on the code used in GnuPG"
|
||||
HOMEPAGE="https://www.gnupg.org/"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
|
||||
|
||||
LICENSE="LGPL-2.1 MIT"
|
||||
SLOT="0/20" # subslot = soname major version
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="+asm cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3 cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1 doc +getentropy static-libs"
|
||||
|
||||
# Build system only has --disable-arm-crypto-support right now
|
||||
# If changing this, update src_configure logic too.
|
||||
# ARM CPUs seem to, right now, support all-or-nothing for crypto extensions,
|
||||
# but this looks like it might change in future. This is just a safety check
|
||||
# in case people somehow do have a CPU which only supports some. They must
|
||||
# for now disable them all if that's the case.
|
||||
REQUIRED_USE="
|
||||
cpu_flags_arm_aes? ( cpu_flags_arm_sha1 cpu_flags_arm_sha2 )
|
||||
cpu_flags_arm_sha1? ( cpu_flags_arm_aes cpu_flags_arm_sha2 )
|
||||
cpu_flags_arm_sha2? ( cpu_flags_arm_aes cpu_flags_arm_sha1 )
|
||||
cpu_flags_ppc_vsx3? ( cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 )
|
||||
cpu_flags_ppc_vsx2? ( cpu_flags_ppc_altivec )
|
||||
"
|
||||
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]
|
||||
getentropy? (
|
||||
kernel_linux? (
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.25 )
|
||||
elibc_musl? ( >=sys-libs/musl-1.1.20 )
|
||||
)
|
||||
)"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="doc? ( virtual/texi2dvi )
|
||||
verify-sig? ( sec-keys/openpgp-keys-gnupg )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-multilib-syspath.patch
|
||||
"${FILESDIR}"/${PN}-powerpc-darwin.patch
|
||||
"${FILESDIR}"/${PN}-1.9.4-no-fgrep-libgcrypt-config.patch
|
||||
"${FILESDIR}"/${P}-darwin.patch # upstream T6442
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/libgcrypt-config
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
if [[ ${MERGE_TYPE} == buildonly ]]; then
|
||||
return
|
||||
fi
|
||||
if use kernel_linux && use getentropy; then
|
||||
unset KV_FULL
|
||||
get_running_version
|
||||
if [[ -n ${KV_FULL} ]] && kernel_is -lt 3 17; then
|
||||
eerror "The getentropy function requires the getrandom syscall."
|
||||
eerror "This was introduced in Linux 3.17."
|
||||
eerror "Your system is currently running Linux ${KV_FULL}."
|
||||
eerror "Disable the 'getentropy' USE flag or upgrade your kernel."
|
||||
die "Kernel is too old for getentropy"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
:
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if [[ ${CHOST} == *86*-solaris* ]] ; then
|
||||
# ASM code uses GNU ELF syntax, divide in particular, we need to
|
||||
# allow this via ASFLAGS, since we don't have a flag-o-matic
|
||||
# function for that, we'll have to abuse cflags for this
|
||||
append-cflags -Wa,--divide
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == powerpc* ]] ; then
|
||||
# ./configure does a lot of automagic, prevent that
|
||||
# generic ppc32+ppc64 altivec
|
||||
use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec=no
|
||||
use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec_cflags=no
|
||||
# power8 vector extension, aka arch 2.07 ISA, also checked below via ppc-crypto-support
|
||||
use cpu_flags_ppc_vsx2 || local -x gcry_cv_gcc_inline_asm_ppc_altivec=no
|
||||
# power9 vector extension, aka arch 3.00 ISA
|
||||
use cpu_flags_ppc_vsx3 || local -x gcry_cv_gcc_inline_asm_ppc_arch_3_00=no
|
||||
fi
|
||||
|
||||
# Workaround for GCC < 11.3 bug
|
||||
# https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=0b399721ce9709ae25f9d2050360c5ab2115ae29
|
||||
# https://dev.gnupg.org/T5581
|
||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102124
|
||||
if use arm64 && tc-is-gcc && (($(gcc-major-version) == 11)) &&
|
||||
(($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)) ; then
|
||||
append-flags -fno-tree-loop-vectorize
|
||||
fi
|
||||
|
||||
# ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
|
||||
# https://github.com/gentoo/gentoo/pull/28355
|
||||
# mold needs this too but right now tc-ld-is-mold is also not available
|
||||
if tc-ld-is-lld; then
|
||||
append-ldflags -Wl,--undefined-version
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
|
||||
--enable-noexecstack
|
||||
$(use_enable cpu_flags_arm_neon neon-support)
|
||||
# See REQUIRED_USE comment above
|
||||
$(use_enable cpu_flags_arm_aes arm-crypto-support)
|
||||
$(use_enable cpu_flags_ppc_vsx2 ppc-crypto-support)
|
||||
$(use_enable cpu_flags_x86_aes aesni-support)
|
||||
$(use_enable cpu_flags_x86_avx avx-support)
|
||||
$(use_enable cpu_flags_x86_avx2 avx2-support)
|
||||
$(use_enable cpu_flags_x86_padlock padlock-support)
|
||||
$(use_enable cpu_flags_x86_sha shaext-support)
|
||||
$(use_enable cpu_flags_x86_sse4_1 sse41-support)
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
|
||||
# disabled due to various applications requiring privileges
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
# causes bus-errors on sparc64-solaris
|
||||
$([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm")
|
||||
|
||||
$(use asm || echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
)
|
||||
|
||||
if use kernel_linux; then
|
||||
# --enable-random=getentropy requires getentropy/getrandom.
|
||||
# --enable-random=linux enables legacy code that tries getrandom
|
||||
# and falls back to reading /dev/random.
|
||||
myeconfargs+=( --enable-random=$(usex getentropy getentropy linux) )
|
||||
fi
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
default
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
}
|
@ -1,77 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools flag-o-matic multilib-minimal toolchain-funcs
|
||||
|
||||
DESCRIPTION="General purpose crypto library based on the code used in GnuPG"
|
||||
HOMEPAGE="https://www.gnupg.org/"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2.1 MIT"
|
||||
SLOT="0/20" # subslot = soname major version
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="doc o-flag-munging static-libs"
|
||||
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="doc? ( virtual/texi2dvi )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.6.1-uscore.patch
|
||||
"${FILESDIR}"/${PN}-multilib-syspath.patch
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/libgcrypt-config
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if [[ ${CHOST} == *86*-solaris* ]] ; then
|
||||
# ASM code uses GNU ELF syntax, divide in particular, we need to
|
||||
# allow this via ASFLAGS, since we don't have a flag-o-matic
|
||||
# function for that, we'll have to abuse cflags for this
|
||||
append-cflags -Wa,--divide
|
||||
fi
|
||||
local myeconfargs=(
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
--enable-noexecstack
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable o-flag-munging O-flag-munging)
|
||||
|
||||
# disabled due to various applications requiring privileges
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
# causes bus-errors on sparc64-solaris
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
$([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${EROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
)
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
default
|
||||
find "${D}" -type f -name '*.la' -delete || die
|
||||
}
|
@ -1,84 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools flag-o-matic multilib-minimal toolchain-funcs
|
||||
|
||||
DESCRIPTION="General purpose crypto library based on the code used in GnuPG"
|
||||
HOMEPAGE="https://www.gnupg.org/"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2.1 MIT"
|
||||
SLOT="0/20" # subslot = soname major version
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="doc o-flag-munging static-libs"
|
||||
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="doc? ( virtual/texi2dvi )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.6.1-uscore.patch
|
||||
"${FILESDIR}"/${PN}-multilib-syspath.patch
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/libgcrypt-config
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if [[ ${CHOST} == *86*-solaris* ]] ; then
|
||||
# ASM code uses GNU ELF syntax, divide in particular, we need to
|
||||
# allow this via ASFLAGS, since we don't have a flag-o-matic
|
||||
# function for that, we'll have to abuse cflags for this
|
||||
append-cflags -Wa,--divide
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
|
||||
--enable-noexecstack
|
||||
# disabled due to various applications requiring privileges
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable o-flag-munging O-flag-munging)
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
# causes bus-errors on sparc64-solaris
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
$([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
)
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
|
||||
multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
default
|
||||
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
}
|
136
sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.4-r2.ebuild
vendored
Normal file
136
sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.4-r2.ebuild
vendored
Normal file
@ -0,0 +1,136 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gnupg.asc
|
||||
inherit autotools flag-o-matic multilib-minimal toolchain-funcs verify-sig
|
||||
|
||||
DESCRIPTION="General purpose crypto library based on the code used in GnuPG"
|
||||
HOMEPAGE="https://www.gnupg.org/"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
|
||||
|
||||
LICENSE="LGPL-2.1 MIT"
|
||||
SLOT="0/20" # subslot = soname major version
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="+asm cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3 cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1 doc static-libs"
|
||||
|
||||
# Build system only has --disable-arm-crypto-support right now
|
||||
# If changing this, update src_configure logic too.
|
||||
# ARM CPUs seem to, right now, support all-or-nothing for crypto extensions,
|
||||
# but this looks like it might change in future. This is just a safety check
|
||||
# in case people somehow do have a CPU which only supports some. They must
|
||||
# for now disable them all if that's the case.
|
||||
REQUIRED_USE="
|
||||
cpu_flags_arm_aes? ( cpu_flags_arm_sha1 cpu_flags_arm_sha2 )
|
||||
cpu_flags_arm_sha1? ( cpu_flags_arm_aes cpu_flags_arm_sha2 )
|
||||
cpu_flags_arm_sha2? ( cpu_flags_arm_aes cpu_flags_arm_sha1 )
|
||||
cpu_flags_ppc_vsx3? ( cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 )
|
||||
cpu_flags_ppc_vsx2? ( cpu_flags_ppc_altivec )
|
||||
"
|
||||
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="doc? ( virtual/texi2dvi )
|
||||
verify-sig? ( sec-keys/openpgp-keys-gnupg )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-multilib-syspath.patch
|
||||
"${FILESDIR}"/${PN}-powerpc-darwin.patch
|
||||
"${FILESDIR}"/${PN}-1.9.4-arm-neon-compile-fix.patch
|
||||
"${FILESDIR}"/${PN}-1.9.4-no-fgrep-libgcrypt-config.patch
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/libgcrypt-config
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if [[ ${CHOST} == *86*-solaris* ]] ; then
|
||||
# ASM code uses GNU ELF syntax, divide in particular, we need to
|
||||
# allow this via ASFLAGS, since we don't have a flag-o-matic
|
||||
# function for that, we'll have to abuse cflags for this
|
||||
append-cflags -Wa,--divide
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == powerpc* ]] ; then
|
||||
# ./configure does a lot of automagic, prevent that
|
||||
# generic ppc32+ppc64 altivec
|
||||
use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec=no
|
||||
use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec_cflags=no
|
||||
# power8 vector extension, aka arch 2.07 ISA, also checked below via ppc-crypto-support
|
||||
use cpu_flags_ppc_vsx2 || local -x gcry_cv_gcc_inline_asm_ppc_altivec=no
|
||||
# power9 vector extension, aka arch 3.00 ISA
|
||||
use cpu_flags_ppc_vsx3 || local -x gcry_cv_gcc_inline_asm_ppc_arch_3_00=no
|
||||
fi
|
||||
|
||||
# Workaround for GCC < 11.3 bug
|
||||
# https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=0b399721ce9709ae25f9d2050360c5ab2115ae29
|
||||
# https://dev.gnupg.org/T5581
|
||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102124
|
||||
if use arm64 && tc-is-gcc && (($(gcc-major-version) == 11)) && (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)) ; then
|
||||
append-flags -fno-tree-loop-vectorize
|
||||
fi
|
||||
|
||||
# ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
|
||||
# https://github.com/gentoo/gentoo/pull/28355
|
||||
# mold needs this too but right now tc-ld-is-mold is also not available
|
||||
if tc-ld-is-lld; then
|
||||
append-ldflags -Wl,--undefined-version
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
|
||||
--enable-noexecstack
|
||||
$(use_enable cpu_flags_arm_neon neon-support)
|
||||
# See REQUIRED_USE comment above
|
||||
$(use_enable cpu_flags_arm_aes arm-crypto-support)
|
||||
$(use_enable cpu_flags_ppc_vsx2 ppc-crypto-support)
|
||||
$(use_enable cpu_flags_x86_aes aesni-support)
|
||||
$(use_enable cpu_flags_x86_avx avx-support)
|
||||
$(use_enable cpu_flags_x86_avx2 avx2-support)
|
||||
$(use_enable cpu_flags_x86_padlock padlock-support)
|
||||
$(use_enable cpu_flags_x86_sha shaext-support)
|
||||
$(use_enable cpu_flags_x86_sse4_1 sse41-support)
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
|
||||
# disabled due to various applications requiring privileges
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
# causes bus-errors on sparc64-solaris
|
||||
$([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm")
|
||||
|
||||
$(use asm || echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
)
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
default
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
}
|
@ -1,86 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools flag-o-matic multilib-minimal toolchain-funcs
|
||||
|
||||
DESCRIPTION="General purpose crypto library based on the code used in GnuPG"
|
||||
HOMEPAGE="https://www.gnupg.org/"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2.1 MIT"
|
||||
SLOT="0/20" # subslot = soname major version
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="+asm cpu_flags_arm_neon cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1 doc o-flag-munging static-libs"
|
||||
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="doc? ( virtual/texi2dvi )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-multilib-syspath.patch
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/libgcrypt-config
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if [[ ${CHOST} == *86*-solaris* ]] ; then
|
||||
# ASM code uses GNU ELF syntax, divide in particular, we need to
|
||||
# allow this via ASFLAGS, since we don't have a flag-o-matic
|
||||
# function for that, we'll have to abuse cflags for this
|
||||
append-cflags -Wa,--divide
|
||||
fi
|
||||
local myeconfargs=(
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
|
||||
--enable-noexecstack
|
||||
$(use_enable cpu_flags_arm_neon neon-support)
|
||||
$(use_enable cpu_flags_x86_aes aesni-support)
|
||||
$(use_enable cpu_flags_x86_avx avx-support)
|
||||
$(use_enable cpu_flags_x86_avx2 avx2-support)
|
||||
$(use_enable cpu_flags_x86_padlock padlock-support)
|
||||
$(use_enable cpu_flags_x86_sha shaext-support)
|
||||
$(use_enable cpu_flags_x86_sse4_1 sse41-support)
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable o-flag-munging O-flag-munging)
|
||||
|
||||
# disabled due to various applications requiring privileges
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
# causes bus-errors on sparc64-solaris
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
$([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm")
|
||||
|
||||
$(use asm || echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
)
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
default
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
}
|
@ -1,10 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>zlogene@gentoo.org</email>
|
||||
<name>Mikle Kolyada</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
<name>Gentoo Base System</name>
|
||||
@ -14,6 +10,6 @@
|
||||
</upstream>
|
||||
<use>
|
||||
<flag name="asm">Enable assembly for optimization</flag>
|
||||
<flag name="o-flag-munging">Enable O-flag mangling during build</flag>
|
||||
<flag name="getentropy">Use getentropy function to obtain randomness from the kernel</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
|
@ -1,4 +1,4 @@
|
||||
DIST gen-lock-obj-1.38.sh 2643 BLAKE2B 5040b027a95f10bac4a0ba463c8bb8387514ca9136e019fc647183456593df27473eb79af1d79e803984dd2b93166c286809b376968584cc320679de95fcfbba SHA512 d60999a08f70f5bcf1b66099c5d7b5f715dbd881bd0d75dbdde3a8932e9b064166f0524a45ae88b5b182c620aee526e14095ffdee68403b5d3b087b4dc4c0c2c
|
||||
DIST libgpg-error-1.38.tar.bz2 957637 BLAKE2B 9532402466748503805366b94c82c9adfe5b448f885c26b33ebf7ba9957161ca046b4057f5ca862224accb9f2af731652a55d20e7a4ab69107190a58c8e11ad6 SHA512 b936a4738c2cee111d855b1ba3ec433da8c77799a87d1f71275f974f871ebfa593c9db06ea53f0490b6cd6b94bef34f6052a587a4d13d839ec0128500c2dd9de
|
||||
DIST libgpg-error-1.41.tar.bz2 967117 BLAKE2B 9dc95bc09f55915d904e0f956ecf9281615028b8b8d876dbc786b752068fefea56adfb5dd5db65bad656ab664d567e56541e44a584c7f8672c30537ed05c4db0 SHA512 578d1d8090b9f6e6cbe59d9aeebec7df81aae492f75ec343f8df530950d30866fa0a7903ca050bf7bf721413f7b2708abe34f7467e2b208cc1447ffc9bd5b9a5
|
||||
DIST libgpg-error-1.42.tar.bz2 973996 BLAKE2B eb3381ec7106cfe5dca333391f473e97b03df83f247d3067e9f933ed7206f826e59d2b74b8c28d41e785ffe1c2980b680470064eb2fa2ff1ee3d8fa8be5b81a8 SHA512 f6d95712a874edefc39a7746062c8037a62801a550560c5b2eab08b5b86987c1de5be60eba5fcb56d35a37db109aa32d07b7eff2bb99800c1c47d2227421a8f4
|
||||
DIST libgpg-error-1.46.tar.bz2 1014291 BLAKE2B 6748c463256b7d0a05fe89a63c5f3abda1975d861c35821248664f2f09cd2273ef619d12408b6107a99519939ca7214f492e705c29f52f7bbdc422237281c1ca SHA512 b06223bb2b0f67d3db5d0d9ab116361a0eda175d4667352b5c0941408d37f2b0ba8e507297e480ccebb88cbba9d0a133820b896914b07d264fb3edaac7b8c99d
|
||||
DIST libgpg-error-1.46.tar.bz2.sig 238 BLAKE2B c9f48969dc5b51c4d6c0c643a510e442b883af319f4bd9db3d1f9d9b56e4003f020131ace28d5e6d3db1d3f62c63ac083f159d545e601e7c47391bd16e4411d6 SHA512 c71be3ab3b2fe6c0932faad3df42c67a861a789a09e0b084da06fbf723c37e3bf28047ff4475a9b26bf622434517235c2677a832eebb611a47330ccc7887a7cf
|
||||
DIST libgpg-error-1.47.tar.bz2 1020862 BLAKE2B bc04efa0686b1b7d7cdce045fc080c090c1abec60349b673c2e1ce27900483aea090eb6ebcb3fb49a4eed36f18156a12413d5446f739475632f4ed2a2481ff27 SHA512 bbb4b15dae75856ee5b1253568674b56ad155524ae29a075cb5b0a7e74c4af685131775c3ea2226fff2f84ef80855e77aa661645d002b490a795c7ae57b66a30
|
||||
DIST libgpg-error-1.47.tar.bz2.sig 119 BLAKE2B d23ea6c38621407c8f9f0c6bde71abd0e50c136d2e5de9a6cef64627f5d398c344a3438995a2405c4ef148ad8638ef7125f34670819957acd7d597370f1630e5 SHA512 09343016eaf7fcc455f8ce533847153a8a9b7c36f375a8ebe71ef5fc2923edf7b70842f834f52c51874e427869487b74a2286ea0112cffad0d72f79cb6d4eceb
|
||||
|
@ -1,40 +0,0 @@
|
||||
From: David Michael <fedora.dm0@gmail.com>
|
||||
Date: Mon, 1 Jun 2020 14:24:53 +0000 (-0400)
|
||||
Subject: build: Fix cross-compiling into a separate build dir.
|
||||
X-Git-Url: http://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgpg-error.git;a=commitdiff_plain;h=013720333c6ec1d38791689bc49ba039d98e16b3
|
||||
|
||||
build: Fix cross-compiling into a separate build dir.
|
||||
|
||||
* configure.ac: Create the src directory before writing into it.
|
||||
* src/Makefile.am (EXTRA_DIST): Add gen-lock-obj.sh.
|
||||
|
||||
--
|
||||
|
||||
Signed-off-by: David Michael <fedora.dm0@gmail.com>
|
||||
---
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6bd634b..1dd6489 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -598,6 +598,7 @@ if test x$cross_compiling = xyes; then
|
||||
case $host in
|
||||
*-*-linux*)
|
||||
lock_obj_h_generated=yes
|
||||
+ mkdir src
|
||||
LOCK_ABI_VERSION=1 host=$host host_alias=$host_alias \
|
||||
CC=$CC OBJDUMP=$host_alias-objdump \
|
||||
ac_ext=$ac_ext ac_objext=$ac_objext \
|
||||
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||
index 7e36d69..b2bffd2 100644
|
||||
--- a/src/Makefile.am
|
||||
+++ b/src/Makefile.am
|
||||
@@ -102,7 +102,7 @@ EXTRA_DIST = mkstrtable.awk err-sources.h.in err-codes.h.in \
|
||||
gpg-error.vers gpg-error.def.in \
|
||||
versioninfo.rc.in gpg-error.w32-manifest.in \
|
||||
gpg-error-config-test.sh gpg-error.pc.in \
|
||||
- $(lock_obj_pub)
|
||||
+ gen-lock-obj.sh $(lock_obj_pub)
|
||||
|
||||
BUILT_SOURCES = $(srcdir)/err-sources.h $(srcdir)/err-codes.h \
|
||||
code-to-errno.h code-from-errno.h \
|
@ -1,32 +0,0 @@
|
||||
From 33593864cd54143db594c4237bba41e14179061c Mon Sep 17 00:00:00 2001
|
||||
From: David Michael <fedora.dm0@gmail.com>
|
||||
Date: Fri, 26 Mar 2021 16:06:50 +0900
|
||||
Subject: [PATCH] build: Fix generation of lock-obj-pub.native.h for cross
|
||||
build.
|
||||
|
||||
* src/gen-lock-obj.sh: Capture echo output with quotes.
|
||||
|
||||
--
|
||||
|
||||
Fixes-commit: 99ae862a96a569724f49a604ebb7d3f6d2c2d374
|
||||
Signed-off-by: David Michael <fedora.dm0@gmail.com>
|
||||
---
|
||||
src/gen-lock-obj.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/gen-lock-obj.sh b/src/gen-lock-obj.sh
|
||||
index a710f0c..258eec6 100755
|
||||
--- a/src/gen-lock-obj.sh
|
||||
+++ b/src/gen-lock-obj.sh
|
||||
@@ -38,7 +38,7 @@
|
||||
# AWK=gawk ./gen-lock-obj.sh
|
||||
#
|
||||
|
||||
-if test -n `echo -n`; then
|
||||
+if test -n "`echo -n`"; then
|
||||
ECHO_C='\c'
|
||||
ECHO_N=''
|
||||
else
|
||||
--
|
||||
2.11.0
|
||||
|
@ -3,12 +3,12 @@ This breaks our multilib builds:
|
||||
Confirm gpg-error-config works... no
|
||||
*** Please report to <https://bugs.gnupg.org> with gpg-error-config-test.log
|
||||
|
||||
--- libgpg-error-1.37/src/Makefile.am
|
||||
+++ libgpg-error-1.37/src/Makefile.am
|
||||
@@ -338,14 +338,6 @@
|
||||
--- libgpg-error-1.44/src/Makefile.am
|
||||
+++ libgpg-error-1.44/src/Makefile.am
|
||||
@@ -347,14 +347,6 @@
|
||||
cp gpg-error.h gpgrt.h
|
||||
|
||||
gpg-error-config: gpgrt-config gpg-error-config-old
|
||||
gpg-error-config: gpgrt-config gpg-error-config-old gpg-error-config-test.sh
|
||||
- @echo $(ECHO_N) "Confirm gpg-error-config works... $(ECHO_C)"
|
||||
- @if ./gpg-error-config-test.sh --old-new; then \
|
||||
- echo "good"; \
|
@ -1,68 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools multilib-minimal toolchain-funcs prefix
|
||||
|
||||
DESCRIPTION="Contains error handling functions used by GnuPG software"
|
||||
HOMEPAGE="https://www.gnupg.org/related_software/libgpg-error"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2
|
||||
https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgpg-error.git;a=blob_plain;f=src/gen-lock-obj.sh;hb=libgpg-error-1.38 -> gen-lock-obj-1.38.sh"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="common-lisp nls static-libs"
|
||||
|
||||
RDEPEND="nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="nls? ( sys-devel/gettext )"
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/gpg-error-config
|
||||
)
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/gpg-error.h
|
||||
/usr/include/gpgrt.h
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.37-remove_broken_check.patch"
|
||||
"${FILESDIR}/${P}-cross_compile.patch" #726520
|
||||
)
|
||||
|
||||
src_unpack() {
|
||||
[[ ${PV} == 1.38 ]] || die "Please remove gen-lock-obj.sh from SRC_URI and drop src_unpack"
|
||||
unpack ${P}.tar.bz2
|
||||
cp "${DISTDIR}"/gen-lock-obj-1.38.sh "${S}"/src/gen-lock-obj.sh || die
|
||||
chmod +x "${S}"/src/gen-lock-obj.sh || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
# only necessary for as long as we run eautoreconf, configure.ac
|
||||
# uses ./autogen.sh to generate PACKAGE_VERSION, but autogen.sh is
|
||||
# not a pure /bin/sh script, so it fails on some hosts
|
||||
hprefixify -w 1 autogen.sh
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
$(multilib_is_native_abi || echo --disable-languages)
|
||||
$(use_enable common-lisp languages)
|
||||
$(use_enable nls)
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
--enable-threads
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
)
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
}
|
@ -1,33 +1,47 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
inherit autotools multilib-minimal toolchain-funcs prefix
|
||||
# Maintainers should:
|
||||
# 1. Join the "Gentoo" project at https://dev.gnupg.org/project/view/27/
|
||||
# 2. Subscribe to release tasks like https://dev.gnupg.org/T6159
|
||||
# (find the one for the current release then subscribe to it +
|
||||
# any subsequent ones linked within so you're covered for a while.)
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gnupg.asc
|
||||
inherit autotools multilib-minimal toolchain-funcs prefix verify-sig
|
||||
|
||||
DESCRIPTION="Contains error handling functions used by GnuPG software"
|
||||
HOMEPAGE="https://www.gnupg.org/related_software/libgpg-error"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="common-lisp nls static-libs"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="common-lisp nls static-libs test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="nls? ( sys-devel/gettext )"
|
||||
BDEPEND="
|
||||
nls? ( sys-devel/gettext )
|
||||
verify-sig? ( sec-keys/openpgp-keys-gnupg )
|
||||
"
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/gpg-error-config
|
||||
)
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/gpg-error.h
|
||||
/usr/include/gpgrt.h
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/gpg-error-config
|
||||
/usr/bin/gpgrt-config
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.37-remove_broken_check.patch"
|
||||
"${FILESDIR}/${PN}-1.44-remove_broken_check.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
@ -52,6 +66,13 @@ multilib_src_configure() {
|
||||
$(use_enable nls)
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable test tests)
|
||||
|
||||
# See bug #699206 and its duplicates wrt gpgme-config
|
||||
# Upstream no longer install this by default and we should
|
||||
# seek to disable it at some point.
|
||||
--enable-install-gpg-error-config
|
||||
|
||||
--enable-threads
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
@ -1,34 +1,47 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
inherit autotools multilib-minimal toolchain-funcs prefix
|
||||
# Maintainers should:
|
||||
# 1. Join the "Gentoo" project at https://dev.gnupg.org/project/view/27/
|
||||
# 2. Subscribe to release tasks like https://dev.gnupg.org/T6159
|
||||
# (find the one for the current release then subscribe to it +
|
||||
# any subsequent ones linked within so you're covered for a while.)
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gnupg.asc
|
||||
inherit autotools multilib-minimal toolchain-funcs prefix verify-sig
|
||||
|
||||
DESCRIPTION="Contains error handling functions used by GnuPG software"
|
||||
HOMEPAGE="https://www.gnupg.org/related_software/libgpg-error"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="common-lisp nls static-libs"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="common-lisp nls static-libs test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="nls? ( sys-devel/gettext )"
|
||||
BDEPEND="
|
||||
nls? ( sys-devel/gettext )
|
||||
verify-sig? ( sec-keys/openpgp-keys-gnupg )
|
||||
"
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/gpg-error-config
|
||||
)
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/gpg-error.h
|
||||
/usr/include/gpgrt.h
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/gpg-error-config
|
||||
/usr/bin/gpgrt-config
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.37-remove_broken_check.patch"
|
||||
"${FILESDIR}/${P}-cross_compile.patch"
|
||||
"${FILESDIR}/${PN}-1.44-remove_broken_check.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
@ -53,6 +66,13 @@ multilib_src_configure() {
|
||||
$(use_enable nls)
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable test tests)
|
||||
|
||||
# See bug #699206 and its duplicates wrt gpgme-config
|
||||
# Upstream no longer install this by default and we should
|
||||
# seek to disable it at some point.
|
||||
--enable-install-gpg-error-config
|
||||
|
||||
--enable-threads
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<name>Lars Wendler</name>
|
||||
<email>polynomial-c@gentoo.org</email>
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
<name>Gentoo Base System</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="common-lisp">Install common-lisp files</flag>
|
||||
|
@ -1,2 +1 @@
|
||||
DIST pcre-8.44.tar.bz2 1577611 BLAKE2B ef8d5737ca1f4c72f12c8726956ce5d3bad13aa8303b7c3b5d25499e3027ddc2edcdb937d9ad2bdd437a8885f1af8757ba194aa0b2f236b6e6a3a18d2ec8f138 SHA512 f26d850aab5228799e58ac8c2306fb313889332c39e29b118ef1de57677c5c90f970d68d3f475cabc64f8b982a77f04eca990ff1057f3ccf5e19bd137997c4ac
|
||||
DIST pcre-8.45.tar.bz2 1578809 BLAKE2B 3954e08cf3c67a5e2249bf72f8d4c1a90fe7a098fffa5a0a06d0d665d07899027cfd632eab2757fcf2b1b9b413a43d5c484c8e52d05b7ca113b3bbbc4dd3bb29 SHA512 91bff52eed4a2dfc3f3bfdc9c672b88e7e2ffcf3c4b121540af8a4ae8c1ce05178430aa6b8000658b9bb7b4252239357250890e20ceb84b79cdfcde05154061a
|
||||
|
@ -1,96 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit libtool multilib-minimal preserve-libs usr-ldscript
|
||||
|
||||
DESCRIPTION="Perl-compatible regular expression library"
|
||||
HOMEPAGE="http://www.pcre.org/"
|
||||
MY_P="pcre-${PV/_rc/-RC}"
|
||||
if [[ ${PV} != *_rc* ]] ; then
|
||||
# Only the final releases are available here.
|
||||
SRC_URI="mirror://sourceforge/pcre/${MY_P}.tar.bz2
|
||||
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${MY_P}.tar.bz2"
|
||||
else
|
||||
SRC_URI="ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/Testing/${MY_P}.tar.bz2"
|
||||
fi
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="3"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
|
||||
IUSE="bzip2 +cxx +jit libedit pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
|
||||
REQUIRED_USE="readline? ( !libedit )
|
||||
libedit? ( !readline )"
|
||||
|
||||
RDEPEND="
|
||||
bzip2? ( app-arch/bzip2 )
|
||||
zlib? ( sys-libs/zlib )
|
||||
libedit? ( dev-libs/libedit )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/pcre-config
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-8.41-fix-stack-size-detection.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e "s:-lpcre ::" libpcrecpp.pc.in || die
|
||||
elibtoolize
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
--with-match-limit-recursion=$(usex recursion-limit 8192 MATCH_LIMIT)
|
||||
$(multilib_native_use_enable bzip2 pcregrep-libbz2)
|
||||
$(use_enable cxx cpp)
|
||||
$(use_enable jit)
|
||||
$(use_enable jit pcregrep-jit)
|
||||
$(use_enable pcre16)
|
||||
$(use_enable pcre32)
|
||||
$(multilib_native_use_enable libedit pcretest-libedit)
|
||||
$(multilib_native_use_enable readline pcretest-libreadline)
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable unicode utf)
|
||||
$(use_enable unicode unicode-properties)
|
||||
$(multilib_native_use_enable zlib pcregrep-libz)
|
||||
--enable-pcre8
|
||||
--enable-shared
|
||||
)
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
emake V=1 $(multilib_is_native_abi || echo "bin_PROGRAMS=")
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
$(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \
|
||||
install
|
||||
gen_usr_ldscript -a pcre
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
preserve_old_lib /$(get_libdir)/libpcre.so.0
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
preserve_old_lib_notify /$(get_libdir)/libpcre.so.0
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
@ -21,8 +21,8 @@ S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="3"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
|
||||
IUSE="bzip2 +cxx +jit libedit pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
|
||||
IUSE="bzip2 +cxx +jit libedit pcre16 pcre32 +readline static-libs unicode zlib"
|
||||
REQUIRED_USE="readline? ( !libedit )
|
||||
libedit? ( !readline )"
|
||||
|
||||
@ -52,7 +52,6 @@ src_prepare() {
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
--with-match-limit-recursion=$(usex recursion-limit 8192 MATCH_LIMIT)
|
||||
$(multilib_native_use_enable bzip2 pcregrep-libbz2)
|
||||
$(use_enable cxx cpp)
|
||||
$(use_enable jit)
|
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
@ -16,10 +16,6 @@
|
||||
Add support for command line editing to pcretest, through
|
||||
<pkg>sys-libs/readline</pkg>.
|
||||
</flag>
|
||||
<flag name="recursion-limit">
|
||||
Limit match recursion to 8192; if disabled, the default limit is
|
||||
used, which is the same as the match limit.
|
||||
</flag>
|
||||
<flag name="zlib">
|
||||
Add support for pcregrep command to search within
|
||||
gzip-compressed files (via <pkg>sys-libs/zlib</pkg>).
|
||||
|
@ -1,2 +1 @@
|
||||
DIST libpipeline-1.5.4.tar.gz 1040952 BLAKE2B 1e8fa839df90d61add79c704856d606599800f1887e056430f0fb0bd61e511c2a0bb98f2f3766f793aa648b404dfc054277d740ee5dd8a27bec740e7a23e0d13 SHA512 98d630553843176c9f6723e4df1fd844df2e71c402ef869027fb5ebe327eb9d55605a11cc159725f191ff3ef2a3a0b5eeff2d3cb1146b0fef5970923b01e433d
|
||||
DIST libpipeline-1.5.5.tar.gz 956089 BLAKE2B bfa8ed4c96c4dc7cb8360cac201835276dfe39429c993e614d8f396ad9c3175679f5a1ea205a9bf2f8738f8d3066cb50d09a9a5b5fd3d1219ba20adbb40b0e8b SHA512 adb228325c1f11e9f3566f2fc63541a90c88fe24656fc74ed0294d1eb3b80073bf4741fe7c289f53b340702145b11637d37682e3036dce41ec0fe45dcc6d62c5
|
||||
DIST libpipeline-1.5.7.tar.gz 977735 BLAKE2B b8f9ff6886f8df12e3fefbfaa0cbcb1e07d7baaa8a1dfcf4bc01c17c6632b8c6a40e55395f1e4870ca391eefb1535ebbc3931fcdee51cf5f4293741e437a2f25 SHA512 bb3be954f5d826cef805f85d65759fb197c31adf80d92360c7d0caa486e0d4877510681390ca01c028b6e805f968f14e8bf4b3eca02e429529031787e7f14d84
|
||||
|
@ -1,27 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="A pipeline manipulation library"
|
||||
HOMEPAGE="https://libpipeline.nongnu.org/"
|
||||
SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="test? ( dev-libs/check )"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
src_configure() {
|
||||
econf --disable-static
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="A pipeline manipulation library"
|
||||
HOMEPAGE="https://libpipeline.nongnu.org/"
|
||||
@ -9,17 +9,13 @@ SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="test? ( dev-libs/check )"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
src_configure() {
|
||||
econf --disable-static
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
@ -6,6 +6,6 @@
|
||||
<name>Gentoo Base System</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="gitlab">cjwatson/libpipeline</remote-id>
|
||||
<remote-id type="gitlab">libpipeline/libpipeline</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -1,2 +1 @@
|
||||
DIST libusb-1.0.24.tar.bz2 606593 BLAKE2B f6188b5af1225cf8b6d1486b6efcf48e837ee4f2e3592adab3ae6aae0a74a67aa54f40f0dd547f951a194d40954f2ee33acf741d2eee0b8449ce64f2edcf1018 SHA512 5aea36a530aaa15c6dd656d0ed3ce204522c9946d8d39ffbb290dab4a98cda388a2598da4995123d1032324056090bd429e702459626d3e8d7daeebc4e7ff3dc
|
||||
DIST libusb-1.0.25.tar.bz2 609127 BLAKE2B 3aecfbf9fc068fdfb8e612918bb895988f8400dc2c3ffd96a81792ab844d632f0c098947200512ddc37cfa9003956f8454c1d0362973a5d646a225f81cc2923b SHA512 f1e6e5577d4bd1ff136927dc66c615014a06ac332ddd797b1d1ad5f7b68e2405e66068dcb210e2f0ae3e31681603ef72efbd88bf7fbe0eb41ce700fdc3f92f9d
|
||||
DIST libusb-1.0.26.tar.bz2 620534 BLAKE2B 0cc397ecf4de0066abbff9b286a9e4fcd48658698d5e0d6b736abf56b48c1b55a05f15fff7be53fd33f767621e0c25d87275a47e05a4bcb44c4b8ac9221cd081 SHA512 fcdb85c98f21639668693c2fd522814d440972d65883984c4ae53d0555bdbdb7e8c7a32199cd4b01113556a1eb5be7841b750cc73c9f6bda79bfe1af80914e71
|
||||
|
@ -1,65 +0,0 @@
|
||||
From f6d2cb561402c3b6d3627c0eb89e009b503d9067 Mon Sep 17 00:00:00 2001
|
||||
From: Chris Dickens <christopher.a.dickens@gmail.com>
|
||||
Date: Sun, 13 Dec 2020 15:49:19 -0800
|
||||
Subject: [PATCH] linux_usbfs: Fix parsing of descriptors for
|
||||
multi-configuration devices
|
||||
|
||||
Commit e2be556bd2 ("linux_usbfs: Parse config descriptors during device
|
||||
initialization") introduced a regression for devices with multiple
|
||||
configurations. The logic that verifies the reported length of the
|
||||
configuration descriptors failed to count the length of the
|
||||
configuration descriptor itself and would truncate the actual length by
|
||||
9 bytes, leading to a parsing error for subsequent descriptors.
|
||||
|
||||
Closes #825
|
||||
|
||||
Signed-off-by: Chris Dickens <christopher.a.dickens@gmail.com>
|
||||
---
|
||||
libusb/os/linux_usbfs.c | 12 ++++++++----
|
||||
libusb/version_nano.h | 2 +-
|
||||
2 files changed, 9 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/libusb/os/linux_usbfs.c b/libusb/os/linux_usbfs.c
|
||||
index fb2ed53a..4d2dc8d6 100644
|
||||
--- a/libusb/os/linux_usbfs.c
|
||||
+++ b/libusb/os/linux_usbfs.c
|
||||
@@ -641,7 +641,12 @@ static int seek_to_next_config(struct libusb_context *ctx,
|
||||
uint8_t *buffer, size_t len)
|
||||
{
|
||||
struct usbi_descriptor_header *header;
|
||||
- int offset = 0;
|
||||
+ int offset;
|
||||
+
|
||||
+ /* Start seeking past the config descriptor */
|
||||
+ offset = LIBUSB_DT_CONFIG_SIZE;
|
||||
+ buffer += LIBUSB_DT_CONFIG_SIZE;
|
||||
+ len -= LIBUSB_DT_CONFIG_SIZE;
|
||||
|
||||
while (len > 0) {
|
||||
if (len < 2) {
|
||||
@@ -718,7 +723,7 @@ static int parse_config_descriptors(struct libusb_device *dev)
|
||||
}
|
||||
|
||||
if (priv->sysfs_dir) {
|
||||
- /*
|
||||
+ /*
|
||||
* In sysfs wTotalLength is ignored, instead the kernel returns a
|
||||
* config descriptor with verified bLength fields, with descriptors
|
||||
* with an invalid bLength removed.
|
||||
@@ -727,8 +732,7 @@ static int parse_config_descriptors(struct libusb_device *dev)
|
||||
int offset;
|
||||
|
||||
if (num_configs > 1 && idx < num_configs - 1) {
|
||||
- offset = seek_to_next_config(ctx, buffer + LIBUSB_DT_CONFIG_SIZE,
|
||||
- remaining - LIBUSB_DT_CONFIG_SIZE);
|
||||
+ offset = seek_to_next_config(ctx, buffer, remaining);
|
||||
if (offset < 0)
|
||||
return offset;
|
||||
sysfs_config_len = (uint16_t)offset;
|
||||
diff --git a/libusb/version_nano.h b/libusb/version_nano.h
|
||||
index 61a0a700..578b0979 100644
|
||||
--- a/libusb/version_nano.h
|
||||
+++ b/libusb/version_nano.h
|
||||
@@ -1 +1 @@
|
||||
-#define LIBUSB_NANO 11584
|
||||
+#define LIBUSB_NANO 11586
|
@ -1,32 +0,0 @@
|
||||
https://github.com/libusb/libusb/pull/1062
|
||||
https://github.com/libusb/libusb/issues/1063
|
||||
https://bugs.gentoo.org/832732
|
||||
|
||||
From 8bb81fe72286cdcb782c7af4f0d7ef715b2e137c Mon Sep 17 00:00:00 2001
|
||||
From: Yegor Yefremov <yegorslists@googlemail.com>
|
||||
Date: Sun, 6 Feb 2022 07:12:14 +0100
|
||||
Subject: [PATCH] linux_usbfs: fix maybe-uninitialized error
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Initialize active_config to an invalid value to avoid the following
|
||||
compilation error:
|
||||
|
||||
os/linux_usbfs.c: In function ‘op_get_configuration’:
|
||||
os/linux_usbfs.c:1452:12: error: ‘active_config’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
|
||||
1452 | *config = (uint8_t)active_config;
|
||||
|
||||
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
|
||||
--- a/libusb/os/linux_usbfs.c
|
||||
+++ b/libusb/os/linux_usbfs.c
|
||||
@@ -1429,7 +1429,7 @@ static int op_get_configuration(struct libusb_device_handle *handle,
|
||||
uint8_t *config)
|
||||
{
|
||||
struct linux_device_priv *priv = usbi_get_device_priv(handle->dev);
|
||||
- int active_config;
|
||||
+ int active_config = -1; /* to please compiler */
|
||||
int r;
|
||||
|
||||
if (priv->sysfs_dir) {
|
||||
|
@ -1,76 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
inherit multilib-minimal usr-ldscript
|
||||
|
||||
DESCRIPTION="Userspace access to USB devices"
|
||||
HOMEPAGE="https://libusb.info/ https://github.com/libusb/libusb"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="1"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||
IUSE="debug doc examples static-libs test udev"
|
||||
RESTRICT="!test? ( test )"
|
||||
REQUIRED_USE="static-libs? ( !udev )"
|
||||
|
||||
RDEPEND="udev? ( >=virtual/libudev-208:=[${MULTILIB_USEDEP}] )"
|
||||
DEPEND="${RDEPEND}
|
||||
!udev? ( virtual/os-headers )"
|
||||
BDEPEND="doc? ( app-doc/doxygen )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-multi_device_config_parsing.patch" #759814
|
||||
)
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable udev)
|
||||
$(use_enable debug debug-log)
|
||||
$(use_enable test tests-build)
|
||||
)
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
emake
|
||||
|
||||
if multilib_is_native_abi; then
|
||||
use doc && emake -C doc
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
emake check
|
||||
|
||||
# noinst_PROGRAMS from tests/Makefile.am
|
||||
if [[ -e /dev/bus/usb ]]; then
|
||||
tests/stress || die
|
||||
else
|
||||
# https://bugs.gentoo.org/824266
|
||||
ewarn "/dev/bus/usb does not exist, skipping stress test"
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
if multilib_is_native_abi; then
|
||||
gen_usr_ldscript -a usb-1.0
|
||||
|
||||
use doc && dodoc -r doc/api-1.0
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
|
||||
dodoc AUTHORS ChangeLog NEWS PORTING README TODO
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
dodoc examples/*.{c,h}
|
||||
fi
|
||||
}
|
@ -11,7 +11,7 @@ SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="1"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||
IUSE="debug doc examples static-libs test udev"
|
||||
RESTRICT="!test? ( test )"
|
||||
REQUIRED_USE="static-libs? ( !udev )"
|
||||
@ -21,10 +21,6 @@ DEPEND="${RDEPEND}
|
||||
!udev? ( virtual/os-headers )"
|
||||
BDEPEND="doc? ( app-doc/doxygen )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-fix-O3-warning.patch
|
||||
)
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
$(use_enable static-libs static)
|
@ -1 +1,2 @@
|
||||
DIST popt-1.18.tar.gz 580569 BLAKE2B c9c42eb12aa21764cde5e9b4a8b30125b547ae690b4d9d0d40b45bd3c1f7ae0b09d5086a588cf37e7bed71fe770ff840c0fd40ecf4ce5b7c1e874b938b6e0324 SHA512 86422e8762adda3d02d46c20ac74ffe389d4f991d552b6fea729f007345b6426cbeb71160284e2deaa2ce44ce754a9e6cf6ccbd64bff9bc2253df40cdc2f79a5
|
||||
DIST popt-1.19.tar.gz 596676 BLAKE2B 8f8965e2d339f0413e8d1da421ea7556526f39f089a822063d6fdc35b781a7c7ea84a91d6af3e25902c1f045f564ef956fc69cd4625e6cc008c9e3ca34923a9d SHA512 5d1b6a15337e4cd5991817c1957f97fc4ed98659870017c08f26f754e34add31d639d55ee77ca31f29bb631c0b53368c1893bd96cf76422d257f7997a11f6466
|
||||
|
@ -1,11 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
<name>Gentoo Base System</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="cpe">cpe:/a:popt_project:popt</remote-id>
|
||||
</upstream>
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
<name>Gentoo Base System</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="cpe">cpe:/a:popt_project:popt</remote-id>
|
||||
<remote-id type="github">rpm-software-management/popt</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -1,9 +1,9 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit multilib-minimal libtool
|
||||
inherit flag-o-matic multilib-minimal libtool toolchain-funcs
|
||||
|
||||
DESCRIPTION="Parse Options - Command line parser"
|
||||
HOMEPAGE="https://github.com/rpm-software-management/popt"
|
||||
@ -11,7 +11,7 @@ SRC_URI="http://ftp.rpm.org/${PN}/releases/${PN}-1.x/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="nls static-libs"
|
||||
|
||||
RDEPEND="nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )"
|
||||
@ -25,6 +25,13 @@ src_prepare() {
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
|
||||
# https://github.com/gentoo/gentoo/pull/28355
|
||||
# mold needs this too but right now tc-ld-is-mold is also not available
|
||||
if tc-ld-is-lld; then
|
||||
append-ldflags -Wl,--undefined-version
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable nls)
|
||||
|
52
sdk_container/src/third_party/portage-stable/dev-libs/popt/popt-1.19.ebuild
vendored
Normal file
52
sdk_container/src/third_party/portage-stable/dev-libs/popt/popt-1.19.ebuild
vendored
Normal file
@ -0,0 +1,52 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic multilib-minimal libtool toolchain-funcs
|
||||
|
||||
DESCRIPTION="Parse Options - Command line parser"
|
||||
HOMEPAGE="https://github.com/rpm-software-management/popt"
|
||||
SRC_URI="http://ftp.rpm.org/${PN}/releases/${PN}-1.x/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="nls static-libs"
|
||||
|
||||
RDEPEND="nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="nls? ( >=sys-devel/gettext-0.19.8 )"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Unclear what the background to this is, perhaps
|
||||
# https://git.exherbo.org/arbor.git/commit/?id=5545d22d3493279acf7a55246179f818ef22f5fa
|
||||
sed -i -e 's:lt-test1:test1:' tests/testit.sh || die
|
||||
|
||||
elibtoolize
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
|
||||
# https://github.com/gentoo/gentoo/pull/28355
|
||||
# mold needs this too but right now tc-ld-is-mold is also not available
|
||||
if tc-ld-is-lld; then
|
||||
append-ldflags -Wl,--undefined-version
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
--disable-werror
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable nls)
|
||||
)
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
}
|
@ -1,2 +1,2 @@
|
||||
DIST userspace-rcu-0.13.0.tar.bz2 608434 BLAKE2B 11b5d13f4e1a577cc33ad430eb387b26cc2db2ba9ff32c7a09f9cb6c8a418548cd87c198ab4b63be3df884d8e3878046ba817106ff2f07cbab86dd60c9bb1d34 SHA512 7288b5a4a2dca6a75ecaa8553b942b9e7be9cae25776d2448fb0b0c950af9919c369791839607c6c1e6cbd32bbd1e1cafc18ee753f0e3bdc2ed7b65488612580
|
||||
DIST userspace-rcu-0.13.1.tar.bz2 609961 BLAKE2B 96581fb3e90764870d2eb3eff6999e3c20bf206e3a0d5c910acfe693d55e0cb389fa5126a74d175f3c46655e740ecf1c1426c367eb3c28f3ef3a634848e51e83 SHA512 c86f2eb260cccb3cb6bd54ddbc0b46e60083fc99423e9403242ebed7f39a2a49c68af933ea6f373e2a9d4f9dc56f5befe030740891e28cf2fabe927a48ff8182
|
||||
DIST userspace-rcu-0.13.2.tar.bz2 611448 BLAKE2B 6d502e0035b03df262c917ba70f7442e2bd81369091b2c521fe5c32f31ed2ef7404070759f3a8910b767153e05d28e354d5e5ece2a3ba17e4a31dd7db3e1924f SHA512 e5097a7f653f51b3a47a09f79e7a153aab8fd22c0504a1127a9b33d093a9ae6a941b97c0fe175ee168e2976097aefdcdf8d5ce030afbe565c1b72f64d6f5b60a
|
||||
DIST userspace-rcu-0.14.0.tar.bz2 661322 BLAKE2B ba9fa4c6dec693d2616234187db531f00fc0ade65f7e2a57182d9441728ddfa6f3e9d4544b824ca5edf7c027a43c9231d998a309c01f4bbab1eeefe856344f77 SHA512 7297e51012f4c44ee27c0e18ed9d87bf24be34db68a5398394c1e683a045bb561cf74aa913398404c0ed5cb8011af728ea12947717fa5f27627e5ca78e63a40f
|
||||
|
@ -0,0 +1,181 @@
|
||||
This is https://github.com/loongarch64/userspace-rcu/pull/2, yet to be
|
||||
upstreamed but already reviewed and accepted by the LoongArch porting
|
||||
community.
|
||||
|
||||
(and https://github.com/urcu/userspace-rcu/pull/11)
|
||||
|
||||
From 213197eea1a711da2f7cc0c04cdf33acb1b3c50e Mon Sep 17 00:00:00 2001
|
||||
From: Wang Jing <wangjing@loongson.cn>
|
||||
Date: Tue, 8 Jun 2021 19:44:49 +0800
|
||||
Subject: [PATCH] Add LoongArch support
|
||||
|
||||
--- a/LICENSE
|
||||
+++ b/LICENSE
|
||||
@@ -44,6 +44,7 @@ MIT/X11 (BSD like) license apply to:
|
||||
compiler.h
|
||||
arch/s390.h
|
||||
uatomic/alpha.h
|
||||
+uatomic/loongarch.h
|
||||
uatomic/mips.h
|
||||
uatomic/nios2.h
|
||||
uatomic/s390.h
|
||||
--- a/README.md
|
||||
+++ b/README.md
|
||||
@@ -51,6 +51,7 @@ Currently, the following architectures are supported:
|
||||
- hppa/PA-RISC
|
||||
- m68k
|
||||
- RISC-V
|
||||
+ - LoongArch
|
||||
|
||||
Tested on:
|
||||
|
||||
--- a/include/Makefile.am
|
||||
+++ b/include/Makefile.am
|
||||
@@ -7,6 +7,7 @@ nobase_include_HEADERS = \
|
||||
urcu/arch.h \
|
||||
urcu/arch/hppa.h \
|
||||
urcu/arch/ia64.h \
|
||||
+ urcu/arch/loongarch.h \
|
||||
urcu/arch/m68k.h \
|
||||
urcu/arch/mips.h \
|
||||
urcu/arch/nios2.h \
|
||||
@@ -67,6 +68,7 @@ nobase_include_HEADERS = \
|
||||
urcu/uatomic.h \
|
||||
urcu/uatomic/hppa.h \
|
||||
urcu/uatomic/ia64.h \
|
||||
+ urcu/uatomic/loongarch.h \
|
||||
urcu/uatomic/m68k.h \
|
||||
urcu/uatomic/mips.h \
|
||||
urcu/uatomic/nios2.h \
|
||||
--- a/include/urcu/arch.h
|
||||
+++ b/include/urcu/arch.h
|
||||
@@ -49,6 +49,7 @@
|
||||
* URCU_ARCH_HPPA : All HP PA-RISC variants
|
||||
* URCU_ARCH_M68K : All Motorola 68000 variants
|
||||
* URCU_ARCH_RISCV : All RISC-V variants
|
||||
+ * URCU_ARCH_LOONGARCH : All LoongArch variants
|
||||
*/
|
||||
|
||||
#if (defined(__INTEL_OFFLOAD) || defined(__TARGET_ARCH_MIC) || defined(__MIC__))
|
||||
@@ -157,6 +158,11 @@
|
||||
#define URCU_ARCH_RISCV 1
|
||||
#include <urcu/arch/riscv.h>
|
||||
|
||||
+#elif defined(__loongarch__)
|
||||
+
|
||||
+#define URCU_ARCH_LOONGARCH 1
|
||||
+#include <urcu/arch/loongarch.h>
|
||||
+
|
||||
#else
|
||||
#error "Cannot build: unrecognized architecture, see <urcu/arch.h>."
|
||||
#endif
|
||||
--- /dev/null
|
||||
+++ b/include/urcu/arch/loongarch.h
|
||||
@@ -0,0 +1,49 @@
|
||||
+#ifndef _URCU_ARCH_LOONGARCH_H
|
||||
+#define _URCU_ARCH_LOONGARCH_H
|
||||
+
|
||||
+/*
|
||||
+ * arch/loongarch.h: trivial definitions for the LoongArch architecture.
|
||||
+ *
|
||||
+ * Copyright (c) 2021 Wang Jing <wangjing@loongson.cn>
|
||||
+ *
|
||||
+ * This library is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU Lesser General Public
|
||||
+ * License as published by the Free Software Foundation; either
|
||||
+ * version 2.1 of the License, or (at your option) any later version.
|
||||
+ *
|
||||
+ * This library 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
|
||||
+ * Lesser General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU Lesser General Public
|
||||
+ * License along with this library; if not, write to the Free Software
|
||||
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
+ */
|
||||
+
|
||||
+#include <urcu/compiler.h>
|
||||
+#include <urcu/config.h>
|
||||
+#include <urcu/syscall-compat.h>
|
||||
+
|
||||
+#ifdef __cplusplus
|
||||
+extern "C" {
|
||||
+#endif
|
||||
+
|
||||
+#include <stdlib.h>
|
||||
+#include <sys/time.h>
|
||||
+
|
||||
+/*
|
||||
+ * On Linux, define the membarrier system call number if not yet available in
|
||||
+ * the system headers.
|
||||
+ */
|
||||
+#if (defined(__linux__) && !defined(__NR_membarrier))
|
||||
+#define __NR_membarrier 283
|
||||
+#endif
|
||||
+
|
||||
+#ifdef __cplusplus
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+#include <urcu/arch/generic.h>
|
||||
+
|
||||
+#endif /* _URCU_ARCH_LOONGARCH_H */
|
||||
--- a/include/urcu/uatomic.h
|
||||
+++ b/include/urcu/uatomic.h
|
||||
@@ -51,6 +51,8 @@
|
||||
#include <urcu/uatomic/m68k.h>
|
||||
#elif defined(URCU_ARCH_RISCV)
|
||||
#include <urcu/uatomic/riscv.h>
|
||||
+#elif defined(URCU_ARCH_LOONGARCH)
|
||||
+#include <urcu/uatomic/loongarch.h>
|
||||
#else
|
||||
#error "Cannot build: unrecognized architecture, see <urcu/arch.h>."
|
||||
#endif
|
||||
--- /dev/null
|
||||
+++ b/include/urcu/uatomic/loongarch.h
|
||||
@@ -0,0 +1,44 @@
|
||||
+#ifndef _URCU_UATOMIC_ARCH_LOONGARCH_H
|
||||
+#define _URCU_UATOMIC_ARCH_LOONGARCH_H
|
||||
+
|
||||
+/*
|
||||
+ * Atomic exchange operations for the LoongArch architecture. Let GCC do it.
|
||||
+ *
|
||||
+ * Copyright (c) 2021 Wang Jing <wangjing@loongson.cn>
|
||||
+ *
|
||||
+ * 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.
|
||||
+ */
|
||||
+
|
||||
+#include <urcu/compiler.h>
|
||||
+#include <urcu/system.h>
|
||||
+
|
||||
+#ifdef __cplusplus
|
||||
+extern "C" {
|
||||
+#endif
|
||||
+
|
||||
+#define UATOMIC_HAS_ATOMIC_BYTE
|
||||
+#define UATOMIC_HAS_ATOMIC_SHORT
|
||||
+
|
||||
+#ifdef __cplusplus
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+#include <urcu/uatomic/generic.h>
|
||||
+
|
||||
+#endif /* _URCU_UATOMIC_ARCH_LOONGARCH_H */
|
@ -0,0 +1,61 @@
|
||||
https://github.com/urcu/userspace-rcu/commit/6fa8b4f80f1d2efbc90fc6d2a5fb0dc1d7fd2a19
|
||||
|
||||
From 6fa8b4f80f1d2efbc90fc6d2a5fb0dc1d7fd2a19 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Ond=C5=99ej=20Sur=C3=BD?= <ondrej@sury.org>
|
||||
Date: Fri, 17 Mar 2023 16:44:10 +0100
|
||||
Subject: [PATCH] Fix: use __noreturn__ for C11-compatibility
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
The noreturn convenience macro provided by stdnoreturn.h might get
|
||||
included before urcu headers, use __noreturn__ for better compatibility
|
||||
with code using <stdnoreturn.h> header.
|
||||
|
||||
Signed-off-by: Ondřej Surý <ondrej@sury.org>
|
||||
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
|
||||
--- a/include/urcu/uatomic/generic.h
|
||||
+++ b/include/urcu/uatomic/generic.h
|
||||
@@ -38,7 +38,7 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
#if !defined __OPTIMIZE__ || defined UATOMIC_NO_LINK_ERROR
|
||||
-static inline __attribute__((always_inline, noreturn))
|
||||
+static inline __attribute__((always_inline, __noreturn__))
|
||||
void _uatomic_link_error(void)
|
||||
{
|
||||
#ifdef ILLEGAL_INSTR
|
||||
--- a/src/urcu-call-rcu-impl.h
|
||||
+++ b/src/urcu-call-rcu-impl.h
|
||||
@@ -1064,7 +1064,7 @@ void urcu_register_rculfhash_atfork(struct urcu_atfork *atfork)
|
||||
* This unregistration function is deprecated, meant only for internal
|
||||
* use by rculfhash.
|
||||
*/
|
||||
-__attribute__((noreturn))
|
||||
+__attribute__((__noreturn__))
|
||||
void urcu_unregister_rculfhash_atfork(struct urcu_atfork *atfork __attribute__((unused)))
|
||||
{
|
||||
urcu_die(EPERM);
|
||||
--- a/tests/regression/rcutorture.h
|
||||
+++ b/tests/regression/rcutorture.h
|
||||
@@ -572,7 +572,7 @@ int stresstest(int nreaders)
|
||||
*/
|
||||
|
||||
static
|
||||
-void usage(char *argv[]) __attribute__((noreturn));
|
||||
+void usage(char *argv[]) __attribute__((__noreturn__));
|
||||
|
||||
static
|
||||
void usage(char *argv[])
|
||||
--- a/tests/utils/tap.h
|
||||
+++ b/tests/utils/tap.h
|
||||
@@ -41,7 +41,7 @@ __attribute__((format(TAP_PRINTF_FORMAT, 5, 6)))
|
||||
unsigned int _gen_result(int, const char *, const char *, unsigned int, const char *, ...);
|
||||
|
||||
int plan_no_plan(void);
|
||||
-__attribute__((noreturn))
|
||||
+__attribute__((__noreturn__))
|
||||
int plan_skip_all(const char *);
|
||||
int plan_tests(unsigned int);
|
||||
|
||||
|
@ -0,0 +1,51 @@
|
||||
https://github.com/urcu/userspace-rcu/commit/106ed13754b1b836f4b59405f4e02aea4bf5eef0
|
||||
|
||||
From 106ed13754b1b836f4b59405f4e02aea4bf5eef0 Mon Sep 17 00:00:00 2001
|
||||
From: Michael Jeanson <mjeanson@efficios.com>
|
||||
Date: Thu, 23 Mar 2023 14:23:55 -0400
|
||||
Subject: [PATCH] fix: warning 'noreturn' function does return on ppc
|
||||
|
||||
On a ppc64 system with gcc 9.5.0 I get the following error when building
|
||||
with -O0 :
|
||||
|
||||
/usr/include/urcu/uatomic/generic.h: In function 'void _uatomic_link_error()':
|
||||
/usr/include/urcu/uatomic/generic.h:53:1: warning: 'noreturn' function does return
|
||||
53 | }
|
||||
| ^
|
||||
|
||||
Split the inline function in 2 variants and apply the noreturn attribute
|
||||
only on the builtin_trap one.
|
||||
|
||||
Change-Id: I5ae8e764c4cc27af0463924a653b9eaa9f698c34
|
||||
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
|
||||
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
|
||||
--- a/include/urcu/uatomic/generic.h
|
||||
+++ b/include/urcu/uatomic/generic.h
|
||||
@@ -38,19 +38,23 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
#if !defined __OPTIMIZE__ || defined UATOMIC_NO_LINK_ERROR
|
||||
-static inline __attribute__((always_inline, __noreturn__))
|
||||
+#ifdef ILLEGAL_INSTR
|
||||
+static inline __attribute__((always_inline))
|
||||
void _uatomic_link_error(void)
|
||||
{
|
||||
-#ifdef ILLEGAL_INSTR
|
||||
/*
|
||||
* generate an illegal instruction. Cannot catch this with
|
||||
* linker tricks when optimizations are disabled.
|
||||
*/
|
||||
__asm__ __volatile__(ILLEGAL_INSTR);
|
||||
+}
|
||||
#else
|
||||
+static inline __attribute__((always_inline, __noreturn__))
|
||||
+void _uatomic_link_error(void)
|
||||
+{
|
||||
__builtin_trap();
|
||||
-#endif
|
||||
}
|
||||
+#endif
|
||||
|
||||
#else /* #if !defined __OPTIMIZE__ || defined UATOMIC_NO_LINK_ERROR */
|
||||
extern void _uatomic_link_error(void);
|
||||
|
@ -5,7 +5,7 @@
|
||||
<email>base-system@gentoo.org</email>
|
||||
<name>Gentoo Base System</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="regression-test">Run regression tests (requires FEATURES=test)</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="github">urcu/userspace-rcu</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -1,45 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools
|
||||
|
||||
DESCRIPTION="userspace RCU (read-copy-update) library"
|
||||
HOMEPAGE="https://liburcu.org/"
|
||||
SRC_URI="https://lttng.org/files/urcu/${P}.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0/8" # subslot = soname version
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86"
|
||||
IUSE="static-libs regression-test test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="test? ( sys-process/time )"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Refresh libtool (see https://github.com/gentoo/gentoo/pull/23973)
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
--enable-shared
|
||||
$(use_enable static-libs static)
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
default
|
||||
if use regression-test ; then
|
||||
emake -C tests/regression regtest
|
||||
fi
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
inherit autotools
|
||||
|
||||
@ -11,7 +11,7 @@ SRC_URI="https://lttng.org/files/urcu/${P}.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0/8" # subslot = soname version
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
IUSE="static-libs test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
@ -19,6 +19,7 @@ BDEPEND="test? ( sys-process/time )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.13.1-tests-no-benchmark.patch
|
||||
"${FILESDIR}"/${PN}-0.13.1-loong.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
@ -26,6 +27,7 @@ src_prepare() {
|
||||
|
||||
# Needed for tests patch
|
||||
# ... and refresh libtool (see https://github.com/gentoo/gentoo/pull/23973)
|
||||
# ... and for build on loong (see https://github.com/gentoo/gentoo/pull/25189)
|
||||
eautoreconf
|
||||
}
|
||||
|
58
sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/userspace-rcu-0.14.0.ebuild
vendored
Normal file
58
sdk_container/src/third_party/portage-stable/dev-libs/userspace-rcu/userspace-rcu-0.14.0.ebuild
vendored
Normal file
@ -0,0 +1,58 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools
|
||||
|
||||
DESCRIPTION="Userspace RCU (read-copy-update) library"
|
||||
HOMEPAGE="https://liburcu.org/"
|
||||
SRC_URI="https://lttng.org/files/urcu/${P}.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0/8" # subslot = soname version
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
IUSE="static-libs test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="test? ( sys-process/time )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.13.1-tests-no-benchmark.patch
|
||||
"${FILESDIR}"/${PN}-0.13.1-loong.patch
|
||||
"${FILESDIR}"/${P}-c11.patch
|
||||
"${FILESDIR}"/${P}-noreturn.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Needed for tests patch
|
||||
# ... and refresh libtool (see https://github.com/gentoo/gentoo/pull/23973)
|
||||
# ... and for build on loong (see https://github.com/gentoo/gentoo/pull/25189)
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
--enable-shared
|
||||
$(use_enable static-libs static)
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
default
|
||||
|
||||
emake -C tests/regression regtest
|
||||
|
||||
# We don't run the benchmark tests.
|
||||
rm tests/benchmark/test-suite.log || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
}
|
@ -1,3 +1 @@
|
||||
DIST gptfdisk-1.0.6.tar.gz 207017 BLAKE2B d00e0f00dc8dce3b6088250aa39e05f41c96bee2218eec1dca34a160e70129d1006abc4341031994c53e77068b5de510b923c69858903627ccf786f3cc848a86 SHA512 a3bf95c813f707d9d41513295c3419916301a0e88b4c6ade70ad7d9422a507d519e092e68a3868d53092428d159bdbb248817c4f40d8ac88b0175d5afbd79dbc
|
||||
DIST gptfdisk-1.0.7.tar.gz 207723 BLAKE2B cebb0375294b4ff8f8eb522a4ae23259714d07d670a7bfbf8664586c948c1c8bee2674649a181a7c5d22f9dfe177feb7a9648ca9936c388b419faf7b52e789d8 SHA512 8a2067523479e34c76392571692b36e6c9eadcd0aca979f1ba09904930ed92a709bfdcdfa3369230a5ab2b5a751682dc7fb4645fb5f7f1c361ee8d28e104214c
|
||||
DIST gptfdisk-1.0.8.tar.gz 208958 BLAKE2B 03c74c43fead13e90ff6cd42405e15db726f527801a9e3f1d5f6a83d3fa58f0f8e58b35edc1b12b0b2e6c7849b657ce4493ac67204d25309e6f63fe7f57f766b SHA512 0818a238e57cf6de893da7c161e8aaf2d30ad917a47750de09967ce1d83d1ab6666fa043465abaffdc293d058acc3fa87f8bc93a4b03c7c5d9a9ceb8f5b07331
|
||||
DIST gptfdisk-1.0.9.tar.gz 215065 BLAKE2B 1939ffd75972a4d7f92af2bfab90c7b0223825b5478b6b808dd35af943c687d38ba81663cd7ba5e0f9400656db4dac019c13a9f75d90b7bd716568c676c24dd2 SHA512 c2489ac7e196cb53b9fdb18d0e421571eca43c366de8922c5c7f550aadf192558e7af69b181c30747d6cf607c1670126223465eaa5e231cc589402d94a4e97a2
|
||||
|
@ -1,71 +0,0 @@
|
||||
From f063fe08e424c99f133df18bf9dce49c851bcb0a Mon Sep 17 00:00:00 2001
|
||||
From: Rod Smith <rodsmith@rodsbooks.com>
|
||||
Date: Mon, 1 Feb 2021 10:19:50 -0500
|
||||
Subject: [PATCH] Fix spurious warnings of problems on MBR disks
|
||||
|
||||
---
|
||||
NEWS | 7 +++++++
|
||||
gpt.cc | 18 +++++++++++++-----
|
||||
support.h | 2 +-
|
||||
3 files changed, 21 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index f74bad0..a7131aa 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -1,3 +1,10 @@
|
||||
+1.0.7 (?/??/2021):
|
||||
+------------------
|
||||
+
|
||||
+- Fixed bug that caused spurious warnings about the partition table
|
||||
+ header claiming an invalid size of partition entries when reading
|
||||
+ some MBR disks.
|
||||
+
|
||||
1.0.6 (1/13/2021):
|
||||
------------------
|
||||
|
||||
diff --git a/gpt.cc b/gpt.cc
|
||||
index 1b4e10f..842dfb1 100644
|
||||
--- a/gpt.cc
|
||||
+++ b/gpt.cc
|
||||
@@ -1042,11 +1042,19 @@ int GPTData::LoadHeader(struct GPTHeader *header, DiskIO & disk, uint64_t sector
|
||||
*crcOk = CheckHeaderCRC(&tempHeader);
|
||||
|
||||
if (tempHeader.sizeOfPartitionEntries != sizeof(GPTPart)) {
|
||||
- cerr << "Warning: Partition table header claims that the size of partition table\n";
|
||||
- cerr << "entries is " << tempHeader.sizeOfPartitionEntries << " bytes, but this program ";
|
||||
- cerr << " supports only " << sizeof(GPTPart) << "-byte entries.\n";
|
||||
- cerr << "Adjusting accordingly, but partition table may be garbage.\n";
|
||||
- tempHeader.sizeOfPartitionEntries = sizeof(GPTPart);
|
||||
+ // Print the below warning only if the CRC is OK -- but correct the
|
||||
+ // problem either way. The warning is printed only on a valid CRC
|
||||
+ // because otherwise this warning will display inappropriately when
|
||||
+ // reading MBR disks. If the CRC is invalid, then a warning about
|
||||
+ // that will be shown later, so the user will still know that
|
||||
+ // something is wrong.
|
||||
+ if (*crcOk) {
|
||||
+ cerr << "Warning: Partition table header claims that the size of partition table\n";
|
||||
+ cerr << "entries is " << tempHeader.sizeOfPartitionEntries << " bytes, but this program ";
|
||||
+ cerr << " supports only " << sizeof(GPTPart) << "-byte entries.\n";
|
||||
+ cerr << "Adjusting accordingly, but partition table may be garbage.\n";
|
||||
+ }
|
||||
+ tempHeader.sizeOfPartitionEntries = sizeof(GPTPart);
|
||||
}
|
||||
|
||||
if (allOK && (numParts != tempHeader.numParts) && *crcOk) {
|
||||
diff --git a/support.h b/support.h
|
||||
index d87fe9a..e3e1e12 100644
|
||||
--- a/support.h
|
||||
+++ b/support.h
|
||||
@@ -8,7 +8,7 @@
|
||||
#include <stdlib.h>
|
||||
#include <string>
|
||||
|
||||
-#define GPTFDISK_VERSION "1.0.6"
|
||||
+#define GPTFDISK_VERSION "1.0.6.1"
|
||||
|
||||
#if defined (__FreeBSD__) || defined (__FreeBSD_kernel__) || defined (__APPLE__)
|
||||
// Darwin (Mac OS) & FreeBSD: disk IOCTLs are different, and there is no lseek64
|
||||
--
|
||||
2.30.1
|
||||
|
@ -1,50 +0,0 @@
|
||||
From fded770b55fdb3a201ad515d785c17ac35705652 Mon Sep 17 00:00:00 2001
|
||||
From: Erik Larsson <catacombae@gmail.com>
|
||||
Date: Tue, 8 Jun 2021 16:11:21 +0300
|
||||
Subject: [PATCH] gptpart.cc: Remove byteswap commands in
|
||||
GPTPart::SetName(const string&).
|
||||
|
||||
The byteswapping done in GPTPart::SetName(const string&) was reversed
|
||||
later when GPTPart::ReversePartBytes() was called.
|
||||
|
||||
The intended design seems to have been to keep the fields in native
|
||||
endianness until just before the partition is written to disk when all
|
||||
the GPTPart data is byteswapped all at once with a call to
|
||||
GPTPart::ReversePartBytes().
|
||||
However this was defeated by leaving the original byteswaps in there and
|
||||
effectively the name was swapped back to the native-endian form. For big
|
||||
endian systems this meant that a UTF-16BE string was written to disk,
|
||||
violating the specification and causing interoperability problems.
|
||||
|
||||
Fixed by removing these inline byteswaps in GPTPart::SetName(const
|
||||
string&).
|
||||
---
|
||||
gptpart.cc | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
|
||||
diff --git a/gptpart.cc b/gptpart.cc
|
||||
index 81bbcf0..841140a 100644
|
||||
--- a/gptpart.cc
|
||||
+++ b/gptpart.cc
|
||||
@@ -242,7 +242,6 @@ void GPTPart::SetName(const string & theName) {
|
||||
// then to utf16le
|
||||
if ( uni < 0x10000 ) {
|
||||
name[ pos ] = (uint16_t) uni ;
|
||||
- if ( ! IsLittleEndian() ) ReverseBytes( name + pos , 2 ) ;
|
||||
pos ++ ;
|
||||
} // if
|
||||
else {
|
||||
@@ -252,10 +251,8 @@ void GPTPart::SetName(const string & theName) {
|
||||
} // if
|
||||
uni -= 0x10000 ;
|
||||
name[ pos ] = (uint16_t)( uni >> 10 ) | 0xd800 ;
|
||||
- if ( ! IsLittleEndian() ) ReverseBytes( name + pos , 2 ) ;
|
||||
pos ++ ;
|
||||
name[ pos ] = (uint16_t)( uni & 0x3ff ) | 0xdc00 ;
|
||||
- if ( ! IsLittleEndian() ) ReverseBytes( name + pos , 2 ) ;
|
||||
pos ++ ;
|
||||
}
|
||||
} // for
|
||||
--
|
||||
2.32.0
|
||||
|
@ -0,0 +1,37 @@
|
||||
From e67faca2c0ca955f56cbd22e90941cdcbdc12597 Mon Sep 17 00:00:00 2001
|
||||
From: Rod Smith <rodsmith@rodsbooks.com>
|
||||
Date: Sat, 16 Apr 2022 09:32:04 -0400
|
||||
Subject: [PATCH] Updated guid.cc to deal with minor change in libuuid
|
||||
|
||||
---
|
||||
NEWS | 3 +++
|
||||
guid.cc | 2 +-
|
||||
2 files changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index c7add56..3d90d9a 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -1,3 +1,6 @@
|
||||
+
|
||||
+- Updated guid.cc to deal with minor change in libuuid.
|
||||
+
|
||||
1.0.9 (4/14/2022):
|
||||
------------------
|
||||
|
||||
diff --git a/guid.cc b/guid.cc
|
||||
index 1e73ab7..d3e4fd5 100644
|
||||
--- a/guid.cc
|
||||
+++ b/guid.cc
|
||||
@@ -141,7 +141,7 @@ void GUIDData::Zero(void) {
|
||||
void GUIDData::Randomize(void) {
|
||||
int i, uuidGenerated = 0;
|
||||
|
||||
-#ifdef _UUID_UUID_H
|
||||
+#if defined (_UUID_UUID_H) || defined (_UL_LIBUUID_UUID_H)
|
||||
uuid_generate(uuidData);
|
||||
ReverseBytes(&uuidData[0], 4);
|
||||
ReverseBytes(&uuidData[4], 2);
|
||||
--
|
||||
2.36.1
|
||||
|
@ -0,0 +1,22 @@
|
||||
--- a/gptcl.cc
|
||||
+++ b/gptcl.cc
|
||||
@@ -156,9 +156,10 @@
|
||||
|
||||
// Assume first non-option argument is the device filename....
|
||||
device = (char*) poptGetArg(poptCon);
|
||||
- poptResetContext(poptCon);
|
||||
|
||||
if (device != NULL) {
|
||||
+ device = strdup(device);
|
||||
+ poptResetContext(poptCon);
|
||||
JustLooking(); // reset as necessary
|
||||
BeQuiet(); // Tell called functions to be less verbose & interactive
|
||||
if (LoadPartitions((string) device)) {
|
||||
@@ -498,6 +499,7 @@
|
||||
cerr << "Error encountered; not saving changes.\n";
|
||||
retval = 4;
|
||||
} // if
|
||||
+ free(device);
|
||||
} // if (device != NULL)
|
||||
poptFreeContext(poptCon);
|
||||
return retval;
|
@ -1,60 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit flag-o-matic toolchain-funcs
|
||||
|
||||
DESCRIPTION="GPT partition table manipulator for Linux"
|
||||
HOMEPAGE="https://www.rodsbooks.com/gdisk/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="kernel_linux ncurses static"
|
||||
|
||||
# libuuid from util-linux is required.
|
||||
RDEPEND="!static? (
|
||||
dev-libs/popt
|
||||
ncurses? ( sys-libs/ncurses:=[unicode(+)] )
|
||||
kernel_linux? ( sys-apps/util-linux )
|
||||
)"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
static? (
|
||||
dev-libs/popt[static-libs(+)]
|
||||
ncurses? ( sys-libs/ncurses:=[unicode(+),static-libs(+)] )
|
||||
kernel_linux? ( sys-apps/util-linux[static-libs(+)] )
|
||||
)
|
||||
"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}.1-spurious_mbr_warnings.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
tc-export CXX PKG_CONFIG
|
||||
|
||||
if ! use ncurses ; then
|
||||
sed -i \
|
||||
-e '/^all:/s: cgdisk::' \
|
||||
Makefile || die
|
||||
fi
|
||||
|
||||
sed \
|
||||
-e '/g++/s:=:?=:g' \
|
||||
-e 's:-lncursesw:$(shell $(PKG_CONFIG) --libs ncursesw):g' \
|
||||
-i Makefile || die
|
||||
|
||||
use static && append-ldflags -static
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dosbin gdisk sgdisk $(usex ncurses cgdisk '') fixparts
|
||||
doman *.8
|
||||
dodoc NEWS README
|
||||
}
|
@ -1,60 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit flag-o-matic toolchain-funcs
|
||||
|
||||
DESCRIPTION="GPT partition table manipulator for Linux"
|
||||
HOMEPAGE="https://www.rodsbooks.com/gdisk/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="kernel_linux ncurses static"
|
||||
|
||||
# libuuid from util-linux is required.
|
||||
RDEPEND="!static? (
|
||||
dev-libs/popt
|
||||
ncurses? ( sys-libs/ncurses:=[unicode(+)] )
|
||||
kernel_linux? ( sys-apps/util-linux )
|
||||
)"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
static? (
|
||||
dev-libs/popt[static-libs(+)]
|
||||
ncurses? ( sys-libs/ncurses:=[unicode(+),static-libs(+)] )
|
||||
kernel_linux? ( sys-apps/util-linux[static-libs(+)] )
|
||||
)
|
||||
"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-remove_byteswap.patch" #797412
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
tc-export CXX PKG_CONFIG
|
||||
|
||||
if ! use ncurses ; then
|
||||
sed -i \
|
||||
-e '/^all:/s: cgdisk::' \
|
||||
Makefile || die
|
||||
fi
|
||||
|
||||
sed \
|
||||
-e '/g++/s:=:?=:g' \
|
||||
-e 's:-lncursesw:$(shell $(PKG_CONFIG) --libs ncursesw):g' \
|
||||
-i Makefile || die
|
||||
|
||||
use static && append-ldflags -static
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dosbin gdisk sgdisk $(usex ncurses cgdisk '') fixparts
|
||||
doman *.8
|
||||
dodoc NEWS README
|
||||
}
|
@ -1,18 +1,18 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic toolchain-funcs
|
||||
|
||||
DESCRIPTION="GPT partition table manipulator for Linux"
|
||||
HOMEPAGE="https://www.rodsbooks.com/gdisk/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="kernel_linux ncurses static"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="ncurses static"
|
||||
|
||||
# libuuid from util-linux is required.
|
||||
RDEPEND="!static? (
|
||||
@ -30,6 +30,11 @@ DEPEND="
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.0.9-libuuid.patch" #844073
|
||||
"${FILESDIR}/${PN}-1.0.9-popt_segv.patch" #872131
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
@ -1,11 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>polynomial-c@gentoo.org</email>
|
||||
<name>Lars Wendler</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="sourceforge">gptfdisk</remote-id>
|
||||
</upstream>
|
||||
<maintainer type="person">
|
||||
<email>marecki@gentoo.org</email>
|
||||
<name>Marek Szuba</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="sourceforge">gptfdisk</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
Loading…
x
Reference in New Issue
Block a user