Merge pull request #375 from flatcar/krnowak/net-misc-update

net-misc packages update (and some of their deps)
This commit is contained in:
Krzesimir Nowak 2022-10-27 12:17:29 +02:00 committed by GitHub
commit e2e83ce608
64 changed files with 1254 additions and 1805 deletions

View File

@ -2,6 +2,7 @@
app-arch/bzip2
app-arch/unzip
app-arch/xz-utils
app-crypt/adcli
@ -62,6 +63,7 @@ eclass/autotools.eclass
eclass/cmake-multilib.eclass
eclass/cmake.eclass
eclass/elisp-common.eclass
eclass/fcaps.eclass
eclass/flag-o-matic.eclass
eclass/git-r3.eclass
eclass/gnome.org.eclass
@ -79,12 +81,19 @@ eclass/multilib-minimal.eclass
eclass/multilib.eclass
eclass/ninja-utils.eclass
eclass/optfeature.eclass
eclass/pam.eclass
eclass/pax-utils.eclass
eclass/perl-functions.eclass
eclass/plocale.eclass
eclass/prefix.eclass
eclass/preserve-libs.eclass
eclass/systemd.eclass
eclass/tmpfiles.eclass
eclass/toolchain-funcs.eclass
eclass/toolchain.eclass
# This file is modified by us to be an empty file, so can't be synced for now.
#
# eclass/usr-ldscript.eclass
eclass/verify-sig.eclass
eclass/vim-doc.eclass
eclass/vim-plugin.eclass
@ -94,6 +103,7 @@ eclass/wrapper.eclass
licenses
net-analyzer/nmap
net-analyzer/traceroute
net-dns/bind-tools
@ -101,8 +111,15 @@ net-fs/cifs-utils
net-libs/gnutls
net-misc/bridge-utils
net-misc/curl
net-misc/ethertypes
net-misc/iperf
net-misc/iputils
net-misc/rsync
net-misc/socat
net-misc/wget
net-misc/whois
net-vpn/wireguard-tools
@ -112,6 +129,7 @@ profiles
#
# scripts
sys-apps/diffutils
sys-apps/gentoo-functions
sys-apps/help2man
sys-apps/iucode_tool
@ -138,6 +156,7 @@ sys-devel/patch
sys-firmware/intel-microcode
sys-libs/binutils-libs
sys-libs/libcap
sys-libs/zlib
virtual/libcrypt

View File

@ -1,2 +1,8 @@
DIST xz-5.2.5.tar.gz 1791345 BLAKE2B aded57324e129572c41646b3cc3b0b59a459452d9338d9245663b63dac2a463fb1f1b2b1d2d4ad3c09cb71fb8439df52cd94f24db99e782fc899b94a288a3043 SHA512 7443674247deda2935220fbc4dfc7665e5bb5a260be8ad858c8bd7d7b9f0f868f04ea45e62eb17c0a5e6a2de7c7500ad2d201e2d668c48ca29bd9eea5a73a3ce
DIST xz-5.2.5.tar.gz.sig 566 BLAKE2B 8b40d8d7913eaebe2595ea41a735d972d1969d8b58f42b2bee6591b51e2e626473fc85d64f1bbbff3cba6b0e1b4423556d6ddaf16f646ccc18ba1bad5cf45d83 SHA512 3aa21484bef0282ed0b83e3fcd5cf3d87bf51fa68e24d55bb11f91bc96f0ac29f468949bc4c8cc20fbd6ad12f5735686fe09ee42efe2b8d728010da9668aa5a9
DIST xz-5.2.6.tar.gz 2069602 BLAKE2B 3cc160dc76944ad2a181fbfb23ce386dbbd04e75bbeb0b159aaaf82e2e8157ea8b2bb80b216d79a7c25339bfbd13bd9d8c261789829cc7c3cb86fc893a7b4b94 SHA512 090958dd6c202c989746686094c86707ad4ae835026640080fc0a9d0fad699821b7d5cb3a67e6700661a0938818ba153662366f89ab8ec47e0bae4a3fe9b1961
DIST xz-5.2.6.tar.gz.sig 566 BLAKE2B 7c6114d93b4e3c8553108da3985029fc4585bfea5d72fc5028024221e91cc43c3b6cd3b7d169e4c8afed445a6beef7c255ef8420c5266a22ee9449a57cacec5d SHA512 50a1ac0f8f87f8c04c25c69870ba054094abf20b668bdecd42ed247a2eff24b8e52178b6442da84c125a9401a6f98d40ca76b27453833a30807c83128ab70eee
DIST xz-5.2.7.tar.gz 2105803 BLAKE2B 5363c5d0403e041c6d2e35b5d3321feeb8e63b8556496373c820975850b50e28e0da903446a49ba516fd9f40e0101dd39cfa9a9b8dd143c9849c84a715bb5d7b SHA512 06329fdbd1d897aa99dc96900c6246457288c586d02bb4869a92dd2f97973f95acb3a2fa9598a20613ea029f816836a8e3b65e36fec2b807b5e7553141429ab9
DIST xz-5.2.7.tar.gz.sig 566 BLAKE2B 00702dff24d655ebf30f2bf8bee94406e002164408b9eabb4f461a789482584c2b9c90675b8d1d5e030913e674946aa7392b73fcedf6ac62e3b1e3bc05bf92e6 SHA512 556e05107437fae2c75cc1a93465fce04426707e979403f41c6ee5b748fe7c3f985812a4e3b07785a84f68ef9d9f362ded470af1cceb9f4e8c80620a2699163f
DIST xz-5.3.3alpha.tar.gz 2119150 BLAKE2B 031e1a1556cbbd49565c2b72676e46a22c00e0e25bca2938c21d56f2d7f585c294d2a3a5712a3ae5d62fe8fef6e7b2f411fcc3c0ccac4714786209599b599d25 SHA512 c780c6854cb7599ed97629dbf923f5c6802b48e12aa25638c863e2403e56557abffb2b501823d4d53c852b7d09360b9ede355989756fef1daa1fa8cd9395da8d
DIST xz-5.3.3alpha.tar.gz.sig 566 BLAKE2B 2a02fd8a84c27967384021aa879efdf598b40ca9ff552080be2d057f402b3aace13bb0d98574e0185edd6ee3084793767f9941d4c1f21f5c5d55f886025cb845 SHA512 e6a849f2dd6f67ad3d51f50fe5f3e7f2a57e97e9d89499e2f88b94ab9716f1db5de34c3bb6f17b6fd55498ee5f4653d3d25e1a495b9c682b3200b2603a85479f

View File

@ -0,0 +1,117 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Remember: we cannot leverage autotools in this ebuild in order
# to avoid circular deps with autotools
EAPI=7
inherit libtool multilib multilib-minimal preserve-libs usr-ldscript
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://git.tukaani.org/xz.git"
inherit git-r3 autotools
# bug #272880 and bug #286068
BDEPEND="sys-devel/gettext >=sys-devel/libtool-2"
else
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/lassecollin.asc
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
SRC_URI+=" verify-sig? ( https://tukaani.org/xz/${MY_P}.tar.gz.sig )"
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
S="${WORKDIR}/${MY_P}"
fi
DESCRIPTION="Utils for managing LZMA compressed files"
HOMEPAGE="https://tukaani.org/xz/"
# See top-level COPYING file as it outlines the various pieces and their licenses.
LICENSE="public-domain LGPL-2.1+ GPL-2+"
SLOT="0"
IUSE="+extra-filters nls static-libs"
RDEPEND="!<app-arch/lzma-4.63
!<app-arch/p7zip-4.57
!<app-i18n/man-pages-de-2.16"
DEPEND="${RDEPEND}"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
fi
# Tests currently do not account for smaller feature set
RESTRICT="!extra-filters? ( test )"
src_prepare() {
default
if [[ ${PV} == 9999 ]] ; then
eautopoint
eautoreconf
else
# Allow building shared libs on Solaris/x64
elibtoolize
fi
}
multilib_src_configure() {
local myconf=(
--enable-threads
$(use_enable nls)
$(use_enable static-libs static)
)
if ! multilib_is_native_abi ; then
myconf+=(
--disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts}
)
fi
if ! use extra-filters ; then
myconf+=(
# LZMA1 + LZMA2 for standard .lzma & .xz files
--enable-encoders=lzma1,lzma2
--enable-decoders=lzma1,lzma2
# those are used by default, depending on preset
--enable-match-finders=hc3,hc4,bt4
# CRC64 is used by default, though some (old?) files use CRC32
--enable-checks=crc32,crc64
)
fi
if [[ ${CHOST} == *-solaris* ]] ; then
export gl_cv_posix_shell="${EPREFIX}"/bin/sh
# Undo Solaris-based defaults pointing to /usr/xpg5/bin
myconf+=( --disable-path-for-script )
fi
ECONF_SOURCE="${S}" econf "${myconf[@]}"
}
multilib_src_install() {
default
gen_usr_ldscript -a lzma
}
multilib_src_install_all() {
find "${ED}" -type f -name '*.la' -delete || die
rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
}
pkg_preinst() {
preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0)
}
pkg_postinst() {
preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0)
}

View File

@ -0,0 +1,113 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Remember: we cannot leverage autotools in this ebuild in order
# to avoid circular deps with autotools
EAPI=7
inherit libtool multilib multilib-minimal preserve-libs usr-ldscript
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://git.tukaani.org/xz.git"
inherit git-r3 autotools
# bug #272880 and bug #286068
BDEPEND="sys-devel/gettext >=sys-devel/libtool-2"
else
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/lassecollin.asc
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
SRC_URI+=" verify-sig? ( https://tukaani.org/xz/${MY_P}.tar.gz.sig )"
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
S="${WORKDIR}/${MY_P}"
fi
DESCRIPTION="Utils for managing LZMA compressed files"
HOMEPAGE="https://tukaani.org/xz/"
# See top-level COPYING file as it outlines the various pieces and their licenses.
LICENSE="public-domain LGPL-2.1+ GPL-2+"
SLOT="0"
IUSE="+extra-filters nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
fi
# Tests currently do not account for smaller feature set
RESTRICT="!extra-filters? ( test )"
src_prepare() {
default
if [[ ${PV} == 9999 ]] ; then
eautopoint
eautoreconf
else
# Allow building shared libs on Solaris/x64
elibtoolize
fi
}
multilib_src_configure() {
local myconf=(
--enable-threads
$(use_enable nls)
$(use_enable static-libs static)
)
if ! multilib_is_native_abi ; then
myconf+=(
--disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts}
)
fi
if ! use extra-filters ; then
myconf+=(
# LZMA1 + LZMA2 for standard .lzma & .xz files
--enable-encoders=lzma1,lzma2
--enable-decoders=lzma1,lzma2
# those are used by default, depending on preset
--enable-match-finders=hc3,hc4,bt4
# CRC64 is used by default, though some (old?) files use CRC32
--enable-checks=crc32,crc64
)
fi
if [[ ${CHOST} == *-solaris* ]] ; then
export gl_cv_posix_shell="${EPREFIX}"/bin/sh
# Undo Solaris-based defaults pointing to /usr/xpg5/bin
myconf+=( --disable-path-for-script )
fi
ECONF_SOURCE="${S}" econf "${myconf[@]}"
}
multilib_src_install() {
default
gen_usr_ldscript -a lzma
}
multilib_src_install_all() {
find "${ED}" -type f -name '*.la' -delete || die
rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
}
pkg_preinst() {
preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0)
}
pkg_postinst() {
preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0)
}

View File

@ -0,0 +1,114 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Remember: we cannot leverage autotools in this ebuild in order
# to avoid circular deps with autotools
EAPI=7
QA_PKGCONFIG_VERSION=${PV/_/}
inherit libtool multilib multilib-minimal preserve-libs usr-ldscript
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://git.tukaani.org/xz.git"
inherit git-r3 autotools
# bug #272880 and bug #286068
BDEPEND="sys-devel/gettext >=sys-devel/libtool-2"
else
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/lassecollin.asc
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
SRC_URI+=" verify-sig? ( https://tukaani.org/xz/${MY_P}.tar.gz.sig )"
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
S="${WORKDIR}/${MY_P}"
fi
DESCRIPTION="Utils for managing LZMA compressed files"
HOMEPAGE="https://tukaani.org/xz/"
# See top-level COPYING file as it outlines the various pieces and their licenses.
LICENSE="public-domain LGPL-2.1+ GPL-2+"
SLOT="0"
IUSE="+extra-filters nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
fi
# Tests currently do not account for smaller feature set
RESTRICT="!extra-filters? ( test )"
src_prepare() {
default
if [[ ${PV} == 9999 ]] ; then
eautopoint
eautoreconf
else
# Allow building shared libs on Solaris/x64
elibtoolize
fi
}
multilib_src_configure() {
local myconf=(
--enable-threads
$(use_enable nls)
$(use_enable static-libs static)
)
if ! multilib_is_native_abi ; then
myconf+=(
--disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts}
)
fi
if ! use extra-filters ; then
myconf+=(
# LZMA1 + LZMA2 for standard .lzma & .xz files
--enable-encoders=lzma1,lzma2
--enable-decoders=lzma1,lzma2
# those are used by default, depending on preset
--enable-match-finders=hc3,hc4,bt4
# CRC64 is used by default, though some (old?) files use CRC32
--enable-checks=crc32,crc64
)
fi
if [[ ${CHOST} == *-solaris* ]] ; then
export gl_cv_posix_shell="${EPREFIX}"/bin/sh
# Undo Solaris-based defaults pointing to /usr/xpg5/bin
myconf+=( --disable-path-for-script )
fi
ECONF_SOURCE="${S}" econf "${myconf[@]}"
}
multilib_src_install() {
default
gen_usr_ldscript -a lzma
}
multilib_src_install_all() {
find "${ED}" -type f -name '*.la' -delete || die
rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
}
pkg_preinst() {
preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0)
}
pkg_postinst() {
preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0)
}

View File

@ -22,9 +22,10 @@ else
SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
SRC_URI+=" verify-sig? ( https://tukaani.org/xz/${MY_P}.tar.gz.sig )"
if [[ ${PV} != *_alpha* ]] && [[ ${PV} != *_beta* ]] ; then
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"
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
S="${WORKDIR}/${MY_P}"
fi
@ -36,13 +37,8 @@ LICENSE="public-domain LGPL-2.1+ GPL-2+"
SLOT="0"
IUSE="+extra-filters nls static-libs"
RDEPEND="!<app-arch/lzma-4.63
!<app-arch/p7zip-4.57
!<app-i18n/man-pages-de-2.16"
DEPEND="${RDEPEND}"
if [[ ${PV} != 9999 ]] ; then
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
fi
# Tests currently do not account for smaller feature set

View File

@ -0,0 +1,5 @@
- iputils ([20211215](https://github.com/iputils/iputils/releases/tag/20211215))
- wget ([1.21.3](https://lists.gnu.org/archive/html/info-gnu/2022-02/msg00017.html))
- whois ([5.5.13](https://github.com/rfc1036/whois/blob/v5.5.13/debian/changelog))
- xz-utils ([5.2.6](https://git.tukaani.org/?p=xz.git;a=blob;f=NEWS;h=4c79b18ff26a1c479a920b21f07d050599c04c9e;hb=8dfed05bdaa4873833ba24279f02ad2db25effea))
- libcap ([2.65](https://sites.google.com/site/fullycapable/release-notes-for-libcap?authuser=0#h.wfblevfzkj0))

View File

@ -46,7 +46,7 @@ case ${EAPI} in
*) IDEPEND="filecaps? ( sys-libs/libcap )" ;;
esac
# @ECLASS-VARIABLE: FILECAPS
# @ECLASS_VARIABLE: FILECAPS
# @DEFAULT_UNSET
# @DESCRIPTION:
# An array of fcap arguments to use to automatically execute fcaps. See that
@ -83,18 +83,18 @@ esac
#
# If the system is unable to set capabilities, it will use the specified user,
# group, and mode (presumably to make the binary set*id). The defaults there
# are root:0 and 4711. Otherwise, the ownership and permissions will be
# are 0:0 and 4711. Otherwise, the ownership and permissions will be
# unchanged.
fcaps() {
debug-print-function ${FUNCNAME} "$@"
if [[ ${EUID} != 0 ]] ; then
if [[ ${EUID} -ne 0 ]] ; then
einfo "Insufficient privileges to execute ${FUNCNAME}, skipping."
return 0
fi
# Process the user options first.
local owner='root'
local owner='0'
local group='0'
local mode='4711'
local caps_mode='711'

View File

@ -1,5 +1,6 @@
# Copyright 1999-2021 Gentoo Foundation
# Copyright 2012-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: plocale.eclass
# @MAINTAINER:
# Ulrich Müller <ulm@gentoo.org>
@ -30,7 +31,7 @@
# PLOCALES with the user's LINGUAS setting. (As a special case, if the
# LINGUAS variable is unset then all items in PLOCALES will be used,
# emulating the behaviour of gettext.)
#
# In the following simple example, locale specific README files
# (e.g. README.de, README.en) are added to the DOCS variable:
#
@ -58,7 +59,7 @@ esac
if [[ -z ${_PLOCALE_ECLASS} ]]; then
_PLOCALE_ECLASS=1
# @ECLASS-VARIABLE: PLOCALES
# @ECLASS_VARIABLE: PLOCALES
# @DEFAULT_UNSET
# @DESCRIPTION:
# Variable listing the locales for which localizations are offered by
@ -66,7 +67,7 @@ _PLOCALE_ECLASS=1
#
# Example: PLOCALES="cy de el_GR en_US pt_BR vi zh_CN"
# @ECLASS-VARIABLE: PLOCALE_BACKUP
# @ECLASS_VARIABLE: PLOCALE_BACKUP
# @DEFAULT_UNSET
# @DESCRIPTION:
# In some cases the package fails when none of the offered PLOCALES are
@ -166,4 +167,3 @@ plocale_get_locales() {
}
fi

View File

@ -1,4 +1,4 @@
# Copyright 2011-2021 Gentoo Authors
# Copyright 2011-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: systemd.eclass
@ -53,20 +53,21 @@ _systemd_get_dir() {
if $(tc-getPKG_CONFIG) --exists systemd; then
d=$($(tc-getPKG_CONFIG) --variable="${variable}" systemd) || die
d=${d#${EPREFIX}}
else
d=${fallback}
d="${EPREFIX}${fallback}"
fi
echo "${d}"
}
# @FUNCTION: _systemd_get_systemunitdir
# @FUNCTION: _systemd_unprefix
# @USAGE: <function-name>
# @INTERNAL
# @DESCRIPTION:
# Get unprefixed unitdir.
_systemd_get_systemunitdir() {
_systemd_get_dir systemdsystemunitdir /lib/systemd/system
# Calls the specified function and removes ${EPREFIX} from the result.
_systemd_unprefix() {
local d=$("${@}")
echo "${d#"${EPREFIX}"}"
}
# @FUNCTION: systemd_get_systemunitdir
@ -77,7 +78,7 @@ _systemd_get_systemunitdir() {
systemd_get_systemunitdir() {
debug-print-function ${FUNCNAME} "${@}"
echo "${EPREFIX}$(_systemd_get_systemunitdir)"
_systemd_get_dir systemdsystemunitdir /lib/systemd/system
}
# @FUNCTION: systemd_get_unitdir
@ -89,14 +90,6 @@ systemd_get_unitdir() {
systemd_get_systemunitdir
}
# @FUNCTION: _systemd_get_userunitdir
# @INTERNAL
# @DESCRIPTION:
# Get unprefixed userunitdir.
_systemd_get_userunitdir() {
_systemd_get_dir systemduserunitdir /usr/lib/systemd/user
}
# @FUNCTION: systemd_get_userunitdir
# @DESCRIPTION:
# Output the path for the systemd user unit directory (not including
@ -105,15 +98,7 @@ _systemd_get_userunitdir() {
systemd_get_userunitdir() {
debug-print-function ${FUNCNAME} "${@}"
echo "${EPREFIX}$(_systemd_get_userunitdir)"
}
# @FUNCTION: _systemd_get_utildir
# @INTERNAL
# @DESCRIPTION:
# Get unprefixed utildir.
_systemd_get_utildir() {
_systemd_get_dir systemdutildir /lib/systemd
_systemd_get_dir systemduserunitdir /usr/lib/systemd/user
}
# @FUNCTION: systemd_get_utildir
@ -124,15 +109,7 @@ _systemd_get_utildir() {
systemd_get_utildir() {
debug-print-function ${FUNCNAME} "${@}"
echo "${EPREFIX}$(_systemd_get_utildir)"
}
# @FUNCTION: _systemd_get_systemgeneratordir
# @INTERNAL
# @DESCRIPTION:
# Get unprefixed systemgeneratordir.
_systemd_get_systemgeneratordir() {
_systemd_get_dir systemdsystemgeneratordir /lib/systemd/system-generators
_systemd_get_dir systemdutildir /lib/systemd
}
# @FUNCTION: systemd_get_systemgeneratordir
@ -142,15 +119,7 @@ _systemd_get_systemgeneratordir() {
systemd_get_systemgeneratordir() {
debug-print-function ${FUNCNAME} "${@}"
echo "${EPREFIX}$(_systemd_get_systemgeneratordir)"
}
# @FUNCTION: _systemd_get_systempresetdir
# @INTERNAL
# @DESCRIPTION:
# Get unprefixed systempresetdir.
_systemd_get_systempresetdir() {
_systemd_get_dir systemdsystempresetdir /lib/systemd/system-preset
_systemd_get_dir systemdsystemgeneratordir /lib/systemd/system-generators
}
# @FUNCTION: systemd_get_systempresetdir
@ -160,7 +129,15 @@ _systemd_get_systempresetdir() {
systemd_get_systempresetdir() {
debug-print-function ${FUNCNAME} "${@}"
echo "${EPREFIX}$(_systemd_get_systempresetdir)"
_systemd_get_dir systemdsystempresetdir /lib/systemd/system-preset
}
# @FUNCTION: systemd_get_sleepdir
# @DESCRIPTION:
# Output the path for the system sleep directory.
systemd_get_sleepdir() {
debug-print-function ${FUNCNAME} "${@}"
_systemd_get_dir systemdsleepdir /lib/systemd/system-sleep
}
# @FUNCTION: systemd_dounit
@ -172,7 +149,7 @@ systemd_dounit() {
(
insopts -m 0644
insinto "$(_systemd_get_systemunitdir)"
insinto "$(_systemd_unprefix systemd_get_systemunitdir)"
doins "${@}"
)
}
@ -186,7 +163,7 @@ systemd_newunit() {
(
insopts -m 0644
insinto "$(_systemd_get_systemunitdir)"
insinto "$(_systemd_unprefix systemd_get_systemunitdir)"
newins "${@}"
)
}
@ -200,7 +177,7 @@ systemd_douserunit() {
(
insopts -m 0644
insinto "$(_systemd_get_userunitdir)"
insinto "$(_systemd_unprefix systemd_get_userunitdir)"
doins "${@}"
)
}
@ -215,7 +192,7 @@ systemd_newuserunit() {
(
insopts -m 0644
insinto "$(_systemd_get_userunitdir)"
insinto "$(_systemd_unprefix systemd_get_userunitdir)"
newins "${@}"
)
}
@ -262,7 +239,7 @@ systemd_enable_service() {
local target=${1}
local service=${2}
local ud=$(_systemd_get_systemunitdir)
local ud=$(_systemd_unprefix systemd_get_systemunitdir)
local destname=${service##*/}
dodir "${ud}"/"${target}".wants && \
@ -306,7 +283,7 @@ systemd_enable_ntpunit() {
(
insopts -m 0644
insinto "$(_systemd_get_utildir)"/ntp-units.d
insinto "$(_systemd_unprefix systemd_get_utildir)"/ntp-units.d
doins "${T}"/${ntpunit_name}.list
)
local ret=${?}

View File

@ -0,0 +1 @@
DIST traceroute-2.1.0.tar.gz 71460 BLAKE2B 4c2126fa98625d525d0a1b0075d16a6ff37836e18d2ce8319f58c89bfa22a6a5e3bbe2ded22fa98d5128c7bb58578327db08120a5b78c1c4ff5673dcc0dea7e6 SHA512 3578007c734091ea0c906637c03fd133a8b0154fbf2e6b5c0c881184947918196bc03aeaf872d3bd53777b9b771cba5cf97f73fb5916bb53b75037f429b40ed3

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>netmon@gentoo.org</email>
<name>Gentoo network monitoring and analysis project</name>
</maintainer>
<upstream>
<remote-id type="sourceforge">traceroute</remote-id>
</upstream>
</pkgmetadata>

View File

@ -0,0 +1,31 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic toolchain-funcs
DESCRIPTION="Utility to trace the route of IP packets"
HOMEPAGE="http://traceroute.sourceforge.net/"
SRC_URI="mirror://sourceforge/traceroute/${P}.tar.gz"
LICENSE="GPL-2 LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="static"
RDEPEND="!net-misc/iputils[traceroute6(-)]"
src_compile() {
use static && append-ldflags -static
append-ldflags -L../libsupp #432116
tc-export AR CC RANLIB
emake env=yes
}
src_install() {
emake DESTDIR="${D}" prefix="${EPREFIX}/usr" install
dodoc ChangeLog CREDITS README TODO
dosym traceroute /usr/bin/traceroute6
dosym traceroute.8 /usr/share/man/man8/traceroute6.8
}

View File

@ -1,2 +1 @@
DIST bridge-utils-1.6.tar.xz 29904 BLAKE2B 4a816d2855a8f127dca3a19df326863848d36032c881a9093cd98b88f701d70486a9488e9761869629f29c6f5bc14305388eac3c22393a3e60dfdb3c9c4dda10 SHA512 b2ed39bc67349b7b91f2068cb505c0e3c89a8797d61e3d97ff957796cfe5fcef2c26dd788bd4215f628d69a4c8592377f4e632c3e181e87af3eaa238d8741e02
DIST bridge-utils-1.7.1.tar.xz 29632 BLAKE2B 36b8b9c62e88f6f1510acbf23ab8dc5ec41d3bf97eecd274c91771e116650e30b366ded37e65bde061c1e9bc7b19b7eae1e17d4573fcea9fd31892bf6d937515 SHA512 6a3824853bdaa1733c552973e6a5082280facdddc52c3feeb2c8c9375ba9469a5930b559092c9de1a73b464f388f019e147b45ac1e2d10ce8968057779fcd12c

View File

@ -1,55 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools linux-info toolchain-funcs
DESCRIPTION="Tools for configuring the Linux kernel 802.1d Ethernet Bridge"
HOMEPAGE="http://bridge.sourceforge.net/"
#SRC_URI="mirror://sourceforge/bridge/${P}.tar.gz"
SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86"
IUSE="selinux"
DEPEND="virtual/os-headers"
RDEPEND="selinux? ( sec-policy/selinux-brctl )"
CONFIG_CHECK="~BRIDGE"
WARNING_BRIDGE="CONFIG_BRIDGE is required to get bridge devices in the kernel"
get_headers() {
CTARGET=${CTARGET:-${CHOST}}
dir=/usr/include
tc-is-cross-compiler && dir=/usr/${CTARGET}/usr/include
echo "${dir}"
}
src_prepare() {
local PATCHES=(
"${FILESDIR}"/libbridge-substitute-AR-variable-from-configure.patch
)
default
eautoreconf
}
src_configure() {
# use santitized headers and not headers from /usr/src
local myeconfargs=(
--prefix=/
--libdir=/usr/$(get_libdir)
--includedir=/usr/include
--with-linux-headers="$(get_headers)"
)
econf "${myeconfargs[@]}"
}
src_install() {
emake install DESTDIR="${D}"
dodoc AUTHORS ChangeLog README THANKS TODO \
doc/{FAQ,FIREWALL,HOWTO,PROJECTS,RPM-GPG-KEY,SMPNOTES,WISHLIST}
[ -f "${ED%/}"/sbin/brctl ] || die "upstream makefile failed to install binary"
}

View File

@ -11,7 +11,7 @@ SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86"
IUSE="selinux"
DEPEND="virtual/os-headers"

View File

@ -1,55 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools linux-info toolchain-funcs
DESCRIPTION="Tools for configuring the Linux kernel 802.1d Ethernet Bridge"
HOMEPAGE="http://bridge.sourceforge.net/"
SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86"
IUSE="selinux"
DEPEND="virtual/os-headers"
RDEPEND="selinux? ( sec-policy/selinux-brctl )"
CONFIG_CHECK="~BRIDGE"
WARNING_BRIDGE="CONFIG_BRIDGE is required to get bridge devices in the kernel"
get_headers() {
CTARGET=${CTARGET:-${CHOST}}
dir=/usr/include
tc-is-cross-compiler && dir=/usr/${CTARGET}/usr/include
echo "${dir}"
}
src_prepare() {
local PATCHES=(
"${FILESDIR}"/libbridge-substitute-AR-variable-from-configure.patch
)
default
eautoreconf
}
src_configure() {
# use santitized headers and not headers from /usr/src
local myeconfargs=(
--prefix=/
--libdir=/usr/$(get_libdir)
--includedir=/usr/include
--with-linux-headers="$(get_headers)"
)
econf "${myeconfargs[@]}"
}
src_install() {
emake install DESTDIR="${D}"
dodoc AUTHORS ChangeLog README THANKS \
doc/{FAQ,FIREWALL,HOWTO,PROJECTS,RPM-GPG-KEY,SMPNOTES,WISHLIST}
[ -f "${ED}"/sbin/brctl ] || die "upstream makefile failed to install binary"
}

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
@ -10,7 +10,7 @@ SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
!<net-firewall/ebtables-2.0.10.4-r2

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,3 +1,3 @@
DIST iperf-2.0.13.tar.gz 326148 BLAKE2B 2a40aea9e2d7fdc935b91be5e4e586bf68dd27604375d2570570145e5db1ea5837469a4989f47586986932bef33cba05ed19ed3a9ce40c0a5531581c6d3ba982 SHA512 40fcfb8f4d27887f53a743ac07396511fb2a7ac59f4b300fe36896bd0241e191945fa253705990711772ee776d5e4227ed62760fc92abebdfebcedd11c27c0ea
DIST iperf-3.10.1.tar.gz 636957 BLAKE2B 8390b4fb0d4c6590bf73e46d55fbe100f1c9832b4e7baba23b4bec2808b42582bf76cc4250c529a1eb4a58c7214120f0e3a393a7c2602b838b22d97eb53842b3 SHA512 d1139aed0c7a99e8cfc23c41d606854d48a57db24d45ea31412d81222b09faeee6edccdf4030a00eeb6acbfd540d4b985b4a89f81a4d5b84592339ad5e2e9e41
DIST iperf-3.11.tar.gz 638521 BLAKE2B b2981c170aac947c407b0a5686cd9708012282044be30ec7e5f993a9d61d55c4517003024890a194f6e55d342be0e60f1bcab27460541d2b9631a3bb88e094a5 SHA512 4be3e407f77a083d826bddc5ce2939047c85f5b816a6aeb3293eacabf2ea23bf13df4226e629ade3bf390c2eb08d6a1cb96f8cdb0fefb290a0fa4c8331d11a17
DIST iperf-3.12.tar.gz 648136 BLAKE2B 95753e4fd2b7ca640b17501f6b21b0e63ea0a3df2ba920c672ffcccd991502cacf4bf3641be1ffbbb993c86e6915ceada5745cffe1796bb86b6a6a1dff8811ae SHA512 9b0600a19750311557833b32ca5c4be809ab98643522f125645dd8f83c482017e42fbe5fc9484624731176a59b67203a468eb81eebf1a37b9c1b3eff818857ba

View File

@ -0,0 +1,109 @@
From 85b225cdd00b9a483a603b8b124a829ffbf92b88 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Sun, 2 Oct 2022 03:07:40 +0100
Subject: [PATCH] Unbundle cJSON
Signed-off-by: Sam James <sam@gentoo.org>
--- a/configure.ac
+++ b/configure.ac
@@ -62,6 +62,8 @@ AC_ARG_ENABLE([profiling],
AS_HELP_STRING([--enable-profiling], [Enable iperf3 profiling binary]))
AM_CONDITIONAL([ENABLE_PROFILING], [test x$enable_profiling = xyes])
+PKG_CHECK_MODULES([libcjson], [libcjson >= 1.7.15])
+
# Check for the math library (needed by cjson on some platforms)
AC_SEARCH_LIBS(floor, [m], [], [
echo "floor()"
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -10,8 +10,6 @@ include_HEADERS = iperf_api.h # Define
# Specify the source files and flags for the iperf library
libiperf_la_SOURCES = \
- cjson.c \
- cjson.h \
flowlabel.h \
iperf.h \
iperf_api.c \
@@ -44,10 +42,13 @@ libiperf_la_SOURCES = \
units.c \
units.h \
version.h
+libiperf_la_CPPFLAGS = $(CPPFLAGS) @libcjson_CFLAGS@
+libiperf_la_LIBADD = @libcjson_LIBS@
# Specify the sources and various flags for the iperf binary
iperf3_SOURCES = main.c
-iperf3_LDADD = libiperf.la
+iperf3_CPPFLAGS = $(CPPFLAGS) @libcjson_CFLAGS@
+iperf3_LDADD = libiperf.la @libcjson_LIBS@
if ENABLE_PROFILING
# If the iperf-profiled-binary is enabled
--- a/src/iperf.h
+++ b/src/iperf.h
@@ -65,7 +65,7 @@
#include "timer.h"
#include "queue.h"
-#include "cjson.h"
+#include <cjson/cJSON.h>
#include "iperf_time.h"
#if defined(HAVE_SSL)
--- a/src/iperf_api.c
+++ b/src/iperf_api.c
@@ -81,7 +81,7 @@
#endif /* HAVE_SCTP_H */
#include "timer.h"
-#include "cjson.h"
+#include <cjson/cJSON.h>
#include "units.h"
#include "iperf_util.h"
#include "iperf_locale.h"
--- a/src/iperf_tcp.c
+++ b/src/iperf_tcp.c
@@ -42,7 +42,7 @@
#include "iperf_api.h"
#include "iperf_tcp.h"
#include "net.h"
-#include "cjson.h"
+#include <cjson/cJSON.h>
#if defined(HAVE_FLOWLABEL)
#include "flowlabel.h"
--- a/src/iperf_udp.c
+++ b/src/iperf_udp.c
@@ -46,7 +46,7 @@
#include "iperf_udp.h"
#include "timer.h"
#include "net.h"
-#include "cjson.h"
+#include <cjson/cJSON.h>
#include "portable_endian.h"
#if defined(HAVE_INTTYPES_H)
--- a/src/iperf_util.c
+++ b/src/iperf_util.c
@@ -46,7 +46,7 @@
#include <errno.h>
#include <fcntl.h>
-#include "cjson.h"
+#include <cjson/cJSON.h>
#include "iperf.h"
#include "iperf_api.h"
--- a/src/iperf_util.h
+++ b/src/iperf_util.h
@@ -28,7 +28,7 @@
#define __IPERF_UTIL_H
#include "iperf_config.h"
-#include "cjson.h"
+#include <cjson/cJSON.h>
#include <sys/select.h>
#include <stddef.h>

View File

@ -0,0 +1,43 @@
https://github.com/esnet/iperf/pull/1398
From 3a03f775ca103f2e824abef903130280c57ca8ac Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Sun, 2 Oct 2022 02:58:59 +0100
Subject: [PATCH] config/iperf_config_static_bin.m4: fix bashism
configure scripts need to be runnable with a POSIX-compliant /bin/sh.
On many (but not all!) systems, /bin/sh is provided by Bash, so errors
like this aren't spotted. Notably Debian defaults to /bin/sh provided
by dash which doesn't tolerate such bashisms as '=='.
This retains compatibility with bash.
Fixes configure warnings/errors like:
```
./configure: 2670: test: x: unexpected operator
```
Signed-off-by: Sam James <sam@gentoo.org>
--- a/config/iperf_config_static_bin.m4
+++ b/config/iperf_config_static_bin.m4
@@ -7,6 +7,6 @@ AC_ARG_ENABLE([static-bin],
[:])
AM_CONDITIONAL([ENABLE_STATIC_BIN], [test x$enable_static_bin = xno])
-AS_IF([test "x$enable_static_bin" == xyes],
+AS_IF([test "x$enable_static_bin" = xyes],
[LDFLAGS="$LDFLAGS --static"]
[])
--- a/configure
+++ b/configure
@@ -2667,7 +2667,7 @@ else
fi
-if test "x$enable_static_bin" == xyes
+if test "x$enable_static_bin" = xyes
then :
LDFLAGS="$LDFLAGS --static"

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
@ -12,7 +12,7 @@ S="${WORKDIR}/${PN}-2.0.13"
LICENSE="HPND"
SLOT="2"
KEYWORDS="amd64 ~arm ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
KEYWORDS="amd64 ~arm ~hppa ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="ipv6 threads debug"
DOCS=( INSTALL README )

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

View File

@ -12,7 +12,7 @@ S="${WORKDIR}"/${P/_/}
LICENSE="BSD"
SLOT="3"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="sctp"
DEPEND="dev-libs/openssl:=

View File

@ -1,36 +1,47 @@
# 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 systemd
inherit autotools systemd
DESCRIPTION="A TCP, UDP, and SCTP network bandwidth measurement tool"
HOMEPAGE="https://github.com/esnet/iperf"
SRC_URI="https://github.com/esnet/iperf/archive/${PV/_/}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P/_/}"
S="${WORKDIR}"/${P/_/}
LICENSE="BSD"
SLOT="3"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="sctp"
DEPEND="
dev-libs/openssl:0=
>=dev-libs/cJSON-1.7.15
dev-libs/openssl:=
sctp? ( net-misc/lksctp-tools )
"
RDEPEND="${DEPEND}"
BDEPEND="virtual/pkgconfig"
DOCS=( README.md RELNOTES.md )
PATCHES=(
"${FILESDIR}"/${PN}-3.10.1-drop-forced-debugging-symbols.patch
"${FILESDIR}"/${PN}-3.12-fix-bashism.patch
"${FILESDIR}"/${PN}-3.12-Unbundle-cJSON.patch
)
src_prepare() {
default
# Drop bundled cjson
rm src/cjson.{c,h} || die
eautoreconf
}
src_configure() {
econf \
--disable-static \
$(use_with sctp)
econf $(use_with sctp)
}
src_install() {

View File

@ -1,38 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit git-r3
DESCRIPTION="A TCP, UDP, and SCTP network bandwidth measurement tool"
HOMEPAGE="https://github.com/esnet/iperf"
EGIT_REPO_URI="https://github.com/esnet/iperf"
S="${WORKDIR}/${P/_/}"
LICENSE="BSD"
SLOT="3"
IUSE="sctp static-libs"
DEPEND="
dev-libs/openssl:0=
sctp? ( net-misc/lksctp-tools )
"
RDEPEND="${DEPEND}"
DOCS=( README.md RELNOTES.md )
src_configure() {
econf \
$(use_enable static-libs static) \
$(use_with sctp)
}
src_install() {
default
newconfd "${FILESDIR}"/iperf.confd iperf3
newinitd "${FILESDIR}"/iperf3.initd iperf3
find "${ED}" -name '*.la' -delete || die
}

View File

@ -1,4 +1,2 @@
DIST iputils-20210202.tar.gz 513055 BLAKE2B 37f3c10ff3918d40fe2eae1e4b19ed711b97c30cd2d682e42f484a11a28ab7c93975a51fbb7a8b1c1d725fc9051ae773bc2e81b9d80a2dd0e6ff55867d54875d SHA512 af600fe74e1b78c0da66c378f55eb468d62206aaae1864693f7ec79833c9c0de95843573d1792627695f08ecfcdb4e79c354065daf178d393fcc6ef9a8a5d526
DIST iputils-20210722.tar.gz 530745 BLAKE2B 4d6a2afaea1027e7992d374bbaa300f952f56225c998ecc6c3d332fef046dd8032e5afaff1cdc916d048f9d84cc8a85736a26a3176e66e111e02c9dbfcb0f195 SHA512 8f85bf468f8ef1e2832e9bbf9009552df4a6d723dd130fa0d5b2aa3bae617c972f936143c2370c3b4ce2ba2499828c91a299ee42cf81fa81aabe10552db2b328
DIST iputils-manpages-20210202.tar.xz 19204 BLAKE2B b9d43962890ae5fe9e4c21fb23c8911c22cbfb35a28521a2f0611d7813e4c21979f6b309569cdb57dd9b3a30653278982194ca08a815cfb41566a379930d124b SHA512 d5cced9a5e4acffbe35d20a796d038336d06f512c3ee47bc6e37782b4645d5c35b16e18aaae298547b60fe644e5608efe7847f2de6175bfcd39128d230ee4cd1
DIST iputils-manpages-20210722.tar.xz 19208 BLAKE2B 7d6b126debeee2a4e5437b7d26a9fee5c759ae72fa9b7acb1a04bb673f14af742f5580aad6ae1c34048933d95d09c4adcf024fabdc20851297131877cbfa10d0 SHA512 c1521e76f5b8cb99d7226ca1bd916b1861b6c0f9655ad0e396dd8d997be6cdc37ee0e81ac325ea4ebb3b349b394e7f1c45081ddc25b778fd294928a7b2dc0415
DIST iputils-20211215.tar.gz 524567 BLAKE2B b88ff84be1d4d6a741f8f3514739ceff45ea40c475b5d4c2df8571fe84d4f1af9bc3fdce29e9ff393417671c75204261c8d64dde00473caa314b0aeb1fbf74ce SHA512 191062e51f7c8e8b38e3e4a96845adb77cd69f487d548c7cc578fad544443b4bc0dbe965d8f8e6fbda0a2f5b2fe2829789c05f873190c53d773245959298f6e9
DIST iputils-manpages-20211215.tar.xz 17148 BLAKE2B 63a956805b01f57b070b6b4ceb32f6ddf4313c74203cde821fc2f6f16ab8de14861da31163adf496db555f1961592d4fbc2ba7a977ccb18773af3bdb8d3795c0 SHA512 eb8c8508221b06fc13bf196b01b11f3ec87cd77e25d89c088776e39d249e10a3915ebb39942805adee179b352543063ce3dac158d68783c68c23de550ec14eee

View File

@ -1,47 +0,0 @@
https://github.com/iputils/iputils/commit/79d713eab6181e219bf932b404706f6f59ff2539.patch
https://bugs.gentoo.org/818022
From: Byron Stanoszek <gandalf@winds.org>
Date: Thu, 16 Sep 2021 23:38:54 +0200
Subject: [PATCH] ping: Remove 'unsupported IPv6' warning on disabled IPv6
Regression was introduced in d141cb6 as introduced condition
if ((errno == EAFNOSUPPORT && socktype == AF_INET6) || options & F_VERBOSE || requisite)
was wrong, it should have been:
if ((errno == EAFNOSUPPORT && family == AF_INET6 && requisite) || options & F_VERBOSE)
but bug was hidden as `family == AF_INET6' was always false until
otherwise correct fix 904cdb6 ("ping: AF_INET6 is address family not
socket type [lgtm scan]") propagated the error.
Tested on kernel booted with ipv6.disable=1 (disabling via sysctl, i.e.
sysctl -w net.ipv6.conf.all.disable_ipv6=1; sysctl -w net.ipv6.conf.default.disable_ipv6=1
does not trigger the issue as it exit with "socket: Address family not
supported by protocol" - errno EADDRNOTAVAIL).
Fixes: d141cb6 ("ping: work with older kernels that don't support ping sockets")
Closes: https://github.com/iputils/iputils/issues/293
Closes: https://github.com/iputils/iputils/pull/370
Reported-by: lekto <lekto@o2.pl>
Reviewed-by: Andrew Clayton <andrew@digital-domain.net>
Reviewed-by: Petr Vorel <pvorel@suse.cz>
Signed-off-by: Byron Stanoszek <gandalf@winds.org>
[ pvorel: create commit from Byron's patch on the issue, do analysis and wrote commit message ]
Signed-off-by: Petr Vorel <pvorel@suse.cz>
--- a/ping/ping.c
+++ b/ping/ping.c
@@ -150,8 +150,8 @@ static void create_socket(struct ping_rts *rts, socket_st *sock, int family,
/* Report error related to disabled IPv6 only when IPv6 also failed or in
* verbose mode. Report other errors always.
*/
- if ((errno == EAFNOSUPPORT && family == AF_INET6) ||
- rts->opt_verbose || requisite)
+ if ((errno == EAFNOSUPPORT && family == AF_INET6 && requisite) ||
+ rts->opt_verbose)
error(0, errno, "socket");
if (requisite)
exit(2);

View File

@ -1,202 +0,0 @@
https://github.com/iputils/iputils/commit/3163c49f9f4ad473a00d8a345ee334a028376011.patch
https://bugs.gentoo.org/807973
From: Heiko Becker <heirecka@exherbo.org>
Date: Fri, 23 Jul 2021 16:32:46 +0200
Subject: [PATCH] meson: Make tests optional
Now can be disabled with -DSKIP_TESTS=true.
It allows to avoid meson error during build when ip isn't installed.
Closes: #359
Reviewed-by: Petr Vorel <petr.vorel@gmail.com>
Signed-off-by: Heiko Becker <heirecka@exherbo.org>
[ pvorel: Rename variable TEST => SKIP_TESTS, default false, adjust
the description ]
Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -72,3 +72,6 @@ option('INSTALL_SYSTEMD_UNITS', type: 'boolean', value: false,
option('USE_GETTEXT', type: 'boolean', value: true,
description: 'Enable I18N')
+
+option('SKIP_TESTS', type: 'boolean', value: false,
+ description: 'Skip tests during build')
--- a/ping/meson.build
+++ b/ping/meson.build
@@ -27,86 +27,6 @@ if (setcap_ping)
)
endif
-##### TESTS #####
-
-# TODO: ::1 generates DEPRECATION: ":" is not allowed in test name "ping -c1 ::1", it has been replaced with "_"
-
-# GitHub CI does not have working IPv6
-# https://github.com/actions/virtual-environments/issues/668
-ipv6_dst = []
-ipv6_switch = []
-r = run_command('ip', '-6', 'a')
-if r.stdout().strip().contains('::1')
- message('IPv6 enabled')
- ipv6_dst = [ '::1' ]
- ipv6_switch = [ '-6' ]
-else
- message('WARNING: IPv6 disabled')
+if not get_option('SKIP_TESTS')
+ subdir('test')
endif
-
-run_as_root = false
-r = run_command('id', '-u')
-if r.stdout().strip().to_int() == 0
- message('running as root')
- run_as_root = true
-else
- message('running as normal user')
-endif
-
-foreach dst : [ 'localhost', '127.0.0.1' ] + ipv6_dst
- foreach switch : [ '', '-4' ] + ipv6_switch
- args = [ '-c1', dst ]
- should_fail = false
-
- if switch != ''
- args = [switch] + args
- if (switch == '-4' and dst == '::1') or (switch == '-6' and dst == '127.0.0.1')
- should_fail = true
- endif
- endif
-
- name = 'ping ' + ' '.join(args)
- test(name, ping, args : args, should_fail : should_fail)
- endforeach
-endforeach
-
-ping_tests_opt = [
- [ '-c1' ],
- [ '-c5', '-i0.1' ],
- [ '-c1', '-I', 'lo' ],
- [ '-c1', '-w1' ],
- [ '-c1', '-W1' ],
- [ '-c1', '-W1.1' ],
-]
-foreach dst : [ '127.0.0.1' ] + ipv6_dst
- foreach args : ping_tests_opt
- args += [ dst ]
- name = 'ping ' + ' '.join(args)
- test(name, ping, args : args)
- endforeach
-endforeach
-
-ping_tests_opt_fail = [
- [ '-c1.1' ],
- [ '-I', 'nonexisting' ],
- [ '-w0.1' ],
- [ '-w0,1' ],
-]
-foreach dst : [ '127.0.0.1' ] + ipv6_dst
- foreach args : ping_tests_opt_fail
- args += [ dst ]
- name = 'ping ' + ' '.join(args)
- test(name, ping, args : args, should_fail : true)
- endforeach
-endforeach
-
-ping_tests_user_fail = [
- [ '-c1', '-i0.001' ], # -c1 required to quit ping when running as root
-]
-foreach dst : [ '127.0.0.1' ] + ipv6_dst
- foreach args : ping_tests_user_fail
- args += [ dst ]
- name = 'ping ' + ' '.join(args)
- test(name, ping, args : args, should_fail : not run_as_root)
- endforeach
-endforeach
--- /dev/null
+++ b/ping/test/meson.build
@@ -0,0 +1,81 @@
+# TODO: ::1 generates DEPRECATION: ":" is not allowed in test name "ping -c1 ::1", it has been replaced with "_"
+
+# GitHub CI does not have working IPv6
+# https://github.com/actions/virtual-environments/issues/668
+ipv6_dst = []
+ipv6_switch = []
+r = run_command('ip', '-6', 'a')
+if r.stdout().strip().contains('::1')
+ message('IPv6 enabled')
+ ipv6_dst = [ '::1' ]
+ ipv6_switch = [ '-6' ]
+else
+ message('WARNING: IPv6 disabled')
+endif
+
+run_as_root = false
+r = run_command('id', '-u')
+if r.stdout().strip().to_int() == 0
+ message('running as root')
+ run_as_root = true
+else
+ message('running as normal user')
+endif
+
+foreach dst : [ 'localhost', '127.0.0.1' ] + ipv6_dst
+ foreach switch : [ '', '-4' ] + ipv6_switch
+ args = [ '-c1', dst ]
+ should_fail = false
+
+ if switch != ''
+ args = [switch] + args
+ if (switch == '-4' and dst == '::1') or (switch == '-6' and dst == '127.0.0.1')
+ should_fail = true
+ endif
+ endif
+
+ name = 'ping ' + ' '.join(args)
+ test(name, ping, args : args, should_fail : should_fail)
+ endforeach
+endforeach
+
+ping_tests_opt = [
+ [ '-c1' ],
+ [ '-c5', '-i0.1' ],
+ [ '-c1', '-I', 'lo' ],
+ [ '-c1', '-w1' ],
+ [ '-c1', '-W1' ],
+ [ '-c1', '-W1.1' ],
+]
+foreach dst : [ '127.0.0.1' ] + ipv6_dst
+ foreach args : ping_tests_opt
+ args += [ dst ]
+ name = 'ping ' + ' '.join(args)
+ test(name, ping, args : args)
+ endforeach
+endforeach
+
+ping_tests_opt_fail = [
+ [ '-c1.1' ],
+ [ '-I', 'nonexisting' ],
+ [ '-w0.1' ],
+ [ '-w0,1' ],
+]
+foreach dst : [ '127.0.0.1' ] + ipv6_dst
+ foreach args : ping_tests_opt_fail
+ args += [ dst ]
+ name = 'ping ' + ' '.join(args)
+ test(name, ping, args : args, should_fail : true)
+ endforeach
+endforeach
+
+ping_tests_user_fail = [
+ [ '-c1', '-i0.001' ], # -c1 required to quit ping when running as root
+]
+foreach dst : [ '127.0.0.1' ] + ipv6_dst
+ foreach args : ping_tests_user_fail
+ args += [ dst ]
+ name = 'ping ' + ' '.join(args)
+ test(name, ping, args : args, should_fail : not run_as_root)
+ endforeach
+endforeach

View File

@ -1,173 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# For released versions, we precompile the man/html pages and store
# them in a tarball on our mirrors. This avoids ugly issues while
# building stages, and reduces dependencies.
# To regenerate man/html pages emerge iputils-99999999[doc] with
# EGIT_COMMIT set to release tag, all USE flags enabled and
# tar ${S}/doc folder.
EAPI="7"
PLOCALES="de fr ja pt_BR tr uk zh_CN"
inherit fcaps flag-o-matic meson plocale systemd toolchain-funcs
if [[ ${PV} == "99999999" ]] ; then
EGIT_REPO_URI="https://github.com/iputils/iputils.git"
inherit git-r3
else
SRC_URI="https://github.com/iputils/iputils/archive/${PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~whissi/dist/iputils/${PN}-manpages-${PV}.tar.xz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="Network monitoring tools including ping and ping6"
HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils"
LICENSE="BSD GPL-2+ rdisc"
SLOT="0"
IUSE="+arping caps clockdiff doc gcrypt idn ipv6 nettle nls rarpd rdisc ssl static tftpd tracepath traceroute6"
BDEPEND="
virtual/pkgconfig
nls? ( sys-devel/gettext )
"
LIB_DEPEND="
caps? ( sys-libs/libcap[static-libs(+)] )
idn? ( net-dns/libidn2:=[static-libs(+)] )
nls? ( virtual/libintl[static-libs(+)] )
"
RDEPEND="
traceroute6? ( !net-analyzer/traceroute )
!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
"
DEPEND="
${RDEPEND}
virtual/os-headers
static? ( ${LIB_DEPEND} )
"
if [[ ${PV} == "99999999" ]] ; then
BDEPEND+="
app-text/docbook-xml-dtd:4.2
app-text/docbook-xml-dtd:4.5
app-text/docbook-xsl-ns-stylesheets
app-text/docbook-xsl-stylesheets
dev-libs/libxslt:0
"
fi
src_prepare() {
default
plocale_get_locales > po/LINGUAS || die
}
src_configure() {
use static && append-ldflags -static
local emesonargs=(
-DUSE_CAP="$(usex caps true false)"
-DUSE_IDN="$(usex idn true false)"
-DBUILD_ARPING="$(usex arping true false)"
-DBUILD_CLOCKDIFF="$(usex clockdiff true false)"
-DBUILD_PING="true"
-DBUILD_RARPD="$(usex rarpd true false)"
-DBUILD_RDISC="$(usex rdisc true false)"
-DENABLE_RDISC_SERVER="$(usex rdisc true false)"
-DBUILD_TFTPD="$(usex tftpd true false)"
-DBUILD_TRACEPATH="$(usex tracepath true false)"
-DBUILD_TRACEROUTE6="$(usex ipv6 $(usex traceroute6 true false) false)"
-DBUILD_NINFOD="false"
-DNINFOD_MESSAGES="false"
-DNO_SETCAP_OR_SUID="true"
-Dsystemdunitdir="$(systemd_get_systemunitdir)"
-DUSE_GETTEXT="$(usex nls true false)"
)
if [[ "${PV}" == 99999999 ]] ; then
emesonargs+=(
-DBUILD_HTML_MANS="$(usex doc true false)"
-DBUILD_MANS="true"
)
else
emesonargs+=(
-DBUILD_HTML_MANS="false"
-DBUILD_MANS="false"
)
fi
meson_src_configure
}
src_compile() {
tc-export CC
meson_src_compile
}
src_install() {
meson_src_install
dodir /bin
local my_bin
for my_bin in $(usex arping arping '') ping ; do
mv "${ED}"/usr/bin/${my_bin} "${ED}"/bin/ || die
done
dosym ping /bin/ping4
if use tracepath ; then
dosym tracepath /usr/bin/tracepath4
fi
if use ipv6 ; then
dosym ping /bin/ping6
if use tracepath ; then
dosym tracepath /usr/bin/tracepath6
dosym tracepath.8 /usr/share/man/man8/tracepath6.8
fi
fi
if [[ "${PV}" != 99999999 ]] ; then
local -a man_pages
local -a html_man_pages
while IFS= read -r -u 3 -d $'\0' my_bin
do
my_bin=$(basename "${my_bin}")
[[ -z "${my_bin}" ]] && continue
if [[ -f "${S}/doc/${my_bin}.8" ]] ; then
man_pages+=( ${my_bin}.8 )
fi
if [[ -f "${S}/doc/${my_bin}.html" ]] ; then
html_man_pages+=( ${my_bin}.html )
fi
done 3< <(find "${ED}"/{bin,usr/bin,usr/sbin} -type f -perm -a+x -print0 2>/dev/null)
pushd doc &>/dev/null || die
doman "${man_pages[@]}"
if use doc ; then
docinto html
dodoc "${html_man_pages[@]}"
fi
popd &>/dev/null || die
else
if use doc ; then
mv "${ED}"/usr/share/${PN} "${ED}"/usr/share/doc/${PF}/html || die
fi
fi
}
pkg_postinst() {
fcaps cap_net_raw \
bin/ping \
$(usex arping 'bin/arping' '') \
$(usex clockdiff 'usr/bin/clockdiff' '')
}

View File

@ -1,190 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# For released versions, we precompile the man/html pages and store
# them in a tarball on our mirrors. This avoids ugly issues while
# building stages, and reduces dependencies.
# To regenerate man/html pages emerge iputils-99999999[doc] with
# EGIT_COMMIT set to release tag, all USE flags enabled and
# tar ${S}/doc folder.
EAPI="7"
PLOCALES="de fr ja pt_BR tr uk zh_CN"
inherit fcaps flag-o-matic meson plocale systemd toolchain-funcs
if [[ ${PV} == "99999999" ]] ; then
EGIT_REPO_URI="https://github.com/iputils/iputils.git"
inherit git-r3
else
SRC_URI="https://github.com/iputils/iputils/archive/${PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~whissi/dist/iputils/${PN}-manpages-${PV}.tar.xz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="Network monitoring tools including ping and ping6"
HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils"
LICENSE="BSD GPL-2+ rdisc"
SLOT="0"
IUSE="+arping caps clockdiff doc gcrypt idn ipv6 nettle nls rarpd rdisc ssl static test tftpd tracepath traceroute6"
RESTRICT="!test? ( test )"
BDEPEND="
virtual/pkgconfig
test? ( sys-apps/iproute2 )
nls? ( sys-devel/gettext )
"
LIB_DEPEND="
caps? ( sys-libs/libcap[static-libs(+)] )
idn? ( net-dns/libidn2:=[static-libs(+)] )
nls? ( virtual/libintl[static-libs(+)] )
"
RDEPEND="
traceroute6? ( !net-analyzer/traceroute )
!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
"
DEPEND="
${RDEPEND}
virtual/os-headers
static? ( ${LIB_DEPEND} )
"
if [[ ${PV} == "99999999" ]] ; then
BDEPEND+="
app-text/docbook-xml-dtd:4.2
app-text/docbook-xml-dtd:4.5
app-text/docbook-xsl-ns-stylesheets
app-text/docbook-xsl-stylesheets
dev-libs/libxslt:0
"
fi
PATCHES=(
# Upstream; drop on bump
"${FILESDIR}"/${P}-optional-tests.patch
)
src_prepare() {
default
plocale_get_locales > po/LINGUAS || die
}
src_configure() {
use static && append-ldflags -static
local emesonargs=(
-DUSE_CAP="$(usex caps true false)"
-DUSE_IDN="$(usex idn true false)"
-DBUILD_ARPING="$(usex arping true false)"
-DBUILD_CLOCKDIFF="$(usex clockdiff true false)"
-DBUILD_PING="true"
-DBUILD_RARPD="$(usex rarpd true false)"
-DBUILD_RDISC="$(usex rdisc true false)"
-DENABLE_RDISC_SERVER="$(usex rdisc true false)"
-DBUILD_TFTPD="$(usex tftpd true false)"
-DBUILD_TRACEPATH="$(usex tracepath true false)"
-DBUILD_TRACEROUTE6="$(usex ipv6 $(usex traceroute6 true false) false)"
-DBUILD_NINFOD="false"
-DNINFOD_MESSAGES="false"
-DNO_SETCAP_OR_SUID="true"
-Dsystemdunitdir="$(systemd_get_systemunitdir)"
-DUSE_GETTEXT="$(usex nls true false)"
$(meson_use !test SKIP_TESTS)
)
if [[ "${PV}" == 99999999 ]] ; then
emesonargs+=(
-DBUILD_HTML_MANS="$(usex doc true false)"
-DBUILD_MANS="true"
)
else
emesonargs+=(
-DBUILD_HTML_MANS="false"
-DBUILD_MANS="false"
)
fi
meson_src_configure
}
src_compile() {
tc-export CC
meson_src_compile
}
src_test() {
if [[ ${EUID} != 0 ]]; then
einfo "Tests require root privileges; Skipping ..."
return
fi
meson_src_test
}
src_install() {
meson_src_install
dodir /bin
local my_bin
for my_bin in $(usex arping arping '') ping ; do
mv "${ED}"/usr/bin/${my_bin} "${ED}"/bin/ || die
done
dosym ping /bin/ping4
if use tracepath ; then
dosym tracepath /usr/bin/tracepath4
fi
if use ipv6 ; then
dosym ping /bin/ping6
if use tracepath ; then
dosym tracepath /usr/bin/tracepath6
dosym tracepath.8 /usr/share/man/man8/tracepath6.8
fi
fi
if [[ "${PV}" != 99999999 ]] ; then
local -a man_pages
local -a html_man_pages
while IFS= read -r -u 3 -d $'\0' my_bin
do
my_bin=$(basename "${my_bin}")
[[ -z "${my_bin}" ]] && continue
if [[ -f "${S}/doc/${my_bin}.8" ]] ; then
man_pages+=( ${my_bin}.8 )
fi
if [[ -f "${S}/doc/${my_bin}.html" ]] ; then
html_man_pages+=( ${my_bin}.html )
fi
done 3< <(find "${ED}"/{bin,usr/bin,usr/sbin} -type f -perm -a+x -print0 2>/dev/null)
pushd doc &>/dev/null || die
doman "${man_pages[@]}"
if use doc ; then
docinto html
dodoc "${html_man_pages[@]}"
fi
popd &>/dev/null || die
else
if use doc ; then
mv "${ED}"/usr/share/${PN} "${ED}"/usr/share/doc/${PF}/html || die
fi
fi
}
pkg_postinst() {
fcaps cap_net_raw \
bin/ping \
$(usex arping 'bin/arping' '') \
$(usex clockdiff 'usr/bin/clockdiff' '')
}

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
# For released versions, we precompile the man/html pages and store
@ -19,8 +19,9 @@ if [[ ${PV} == "99999999" ]] ; then
inherit git-r3
else
SRC_URI="https://github.com/iputils/iputils/archive/${PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-manpages-${PV}.tar.xz
https://dev.gentoo.org/~whissi/dist/iputils/${PN}-manpages-${PV}.tar.xz"
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"
fi
DESCRIPTION="Network monitoring tools including ping and ping6"
@ -28,49 +29,36 @@ HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils"
LICENSE="BSD GPL-2+ rdisc"
SLOT="0"
IUSE="+arping caps clockdiff doc gcrypt idn ipv6 nettle nls rarpd rdisc ssl static test tftpd tracepath traceroute6"
IUSE="+arping caps clockdiff doc idn nls rarpd rdisc static test tracepath"
RESTRICT="!test? ( test )"
BDEPEND="
virtual/pkgconfig
test? ( sys-apps/iproute2 )
nls? ( sys-devel/gettext )
"
LIB_DEPEND="
caps? ( sys-libs/libcap[static-libs(+)] )
idn? ( net-dns/libidn2:=[static-libs(+)] )
nls? ( virtual/libintl[static-libs(+)] )
"
RDEPEND="
traceroute6? ( !net-analyzer/traceroute )
!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
DEPEND="
${RDEPEND}
virtual/os-headers
static? ( ${LIB_DEPEND} )
"
BDEPEND="
virtual/pkgconfig
test? ( sys-apps/iproute2 )
nls? ( sys-devel/gettext )
"
if [[ ${PV} == "99999999" ]] ; then
if [[ ${PV} == 99999999 ]] ; then
BDEPEND+="
app-text/docbook-xml-dtd:4.2
app-text/docbook-xml-dtd:4.5
app-text/docbook-xsl-ns-stylesheets
app-text/docbook-xsl-stylesheets
dev-libs/libxslt:0
dev-libs/libxslt
"
fi
PATCHES=(
# Upstream; drop on bump
"${FILESDIR}"/${P}-optional-tests.patch
# Upstream; drop on bump
"${FILESDIR}"/${P}-fix-no-ipv6-ping.patch
)
src_prepare() {
default
@ -81,34 +69,32 @@ src_configure() {
use static && append-ldflags -static
local emesonargs=(
-DUSE_CAP="$(usex caps true false)"
-DUSE_IDN="$(usex idn true false)"
-DBUILD_ARPING="$(usex arping true false)"
-DBUILD_CLOCKDIFF="$(usex clockdiff true false)"
-DBUILD_PING="true"
-DBUILD_RARPD="$(usex rarpd true false)"
-DBUILD_RDISC="$(usex rdisc true false)"
-DENABLE_RDISC_SERVER="$(usex rdisc true false)"
-DBUILD_TFTPD="$(usex tftpd true false)"
-DBUILD_TRACEPATH="$(usex tracepath true false)"
-DBUILD_TRACEROUTE6="$(usex ipv6 $(usex traceroute6 true false) false)"
-DBUILD_NINFOD="false"
-DNINFOD_MESSAGES="false"
-DNO_SETCAP_OR_SUID="true"
-Dsystemdunitdir="$(systemd_get_systemunitdir)"
-DUSE_GETTEXT="$(usex nls true false)"
-DUSE_CAP=$(usex caps true false)
-DUSE_IDN=$(usex idn true false)
-DBUILD_ARPING=$(usex arping true false)
-DBUILD_CLOCKDIFF=$(usex clockdiff true false)
-DBUILD_PING=true
-DBUILD_RARPD=$(usex rarpd true false)
-DBUILD_RDISC=$(usex rdisc true false)
-DENABLE_RDISC_SERVER=$(usex rdisc true false)
-DBUILD_TRACEPATH=$(usex tracepath true false)
-DBUILD_NINFOD=false
-DNINFOD_MESSAGES=false
-DNO_SETCAP_OR_SUID=true
-Dsystemdunitdir=$(systemd_get_systemunitdir)
-DUSE_GETTEXT=$(usex nls true false)
$(meson_use !test SKIP_TESTS)
)
if [[ "${PV}" == 99999999 ]] ; then
if [[ ${PV} == 99999999 ]] ; then
emesonargs+=(
-DBUILD_HTML_MANS="$(usex doc true false)"
-DBUILD_MANS="true"
-DBUILD_HTML_MANS=$(usex doc true false)
-DBUILD_MANS=true
)
else
emesonargs+=(
-DBUILD_HTML_MANS="false"
-DBUILD_MANS="false"
-DBUILD_HTML_MANS=false
-DBUILD_MANS=false
)
fi
@ -117,12 +103,13 @@ src_configure() {
src_compile() {
tc-export CC
meson_src_compile
}
src_test() {
if [[ ${EUID} != 0 ]] ; then
einfo "Tests require root privileges; Skipping ..."
einfo "Tests require root privileges. Skipping ..."
return
fi
@ -138,21 +125,15 @@ src_install() {
mv "${ED}"/usr/bin/${my_bin} "${ED}"/bin/ || die
done
dosym ping /bin/ping4
if use tracepath ; then
dosym tracepath /usr/bin/tracepath4
fi
if use ipv6 ; then
dosym ping /bin/ping6
if use tracepath ; then
dosym tracepath /usr/bin/tracepath4
dosym tracepath /usr/bin/tracepath6
dosym tracepath.8 /usr/share/man/man8/tracepath6.8
fi
fi
if [[ "${PV}" != 99999999 ]] ; then
if [[ ${PV} != 99999999 ]] ; then
local -a man_pages
local -a html_man_pages
@ -184,7 +165,21 @@ src_install() {
fi
}
pkg_preinst() {
local version_with_tftpd="<${CATEGORY}/${PN}-20211215"
if has_version "${version_with_tftpd}[traceroute6]" || has_version "${version_with_tftpd}[tftpd]" ; then
HAD_TFTPD_VERSION=1
fi
}
pkg_postinst() {
if [[ ${HAD_TFTPD_VERSION} -eq 1 ]] ; then
ewarn "This upstream version (>= 20211215) drops two tools:"
ewarn "1. tftpd (alternatives: net-ftp/tftp-hpa, net-dns/dnsmasq)"
ewarn "2. traceroute6 (alternatives: net-analyzer/mtr, net-analyzer/traceroute)"
ewarn "Please install one of the listed alternatives if needed!"
fi
fcaps cap_net_raw \
bin/ping \
$(usex arping 'bin/arping' '') \

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
# For released versions, we precompile the man/html pages and store
@ -12,13 +12,14 @@ EAPI="7"
PLOCALES="de fr ja pt_BR tr uk zh_CN"
inherit fcaps flag-o-matic meson plocale systemd toolchain-funcs
inherit fcaps meson plocale systemd toolchain-funcs
if [[ ${PV} == "99999999" ]] ; then
if [[ ${PV} == 99999999 ]] ; then
EGIT_REPO_URI="https://github.com/iputils/iputils.git"
inherit git-r3
else
SRC_URI="https://github.com/iputils/iputils/archive/${PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-manpages-${PV}.tar.xz
https://dev.gentoo.org/~whissi/dist/iputils/${PN}-manpages-${PV}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
@ -28,39 +29,31 @@ HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils"
LICENSE="BSD GPL-2+ rdisc"
SLOT="0"
IUSE="+arping caps clockdiff doc gcrypt idn ipv6 nettle nls rarpd rdisc ssl static test tftpd tracepath traceroute6"
IUSE="+arping caps clockdiff doc idn nls test tracepath"
RESTRICT="!test? ( test )"
RDEPEND="
caps? ( sys-libs/libcap )
idn? ( net-dns/libidn2:= )
nls? ( virtual/libintl )
"
DEPEND="
${RDEPEND}
virtual/os-headers
"
BDEPEND="
virtual/pkgconfig
test? ( sys-apps/iproute2 )
nls? ( sys-devel/gettext )
"
LIB_DEPEND="
caps? ( sys-libs/libcap[static-libs(+)] )
idn? ( net-dns/libidn2:=[static-libs(+)] )
nls? ( virtual/libintl[static-libs(+)] )
"
RDEPEND="
traceroute6? ( !net-analyzer/traceroute )
!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
"
DEPEND="
${RDEPEND}
virtual/os-headers
static? ( ${LIB_DEPEND} )
"
if [[ ${PV} == "99999999" ]] ; then
if [[ ${PV} == 99999999 ]] ; then
BDEPEND+="
app-text/docbook-xml-dtd:4.2
app-text/docbook-xml-dtd:4.5
app-text/docbook-xsl-ns-stylesheets
app-text/docbook-xsl-stylesheets
dev-libs/libxslt:0
dev-libs/libxslt
"
fi
@ -71,37 +64,28 @@ src_prepare() {
}
src_configure() {
use static && append-ldflags -static
local emesonargs=(
-DUSE_CAP="$(usex caps true false)"
-DUSE_IDN="$(usex idn true false)"
-DBUILD_ARPING="$(usex arping true false)"
-DBUILD_CLOCKDIFF="$(usex clockdiff true false)"
-DBUILD_PING="true"
-DBUILD_RARPD="$(usex rarpd true false)"
-DBUILD_RDISC="$(usex rdisc true false)"
-DENABLE_RDISC_SERVER="$(usex rdisc true false)"
-DBUILD_TFTPD="$(usex tftpd true false)"
-DBUILD_TRACEPATH="$(usex tracepath true false)"
-DBUILD_TRACEROUTE6="$(usex ipv6 $(usex traceroute6 true false) false)"
-DBUILD_NINFOD="false"
-DNINFOD_MESSAGES="false"
-DNO_SETCAP_OR_SUID="true"
-Dsystemdunitdir="$(systemd_get_systemunitdir)"
-DUSE_GETTEXT="$(usex nls true false)"
-DUSE_CAP=$(usex caps true false)
-DUSE_IDN=$(usex idn true false)
-DBUILD_ARPING=$(usex arping true false)
-DBUILD_CLOCKDIFF=$(usex clockdiff true false)
-DBUILD_PING=true
-DBUILD_TRACEPATH=$(usex tracepath true false)
-DNO_SETCAP_OR_SUID=true
-Dsystemdunitdir=$(systemd_get_systemunitdir)
-DUSE_GETTEXT=$(usex nls true false)
$(meson_use !test SKIP_TESTS)
)
if [[ "${PV}" == 99999999 ]] ; then
if [[ ${PV} == 99999999 ]] ; then
emesonargs+=(
-DBUILD_HTML_MANS="$(usex doc true false)"
-DBUILD_MANS="true"
-DBUILD_HTML_MANS=$(usex doc true false)
-DBUILD_MANS=true
)
else
emesonargs+=(
-DBUILD_HTML_MANS="false"
-DBUILD_MANS="false"
-DBUILD_HTML_MANS=false
-DBUILD_MANS=false
)
fi
@ -110,12 +94,13 @@ src_configure() {
src_compile() {
tc-export CC
meson_src_compile
}
src_test() {
if [[ ${EUID} != 0 ]] ; then
einfo "Tests require root privileges; Skipping ..."
einfo "Tests require root privileges. Skipping ..."
return
fi
@ -125,27 +110,20 @@ src_test() {
src_install() {
meson_src_install
dodir /bin
local my_bin
for my_bin in $(usex arping arping '') ping ; do
mv "${ED}"/usr/bin/${my_bin} "${ED}"/bin/ || die
done
dosym ping /bin/ping4
FILECAPS=( cap_net_raw usr/bin/ping )
use arping && FILECAPS+=( usr/bin/arping )
use clockdiff && FILECAPS+=( usr/bin/clockdiff )
dosym ping /usr/bin/ping4
dosym ping /usr/bin/ping6
if use tracepath ; then
dosym tracepath /usr/bin/tracepath4
fi
if use ipv6 ; then
dosym ping /bin/ping6
if use tracepath ; then
dosym tracepath /usr/bin/tracepath6
dosym tracepath.8 /usr/share/man/man8/tracepath6.8
fi
fi
if [[ "${PV}" != 99999999 ]] ; then
if [[ ${PV} != 99999999 ]] ; then
local -a man_pages
local -a html_man_pages
@ -177,9 +155,20 @@ src_install() {
fi
}
pkg_postinst() {
fcaps cap_net_raw \
bin/ping \
$(usex arping 'bin/arping' '') \
$(usex clockdiff 'usr/bin/clockdiff' '')
pkg_preinst() {
local version_with_tftpd="<${CATEGORY}/${PN}-20211215"
if has_version "${version_with_tftpd}[traceroute6]" || has_version "${version_with_tftpd}[tftpd]" ; then
HAD_TFTPD_VERSION=1
fi
}
pkg_postinst() {
fcaps_pkg_postinst
if [[ ${HAD_TFTPD_VERSION} -eq 1 ]] ; then
ewarn "This upstream version (>= 20211215) drops two tools:"
ewarn "1. tftpd (alternatives: net-ftp/tftp-hpa, net-dns/dnsmasq)"
ewarn "2. traceroute6 (alternatives: net-analyzer/mtr, net-analyzer/traceroute)"
ewarn "Please install one of the listed alternatives if needed!"
fi
}

View File

@ -8,13 +8,9 @@
<use>
<flag name="arping">Build and install arping -- tool for sending ARP requests to peers (see also <pkg>net-analyzer/arping</pkg>)</flag>
<flag name="clockdiff">Build and install clockdiff -- tool for comparing clocks via ICMP packets</flag>
<flag name="gcrypt">Use <pkg>dev-libs/libgcrypt</pkg> for md5 support</flag>
<flag name="nettle">Use <pkg>dev-libs/nettle</pkg> for md5 support</flag>
<flag name="rarpd">Build and install rarpd -- server for handling RARP (reverse ARP) requests; generally only used by old systems</flag>
<flag name="rdisc">Build and install rdisc -- server for the client side of the ICMP router discover protocol</flag>
<flag name="tftpd">Build and install tftpd -- server for the Trivial File Transfer Protocol (see also <pkg>net-ftp/tftp-hpa</pkg>)</flag>
<flag name="tracepath">Build and install tracepath -- tool for tracing network paths for discovering MTU values</flag>
<flag name="traceroute6">Build and install deprecated traceroute6 tool. It's recommended to use <pkg>net-analyzer/traceroute</pkg> instead.</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:skbuff:iputils</remote-id>

View File

@ -1,3 +1,2 @@
DIST socat-1.7.4.2.tar.gz 653068 BLAKE2B 0eba89e2f8993e6c5f2ffaa57ca9e93ae89cb01bf9d6f0f0d5e9550d4cd7e6aa390b26120a47e3661772550f4fb189807bedd31d1477ff0065f478ef2be062ab SHA512 c331a6348e0febb35cd8adc2b116e3b8896cd7f64bcd93e507df4b8197ee1e6738ca256abf74c9b225e7a3769cf9643f0e237826125c6f390b5124ce0f10c972
DIST socat-1.7.4.3.tar.gz 655520 BLAKE2B d91de7ef55332001e6439f64130555b9558338fb9b6c15c91ab5efc8f86a2e7e0f5fe0b292754731a198d83be5f511c3388c65c7c7f559c55691f42703f1849b SHA512 81cb34c245052b6a0ae38a711591358460b6070957af4a9eeb11a3cadb4aff184eeaedabbc7ecdc7fdf21a6126c06f90f19b24a87ce74b30bfd60a3879181046
DIST socat-2.0.0-b9.tar.bz2 516673 BLAKE2B 808c8821b89ae2463074f87915dfae10f82b66ac6cd0b6ff56ab18f57c704e5a2a3ce76650152dccce41e4bd00e3a937948d4ade0a915b1f0e917c7543c6fc31 SHA512 f728bd634feeeacd2f0e4020c1c6aafdadaef3ba9da818d9ae1195e9f48fb693b2bea8dbbb208af8daddd8d6405217113d5ce31d05c2e9b27f5d2fba6b1cc834

View File

@ -1,58 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic toolchain-funcs
MY_P=${P/_beta/-b}
DESCRIPTION="Multipurpose relay (SOcket CAT)"
HOMEPAGE="http://www.dest-unreach.org/socat/ https://repo.or.cz/socat.git"
SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.gz"
S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
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"
IUSE="bindist ipv6 readline ssl tcpd"
DEPEND="ssl? ( dev-libs/openssl:0= )
readline? ( sys-libs/readline:= )
tcpd? ( sys-apps/tcp-wrappers )"
RDEPEND="${DEPEND}"
# Tests are a large bash script
# Hard to disable individual tests needing network or privileges
# in 1.7.4.2: FAILED: 59 329
RESTRICT="test ssl? ( readline? ( bindist ) )"
DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY )
pkg_setup() {
# bug #587740
if use readline && use ssl ; then
elog "You are enabling both readline and openssl USE flags, the licenses"
elog "for these packages conflict. You may not be able to legally"
elog "redistribute the resulting binary."
fi
}
src_configure() {
# bug #293324
filter-flags '-Wno-error*'
tc-export AR
econf \
$(use_enable ssl openssl) \
$(use_enable readline) \
$(use_enable ipv6 ip6) \
$(use_enable tcpd libwrap)
}
src_install() {
default
docinto html
dodoc doc/*.html doc/*.css
}

View File

@ -13,7 +13,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
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"
IUSE="bindist ipv6 readline ssl tcpd"
DEPEND="ssl? ( dev-libs/openssl:0= )

View File

@ -1,2 +1,2 @@
DIST wget-1.21.1.tar.gz 4884887 BLAKE2B 28a3044f33df1d24e13900e8018a38cabae21fb41dd2e089bdbfd759b4adee3771ab558b84f5a8b6f546bc84a3387c973903f9fe06562093d3566e22d1528587 SHA512 784efbf9fe43a1671109e32a9c36237eb2d5c19cf756bf6f6e65517fb21464d3d94b1d6f491852d23b3ddff63e38fe6b60df9125c91b139993af59875e3a0712
DIST wget-1.21.2.tar.gz 5004576 BLAKE2B e11c3a2b89ab26834dc4cbb445bcc6122d3a6b2a5b9c6de1ce9e8f062281f9e5aa1f80ca37a44791ba5aaf6a447015a26afef2199cdb75f1931d5e1ffb1f406b SHA512 3e35f92604486ca459f26df97d392579f1d83a9254519e8ce249b410bacf70dddf716d6caa3b29fd4865163f60410b2b8ad1ca1f7bb3dbb2456386b7647b988d
DIST wget-1.21.3.tar.gz 5079864 BLAKE2B 4ff40a30cb3be82ea492d0eae324a9d43de30a0169d3b219ce25f3d667915f90c7eb1559760d1605340f112e96e028613265e0be73aaba7935c69cc06a4ae4f6 SHA512 29889ecbf590dff0f39183d9e0621741d731a554d990e5c995a4644725dca62e8e19601d40db0ef7d62ebf54e5457c7409965e4832b6e60e4ccbc9c8caa30718
DIST wget-1.21.3.tar.gz.sig 854 BLAKE2B 71f69492397ae9e36284be9acdd1c94da34a7397c14a6de1a867c0d1e807bf961f8a2e098ab5629425691ce595227fb08f046416245fda2a6025929079f2d7c2 SHA512 b9f41496e0083545bc703c97b0758500f337527647cdc422152d7855d05351e3a62685269238c78300eafdbfaed8afecaeb988901a3d8a6b002e9fb3d70efe4f

View File

@ -0,0 +1,211 @@
https://bugs.gentoo.org/850676
https://git.savannah.gnu.org/cgit/wget.git/commit/?id=cb114fbbf73eb687d28b01341c8d4266ffa96c9d
From: =?UTF-8?q?Tim=20R=C3=BChsen?= <tim.ruehsen@gmx.de>
Date: Sun, 20 Mar 2022 12:18:20 +0100
Subject: Fix HSTS portability by using int64_t instead of time_t.
* src/hsts.c: Use int64_t instead of time_t.
* src/http.c: Use int64_t for parsing Strict-Transport-Security.
--- a/src/hsts.c
+++ b/src/hsts.c
@@ -61,8 +61,8 @@ struct hsts_kh {
};
struct hsts_kh_info {
- time_t created;
- time_t max_age;
+ int64_t created;
+ int64_t max_age;
bool include_subdomains;
};
@@ -166,7 +166,7 @@ end:
static bool
hsts_new_entry_internal (hsts_store_t store,
const char *host, int port,
- time_t created, time_t max_age,
+ int64_t created, int64_t max_age,
bool include_subdomains,
bool check_validity,
bool check_expired,
@@ -216,21 +216,21 @@ bail:
static bool
hsts_add_entry (hsts_store_t store,
const char *host, int port,
- time_t max_age, bool include_subdomains)
+ int64_t max_age, bool include_subdomains)
{
- time_t t = time (NULL);
+ int64_t t = (int64_t) time (NULL);
/* It might happen time() returned -1 */
- return (t == (time_t)(-1) ?
+ return (t == -1) ?
false :
- hsts_new_entry_internal (store, host, port, t, max_age, include_subdomains, false, true, false));
+ hsts_new_entry_internal (store, host, port, t, max_age, include_subdomains, false, true, false);
}
/* Creates a new entry, unless an identical one already exists. */
static bool
hsts_new_entry (hsts_store_t store,
const char *host, int port,
- time_t created, time_t max_age,
+ int64_t created, int64_t max_age,
bool include_subdomains)
{
return hsts_new_entry_internal (store, host, port, created, max_age, include_subdomains, true, true, true);
@@ -245,7 +245,7 @@ hsts_remove_entry (hsts_store_t store, struct hsts_kh *kh)
static bool
hsts_store_merge (hsts_store_t store,
const char *host, int port,
- time_t created, time_t max_age,
+ int64_t created, int64_t max_age,
bool include_subdomains)
{
enum hsts_kh_match match_type = NO_MATCH;
@@ -276,11 +276,11 @@ hsts_read_database (hsts_store_t store, FILE *fp, bool merge_with_existing_entri
size_t len = 0;
int items_read;
bool result = false;
- bool (*func)(hsts_store_t, const char *, int, time_t, time_t, bool);
+ bool (*func)(hsts_store_t, const char *, int, int64_t, int64_t, bool);
char host[256];
int port;
- time_t created, max_age;
+ int64_t created, max_age;
int include_subdomains;
func = (merge_with_existing_entries ? hsts_store_merge : hsts_new_entry);
@@ -326,10 +326,9 @@ hsts_store_dump (hsts_store_t store, FILE *fp)
struct hsts_kh *kh = (struct hsts_kh *) it.key;
struct hsts_kh_info *khi = (struct hsts_kh_info *) it.value;
- if (fprintf (fp, "%s\t%d\t%d\t%lu\t%lu\n",
+ if (fprintf (fp, "%s\t%d\t%d\t%" PRId64 "\t%" PRId64 "\n",
kh->host, kh->explicit_port, khi->include_subdomains,
- (unsigned long) khi->created,
- (unsigned long) khi->max_age) < 0)
+ khi->created, khi->max_age) < 0)
{
logprintf (LOG_ALWAYS, "Could not write the HSTS database correctly.\n");
break;
@@ -439,7 +438,7 @@ hsts_match (hsts_store_t store, struct url *u)
bool
hsts_store_entry (hsts_store_t store,
enum url_scheme scheme, const char *host, int port,
- time_t max_age, bool include_subdomains)
+ int64_t max_age, bool include_subdomains)
{
bool result = false;
enum hsts_kh_match match = NO_MATCH;
@@ -464,9 +463,9 @@ hsts_store_entry (hsts_store_t store,
* 'created' field too. The RFC also states that we have to
* update the entry each time we see HSTS header.
* See also Section 11.2. */
- time_t t = time (NULL);
+ int64_t t = (int64_t) time (NULL);
- if (t != (time_t)(-1) && t != entry->created)
+ if (t != -1 && t != entry->created)
{
entry->created = t;
entry->max_age = max_age;
@@ -792,7 +791,7 @@ test_hsts_read_database (void)
hsts_store_t table;
char *file = NULL;
FILE *fp = NULL;
- time_t created = time(NULL) - 10;
+ int64_t created = time(NULL) - 10;
if (opt.homedir)
{
@@ -801,9 +800,9 @@ test_hsts_read_database (void)
if (fp)
{
fputs ("# dummy comment\n", fp);
- fprintf (fp, "foo.example.com\t0\t1\t%lu\t123\n",(unsigned long) created);
- fprintf (fp, "bar.example.com\t0\t0\t%lu\t456\n", (unsigned long) created);
- fprintf (fp, "test.example.com\t8080\t0\t%lu\t789\n", (unsigned long) created);
+ fprintf (fp, "foo.example.com\t0\t1\t%" PRId64 "\t123\n", created);
+ fprintf (fp, "bar.example.com\t0\t0\t%" PRId64 "\t456\n", created);
+ fprintf (fp, "test.example.com\t8080\t0\t%" PRId64 "\t789\n", created);
fclose (fp);
table = hsts_store_open (file);
--- a/src/hsts.h
+++ b/src/hsts.h
@@ -46,7 +46,7 @@ bool hsts_store_has_changed (hsts_store_t);
bool hsts_store_entry (hsts_store_t,
enum url_scheme, const char *, int,
- time_t, bool);
+ int64_t, bool);
bool hsts_match (hsts_store_t, struct url *);
#endif /* HAVE_HSTS */
--- a/src/http.c
+++ b/src/http.c
@@ -1300,7 +1300,7 @@ parse_content_disposition (const char *hdr, char **filename)
#ifdef HAVE_HSTS
static bool
-parse_strict_transport_security (const char *header, time_t *max_age, bool *include_subdomains)
+parse_strict_transport_security (const char *header, int64_t *max_age, bool *include_subdomains)
{
param_token name, value;
const char *c_max_age = NULL;
@@ -1330,7 +1330,7 @@ parse_strict_transport_security (const char *header, time_t *max_age, bool *incl
* Also, time_t is normally defined as a long, so this should not break.
*/
if (max_age)
- *max_age = (time_t) strtol (c_max_age, NULL, 10);
+ *max_age = (int64_t) strtoll (c_max_age, NULL, 10);
if (include_subdomains)
*include_subdomains = is;
@@ -3184,9 +3184,6 @@ gethttp (const struct url *u, struct url *original_url, struct http_stat *hs,
#else
extern hsts_store_t hsts_store;
#endif
- const char *hsts_params;
- time_t max_age;
- bool include_subdomains;
#endif
int sock = -1;
@@ -3674,21 +3671,24 @@ gethttp (const struct url *u, struct url *original_url, struct http_stat *hs,
#ifdef HAVE_HSTS
if (opt.hsts && hsts_store)
{
- hsts_params = resp_header_strdup (resp, "Strict-Transport-Security");
+ int64_t max_age;
+ const char *hsts_params = resp_header_strdup (resp, "Strict-Transport-Security");
+ bool include_subdomains;
+
if (parse_strict_transport_security (hsts_params, &max_age, &include_subdomains))
{
/* process strict transport security */
if (hsts_store_entry (hsts_store, u->scheme, u->host, u->port, max_age, include_subdomains))
- DEBUGP(("Added new HSTS host: %s:%u (max-age: %lu, includeSubdomains: %s)\n",
+ DEBUGP(("Added new HSTS host: %s:%" PRIu32 " (max-age: %" PRId64 ", includeSubdomains: %s)\n",
u->host,
- (unsigned) u->port,
- (unsigned long) max_age,
+ (uint32_t) u->port,
+ max_age,
(include_subdomains ? "true" : "false")));
else
- DEBUGP(("Updated HSTS host: %s:%u (max-age: %lu, includeSubdomains: %s)\n",
+ DEBUGP(("Updated HSTS host: %s:%" PRIu32 " (max-age: %" PRId64 ", includeSubdomains: %s)\n",
u->host,
- (unsigned) u->port,
- (unsigned long) max_age,
+ (uint32_t) u->port,
+ max_age,
(include_subdomains ? "true" : "false")));
}
xfree (hsts_params);
cgit v1.1

View File

@ -6,12 +6,13 @@
<name>Gentoo Base System</name>
</maintainer>
<use>
<flag name="cookie_check">Enable cookie checks via <pkg>net-libs/libpsl</pkg></flag>
<flag name="cookie-check">Enable cookie checks via <pkg>net-libs/libpsl</pkg></flag>
<flag name="metalink">Enable support for <pkg>media-libs/libmetalink</pkg></flag>
<flag name="ntlm">Enable support for NTLM (Windows-based) authorization</flag>
<flag name="uuid">Generate UUIDs for the WARC (Web ARChive file format) using libuuid; otherwise use a simple RNG (random number generator)</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:gnu:wget</remote-id>
<remote-id type="gitlab">gnuwget/wget</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,32 +1,38 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{7..9} )
inherit flag-o-matic python-any-r1 toolchain-funcs
PYTHON_COMPAT=( python3_{8..11} )
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/wget.asc
inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig
DESCRIPTION="Network utility to retrieve files from the WWW"
HOMEPAGE="https://www.gnu.org/software/wget/"
SRC_URI="mirror://gnu/wget/${P}.tar.gz"
SRC_URI+=" verify-sig? ( mirror://gnu/wget/${P}.tar.gz.sig )"
LICENSE="GPL-3"
LICENSE="GPL-3+"
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="cookie_check debug gnutls idn ipv6 metalink nls ntlm pcre +ssl static test uuid zlib"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="cookie-check debug gnutls idn ipv6 metalink nls ntlm pcre +ssl static test uuid zlib"
REQUIRED_USE="ntlm? ( !gnutls ssl ) gnutls? ( ssl )"
RESTRICT="!test? ( test )"
# Force a newer libidn2 to avoid libunistring deps. #612498
# * Force a newer libidn2 to avoid libunistring deps. #bug #612498
# * Metalink can use gpgme automagically (so let's always depend on it)
# for signed metalink resources.
LIB_DEPEND="
cookie_check? ( net-libs/libpsl )
cookie-check? ( net-libs/libpsl )
idn? ( >=net-dns/libidn2-0.14:=[static-libs(+)] )
metalink? ( media-libs/libmetalink )
metalink? (
app-crypt/gpgme
media-libs/libmetalink
)
pcre? ( dev-libs/libpcre2[static-libs(+)] )
ssl? (
gnutls? ( net-libs/gnutls:0=[static-libs(+)] )
!gnutls? ( dev-libs/openssl:0=[static-libs(+)] )
gnutls? ( net-libs/gnutls:=[static-libs(+)] )
!gnutls? ( dev-libs/openssl:=[static-libs(+)] )
)
uuid? ( sys-apps/util-linux[static-libs(+)] )
zlib? ( sys-libs/zlib[static-libs(+)] )
@ -35,21 +41,27 @@ RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
DEPEND="
${RDEPEND}
static? ( ${LIB_DEPEND} )
test? (
${PYTHON_DEPS}
dev-lang/perl
dev-perl/HTTP-Daemon
dev-perl/HTTP-Message
dev-perl/IO-Socket-SSL
)
"
BDEPEND="
app-arch/xz-utils
dev-lang/perl
sys-apps/texinfo
virtual/pkgconfig
nls? ( sys-devel/gettext )
test? (
${PYTHON_DEPS}
>=dev-perl/HTTP-Daemon-6.60.0
dev-perl/HTTP-Message
dev-perl/IO-Socket-SSL
)
verify-sig? ( sec-keys/openpgp-keys-wget )
"
DOCS=( AUTHORS MAILING-LIST NEWS README doc/sample.wgetrc )
DOCS=( AUTHORS MAILING-LIST NEWS README )
PATCHES=(
"${FILESDIR}"/${P}-hsts-type.patch
)
pkg_setup() {
use test && python-any-r1_pkg_setup
@ -57,25 +69,7 @@ pkg_setup() {
src_prepare() {
default
# revert some hack that breaks linking, bug #585924
if [[ ${CHOST} == *-darwin* ]] \
|| [[ ${CHOST} == *-solaris* ]] \
|| [[ ${CHOST} == *-uclibc* ]] \
|| [[ ${CHOST} == *-cygwin* ]] \
; then
sed -i \
-e 's/^ LIBICONV=$/:/' \
configure || die
fi
if [[ ${CHOST} == *-darwin* && ${CHOST##*-darwin} -le 17 ]] ; then
# Fix older Darwin inline definition problem
# fixed upstream
# https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=29d79d473f52b0ec58f50c95ef782c66fc0ead21
sed -i -e '/define _GL_EXTERN_INLINE_STDHEADER_BUG/s/_BUG/_DISABLE/' \
src/config.h.in || die
fi
sed -i -e "s:/usr/local/etc:${EPREFIX}/etc:g" doc/{sample.wgetrc,wget.texi} || die
}
src_configure() {
@ -92,8 +86,9 @@ src_configure() {
# There is no flag that controls this. libunistring-prefix only
# controls the search path (which is why we turn it off below).
# Further, libunistring is only needed w/older libidn2 installs,
# and since we force the latest, we can force off libunistring. #612498
# and since we force the latest, we can force off libunistring. # bug #612498
local myeconfargs=(
ac_cv_libunistring=no
--disable-assert
--disable-pcre
--disable-rpath
@ -107,24 +102,13 @@ src_configure() {
$(use_enable pcre pcre2)
$(use_enable ssl digest)
$(use_enable ssl opie)
$(use_with cookie_check libpsl)
$(use_with idn libidn)
$(use_with cookie-check libpsl)
$(use_enable idn iri)
$(use_with metalink)
$(use_with ssl ssl $(usex gnutls gnutls openssl))
$(use_with uuid libuuid)
$(use_with zlib)
)
ac_cv_libunistring=no \
econf "${myeconfargs[@]}"
}
src_install() {
default
sed -i \
-e "s:/usr/local/etc:${EPREFIX}/etc:g" \
"${ED}"/etc/wgetrc \
"${ED}"/usr/share/man/man1/wget.1 \
"${ED}"/usr/share/info/wget.info \
|| die
}

View File

@ -1,32 +1,38 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{7..9} )
inherit flag-o-matic python-any-r1 toolchain-funcs
PYTHON_COMPAT=( python3_{8..10} )
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/wget.asc
inherit flag-o-matic python-any-r1 toolchain-funcs verify-sig
DESCRIPTION="Network utility to retrieve files from the WWW"
HOMEPAGE="https://www.gnu.org/software/wget/"
SRC_URI="mirror://gnu/wget/${P}.tar.gz"
SRC_URI+=" verify-sig? ( mirror://gnu/wget/${P}.tar.gz.sig )"
LICENSE="GPL-3"
LICENSE="GPL-3+"
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="cookie_check debug gnutls idn ipv6 metalink nls ntlm pcre +ssl static test uuid zlib"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="cookie-check debug gnutls idn ipv6 metalink nls ntlm pcre +ssl static test uuid zlib"
REQUIRED_USE="ntlm? ( !gnutls ssl ) gnutls? ( ssl )"
RESTRICT="!test? ( test )"
# Force a newer libidn2 to avoid libunistring deps. #612498
# * Force a newer libidn2 to avoid libunistring deps. #bug #612498
# * Metalink can use gpgme automagically (so let's always depend on it)
# for signed metalink resources.
LIB_DEPEND="
cookie_check? ( net-libs/libpsl )
cookie-check? ( net-libs/libpsl )
idn? ( >=net-dns/libidn2-0.14:=[static-libs(+)] )
metalink? ( media-libs/libmetalink )
metalink? (
app-crypt/gpgme
media-libs/libmetalink
)
pcre? ( dev-libs/libpcre2[static-libs(+)] )
ssl? (
gnutls? ( net-libs/gnutls:0=[static-libs(+)] )
!gnutls? ( dev-libs/openssl:0=[static-libs(+)] )
gnutls? ( net-libs/gnutls:=[static-libs(+)] )
!gnutls? ( dev-libs/openssl:=[static-libs(+)] )
)
uuid? ( sys-apps/util-linux[static-libs(+)] )
zlib? ( sys-libs/zlib[static-libs(+)] )
@ -35,21 +41,23 @@ RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
DEPEND="
${RDEPEND}
static? ( ${LIB_DEPEND} )
test? (
${PYTHON_DEPS}
dev-lang/perl
dev-perl/HTTP-Daemon
dev-perl/HTTP-Message
dev-perl/IO-Socket-SSL
)
"
BDEPEND="
app-arch/xz-utils
dev-lang/perl
sys-apps/texinfo
virtual/pkgconfig
nls? ( sys-devel/gettext )
test? (
${PYTHON_DEPS}
>=dev-perl/HTTP-Daemon-6.60.0
dev-perl/HTTP-Message
dev-perl/IO-Socket-SSL
)
verify-sig? ( sec-keys/openpgp-keys-wget )
"
DOCS=( AUTHORS MAILING-LIST NEWS README doc/sample.wgetrc )
DOCS=( AUTHORS MAILING-LIST NEWS README )
pkg_setup() {
use test && python-any-r1_pkg_setup
@ -57,17 +65,7 @@ pkg_setup() {
src_prepare() {
default
# revert some hack that breaks linking, bug #585924
if [[ ${CHOST} == *-darwin* ]] \
|| [[ ${CHOST} == *-solaris* ]] \
|| [[ ${CHOST} == *-uclibc* ]] \
|| [[ ${CHOST} == *-cygwin* ]] \
; then
sed -i \
-e 's/^ LIBICONV=$/:/' \
configure || die
fi
sed -i -e "s:/usr/local/etc:${EPREFIX}/etc:g" doc/{sample.wgetrc,wget.texi} || die
}
src_configure() {
@ -75,12 +73,6 @@ src_configure() {
# the included gnutls -- force ioctl.h to include this header
[[ ${CHOST} == *-solaris* ]] && append-cppflags -DBSD_COMP=1
if [[ ${CHOST} == *-darwin* ]] ; then
# https://lists.gnu.org/archive/html/bug-findutils/2021-01/msg00050.html
# https://lists.gnu.org/archive/html/bug-findutils/2021-01/msg00051.html
append-cppflags '-D__nonnull\(X\)='
fi
if use static ; then
append-ldflags -static
tc-export PKG_CONFIG
@ -90,8 +82,9 @@ src_configure() {
# There is no flag that controls this. libunistring-prefix only
# controls the search path (which is why we turn it off below).
# Further, libunistring is only needed w/older libidn2 installs,
# and since we force the latest, we can force off libunistring. #612498
# and since we force the latest, we can force off libunistring. # bug #612498
local myeconfargs=(
ac_cv_libunistring=no
--disable-assert
--disable-pcre
--disable-rpath
@ -105,24 +98,13 @@ src_configure() {
$(use_enable pcre pcre2)
$(use_enable ssl digest)
$(use_enable ssl opie)
$(use_with cookie_check libpsl)
$(use_with idn libidn)
$(use_with cookie-check libpsl)
$(use_enable idn iri)
$(use_with metalink)
$(use_with ssl ssl $(usex gnutls gnutls openssl))
$(use_with uuid libuuid)
$(use_with zlib)
)
ac_cv_libunistring=no \
econf "${myeconfargs[@]}"
}
src_install() {
default
sed -i \
-e "s:/usr/local/etc:${EPREFIX}/etc:g" \
"${ED}"/etc/wgetrc \
"${ED}"/usr/share/man/man1/wget.1 \
"${ED}"/usr/share/info/wget.info \
|| die
}

View File

@ -1,2 +1,2 @@
DIST whois-5.5.10.tar.gz 102555 BLAKE2B 9f1236ceeaea839e5f2a33aa63b39fa7e0566eeb4d2131b88b47dd62f037639a5860719a645d9cc2d0707faa1e86c9822634dda37e1a7a8d3b31a78cf34ecce2 SHA512 5ee92c15146353e77dddcbeddb6e704e0c42d29b8c0ff899ecce80f8e39903e8c796daec7f3de3f197d382f88e7cd4abd470463ea6c13a01347d0cd15d99af28
DIST whois-5.5.11.tar.gz 102806 BLAKE2B be1a5f04ee5af4987224151116d1d7e37ad580b8cc00c3fd4752e10b2cbc1dc46a528591cf75e95a83a99884c961f20865802246e00508c90e338590e7e0be37 SHA512 a7e400a727dd88b4c8f1df2e850879ece882b9af1d5daaff22bb3e1c88be01b4e5430f74f9d4afd4c73538d87022536e40d5f3f63a501a95845396fe0be595b4
DIST whois_5.5.13.tar.xz 87384 BLAKE2B 6ce90ad907c4ea79301adbcda5a402344df9f283ac258a3186f5c405e0abfb97f603f3f163652f1cf03a1fc60290b8f9f54b509bf7d9fd3cec12189eeeaaffe5 SHA512 b4a70cc6d58133287d70775ecd8173c255f800362639a3e2dea0d3d56c35405b7fc93c4c220cc50cbd15ae5ae402a59bd15f99e98a7cccb314f82a205aa7ee61
DIST whois_5.5.14.tar.xz 87480 BLAKE2B 868c9dc968581535ee2b56a6293f634e2c8dc6c00703a45d4ca4f0ce6769786ee4921bd66f3a470b2a7f31808db2971b284c23b76b608bff1edbb7bbe37f892a SHA512 f190d488d7bd68717c0a83ca85709fad09c33b619c46d7e0dd12e79621fdba56b9d43480c25ef3c9df2f6ade0ee72d692bfc5d0bd96839ef92194004313d1cc6

View File

@ -1,36 +1,36 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs
MY_P="${P/-/_}"
DESCRIPTION="improved Whois Client"
MY_P=${P/-/_}
DESCRIPTION="Improved Whois Client"
HOMEPAGE="https://github.com/rfc1036/whois"
if [[ "${PV}" == *9999 ]] ; then
if [[ ${PV} == *9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/rfc1036/whois.git"
else
#SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
#SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}"/${PN}
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="iconv idn nls xcrypt"
RESTRICT="test" #59327
RDEPEND="
iconv? ( virtual/libiconv )
RDEPEND="iconv? ( virtual/libiconv )
idn? ( net-dns/libidn2:= )
nls? ( virtual/libintl )
xcrypt? ( >=sys-libs/libxcrypt-4.1:= )
!xcrypt? ( virtual/libcrypt:= )
"
!xcrypt? ( virtual/libcrypt:= )"
DEPEND="${RDEPEND}"
BDEPEND="
app-arch/xz-utils
BDEPEND="app-arch/xz-utils
>=dev-lang/perl-5
virtual/pkgconfig
nls? ( sys-devel/gettext )"
@ -43,6 +43,7 @@ PATCHES=(
src_prepare() {
default
if use nls ; then
sed -i -e 's:#\(.*pos\):\1:' Makefile || die
else
@ -58,21 +59,20 @@ src_configure() { :; } # expected no-op
src_compile() {
unset HAVE_ICONV HAVE_LIBIDN
use iconv && export HAVE_ICONV=1
use idn && export HAVE_LIBIDN=1
use xcrypt && export HAVE_XCRYPT=1
tc-export CC
emake CFLAGS="${CFLAGS} ${CPPFLAGS}"
}
src_install() {
emake BASEDIR="${ED}" prefix=/usr install
insinto /etc
doins whois.conf
dodoc README debian/changelog
if [[ ${USERLAND} != "GNU" ]]; then
mv "${ED}"/usr/share/man/man1/{whois,mdwhois}.1 || die
mv "${ED}"/usr/bin/{whois,mdwhois} || die
fi
}

View File

@ -5,21 +5,24 @@ EAPI=7
inherit toolchain-funcs
MY_P="${P/-/_}"
DESCRIPTION="improved Whois Client"
MY_P=${P/-/_}
DESCRIPTION="Improved Whois Client"
HOMEPAGE="https://github.com/rfc1036/whois"
if [[ "${PV}" == *9999 ]] ; then
if [[ ${PV} == *9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/rfc1036/whois.git"
else
#SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
#SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}"/${PN}
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="iconv idn nls xcrypt"
RESTRICT="test" #59327
RDEPEND="
iconv? ( virtual/libiconv )
@ -43,6 +46,7 @@ PATCHES=(
src_prepare() {
default
if use nls ; then
sed -i -e 's:#\(.*pos\):\1:' Makefile || die
else
@ -58,21 +62,20 @@ src_configure() { :; } # expected no-op
src_compile() {
unset HAVE_ICONV HAVE_LIBIDN
use iconv && export HAVE_ICONV=1
use idn && export HAVE_LIBIDN=1
use xcrypt && export HAVE_XCRYPT=1
tc-export CC
emake CFLAGS="${CFLAGS} ${CPPFLAGS}"
}
src_install() {
emake BASEDIR="${ED}" prefix=/usr install
insinto /etc
doins whois.conf
dodoc README debian/changelog
if [[ ${USERLAND} != "GNU" ]]; then
mv "${ED}"/usr/share/man/man1/{whois,mdwhois}.1 || die
mv "${ED}"/usr/bin/{whois,mdwhois} || die
fi
}

View File

@ -1,25 +1,28 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs
MY_P="${P/-/_}"
DESCRIPTION="improved Whois Client"
MY_P=${P/-/_}
DESCRIPTION="Improved Whois Client"
HOMEPAGE="https://github.com/rfc1036/whois"
if [[ "${PV}" == *9999 ]] ; then
if [[ ${PV} == *9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/rfc1036/whois.git"
else
#SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
#SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}"/${PN}
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="iconv idn nls xcrypt"
RESTRICT="test" #59327
RDEPEND="
iconv? ( virtual/libiconv )
@ -43,6 +46,7 @@ PATCHES=(
src_prepare() {
default
if use nls ; then
sed -i -e 's:#\(.*pos\):\1:' Makefile || die
else
@ -58,21 +62,20 @@ src_configure() { :; } # expected no-op
src_compile() {
unset HAVE_ICONV HAVE_LIBIDN
use iconv && export HAVE_ICONV=1
use idn && export HAVE_LIBIDN=1
use xcrypt && export HAVE_XCRYPT=1
tc-export CC
emake CFLAGS="${CFLAGS} ${CPPFLAGS}"
}
src_install() {
emake BASEDIR="${ED}" prefix=/usr install
insinto /etc
doins whois.conf
dodoc README debian/changelog
if [[ ${USERLAND} != "GNU" ]]; then
mv "${ED}"/usr/share/man/man1/{whois,mdwhois}.1 || die
mv "${ED}"/usr/bin/{whois,mdwhois} || die
fi
}

View File

@ -1,2 +1,2 @@
DIST diffutils-3.7.tar.xz 1448828 BLAKE2B d9f115e0ec9b2499545a3bef4e469fb7786d4a95e0a1c8459c885c53e8b1dc797027979e42c53c2a7df4e1e224942bd9ce5214813977af2bcc67f0698ea0c647 SHA512 7b12cf8aea1b9844773748f72272d9c6a38adae9c3c3a8c62048f91fb56c60b76035fa5f51665dceaf2cfbf1d1f4a3efdcc24bf47a5a16ff4350543314b12c9c
DIST diffutils-3.8.tar.xz 1585120 BLAKE2B 573abbfba55c62ba30d2084ca68860e9681cfe92648407f7fb04e1aaed2e4719e2fb5a29cf25bd125d762f4dfd52f85ee91f2ec19b099365bada7fe27a0394af SHA512 279441270987e70d5ecfaf84b6285a4866929c43ec877e50f154a788858d548a8a316f2fc26ad62f7348c8d289cb29a09d06dfadce1806e3d8b4ea88c8b1aa7c
DIST diffutils-3.8.tar.xz.sig 833 BLAKE2B 439d331d9839d8b434b7192c52628bc9e8e1c11cada28170f85c9390abc3e5e9ea86aee696a4f9260552133053194680ff54b960ed539fabec85fdff54dee3a2 SHA512 0464ac89209411993800666b45ff90243d22fbda53bf1d71c6870d565b39cc8d9c54c141b9d297a181ce74ad8fb5313953f416bced179ff7728a52a3e9a4f5a5

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 flag-o-matic
DESCRIPTION="Tools to make diffs and compare files"
HOMEPAGE="https://www.gnu.org/software/diffutils/"
SRC_URI="mirror://gnu/diffutils/${P}.tar.xz
https://alpha.gnu.org/gnu/diffutils/${P}.tar.xz"
LICENSE="GPL-2"
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="nls static"
BDEPEND="nls? ( sys-devel/gettext )"
DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
src_configure() {
use static && append-ldflags -static
# Disable automagic dependency over libsigsegv; see bug #312351.
export ac_cv_libsigsegv=no
# required for >=glibc-2.26, bug #653914
use elibc_glibc && export gl_cv_func_getopt_gnu=yes
local myeconfargs=(
--with-packager="Gentoo"
--with-packager-version="${PVR}"
--with-packager-bug-reports="https://bugs.gentoo.org/"
$(use_enable nls)
)
econf "${myeconfargs[@]}"
}
src_test() {
# explicitly allow parallel testing
emake check
}

View File

@ -1,21 +1,42 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/diffutils.asc
inherit flag-o-matic verify-sig
DESCRIPTION="Tools to make diffs and compare files"
HOMEPAGE="https://www.gnu.org/software/diffutils/"
SRC_URI="mirror://gnu/diffutils/${P}.tar.xz
https://alpha.gnu.org/gnu/diffutils/${P}.tar.xz"
https://alpha.gnu.org/gnu/diffutils/${P}.tar.xz
verify-sig? (
mirror://gnu/diffutils/${P}.tar.xz.sig
https://alpha.gnu.org/gnu/diffutils/${P}.tar.xz.sig
)"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="nls static"
BDEPEND="nls? ( sys-devel/gettext )"
BDEPEND="nls? ( sys-devel/gettext )
verify-sig? ( sec-keys/openpgp-keys-diffutils )"
PATCHES=(
"${FILESDIR}/ppc-musl.patch"
"${FILESDIR}/loong-fix-build.patch"
)
src_prepare() {
default
# touch generated files after patching m4, to avoid activating maintainer
# mode
# remove when loong-fix-build.patch is no longer necessary
touch ./aclocal.m4 lib/config.hin ./configure || die
find . -name Makefile.in -exec touch {} + || die
}
src_configure() {
use static && append-ldflags -static

View File

@ -0,0 +1,30 @@
[xen0n: this is https://github.com/sunhaiyong1978/CLFS-for-LoongArch/blob/1.0/patches/stack-direction-add-loongarch.patch with change to generated file added as well.]
From: Sun Haiyong <youbest@sina.com>
Date: Tue, 31 Aug 2021 11:11:52 +0800
Subject: [PATCH] stack-direction: Add support for loongarch CPU
* m4/stack-direction.m4 (SV_STACK_DIRECTION): When the CPU is loongarch,
set "sv_cv_stack_direction" to "-1" .
--- a/m4/stack-direction.m4
+++ b/m4/stack-direction.m4
@@ -32,6 +32,7 @@ AC_DEFUN([SV_STACK_DIRECTION],
i?86 | x86_64 | \
i860 | \
ia64 | \
+ loongarch* | \
m32r | \
m68* | \
m88k | \
--- a/configure
+++ b/configure
@@ -34088,6 +34088,7 @@ else $as_nop
i?86 | x86_64 | \
i860 | \
ia64 | \
+ loongarch* | \
m32r | \
m68* | \
m88k | \
--
2.17.2

View File

@ -0,0 +1,19 @@
Needed to fix build on ppc + musl. Should pop up in next gnulib sync in release (different patch).
https://www.openwall.com/lists/musl/2017/11/05/2
https://github.com/void-linux/void-packages/blob/master/srcpkgs/grep/patches/ppc-musl.patch
https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=2d830e4a792fcd9f614ed08a7f18584b8b21d23b
--- a/lib/sigsegv.c
+++ b/lib/sigsegv.c
@@ -221,8 +221,10 @@ int libsigsegv_version = LIBSIGSEGV_VERSION;
/* both should be equivalent */
# if 0
# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.regs->gpr[1]
-# else
+# elif defined(__GLIBC__)
# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.uc_regs->gregs[1]
+# else
+# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.gregs[1]
# endif
# endif

View File

@ -5,4 +5,7 @@
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
<upstream>
<remote-id type="savannah">diffutils</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,5 +1,2 @@
DIST libcap-2.49.tar.xz 139568 BLAKE2B 5746dcdf2a737e747450bd50a701ee8543277b17b7fbf1304b79f707a088ea74dc6dc79c61ff89b55b718a460a7b0814f960f44d07944a97b832b78f4e14e07f SHA512 2934a2ded1370edeb9603dbf43d8ca23a2eb5d67efc5cec5d4ba96c707a8db2702da8aa9be0cb86c5ff100d37ec96115c7777a7566ad0ab2e0b4a288bbe357d0
DIST libcap-2.57.tar.xz 167740 BLAKE2B e0c004f3d11caf824d907315e6102707bb34c0ef3e9d430f23c191d711f073267ef6dc44463e2ce8041b8d13658b0c20560f7f3c6387f770ff9e66b81ff9f5d3 SHA512 5c70b3c6a1248ca0de92538614f0d0d516d72f6f25b135c92738c377b67533662e6fd6b0b61cb051ec99f406387d3334fcc7ddb54789626e4c387bcf46ebffbf
DIST libcap-2.58.tar.xz 168520 BLAKE2B 9f160c08e7e8bcb9eb49ab6a7a0805145461613a946ccfebeadc269b26331eadc9f467437b2f5b022e9a545b034ea4fd8fed4d5893e84d9a48dd85318810b974 SHA512 092e45f82113293e1c2db7e51dca7298496c2a3af08eb41107e8c2b4798c25d3c9059e152181dc048b232fe0e59c4c3beaa158da2e5798cd6e1013d85226a9cf
DIST libcap-2.59.tar.xz 168404 BLAKE2B 5db562b389f2c4034b5fa840a14f7fd7ada49470fea8d13828b2c302a7d768831a6215593d21938b8e1d5bd65fa0581628809526fa5f6091ca4eac5e884cd38c SHA512 296c11259e1b4d577b3527ab5e2160be3f94a2bee7d63d1b7feadc603f7e160b72f8c8ede34dec269f5eb7595304ff290693803be778bdbbe088de0e99a33812
DIST libcap-2.60.tar.xz 170744 BLAKE2B 858b5133a5cb2f3b30dab569a6c9f2097034318c90419fa2372e0b28c891160f5e84b54b302b2d98664df8f7c44df78eb3cb4e47b328cecd4c27e7ab223045ae SHA512 f2ff0d81df7251c05decda706ccc6463ce58df6a3c542fe479328dce5416f77aa5c6a09a1ab05a1d1a3638e6dae5c0e546aaa4824843a570700a8927fb7f73e6
DIST libcap-2.65.tar.xz 179852 BLAKE2B 9417c5c22fa2fc03df08667dca802c2e190f17af3cda86021de175bd315cbef8607cff51ee2a9c0b6cee7a09c536dbdc43c01549e0540c335966f0afaf9268c3 SHA512 de34cd7fecfe9b688ee08e56c71d4f39a3a05f6414f88577faaadfcd5111a0ae1824af3e76a5b8199131a8df6e87e47fdcb3570c364999e4626f2ab8fafb8671
DIST libcap-2.66.tar.xz 181592 BLAKE2B e79bf10c6a3dbffe96dc97aad0bed67caa0b3805d9dcaff1e4a8a833396ee5c6da4f7f0d321b254e99a00073bc39021b9f3a4b350d93094d0df4d74889b3ca56 SHA512 ac005b622f6e065f30ce282a5c87240e7b9da75366ee537aa4835bc501b44bc242c10a4ba4dc070e2415fc7f635d1c3c4e45fbeeaf962cf7973dda82bf6377f0

View File

@ -1,10 +0,0 @@
--- a/libcap/libcap.h
+++ b/libcap/libcap.h
@@ -13,6 +13,7 @@
#include <stdlib.h>
#include <string.h>
#include <sys/capability.h>
+#include <sys/prctl.h> /* prctl() */
#ifndef __u8
#define __u8 unsigned char

View File

@ -1,71 +0,0 @@
From 3f76418eaf73896489129c529fac021e4f3a03c0 Mon Sep 17 00:00:00 2001
From: Mike Frysinger <vapier@gentoo.org>
Date: Wed, 21 Nov 2018 11:00:54 +0100
Subject: [PATCH] use awk/sed instead of perl for creating header files
More systems should have awk/sed than perl.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Forward ported from libcap-2.22 to libcap-2.26
and incorporated the gperf-3.1 fix provided by Mike Gilbert
<floppym@gentoo.org>
Forward ported from libcap-2.26 to libcap-2.28
Forward ported from libcap-2.28 to libcap-2.38
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
---
libcap/Makefile | 26 +++++++++++++++++++-------
1 file changed, 19 insertions(+), 7 deletions(-)
diff --git a/libcap/Makefile b/libcap/Makefile
index 3d6463d..df2526c 100644
--- a/libcap/Makefile
+++ b/libcap/Makefile
@@ -22,6 +22,8 @@ MAJLIBNAME=$(LIBNAME).$(VERSION)
MINLIBNAME=$(MAJLIBNAME).$(MINOR)
GPERF_OUTPUT = _caps_output.gperf
CFLAGS += -fPIC
+AWK = awk
+SED = sed
all: $(MINLIBNAME) $(STACAPLIBNAME) libcap.pc libpsx.pc $(STAPSXLIBNAME)
@@ -55,17 +57,27 @@ cap_names.h: _makenames
./_makenames > cap_names.h
$(GPERF_OUTPUT): cap_names.list.h
- perl -e 'print "struct __cap_token_s { const char *name; int index; };\n%{\nconst struct __cap_token_s *__cap_lookup_name(const char *, size_t);\n%}\n%%\n"; while ($$l = <>) { $$l =~ s/[\{\"]//g; $$l =~ s/\}.*// ; print $$l; }' < $< | gperf --ignore-case --language=ANSI-C --readonly --null-strings --global-table --hash-function-name=__cap_hash_name --lookup-function-name="__cap_lookup_name" -c -t -m20 $(INDENT) > $@
- sed -e 's/unsigned int len/size_t len/' -i $@
+ (printf "%b" "struct __cap_token_s { const char *name; int index; };\n%%\n"; \
+ $(SED) -e 's:["{}]::g' -e 's:,$$::' $<) | \
+ gperf \
+ --ignore-case \
+ --language=ANSI-C \
+ --includes \
+ --readonly \
+ --null-strings \
+ --global-table \
+ --hash-function-name=__cap_hash_name \
+ --lookup-function-name="__cap_lookup_name" \
+ -c -t -m20 $(INDENT) > $@
-# Intention is that libcap keeps up with torvalds' tree, as reflected
-# by this maintained version of the kernel header. libcap dynamically
-# trims the meaning of "all" capabilities down to that of the running
-# kernel as of 2.30.
UAPI_HEADER := $(topdir)/libcap/include/uapi/linux/capability.h
cap_names.list.h: Makefile $(UAPI_HEADER)
@echo "=> making $@ from $(UAPI_HEADER)"
- perl -e 'while ($$l=<>) { if ($$l =~ /^\#define[ \t](CAP[_A-Z]+)[ \t]+([0-9]+)\s+$$/) { $$tok=$$1; $$val=$$2; $$tok =~ tr/A-Z/a-z/; print "{\"$$tok\",$$val},\n"; } }' $(UAPI_HEADER) | fgrep -v 0x > $@
+ $(AWK) '($$0 ~ /^#define[[:space:]]+CAP[_A-Z]+[[:space:]]+[0-9]+[[:space:]]*$$/) { printf "{\"%s\",%s},\n", tolower($$2), $$3 }' $(UAPI_HEADER) > $@
+
+cap_names.list.h: $(KERNEL_HEADERS)/linux/capability.h Makefile
+ @echo "=> making $@ from $<"
+ $(AWK) '($$0 ~ /^#define[[:space:]]+CAP[_A-Z]+[[:space:]]+[0-9]+[[:space:]]*$$/) { printf "{\"%s\",%s},\n", tolower($$2), $$3 }' $< > $@
$(STACAPLIBNAME): $(CAPOBJS)
$(AR) rcs $@ $^
--
2.27.0

View File

@ -1,199 +0,0 @@
From d0e5c20fda92fcc48109bce7055d5fad458579ca Mon Sep 17 00:00:00 2001
From: Mike Frysinger <vapier@gentoo.org>
Date: Wed, 4 Nov 2020 22:46:20 +0100
Subject: [PATCH] build system fixes
This touches up the homebrewed build system to work much better "out of the
box" for people. Specifically:
- allow toolchain vars to be set via environment
- CC / BUILD_CC / AR / RANLIB
- CFLAGS / CPPFLAGS / LDFLAGS
- split CPPFLAGS out of CFLAGS
- break -fPIC out of global CFLAGS and only use where needed
- use LDLIBS for libraries, not LDFLAGS
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Forward ported from libcap-2.24 to libcap-2.25
Forward ported from libcap-2.25 to libcap-2.28
Forward ported from libcap-2.28 to libcap-2.29
Forward ported from libcap-2.29 to libcap-2.33
Forward ported from libcap-2.33 to libcap-2.34
Forward ported from libcap-2.34 to libcap-2.37
Forward ported from libcap-2.37 to libcap-2.39
Forward ported from libcap-2.39 to libcap-2.42
Forward ported from libcap-2.42 to libcap-2.44
Forward ported from libcap-2.44 to libcap-2.45
Forward ported from libcap-2.45 to libcap-2.48
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
---
Make.Rules | 10 ++++++----
Makefile | 1 -
libcap/Makefile | 7 ++++---
pam_cap/Makefile | 8 +++++---
progs/Makefile | 2 +-
tests/Makefile | 6 ++++--
6 files changed, 20 insertions(+), 14 deletions(-)
diff --git a/Make.Rules b/Make.Rules
index ded9014..07b716f 100644
--- a/Make.Rules
+++ b/Make.Rules
@@ -52,7 +52,6 @@ GOMAJOR=0
# Compilation specifics
KERNEL_HEADERS := $(topdir)/libcap/include/uapi
-IPATH += -fPIC -I$(KERNEL_HEADERS) -I$(topdir)/libcap/include
CC := $(CROSS_COMPILE)gcc
DEFINES := -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
@@ -60,7 +59,7 @@ COPTS ?= -O2
CFLAGS ?= $(COPTS) $(DEFINES)
BUILD_CC ?= $(CC)
BUILD_COPTS ?= -O2
-BUILD_CFLAGS ?= $(BUILD_COPTS) $(DEFINES) $(IPATH)
+BUILD_CFLAGS ?= $(CFLAGS)
AR := $(CROSS_COMPILE)ar
RANLIB := $(CROSS_COMPILE)ranlib
DEBUG = -g #-DDEBUG
@@ -76,10 +75,13 @@ LIBPSXLIB := -L$(topdir)/libcap -lpsx $(PSXLINKFLAGS)
BUILD_GPERF := $(shell which gperf >/dev/null 2>/dev/null && echo yes)
-SYSTEM_HEADERS = /usr/include
+LIBCAP_CPPFLAGS = -I$(KERNEL_HEADERS) -I$(topdir)/libcap/include $(DEFINES)
+CPPFLAGS += $(LIBCAP_CPPFLAGS)
+BUILD_CPPFLAGS += $(LIBCAP_CPPFLAGS)
INCS=$(topdir)/libcap/include/sys/capability.h
LDFLAGS += -L$(topdir)/libcap
-CFLAGS += -Dlinux $(WARNINGS) $(DEBUG)
+CPPFLAGS += -Dlinux
+CFLAGS += $(WARNINGS) $(DEBUG)
INDENT := $(shell if [ -n "$$(which indent 2>/dev/null)" ]; then echo "| indent -kr" ; fi)
# SHARED tracks whether or not the SHARED libraries (libcap.so,
diff --git a/Makefile b/Makefile
index 7150b9b..9dff1e9 100644
--- a/Makefile
+++ b/Makefile
@@ -17,7 +17,6 @@ ifeq ($(GOLANG),yes)
$(MAKE) -C go $@
rm -f cap/go.sum
endif
- $(MAKE) -C tests $@
$(MAKE) -C progs $@
$(MAKE) -C doc $@
$(MAKE) -C kdebug $@
diff --git a/libcap/Makefile b/libcap/Makefile
index 9563d88..4b42f01 100644
--- a/libcap/Makefile
+++ b/libcap/Makefile
@@ -25,6 +25,7 @@ MINCAPLIBNAME=$(MAJCAPLIBNAME).$(MINOR)
PSXOBJS=$(addsuffix .o, $(PSXFILES))
MAJPSXLIBNAME=$(PSXLIBNAME).$(VERSION)
MINPSXLIBNAME=$(MAJPSXLIBNAME).$(MINOR)
+CFLAGS += -fPIC
all: pcs $(STACAPLIBNAME)
ifeq ($(SHARED),yes)
@@ -66,7 +67,7 @@ libpsx.pc: libpsx.pc.in
$< >$@
_makenames: _makenames.c cap_names.list.h
- $(BUILD_CC) $(BUILD_CFLAGS) $< -o $@
+ $(BUILD_CC) $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $< -o $@
cap_names.h: _makenames
./_makenames > cap_names.h
@@ -105,10 +106,10 @@ $(PSXLIBNAME) $(MAJPSXLIBNAME) $(MINPSXLIBNAME): $(PSXOBJS) include/sys/psx_sysc
endif
%.o: %.c $(INCLS)
- $(CC) $(CFLAGS) $(IPATH) -c $< -o $@
+ $(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
cap_text.o: cap_text.c $(USE_GPERF_OUTPUT) $(INCLS)
- $(CC) $(CFLAGS) $(IPATH) $(INCLUDE_GPERF_OUTPUT) -c $< -o $@
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(INCLUDE_GPERF_OUTPUT) -c $< -o $@
cap_test: cap_test.c libcap.h
$(CC) $(CFLAGS) $(IPATH) $< -o $@
diff --git a/pam_cap/Makefile b/pam_cap/Makefile
index 56604fd..2da4674 100644
--- a/pam_cap/Makefile
+++ b/pam_cap/Makefile
@@ -3,6 +3,8 @@
topdir=$(shell pwd)/..
include ../Make.Rules
+CFLAGS += -fPIC
+
all: pam_cap.so
$(MAKE) testlink
@@ -16,16 +18,16 @@ install: all
# written (and you know why it fails), email me and explain why. Thanks!
pam_cap.so: pam_cap.o
- $(LD) -o pam_cap.so $< $(LIBCAPLIB) $(LDFLAGS)
+ $(LD) $(CFLAGS) -o pam_cap.so $< $(LIBCAPLIB) $(LDFLAGS)
pam_cap.o: pam_cap.c
- $(CC) $(CFLAGS) $(IPATH) -c $< -o $@
+ $(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
test_pam_cap: test_pam_cap.c pam_cap.c
$(CC) $(CFLAGS) $(IPATH) -o $@ test_pam_cap.c $(LIBCAPLIB) $(LDFLAGS) --static
testlink: test.c pam_cap.o
- $(CC) $(CFLAGS) -o $@ $+ -lpam -ldl $(LIBCAPLIB) $(LDFLAGS)
+ $(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $+ -lpam -ldl $(LIBCAPLIB) $(LDFLAGS)
test: pam_cap.so
make testlink
diff --git a/progs/Makefile b/progs/Makefile
index 1d7fc7a..64dbe86 100644
--- a/progs/Makefile
+++ b/progs/Makefile
@@ -28,7 +28,7 @@ $(BUILD): %: %.o $(DEPS)
$(CC) $(CFLAGS) -o $@ $< $(LIBCAPLIB) $(LDFLAGS)
%.o: %.c $(INCS)
- $(CC) $(IPATH) $(CAPSH_SHELL) $(CFLAGS) -c $< -o $@
+ $(CC) $(CAPSH_SHELL) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
install: all
mkdir -p -m 0755 $(FAKEROOT)$(SBINDIR)
diff --git a/tests/Makefile b/tests/Makefile
index 1e7039d..5874624 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -13,6 +13,8 @@ ifeq ($(PTHREADS),yes)
make psx_test libcap_psx_test libcap_psx_launch_test
endif
+CFLAGS += -fPIC
+
install: all
ifeq ($(DYNAMIC),yes)
@@ -62,13 +64,13 @@ run_psx_test: psx_test
./psx_test
psx_test: psx_test.c $(DEPS)
- $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LINKEXTRA) $(LIBPSXLIB) $(LDFLAGS)
+ $(CC) $(CFLAGS) $(CPPFLAGS) $< -o $@ $(LINKEXTRA) $(LIBPSXLIB) $(LDFLAGS)
run_libcap_psx_test: libcap_psx_test
./libcap_psx_test
libcap_psx_test: libcap_psx_test.c $(DEPS)
- $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LINKEXTRA) $(LIBCAPLIB) $(LIBPSXLIB) $(LDFLAGS)
+ $(CC) $(CFLAGS) $(CPPFLAGS) $< -o $@ $(LINKEXTRA) $(LIBCAPLIB) $(LIBPSXLIB) $(LDFLAGS)
# privileged
run_libcap_launch_test: libcap_launch_test noop ../progs/tcapsh-static
--
2.30.0

View File

@ -1,29 +0,0 @@
https://git.kernel.org/pub/scm/libs/libcap/libcap.git/patch/?id=893c134ca5cd6fc33ac19d8dbb9d985067d2e66b
From: "Andrew G. Morgan" <morgan@kernel.org>
Date: Fri, 10 Sep 2021 16:11:57 -0700
Subject: Another missing dependency for make -j13
One more missing dependency for pam_cap.so building.
Signed-off-by: Andrew G. Morgan <morgan@kernel.org>
--- a/pam_cap/Makefile
+++ b/pam_cap/Makefile
@@ -19,7 +19,11 @@ install: all
execable.o: execable.c ../libcap/execable.h ../libcap/loader.txt
$(CC) $(CFLAGS) $(CPPFLAGS) -DLIBCAP_VERSION=\"libcap-$(VERSION).$(MINOR)\" -DSHARED_LOADER=\"$(shell cat ../libcap/loader.txt)\" -c execable.c -o $@
-pam_cap.so: pam_cap.o execable.o pam_cap_linkopts
+LIBCAP:
+ $(MAKE) -C ../libcap all
+ touch $@
+
+pam_cap.so: pam_cap.o execable.o pam_cap_linkopts LIBCAP
cat pam_cap_linkopts | xargs -e $(LD) $(LDFLAGS) -o $@ pam_cap.o execable.o $(LIBCAPLIB)
# Some distributions force link everything at compile time, and don't
@@ -83,3 +87,4 @@ sudotest: test_pam_cap
clean:
rm -f *.o *.so testlink lazylink.so test_pam_cap pam_cap_linkopts *~
+ rm -f LIBCAP

View File

@ -11,15 +11,11 @@ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Forward ported from libcap-2.20 to libcap-2.25
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
---
progs/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/progs/Makefile b/progs/Makefile
index c094a24..4a6db38 100644
index 2cb7520..6d417de 100644
--- a/progs/Makefile
+++ b/progs/Makefile
@@ -27,7 +27,7 @@ install: all
@@ -39,7 +39,7 @@ install: all
install -m 0755 $$p $(FAKEROOT)$(SBINDIR) ; \
done
ifeq ($(RAISE_SETFCAP),yes)
@ -27,7 +23,4 @@ index c094a24..4a6db38 100644
+ -$(FAKEROOT)$(SBINDIR)/setcap cap_setfcap=i $(FAKEROOT)$(SBINDIR)/setcap
endif
clean:
--
2.7.1
test:

View File

@ -1,87 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal toolchain-funcs pam usr-ldscript
DESCRIPTION="POSIX 1003.1e capabilities"
HOMEPAGE="https://sites.google.com/site/fullycapable/"
SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
# it's available under either of the licenses
LICENSE="|| ( GPL-2 BSD )"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="pam static-libs"
# While the build system optionally uses gperf, we don't DEPEND on it because
# the build automatically falls back when it's unavailable. #604802
PDEPEND="pam? ( sys-libs/pam[${MULTILIB_USEDEP}] )"
DEPEND="${PDEPEND}
sys-kernel/linux-headers"
# Requires test suite being run as root (via sudo)
RESTRICT="test"
PATCHES=(
"${FILESDIR}"/${PN}-2.48-build-system-fixes.patch
"${FILESDIR}"/${PN}-2.38-no_perl.patch
"${FILESDIR}"/${PN}-2.25-ignore-RAISE_SETFCAP-install-failures.patch
"${FILESDIR}"/${PN}-2.21-include.patch
)
src_prepare() {
default
multilib_copy_sources
}
run_emake() {
local args=(
exec_prefix="${EPREFIX}"
lib_prefix="${EPREFIX}/usr"
lib="$(get_libdir)"
prefix="${EPREFIX}/usr"
PAM_CAP="$(usex pam yes no)"
DYNAMIC=yes
GOLANG=no
CC="$(tc-getCC)"
AR="$(tc-getAR)"
RANLIB="$(tc-getRANLIB)"
)
emake "${args[@]}" "$@"
}
src_configure() {
tc-export AR CC RANLIB
tc-export_build_env BUILD_CC
multilib-minimal_src_configure
}
multilib_src_compile() {
run_emake
}
multilib_src_install() {
# no configure, needs explicit install line #444724#c3
run_emake DESTDIR="${D}" install
gen_usr_ldscript -a cap
gen_usr_ldscript -a psx
if ! use static-libs ; then
rm "${ED}"/usr/$(get_libdir)/lib{cap,psx}.a || die
fi
if [[ -d "${ED}"/usr/$(get_libdir)/security ]] ; then
rm -r "${ED}"/usr/$(get_libdir)/security || die
fi
if use pam ; then
dopammod pam_cap/pam_cap.so
dopamsecurity '' pam_cap/capability.conf
fi
}
multilib_src_install_all() {
dodoc CHANGELOG README doc/capability.notes
}

View File

@ -1,88 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal toolchain-funcs pam usr-ldscript
DESCRIPTION="POSIX 1003.1e capabilities"
HOMEPAGE="https://sites.google.com/site/fullycapable/"
SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
# it's available under either of the licenses
LICENSE="|| ( GPL-2 BSD )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="pam static-libs tools"
# While the build system optionally uses gperf, we don't DEPEND on it because
# the build automatically falls back when it's unavailable. #604802
PDEPEND="pam? ( sys-libs/pam[${MULTILIB_USEDEP}] )"
DEPEND="${PDEPEND}
sys-kernel/linux-headers"
BDEPEND="tools? ( dev-lang/go )"
PATCHES=(
"${FILESDIR}"/${PN}-2.38-no_perl.patch
"${FILESDIR}"/${PN}-2.25-ignore-RAISE_SETFCAP-install-failures.patch
)
QA_FLAGS_IGNORED="sbin/captree" # go binaries don't use LDFLAGS
src_prepare() {
default
multilib_copy_sources
}
run_emake() {
local args=(
AR="$(tc-getAR)"
CC="$(tc-getCC)"
OBJCOPY="$(tc-getOBJCOPY)"
RANLIB="$(tc-getRANLIB)"
exec_prefix="${EPREFIX}"
lib_prefix="${EPREFIX}/usr"
lib="$(get_libdir)"
prefix="${EPREFIX}/usr"
PAM_CAP="$(usex pam yes no)"
DYNAMIC=yes
GOLANG="$(multilib_native_usex tools yes no)"
)
emake "${args[@]}" "$@"
}
src_configure() {
tc-export_build_env BUILD_CC
multilib-minimal_src_configure
}
multilib_src_compile() {
run_emake
}
multilib_src_test() {
run_emake test
}
multilib_src_install() {
# no configure, needs explicit install line #444724#c3
run_emake DESTDIR="${D}" install
gen_usr_ldscript -a cap
gen_usr_ldscript -a psx
if ! use static-libs ; then
rm "${ED}"/usr/$(get_libdir)/lib{cap,psx}.a || die
fi
# install pam plugins ourselves
rm -rf "${ED}"/usr/$(get_libdir)/security || die
if use pam ; then
dopammod pam_cap/pam_cap.so
dopamsecurity '' pam_cap/capability.conf
fi
}
multilib_src_install_all() {
dodoc CHANGELOG README doc/capability.notes
}

View File

@ -1,18 +1,25 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal toolchain-funcs pam usr-ldscript
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/libcap/libcap.git"
else
SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="POSIX 1003.1e capabilities"
HOMEPAGE="https://sites.google.com/site/fullycapable/"
SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
# it's available under either of the licenses
LICENSE="|| ( GPL-2 BSD )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="pam static-libs tools"
# While the build system optionally uses gperf, we don't DEPEND on it because
@ -20,17 +27,16 @@ IUSE="pam static-libs tools"
PDEPEND="pam? ( sys-libs/pam[${MULTILIB_USEDEP}] )"
DEPEND="${PDEPEND}
sys-kernel/linux-headers"
BDEPEND="tools? ( dev-lang/go )"
PATCHES=(
# Backported patch, drop on > 2.57
"${FILESDIR}"/${PN}-2.57-parallel-make.patch
"${FILESDIR}"/${PN}-2.38-no_perl.patch
"${FILESDIR}"/${PN}-2.25-ignore-RAISE_SETFCAP-install-failures.patch
)
BDEPEND="
sys-apps/diffutils
tools? ( dev-lang/go )"
QA_FLAGS_IGNORED="sbin/captree" # go binaries don't use LDFLAGS
PATCHES=(
"${FILESDIR}"/${PN}-2.62-ignore-RAISE_SETFCAP-install-failures.patch
)
src_prepare() {
default
multilib_copy_sources

View File

@ -1,18 +1,25 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal toolchain-funcs pam usr-ldscript
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/libcap/libcap.git"
else
SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="POSIX 1003.1e capabilities"
HOMEPAGE="https://sites.google.com/site/fullycapable/"
SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
# it's available under either of the licenses
LICENSE="|| ( GPL-2 BSD )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="pam static-libs tools"
# While the build system optionally uses gperf, we don't DEPEND on it because
@ -20,15 +27,16 @@ IUSE="pam static-libs tools"
PDEPEND="pam? ( sys-libs/pam[${MULTILIB_USEDEP}] )"
DEPEND="${PDEPEND}
sys-kernel/linux-headers"
BDEPEND="tools? ( dev-lang/go )"
PATCHES=(
"${FILESDIR}"/${PN}-2.38-no_perl.patch
"${FILESDIR}"/${PN}-2.25-ignore-RAISE_SETFCAP-install-failures.patch
)
BDEPEND="
sys-apps/diffutils
tools? ( dev-lang/go )"
QA_FLAGS_IGNORED="sbin/captree" # go binaries don't use LDFLAGS
PATCHES=(
"${FILESDIR}"/${PN}-2.62-ignore-RAISE_SETFCAP-install-failures.patch
)
src_prepare() {
default
multilib_copy_sources

View File

@ -1,18 +1,25 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal toolchain-funcs pam usr-ldscript
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/libcap/libcap.git"
else
SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="POSIX 1003.1e capabilities"
HOMEPAGE="https://sites.google.com/site/fullycapable/"
SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
# it's available under either of the licenses
LICENSE="|| ( GPL-2 BSD )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="pam static-libs tools"
# While the build system optionally uses gperf, we don't DEPEND on it because
@ -20,12 +27,9 @@ IUSE="pam static-libs tools"
PDEPEND="pam? ( sys-libs/pam[${MULTILIB_USEDEP}] )"
DEPEND="${PDEPEND}
sys-kernel/linux-headers"
BDEPEND="tools? ( dev-lang/go )"
PATCHES=(
"${FILESDIR}"/${PN}-2.38-no_perl.patch
"${FILESDIR}"/${PN}-2.25-ignore-RAISE_SETFCAP-install-failures.patch
)
BDEPEND="
sys-apps/diffutils
tools? ( dev-lang/go )"
QA_FLAGS_IGNORED="sbin/captree" # go binaries don't use LDFLAGS