Merge pull request #931 from flatcar/krnowak/sys-apps-rest

Put the rest of system packages under automation
This commit is contained in:
Krzesimir Nowak 2023-08-17 09:35:43 +02:00 committed by GitHub
commit 740b86bd5c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
80 changed files with 1190 additions and 1237 deletions

View File

@ -271,6 +271,7 @@ eclass/llvm.eclass
eclass/ltprune.eclass
eclass/meson-multilib.eclass
eclass/meson.eclass
eclass/mount-boot.eclass
eclass/multibuild.eclass
eclass/multilib-build.eclass
eclass/multilib-minimal.eclass
@ -296,6 +297,7 @@ eclass/savedconfig.eclass
eclass/strip-linguas.eclass
eclass/systemd.eclass
eclass/tmpfiles.eclass
eclass/toolchain-autoconf.eclass
eclass/toolchain-funcs.eclass
eclass/toolchain.eclass
eclass/udev.eclass
@ -305,6 +307,7 @@ eclass/user-info.eclass
# eclass/usr-ldscript.eclass
eclass/vcs-clean.eclass
eclass/verify-sig.eclass
eclass/versionator.eclass
eclass/vim-doc.eclass
eclass/vim-plugin.eclass
eclass/virtualx.eclass
@ -401,6 +404,10 @@ sys-apps/usbutils
sys-apps/util-linux
sys-apps/which
sys-block/open-isns
sys-block/parted
sys-block/thin-provisioning-tools
sys-devel/autoconf
sys-devel/autoconf-archive
sys-devel/autoconf-wrapper
@ -427,15 +434,23 @@ sys-firmware/ipxe
sys-firmware/seabios-bin
sys-firmware/sgabios
sys-fs/cryptsetup
sys-fs/dosfstools
sys-fs/e2fsprogs
sys-fs/lsscsi
sys-fs/mtools
sys-fs/multipath-tools
sys-fs/quota
sys-fs/xfsprogs
sys-kernel/linux-headers
sys-libs/binutils-libs
sys-libs/gdbm
sys-libs/ldb
sys-libs/libcap
sys-libs/libcap-ng
sys-libs/libnvme
sys-libs/libseccomp
sys-libs/ncurses
sys-libs/readline
@ -444,12 +459,22 @@ sys-libs/tdb
sys-libs/tevent
sys-libs/zlib
sys-process/lsof
sys-process/procps
sys-process/psmisc
sys-process/tini
virtual/acl
virtual/dev-manager
virtual/editor
virtual/libc
virtual/libcrypt
virtual/libelf
virtual/libusb
virtual/man
virtual/openssh
virtual/os-headers
virtual/package-manager
virtual/perl-Carp
virtual/perl-Exporter
virtual/perl-ExtUtils-MakeMaker
@ -458,6 +483,8 @@ virtual/perl-File-Temp
virtual/perl-Getopt-Long
virtual/perl-IO
virtual/pkgconfig
virtual/service-manager
virtual/ssh
x11-base/xorg-proto

View File

@ -0,0 +1,8 @@
- open-isns ([0.102](https://github.com/open-iscsi/open-isns/blob/v0.102/ChangeLog))
- parted ([3.6](https://git.savannah.gnu.org/gitweb/?p=parted.git;a=blob;f=NEWS;h=52bb11697039f70e55120c571750f9ee761a75aa;hb=3b5f327b213d21e9adb9ba933c78dd898fee5b1d))
- cryptsetup ([2.6.1](https://gitlab.com/cryptsetup/cryptsetup/-/blob/v2.6.1/docs/v2.6.1-ReleaseNotes) (includes [2.6.0](https://gitlab.com/cryptsetup/cryptsetup/-/blob/v2.6.0/docs/v2.6.0-ReleaseNotes) and [2.5.0](https://gitlab.com/cryptsetup/cryptsetup/-/blob/v2.5.0/docs/v2.5.0-ReleaseNotes)))
- quota ([4.09](https://sourceforge.net/p/linuxquota/code/ci/87d2fd7635e4bca54fa2a00b8d5b073ba9ca521b/tree/Changelog))
- xfsprogs ([6.3.0](https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/tree/doc/CHANGES?h=v6.3.0))
- gdbm ([1.23](https://lists.gnu.org/archive/html/info-gnu/2022-02/msg00004.html))
- lsof ([4.98.0](https://github.com/lsof-org/lsof/blob/4.98.0/00DIST#L5471))
- psmisc ([23.6](https://gitlab.com/psmisc/psmisc/-/blob/v23.6/ChangeLog))

View File

@ -0,0 +1,43 @@
From 8969baced4cecd973f3077feba72c82c7fca34a0 Mon Sep 17 00:00:00 2001
From: Krzesimir Nowak <knowak@microsoft.com>
Date: Fri, 4 Aug 2023 11:49:18 +0200
Subject: [PATCH] libfrog: Fix cross-compilation issue with randbytes
randbytes.c was mostly split off from crc32.c and, like crc32.c, is
used for selftests, which are run on the build host. As such it should
not include platform_defs.h which in turn includes urcu.h from
userspace-rcu library, because the build host might not have the
library installed.
---
libfrog/randbytes.c | 1 -
libfrog/randbytes.h | 2 ++
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/libfrog/randbytes.c b/libfrog/randbytes.c
index f22da0d3..2023b601 100644
--- a/libfrog/randbytes.c
+++ b/libfrog/randbytes.c
@@ -6,7 +6,6 @@
*
* This is the buffer of random bytes used for self tests.
*/
-#include "platform_defs.h"
#include "libfrog/randbytes.h"
/* 4096 random bytes */
diff --git a/libfrog/randbytes.h b/libfrog/randbytes.h
index 00fd7c4c..fddea9c7 100644
--- a/libfrog/randbytes.h
+++ b/libfrog/randbytes.h
@@ -6,6 +6,8 @@
#ifndef __LIBFROG_RANDBYTES_H__
#define __LIBFROG_RANDBYTES_H__
+#include <stdint.h>
+
extern uint8_t randbytes_test_buf[];
#endif /* __LIBFROG_RANDBYTES_H__ */
--
2.25.1

View File

@ -0,0 +1 @@
Drop `0001-libfrog-Fix-cross-compilation-issue-with-randbytes.patch` when upstream or Gentoo includes it.

View File

@ -72,9 +72,6 @@
=sys-devel/automake-1.16.5-r1 ~arm64
=sys-firmware/edk2-aarch64-18.02 **
# FIPS support is still being tested.
=sys-fs/cryptsetup-2.4.3-r1 ~amd64 ~arm64
# Keep versions on both arches in sync.
=sys-libs/libselinux-3.1-r3 ~arm64
=sys-libs/libsemanage-3.1-r2 ~arm64

View File

@ -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
# @ECLASS: mount-boot.eclass
@ -13,13 +13,11 @@
# function tries to ensure that it's mounted in rw mode, exiting with an
# error if it can't. It does nothing if /boot isn't a separate partition.
case ${EAPI:-0} in
case ${EAPI} in
6|7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
esac
EXPORT_FUNCTIONS pkg_pretend pkg_preinst pkg_postinst pkg_prerm pkg_postrm
# @FUNCTION: mount-boot_is_disabled
# @INTERNAL
# @DESCRIPTION:
@ -111,3 +109,5 @@ mount-boot_pkg_prerm() {
mount-boot_pkg_postinst() { :; }
mount-boot_pkg_postrm() { :; }
EXPORT_FUNCTIONS pkg_pretend pkg_preinst pkg_postinst pkg_prerm pkg_postrm

View File

@ -1,29 +1,36 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: toolchain-autoconf.eclass
# @MAINTAINER:
# <base-system@gentoo.org>
# @SUPPORTED_EAPIS: 6 7
# @SUPPORTED_EAPIS: 7 8
# @BLURB: Common code for sys-devel/autoconf ebuilds
# @DESCRIPTION:
# This eclass contains the common phase functions migrated from
# sys-devel/autoconf eblits.
case ${EAPI:-0} in
[0-5])
die "${ECLASS} is banned in EAPI ${EAPI:-0}"
;;
[6-7])
;;
*)
die "Unknown EAPI ${EAPI:-0}"
;;
case ${EAPI} in
7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
esac
if [[ -z ${_TOOLCHAIN_AUTOCONF_ECLASS} ]]; then
_TOOLCHAIN_AUTOCONF_ECLASS=1
EXPORT_FUNCTIONS src_prepare src_configure src_install
# @ECLASS_VARIABLE: TC_AUTOCONF_BREAK_INFOS
# @DESCRIPTION:
# Enables slotting logic on the installed info pages. This includes
# mangling the pages in order to include a version number. Empty by
# default, and only exists for old ebuild revisions to use. Do not set
# in new ebuilds. Set to a non-empty value to enable.
# @DEPRECATED: none
: "${TC_AUTOCONF_BREAK_INFOS:=}"
# @ECLASS_VARIABLE: TC_AUTOCONF_INFOPATH
# @DESCRIPTION:
# Where to install info files if not slotting.
TC_AUTOCONF_INFOPATH="${EPREFIX}/usr/share/autoconf-${PV}/info"
toolchain-autoconf_src_prepare() {
find -name Makefile.in -exec sed -i '/^pkgdatadir/s:$:-@VERSION@:' {} + || die
@ -33,7 +40,15 @@ toolchain-autoconf_src_prepare() {
toolchain-autoconf_src_configure() {
# Disable Emacs in the build system since it is in a separate package.
export EMACS=no
econf --program-suffix="-${PV}" || die
local myconf=(
--program-suffix="-${PV}"
)
if [[ -z "${TC_AUTOCONF_BREAK_INFOS}" && "${SLOT}" != 0 ]]; then
myconf+=(
--infodir="${TC_AUTOCONF_INFOPATH}"
)
fi
econf "${myconf[@]}" || die
# econf updates config.{sub,guess} which forces the manpages
# to be regenerated which we dont want to do #146621
touch man/*.1
@ -72,8 +87,27 @@ slot_info_pages() {
toolchain-autoconf_src_install() {
default
slot_info_pages
if [[ -n "${TC_AUTOCONF_BREAK_INFOS}" ]]; then
slot_info_pages
else
rm -f dir || die
local major="$(ver_cut 1)"
local minor="$(ver_cut 2)"
local idx="$((99999-(major*1000+minor)))"
newenvd - "06autoconf${idx}" <<-EOF
INFOPATH="${TC_AUTOCONF_INFOPATH}"
EOF
pushd "${D}/${TC_AUTOCONF_INFOPATH}" >/dev/null || die
for f in *.info*; do
# Install convenience aliases for versioned Autoconf pages.
ln -s "$f" "${f/./-${PV}.}" || die
done
popd >/dev/null || die
fi
}
_TOOLCHAIN_AUTOCONF_ECLASS=1
fi
EXPORT_FUNCTIONS src_prepare src_configure src_install

View File

@ -1 +1,2 @@
DIST open-isns-0.101.tar.gz 301912 BLAKE2B 98c9c36640ee4d3796538a00e7ab2e4cfb057abc66a56d27ce2eb133d591ea87bcb0e4ffb31b6d72d8e8c806edffb65600c0ae7cd63c61058f36037e3db79214 SHA512 e5a392127b0d85f36e9e4aa963c0c502af8c5aea0aba6d12abb4425649969dcc20ba6e87a99083626d981438439b17b71a86320f816042d82ed5dbe7e7a63e77
DIST open-isns-0.102.tar.gz 303210 BLAKE2B d6095f8a550faabd60475df4bce644dffa85187168d01616cc016003a5536663c68adc588e21fb6ab82937ac8d5a0ff46dde8c4c2664560f4b792b0324fb5856 SHA512 f5ae8af89b85565181c2f6def9834d9dab0a15d5d9b28721cce116c5580173ed9adba219e1ede48988cb57f047578db4ece458c4a7db598412c7583e56393d2b

View File

@ -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
@ -11,7 +11,7 @@ SRC_URI="https://github.com/open-iscsi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.g
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv sparc x86"
IUSE="debug ssl static"
DEPEND="

View File

@ -0,0 +1,39 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit meson systemd
DESCRIPTION="iSNS server and client for Linux"
HOMEPAGE="https://github.com/open-iscsi/open-isns"
SRC_URI="https://github.com/open-iscsi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv sparc x86"
IUSE="ssl static"
DEPEND="
ssl? (
dev-libs/openssl:=
)
"
RDEPEND="${DEPEND}"
src_configure() {
local emesonargs=(
-Ddefault_library=$(usex static both shared)
-Dslp=disabled
-Dsystemddir=$(systemd_get_utildir)
$(meson_feature ssl security)
)
meson_src_configure
}
src_install() {
meson_src_install
keepdir /var/lib/${PN/open-}
}

View File

@ -1,2 +1,2 @@
DIST parted-3.4.tar.xz 1860300 BLAKE2B c724d3d1490c62d440b9e5dc359fef7ff623bc77ae5f867d8905245cb279ec391fa07a1a774488ad3bf7a2c477007264d7bab2635a544be8f94dc706a654a711 SHA512 e69bd1b610778e980d4595d04892f2ea1faf4ae9bfc98cd62abfc70066423f08ddaa396f9461c7beb1330d023232274606b6b26091a0458aeedd0f3f57536690
DIST parted-3.4.tar.xz.sig 508 BLAKE2B 112ad0158b1100bd9150a7c87e8f93e67d42870b82a17d4d0aa8bb5e46306f837f3f99feabaf301f8cd640c299174e5f5acf152dd1f20ea2b7ace73d57d31f14 SHA512 6b11812267e66470ba2908ee1cc78b232b0bc2519787f5a17b92cd5f8ba904b1a836833f19c5244b23d4c7810437eeb26fbbd68fac819391b342709682345472
DIST parted-3.6.tar.xz 1896164 BLAKE2B 99b6d096e4db05144c98e9f0a9a97c647aa911ee5df031244b03d5223f709d43d9302cef12dd4b2f97f42ec476510561b7f8b3b1ef7cb09d0a7c4d512e7a6739 SHA512 034a44b25718acba175212019d24f092972a791c5bd1d921ae91e17478657a77c5c5dd0c832bed7968c3a07ec6c65c0785acfac2f90c1ca5e1692f3c141693ef
DIST parted-3.6.tar.xz.sig 508 BLAKE2B 92fbf624cfeb474e36d43954ecf6c42cf86557b99c7cd477c648bdeefb3ca2b40c51c320b20ea91075276d9ccc1da4219cd843b2916157c564c92a34a35ec55f SHA512 7c845026937b29fb49085ef9e3354226b73a1c3b5f9082d440d9a8ac13d76b1d07dae0bc10d8c974d4e57bc582f38c0a908e80718dd1ff1adfad3b04699c672c

View File

@ -0,0 +1,63 @@
From 9665bdd5d6756058bb3b767eacc1c195667bf276 Mon Sep 17 00:00:00 2001
From: Kerin Millar <kfm@plushkava.net>
Date: Sat, 5 Feb 2022 03:29:34 +0000
Subject: [PATCH] tests: have printf(1) use octal numbers for POSIX conformance
Per https://pubs.opengroup.org/onlinepubs/9699919799/utilities/printf.html,
backslash-escape sequences incorporating hexadecimal numbers are non-standard.
Signed-off-by: Kerin Millar <kfm@plushkava.net>
---
tests/t0205-gpt-list-clobbers-pmbr.sh | 4 ++--
tests/t0206-gpt-print-with-corrupt-primary-clobbers-pmbr.sh | 4 ++--
tests/t2500-probe-corrupt-hfs.sh | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/tests/t0205-gpt-list-clobbers-pmbr.sh b/tests/t0205-gpt-list-clobbers-pmbr.sh
index 52f60cc..b1664fb 100644
--- a/tests/t0205-gpt-list-clobbers-pmbr.sh
+++ b/tests/t0205-gpt-list-clobbers-pmbr.sh
@@ -36,8 +36,8 @@ parted -m -s $dev u s p || fail=1
# Write non-NUL bytes all over the MBR, so we're likely to see any change.
# However, be careful to leave the type of the first partition, 0xEE,
-# as well as the final two magic bytes.
-printf '%0450d\xee%059d\x55\xaa' 0 0 | dd of=$dev count=1 conv=notrunc || fail=1
+# as well as the final two magic bytes, 0x55 0xAA.
+printf '%0450d\356%059d\125\252' 0 0 | dd of=$dev count=1 conv=notrunc || fail=1
dd if=$dev of=before count=1 || fail=1
diff --git a/tests/t0206-gpt-print-with-corrupt-primary-clobbers-pmbr.sh b/tests/t0206-gpt-print-with-corrupt-primary-clobbers-pmbr.sh
index 83c2a9c..8f2a4ef 100755
--- a/tests/t0206-gpt-print-with-corrupt-primary-clobbers-pmbr.sh
+++ b/tests/t0206-gpt-print-with-corrupt-primary-clobbers-pmbr.sh
@@ -32,8 +32,8 @@ parted -m -s $dev u s p || fail=1
# Write non-NUL bytes all over the MBR, so we're likely to see any change.
# However, be careful to leave the type of the first partition, 0xEE,
-# as well as the final two magic bytes.
-printf '%0450d\xee%059d\x55\xaa' 0 0 | dd of=$dev count=1 conv=notrunc || fail=1
+# as well as the final two magic bytes, 0x55 0xAA.
+printf '%0450d\356%059d\125\252' 0 0 | dd of=$dev count=1 conv=notrunc || fail=1
dd if=$dev of=before count=1 || fail=1
diff --git a/tests/t2500-probe-corrupt-hfs.sh b/tests/t2500-probe-corrupt-hfs.sh
index 3b4ade8..32ddcfc 100755
--- a/tests/t2500-probe-corrupt-hfs.sh
+++ b/tests/t2500-probe-corrupt-hfs.sh
@@ -29,8 +29,8 @@ compare /dev/null out || fail=1
parted -s "$dev" u s p || fail=1
-# Poke an HFS+ signature into place
-printf '\x48\x2b' | dd of=$dev seek=$((2048+2)) conv=notrunc || fail=1
+# Poke an HFS+ signature into place (0x48 0x2B)
+printf '\110\053' | dd of=$dev seek=$((2048+2)) conv=notrunc || fail=1
# Or, if starting from a valid HFS/HFS+ file system, poke these:
# offset 18 total_blocks=0(16b)
--
2.35.1

View File

@ -0,0 +1,86 @@
https://debbugs.gnu.org/61128
From c7b5c04083b8fc21c3e0d044375631d559e122e3 Mon Sep 17 00:00:00 2001
From: Kerin Millar <kfm@plushkava.net>
Date: Wed, 25 Jan 2023 15:26:46 +0000
Subject: [PATCH] Use complementation correctly in shell globs
Negation should be performed by using the <exclamation-mark> character.
Attempting to use the <circumflex> shall result in undefined behaviour.
Dash used to tolerate this violation of the spec but the following
commit put a stop to it.
https://git.kernel.org/pub/scm/utils/dash/dash.git/commit/?id=8f9cca0
Signed-off-by: Kerin Millar <kfm@plushkava.net>
Link: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_13
Bug: https://bugs.gentoo.org/890869
--- a/m4/o-direct.m4
+++ b/m4/o-direct.m4
@@ -47,14 +47,14 @@ frobnozzle
/dev/shm) ;;
/*) case $pe_dir in
# Accept $HOME or $TMP only if the value is nice and boring.
- *[^/a-zA-Z0-9_.-]*) ;;
+ *[!/a-zA-Z0-9_.-]*) ;;
*) pe_cand_dirs="$pe_cand_dirs $pe_dir";;
esac
esac
done
case $PARTED_TMPDIR in
- *[^/a-zA-Z0-9_.-]*) ;;
+ *[!/a-zA-Z0-9_.-]*) ;;
*) pe_cand_dirs="$PARTED_TMPDIR $pe_cand_dirs";;
esac
--- a/tests/t-local.sh
+++ b/tests/t-local.sh
@@ -138,7 +138,7 @@ require_512_byte_sector_size_()
peek_()
{
case $# in 2) ;; *) echo "usage: peek_ FILE 0_BASED_OFFSET" >&2; exit 1;; esac
- case $2 in *[^0-9]*) echo "peek_: invalid offset: $2" >&2; exit 1 ;; esac
+ case $2 in *[!0-9]*) echo "peek_: invalid offset: $2" >&2; exit 1 ;; esac
dd if="$1" bs=1 skip="$2" count=1
}
@@ -146,7 +146,7 @@ poke_()
{
case $# in 3) ;; *) echo "usage: poke_ FILE 0_BASED_OFFSET BYTE" >&2; exit 1;;
esac
- case $2 in *[^0-9]*) echo "poke_: invalid offset: $2" >&2; exit 1 ;; esac
+ case $2 in *[!0-9]*) echo "poke_: invalid offset: $2" >&2; exit 1 ;; esac
case $3 in ?) ;; *) echo "poke_: invalid byte: '$3'" >&2; exit 1 ;; esac
printf %s "$3" | dd of="$1" bs=1 seek="$2" count=1 conv=notrunc
}
@@ -155,7 +155,7 @@ poke_()
gpt1_pte_name_offset_()
{
local ss=$1
- case $ss in *[^0-9]*) echo "$0: invalid sector size: $ss">&2; return 1;; esac
+ case $ss in *[!0-9]*) echo "$0: invalid sector size: $ss">&2; return 1;; esac
expr $ss \* 2 + 56
return 0
}
@@ -167,7 +167,7 @@ gpt_corrupt_primary_table_()
case $# in 2) ;; *) echo "$0: expected 2 args, got $#" >&2; return 1;; esac
local dev=$1
local ss=$2
- case $ss in *[^0-9]*) echo "$0: invalid sector size: $ss">&2; return 1;; esac
+ case $ss in *[!0-9]*) echo "$0: invalid sector size: $ss">&2; return 1;; esac
# get the first byte of the name
local orig_pte_name_byte
@@ -188,7 +188,7 @@ gpt_restore_primary_table_()
case $# in 3) ;; *) echo "$0: expected 2 args, got $#" >&2; return 1;; esac
local dev=$1
local ss=$2
- case $ss in *[^0-9]*) echo "$0: invalid sector size: $ss">&2; return 1;; esac
+ case $ss in *[!0-9]*) echo "$0: invalid sector size: $ss">&2; return 1;; esac
local orig_byte=$3
poke_ $dev $(gpt1_pte_name_offset_ $ss) "$orig_byte" || return 1
}
--
2.39.1

View File

@ -0,0 +1,59 @@
https://debbugs.gnu.org/61129
From af8ed66e00bfac4a189ea32c62199bffaa3eb836 Mon Sep 17 00:00:00 2001
From: Kerin Millar <kfm@plushkava.net>
Date: Sun, 29 Jan 2023 00:34:27 +0000
Subject: [PATCH] Use any available UTF-8 locale in t0251; skip if none found
The "t0251-gpt-unicode.sh" test presently suffers from several issues
which are addressed herewith.
Do not begin by trying to match the "en_US.utf8" locale specifically.
The only requirement for the test to be conducted correctly is that the
system character type be set to UTF-8. For this, _any_ UTF-8 supporting
locale will do. Simply select the first locale that ends with ".utf8"
or "UTF-8". After all, not everyone is American, nor do all systems
using GNU glibc yet have a C.UTF-8 locale.
Escape the dot/period in the locale-matching regular expression.
Skip the test outright if no UTF-8 supporting locale can be found,
rather than spuriously fail.
Assign the locale found to LC_CTYPE. There is no need to set any of the
other locale-related environment variables for the purpose of this
test. To guarantee that LC_CTYPE takes effect, unset LC_ALL also.
Signed-off-by: Kerin Millar <kfm@plushkava.net>
Bug: https://bugs.gentoo.org/753677
--- a/tests/t0251-gpt-unicode.sh
+++ b/tests/t0251-gpt-unicode.sh
@@ -17,16 +17,21 @@
. "${srcdir=.}/init.sh"; path_prepend_ ../parted
+# LC_CTYPE must not be overridden
+unset LC_ALL
+
+# any UTF-8 locale will suffice for setting the character type
+LC_CTYPE=$(locale -a | awk '/\.(utf8|UTF-8)$/ { print; exit; }')
+if [ -z "$LC_CTYPE" ]; then
+ skip_ 'no UTF-8 supporting locale is available'
+fi
+export LC_CTYPE
+
dev=loop-file
# create zeroed device
truncate -s 10m $dev || fail=1
-LC_ALL=$(locale -a | grep en_US.utf8)
-if [ -z "$LC_ALL" ]; then
- LC_ALL=C.UTF-8
-fi
-export LC_ALL="$LC_ALL"
# create gpt label with named partition
part_name=$(printf 'foo\341\264\244')
parted -s $dev mklabel gpt mkpart primary ext2 1MiB 2MiB name 1 $part_name > empty 2>&1 || fail=1
--
2.39.1

View File

@ -1,26 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
<name>Michał Górny</name>
</maintainer>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Base System Project</name>
</maintainer>
<use>
<flag name="device-mapper">
Enable device-mapper support from <pkg>sys-fs/lvm2</pkg>
in parted
</flag>
<flag name="debug">
Enable debugging as encouraged by upstream: [The default
configuration] includes --enable-debug (by default), which
contains many assertions. Obviously, these "waste" space,
but in the past, they have caught potentially dangerous bugs
before they would have done damage, so we think it's worth
it. Also, it means we get more bug reports ;)
</flag>
</use>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
<name>Michał Górny</name>
</maintainer>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Base System Project</name>
</maintainer>
<use>
<flag name="device-mapper">
Enable device-mapper support from <pkg>sys-fs/lvm2</pkg>
in parted
</flag>
<flag name="debug">
Enable debugging as encouraged by upstream: [The default
configuration] includes --enable-debug (by default), which
contains many assertions. Obviously, these "waste" space,
but in the past, they have caught potentially dangerous bugs
before they would have done damage, so we think it's worth
it. Also, it means we get more bug reports ;)
</flag>
</use>
<upstream>
<remote-id type="savannah">parted</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,18 +1,22 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit verify-sig
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/bcl.asc
inherit autotools verify-sig
DESCRIPTION="Create, destroy, resize, check, copy partitions and file systems"
HOMEPAGE="https://www.gnu.org/software/parted/"
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )"
SRC_URI="
mirror://gnu/${PN}/${P}.tar.xz
verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )
"
LICENSE="GPL-3"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="+debug device-mapper nls readline"
# util-linux for libuuid
@ -28,19 +32,32 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
nls? ( >=sys-devel/gettext-0.12.1-r2 )
verify-sig? ( sec-keys/openpgp-keys-bcl )
verify-sig? ( >=sec-keys/openpgp-keys-bcl-20230315 )
virtual/pkgconfig
"
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/bcl.asc
DOCS=(
AUTHORS BUGS ChangeLog NEWS README THANKS TODO doc/{API,FAT,USER.jp}
)
PATCHES=(
"${FILESDIR}"/${PN}-3.2-po4a-mandir.patch
"${FILESDIR}"/${PN}-3.3-atari.patch
# https://lists.gnu.org/archive/html/bug-parted/2022-02/msg00000.html
"${FILESDIR}"/${PN}-3.4-posix-printf.patch
# https://debbugs.gnu.org/61129
"${FILESDIR}"/${PN}-3.6-tests-unicode.patch
# https://debbugs.gnu.org/61128
"${FILESDIR}"/${PN}-3.6-tests-non-bash.patch
)
# false positive
QA_CONFIG_IMPL_DECL_SKIP="MIN"
src_prepare() {
default
eautoreconf
touch doc/pt_BR/Makefile.in || die
}
@ -56,11 +73,8 @@ src_configure() {
econf "${myconf[@]}"
}
DOCS=(
AUTHORS BUGS ChangeLog NEWS README THANKS TODO doc/{API,FAT,USER.jp}
)
src_install() {
default
find "${ED}" -type f -name '*.la' -delete || die
}

View File

@ -1,2 +1 @@
DIST thin-provisioning-tools-0.7.0.tar.gz 230595 BLAKE2B 00238a682f80600e3a5bb6d0d2a9662bd0fd3ae5404d5895427f169640b469780f554c22c6a93187058e6399c76ba14a6fa8d73f2bb09aa79927dd458b58ffa9 SHA512 cb6c44c7215aadd72292d73e2374d8c0c28566adcb10c7a3de83576dbd28649ebba6e2cc59945a28921e423540969cb21f648c37e375d68f48e56a8be4a4c7b8
DIST thin-provisioning-tools-0.9.0.tar.gz 500998 BLAKE2B ac269fb6dfd1baf1572da27582ac2cd763b07aaac130a9467d05581e7a0ba1309d7dbf4c6095407111667e57af2e8183318d558ed23853f9c84b9c151c0878d9 SHA512 e1796fb3948847d72ca8247cae58017507c0a847a00201b93668eeb8fbfea4107c4c2affa5c211c149798a89b10474e83d2bd61a5545a668299be97aed591e0f

View File

@ -0,0 +1,25 @@
From f912f6630eada34dcfb1320bb46b02d149c32ad4 Mon Sep 17 00:00:00 2001
From: Gwendal Grignou <gwendal@chromium.org>
Date: Wed, 28 Jun 2023 16:08:41 -0700
Subject: [PATCH] [base] Never use gcc directly
---
Makefile.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.in b/Makefile.in
index b1fd4aa..342daf7 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -363,7 +363,7 @@ LIBFT_OBJECTS=$(subst .c,.o,$(LIBFT_SOURCE))
lib/libft.so: $(LIBFT_OBJECTS)
@echo " [LD]" $@
- $(V) gcc -shared -o $@ $+ -laio
+ $(V) $(CXX) $(CXXFLAGS) $(LDFLAGS) -shared -o $@ $+ -laio
.PHONEY: functional-test unit-test
--
2.41.0.255.g8b1d071c50-goog

View File

@ -1,59 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools flag-o-matic
DESCRIPTION="A suite of tools for thin provisioning on Linux"
HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="static test"
RESTRICT="!test? ( test )"
LIB_DEPEND="dev-libs/expat[static-libs(+)]
dev-libs/libaio[static-libs(+)]"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )
test? (
dev-lang/ruby:2.6
>=dev-cpp/gtest-1.8.0
dev-util/cucumber
dev-util/aruba
)
dev-libs/boost"
PATCHES=( "${FILESDIR}"/${PN}-0.7.0-build-fixes.patch )
src_prepare() {
default
eautoreconf
}
src_configure() {
use static && append-ldflags -static
STRIP=true econf \
--prefix="${EPREFIX}"/ \
--bindir="${EPREFIX}"/sbin \
--with-optimisation='' \
$(use_enable test testing)
}
src_compile() {
MAKEOPTS+=" V="
default
}
src_test() {
emake unit-test
}
src_install() {
emake DESTDIR="${D}" DATADIR="${ED%/}/usr/share" install
dodoc README.md TODO.org
}

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -10,7 +10,7 @@ HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
if [[ ${PV} != *9999 ]]; then
SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
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"
else
inherit git-r3
EGIT_REPO_URI='https://github.com/jthornber/thin-provisioning-tools.git'
@ -27,19 +27,13 @@ RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )
test? (
|| (
dev-lang/ruby:2.7
dev-lang/ruby:2.6
dev-lang/ruby:2.5
)
>=dev-cpp/gtest-1.8.0
dev-util/cucumber
dev-util/aruba
)
dev-libs/boost"
PATCHES=(
"${FILESDIR}"/${PN}-0.7.0-build-fixes.patch
"${FILESDIR}"/${PN}-0.9.0-build-fixes.patch
"${FILESDIR}"/0.9.0-remove-boost_iostreams.patch
)

View File

@ -1,72 +1,40 @@
# 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 flag-o-matic
inherit cargo
DESCRIPTION="A suite of tools for thin provisioning on Linux"
HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
if [[ ${PV} != *9999 ]]; then
if [[ ${PV} == *9999 ]]; then
EGIT_REPO_URI="https://github.com/jthornber/thin-provisioning-tools.git"
inherit git-r3
else
SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
else
inherit git-r3
EGIT_REPO_URI='https://github.com/jthornber/thin-provisioning-tools.git'
fi
LICENSE="GPL-3"
SLOT="0"
IUSE="static test"
RESTRICT="!test? ( test )"
LIB_DEPEND="dev-libs/expat[static-libs(+)]
dev-libs/libaio[static-libs(+)]"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )
test? (
|| (
dev-lang/ruby:2.7
dev-lang/ruby:2.6
dev-lang/ruby:2.5
)
>=dev-cpp/gtest-1.8.0
dev-util/cucumber
dev-util/aruba
)
dev-libs/boost"
# Rust
QA_FLAGS_IGNORED="usr/sbin/pdata_tools"
PATCHES=(
"${FILESDIR}"/${PN}-0.7.0-build-fixes.patch
)
src_prepare() {
default
eautoreconf
}
src_configure() {
use static && append-ldflags -static
local myeconfargs=(
--prefix="${EPREFIX}"/
--bindir="${EPREFIX}"/sbin
--with-optimisation=''
$(use_enable test testing)
)
STRIP=true econf "${myeconfargs[@]}"
src_unpack() {
if [[ ${PV} == 9999 ]] ; then
git-r3_src_unpack
cargo_live_src_unpack
else
default
fi
}
src_compile() {
emake V=
}
src_test() {
emake V= unit-test
emake V= STRIP=true
}
src_install() {
emake V= DESTDIR="${D}" DATADIR="${ED}/usr/share" install
dodoc README.md TODO.org
emake V= DESTDIR="${D}" DATADIR="${ED}/usr/share" STRIP=true install
}

View File

@ -1 +1,2 @@
DIST cryptsetup-2.4.3.tar.xz 11242152 BLAKE2B f5859d794d626cb19426a2c9afc4655fac3a1bae462daa42b37b925882804d5146aadff8733799dea89dcfdc311e628e5b806754495824705709ba105f91682f SHA512 2d52498497be37a837126d9cdc9b6331236eccf857c3482fe3347eb88fccc3cd0fd3d8b4490569603e18cfaa462431ae194bce0328f3eafa8bfe3e02e135a26e
DIST cryptsetup-2.6.1.tar.xz 11402380 BLAKE2B efd7a64d89d863876de68ff3e89d8c94ad5eca6a8d2236c52c234fbe51e9d9ee303a0c7fe7dac7df10e0062003b9c0aeddc8dc342582106c157ab2d1e742155e SHA512 0cbddbf33cbac2b834ed7e2dd47a9fc787131031a1c729f373f5c974600a838097e9cc0555f13719fc79c384a2a34b404f94ba4cc2f35f0bb1d70aef2233fd18

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -6,20 +6,22 @@ EAPI=7
inherit linux-info tmpfiles
DESCRIPTION="Tool to setup encrypted devices with dm-crypt"
HOMEPAGE="https://gitlab.com/cryptsetup/cryptsetup/blob/master/README.md"
HOMEPAGE="https://gitlab.com/cryptsetup/cryptsetup"
SRC_URI="https://www.kernel.org/pub/linux/utils/${PN}/v$(ver_cut 1-2)/${P/_/-}.tar.xz"
LICENSE="GPL-2+"
SLOT="0/12" # libcryptsetup.so version
[[ ${PV} != *_rc* ]] && \
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
CRYPTO_BACKENDS="gcrypt kernel nettle +openssl"
# we don't support nss since it doesn't allow cryptsetup to be built statically
# and it's missing ripemd160 support so it can't provide full backward compatibility
IUSE="${CRYPTO_BACKENDS} +argon2 fips nls pwquality reencrypt ssh static static-libs test +udev urandom"
RESTRICT="!test? ( test )"
REQUIRED_USE="^^ ( ${CRYPTO_BACKENDS//+/} )
static? ( !gcrypt !ssh !udev !fips )" # 496612, 832711
static? ( !gcrypt !ssh !udev !fips )
fips? ( !kernel !nettle )
" # 496612, 832711, 843863
LIB_DEPEND="
dev-libs/json-c:=[static-libs(+)]
@ -75,7 +77,7 @@ src_configure() {
local myeconfargs=(
--disable-internal-argon2
--enable-shared
--sbindir=/sbin
--sbindir="${EPREFIX}"/sbin
# for later use
--with-default-luks-format=LUKS2
--with-tmpfilesdir="${EPREFIX}/usr/lib/tmpfiles.d"

View File

@ -1,25 +1,32 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
inherit linux-info tmpfiles
DESCRIPTION="Tool to setup encrypted devices with dm-crypt"
HOMEPAGE="https://gitlab.com/cryptsetup/cryptsetup/blob/master/README.md"
HOMEPAGE="https://gitlab.com/cryptsetup/cryptsetup"
SRC_URI="https://www.kernel.org/pub/linux/utils/${PN}/v$(ver_cut 1-2)/${P/_/-}.tar.xz"
S="${WORKDIR}"/${P/_/-}
LICENSE="GPL-2+"
SLOT="0/12" # libcryptsetup.so version
[[ ${PV} != *_rc* ]] && \
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
if [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
CRYPTO_BACKENDS="gcrypt kernel nettle +openssl"
# we don't support nss since it doesn't allow cryptsetup to be built statically
# and it's missing ripemd160 support so it can't provide full backward compatibility
IUSE="${CRYPTO_BACKENDS} +argon2 nls pwquality reencrypt ssh static static-libs test +udev urandom"
IUSE="${CRYPTO_BACKENDS} +argon2 fips nls pwquality ssh static static-libs test +udev urandom"
RESTRICT="!test? ( test )"
REQUIRED_USE="^^ ( ${CRYPTO_BACKENDS//+/} )
static? ( !gcrypt !ssh !udev )" # 496612, 832711
# bug #496612, bug #832711, bug #843863
REQUIRED_USE="
^^ ( ${CRYPTO_BACKENDS//+/} )
static? ( !gcrypt !ssh !udev !fips )
fips? ( !kernel !nettle )
"
LIB_DEPEND="
dev-libs/json-c:=[static-libs(+)]
@ -34,23 +41,26 @@ LIB_DEPEND="
openssl? ( dev-libs/openssl:0=[static-libs(+)] )
pwquality? ( dev-libs/libpwquality[static-libs(+)] )
ssh? ( net-libs/libssh[static-libs(+)] )
sys-fs/lvm2[static-libs(+)]"
sys-fs/lvm2[static-libs(+)]
"
# We have to always depend on ${LIB_DEPEND} rather than put behind
# !static? () because we provide a shared library which links against
# these other packages. #414665
RDEPEND="static-libs? ( ${LIB_DEPEND} )
# these other packages. bug #414665
RDEPEND="
static-libs? ( ${LIB_DEPEND} )
${LIB_DEPEND//\[static-libs\([+-]\)\]}
udev? ( virtual/libudev:= )"
# vim-core needed for xxd in tests
DEPEND="${RDEPEND}
udev? ( virtual/libudev:= )
"
DEPEND="
${RDEPEND}
static? ( ${LIB_DEPEND} )
test? ( app-editors/vim-core )"
"
# vim-core needed for xxd in tests
BDEPEND="
virtual/pkgconfig
test? ( app-editors/vim-core )
"
S="${WORKDIR}/${P/_/-}"
pkg_setup() {
local CONFIG_CHECK="~DM_CRYPT ~CRYPTO ~CRYPTO_CBC ~CRYPTO_SHA256"
local WARNING_DM_CRYPT="CONFIG_DM_CRYPT:\tis not set (required for cryptsetup)\n"
@ -61,21 +71,17 @@ pkg_setup() {
}
src_prepare() {
sed -i '/^LOOPDEV=/s:$: || exit 0:' tests/{compat,mode}-test || die
default
sed -i '/^LOOPDEV=/s:$: || exit 0:' tests/{compat,mode}-test || die
}
src_configure() {
if use kernel ; then
ewarn "Note that kernel backend is very slow for this type of operation"
ewarn "and is provided mainly for embedded systems wanting to avoid"
ewarn "userspace crypto libraries."
fi
local myeconfargs=(
--disable-internal-argon2
--disable-asciidoc
--enable-shared
--sbindir=/sbin
--sbindir="${EPREFIX}"/sbin
# for later use
--with-default-luks-format=LUKS2
--with-tmpfilesdir="${EPREFIX}/usr/lib/tmpfiles.d"
@ -83,15 +89,16 @@ src_configure() {
$(use_enable argon2 libargon2)
$(use_enable nls)
$(use_enable pwquality)
$(use_enable reencrypt cryptsetup-reencrypt)
$(use_enable !static external-tokens)
$(use_enable static static-cryptsetup)
$(use_enable static-libs static)
$(use_enable udev)
$(use_enable !urandom dev-random)
$(use_enable ssh ssh-token)
$(usex argon2 '' '--with-luks2-pbkdf=pbkdf2')
$(usev !argon2 '--with-luks2-pbkdf=pbkdf2')
$(use_enable fips)
)
econf "${myeconfargs[@]}"
}
@ -116,21 +123,26 @@ src_install() {
mv "${ED}"/sbin/cryptsetup{.static,} || die
mv "${ED}"/sbin/veritysetup{.static,} || die
mv "${ED}"/sbin/integritysetup{.static,} || die
if use ssh ; then
mv "${ED}"/sbin/cryptsetup-ssh{.static,} || die
fi
if use reencrypt ; then
mv "${ED}"/sbin/cryptsetup-reencrypt{.static,} || die
fi
fi
find "${ED}" -type f -name "*.la" -delete || die
dodoc docs/v*ReleaseNotes
newconfd "${FILESDIR}"/2.4.0-dmcrypt.confd dmcrypt
newinitd "${FILESDIR}"/2.4.0-dmcrypt.rc dmcrypt
newconfd "${FILESDIR}"/2.4.3-dmcrypt.confd dmcrypt
newinitd "${FILESDIR}"/2.4.3-dmcrypt.rc dmcrypt
}
pkg_postinst() {
tmpfiles_process cryptsetup.conf
if use kernel ; then
ewarn "Note that kernel backend is very slow for this type of operation"
ewarn "and is provided mainly for embedded systems wanting to avoid"
ewarn "userspace crypto libraries."
fi
}

View File

@ -1,112 +0,0 @@
# /etc/conf.d/dmcrypt
# For people who run dmcrypt on top of some other layer (like raid),
# use rc_need to specify that requirement. See the runscript(8) man
# page for more information.
#--------------------
# Instructions
#--------------------
# Note regarding the syntax of this file. This file is *almost* bash,
# but each line is evaluated separately. Separate swaps/targets can be
# specified. The init-script which reads this file assumes that a
# swap= or target= line starts a new section, similar to lilo or grub
# configuration.
# Note when using gpg keys and /usr on a separate partition, you will
# have to copy /usr/bin/gpg to /bin/gpg so that it will work properly
# and ensure that gpg has been compiled statically.
# See http://bugs.gentoo.org/90482 for more information.
# Note that the init-script which reads this file detects whether your
# partition is LUKS or not. No mkfs is run unless you specify a makefs
# option.
# Global options:
#----------------
# How long to wait for each timeout (in seconds).
dmcrypt_key_timeout=1
# Max number of checks to perform (see dmcrypt_key_timeout).
#dmcrypt_max_timeout=300
# Number of password retries.
dmcrypt_retries=5
# Arguments:
#-----------
# target=<name> == Mapping name for partition.
# swap=<name> == Mapping name for swap partition.
# source='<dev>' == Real device for partition.
# Note: You can (and should) specify a tag like UUID
# for blkid (see -t option). This is safer than using
# the full path to the device.
# key='</path/to/keyfile>[:<mode>]' == Fullpath from / or from inside removable media.
# remdev='<dev>' == Device that will be assigned to removable media.
# gpg_options='<opts>' == Default are --quiet --decrypt
# options='<opts>' == cryptsetup, for LUKS you can only use --readonly
# loop_file='<file>' == Loopback file.
# Note: If you omit $source, then a free loopback will
# be looked up automatically.
# pre_mount='cmds' == commands to execute before mounting partition.
# post_mount='cmds' == commands to execute after mounting partition.
# wait=5 == wait given amount of seconds for source to appear
#-----------
# Supported Modes
# gpg == decrypt and pipe key into cryptsetup.
# Note: new-line character must not be part of key.
# Command to erase \n char: 'cat key | tr -d '\n' > cleanKey'
#--------------------
# dm-crypt examples
#--------------------
## swap
# Swap partitions. These should come first so that no keys make their
# way into unencrypted swap.
# If no options are given, they will default to: -c aes -h sha1 -d /dev/urandom
# If no makefs is given then mkswap will be assumed
#swap=crypt-swap
#source='/dev/hda2'
## /home with passphrase
#target=crypt-home
#source='/dev/hda5'
## /home with regular keyfile
#target=crypt-home
#source='/dev/hda5'
#key='/full/path/to/homekey'
## /home with gpg protected key
#target=crypt-home
#source='/dev/hda5'
#key='/full/path/to/homekey:gpg'
## /home with regular keyfile on removable media(such as usb-stick)
#target=crypt-home
#source='/dev/hda5'
#key='/full/path/to/homekey'
#remdev='/dev/sda1'
## /home with gpg protected key on removable media(such as usb-stick)
#target=crypt-home
#source='/dev/hda5'
#key='/full/path/to/homekey:gpg'
#remdev='/dev/sda1'
## /tmp with regular keyfile
#target=crypt-tmp
#source='/dev/hda6'
#key='/full/path/to/tmpkey'
#pre_mount='/sbin/mkreiserfs -f -f ${dev}'
#post_mount='chown root:root ${mount_point}; chmod 1777 ${mount_point}'
## Loopback file example
#target='crypt-loop-home'
#source='/dev/loop0'
#loop_file='/mnt/crypt/home'
# The file must be terminated by a newline. Or leave this comment last.

View File

@ -1,350 +0,0 @@
#!/sbin/openrc-run
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
depend() {
use modules
before checkfs fsck
if grep -qs ^swap= "${conf_file}" ; then
before swap
fi
}
# We support multiple dmcrypt instances based on $SVCNAME
conf_file="/etc/conf.d/${SVCNAME}"
# Get splash helpers if available.
if [ -e /sbin/splash-functions.sh ] ; then
. /sbin/splash-functions.sh
fi
# Setup mappings for an individual target/swap
# Note: This relies on variables localized in the main body below.
dm_crypt_execute() {
local dev ret mode foo source_dev
if [ -z "${target}" -a -z "${swap}" ] ; then
return
fi
# Set up default values.
: ${dmcrypt_key_timeout:=1}
: ${dmcrypt_max_timeout:=300}
: ${dmcrypt_retries:=5}
: ${wait:=5}
# Handle automatic look up of the source path.
if [ -z "${source}" -a -n "${loop_file}" ] ; then
source=$(losetup --show -f "${loop_file}")
fi
case ${source} in
*=*)
i=0
while [ ${i} -lt ${wait} ]; do
if source_dev="$(blkid -l -t "${source}" -o device)"; then
source="${source_dev}"
break
fi
: $((i += 1))
einfo "waiting for source \"${source}\" for ${target}..."
sleep 1
done
;;
esac
if [ -z "${source}" ] || [ ! -e "${source}" ] ; then
ewarn "source \"${source}\" for ${target} missing, skipping..."
return
fi
if [ -n "${target}" ] ; then
# let user set options, otherwise leave empty
: ${options:=' '}
elif [ -n "${swap}" ] ; then
if cryptsetup isLuks ${source} 2>/dev/null ; then
ewarn "The swap you have defined is a LUKS partition. Aborting crypt-swap setup."
return
fi
target=${swap}
# swap contents do not need to be preserved between boots, luks not required.
# suspend2 users should have initramfs's init handling their swap partition either way.
: ${options:='-c aes -h sha1 -d /dev/urandom'}
: ${pre_mount:='mkswap ${dev}'}
fi
if [ -n "${loop_file}" ] ; then
dev="/dev/mapper/${target}"
ebegin " Setting up loop device ${source}"
losetup ${source} ${loop_file}
fi
# cryptsetup:
# open <device> <name> # <device> is $source
# create <name> <device> # <name> is $target
local arg1="create" arg2="${target}" arg3="${source}"
if cryptsetup isLuks ${source} 2>/dev/null ; then
arg1="open"
arg2="${source}"
arg3="${target}"
fi
# Older versions reported:
# ${target} is active:
# Newer versions report:
# ${target} is active[ and is in use.]
if cryptsetup status ${target} | egrep -q ' is active' ; then
einfo "dm-crypt mapping ${target} is already configured"
return
fi
splash svc_input_begin ${SVCNAME} >/dev/null 2>&1
# Handle keys
if [ -n "${key}" ] ; then
read_abort() {
# some colors
local ans savetty resettty
[ -z "${NORMAL}" ] && eval $(eval_ecolors)
einfon " $1? (${WARN}yes${NORMAL}/${GOOD}No${NORMAL}) "
shift
# This is ugly as s**t. But POSIX doesn't provide `read -t`, so
# we end up having to implement our own crap with stty/etc...
savetty=$(stty -g)
resettty='stty ${savetty}; trap - EXIT HUP INT TERM'
trap 'eval "${resettty}"' EXIT HUP INT TERM
stty -icanon
stty min 0 time "$(( $2 * 10 ))"
ans=$(dd count=1 bs=1 2>/dev/null) || ans=''
eval "${resettty}"
if [ -z "${ans}" ] ; then
printf '\r'
else
echo
fi
case ${ans} in
[yY]) return 0;;
*) return 1;;
esac
}
# Notes: sed not used to avoid case where /usr partition is encrypted.
mode=${key##*:} && ( [ "${mode}" = "${key}" ] || [ -z "${mode}" ] ) && mode=reg
key=${key%:*}
case "${mode}" in
gpg|reg)
# handle key on removable device
if [ -n "${remdev}" ] ; then
# temp directory to mount removable device
local mntrem="${RC_SVCDIR}/dm-crypt-remdev.$$"
if [ ! -d "${mntrem}" ] ; then
if ! mkdir -p "${mntrem}" ; then
ewarn "${source} will not be decrypted ..."
einfo "Reason: Unable to create temporary mount point '${mntrem}'"
return
fi
fi
i=0
einfo "Please insert removable device for ${target}"
while [ ${i} -lt ${dmcrypt_max_timeout} ] ; do
foo=""
if mount -n -o ro "${remdev}" "${mntrem}" 2>/dev/null >/dev/null ; then
# keyfile exists?
if [ ! -e "${mntrem}${key}" ] ; then
umount -n "${mntrem}"
rmdir "${mntrem}"
einfo "Cannot find ${key} on removable media."
read_abort "Abort" ${dmcrypt_key_timeout} && return
else
key="${mntrem}${key}"
break
fi
else
[ -e "${remdev}" ] \
&& foo="mount failed" \
|| foo="mount source not found"
fi
: $((i += 1))
read_abort "Stop waiting after $i attempts (${foo})" -t 1 && return
done
else # keyfile ! on removable device
if [ ! -e "${key}" ] ; then
ewarn "${source} will not be decrypted ..."
einfo "Reason: keyfile ${key} does not exist."
return
fi
fi
;;
*)
ewarn "${source} will not be decrypted ..."
einfo "Reason: mode ${mode} is invalid."
return
;;
esac
else
mode=none
fi
ebegin " ${target} using: ${options} ${arg1} ${arg2} ${arg3}"
if [ "${mode}" = "gpg" ] ; then
: ${gpg_options:='-q -d'}
# gpg available ?
if command -v gpg >/dev/null ; then
i=0
while [ ${i} -lt ${dmcrypt_retries} ] ; do
# paranoid, don't store key in a variable, pipe it so it stays very little in ram unprotected.
# save stdin stdout stderr "values"
timeout ${dmcrypt_max_timeout} gpg ${gpg_options} ${key} 2>/dev/null | \
cryptsetup --key-file - ${options} ${arg1} ${arg2} ${arg3}
ret=$?
# The timeout command exits 124 when it times out.
[ ${ret} -eq 0 -o ${ret} -eq 124 ] && break
: $(( i += 1 ))
done
eend ${ret} "failure running cryptsetup"
else
ewarn "${source} will not be decrypted ..."
einfo "Reason: cannot find gpg application."
einfo "You have to install app-crypt/gnupg first."
einfo "If you have /usr on its own partition, try copying gpg to /bin ."
fi
else
if [ "${mode}" = "reg" ] ; then
cryptsetup ${options} -d ${key} ${arg1} ${arg2} ${arg3}
ret=$?
eend ${ret} "failure running cryptsetup"
else
cryptsetup ${options} ${arg1} ${arg2} ${arg3}
ret=$?
eend ${ret} "failure running cryptsetup"
fi
fi
if [ -d "${mntrem}" ] ; then
umount -n ${mntrem} 2>/dev/null >/dev/null
rmdir ${mntrem} 2>/dev/null >/dev/null
fi
splash svc_input_end ${SVCNAME} >/dev/null 2>&1
if [ ${ret} -ne 0 ] ; then
cryptfs_status=1
else
if [ -n "${pre_mount}" ] ; then
dev="/dev/mapper/${target}"
eval ebegin \"" pre_mount: ${pre_mount}"\"
eval "${pre_mount}" > /dev/null
ewend $? || cryptfs_status=1
fi
fi
}
# Lookup optional bootparams
get_bootparam_val() {
# We're given something like:
# foo=bar=cow
# Return the "bar=cow" part.
case $1 in
*=*)
echo "${1#*=}"
;;
esac
}
start() {
local header=true cryptfs_status=0
local gpg_options key loop_file target targetline options pre_mount post_mount source swap remdev
local x
for x in $(cat /proc/cmdline) ; do
case "${x}" in
key_timeout=*)
dmcrypt_key_timeout=$(get_bootparam_val "${x}")
;;
esac
done
while read targetline <&3 ; do
case ${targetline} in
# skip comments and blank lines
""|"#"*) continue ;;
# skip service-specific openrc configs #377927
rc_*) continue ;;
esac
${header} && ebegin "Setting up dm-crypt mappings"
header=false
# check for the start of a new target/swap
case ${targetline} in
target=*|swap=*)
# If we have a target queued up, then execute it
dm_crypt_execute
# Prepare for the next target/swap by resetting variables
unset gpg_options key loop_file target options pre_mount post_mount source swap remdev wait
;;
gpg_options=*|remdev=*|key=*|loop_file=*|options=*|pre_mount=*|post_mount=*|wait=*|source=*)
if [ -z "${target}${swap}" ] ; then
ewarn "Ignoring setting outside target/swap section: ${targetline}"
continue
fi
;;
dmcrypt_*=*)
# ignore global options
continue
;;
*)
ewarn "Skipping invalid line in ${conf_file}: ${targetline}"
;;
esac
# Queue this setting for the next call to dm_crypt_execute
eval "${targetline}"
done 3< ${conf_file}
# If we have a target queued up, then execute it
dm_crypt_execute
ewend ${cryptfs_status} "Failed to setup dm-crypt devices"
}
stop() {
local line header
# Break down all mappings
header=true
egrep "^(target|swap)=" ${conf_file} | \
while read line ; do
${header} && einfo "Removing dm-crypt mappings"
header=false
target= swap=
eval ${line}
[ -n "${swap}" ] && target=${swap}
if [ -z "${target}" ] ; then
ewarn "invalid line in ${conf_file}: ${line}"
continue
fi
ebegin " ${target}"
cryptsetup remove ${target}
eend $?
done
# Break down loop devices
header=true
grep '^source=./dev/loop' ${conf_file} | \
while read line ; do
${header} && einfo "Detaching dm-crypt loop devices"
header=false
source=
eval ${line}
ebegin " ${source}"
losetup -d "${source}"
eend $?
done
return 0
}

View File

@ -5,6 +5,7 @@
depend() {
use modules
before checkfs fsck
after dev-settle
if grep -qs ^swap= "${conf_file}" ; then
before swap
@ -109,7 +110,7 @@ dm_crypt_execute() {
# ${target} is active:
# Newer versions report:
# ${target} is active[ and is in use.]
if cryptsetup ${header_opt} status ${target} | egrep -q ' is active' ; then
if cryptsetup ${header_opt} status ${target} | grep -E -q ' is active' ; then
einfo "dm-crypt mapping ${target} is already configured"
return
fi
@ -329,7 +330,7 @@ stop() {
# Break down all mappings
print_header=true
egrep "^(target|swap)=" ${conf_file} | \
grep -E "^(target|swap)=" ${conf_file} | \
while read line ; do
${print_header} && einfo "Removing dm-crypt mappings"
print_header=false

View File

@ -18,6 +18,7 @@
<flag name="urandom">Use /dev/urandom instead of /dev/random</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:cryptsetup_project:cryptsetup</remote-id>
<remote-id type="gitlab">cryptsetup/cryptsetup</remote-id>
</upstream>
</pkgmetadata>

View File

@ -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
@ -9,7 +9,7 @@ SRC_URI="https://github.com/dosfstools/dosfstools/releases/download/v${PV}/${P}.
LICENSE="GPL-3"
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="compat +iconv test"
RESTRICT="!test? ( test )"

View File

@ -1 +1 @@
DIST lsscsi-0.32.tgz 195376 BLAKE2B 8ca0eecd5e0a0a60b9871d955daa05a92e33a8c0c799a0293c58c7882a5c0d9ba06df070ffac8bbce4183e0e5081087cd4b39a6e3c51ff30faac58d0aae67f94 SHA512 96cb87be53eae9fa3a7defa0065f4dee8ccc23805a9ed1dc93d101c5e0610b78765b61449bf6ce58c13de8aae8400e4ac6a60ad64f840d092b9d7293106c5145
DIST lsscsi-0.32.tar.gz 195376 BLAKE2B 8ca0eecd5e0a0a60b9871d955daa05a92e33a8c0c799a0293c58c7882a5c0d9ba06df070ffac8bbce4183e0e5081087cd4b39a6e3c51ff30faac58d0aae67f94 SHA512 96cb87be53eae9fa3a7defa0065f4dee8ccc23805a9ed1dc93d101c5e0610b78765b61449bf6ce58c13de8aae8400e4ac6a60ad64f840d092b9d7293106c5145

View File

@ -1,12 +1,12 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="SCSI sysfs query tool"
HOMEPAGE="http://sg.danny.cz/scsi/lsscsi.html"
SRC_URI="http://sg.danny.cz/scsi/${P}.tgz"
SRC_URI="http://sg.danny.cz/scsi/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
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 sparc x86"

View File

@ -1 +1,2 @@
DIST mtools-4.0.35.tar.bz2 455988 BLAKE2B 9c1ac7f3ad3f9f13a572d0e1ea3c3a9d79bd08f0ae963c7357a19a687b74536cd8442eb167a9e50f7d22398c56736753b0d98bccdaa4c7d8427d1c09e1dd786c SHA512 ef563b3319285667993c82d819e08cb819a6bcd71c466fc252568996b4218cfb3731107ffcd6150ba33c0837e012e02057def41e2b011f751eaf550bfa366a10
DIST mtools-4.0.42.tar.bz2 441506 BLAKE2B 07afec0aea49427ec71ae8ddde9c1dceb33b2533e9acbde3564b0715efce784b5ea8c2122ff588f84e42435abb73ac9912520fd654a078bf0336e62f35f3ce2a SHA512 fd8d56d2dea9ce5e2b311b29ebdd4d89ec7baaf5f2fbfdc85019d480eff4d198ebf0e591c0f28ee1e39d8b81d49d7d4e9ed94b0e94e5b02ce9bbc03632124811
DIST mtools-4.0.43.tar.bz2 443673 BLAKE2B d000839bbb6bc647eb5a32b08b40b1350cd0a85fd564f0705ecbfe20f8f4ef21bf2d59cd0ccd7a159c829c019c6c2f3cbdef82ff3f4a9e8828cc13d44ddabd1d SHA512 b70e483688124a653dd333ab127494dab12d413809680a4846dc4ae5c166a0b9938a2ab290e518c1f1a5b18ed96d2c2a29d92d61b16b772a4ab5e495379fe410

View File

@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="cpe">cpe:/a:mtools:*</remote-id>
<remote-id type="savannah">mtools</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,46 +1,53 @@
# 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
DESCRIPTION="utilities to access MS-DOS disks from Unix without mounting them"
DESCRIPTION="Utilities to access MS-DOS disks from Unix without mounting them"
HOMEPAGE="https://www.gnu.org/software/mtools/ https://savannah.gnu.org/projects/mtools"
SRC_URI="mirror://gnu/${PN}/${P}.tar.bz2"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86 ~x64-macos ~x64-solaris"
IUSE="X elibc_glibc"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86 ~x64-macos ~x64-solaris"
IUSE="gui"
RDEPEND="
!elibc_glibc? ( virtual/libiconv )
X? (
virtual/libiconv
gui? (
x11-libs/libICE
x11-libs/libXau
x11-libs/libSM
x11-libs/libX11
x11-libs/libXt
)"
)
"
DEPEND="${RDEPEND}"
src_configure() {
use !elibc_glibc && use !elibc_musl && append-libs "-liconv" #447688
if ! use elibc_glibc && ! use elibc_musl ; then
# bug #447688
append-libs "-liconv"
fi
local myeconfargs=(
--sysconfdir="${EPREFIX}"/etc/mtools
$(use_with X x)
$(use_with gui x)
)
econf "${myeconfargs[@]}"
}
src_install() {
local -a DOCS=( README* Release.notes )
default
insinto /etc/mtools
doins mtools.conf
# default is fine
# Default is fine
sed -i -e '/^SAMPLE FILE$/s:^:#:' "${ED}"/etc/mtools/mtools.conf || die
}

View File

@ -0,0 +1,53 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic
DESCRIPTION="Utilities to access MS-DOS disks from Unix without mounting them"
HOMEPAGE="https://www.gnu.org/software/mtools/ https://savannah.gnu.org/projects/mtools"
SRC_URI="mirror://gnu/${PN}/${P}.tar.bz2"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86 ~x64-macos ~x64-solaris"
IUSE="gui"
RDEPEND="
virtual/libiconv
gui? (
x11-libs/libICE
x11-libs/libXau
x11-libs/libSM
x11-libs/libX11
x11-libs/libXt
)
"
DEPEND="${RDEPEND}"
src_configure() {
if ! use elibc_glibc && ! use elibc_musl ; then
# bug #447688
append-libs "-liconv"
fi
local myeconfargs=(
--sysconfdir="${EPREFIX}"/etc/mtools
$(use_with gui x)
)
econf "${myeconfargs[@]}"
}
src_install() {
local -a DOCS=( README* Release.notes )
default
insinto /etc/mtools
doins mtools.conf
# Default is fine
sed -i -e '/^SAMPLE FILE$/s:^:#:' "${ED}"/etc/mtools/mtools.conf || die
}

View File

@ -1 +1 @@
DIST quota-4.06.tar.gz 520448 BLAKE2B 2cbadeade228d0154f3a8d455cc1aa6e85c9ad7854007e3188c9035abe4d5fdbdf97985fd2fa6308f486ffbe60461e0fe1139f1ec0ca415ce08292d74e0ddde1 SHA512 cece46b8e3a82e8afcf8bfc9f6b310ec91afe034102cebc031bc7d7e04287fdbffb21ab1d3e6e1825175cffa4bad0a4ecbefec0efee028d961b14ac626d5c871
DIST quota-4.09.tar.gz 523191 BLAKE2B 30b3828a45dcd7d99ff053f362917c138b1f0bcbde5f6fd3dfc1b48cb12615e5673d852f9276f2b370f9c799a2103e220d91ddf6a770aaaf8944cfb5c1131a74 SHA512 003d45f33543d4c87446e6547079cdae293b8dade01c58cf3626623721a1400ee07681395ad656c23a9ea2a62ab27c6ad24ad55600890e6e25334aba27ab1ad5

View File

@ -1,20 +0,0 @@
https://sourceforge.net/p/linuxquota/code/ci/1959f3768a284315250acd4d17a9f5ef0b8ea189/tree/quota.h?diff=43b6e31f39edbe7de4f4feeef4d0cf6be093e021
https://bugs.gentoo.org/713390
--- a/quota.h
+++ b/quota.h
@@ -1,7 +1,6 @@
#ifndef GUARD_QUOTA_H
#define GUARD_QUOTA_H
-#include <sys/cdefs.h>
#include <sys/types.h>
#include <stdint.h>
@@ -182,6 +181,6 @@
#endif
#endif
-long quotactl __P((int, const char *, qid_t, caddr_t));
+long quotactl(int, const char *, qid_t, caddr_t);
#endif /* _QUOTA_ */

View File

@ -0,0 +1,16 @@
https://sourceforge.net/p/linuxquota/patches/56/
configure: WARNING: tcpd.h not found
./configure: 8453: test: X: unexpected operator
checking that generated files are newer than configure... done
--- a/configure.ac
+++ b/configure.ac
@@ -283,7 +283,7 @@ AC_ARG_WITH([pid-dir],
[AS_HELP_STRING([--with-pid-dir=DIRECTORY], [Create PID files in this directory instead of /var/run])],
[with_pid_dir="$withval"]
)
-AS_IF([test "X$with_pid_dir" == "X" -o "$with_pid_dir" == "yes" -o "$with_pid_dir" == "no"],[
+AS_IF([test "X$with_pid_dir" = "X" -o "$with_pid_dir" = "yes" -o "$with_pid_dir" = "no"],[
with_pid_dir="/var/run"
])
AC_DEFINE_UNQUOTED([PID_DIR], ["$with_pid_dir"], [Directory for PID files])

View File

@ -0,0 +1,14 @@
https://sourceforge.net/p/linuxquota/bugs/142/
Avoids e.g. egrep warnings.
--- a/configure.ac
+++ b/configure.ac
@@ -43,7 +43,7 @@ AC_CHECK_FUNC([nl_langinfo], [
# Gettext support
# ===============
AM_GNU_GETTEXT([external])
-AM_GNU_GETTEXT_VERSION([0.12.1])
+AM_GNU_GETTEXT_VERSION([0.21])
AS_IF([test "$enable_nls" != "no"], [
enable_nls="yes"

View File

@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
inherit autotools
@ -11,12 +11,12 @@ SRC_URI="mirror://sourceforge/linuxquota/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86"
IUSE="ldap netlink nls rpc tcpd"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86"
IUSE="ldap netlink nls rpc selinux tcpd"
RDEPEND="
sys-fs/e2fsprogs
ldap? ( >=net-nds/openldap-2.3.35 )
ldap? ( >=net-nds/openldap-2.3.35:= )
netlink? (
sys-apps/dbus
dev-libs/libnl:3
@ -31,14 +31,17 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="nls? ( sys-devel/gettext )"
PDEPEND="rpc? ( net-nds/rpcbind )"
RDEPEND+=" selinux? ( sec-policy/selinux-quota )"
PATCHES=(
"${FILESDIR}"/${P}-musl-cdefs.patch
"${FILESDIR}"/${PN}-4.09-configure-bashism.patch
"${FILESDIR}"/${PN}-4.09-gettext-version.patch
)
src_prepare() {
default
# Only needed for bashism patch and stale macros patch
eautoreconf
}

View File

@ -1,3 +1,2 @@
DIST xfsprogs-5.10.0.tar.xz 1273332 BLAKE2B 8caaa0ca8a94480f131d36b383afcf732b3a5a7a3c7927b4b4da4855fc5a0fb97a56fcebb98391a4dd0f02465868a4bd857e57eeba053a419df47d42f74bc958 SHA512 da09e687c87c4b133888dba7b4458017ec028020637ea5066be0232bf5c7da18239cc33eadd02d9b99d1c835aab38cab1ec9d45ae8b83897f9157cfcb0271fbd
DIST xfsprogs-5.14.1.tar.xz 1308968 BLAKE2B fda20f824a030113717cc46de1920696dc8f9eed13b54809e6b21275cf4f8673385e8bbb1c1c668ba2592ab43fb230c9d46edf4c0e5abe59a9572cc9a90ae5da SHA512 5bb79fff45048bebee2fde85ec788658dd8dc8d5ddac222b1f74c6cd525e1239d920814e8e713f045e38398a785321bf0a7421ff1c690cd0be5dbb224f8dafea
DIST xfsprogs-5.14.2.tar.xz 1308912 BLAKE2B 04083bf7952015d64f16e1aec0fa74be1957543e2264914f69defe45a3dc9f2524d941abc064a25a2fd760ebd6dcdcdc2404fd305e08fff7f6be6c5fc11d4d2f SHA512 cb9794247a2eed8bd9f10ff811d38f97e4adbed97bad334b0fa8a26503ec224237eddd92fd78892584a153967417ab2009fb2fc8bab6ef12cd53fd20bdba1b4e
DIST xfsprogs-6.3.0.tar.xz 1328452 BLAKE2B 47a4ec45c88f26b32debd52283602d8244f996c071853b6bf7cf905f917436b1324bc9b58338346c8255201629d69e771d6c3bfd81f33f4f3c3907251d0a6c8c SHA512 dbb3e77d0d9cf184a0e647b8231350401a7549a23a0bfd9121cf2a1b48e85f71d98329dff440fc6e984bcecfdcc2a72f0f27c4989560f3c55359f21f3fb434bb
DIST xfsprogs-6.4.0.tar.xz 1344720 BLAKE2B 566a80a1fa90520c6cc2b20c8e8cde41eb83a48f0b6d4a978f9e5d43960e99b54cab3e0c2cd4147a3d8f4944e50876063fc571441c8239d6deaaa01604843a6b SHA512 831e7747640bc2964b182226d8bb6f637610b123aeec9b3cb97a5de5d5b65bde30c6b40ad2e78de6a5214e823dd75de3a2bdfddd8ab1638f5c7340a760c91b3f

View File

@ -1,10 +1,10 @@
--- xfsprogs-4.15.0/scrub/Makefile
+++ xfsprogs-4.15.0/scrub/Makefile
--- a/scrub/Makefile
+++ b/scrub/Makefile
@@ -25,7 +25,7 @@
CRONTABS = xfs_scrub_all.cron
OPTIONAL_TARGETS += $(CRONTABS)
# Don't enable the crontab by default for now
-CROND_DIR = $(PKG_LIB_DIR)/$(PKG_NAME)
-CROND_DIR = $(PKG_LIB_SCRIPT_DIR)/$(PKG_NAME)
+CROND_DIR = $(PKG_DOC_DIR)
endif

View File

@ -0,0 +1,12 @@
https://lore.kernel.org/linux-xfs/20230626095048.1290476-1-sam@gentoo.org/T/#u
--- a/po/de.po
+++ b/po/de.po
@@ -3084,7 +3084,7 @@
#: .././estimate/xfs_estimate.c:191
#, c-format
msgid "%s will take about %.1f megabytes\n"
-msgstr "%s wird etwa %.lf Megabytes einnehmen\n"
+msgstr "%s wird etwa %.1f Megabytes einnehmen\n"
#: .././estimate/xfs_estimate.c:198
#, c-format

View File

@ -1,95 +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 systemd usr-ldscript
DESCRIPTION="xfs filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/"
SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
IUSE="icu libedit nls selinux"
RDEPEND=">=sys-apps/util-linux-2.17.2
dev-libs/inih
icu? ( dev-libs/icu:= )
libedit? ( dev-libs/libedit )
"
DEPEND="${RDEPEND}"
BDEPEND="
nls? ( sys-devel/gettext )
"
RDEPEND+=" selinux? ( sec-policy/selinux-xfs )"
PATCHES=(
"${FILESDIR}"/${PN}-4.15.0-docdir.patch
"${FILESDIR}"/${PN}-5.3.0-libdir.patch
)
src_prepare() {
default
# Fix doc dir
sed -i \
-e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \
include/builddefs.in || die
# Don't install compressed docs
sed 's@\(CHANGES\)\.gz[[:space:]]@\1 @' -i doc/Makefile || die
}
src_configure() {
# include/builddefs.in will add FCFLAGS to CFLAGS which will
# unnecessarily clutter CFLAGS (and fortran isn't used)
unset FCFLAGS
export DEBUG=-DNDEBUG
# Package is honoring CFLAGS; No need to use OPTIMIZER anymore.
# However, we have to provide an empty value to avoid default
# flags.
export OPTIMIZER=" "
unset PLATFORM # if set in user env, this breaks configure
# Avoid automagic on libdevmapper, #709694
export ac_cv_search_dm_task_create=no
# Build fails with -O3 (bug #712698)
replace-flags -O3 -O2
# Upstream does NOT support --disable-static anymore,
# https://www.spinics.net/lists/linux-xfs/msg30185.html
# https://www.spinics.net/lists/linux-xfs/msg30272.html
local myconf=(
--enable-blkid
--with-crond-dir="${EPREFIX}/etc/cron.d"
--with-systemd-unit-dir="$(systemd_get_systemunitdir)"
$(use_enable icu libicu)
$(use_enable nls gettext)
$(use_enable libedit editline)
)
if is-flagq -flto ; then
myconf+=( --enable-lto )
else
myconf+=( --disable-lto )
fi
econf "${myconf[@]}"
}
src_compile() {
emake V=1
}
src_install() {
emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install
emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev
gen_usr_ldscript -a handle
}

View File

@ -1,34 +1,32 @@
# 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 flag-o-matic systemd usr-ldscript
DESCRIPTION="xfs filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/"
DESCRIPTION="XFS filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/ https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/"
SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="icu libedit nls selinux"
RDEPEND=">=sys-apps/util-linux-2.17.2
dev-libs/inih
dev-libs/userspace-rcu
RDEPEND="dev-libs/inih
dev-libs/userspace-rcu:=
>=sys-apps/util-linux-2.17.2
icu? ( dev-libs/icu:= )
libedit? ( dev-libs/libedit )
"
libedit? ( dev-libs/libedit )"
DEPEND="${RDEPEND}"
BDEPEND="
nls? ( sys-devel/gettext )
"
BDEPEND="nls? ( sys-devel/gettext )"
RDEPEND+=" selinux? ( sec-policy/selinux-xfs )"
PATCHES=(
"${FILESDIR}"/${PN}-4.15.0-docdir.patch
"${FILESDIR}"/${PN}-5.3.0-libdir.patch
"${FILESDIR}"/${PN}-5.18.0-docdir.patch
"${FILESDIR}"/${PN}-6.3.0-gettext-0.22.patch
)
src_prepare() {
@ -48,6 +46,9 @@ src_configure() {
# unnecessarily clutter CFLAGS (and fortran isn't used)
unset FCFLAGS
# If set in user env, this breaks configure
unset PLATFORM
export DEBUG=-DNDEBUG
# Package is honoring CFLAGS; No need to use OPTIMIZER anymore.
@ -55,9 +56,7 @@ src_configure() {
# flags.
export OPTIMIZER=" "
unset PLATFORM # if set in user env, this breaks configure
# Avoid automagic on libdevmapper, #709694
# Avoid automagic on libdevmapper (bug #709694)
export ac_cv_search_dm_task_create=no
# Build fails with -O3 (bug #712698)
@ -67,6 +66,7 @@ src_configure() {
# https://www.spinics.net/lists/linux-xfs/msg30185.html
# https://www.spinics.net/lists/linux-xfs/msg30272.html
local myconf=(
--enable-static
--enable-blkid
--with-crond-dir="${EPREFIX}/etc/cron.d"
--with-systemd-unit-dir="$(systemd_get_systemunitdir)"

View File

@ -1,34 +1,33 @@
# 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 flag-o-matic systemd usr-ldscript
DESCRIPTION="xfs filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/"
DESCRIPTION="XFS filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/ https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/"
SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="icu libedit nls selinux"
RDEPEND=">=sys-apps/util-linux-2.17.2
RDEPEND="
dev-libs/inih
dev-libs/userspace-rcu
dev-libs/userspace-rcu:=
>=sys-apps/util-linux-2.17.2
icu? ( dev-libs/icu:= )
libedit? ( dev-libs/libedit )
"
DEPEND="${RDEPEND}"
BDEPEND="
nls? ( sys-devel/gettext )
"
BDEPEND="nls? ( sys-devel/gettext )"
RDEPEND+=" selinux? ( sec-policy/selinux-xfs )"
PATCHES=(
"${FILESDIR}"/${PN}-4.15.0-docdir.patch
"${FILESDIR}"/${PN}-5.3.0-libdir.patch
"${FILESDIR}"/${PN}-5.18.0-docdir.patch
)
src_prepare() {
@ -48,6 +47,9 @@ src_configure() {
# unnecessarily clutter CFLAGS (and fortran isn't used)
unset FCFLAGS
# If set in user env, this breaks configure
unset PLATFORM
export DEBUG=-DNDEBUG
# Package is honoring CFLAGS; No need to use OPTIMIZER anymore.
@ -55,9 +57,7 @@ src_configure() {
# flags.
export OPTIMIZER=" "
unset PLATFORM # if set in user env, this breaks configure
# Avoid automagic on libdevmapper, #709694
# Avoid automagic on libdevmapper (bug #709694)
export ac_cv_search_dm_task_create=no
# Build fails with -O3 (bug #712698)
@ -67,6 +67,7 @@ src_configure() {
# https://www.spinics.net/lists/linux-xfs/msg30185.html
# https://www.spinics.net/lists/linux-xfs/msg30272.html
local myconf=(
--enable-static
--enable-blkid
--with-crond-dir="${EPREFIX}/etc/cron.d"
--with-systemd-unit-dir="$(systemd_get_systemunitdir)"

View File

@ -1,3 +1,2 @@
DIST gdbm-1.22.tar.gz 1090100 BLAKE2B f27c65e8cc7c71fc4f4a119b92e1d1b2068c1ec87456d5a555879dc23654ad4e7cf8172049aa9f4f9c432cc7140ff61fc36ddf6d5e45c321add67a105754a59c SHA512 67461fc4f41e825d0134175ff99c913ccb4aa7ea3d0f64f32bdedbc7677b3ecabd2c525ac6b2ee47a9561e002e4224e492b72088d57bb4862a1f8c089521ec51
DIST gdbm-1.23.tar.gz 1115854 BLAKE2B a47746577cf2f3c9b62faea496c4d6a50a8f1b0a5af448cb2215e90057c99b5b630ba3f5357c85dfb7fd98ba4e90969e30a779120c29106ed1e8736721f9bec1 SHA512 918080cb0225b221c11eb7339634a95e00c526072395f7a3d46ccf42ef020dea7c4c5bec34aff2c4f16033e1fff6583252b7e978f68b8d7f8736b0e025838e10
DIST gdbm-1.23.tar.gz.sig 181 BLAKE2B 34785e6fe8e02100084d61e989749ee388794b8af82fc59a417140807bf169c45c15935f8cf91d0ba116dfdee295e05b2b014f1539f1f128a57acfe59010d34d SHA512 6653751c04584f10aa3325bd1cb5b9f7970a786dd2a99602ea620c11a86a9ba5c342aa52627bd06c03da822e9e1600dc034d9a8f42856a287fd67f6b9f161c71

View File

@ -1,43 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal
DESCRIPTION="Standard GNU database libraries"
HOMEPAGE="https://www.gnu.org/software/gdbm/"
SRC_URI="mirror://gnu/gdbm/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0/6" # libgdbm.so 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="+berkdb nls +readline static-libs"
DEPEND="
readline? ( sys-libs/readline:0=[${MULTILIB_USEDEP}] )
"
RDEPEND="${DEPEND}"
multilib_src_configure() {
# gdbm doesn't appear to use either of these libraries
export ac_cv_lib_dbm_main=no ac_cv_lib_ndbm_main=no
local myeconfargs=(
--includedir="${EPREFIX}"/usr/include/gdbm
$(use_enable berkdb libgdbm-compat)
$(use_enable nls)
$(use_enable static-libs static)
$(use_with readline)
)
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_install_all() {
einstalldocs
if ! use static-libs ; then
find "${ED}" -name '*.la' -delete || die
fi
mv "${ED}"/usr/include/gdbm/gdbm.h "${ED}"/usr/include/ || die
}

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -13,12 +13,16 @@ SRC_URI+=" verify-sig? ( mirror://gnu/gdbm/${P}.tar.gz.sig )"
LICENSE="GPL-3"
SLOT="0/6" # libgdbm.so 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="+berkdb nls +readline static-libs"
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 ~x64-solaris"
IUSE="+berkdb nls +readline static-libs test"
RESTRICT="!test? ( test )"
DEPEND="readline? ( sys-libs/readline:=[${MULTILIB_USEDEP}] )"
RDEPEND="${DEPEND}"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-gdbm )"
BDEPEND="
test? ( dev-util/dejagnu )
verify-sig? ( sec-keys/openpgp-keys-gdbm )
"
src_prepare() {
default

View File

@ -1,11 +1,14 @@
<?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>
<use>
<flag name="berkdb">enable compatibility layer for UNIX-like dbm and ndbm interfaces</flag>
</use>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
<use>
<flag name="berkdb">enable compatibility layer for UNIX-like dbm and ndbm interfaces</flag>
</use>
<upstream>
<remote-id type="savannah">gdbm</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1 +1 @@
DIST lsof-4.94.0.tar.gz 1340224 BLAKE2B b3d3c4707dac22c5431ac37c6a9f28ba5057b9a8dce65038934f1148209ef4615012ed887e263ec648679d0d95a06c78ed83a7d76cc8d97c05c013c563938793 SHA512 852b12e621e1dbf71e5f7fd848a200339ca278fbe8c39dcd33f745d1aea4e61552c0f30a3f6469ad9d4b86a9163e677f8c95298159ebd647357734225aa06c0c
DIST lsof-4.98.0.tar.gz 734232 BLAKE2B 2f4ba4d179e8061e5bcff7dda4a0981616530bd5577fc73904e2699e6e982efee9e4270d3f2d3c68751d73cb98bfed0fd49d4c6bd967d15b4e06dcb72494d024 SHA512 6fde12497ce9cbba698be624b45e8392d551626c3e46b50ec23e661b322438ef7162dbac0d06829d56f074c7d934fa1ca98aa50ee1487125c93bebfe8eb2a2e8

View File

@ -1,37 +0,0 @@
let the preprocessor work its magic rather than executing the code
https://bugs.gentoo.org/432120
make sure to use -P here
https://bugs.gentoo.org/546636
--- a/Configure
+++ b/Configure
@@ -2730,20 +2730,17 @@ LOCKF_OWNER4
rm -f ${LSOF_TMPC}.*
cat > $LSOF_TMPC.c << .LSOF_END_HERE_DOC1
#include <features.h>
-main() {
+#undef XXX
#if defined(__GLIBC__) && defined(__GLIBC_MINOR__)
-printf("-DGLIBCV=%d\n",__GLIBC__*100+__GLIBC_MINOR__);
+XXX: __GLIBC__ * 100 + __GLIBC_MINOR__
#elif defined(__GLIBC__)
-printf("-DGLIBCV=%d00\n",__GLIBC__);
-#else
-printf("\n");
+XXX: __GLIBC__ * 100
#endif
-return(0); }
.LSOF_END_HERE_DOC1
- $LINUX_CONF_CC ${LSOF_TMPC}.c -I$LSOF_INCLUDE -o ${LSOF_TMPC}.x > /dev/null 2>&1
+ $LINUX_CONF_CC ${LSOF_TMPC}.c -E -P -I$LSOF_INCLUDE 2>/dev/null | sed -n '/^XXX:/s|.*:||p' > ${LSOF_TMPC}.x
- if test -x ${LSOF_TMPC}.x # {
+ if test -s ${LSOF_TMPC}.x # {
then
- LINUX_CLIB=`${LSOF_TMPC}.x`
+ LINUX_CLIB="-DGLIBCV=$(( `cat ${LSOF_TMPC}.x` ))"
LSOF_TMP=$?
else
LINUX_CLIB=""

View File

@ -1,63 +0,0 @@
https://bugs.gentoo.org/797358
From 21cb1dad1243f4c0a427d893babab12e48b60f0e Mon Sep 17 00:00:00 2001
From: Masatake YAMATO <yamato@redhat.com>
Date: Sun, 20 Jun 2021 21:40:55 +0900
Subject: [PATCH] Adjust alignment of buffer passed to stat()
Close #160.
The original code passes char[] buffer to stat().
This can be cause a SIGBUS.
#160 reported an actual crash on armv7a + glibc-2.33 platform.
See also https://sourceware.org/bugzilla/show_bug.cgi?id=27993.
The issue is reported by @10ne1.
Signed-off-by: Masatake YAMATO <yamato@redhat.com>
[Adrian: Backported to 4.94]
Signed-off-by: Adrian Ratiu <adrian.ratiu@collabora.com>
--- a/misc.c
+++ b/misc.c
@@ -293,7 +293,15 @@ doinchild(fn, fp, rbuf, rbln)
*/
int r_al, r_rbln;
- char r_arg[MAXPATHLEN+1], r_rbuf[MAXPATHLEN+1];
+ char r_arg[MAXPATHLEN+1];
+ union {
+ char r_rbuf[MAXPATHLEN+1];
+ /*
+ * This field is only for adjusting the alignment of r_rbuf that
+ * can be used as an argument for stat().
+ */
+ struct stat _;
+ } r;
int (*r_fn)();
/*
* Close sufficient open file descriptors except Pipes[0] and
@@ -358,16 +366,16 @@ doinchild(fn, fp, rbuf, rbln)
|| read(Pipes[0], r_arg, r_al) != r_al
|| read(Pipes[0], (char *)&r_rbln, sizeof(r_rbln))
!= (int)sizeof(r_rbln)
- || r_rbln < 1 || r_rbln > (int)sizeof(r_rbuf))
+ || r_rbln < 1 || r_rbln > (int)sizeof(r.r_rbuf))
break;
- zeromem (r_rbuf, r_rbln);
- rv = r_fn(r_arg, r_rbuf, r_rbln);
+ zeromem (r.r_rbuf, r_rbln);
+ rv = r_fn(r_arg, r.r_rbuf, r_rbln);
en = errno;
if (write(Pipes[3], (char *)&rv, sizeof(rv))
!= sizeof(rv)
|| write(Pipes[3], (char *)&en, sizeof(en))
!= sizeof(en)
- || write(Pipes[3], r_rbuf, r_rbln) != r_rbln)
+ || write(Pipes[3], r.r_rbuf, r_rbln) != r_rbln)
break;
}
(void) _exit(0);
--
2.32.0

View File

@ -0,0 +1,28 @@
https://bugs.gentoo.org/910547
https://github.com/lsof-org/lsof/commit/437824cf35daf5a505bed5b619bef95af090ecc4
From 437824cf35daf5a505bed5b619bef95af090ecc4 Mon Sep 17 00:00:00 2001
From: Kalin KOZHUHAROV <me.kalin@gmail.com>
Date: Wed, 19 Jul 2023 15:23:13 +0200
Subject: [PATCH] src/util.c add proper includes (#294)
* src/util.c add proper includes
Fixes #293 for lsof-org/lsof
Signed-off-by: Kalin KOZHUHAROV <kalin@thinrope.net>
---------
Signed-off-by: Kalin KOZHUHAROV <kalin@thinrope.net>
Co-authored-by: Jiajie Chen <c@jia.je>
--- a/util.c
+++ b/util.c
@@ -35,6 +35,7 @@
* 4. This notice may not be removed or altered.
*/
+#include "lsof.h"
#if defined(HAS_STRFTIME)
#include <time.h>

View File

@ -1,117 +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
MY_P="${P/-/_}"
DESCRIPTION="Lists open files for running Unix processes"
HOMEPAGE="https://github.com/lsof-org/lsof"
SRC_URI="https://github.com/lsof-org/lsof/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="lsof"
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 ~x64-solaris ~x86-solaris"
IUSE="examples ipv6 rpc selinux"
RDEPEND="rpc? ( net-libs/libtirpc )
selinux? ( sys-libs/libselinux )"
DEPEND="${RDEPEND}"
BDEPEND="
sys-apps/groff
rpc? ( virtual/pkgconfig )
"
# needs fixing first
RESTRICT="test"
PATCHES=(
"${FILESDIR}"/${PN}-4.85-cross.patch #432120
"${FILESDIR}"/${PN}-4.94-arm-sigbus-fix.patch
)
src_prepare() {
default
# fix POSIX compliance with `echo`
sed -i \
-e 's:echo -n:printf:' \
AFSConfig Configure Customize Inventory tests/CkTestDB || die
# Convert `test -r header.h` into a compile test.
# Make sure we convert `test ... -a ...` into two `test` commands
# so we can then convert both over into a compile test. #601432
sed -i -E \
-e '/if test .* -a /s: -a : \&\& test :g' \
-e '/test -r/s:test -r \$\{LSOF_INCLUDE\}/([[:alnum:]/._]*):echo "#include <\1>" | ${LSOF_CC} ${LSOF_CFGF} -E - >/dev/null 2>\&1:g' \
-e 's:grep (.*) \$\{LSOF_INCLUDE\}/([[:alnum:]/._]*):echo "#include <\2>" | ${LSOF_CC} ${LSOF_CFGF} -E -P -dD - 2>/dev/null | grep \1:' \
Configure || die
# "create" man-page (bug #689462)
# inspired by shipped "makeman" ksh script
soelim < Lsof.8 > lsof.8 || die
}
target() {
case ${CHOST} in
*-darwin*) echo darwin ;;
*-freebsd*) echo freebsd ;;
*-solaris*) echo solaris ;;
*-aix*) echo aixgcc ;;
*) echo linux ;;
esac
}
src_configure() {
append-cppflags $(use rpc && $(tc-getPKG_CONFIG) libtirpc --cflags || echo "-DHASNOTRPC -DHASNORPC_H")
append-cppflags $(usex ipv6 -{D,U}HASIPv6)
[[ ${CHOST} == *-solaris2.11 ]] && append-cppflags -DHAS_PAD_MUTEX
if [[ ${CHOST} == *-darwin* ]] ; then
# make sys/proc_info.h available in ${T} because of LSOF_INCLUDE
# dummy location -- Darwin needs this for a Configure check to
# succeed
if [[ -e /usr/include/sys/proc_info.h ]] ; then
mkdir -p "${T}"/sys || die
( cd "${T}"/sys && ln -s /usr/include/sys/proc_info.h ) || die
fi
fi
export LSOF_CFGL="${CFLAGS} ${LDFLAGS} \
$(use rpc && $(tc-getPKG_CONFIG) libtirpc --libs)"
# Set LSOF_INCLUDE to a dummy location so the script doesn't poke
# around in it and mix /usr/include paths with cross-compile/etc.
touch .neverInv
LINUX_HASSELINUX=$(usex selinux y n) \
LSOF_INCLUDE=${T} \
LSOF_CC=$(tc-getCC) \
LSOF_AR="$(tc-getAR) rc" \
LSOF_RANLIB=$(tc-getRANLIB) \
LSOF_CFGF="${CFLAGS} ${CPPFLAGS}" \
./Configure -n $(target) || die
}
src_compile() {
emake DEBUG="" all
}
src_install() {
dobin lsof
if use examples ; then
insinto /usr/share/lsof/scripts
doins scripts/*
fi
doman lsof.8
dodoc 00*
}
pkg_postinst() {
if [[ ${CHOST} == *-solaris* ]] ; then
einfo "Note: to use lsof on Solaris you need read permissions on"
einfo "/dev/kmem, i.e. you need to be root, or to be in the group sys"
elif [[ ${CHOST} == *-aix* ]] ; then
einfo "Note: to use lsof on AIX you need read permissions on /dev/mem and"
einfo "/dev/kmem, i.e. you need to be root, or to be in the group system"
fi
}

View File

@ -0,0 +1,58 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic
MY_P="${P/-/_}"
DESCRIPTION="Lists open files for running Unix processes"
HOMEPAGE="https://github.com/lsof-org/lsof"
SRC_URI="https://github.com/lsof-org/lsof/releases/download/${PV}/${P}.tar.gz"
LICENSE="lsof"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="rpc selinux"
RDEPEND="
rpc? ( net-libs/libtirpc )
selinux? ( sys-libs/libselinux )
"
DEPEND="${RDEPEND}"
BDEPEND="
sys-apps/groff
rpc? ( virtual/pkgconfig )
"
# Needs fixing first for sandbox
RESTRICT="test"
PATCHES=(
"${FILESDIR}"/${P}-fix-common-include-strftime.patch
)
src_configure() {
# TODO: drop after 4.98.0: https://github.com/lsof-org/lsof/commit/4fbe0b78f63ce115f25cf7a49756745e3bf47fea
export ac_cv_header_selinux_selinux_h=$(usex selinux)
# TODO: drop after 4.98.0: https://github.com/lsof-org/lsof/commit/22d9cedfca4672601f35f7683907373cd5124121
[[ ${CHOST} == *-solaris2.11 ]] && append-cppflags -DHAS_PAD_MUTEX
local myeconfargs=(
$(use_with rpc libtirpc)
)
econf "${myeconfargs[@]}"
}
src_compile() {
emake DEBUG="" all
}
pkg_postinst() {
if [[ ${CHOST} == *-solaris* ]] ; then
einfo "Note: to use lsof on Solaris you need read permissions on"
einfo "/dev/kmem, i.e. you need to be root, or to be in the group sys"
fi
}

View 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
MY_P="${P/-/_}"
DESCRIPTION="Lists open files for running Unix processes"
HOMEPAGE="https://github.com/lsof-org/lsof"
SRC_URI="https://github.com/lsof-org/lsof/releases/download/${PV}/${P}.tar.gz"
LICENSE="lsof"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="rpc selinux"
RDEPEND="
rpc? ( net-libs/libtirpc )
selinux? ( sys-libs/libselinux )
"
DEPEND="${RDEPEND}"
BDEPEND="
sys-apps/groff
rpc? ( virtual/pkgconfig )
"
# Needs fixing first for sandbox
RESTRICT="test"
src_configure() {
export ac_cv_header_selinux_selinux_h=$(usex selinux)
[[ ${CHOST} == *-solaris2.11 ]] && append-cppflags -DHAS_PAD_MUTEX
local myeconfargs=(
$(use_with rpc libtirpc)
)
econf "${myeconfargs[@]}"
}
src_compile() {
emake DEBUG="" all
}
pkg_postinst() {
if [[ ${CHOST} == *-solaris* ]] ; then
einfo "Note: to use lsof on Solaris you need read permissions on"
einfo "/dev/kmem, i.e. you need to be root, or to be in the group sys"
fi
}

View File

@ -1,14 +1,15 @@
<?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>
<use>
<flag name="rpc">support looking up RPC service info</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:lsof_project:lsof</remote-id>
</upstream>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
<use>
<flag name="rpc">support looking up RPC service info</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:lsof_project:lsof</remote-id>
<remote-id type="github">lsof-org/lsof</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,18 +1,19 @@
<?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>
<use>
<flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for session tracking.</flag>
<flag name="kill">Build the kill program</flag>
<flag name="modern-top">Enables new startup defaults of top. Keeps old defaults if disabled</flag>
<flag name="ncurses">Build programs that use ncurses: top, slabtop, watch</flag>
</use>
<upstream>
<remote-id type="sourceforge">procps</remote-id>
<remote-id type="cpe">cpe:/a:procps_project:procps</remote-id>
</upstream>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
<use>
<flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for session tracking.</flag>
<flag name="kill">Build the kill program</flag>
<flag name="modern-top">Enables new startup defaults of top. Keeps old defaults if disabled</flag>
<flag name="ncurses">Build programs that use ncurses: top, slabtop, watch</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:procps_project:procps</remote-id>
<remote-id type="gitlab">procps-ng/procps</remote-id>
<remote-id type="sourceforge">procps</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,9 +1,11 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic multilib-minimal toolchain-funcs usr-ldscript
# See https://bugs.gentoo.org/835813 before bumping to 4.x!
inherit flag-o-matic multilib-minimal usr-ldscript
DESCRIPTION="Standard informational utilities and process-handling tools"
HOMEPAGE="http://procps-ng.sourceforge.net/ https://gitlab.com/procps-ng/procps"
@ -11,7 +13,7 @@ SRC_URI="mirror://sourceforge/${PN}-ng/${PN}-ng-${PV}.tar.xz"
LICENSE="GPL-2"
SLOT="0/8" # libprocps.so
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="elogind +kill modern-top +ncurses nls selinux static-libs systemd test unicode"
RESTRICT="!test? ( test )"
@ -37,6 +39,9 @@ RDEPEND="${DEPEND}
!<app-i18n/man-pages-pl-0.7-r1
"
# https://bugs.gentoo.org/898830
QA_CONFIG_IMPL_DECL_SKIP=( makedev )
PATCHES=(
"${FILESDIR}"/${PN}-3.3.11-sysctl-manpage.patch # 565304
"${FILESDIR}"/${PN}-3.3.12-proc-tests.patch # 583036
@ -51,18 +56,9 @@ src_prepare() {
}
multilib_src_configure() {
if tc-is-cross-compiler ; then
# This isn't ideal but upstream don't provide a placement
# when malloc is missing anyway, leading to errors like:
# pslog.c:(.text.startup+0x108): undefined reference to `rpl_malloc'
# See https://sourceforge.net/p/psmisc/bugs/71/
# (and https://lists.gnu.org/archive/html/autoconf/2011-04/msg00019.html)
export ac_cv_func_malloc_0_nonnull=yes \
ac_cv_func_realloc_0_nonnull=yes
fi
# http://www.freelists.org/post/procps/PATCH-enable-transparent-large-file-support
append-lfs-flags #471102
local myeconfargs=(
$(multilib_native_use_with elogind) # No elogind multilib support
$(multilib_native_use_enable kill)

View File

@ -1 +1,3 @@
DIST psmisc-23.4.tar.xz 370000 BLAKE2B e762171c4d3252421a49b352fadb3e892f66862f003a313a0cc692f973364b06d2652a51d331314462784d94ad55189e74c4d7a023d5d7c917c5e5c05009f46b SHA512 b05781fdb283a6f132bd385d64437f8080e6bc0e11cd2e3e02227678682bb67b3c89edec34a6d067d77312811d072dc60b47ebb32b168c4c69bbc36df643a471
DIST psmisc-23.5.tar.xz 394012 BLAKE2B 258b82c9fff3765f33cdcd4150489b3e585a47b9065b1cb4f5b432bea4aa7766aab15b160cfb948df9e835c7ac09a9f185d663ab1cd376bedea53bdaf73fd776 SHA512 e908220350491a595ceaf96025a9aa14d832cacc8901545d0864152053fedaf9dc10f45fb2870aa2a00e4d9d8947243038357e14a82b04ab5d20c53e7f841a8d
DIST psmisc-23.6.tar.xz 424736 BLAKE2B 468bf4e84695efcedb832f890b6201b7bc4aca7c5aabaf30e67f4471671421897ee7cd67f01d4b3d60c3e1c63752eb7384e627e75fa7db290cd749da08e2f788 SHA512 4daffbd1726e50d9344f8578dd4c10f0b8f7971929ec667490de31122e5f3828747e1bafb3ed3c37ed7e1758ab9ec43b8f4556b676a416a8efbc7c6c88b6985d

View File

@ -0,0 +1,40 @@
https://gitlab.com/psmisc/psmisc/-/commit/6892e321e7042e3df60a5501a1c59d076e8a856f
From 6892e321e7042e3df60a5501a1c59d076e8a856f Mon Sep 17 00:00:00 2001
From: Craig Small <csmall@dropbear.xyz>
Date: Mon, 18 Jul 2022 20:16:42 +1000
Subject: [PATCH] killall: use kill if pidfd_send_signal() fails
The pidfd_send_signal() system call appeared in Linux 5.1
If psmisc is build on a system before then, or a non-Linux
system, then kill() is used instead. However if psmisc is
built on a Linux >= 5.1 system but run on a < 5.1 Linux
system the system call fails and killall doesn't work.
The fix, as proposed by Peter T. Breuer, is to try
pidfd_send_signal() and if the return value is < 0 and
errno is ENOSYS then we know at runtime the system call
failed and we fall through to trusty old kill().
Note, this means that killall on systems below 5.1 still
have the race PID condition that the pidfd calls fix.
References:
https://bugs.debian.org/1015228
--- a/src/killall.c
+++ b/src/killall.c
@@ -326,7 +326,12 @@ my_send_signal(
{
#ifdef __NR_pidfd_send_signal
if (pid > 0) /* Not PGID */
- return syscall(__NR_pidfd_send_signal, pidfd, sig, NULL, 0);
+ {
+ int ret = syscall(__NR_pidfd_send_signal, pidfd, sig, NULL, 0);
+ if (ret >= 0 || errno != ENOSYS)
+ return ret;
+ // fall through if no such syscall
+ }
#endif
return kill(pid, sig);
}
GitLab

View File

@ -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="sourceforge">psmisc</remote-id>
</upstream>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
<upstream>
<remote-id type="gitlab">psmisc/psmisc</remote-id>
<remote-id type="sourceforge">psmisc</remote-id>
</upstream>
</pkgmetadata>

View File

@ -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
@ -11,16 +11,22 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="ipv6 nls selinux X"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="ipv6 nls selinux test X"
RESTRICT="!test? ( test )"
RDEPEND="!=app-i18n/man-pages-l10n-4.0.0-r0
>=sys-libs/ncurses-5.7-r7:0=
RDEPEND="
!=app-i18n/man-pages-l10n-4.0.0-r0
>=sys-libs/ncurses-5.7-r7:=
nls? ( virtual/libintl )
selinux? ( sys-libs/libselinux )"
selinux? ( sys-libs/libselinux )
"
DEPEND="${RDEPEND}"
BDEPEND=">=sys-devel/libtool-2.2.6b
nls? ( sys-devel/gettext )"
BDEPEND="
>=sys-devel/libtool-2.2.6b
nls? ( sys-devel/gettext )
test? ( dev-util/dejagnu )
"
DOCS=( AUTHORS ChangeLog NEWS README )
@ -40,6 +46,9 @@ src_configure() {
ac_cv_func_realloc_0_nonnull=yes
fi
# bug #802414
touch testsuite/global-conf.exp || die
local myeconfargs=(
--disable-harden-flags
$(use_enable ipv6)

View File

@ -0,0 +1,73 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit toolchain-funcs
DESCRIPTION="A set of tools that use the proc filesystem"
HOMEPAGE="http://psmisc.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="nls selinux test X"
RESTRICT="!test? ( test )"
RDEPEND="
!=app-i18n/man-pages-l10n-4.0.0-r0
>=sys-libs/ncurses-5.7-r7:=
nls? ( virtual/libintl )
selinux? ( sys-libs/libselinux )
"
DEPEND="${RDEPEND}"
BDEPEND="
>=sys-devel/libtool-2.2.6b
nls? ( sys-devel/gettext )
test? ( dev-util/dejagnu )
"
DOCS=( AUTHORS ChangeLog NEWS README )
PATCHES=(
"${FILESDIR}"/${P}-fix-killall-pidfd_send_signal.patch
)
src_configure() {
if tc-is-cross-compiler ; then
# This isn't ideal but upstream don't provide a placement
# when malloc is missing anyway, leading to errors like:
# pslog.c:(.text.startup+0x108): undefined reference to `rpl_malloc'
# See https://sourceforge.net/p/psmisc/bugs/71/
# (and https://lists.gnu.org/archive/html/autoconf/2011-04/msg00019.html)
export ac_cv_func_malloc_0_nonnull=yes \
ac_cv_func_realloc_0_nonnull=yes
fi
# No longer needed in > 23.5
# https://gitlab.com/psmisc/psmisc/-/commit/3fac667430341bdcec733da6eacd88b03813467a
# bug #802414
touch testsuite/global-conf.exp || die
local myeconfargs=(
--disable-harden-flags
--enable-ipv6
$(use_enable nls)
$(use_enable selinux)
)
econf "${myeconfargs[@]}"
}
src_install() {
default
use X || rm -f "${ED}"/usr/bin/pstree.x11
[[ -s ${ED}/usr/bin/peekfd ]] || rm -f "${ED}"/usr/bin/peekfd
[[ -e ${ED}/usr/bin/peekfd ]] || rm -f "${ED}"/usr/share/man/man1/peekfd.1
# fuser is needed by init.d scripts; use * wildcard for #458250
dodir /bin
mv "${ED}"/usr/bin/*fuser "${ED}"/bin || die
}

View File

@ -0,0 +1,68 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit toolchain-funcs
DESCRIPTION="A set of tools that use the proc filesystem"
HOMEPAGE="http://psmisc.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="apparmor nls selinux test X"
RESTRICT="!test? ( test )"
RDEPEND="
!=app-i18n/man-pages-l10n-4.0.0-r0
>=sys-libs/ncurses-5.7-r7:=
apparmor? ( sys-libs/libapparmor )
nls? ( virtual/libintl )
selinux? ( sys-libs/libselinux )
"
DEPEND="${RDEPEND}"
BDEPEND="
>=sys-devel/libtool-2.2.6b
nls? ( sys-devel/gettext )
test? ( dev-util/dejagnu )
"
DOCS=( AUTHORS ChangeLog NEWS README )
src_configure() {
if tc-is-cross-compiler ; then
# This isn't ideal but upstream don't provide a placement
# when malloc is missing anyway, leading to errors like:
# pslog.c:(.text.startup+0x108): undefined reference to `rpl_malloc'
# See https://sourceforge.net/p/psmisc/bugs/71/
# (and https://lists.gnu.org/archive/html/autoconf/2011-04/msg00019.html)
export ac_cv_func_malloc_0_nonnull=yes \
ac_cv_func_realloc_0_nonnull=yes
fi
local myeconfargs=(
# Hardening flags are set by our toolchain alraedy. Setting these
# in packages means toolchain & users can't set something tougher.
--disable-harden-flags
--enable-ipv6
$(use_enable apparmor)
$(use_enable nls)
$(use_enable selinux)
)
econf "${myeconfargs[@]}"
}
src_install() {
default
use X || rm -f "${ED}"/usr/bin/pstree.x11
[[ -s ${ED}/usr/bin/peekfd ]] || rm -f "${ED}"/usr/bin/peekfd
[[ -e ${ED}/usr/bin/peekfd ]] || rm -f "${ED}"/usr/share/man/man1/peekfd.1
# fuser is needed by init.d scripts; use * wildcard for #458250
dodir /bin
mv "${ED}"/usr/bin/*fuser "${ED}"/bin || die
}

View File

@ -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
@ -8,7 +8,7 @@ inherit multilib-build
DESCRIPTION="Virtual for acl support (sys/acl.h)"
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="kernel_linux? ( >=sys-apps/acl-2.2.52-r1[static-libs?,${MULTILIB_USEDEP}] )"

View File

@ -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>

View File

@ -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
@ -6,7 +6,7 @@ EAPI=7
DESCRIPTION="Virtual for the device filesystem manager"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos"
RDEPEND="
|| (

View File

@ -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
@ -6,7 +6,7 @@ EAPI=7
DESCRIPTION="Virtual for editor"
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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
# Add a package to RDEPEND only if the editor:
# - can edit ordinary text files,
@ -18,11 +18,11 @@ RDEPEND="|| (
app-editors/dav
app-editors/e3
app-editors/ee
app-editors/elvis
app-editors/emacs:*
app-editors/emact
app-editors/ersatz-emacs
app-editors/fe
app-editors/helix
app-editors/jasspa-microemacs
app-editors/jed
app-editors/joe

View File

@ -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
@ -6,6 +6,6 @@ inherit multilib-build
DESCRIPTION="Virtual for libusb"
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"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
RDEPEND=">=dev-libs/libusb-compat-0.1.5-r2[${MULTILIB_USEDEP}]"

View File

@ -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
@ -6,7 +6,7 @@ inherit multilib-build
DESCRIPTION="Virtual for libusb"
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="udev"
# We force a recent libusb so that downstream consumers of virtual/libusb

View File

@ -1,11 +1,11 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Virtual for man"
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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="
|| (

View File

@ -0,0 +1,9 @@
<?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>
<stabilize-allarches/>
</pkgmetadata>

View File

@ -0,0 +1,16 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Virtual for net-misc/openssh and variants"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="ssl"
RDEPEND="
|| (
>=net-misc/openssh-9.3_p1-r1[ssl?]
>=net-misc/openssh-contrib-9.3_p1[ssl?]
)"

View File

@ -1,11 +1,11 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Virtual for the package manager"
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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="
|| (

View File

@ -0,0 +1,25 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Virtual for various service managers"
SLOT="0"
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 ~x64-solaris"
RDEPEND="
prefix-guest? ( >=sys-apps/baselayout-prefix-2.2 )
!prefix-guest? (
|| (
sys-apps/openrc
kernel_linux? (
|| (
sys-apps/s6-rc
sys-apps/systemd
sys-process/runit
virtual/daemontools
)
)
)
)"

View File

@ -1,21 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Virtual for various service managers"
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 ~x86-winnt"
IUSE="kernel_linux"
RDEPEND="
prefix-guest? ( >=sys-apps/baselayout-prefix-2.2 )
!prefix-guest? (
|| (
sys-apps/openrc
kernel_linux? ( || (
sys-apps/systemd
sys-process/runit
virtual/daemontools
) ) ) )"

View File

@ -0,0 +1,18 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Virtual for SSH client and server"
SLOT="0"
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 ~x64-solaris"
IUSE="minimal"
RDEPEND="
minimal? (
|| ( net-misc/dropbear virtual/openssh )
)
!minimal? (
|| ( virtual/openssh net-misc/dropbear )
)"

View File

@ -1,18 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DESCRIPTION="Virtual for SSH client and server"
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="minimal"
RDEPEND="
minimal? (
|| ( net-misc/dropbear net-misc/openssh )
)
!minimal? (
|| ( net-misc/openssh net-misc/dropbear )
)"