parent
f0d8e68f08
commit
ee1a7fc88a
Binary file not shown.
Binary file not shown.
@ -0,0 +1,8 @@
|
|||||||
|
# Copyright 2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
inherit acct-group
|
||||||
|
|
||||||
|
ACCT_GROUP_ID=11
|
@ -1,5 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
<pkgmetadata>
|
<pkgmetadata>
|
||||||
<!-- maintainer-needed -->
|
<maintainer type="project">
|
||||||
|
<email>base-system@gentoo.org</email>
|
||||||
|
</maintainer>
|
||||||
</pkgmetadata>
|
</pkgmetadata>
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,90 @@
|
|||||||
|
https://github.com/tessus/apachetop/pull/13
|
||||||
|
|
||||||
|
From f89ae55bb09eb1a67fc73555d149fb85f82bfbd6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Sam James <sam@gentoo.org>
|
||||||
|
Date: Tue, 14 Feb 2023 03:34:36 +0000
|
||||||
|
Subject: [PATCH] Fix C++17 compatibility (drop register keyword)
|
||||||
|
|
||||||
|
register doesn't do anything in any reasonable C++ compiler anyway, but
|
||||||
|
it was deprecated in C++14 and removed in C++17. Without this, apachetop
|
||||||
|
will fail to compile with Clang 16 which defaults to -std=c++17.
|
||||||
|
|
||||||
|
Bug: https://bugs.gentoo.org/894186
|
||||||
|
--- a/src/inlines.cc
|
||||||
|
+++ b/src/inlines.cc
|
||||||
|
@@ -4,10 +4,10 @@
|
||||||
|
#define ONE_EIGHTH 4
|
||||||
|
#define HIGH_BITS (~((unsigned int)(~0) >> ONE_EIGHTH))
|
||||||
|
|
||||||
|
-inline unsigned int StringHash(register const char *str)
|
||||||
|
+inline unsigned int StringHash(const char *str)
|
||||||
|
{
|
||||||
|
- register unsigned int val;
|
||||||
|
- register unsigned int i;
|
||||||
|
+ unsigned int val;
|
||||||
|
+ unsigned int i;
|
||||||
|
|
||||||
|
for (val = 0; *str; str++)
|
||||||
|
{
|
||||||
|
@@ -19,9 +19,9 @@ inline unsigned int StringHash(register const char *str)
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
-inline unsigned int QuickHash(register const char *str)
|
||||||
|
+inline unsigned int QuickHash(const char *str)
|
||||||
|
{
|
||||||
|
- register unsigned int val, tmp;
|
||||||
|
+ unsigned int val, tmp;
|
||||||
|
|
||||||
|
for(val = 0 ; *str ; str++)
|
||||||
|
{
|
||||||
|
@@ -32,7 +32,7 @@ inline unsigned int QuickHash(register const char *str)
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
-inline unsigned long TTHash(register const char *str)
|
||||||
|
+inline unsigned long TTHash(const char *str)
|
||||||
|
{
|
||||||
|
unsigned long hash = 5381;
|
||||||
|
int c;
|
||||||
|
--- a/src/ohtbl.cc
|
||||||
|
+++ b/src/ohtbl.cc
|
||||||
|
@@ -13,7 +13,7 @@ static int primes[] = {101, 241, 499, 1009, 2003, 3001, 4001, 5003,
|
||||||
|
|
||||||
|
int OAHash::getNextPrime(int size)
|
||||||
|
{
|
||||||
|
- register int *prime;
|
||||||
|
+ int *prime;
|
||||||
|
for (prime = &primes[0] ; *prime ; prime++)
|
||||||
|
if (*prime > size)
|
||||||
|
return *prime;
|
||||||
|
@@ -51,7 +51,7 @@ void OAHash::destroy(void)
|
||||||
|
|
||||||
|
void *OAHash::insert(char *key, void *data)
|
||||||
|
{
|
||||||
|
- register unsigned int p, i;
|
||||||
|
+ unsigned int p, i;
|
||||||
|
void *d;
|
||||||
|
|
||||||
|
// Do not exceed the number of positions in the table.
|
||||||
|
@@ -81,7 +81,7 @@ void *OAHash::insert(char *key, void *data)
|
||||||
|
|
||||||
|
int OAHash::remove(char *key)
|
||||||
|
{
|
||||||
|
- register unsigned int p, i;
|
||||||
|
+ unsigned int p, i;
|
||||||
|
|
||||||
|
for (i = 0; i < positions; ++i)
|
||||||
|
{
|
||||||
|
@@ -108,7 +108,7 @@ int OAHash::remove(char *key)
|
||||||
|
|
||||||
|
void *OAHash::lookup(char *key)
|
||||||
|
{
|
||||||
|
- register unsigned int p, i;
|
||||||
|
+ unsigned int p, i;
|
||||||
|
|
||||||
|
for (i = 0; i < positions; ++i)
|
||||||
|
{
|
||||||
|
--
|
||||||
|
2.39.1
|
||||||
|
|
@ -0,0 +1,53 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
inherit autotools
|
||||||
|
|
||||||
|
DESCRIPTION="A library for changing configuration files"
|
||||||
|
HOMEPAGE="http://augeas.net/"
|
||||||
|
SRC_URI="https://github.com/hercules-team/augeas/releases/download/release-${PV}/${P}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="LGPL-2.1"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||||
|
IUSE="test"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
dev-libs/libxml2
|
||||||
|
sys-libs/readline:="
|
||||||
|
DEPEND="${RDEPEND}"
|
||||||
|
BDEPEND="
|
||||||
|
>=app-doc/NaturalDocs-1.40
|
||||||
|
virtual/pkgconfig
|
||||||
|
test? ( dev-lang/ruby )
|
||||||
|
"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}"/${PN}-1.14.0-musl-strerror_r.patch
|
||||||
|
)
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
# selinux needs to be implemented
|
||||||
|
econf --without-selinux
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
addpredict /usr/share/NaturalDocs/Config/Languages.txt
|
||||||
|
addpredict /usr/share/NaturalDocs/Config/Topics.txt
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
default
|
||||||
|
|
||||||
|
find "${ED}" -name '*.la' -delete || die
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
https://github.com/hercules-team/augeas/pull/791
|
||||||
|
|
||||||
|
From 46ecd3542820604603ab4f046f9fb3e6195f60aa Mon Sep 17 00:00:00 2001
|
||||||
|
From: Dimitry Andric <dimitry@andric.com>
|
||||||
|
Date: Thu, 8 Dec 2022 13:08:53 +0100
|
||||||
|
Subject: [PATCH] Only use GNU specific strerror_r() API when __GLIBC__ is
|
||||||
|
defined.
|
||||||
|
|
||||||
|
--- a/src/internal.c
|
||||||
|
+++ b/src/internal.c
|
||||||
|
@@ -431,8 +431,8 @@ char *cleanpath(char *path) {
|
||||||
|
|
||||||
|
const char *xstrerror(int errnum, char *buf, size_t len) {
|
||||||
|
#ifdef HAVE_STRERROR_R
|
||||||
|
-# ifdef __USE_GNU
|
||||||
|
- /* Annoying linux specific API contract */
|
||||||
|
+# if defined(__USE_GNU) && defined(__GLIBC__)
|
||||||
|
+ /* Annoying GNU specific API contract */
|
||||||
|
return strerror_r(errnum, buf, len);
|
||||||
|
# else
|
||||||
|
strerror_r(errnum, buf, len);
|
||||||
|
|
@ -1,6 +1,8 @@
|
|||||||
DIST awscli-exe-linux-aarch64-2.7.20.zip 46289081 BLAKE2B 1750e609bef53775e4bf66f1be78e2b05f763bde7677be99867ae89e252f1deb81dddf6011718ceafe1f97b53ac4871657f2644c478887eb4d021e14be400121 SHA512 f519aaaf2ebc3e163ae55abdb85b08dd49e148f902a06e671f582879790bdfa07e32f8d8e773ddeb95494aee3a38dc3fbdf91a93b14215f63e13ae87cdf3de4a
|
DIST awscli-exe-linux-aarch64-2.7.20.zip 46289081 BLAKE2B 1750e609bef53775e4bf66f1be78e2b05f763bde7677be99867ae89e252f1deb81dddf6011718ceafe1f97b53ac4871657f2644c478887eb4d021e14be400121 SHA512 f519aaaf2ebc3e163ae55abdb85b08dd49e148f902a06e671f582879790bdfa07e32f8d8e773ddeb95494aee3a38dc3fbdf91a93b14215f63e13ae87cdf3de4a
|
||||||
DIST awscli-exe-linux-aarch64-2.7.24.zip 46460084 BLAKE2B c24cf41c888b1469a793354c9a97cec4273f6a762ec74b4079ab8626d0eddeb95dec5ef66270764a1c8d3b1525a5460e63009441ac83ef966b43f68efe41b00a SHA512 ee4201a193e393cf7fd1e9c473eaf41a1d7934e342035b931c3d69e985bc9e74434d31d0b46bf176c27c41d1b1000bbd487a514d62c8ccdf8d7c7e82c621d1f4
|
DIST awscli-exe-linux-aarch64-2.7.24.zip 46460084 BLAKE2B c24cf41c888b1469a793354c9a97cec4273f6a762ec74b4079ab8626d0eddeb95dec5ef66270764a1c8d3b1525a5460e63009441ac83ef966b43f68efe41b00a SHA512 ee4201a193e393cf7fd1e9c473eaf41a1d7934e342035b931c3d69e985bc9e74434d31d0b46bf176c27c41d1b1000bbd487a514d62c8ccdf8d7c7e82c621d1f4
|
||||||
DIST awscli-exe-linux-aarch64-2.7.28.zip 46543587 BLAKE2B aba4c360ed9ce37406f552db1df9ddd69b46b2f87a9c12c46a5026d9259202ce485a25f7cc1d768ab9c3caff3165e56f13529f3ccc1e65935e327b5980a16af5 SHA512 b126bf26c52e2ab32bf4b7f425527960fcf5a07f0e446aaf2fe0deced802419e12cc48f9c87e0cbe4fc01430264a48b1103a9b5ea5e871a811b8e8b8c8a691d6
|
DIST awscli-exe-linux-aarch64-2.7.28.zip 46543587 BLAKE2B aba4c360ed9ce37406f552db1df9ddd69b46b2f87a9c12c46a5026d9259202ce485a25f7cc1d768ab9c3caff3165e56f13529f3ccc1e65935e327b5980a16af5 SHA512 b126bf26c52e2ab32bf4b7f425527960fcf5a07f0e446aaf2fe0deced802419e12cc48f9c87e0cbe4fc01430264a48b1103a9b5ea5e871a811b8e8b8c8a691d6
|
||||||
|
DIST awscli-exe-linux-aarch64-2.9.23.zip 47582887 BLAKE2B 3159308e20f54462c04c9e290fdbcc1d0433973fba36ba53fe7886f9ecd16eac0ecea6ac10a1f1cf49eb71c1ee704b84a6cdf18373fc94a1f9c648741ac5bcf0 SHA512 4f407c722c38a4f6adfda4e938f1039208774a897d62e9ccceb52f905a751a4dcb022342180d74fa39dd0cfd2af6787c550f8a214707b922d7bd135465074179
|
||||||
DIST awscli-exe-linux-x86_64-2.7.20.zip 47092365 BLAKE2B 26320deb54f66043693aa40cd2fee2e110f2dbf1710278ce431781d49096860dacd906bd91a01160c69c484020cc1ca497954283213e85d42206ab2dba3f1c92 SHA512 6f5ab60fe3b59a7c8ad73e81b3d3003660736fe9da35e5e44b8d222a94cf195676a4802e8ea391bbefb9cbece77860148be1f616f32281d18726af126c7daa4b
|
DIST awscli-exe-linux-x86_64-2.7.20.zip 47092365 BLAKE2B 26320deb54f66043693aa40cd2fee2e110f2dbf1710278ce431781d49096860dacd906bd91a01160c69c484020cc1ca497954283213e85d42206ab2dba3f1c92 SHA512 6f5ab60fe3b59a7c8ad73e81b3d3003660736fe9da35e5e44b8d222a94cf195676a4802e8ea391bbefb9cbece77860148be1f616f32281d18726af126c7daa4b
|
||||||
DIST awscli-exe-linux-x86_64-2.7.24.zip 47216162 BLAKE2B f99393a089bc495fc82d4f208f555bce144adf817b15c2995ad97493c16e18e38ee6cb77fb29c9225ff144193f878a7334ef90c318a5770d5c58b1f7e2209632 SHA512 2c25637fa421117aa3629ddfe8f9ead7ad3d7f04ead819b958e2b274621c858ea9e1ba2d9c111e63511ab75a1a7f0db275f653da2fef58dd5ee03274b1e7e8b7
|
DIST awscli-exe-linux-x86_64-2.7.24.zip 47216162 BLAKE2B f99393a089bc495fc82d4f208f555bce144adf817b15c2995ad97493c16e18e38ee6cb77fb29c9225ff144193f878a7334ef90c318a5770d5c58b1f7e2209632 SHA512 2c25637fa421117aa3629ddfe8f9ead7ad3d7f04ead819b958e2b274621c858ea9e1ba2d9c111e63511ab75a1a7f0db275f653da2fef58dd5ee03274b1e7e8b7
|
||||||
DIST awscli-exe-linux-x86_64-2.7.28.zip 47299458 BLAKE2B 3ac11104ad062ccf70fe697406a65cc08949f9b89784c5cf3f8e80c33629f5fde44853c35f8160f1f285405e576e65a73d9ba9a42b3e31a11120ee50cfccd83c SHA512 a86a2b73a11b74fa7a9b30095adaacacc7ea3a84136a9d5d63bcd776b98a6f6e005cb815fa34451cee85b55e6d1693a906bb8601a1ded3a5eff0416dd79bbc28
|
DIST awscli-exe-linux-x86_64-2.7.28.zip 47299458 BLAKE2B 3ac11104ad062ccf70fe697406a65cc08949f9b89784c5cf3f8e80c33629f5fde44853c35f8160f1f285405e576e65a73d9ba9a42b3e31a11120ee50cfccd83c SHA512 a86a2b73a11b74fa7a9b30095adaacacc7ea3a84136a9d5d63bcd776b98a6f6e005cb815fa34451cee85b55e6d1693a906bb8601a1ded3a5eff0416dd79bbc28
|
||||||
|
DIST awscli-exe-linux-x86_64-2.9.23.zip 49149732 BLAKE2B 3a2500dc6edd2de1747e49b123de67606fa64c41da9f7e364899ae3d23c81d07105102b0afbc858a68a7db189448b171dfdb1ce6ca9ead8f4d607cc896cfcc68 SHA512 ca379e527e4e82b9970b257367f3a5eaf5c59612a2661a6802a9695b96ca16806369b549bfb3203542ebf2948ba3d59ed816f893db34c8ed950eeb9f52ac386a
|
||||||
|
@ -0,0 +1,90 @@
|
|||||||
|
# Copyright 2022-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
DESCRIPTION="command line interface for Amazon Web Services"
|
||||||
|
HOMEPAGE="
|
||||||
|
https://aws.amazon.com/cli/
|
||||||
|
https://github.com/aws/aws-cli/
|
||||||
|
"
|
||||||
|
SRC_URI="
|
||||||
|
amd64? ( https://awscli.amazonaws.com/awscli-exe-linux-x86_64-${PV}.zip )
|
||||||
|
arm64? ( https://awscli.amazonaws.com/awscli-exe-linux-aarch64-${PV}.zip )
|
||||||
|
"
|
||||||
|
|
||||||
|
LICENSE="
|
||||||
|
Apache-2.0 MIT LGPL-2.1+ BSD GPL-2+-with-Pyinstaller-Bootloader-exception
|
||||||
|
openssl PSF-2 BSD-2 GPL-3+ public-domain
|
||||||
|
"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="-* ~amd64 ~arm64"
|
||||||
|
|
||||||
|
RDEPEND="!app-admin/awscli
|
||||||
|
sys-libs/glibc"
|
||||||
|
BDEPEND="app-arch/unzip"
|
||||||
|
|
||||||
|
QA_PREBUILT="*"
|
||||||
|
RESTRICT="strip"
|
||||||
|
S="${WORKDIR}"
|
||||||
|
|
||||||
|
# This code is based on the install script in the upstream archive.
|
||||||
|
|
||||||
|
set_global_vars() {
|
||||||
|
ROOT_INSTALL_DIR=/opt/aws-cli
|
||||||
|
BIN_DIR=/usr/bin
|
||||||
|
|
||||||
|
EXE_NAME="aws"
|
||||||
|
COMPLETER_EXE_NAME="aws_completer"
|
||||||
|
INSTALLER_DIR="aws"
|
||||||
|
INSTALLER_DIST_DIR="${INSTALLER_DIR}/dist"
|
||||||
|
INSTALLER_EXE="${INSTALLER_DIST_DIR}/${EXE_NAME}"
|
||||||
|
AWS_EXE_VERSION=${PV}
|
||||||
|
|
||||||
|
INSTALL_DIR="${ROOT_INSTALL_DIR}/v2/${AWS_EXE_VERSION}"
|
||||||
|
# INSTALL_DIR="${INSTALL_DIR}"
|
||||||
|
INSTALL_DIST_DIR="${INSTALL_DIR}/dist"
|
||||||
|
INSTALL_BIN_DIR="${INSTALL_DIR}/bin"
|
||||||
|
INSTALL_AWS_EXE="${INSTALL_BIN_DIR}/${EXE_NAME}"
|
||||||
|
INSTALL_AWS_COMPLETER_EXE="${INSTALL_BIN_DIR}/${COMPLETER_EXE_NAME}"
|
||||||
|
|
||||||
|
CURRENT_INSTALL_DIR="${ROOT_INSTALL_DIR}/v2/current"
|
||||||
|
CURRENT_AWS_EXE="${CURRENT_INSTALL_DIR}/bin/${EXE_NAME}"
|
||||||
|
CURRENT_AWS_COMPLETER_EXE="${CURRENT_INSTALL_DIR}/bin/${COMPLETER_EXE_NAME}"
|
||||||
|
|
||||||
|
BIN_AWS_EXE="${BIN_DIR}/${EXE_NAME}"
|
||||||
|
BIN_AWS_COMPLETER_EXE="${BIN_DIR}/${COMPLETER_EXE_NAME}"
|
||||||
|
}
|
||||||
|
|
||||||
|
create_install_dir() {
|
||||||
|
dodir "${INSTALL_DIR}"
|
||||||
|
setup_install_dist
|
||||||
|
setup_install_bin
|
||||||
|
create_current_symlink
|
||||||
|
}
|
||||||
|
|
||||||
|
setup_install_dist() {
|
||||||
|
cp -r "${INSTALLER_DIST_DIR}" "${D}/${INSTALL_DIST_DIR}" || die
|
||||||
|
}
|
||||||
|
|
||||||
|
setup_install_bin() {
|
||||||
|
dodir "${INSTALL_BIN_DIR}"
|
||||||
|
dosym "../dist/${EXE_NAME}" "${INSTALL_AWS_EXE}"
|
||||||
|
dosym "../dist/${COMPLETER_EXE_NAME}" "${INSTALL_AWS_COMPLETER_EXE}"
|
||||||
|
}
|
||||||
|
|
||||||
|
create_current_symlink() {
|
||||||
|
dosym "${AWS_EXE_VERSION}" "${CURRENT_INSTALL_DIR}"
|
||||||
|
}
|
||||||
|
|
||||||
|
create_bin_symlinks() {
|
||||||
|
dodir "${BIN_DIR}"
|
||||||
|
dosym -r "${CURRENT_AWS_EXE}" "${BIN_AWS_EXE}"
|
||||||
|
dosym -r "${CURRENT_AWS_COMPLETER_EXE}" "${BIN_AWS_COMPLETER_EXE}"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
set_global_vars
|
||||||
|
create_install_dir
|
||||||
|
create_bin_symlinks
|
||||||
|
}
|
@ -1,8 +1,4 @@
|
|||||||
DIST aws-cli-1.27.54.gh.tar.gz 2349811 BLAKE2B 08cb317ea4621273644c39c1152e1a3f8bd9f52ed8c30d7c37dfea9e986ca1597fda1dfbdea8c4043fa783f061609d6f24895997e9f9a3f27d5677c0f9e6c3de SHA512 af4783eef3c1c666b8b3c6d20f1c0177db6d4ce01645b092770cba535dad95609b4bece366355ce6d6a505ac7ab5a2e390d64fb84d6c00e402f9f8ab88db91d9
|
|
||||||
DIST aws-cli-1.27.59.gh.tar.gz 2360458 BLAKE2B e60117e41cf95d442db333cf49c146e4ed02247007b8f46228799c5dee8c486aec34b236c9a0a6d152d690ff86c34fd797a6f35227a6e443805cdfe1b1b30f00 SHA512 87b9aebe812415223285c09ab5a36de2b9c0da49775d1162a5b5d7489ad61c16ca5361b721bc9e4ec4ccc09306be24513f42d7263b315d6856be20fdf0779686
|
DIST aws-cli-1.27.59.gh.tar.gz 2360458 BLAKE2B e60117e41cf95d442db333cf49c146e4ed02247007b8f46228799c5dee8c486aec34b236c9a0a6d152d690ff86c34fd797a6f35227a6e443805cdfe1b1b30f00 SHA512 87b9aebe812415223285c09ab5a36de2b9c0da49775d1162a5b5d7489ad61c16ca5361b721bc9e4ec4ccc09306be24513f42d7263b315d6856be20fdf0779686
|
||||||
DIST aws-cli-1.27.63.gh.tar.gz 2363224 BLAKE2B 4fe7971271d4359f9d29cdf4c028bd8d06a1a8188e6aef108c33d6b137bb2aee84f3655f3666381fdbf8166dd5ea071c564faac32fb0c06a461249385dbc503d SHA512 01c578f13c0f316c41bdf3bbc5e8532f01d0bfa108207899b8c56b990acdbf5b80d0ffbf1be944088f34e623494b1a1f6d52823d654c192b07133291e4bd7deb
|
|
||||||
DIST aws-cli-1.27.64.gh.tar.gz 2363382 BLAKE2B fd0879e793aa5ee449ee535425976d11edb6f844f0385a630df82b62aa6db593c76ccab2b59b960b951859b88e2fd1d2db98f5f9f423b1de4dfed65c22eb131b SHA512 8966543936133e98a7ed27897b3978dbc71fde0728dff18e778cb17cf18b834c6abdc4cae13375f72280b1c3f4b43b33c3a08d4f3b99a2cefb74f27d1dd480a3
|
DIST aws-cli-1.27.64.gh.tar.gz 2363382 BLAKE2B fd0879e793aa5ee449ee535425976d11edb6f844f0385a630df82b62aa6db593c76ccab2b59b960b951859b88e2fd1d2db98f5f9f423b1de4dfed65c22eb131b SHA512 8966543936133e98a7ed27897b3978dbc71fde0728dff18e778cb17cf18b834c6abdc4cae13375f72280b1c3f4b43b33c3a08d4f3b99a2cefb74f27d1dd480a3
|
||||||
DIST aws-cli-1.27.65.gh.tar.gz 2363808 BLAKE2B ded261ab17b81ff11332df6bf0442c4969848413dcb13c555c806f69c70ce806d62f2be17f445d67b0d6777f12cbf27ef1713478c1dc0ae6038bd368462369c5 SHA512 ff70b0cc0e3c4a4549329eb3e5e87fe9d09e01187ecb717c21a934f7e4a91e76f03334c6035b75e95d6ca4e348525681951b8ceaf3c11a379dfd35699ab2b493
|
DIST aws-cli-1.27.69.gh.tar.gz 2366011 BLAKE2B e2ac484bb6ead107d0deca6bad5b9ca4a014f129d1253528869c303d72d58f1e9d5329b6c3180ec53190e43711d999b7026764c0cf65786903dade2a5c135f88 SHA512 85d6d820918ab42ce39e3a90751726a8dbf691083f5d71834b61b8456f6c91e3cac7ead86448187a3853a26f9e75e2e1d7f2acd3a8de59a69ebc028a4692b9ac
|
||||||
DIST aws-cli-1.27.66.gh.tar.gz 2363942 BLAKE2B c2e05b13f6070db4160eacbd829aedaf4d9bd2f50847fdf6c13c5f79d387dcfb07b1dcdc3034d5a2a999a5b554d7035b4204f3a56da91bad2ce88c84f10194c5 SHA512 f2bdded8e435f4d2b5c1ca08aaeeafba575d39d4de1d6966a3e2fbfd42234be9a1ab031e812b5a1e0c433607c350a90195d5c50a12b25d5ad9f9a7ca9dcd7bc1
|
DIST aws-cli-1.27.70.gh.tar.gz 2366135 BLAKE2B f8feedc28ff2b94326ea81ef1c38779c709ca88033c6f36a31dd28659f9f7cfe2fe520dcf39c46534e5d91e48877e0901e212fc3316effe3e0dc5b0c4855c47d SHA512 faae6ea80047736d99d16cc652b43c4b34fe70822c3aa5a59c8c505a79bbc8b573c4b875f8551c934f20119f0ac2a4ea86a0d91614d5a3871b32a2ea0cc9139c
|
||||||
DIST aws-cli-1.27.67.gh.tar.gz 2364536 BLAKE2B bbd2a83b11d2762ce6a00530b5e2e1c04a44efbffde30d27b65af8f14c79d14e8e1313c4615a0aab10b46147683c9e836be4ea8b480826483be45b8b96e1ba2e SHA512 cf57ada246af9b0ccd5bb5f8e44e061f2b0e86ea0759dbc919ccce2360ee7e9c3c5adc2d1ea004a29f9d2087b22293570289c951886e42781dfc35359745fc31
|
|
||||||
DIST aws-cli-1.27.68.gh.tar.gz 2364845 BLAKE2B c4f9ee02879965c88f6875c1cbfd502fbda87189d63cab84577b200f35b69d554619dd01f72292551ea8a20552db163f763c867b15f9986fcc3c86e9ee3f2ad5 SHA512 caf044d576eab3da93db59a8834b024d53c11bfe3fc58056ce44d9bdbdaff4f9b716564bcd35cb027771cce9889b1a6783e13a384f461369c477af283363b489
|
|
||||||
|
@ -1,80 +0,0 @@
|
|||||||
# Copyright 1999-2023 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
DISTUTILS_USE_PEP517=setuptools
|
|
||||||
PYTHON_COMPAT=( python3_{10..11} )
|
|
||||||
|
|
||||||
inherit bash-completion-r1 distutils-r1 multiprocessing
|
|
||||||
|
|
||||||
MY_P=aws-cli-${PV}
|
|
||||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
|
||||||
HOMEPAGE="
|
|
||||||
https://github.com/aws/aws-cli/
|
|
||||||
https://pypi.org/project/awscli/
|
|
||||||
"
|
|
||||||
SRC_URI="
|
|
||||||
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
|
|
||||||
-> ${MY_P}.gh.tar.gz
|
|
||||||
"
|
|
||||||
S=${WORKDIR}/${MY_P}
|
|
||||||
|
|
||||||
LICENSE="Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86"
|
|
||||||
|
|
||||||
# botocore is x.(y+2).z
|
|
||||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
|
||||||
RDEPEND="
|
|
||||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
|
||||||
dev-python/colorama[${PYTHON_USEDEP}]
|
|
||||||
dev-python/docutils[${PYTHON_USEDEP}]
|
|
||||||
dev-python/rsa[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
|
||||||
!app-admin/awscli-bin
|
|
||||||
"
|
|
||||||
BDEPEND="
|
|
||||||
test? (
|
|
||||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
distutils_enable_tests pytest
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# do not rely on bundled deps in botocore (sic!)
|
|
||||||
find -name '*.py' -exec sed -i \
|
|
||||||
-e 's:from botocore[.]vendored import:import:' \
|
|
||||||
-e 's:from botocore[.]vendored[.]:from :' \
|
|
||||||
{} + || die
|
|
||||||
# strip overzealous upper bounds on requirements
|
|
||||||
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
|
|
||||||
distutils-r1_src_prepare
|
|
||||||
}
|
|
||||||
|
|
||||||
python_test() {
|
|
||||||
local EPYTEST_DESELECT=(
|
|
||||||
# TODO
|
|
||||||
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
|
|
||||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
|
|
||||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
|
|
||||||
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
|
|
||||||
)
|
|
||||||
|
|
||||||
# integration tests require AWS credentials and Internet access
|
|
||||||
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
|
|
||||||
}
|
|
||||||
|
|
||||||
python_install_all() {
|
|
||||||
newbashcomp bin/aws_bash_completer aws
|
|
||||||
|
|
||||||
insinto /usr/share/zsh/site-functions
|
|
||||||
newins bin/aws_zsh_completer.sh _aws
|
|
||||||
|
|
||||||
distutils-r1_python_install_all
|
|
||||||
|
|
||||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
|
||||||
}
|
|
@ -1,80 +0,0 @@
|
|||||||
# Copyright 1999-2023 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
DISTUTILS_USE_PEP517=setuptools
|
|
||||||
PYTHON_COMPAT=( python3_{10..11} )
|
|
||||||
|
|
||||||
inherit bash-completion-r1 distutils-r1 multiprocessing
|
|
||||||
|
|
||||||
MY_P=aws-cli-${PV}
|
|
||||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
|
||||||
HOMEPAGE="
|
|
||||||
https://github.com/aws/aws-cli/
|
|
||||||
https://pypi.org/project/awscli/
|
|
||||||
"
|
|
||||||
SRC_URI="
|
|
||||||
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
|
|
||||||
-> ${MY_P}.gh.tar.gz
|
|
||||||
"
|
|
||||||
S=${WORKDIR}/${MY_P}
|
|
||||||
|
|
||||||
LICENSE="Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
|
||||||
|
|
||||||
# botocore is x.(y+2).z
|
|
||||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
|
||||||
RDEPEND="
|
|
||||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
|
||||||
dev-python/colorama[${PYTHON_USEDEP}]
|
|
||||||
dev-python/docutils[${PYTHON_USEDEP}]
|
|
||||||
dev-python/rsa[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
|
||||||
!app-admin/awscli-bin
|
|
||||||
"
|
|
||||||
BDEPEND="
|
|
||||||
test? (
|
|
||||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
distutils_enable_tests pytest
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# do not rely on bundled deps in botocore (sic!)
|
|
||||||
find -name '*.py' -exec sed -i \
|
|
||||||
-e 's:from botocore[.]vendored import:import:' \
|
|
||||||
-e 's:from botocore[.]vendored[.]:from :' \
|
|
||||||
{} + || die
|
|
||||||
# strip overzealous upper bounds on requirements
|
|
||||||
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
|
|
||||||
distutils-r1_src_prepare
|
|
||||||
}
|
|
||||||
|
|
||||||
python_test() {
|
|
||||||
local EPYTEST_DESELECT=(
|
|
||||||
# TODO
|
|
||||||
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
|
|
||||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
|
|
||||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
|
|
||||||
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
|
|
||||||
)
|
|
||||||
|
|
||||||
# integration tests require AWS credentials and Internet access
|
|
||||||
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
|
|
||||||
}
|
|
||||||
|
|
||||||
python_install_all() {
|
|
||||||
newbashcomp bin/aws_bash_completer aws
|
|
||||||
|
|
||||||
insinto /usr/share/zsh/site-functions
|
|
||||||
newins bin/aws_zsh_completer.sh _aws
|
|
||||||
|
|
||||||
distutils-r1_python_install_all
|
|
||||||
|
|
||||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
|
||||||
}
|
|
@ -1,80 +0,0 @@
|
|||||||
# Copyright 1999-2023 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
DISTUTILS_USE_PEP517=setuptools
|
|
||||||
PYTHON_COMPAT=( python3_{10..11} )
|
|
||||||
|
|
||||||
inherit bash-completion-r1 distutils-r1 multiprocessing
|
|
||||||
|
|
||||||
MY_P=aws-cli-${PV}
|
|
||||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
|
||||||
HOMEPAGE="
|
|
||||||
https://github.com/aws/aws-cli/
|
|
||||||
https://pypi.org/project/awscli/
|
|
||||||
"
|
|
||||||
SRC_URI="
|
|
||||||
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
|
|
||||||
-> ${MY_P}.gh.tar.gz
|
|
||||||
"
|
|
||||||
S=${WORKDIR}/${MY_P}
|
|
||||||
|
|
||||||
LICENSE="Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
|
||||||
|
|
||||||
# botocore is x.(y+2).z
|
|
||||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
|
||||||
RDEPEND="
|
|
||||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
|
||||||
dev-python/colorama[${PYTHON_USEDEP}]
|
|
||||||
dev-python/docutils[${PYTHON_USEDEP}]
|
|
||||||
dev-python/rsa[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
|
||||||
!app-admin/awscli-bin
|
|
||||||
"
|
|
||||||
BDEPEND="
|
|
||||||
test? (
|
|
||||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
distutils_enable_tests pytest
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# do not rely on bundled deps in botocore (sic!)
|
|
||||||
find -name '*.py' -exec sed -i \
|
|
||||||
-e 's:from botocore[.]vendored import:import:' \
|
|
||||||
-e 's:from botocore[.]vendored[.]:from :' \
|
|
||||||
{} + || die
|
|
||||||
# strip overzealous upper bounds on requirements
|
|
||||||
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
|
|
||||||
distutils-r1_src_prepare
|
|
||||||
}
|
|
||||||
|
|
||||||
python_test() {
|
|
||||||
local EPYTEST_DESELECT=(
|
|
||||||
# TODO
|
|
||||||
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
|
|
||||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
|
|
||||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
|
|
||||||
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
|
|
||||||
)
|
|
||||||
|
|
||||||
# integration tests require AWS credentials and Internet access
|
|
||||||
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
|
|
||||||
}
|
|
||||||
|
|
||||||
python_install_all() {
|
|
||||||
newbashcomp bin/aws_bash_completer aws
|
|
||||||
|
|
||||||
insinto /usr/share/zsh/site-functions
|
|
||||||
newins bin/aws_zsh_completer.sh _aws
|
|
||||||
|
|
||||||
distutils-r1_python_install_all
|
|
||||||
|
|
||||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
|
||||||
}
|
|
@ -1,80 +0,0 @@
|
|||||||
# Copyright 1999-2023 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
DISTUTILS_USE_PEP517=setuptools
|
|
||||||
PYTHON_COMPAT=( python3_{10..11} )
|
|
||||||
|
|
||||||
inherit bash-completion-r1 distutils-r1 multiprocessing
|
|
||||||
|
|
||||||
MY_P=aws-cli-${PV}
|
|
||||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
|
||||||
HOMEPAGE="
|
|
||||||
https://github.com/aws/aws-cli/
|
|
||||||
https://pypi.org/project/awscli/
|
|
||||||
"
|
|
||||||
SRC_URI="
|
|
||||||
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
|
|
||||||
-> ${MY_P}.gh.tar.gz
|
|
||||||
"
|
|
||||||
S=${WORKDIR}/${MY_P}
|
|
||||||
|
|
||||||
LICENSE="Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
|
||||||
|
|
||||||
# botocore is x.(y+2).z
|
|
||||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
|
||||||
RDEPEND="
|
|
||||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
|
||||||
dev-python/colorama[${PYTHON_USEDEP}]
|
|
||||||
dev-python/docutils[${PYTHON_USEDEP}]
|
|
||||||
dev-python/rsa[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
|
||||||
!app-admin/awscli-bin
|
|
||||||
"
|
|
||||||
BDEPEND="
|
|
||||||
test? (
|
|
||||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
distutils_enable_tests pytest
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# do not rely on bundled deps in botocore (sic!)
|
|
||||||
find -name '*.py' -exec sed -i \
|
|
||||||
-e 's:from botocore[.]vendored import:import:' \
|
|
||||||
-e 's:from botocore[.]vendored[.]:from :' \
|
|
||||||
{} + || die
|
|
||||||
# strip overzealous upper bounds on requirements
|
|
||||||
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
|
|
||||||
distutils-r1_src_prepare
|
|
||||||
}
|
|
||||||
|
|
||||||
python_test() {
|
|
||||||
local EPYTEST_DESELECT=(
|
|
||||||
# TODO
|
|
||||||
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
|
|
||||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
|
|
||||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
|
|
||||||
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
|
|
||||||
)
|
|
||||||
|
|
||||||
# integration tests require AWS credentials and Internet access
|
|
||||||
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
|
|
||||||
}
|
|
||||||
|
|
||||||
python_install_all() {
|
|
||||||
newbashcomp bin/aws_bash_completer aws
|
|
||||||
|
|
||||||
insinto /usr/share/zsh/site-functions
|
|
||||||
newins bin/aws_zsh_completer.sh _aws
|
|
||||||
|
|
||||||
distutils-r1_python_install_all
|
|
||||||
|
|
||||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
|
||||||
}
|
|
@ -1,8 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
<pkgmetadata>
|
<pkgmetadata>
|
||||||
<maintainer type="person">
|
<!-- maintainer-needed -->
|
||||||
<email>pinkbyte@gentoo.org</email>
|
|
||||||
<name>Sergey Popov</name>
|
|
||||||
</maintainer>
|
|
||||||
</pkgmetadata>
|
</pkgmetadata>
|
||||||
|
@ -1,12 +1,9 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
<pkgmetadata>
|
<pkgmetadata>
|
||||||
<maintainer type="person">
|
<!-- maintainer-needed -->
|
||||||
<email>pinkbyte@gentoo.org</email>
|
<upstream>
|
||||||
<name>Sergey Popov</name>
|
<remote-id type="google-code">logstalgia</remote-id>
|
||||||
</maintainer>
|
<remote-id type="github">acaudwell/Logstalgia</remote-id>
|
||||||
<upstream>
|
</upstream>
|
||||||
<remote-id type="google-code">logstalgia</remote-id>
|
|
||||||
<remote-id type="github">acaudwell/Logstalgia</remote-id>
|
|
||||||
</upstream>
|
|
||||||
</pkgmetadata>
|
</pkgmetadata>
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
DIST puppet-agent_7.20.0-1focal_amd64.deb 33766302 BLAKE2B 665f4d4d8c3b096ec5f270428d0b865dc10b77c51113f65f9e66ab6bb72c3b21a07acd9433f2cc1e4e05c0fb30a11884f0bfe7a5a8a9a1d882bdd049a5490b84 SHA512 91b7eef80bc5e288f8a59a52d41340d1bc921e0754151952a3921575787e4cec1f101039c75a01ca6e7e4a5512224922be0c5be7a676d92bb19d3de291a7ab8c
|
|
||||||
DIST puppet-agent_7.20.0-1focal_arm64.deb 33547934 BLAKE2B 323d76ac12af0c97cf38b8a78454be89c900eebcc9b1517c716700badf8845c062d2c4eb2f633ed1b6ffc36cb42e7e16a3e4e815637e92c209bc6f3c40cfd525 SHA512 a04727c71cf241e352d14bcc09eb340199a7e42b18be574d822a793ff9d91ff1e1879d67724dbf2133a6a3842fa86ed45b048845c73a5669fab45dacea3e616a
|
|
||||||
DIST puppet-agent_7.21.0-1focal_amd64.deb 32897404 BLAKE2B 5075c0c77ae2199a3743edcc7fda94802f7b845b37084a613547705a3dc403259908698036bad95e36d7ba18c8b165971d98b81b64e56e6b40f3360e00c4fc5b SHA512 cad621b9add8c7397c681684696b78d57c149b174a43830c3c45ea1679aba791005b634a64b48b3a9d276fb00d7e1ca8e2a73f6a02756d020914f507a35dc56a
|
DIST puppet-agent_7.21.0-1focal_amd64.deb 32897404 BLAKE2B 5075c0c77ae2199a3743edcc7fda94802f7b845b37084a613547705a3dc403259908698036bad95e36d7ba18c8b165971d98b81b64e56e6b40f3360e00c4fc5b SHA512 cad621b9add8c7397c681684696b78d57c149b174a43830c3c45ea1679aba791005b634a64b48b3a9d276fb00d7e1ca8e2a73f6a02756d020914f507a35dc56a
|
||||||
DIST puppet-agent_7.21.0-1focal_arm64.deb 32630670 BLAKE2B 634fed97c79ca3b317ee079366a262c898ef217236014dc683cf1c11e83f2fd74bc21c18ff5242ebd2a4b15b73852ed727976134f684e0d416ac0a3ee54221c3 SHA512 be6a0566db5b1ab72b8f53bdf061c0ad4fb93794d690c6ebe697c9eb5aae45b7838b266619c5c33f3c4499a7264fb083d3f2bbb1fbf70b73458c8aa24470e3c3
|
DIST puppet-agent_7.21.0-1focal_arm64.deb 32630670 BLAKE2B 634fed97c79ca3b317ee079366a262c898ef217236014dc683cf1c11e83f2fd74bc21c18ff5242ebd2a4b15b73852ed727976134f684e0d416ac0a3ee54221c3 SHA512 be6a0566db5b1ab72b8f53bdf061c0ad4fb93794d690c6ebe697c9eb5aae45b7838b266619c5c33f3c4499a7264fb083d3f2bbb1fbf70b73458c8aa24470e3c3
|
||||||
|
DIST puppet-agent_7.23.0-1focal_amd64.deb 32923766 BLAKE2B eac170179de27e3c25af3115e45596e7c5190037926e7d3db163b208f401f2278d0c49d11688d25e04bbf859965be37b60f3e7ed15cfb96a5db0c652c501db2d SHA512 90cd6bde4c25fe72dd906ae515d58f56d3e6a7378fea300247854c2cbfb4f7a51adc78d98a68a7f90f7295eeee6a385bb0a1828cc9b809c5bd9ee7a2231777f8
|
||||||
|
DIST puppet-agent_7.23.0-1focal_arm64.deb 32668574 BLAKE2B ff01899f7a6b0994eccd330dcc83ea51933e287ea4c1ce3ecdcee91e227c22256f4d4464c7d461d5023a1e6f4aac9868134fccf5dd84de2ba11de16c79be0d9f SHA512 7f3b0940d739410b2f4dd3b3ae852c9677c8db33fccee0db5291613f8b8602f8770c52eff3f577c81382be36044714b6737df8f8468a3481997cae52989fdeb8
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
DIST puppet-5.5.22.tar.gz 2998132 BLAKE2B 8662c89190d0904fe44ffeca1cf9a9ddca40d57ba6fb2d1e644ca353ceb55b1ca3a91416f1eef2975233c9c4498784e7d7280c111ea0cc070870cadc69341d99 SHA512 5332b084a63bdf244672cc4751022c84a1cc50d3f394a13bdcbccf7fcf4ebea67953e88957f23046608bf25e9182548449be824c18289cb2bf1e3ed29b40dc58
|
DIST puppet-5.5.22.tar.gz 2998132 BLAKE2B 8662c89190d0904fe44ffeca1cf9a9ddca40d57ba6fb2d1e644ca353ceb55b1ca3a91416f1eef2975233c9c4498784e7d7280c111ea0cc070870cadc69341d99 SHA512 5332b084a63bdf244672cc4751022c84a1cc50d3f394a13bdcbccf7fcf4ebea67953e88957f23046608bf25e9182548449be824c18289cb2bf1e3ed29b40dc58
|
||||||
DIST puppet-7.20.0.tar.gz 2817232 BLAKE2B 479c4e162230371bd69509844fcd97d0d3392eb2e66578b38e6dc120dd3dd15804d73f70c1b29f1f3d9e57af539f82e605a86c9afff15e78ff48ddf482432c4d SHA512 6774bf03ad0ee80c0fd2cd8ebad60da56df7ed9818a526084fc2cf1ba2fecc81555fff200f5feef2b5d7a2275d90f44b24160de7221d682de470b511a7051f7f
|
|
||||||
DIST puppet-7.21.0.tar.gz 2819997 BLAKE2B 96de8ceefeea12c51288e05af5d7b126811d23388492053b0d581856f11976f0492064eb89bc585ff7f455df537d5c04fb318814945a158d531d32efdd54ff02 SHA512 b0fbdf63391054d0496c67be963f98e3d85e3a1536e50d6a3f09d0c49110bb4c92bebdc38a48cd50e824e27268150cda0643c6df0edb01b3587f00a591645ee6
|
DIST puppet-7.21.0.tar.gz 2819997 BLAKE2B 96de8ceefeea12c51288e05af5d7b126811d23388492053b0d581856f11976f0492064eb89bc585ff7f455df537d5c04fb318814945a158d531d32efdd54ff02 SHA512 b0fbdf63391054d0496c67be963f98e3d85e3a1536e50d6a3f09d0c49110bb4c92bebdc38a48cd50e824e27268150cda0643c6df0edb01b3587f00a591645ee6
|
||||||
|
DIST puppet-7.23.0.tar.gz 2820654 BLAKE2B c9e2b544400c7fa9e59dd1d40bf89d1444ee62664b11e7aafa30aecd5fd14aa217dfe0bc24795a951c5e04b04762adb0239f6d7289b431b8f2a040716e95c642 SHA512 a66ef2bdbe38741a176e825cf7cdf117616459548731d4f5482b49263b08dcb3550305e5f0e35d228f873b330b730b682c02d38b4243f5f8bb4a190ed0f60310
|
||||||
|
@ -1 +1,2 @@
|
|||||||
DIST puppetdb-7.11.1.tar.gz 49075994 BLAKE2B deb1a031999f18988c44b1439670ebb370d654a7dd99f20f44cdce027fa48088eadc96adca4fc8efe298c4dcc9b62d0d607262d8a5de4d07de0f2405a0f05a36 SHA512 98238e61ae7798912e345d69ff321bd7236dea6d5230a1f9ae37c533993d29611890522dde085e18e83b87bccb5a53e49e4ad38b930bb09ce7e9f22d45776a60
|
DIST puppetdb-7.11.1.tar.gz 49075994 BLAKE2B deb1a031999f18988c44b1439670ebb370d654a7dd99f20f44cdce027fa48088eadc96adca4fc8efe298c4dcc9b62d0d607262d8a5de4d07de0f2405a0f05a36 SHA512 98238e61ae7798912e345d69ff321bd7236dea6d5230a1f9ae37c533993d29611890522dde085e18e83b87bccb5a53e49e4ad38b930bb09ce7e9f22d45776a60
|
||||||
|
DIST puppetdb-7.12.1.tar.gz 49891988 BLAKE2B d5201d443d991fc04e1a7c67d3f4df693365435354447cb4c18fd8143aa032be9a1dc6845cb6da07add830e2eee8539eb43fb37c3f1790f4ef02dc882de76ab9 SHA512 a86e293505c25e9f15b9c1a768540683b271002e197860bd1e24fc3d3afc88f104eefe3df3e44e7baab2e8ad4953f729b992de934ade57edef00d95290c5f1d2
|
||||||
|
@ -0,0 +1,90 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=7
|
||||||
|
|
||||||
|
inherit systemd tmpfiles
|
||||||
|
|
||||||
|
DESCRIPTION="PuppetDB collects data generated by Puppet"
|
||||||
|
HOMEPAGE="http://docs.puppetlabs.com/puppetdb/"
|
||||||
|
SRC_URI="https://downloads.puppetlabs.com/${PN}/${P}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="Apache-2.0"
|
||||||
|
SLOT="0"
|
||||||
|
IUSE=""
|
||||||
|
KEYWORDS="~amd64 ~x86"
|
||||||
|
|
||||||
|
RDEPEND+=">=virtual/jdk-1.8.0"
|
||||||
|
DEPEND+="acct-user/puppetdb
|
||||||
|
acct-group/puppetdb"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
sed -i 's/sysconfig/conf\.d/g' ext/redhat/puppetdb.service || die
|
||||||
|
sed -i 's/sysconfig/conf\.d/g' ext/bin/puppetdb || die
|
||||||
|
sed -i 's/sysconfig/conf\.d/g' install.sh || die
|
||||||
|
sed -i 's/var\/run/run/g' ext/puppetdb.tmpfiles.conf || die
|
||||||
|
sed -i 's/var\/run/run/g' install.sh || die
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
einfo "not compiling"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
dodir /opt/puppetlabs/server/data/puppetdb
|
||||||
|
insinto /opt/puppetlabs/server/apps/puppetdb
|
||||||
|
insopts -m0744
|
||||||
|
doins ext/ezbake-functions.sh
|
||||||
|
insopts -m0644
|
||||||
|
doins ext/ezbake.manifest
|
||||||
|
doins puppetdb.jar
|
||||||
|
insinto /etc/puppetlabs/puppetdb
|
||||||
|
doins ext/config/logback.xml
|
||||||
|
doins ext/config/bootstrap.cfg
|
||||||
|
doins ext/config/request-logging.xml
|
||||||
|
insinto /etc/puppetlabs/puppetdb/conf.d
|
||||||
|
doins ext/config/conf.d/jetty.ini
|
||||||
|
doins ext/config/conf.d/repl.ini
|
||||||
|
doins ext/config/conf.d/database.ini
|
||||||
|
doins ext/config/conf.d/config.ini
|
||||||
|
doins ext/config/conf.d/auth.conf
|
||||||
|
insopts -m0755
|
||||||
|
insinto /opt/puppetlabs/server/apps/puppetdb/scripts
|
||||||
|
doins install.sh
|
||||||
|
insinto /opt/puppetlabs/server/apps/puppetdb/cli/apps
|
||||||
|
doins ext/cli/foreground
|
||||||
|
doins ext/cli/ssl-setup
|
||||||
|
doins ext/cli/config-migration
|
||||||
|
doins ext/cli/foreground
|
||||||
|
doins ext/cli/anonymize
|
||||||
|
doins ext/cli/reload
|
||||||
|
doins ext/cli/start
|
||||||
|
doins ext/cli/stop
|
||||||
|
insinto /opt/puppetlabs/server/apps/puppetdb/bin
|
||||||
|
doins ext/bin/puppetdb
|
||||||
|
insopts -m0644
|
||||||
|
dodir /opt/puppetlabs/server/bin
|
||||||
|
dosym ../apps/puppetdb/bin/puppetdb /opt/puppetlabs/server/bin/puppetdb
|
||||||
|
dodir /opt/puppetlabs/bin
|
||||||
|
dosym ../server/apps/puppetdb/bin/puppetdb /opt/puppetlabs/bin/puppetdb
|
||||||
|
dosym ../../opt/puppetlabs/server/apps/puppetdb/bin/puppetdb /usr/bin/puppetdb
|
||||||
|
# init type tasks
|
||||||
|
newconfd ext/default puppetdb
|
||||||
|
systemd_dounit ext/redhat/puppetdb.service
|
||||||
|
newtmpfiles ext/puppetdb.tmpfiles.conf puppetdb.conf
|
||||||
|
newinitd "${FILESDIR}/puppetdb.initd-r2" puppetdb
|
||||||
|
# misc
|
||||||
|
insinto /etc/logrotate.d
|
||||||
|
newins ext/puppetdb.logrotate.conf puppetdb
|
||||||
|
fowners -R puppetdb:puppetdb /opt/puppetlabs/server/data/puppetdb
|
||||||
|
fperms -R 770 /opt/puppetlabs/server/data/puppetdb
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
tmpfiles_process puppetdb.conf
|
||||||
|
|
||||||
|
elog "to install please run '/opt/puppetlabs/server/bin/puppetdb ssl-setup'"
|
||||||
|
elog
|
||||||
|
elog "to upgrade please run '/opt/puppetlabs/server/bin/puppetdb config-migration'"
|
||||||
|
}
|
@ -1,2 +1,2 @@
|
|||||||
DIST puppetserver-7.9.2.tar.gz 59729859 BLAKE2B 15f9261ae81f280735080a75e083b4bbc5d4b9404bd52f02180173b6cab2ebfe20e38950dd6c94c5167478293056ac562994ff27a7ad955c69621c13ffa808e1 SHA512 0c047554e10ecf36d000c9f702b759e27b8168f1f2207d9b8e904c9579d8e37d8540327d898b0a9e1812ca3223aa15b7cf4da46d7a4247e5d4b8f1596f9d5f26
|
|
||||||
DIST puppetserver-7.9.3.tar.gz 59951239 BLAKE2B 818eee0e7bd115e0b335b1e13d7b0016933190e95a3bf71ad2498f87097de4251a1e6e2f9dfb933a1ee49c981ae0adf74f9994ec0e36a4b77aad567ab00e1fdd SHA512 d2ce573bf15c0db7cb7a9fd0a35a8286acc77ca9b2eddfe0f2dd8549034793600c04973d9f8a72ab543282325f18795727e05a723b3a3b67b027b382ded3d3eb
|
DIST puppetserver-7.9.3.tar.gz 59951239 BLAKE2B 818eee0e7bd115e0b335b1e13d7b0016933190e95a3bf71ad2498f87097de4251a1e6e2f9dfb933a1ee49c981ae0adf74f9994ec0e36a4b77aad567ab00e1fdd SHA512 d2ce573bf15c0db7cb7a9fd0a35a8286acc77ca9b2eddfe0f2dd8549034793600c04973d9f8a72ab543282325f18795727e05a723b3a3b67b027b382ded3d3eb
|
||||||
|
DIST puppetserver-7.9.5.tar.gz 59954391 BLAKE2B dd9c1c4bcac006ed711e9d29f2c1e96fbacbbb9f85a70e34e5b42909b20108b970bad58562acf2c3d60ed17c81144826ad4426357948f014b4ec3039f642a9d1 SHA512 c12df0d2778c3f768bf60ed4d9867eb976dc10671383f92ba63a06ad10c4552ec3109f42a9157816d2cd83481ee5cfad10c662812621b1afedf5eac25fbfe1b9
|
||||||
|
@ -1,2 +1,3 @@
|
|||||||
DIST Rex-1.13.3.tar.gz 349550 BLAKE2B c2ccc2144e56761d33ed2b5d790febd49863639d2e3bba8028b7937b43eb51e7e59e9e99cb1d67f247b2dff8ef91aa04776afd6277ad8a2370f35d71e0b528dd SHA512 beab22aef8ba620b6e74847698eab99977844d2e9632812a9ae0e1ee303cbe4e5a6489000bd5209d76e42e3bb4bb799a90408ed6fb14e034f68132a4d37766dc
|
DIST Rex-1.13.3.tar.gz 349550 BLAKE2B c2ccc2144e56761d33ed2b5d790febd49863639d2e3bba8028b7937b43eb51e7e59e9e99cb1d67f247b2dff8ef91aa04776afd6277ad8a2370f35d71e0b528dd SHA512 beab22aef8ba620b6e74847698eab99977844d2e9632812a9ae0e1ee303cbe4e5a6489000bd5209d76e42e3bb4bb799a90408ed6fb14e034f68132a4d37766dc
|
||||||
DIST Rex-1.13.4.tar.gz 351011 BLAKE2B ec046b88f4443b03c05efbabb40900085293c61dab0ee9818a8c4d05be3cc0a1c1f53738b72cc245aaa2dfbcb00541f0e1e31b0c20f2464e9fc6586ed10707ef SHA512 27b76f4b527b42ea0b06dc1de05254dbd6e2fa3bc9a8a708af7557789ef22aec374a5d0585bf3ec4ee878a5387d51b881cf95855dbd05149b7b23929de12027d
|
DIST Rex-1.13.4.tar.gz 351011 BLAKE2B ec046b88f4443b03c05efbabb40900085293c61dab0ee9818a8c4d05be3cc0a1c1f53738b72cc245aaa2dfbcb00541f0e1e31b0c20f2464e9fc6586ed10707ef SHA512 27b76f4b527b42ea0b06dc1de05254dbd6e2fa3bc9a8a708af7557789ef22aec374a5d0585bf3ec4ee878a5387d51b881cf95855dbd05149b7b23929de12027d
|
||||||
|
DIST Rex-1.14.0.tar.gz 353494 BLAKE2B 3943c56df99d3dd98cefbdc68644f1a34109e20e18aa6db61e617d1f5ece8cf9612b7b098dafff7df9435820791bd1476163e5b9e6d35ef20bd47506747ad849 SHA512 fa2ad4b71c9c7b9a352303626e7530fc7fd02b295908c6184680a2646b14553b037a264af932b9a9efd5f1019ded86f3c8857db9651d7a4d7d6cf153924ac3ad
|
||||||
|
@ -0,0 +1,222 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=7
|
||||||
|
|
||||||
|
if [[ ${PV} == 9999 ]]; then
|
||||||
|
GITHUB_USER=RexOps
|
||||||
|
GITHUB_REPO=Rex
|
||||||
|
EGIT_REPO_URI="https://github.com/${GITHUB_USER}/${GITHUB_REPO}.git"
|
||||||
|
EGIT_BRANCH="master"
|
||||||
|
EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-git"
|
||||||
|
VCS_ECLASS="git-r3"
|
||||||
|
else
|
||||||
|
# This is intentional to stop perl-module.eclass doing magic things when it
|
||||||
|
# shouldn't. Like making ${S} contain "Rex" when the git clone has "rex"
|
||||||
|
# Also prevents perl-module.eclass provisioning SRC_URI
|
||||||
|
DIST_AUTHOR=FERKI
|
||||||
|
DIST_NAME=Rex
|
||||||
|
KEYWORDS="~amd64 ~x86"
|
||||||
|
fi
|
||||||
|
inherit bash-completion-r1 perl-module ${VCS_ECLASS}
|
||||||
|
|
||||||
|
DESCRIPTION="(R)?ex, the friendly automation framework"
|
||||||
|
HOMEPAGE="https://metacpan.org/release/Rex https://www.rexify.org"
|
||||||
|
|
||||||
|
SLOT="0"
|
||||||
|
IUSE="minimal test"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
DZIL_DEPENDS="
|
||||||
|
dev-perl/Dist-Zilla
|
||||||
|
dev-perl/Dist-Zilla-Plugin-CheckExtraTests
|
||||||
|
dev-perl/Dist-Zilla-Plugin-ContributorsFile
|
||||||
|
dev-perl/Dist-Zilla-Plugin-Git
|
||||||
|
dev-perl/Dist-Zilla-Plugin-Git-Contributors
|
||||||
|
dev-perl/Dist-Zilla-Plugin-MakeMaker-Awesome
|
||||||
|
dev-perl/Dist-Zilla-Plugin-Meta-Contributors
|
||||||
|
dev-perl/Dist-Zilla-Plugin-MetaProvides-Package
|
||||||
|
dev-perl/Dist-Zilla-Plugin-NextVersion-Semantic
|
||||||
|
dev-perl/Dist-Zilla-Plugin-OSPrereqs
|
||||||
|
dev-perl/Dist-Zilla-Plugin-OurPkgVersion
|
||||||
|
dev-perl/Dist-Zilla-Plugin-Run
|
||||||
|
dev-perl/Software-License
|
||||||
|
"
|
||||||
|
RDEPEND="
|
||||||
|
!minimal? (
|
||||||
|
dev-perl/DBI
|
||||||
|
dev-perl/Expect
|
||||||
|
dev-perl/IPC-Shareable
|
||||||
|
dev-perl/XML-LibXML
|
||||||
|
)
|
||||||
|
virtual/perl-Carp
|
||||||
|
virtual/perl-Data-Dumper
|
||||||
|
dev-perl/Data-Validate-IP
|
||||||
|
dev-perl/Devel-Caller
|
||||||
|
dev-perl/Digest-HMAC
|
||||||
|
virtual/perl-Digest-MD5
|
||||||
|
virtual/perl-Exporter
|
||||||
|
virtual/perl-File-Spec
|
||||||
|
dev-perl/HTTP-Message
|
||||||
|
dev-perl/Hash-Merge
|
||||||
|
virtual/perl-IO
|
||||||
|
dev-perl/IO-String
|
||||||
|
dev-perl/IO-Tty
|
||||||
|
dev-perl/JSON-MaybeXS
|
||||||
|
virtual/perl-MIME-Base64
|
||||||
|
dev-perl/Net-OpenSSH
|
||||||
|
dev-perl/Net-SFTP-Foreign
|
||||||
|
>=virtual/perl-Scalar-List-Utils-1.450.0
|
||||||
|
dev-perl/Parallel-ForkManager
|
||||||
|
dev-perl/Sort-Naturally
|
||||||
|
dev-perl/String-Escape
|
||||||
|
virtual/perl-Storable
|
||||||
|
dev-perl/TermReadKey
|
||||||
|
virtual/perl-Test-Simple
|
||||||
|
dev-perl/Text-Glob
|
||||||
|
virtual/perl-Text-Tabs+Wrap
|
||||||
|
virtual/perl-Time-HiRes
|
||||||
|
dev-perl/URI
|
||||||
|
dev-perl/XML-Simple
|
||||||
|
dev-perl/libwww-perl
|
||||||
|
dev-perl/YAML
|
||||||
|
virtual/perl-version
|
||||||
|
"
|
||||||
|
# NB: would add test? !minimal? Test-mysqld, but I can't get that to work
|
||||||
|
BDEPEND="
|
||||||
|
${RDEPEND}
|
||||||
|
>=virtual/perl-CPAN-Meta-Requirements-2.120.620
|
||||||
|
>=virtual/perl-ExtUtils-MakeMaker-7.110.100
|
||||||
|
>=dev-perl/File-ShareDir-Install-0.60.0
|
||||||
|
virtual/perl-Module-Metadata
|
||||||
|
test? (
|
||||||
|
!minimal? (
|
||||||
|
dev-perl/File-LibMagic
|
||||||
|
)
|
||||||
|
virtual/perl-File-Temp
|
||||||
|
dev-perl/Test-Exception
|
||||||
|
dev-perl/Sub-Override
|
||||||
|
dev-perl/Test-Deep
|
||||||
|
dev-perl/Test-Output
|
||||||
|
dev-perl/Test-UseAllModules
|
||||||
|
virtual/perl-autodie
|
||||||
|
)
|
||||||
|
"
|
||||||
|
|
||||||
|
[[ ${PV} == 9999 ]] && BDEPEND+=" ${DZIL_DEPENDS}"
|
||||||
|
|
||||||
|
src_unpack() {
|
||||||
|
if [[ ${PV} == 9999 ]]; then
|
||||||
|
"${VCS_ECLASS}"_src_unpack
|
||||||
|
mkdir -p "${S}" || die "Can't make ${S}"
|
||||||
|
else
|
||||||
|
default
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
dzil_src_prep() {
|
||||||
|
einfo "Patching dist.ini"
|
||||||
|
|
||||||
|
# This block of sed invocations removes all plugins that aren't
|
||||||
|
# useful for users to have on Gentoo, because all of them are
|
||||||
|
# conditional and subjective style checks, which don't indicate
|
||||||
|
# a real issue for users, and paying the price of their dependencies is undesired.
|
||||||
|
|
||||||
|
# The {N;d} trick adds the [n]ext line after the match to the pattern-space
|
||||||
|
# so that the final [d]elete deletes the next line too. Can be expanded for each
|
||||||
|
# line, ie: {N;N;N;d} deletes 3 lines after the match as well as the match.
|
||||||
|
sed -e '/^\[Test::Kwalitee\]/d' \
|
||||||
|
-e '/^\[PodSyntaxTests\]/d' \
|
||||||
|
-e '/^Perl::Critic::Freenode =/d' \
|
||||||
|
-e '/^Perl::Critic::TooMuchCode =/d' \
|
||||||
|
-e '/^Test::Kwalitee =/d' \
|
||||||
|
-e '/^Test::PerlTidy =/d' \
|
||||||
|
-e '/^Test::Pod =/d' \
|
||||||
|
-e '/^\[Test::CPAN::Changes\]/{N;d}' \
|
||||||
|
-e '/^\[OptionalFeature/,/^$/d' \
|
||||||
|
-e '/^\[Test::MinimumVersion\]/{N;d}' \
|
||||||
|
-i dist.ini || die "Can't patch dist.ini"
|
||||||
|
|
||||||
|
# Removals/additions have to be tracked by git or dzil build fails
|
||||||
|
# Spurious warning during src_prepare
|
||||||
|
git rm -f xt/author/critic-progressive.t || die "Can't rm author/critic-progressive.t"
|
||||||
|
# Spurious warning during src_prepare
|
||||||
|
git rm -f xt/author/perltidy.t || die "Can't rm author/perltidy.t"
|
||||||
|
}
|
||||||
|
dzil_env_setup() {
|
||||||
|
# NextRelease noise :(
|
||||||
|
mkdir -p ~/.dzil/ || die "mkdir -p ~/.dzil/ failed"
|
||||||
|
local user="$(whoami)"
|
||||||
|
local host="$(hostname)"
|
||||||
|
printf '[%%User]\nname = %s\nemail = %s' "${user}" "${user}@${host}" >> ~/.dzil/config.ini
|
||||||
|
|
||||||
|
}
|
||||||
|
dzil_to_distdir() {
|
||||||
|
local dzil_root dest has_missing modname dzil_version
|
||||||
|
dzil_root="$1"
|
||||||
|
dest="$2"
|
||||||
|
|
||||||
|
cd "${dzil_root}" || die "Can't enter git workdir '${dzil_root}'";
|
||||||
|
|
||||||
|
S="${dzil_root}" dzil_src_prep
|
||||||
|
dzil_env_setup
|
||||||
|
|
||||||
|
dzil_version="$(dzil version)" || die "Error invoking 'dzil version'"
|
||||||
|
einfo "Generating CPAN dist with ${dzil_version}"
|
||||||
|
|
||||||
|
has_missing=""
|
||||||
|
|
||||||
|
einfo "Checking dzil authordeps"
|
||||||
|
while IFS= read -d $'\n' -r modname; do
|
||||||
|
if [[ -z "${has_missing}" ]]; then
|
||||||
|
has_missing=1
|
||||||
|
eerror "'dzil authordeps' indicates missing build dependencies"
|
||||||
|
eerror "These will prevent building, please report a bug"
|
||||||
|
eerror "Missing:"
|
||||||
|
fi
|
||||||
|
eerror " ${modname}"
|
||||||
|
done < <( dzil authordeps --missing --versions )
|
||||||
|
|
||||||
|
[[ -z "${has_missing}" ]] || die "Satisfy all missing authordeps first"
|
||||||
|
|
||||||
|
einfo "Checking dzil build deps"
|
||||||
|
while IFS= read -d $'\n' -r modname; do
|
||||||
|
if [[ -z "${has_missing}" ]]; then
|
||||||
|
has_missing=1
|
||||||
|
ewarn "'dzil listdeps' indicates missing build dependencies"
|
||||||
|
ewarn "These may prevent building, please report a bug if they do"
|
||||||
|
ewarn "Missing:"
|
||||||
|
fi
|
||||||
|
ewarn " ${modname}"
|
||||||
|
done < <( dzil listdeps --missing --versions --author )
|
||||||
|
|
||||||
|
einfo "Generating release"
|
||||||
|
dzil build --notgz --in "${dest}" || die "Unable to build CPAN dist in '${dest}'"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
if [[ ${PV} == 9999 ]]; then
|
||||||
|
# Uses git sources in WORKDIR/rex-git
|
||||||
|
# to generate a CPAN-style tree in ${S}
|
||||||
|
# before letting perl-module.eclass do the rest
|
||||||
|
dzil_to_distdir "${EGIT_CHECKOUT_DIR}" "${S}"
|
||||||
|
fi
|
||||||
|
cd "${S}" || die "Can't enter build dir"
|
||||||
|
|
||||||
|
# If you DIY installed Test::mysqld, but didn't patch
|
||||||
|
# it to handle the fact on Gentoo, mysql_install_db is NOT in PATH
|
||||||
|
# tests fail. So this test is patched out if mysql_install_db is not in PATH
|
||||||
|
if perl_has_module "Test::mysqld" && ! type -P mysql_install_db >/dev/null; then
|
||||||
|
perl_rm_files "t/db.t"
|
||||||
|
fi
|
||||||
|
perl-module_src_prepare
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
newbashcomp "share/${PN}-tab-completion.bash" "${PN}"
|
||||||
|
|
||||||
|
insinto /usr/share/zsh/site-functions
|
||||||
|
newins "share/${PN}-tab-completion.zsh" "_${PN}"
|
||||||
|
|
||||||
|
perl-module_src_install
|
||||||
|
}
|
@ -0,0 +1,44 @@
|
|||||||
|
From e3c750b98564bc66b50ae35e91f5222c441f8b75 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Maciej=20Bar=C4=87?= <xgqt@gentoo.org>
|
||||||
|
Date: Wed, 16 Nov 2022 15:17:31 +0100
|
||||||
|
Subject: [PATCH] configure.ac: remove bashisms
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
replace [[ ]] with test and == with =
|
||||||
|
|
||||||
|
Signed-off-by: Maciej Barć <xgqt@gentoo.org>
|
||||||
|
---
|
||||||
|
configure.ac | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 3a43681d72..6e66ec904b 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -1138,13 +1138,13 @@ AC_ARG_ENABLE(gnutls-tests,
|
||||||
|
no) enable_gnutls_tests="no" ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-gnutls-tests) ;;
|
||||||
|
esac],
|
||||||
|
- [if [[ "$enable_gnutls" == "yes" ]]; then
|
||||||
|
+ [if test "x$enable_gnutls" = "xyes"; then
|
||||||
|
enable_gnutls_tests=yes
|
||||||
|
else
|
||||||
|
enable_gnutls_tests=no
|
||||||
|
fi]
|
||||||
|
)
|
||||||
|
-if [[ "$enable_gnutls_tests" == "yes" ]] && [[ "$enable_gnutls" != "yes" ]]; then
|
||||||
|
+if test "x$enable_gnutls_tests" = "xyes" && test "x$enable_gnutls" != "xyes"; then
|
||||||
|
AC_MSG_WARN([gnutls-tests can not be enabled without gnutls support. Disabling gnutls tests...])
|
||||||
|
enable_gnutls_tests="no"
|
||||||
|
fi
|
||||||
|
@@ -1852,7 +1852,7 @@ AC_ARG_ENABLE(imfile-tests,
|
||||||
|
esac],
|
||||||
|
[enable_imfile_tests=yes]
|
||||||
|
)
|
||||||
|
-if [[ "$enable_imfile_tests" == "yes" ]] && [[ "$enable_imfile" != "yes" ]]; then
|
||||||
|
+if test "x$enable_imfile_tests" = "xyes" && test "x$enable_imfile" != "xyes"; then
|
||||||
|
AC_MSG_WARN([imfile-tests can not be enabled without imfile support. Disabling imfile tests...])
|
||||||
|
enable_imfile_tests="no"
|
||||||
|
fi
|
@ -1,484 +0,0 @@
|
|||||||
# Copyright 1999-2023 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI="7"
|
|
||||||
PYTHON_COMPAT=( python3_9 )
|
|
||||||
|
|
||||||
inherit autotools linux-info python-any-r1 systemd
|
|
||||||
|
|
||||||
DESCRIPTION="An enhanced multi-threaded syslogd with database support and more"
|
|
||||||
HOMEPAGE="https://www.rsyslog.com/"
|
|
||||||
|
|
||||||
if [[ ${PV} == "9999" ]]; then
|
|
||||||
EGIT_REPO_URI="https://github.com/rsyslog/${PN}.git"
|
|
||||||
|
|
||||||
DOC_REPO_URI="https://github.com/rsyslog/${PN}-doc.git"
|
|
||||||
|
|
||||||
inherit git-r3
|
|
||||||
else
|
|
||||||
KEYWORDS="amd64 arm arm64 ~hppa x86"
|
|
||||||
|
|
||||||
SRC_URI="
|
|
||||||
https://www.rsyslog.com/files/download/${PN}/${P}.tar.gz
|
|
||||||
doc? ( https://www.rsyslog.com/files/download/${PN}/${PN}-doc-${PV}.tar.gz )
|
|
||||||
"
|
|
||||||
fi
|
|
||||||
|
|
||||||
LICENSE="GPL-3 LGPL-3 Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
|
|
||||||
IUSE="clickhouse curl dbi debug doc elasticsearch +gcrypt gnutls imhttp"
|
|
||||||
IUSE+=" impcap jemalloc kafka kerberos kubernetes mdblookup"
|
|
||||||
IUSE+=" mongodb mysql normalize omhttp omhttpfs omudpspoof +openssl"
|
|
||||||
IUSE+=" postgres rabbitmq redis relp rfc3195 rfc5424hmac snmp +ssl"
|
|
||||||
IUSE+=" systemd test usertools +uuid xxhash zeromq"
|
|
||||||
|
|
||||||
RESTRICT="!test? ( test )"
|
|
||||||
|
|
||||||
REQUIRED_USE="
|
|
||||||
kubernetes? ( normalize )
|
|
||||||
ssl? ( || ( gnutls openssl ) )
|
|
||||||
"
|
|
||||||
|
|
||||||
BDEPEND=">=sys-devel/autoconf-archive-2015.02.24
|
|
||||||
virtual/pkgconfig
|
|
||||||
test? (
|
|
||||||
jemalloc? ( <sys-libs/libfaketime-0.9.7 )
|
|
||||||
!jemalloc? ( sys-libs/libfaketime )
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
)"
|
|
||||||
|
|
||||||
RDEPEND="
|
|
||||||
>=dev-libs/libfastjson-0.99.8:=
|
|
||||||
>=dev-libs/libestr-0.1.9
|
|
||||||
>=sys-libs/zlib-1.2.5
|
|
||||||
curl? ( >=net-misc/curl-7.35.0 )
|
|
||||||
dbi? ( >=dev-db/libdbi-0.8.3 )
|
|
||||||
elasticsearch? ( >=net-misc/curl-7.35.0 )
|
|
||||||
gcrypt? ( >=dev-libs/libgcrypt-1.5.3:= )
|
|
||||||
imhttp? ( www-servers/civetweb )
|
|
||||||
impcap? ( net-libs/libpcap )
|
|
||||||
jemalloc? ( >=dev-libs/jemalloc-3.3.1:= )
|
|
||||||
kafka? ( >=dev-libs/librdkafka-0.9.0.99:= )
|
|
||||||
kerberos? ( virtual/krb5 )
|
|
||||||
kubernetes? ( >=net-misc/curl-7.35.0 )
|
|
||||||
mdblookup? ( dev-libs/libmaxminddb:= )
|
|
||||||
mongodb? ( >=dev-libs/mongo-c-driver-1.1.10:= )
|
|
||||||
mysql? ( dev-db/mysql-connector-c:= )
|
|
||||||
normalize? (
|
|
||||||
>=dev-libs/liblognorm-2.0.3:=
|
|
||||||
)
|
|
||||||
clickhouse? ( >=net-misc/curl-7.35.0 )
|
|
||||||
omhttpfs? ( >=net-misc/curl-7.35.0 )
|
|
||||||
omudpspoof? ( >=net-libs/libnet-1.1.6 )
|
|
||||||
postgres? ( >=dev-db/postgresql-8.4.20:= )
|
|
||||||
rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= )
|
|
||||||
redis? (
|
|
||||||
>=dev-libs/hiredis-0.11.0:=
|
|
||||||
dev-libs/libevent[threads]
|
|
||||||
)
|
|
||||||
relp? ( >=dev-libs/librelp-1.2.17:= )
|
|
||||||
rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
|
|
||||||
rfc5424hmac? (
|
|
||||||
>=dev-libs/openssl-0.9.8y:0=
|
|
||||||
)
|
|
||||||
snmp? ( >=net-analyzer/net-snmp-5.7.2 )
|
|
||||||
ssl? (
|
|
||||||
gnutls? ( >=net-libs/gnutls-2.12.23:0= )
|
|
||||||
openssl? (
|
|
||||||
dev-libs/openssl:0=
|
|
||||||
)
|
|
||||||
)
|
|
||||||
systemd? ( >=sys-apps/systemd-234 )
|
|
||||||
uuid? ( sys-apps/util-linux:0= )
|
|
||||||
xxhash? ( dev-libs/xxhash:= )
|
|
||||||
zeromq? (
|
|
||||||
>=net-libs/czmq-4:=[drafts]
|
|
||||||
)"
|
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
elibc_musl? ( sys-libs/queue-standalone )
|
|
||||||
test? (
|
|
||||||
>=dev-libs/liblogging-1.0.1[stdlog]
|
|
||||||
)"
|
|
||||||
|
|
||||||
if [[ ${PV} == "9999" ]]; then
|
|
||||||
BDEPEND+=" doc? ( >=dev-python/sphinx-1.1.3-r7 )"
|
|
||||||
BDEPEND+=" >=sys-devel/flex-2.5.39-r1"
|
|
||||||
BDEPEND+=" >=sys-devel/bison-2.4.3"
|
|
||||||
BDEPEND+=" >=dev-python/docutils-0.12"
|
|
||||||
fi
|
|
||||||
|
|
||||||
CONFIG_CHECK="~INOTIFY_USER"
|
|
||||||
WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!"
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
use test && python-any-r1_pkg_setup
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
if [[ ${PV} == "9999" ]]; then
|
|
||||||
git-r3_fetch
|
|
||||||
git-r3_checkout
|
|
||||||
else
|
|
||||||
unpack ${P}.tar.gz
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use doc; then
|
|
||||||
if [[ ${PV} == "9999" ]]; then
|
|
||||||
local _EGIT_BRANCH=
|
|
||||||
if [[ -n "${EGIT_BRANCH}" ]]; then
|
|
||||||
# Cannot use rsyslog commits/branches for documentation repository
|
|
||||||
_EGIT_BRANCH=${EGIT_BRANCH}
|
|
||||||
unset EGIT_BRANCH
|
|
||||||
fi
|
|
||||||
|
|
||||||
git-r3_fetch "${DOC_REPO_URI}"
|
|
||||||
git-r3_checkout "${DOC_REPO_URI}" "${S}"/docs
|
|
||||||
|
|
||||||
if [[ -n "${_EGIT_BRANCH}" ]]; then
|
|
||||||
# Restore previous EGIT_BRANCH information
|
|
||||||
EGIT_BRANCH=${_EGIT_BRANCH}
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
cd "${S}" || die "Cannot change dir into '${S}'"
|
|
||||||
mkdir docs || die "Failed to create docs directory"
|
|
||||||
cd docs || die "Failed to change dir into '${S}/docs'"
|
|
||||||
unpack ${PN}-doc-${PV}.tar.gz
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
default
|
|
||||||
|
|
||||||
# https://github.com/rsyslog/rsyslog/issues/3626
|
|
||||||
sed -i \
|
|
||||||
-e '\|^#!/bin/bash$|a exit 77' \
|
|
||||||
tests/mmkubernetes-cache-expir*.sh \
|
|
||||||
|| die "Failed to disabled known test failure mmkubernetes-cache-expir*.sh"
|
|
||||||
|
|
||||||
eautoreconf
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
# Maintainer notes:
|
|
||||||
# * Guardtime support is missing because libgt isn't yet available
|
|
||||||
# in portage.
|
|
||||||
# * Hadoop's HDFS file system output module is currently not
|
|
||||||
# supported in Gentoo because nobody is able to test it
|
|
||||||
# (JAVA dependency).
|
|
||||||
# * dev-libs/hiredis doesn't provide pkg-config (see #504614,
|
|
||||||
# upstream PR 129 and 136) so we need to export HIREDIS_*
|
|
||||||
# variables because rsyslog's build system depends on pkg-config.
|
|
||||||
|
|
||||||
if use redis; then
|
|
||||||
export HIREDIS_LIBS="-L${EPREFIX}/usr/$(get_libdir) -lhiredis"
|
|
||||||
export HIREDIS_CFLAGS="-I${EPREFIX}/usr/include"
|
|
||||||
fi
|
|
||||||
|
|
||||||
local myeconfargs=(
|
|
||||||
--disable-debug-symbols
|
|
||||||
--disable-generate-man-pages
|
|
||||||
--without-valgrind-testbench
|
|
||||||
--disable-liblogging-stdlog
|
|
||||||
$(use_enable test testbench)
|
|
||||||
$(use_enable test libfaketime)
|
|
||||||
$(use_enable test extended-tests)
|
|
||||||
# Input Plugins without dependencies
|
|
||||||
--enable-imbatchreport
|
|
||||||
--enable-imdiag
|
|
||||||
--enable-imfile
|
|
||||||
--enable-improg
|
|
||||||
--enable-impstats
|
|
||||||
--enable-imptcp
|
|
||||||
# Message Modificiation Plugins without dependencies
|
|
||||||
--enable-mmanon
|
|
||||||
--enable-mmaudit
|
|
||||||
--enable-mmcount
|
|
||||||
--enable-mmfields
|
|
||||||
--enable-mmjsonparse
|
|
||||||
--enable-mmpstrucdata
|
|
||||||
--enable-mmrm1stspace
|
|
||||||
--enable-mmsequence
|
|
||||||
--enable-mmtaghostname
|
|
||||||
--enable-mmutf8fix
|
|
||||||
# Output Modification Plugins without dependencies
|
|
||||||
--enable-mail
|
|
||||||
--enable-omprog
|
|
||||||
--enable-omruleset
|
|
||||||
--enable-omstdout
|
|
||||||
--enable-omuxsock
|
|
||||||
# Misc
|
|
||||||
--enable-fmhash
|
|
||||||
$(use_enable xxhash fmhash-xxhash)
|
|
||||||
--enable-pmaixforwardedfrom
|
|
||||||
--enable-pmciscoios
|
|
||||||
--enable-pmcisconames
|
|
||||||
--enable-pmdb2diag
|
|
||||||
--enable-pmlastmsg
|
|
||||||
$(use_enable normalize pmnormalize)
|
|
||||||
--enable-pmnull
|
|
||||||
--enable-pmpanngfw
|
|
||||||
--enable-pmsnare
|
|
||||||
# DB
|
|
||||||
$(use_enable dbi libdbi)
|
|
||||||
$(use_enable mongodb ommongodb)
|
|
||||||
$(use_enable mysql)
|
|
||||||
$(use_enable postgres pgsql)
|
|
||||||
$(use_enable redis omhiredis)
|
|
||||||
# Debug
|
|
||||||
$(use_enable debug)
|
|
||||||
$(use_enable debug diagtools)
|
|
||||||
$(use_enable debug valgrind)
|
|
||||||
# Misc
|
|
||||||
$(use_enable clickhouse)
|
|
||||||
$(use_enable curl fmhttp)
|
|
||||||
$(use_enable elasticsearch)
|
|
||||||
$(use_enable gcrypt libgcrypt)
|
|
||||||
$(use_enable imhttp)
|
|
||||||
$(use_enable impcap)
|
|
||||||
$(use_enable jemalloc)
|
|
||||||
$(use_enable kafka imkafka)
|
|
||||||
$(use_enable kafka omkafka)
|
|
||||||
$(use_enable kerberos gssapi-krb5)
|
|
||||||
$(use_enable kubernetes mmkubernetes)
|
|
||||||
$(use_enable normalize mmnormalize)
|
|
||||||
$(use_enable mdblookup mmdblookup)
|
|
||||||
$(use_enable omhttp)
|
|
||||||
$(use_enable omhttpfs)
|
|
||||||
$(use_enable omudpspoof)
|
|
||||||
$(use_enable rabbitmq omrabbitmq)
|
|
||||||
$(use_enable relp)
|
|
||||||
$(use_enable rfc3195)
|
|
||||||
$(use_enable rfc5424hmac mmrfc5424addhmac)
|
|
||||||
$(use_enable snmp)
|
|
||||||
$(use_enable snmp mmsnmptrapd)
|
|
||||||
$(use_enable gnutls)
|
|
||||||
$(use_enable openssl)
|
|
||||||
$(use_enable systemd imjournal)
|
|
||||||
$(use_enable systemd omjournal)
|
|
||||||
$(use_enable usertools)
|
|
||||||
$(use_enable uuid)
|
|
||||||
$(use_enable zeromq imczmq)
|
|
||||||
$(use_enable zeromq omczmq)
|
|
||||||
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
|
|
||||||
)
|
|
||||||
|
|
||||||
econf "${myeconfargs[@]}"
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
default
|
|
||||||
|
|
||||||
if use doc && [[ "${PV}" == "9999" ]]; then
|
|
||||||
einfo "Building documentation ..."
|
|
||||||
local doc_dir="${S}/docs"
|
|
||||||
cd "${doc_dir}" || die "Cannot chdir into \"${doc_dir}\"!"
|
|
||||||
sphinx-build -b html source build || die "Building documentation failed!"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_test() {
|
|
||||||
local _has_increased_ulimit=
|
|
||||||
|
|
||||||
# Sometimes tests aren't executable (i.e. when added via patch)
|
|
||||||
einfo "Adjusting permissions of test scripts ..."
|
|
||||||
find "${S}"/tests -type f -name '*.sh' \! -perm -111 -exec chmod a+x '{}' \; || \
|
|
||||||
die "Failed to adjust test scripts permission"
|
|
||||||
|
|
||||||
if ulimit -n 3072; then
|
|
||||||
_has_increased_ulimit="true"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! emake --jobs 1 check; then
|
|
||||||
eerror "Test suite failed! :("
|
|
||||||
|
|
||||||
if [[ -z "${_has_increased_ulimit}" ]]; then
|
|
||||||
eerror "Probably because open file limit couldn't be set to 3072."
|
|
||||||
fi
|
|
||||||
|
|
||||||
if has userpriv ${FEATURES}; then
|
|
||||||
eerror "Please try to reproduce the test suite failure with FEATURES=-userpriv " \
|
|
||||||
"before you submit a bug report."
|
|
||||||
fi
|
|
||||||
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
local DOCS=(
|
|
||||||
AUTHORS
|
|
||||||
ChangeLog
|
|
||||||
"${FILESDIR}"/README.gentoo
|
|
||||||
)
|
|
||||||
|
|
||||||
use doc && local HTML_DOCS=( "${S}/docs/build/." )
|
|
||||||
|
|
||||||
default
|
|
||||||
|
|
||||||
newconfd "${FILESDIR}/${PN}.confd-r1" ${PN}
|
|
||||||
newinitd "${FILESDIR}/${PN}.initd-r1" ${PN}
|
|
||||||
|
|
||||||
systemd_newunit "${FILESDIR}/${PN}.service" ${PN}.service
|
|
||||||
|
|
||||||
keepdir /var/empty/dev
|
|
||||||
keepdir /var/spool/${PN}
|
|
||||||
keepdir /etc/ssl/${PN}
|
|
||||||
keepdir /etc/${PN}.d
|
|
||||||
|
|
||||||
insinto /etc
|
|
||||||
newins "${FILESDIR}/${PN}.conf" ${PN}.conf
|
|
||||||
|
|
||||||
insinto /etc/rsyslog.d/
|
|
||||||
newins "${FILESDIR}/50-default-r1.conf" 50-default.conf
|
|
||||||
|
|
||||||
insinto /etc/logrotate.d/
|
|
||||||
newins "${FILESDIR}/${PN}-r1.logrotate" ${PN}
|
|
||||||
|
|
||||||
if use mysql; then
|
|
||||||
insinto /usr/share/${PN}/scripts/mysql
|
|
||||||
doins plugins/ommysql/createDB.sql
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use postgres; then
|
|
||||||
insinto /usr/share/${PN}/scripts/pgsql
|
|
||||||
doins plugins/ompgsql/createDB.sql
|
|
||||||
fi
|
|
||||||
|
|
||||||
find "${ED}" -name '*.la' -delete || die
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
local advertise_readme=0
|
|
||||||
|
|
||||||
if [[ -z "${REPLACING_VERSIONS}" ]]; then
|
|
||||||
# This is a new installation
|
|
||||||
|
|
||||||
advertise_readme=1
|
|
||||||
|
|
||||||
if use mysql || use postgres; then
|
|
||||||
echo
|
|
||||||
elog "Sample SQL scripts for MySQL & PostgreSQL have been installed to:"
|
|
||||||
elog " /usr/share/doc/${PF}/scripts"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use ssl; then
|
|
||||||
echo
|
|
||||||
elog "To create a default CA and certificates for your server and clients, run:"
|
|
||||||
elog " emerge --config =${PF}"
|
|
||||||
elog "on your logging server. You can run it several times,"
|
|
||||||
elog "once for each logging client. The client certificates will be signed"
|
|
||||||
elog "using the CA certificate generated during the first run."
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ ${advertise_readme} -gt 0 ]]; then
|
|
||||||
# We need to show the README file location
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
elog "Please read"
|
|
||||||
elog ""
|
|
||||||
elog " ${EPREFIX}/usr/share/doc/${PF}/README.gentoo*"
|
|
||||||
elog ""
|
|
||||||
elog "for more details."
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_config() {
|
|
||||||
if ! use ssl; then
|
|
||||||
einfo "There is nothing to configure for rsyslog unless you"
|
|
||||||
einfo "used USE=ssl to build it."
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! hash certtool &>/dev/null; then
|
|
||||||
die "certtool not found! Is net-libs/gnutls[tools] is installed?"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Make sure the certificates directory exists
|
|
||||||
local CERTDIR="${EROOT}/etc/ssl/${PN}"
|
|
||||||
if [[ ! -d "${CERTDIR}" ]]; then
|
|
||||||
mkdir "${CERTDIR}" || die
|
|
||||||
fi
|
|
||||||
einfo "Your certificates will be stored in ${CERTDIR}"
|
|
||||||
|
|
||||||
# Create a default CA if needed
|
|
||||||
if [[ ! -f "${CERTDIR}/${PN}_ca.cert.pem" ]]; then
|
|
||||||
einfo "No CA key and certificate found in ${CERTDIR}, creating them for you..."
|
|
||||||
certtool --generate-privkey \
|
|
||||||
--outfile "${CERTDIR}/${PN}_ca.privkey.pem" || die
|
|
||||||
chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
|
|
||||||
|
|
||||||
cat > "${T}/${PF}.$$" <<- _EOF
|
|
||||||
cn = Portage automated CA
|
|
||||||
ca
|
|
||||||
cert_signing_key
|
|
||||||
expiration_days = 3650
|
|
||||||
_EOF
|
|
||||||
|
|
||||||
certtool --generate-self-signed \
|
|
||||||
--load-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
|
|
||||||
--outfile "${CERTDIR}/${PN}_ca.cert.pem" \
|
|
||||||
--template "${T}/${PF}.$$" || die
|
|
||||||
chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
|
|
||||||
|
|
||||||
# Create the server certificate
|
|
||||||
echo
|
|
||||||
einfon "Please type the Common Name of the SERVER you wish to create a certificate for: "
|
|
||||||
read -r CN
|
|
||||||
|
|
||||||
einfo "Creating private key and certificate for server ${CN}..."
|
|
||||||
certtool --generate-privkey \
|
|
||||||
--outfile "${CERTDIR}/${PN}_${CN}.key.pem" || die
|
|
||||||
chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
|
|
||||||
|
|
||||||
cat > "${T}/${PF}.$$" <<- _EOF
|
|
||||||
cn = ${CN}
|
|
||||||
tls_www_server
|
|
||||||
dns_name = ${CN}
|
|
||||||
expiration_days = 3650
|
|
||||||
_EOF
|
|
||||||
|
|
||||||
certtool --generate-certificate \
|
|
||||||
--outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
|
|
||||||
--load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
|
|
||||||
--load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
|
|
||||||
--load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
|
|
||||||
--template "${T}/${PF}.$$" &>/dev/null
|
|
||||||
chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
|
|
||||||
|
|
||||||
else
|
|
||||||
einfo "Found existing ${CERTDIR}/${PN}_ca.cert.pem, skipping CA and SERVER creation."
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Create a client certificate
|
|
||||||
echo
|
|
||||||
einfon "Please type the Common Name of the CLIENT you wish to create a certificate for: "
|
|
||||||
read -r CN
|
|
||||||
|
|
||||||
einfo "Creating private key and certificate for client ${CN}..."
|
|
||||||
certtool --generate-privkey \
|
|
||||||
--outfile "${CERTDIR}/${PN}_${CN}.key.pem" || die
|
|
||||||
chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
|
|
||||||
|
|
||||||
cat > "${T}/${PF}.$$" <<- _EOF
|
|
||||||
cn = ${CN}
|
|
||||||
tls_www_client
|
|
||||||
dns_name = ${CN}
|
|
||||||
expiration_days = 3650
|
|
||||||
_EOF
|
|
||||||
|
|
||||||
certtool --generate-certificate \
|
|
||||||
--outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
|
|
||||||
--load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
|
|
||||||
--load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
|
|
||||||
--load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
|
|
||||||
--template "${T}/${PF}.$$" || die
|
|
||||||
chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
|
|
||||||
|
|
||||||
rm -f "${T}/${PF}.$$"
|
|
||||||
|
|
||||||
echo
|
|
||||||
einfo "Here is the documentation on how to encrypt your log traffic:"
|
|
||||||
einfo " https://www.rsyslog.com/doc/rsyslog_tls.html"
|
|
||||||
}
|
|
Binary file not shown.
@ -0,0 +1 @@
|
|||||||
|
DIST dtrx-8.5.0.tar.gz 34061 BLAKE2B d8ecbd9f3594440656e40d811846dd302d271f189711176a406572871db69f98bb4fd81a76ebdce697faf8d56029f4dcf735d18795adf732809e6017a7395cf2 SHA512 0ef0c0c9c22d948f6a8ee801372605dae52f4f571a32bbaa180c2c1daab061d623119c91b745f6a86cd28d7d08cdb47029a4de38354bdb28c62acfab080cc0f1
|
@ -0,0 +1,57 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
DISTUTILS_USE_PEP517=setuptools
|
||||||
|
PYTHON_COMPAT=( python3_{10..11} )
|
||||||
|
|
||||||
|
inherit distutils-r1 optfeature
|
||||||
|
|
||||||
|
DESCRIPTION="Do The Right eXtraction - extracts archives of different formats"
|
||||||
|
HOMEPAGE="https://github.com/dtrx-py/dtrx/
|
||||||
|
https://pypi.org/project/dtrx/"
|
||||||
|
|
||||||
|
if [[ ${PV} == *9999* ]] ; then
|
||||||
|
inherit git-r3
|
||||||
|
EGIT_REPO_URI="https://github.com/${PN}-py/${PN}.git"
|
||||||
|
else
|
||||||
|
SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
|
||||||
|
KEYWORDS="~amd64 ~x86"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LICENSE="GPL-3+"
|
||||||
|
SLOT="0"
|
||||||
|
|
||||||
|
DOCS=( README.md )
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
sed -i '/ *platform==/s|.*||' setup.cfg || die # bug #894148
|
||||||
|
|
||||||
|
distutils-r1_src_prepare
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
local supported_format
|
||||||
|
local -a supported_formats=(
|
||||||
|
arj
|
||||||
|
bzip2
|
||||||
|
cpio
|
||||||
|
gzip
|
||||||
|
lrzip
|
||||||
|
lzip
|
||||||
|
p7zip
|
||||||
|
rpm
|
||||||
|
unrar
|
||||||
|
unzip
|
||||||
|
xz-utils
|
||||||
|
zip
|
||||||
|
zstd
|
||||||
|
)
|
||||||
|
|
||||||
|
for supported_format in ${supported_formats[@]}; do
|
||||||
|
optfeature \
|
||||||
|
"extraction of supported archives using ${supported_format}" \
|
||||||
|
app-arch/${supported_format}
|
||||||
|
done
|
||||||
|
}
|
@ -0,0 +1,57 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
DISTUTILS_USE_PEP517=setuptools
|
||||||
|
PYTHON_COMPAT=( python3_{10..11} )
|
||||||
|
|
||||||
|
inherit distutils-r1 optfeature
|
||||||
|
|
||||||
|
DESCRIPTION="Do The Right eXtraction - extracts archives of different formats"
|
||||||
|
HOMEPAGE="https://github.com/dtrx-py/dtrx/
|
||||||
|
https://pypi.org/project/dtrx/"
|
||||||
|
|
||||||
|
if [[ ${PV} == *9999* ]] ; then
|
||||||
|
inherit git-r3
|
||||||
|
EGIT_REPO_URI="https://github.com/${PN}-py/${PN}.git"
|
||||||
|
else
|
||||||
|
SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
|
||||||
|
KEYWORDS="~amd64 ~x86"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LICENSE="GPL-3+"
|
||||||
|
SLOT="0"
|
||||||
|
|
||||||
|
DOCS=( README.md )
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
sed -i '/ *platform==/s|.*||' setup.cfg || die # bug #894148
|
||||||
|
|
||||||
|
distutils-r1_src_prepare
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
local supported_format
|
||||||
|
local -a supported_formats=(
|
||||||
|
arj
|
||||||
|
bzip2
|
||||||
|
cpio
|
||||||
|
gzip
|
||||||
|
lrzip
|
||||||
|
lzip
|
||||||
|
p7zip
|
||||||
|
rpm
|
||||||
|
unrar
|
||||||
|
unzip
|
||||||
|
xz-utils
|
||||||
|
zip
|
||||||
|
zstd
|
||||||
|
)
|
||||||
|
|
||||||
|
for supported_format in ${supported_formats[@]}; do
|
||||||
|
optfeature \
|
||||||
|
"extraction of supported archives using ${supported_format}" \
|
||||||
|
app-arch/${supported_format}
|
||||||
|
done
|
||||||
|
}
|
@ -0,0 +1,14 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="person">
|
||||||
|
<email>xgqt@gentoo.org</email>
|
||||||
|
<name>Maciej Barć</name>
|
||||||
|
</maintainer>
|
||||||
|
<upstream>
|
||||||
|
<bugs-to>https://github.com/dtrx-py/dtrx/issues/</bugs-to>
|
||||||
|
<remote-id type="github">dtrx-py/dtrx</remote-id>
|
||||||
|
<remote-id type="pypi">dtrx</remote-id>
|
||||||
|
</upstream>
|
||||||
|
</pkgmetadata>
|
Binary file not shown.
@ -1 +1,2 @@
|
|||||||
DIST backupninja-backupninja_upstream-1.2.1.tar.gz 186791 BLAKE2B 2e761b5538c77f359b2cc8b8c593589303f36b5b4d4d9f65457a1786cc671bdc57ad067c5bc7678fbe1afdd17406c3dedd641f2553213ec28186defd4b9d1fd4 SHA512 974276697f908cbf2203fd0cd3ebfe4f44c350714616d3a74191df4f9e101ce6d5f90cd2887dc06c5ed937ea19f9b72db28f5735255fae9d6db4faeaacee808c
|
DIST backupninja-backupninja_upstream-1.2.1.tar.gz 186791 BLAKE2B 2e761b5538c77f359b2cc8b8c593589303f36b5b4d4d9f65457a1786cc671bdc57ad067c5bc7678fbe1afdd17406c3dedd641f2553213ec28186defd4b9d1fd4 SHA512 974276697f908cbf2203fd0cd3ebfe4f44c350714616d3a74191df4f9e101ce6d5f90cd2887dc06c5ed937ea19f9b72db28f5735255fae9d6db4faeaacee808c
|
||||||
|
DIST backupninja-backupninja_upstream-1.2.2.tar.gz 187862 BLAKE2B cfc2c31a4e53179f9167874d1d5785a9dfdb4bc0e891ea353b5f5ff44dc5eb4f86358b210a96327de9701f7e6913f7afbf8fe104fea138f8006835e2bf04a7e6 SHA512 a11085998ff7342baa242e31a64ddc1d6e6cabd43572435b444ef0523ef8644ed9d362392bfb5c8ade06fbf046fecccf5c05ba2ae4345c65551dddcaa25a13a6
|
||||||
|
@ -0,0 +1,21 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
DESCRIPTION="lightweight, extensible meta-backup system"
|
||||||
|
HOMEPAGE="https://0xacab.org/liberate/backupninja"
|
||||||
|
SRC_URI="https://0xacab.org/liberate/backupninja/-/archive/backupninja_upstream/${PV}/backupninja-backupninja_upstream-${PV}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="GPL-2"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="amd64 x86"
|
||||||
|
|
||||||
|
RDEPEND="dev-util/dialog"
|
||||||
|
DEPEND=""
|
||||||
|
|
||||||
|
S="${WORKDIR}/${PN}-${PN}_upstream-${PV}"
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
econf --localstatedir=/var #578614
|
||||||
|
}
|
Binary file not shown.
@ -0,0 +1,45 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
MY_PV="k9ea2vqm"
|
||||||
|
|
||||||
|
DESCRIPTION="A Cross-Platform Benchmark for Android, iOS, Linux, MacOS and Windows"
|
||||||
|
HOMEPAGE="https://www.geekbench.com/"
|
||||||
|
SRC_URI="https://cdn.geekbench.com/${MY_PV}/Geekbench-${PV}-Linux.tar.gz"
|
||||||
|
S="${WORKDIR}/Geekbench-${PV}-Linux"
|
||||||
|
|
||||||
|
KEYWORDS="-* ~amd64"
|
||||||
|
LICENSE="geekbench"
|
||||||
|
SLOT="6"
|
||||||
|
|
||||||
|
RESTRICT="bindist mirror"
|
||||||
|
|
||||||
|
QA_PREBUILT="
|
||||||
|
opt/geekbench6/geekbench_avx
|
||||||
|
opt/geekbench6/geekbench6
|
||||||
|
opt/geekbench6/geekbench_x86_64
|
||||||
|
"
|
||||||
|
|
||||||
|
pkg_nofetch() {
|
||||||
|
elog "Please download ${A} from ${HOMEPAGE}/download/linux"
|
||||||
|
elog "and place it in your DISTDIR directory."
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
exeinto /opt/geekbench6
|
||||||
|
doexe geekbench_avx2 geekbench6 geekbench_x86_64
|
||||||
|
|
||||||
|
insinto /opt/geekbench6
|
||||||
|
doins geekbench.plar geekbench-workload.plar
|
||||||
|
|
||||||
|
dodir /opt/bin
|
||||||
|
dosym ../geekbench6/geekbench6 /opt/bin/geekbench6
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
elog "If you have purchased a commercial license, you can enter"
|
||||||
|
elog "your email address and your license key with the following command:"
|
||||||
|
elog "geekbench6 -r <email address> <license key>"
|
||||||
|
}
|
Binary file not shown.
@ -1,21 +0,0 @@
|
|||||||
# Copyright 1999-2016 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
EGIT_REPO_URI="https://github.com/spotify/docker-gc.git"
|
|
||||||
|
|
||||||
inherit git-r3
|
|
||||||
|
|
||||||
DESCRIPTION="Docker garbage collection of containers and images"
|
|
||||||
HOMEPAGE="https://github.com/spotify/docker-gc/"
|
|
||||||
|
|
||||||
LICENSE="Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
|
|
||||||
RDEPEND="app-containers/docker"
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
dosbin docker-gc
|
|
||||||
dodoc README.md
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
|
||||||
<pkgmetadata>
|
|
||||||
<!-- maintainer-needed -->
|
|
||||||
<upstream>
|
|
||||||
<remote-id type="github">spotify/docker-gc</remote-id>
|
|
||||||
</upstream>
|
|
||||||
</pkgmetadata>
|
|
Binary file not shown.
@ -0,0 +1,38 @@
|
|||||||
|
From e408786075b9540f76783f5c3ce87f6d1ece13cf Mon Sep 17 00:00:00 2001
|
||||||
|
From: Guillem Jover <guillem@hadrons.org>
|
||||||
|
Date: Sun, 12 Feb 2023 23:55:09 +0100
|
||||||
|
Subject: [PATCH] build: Fix version script linker support detection
|
||||||
|
|
||||||
|
When the linker uses --no-undefined-version either specified by the user
|
||||||
|
or as the default behavior (such as with newer clang >= 16 releases), a missing symbol definition will cause a linker error if that symbol is
|
||||||
|
listed in the version script.
|
||||||
|
|
||||||
|
|
||||||
|
Bug: https://bugs.gentoo.org/894010
|
||||||
|
Upstream issue: https://gitlab.freedesktop.org/libbsd/libmd/-/issues/1
|
||||||
|
Upstream commit: https://gitlab.freedesktop.org/libbsd/libmd/-/commit/e408786075b9540f76783f5c3ce87f6d1ece13cf
|
||||||
|
|
||||||
|
---
|
||||||
|
m4/libmd-linker.m4 | 6 +++++-
|
||||||
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/m4/libmd-linker.m4 b/m4/libmd-linker.m4
|
||||||
|
index 7d1236a..3d6edcd 100644
|
||||||
|
--- a/m4/libmd-linker.m4
|
||||||
|
+++ b/m4/libmd-linker.m4
|
||||||
|
@@ -8,7 +8,11 @@ AC_DEFUN([LIBMD_LINKER_VERSION_SCRIPT], [
|
||||||
|
save_LDFLAGS=$LDFLAGS
|
||||||
|
LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map"
|
||||||
|
AC_LINK_IFELSE([
|
||||||
|
- AC_LANG_PROGRAM([], [])
|
||||||
|
+ AC_LANG_PROGRAM([[
|
||||||
|
+extern int symbol(void);
|
||||||
|
+int symbol(void) { return 0; }
|
||||||
|
+]], [[
|
||||||
|
+]])
|
||||||
|
], [
|
||||||
|
libmd_cv_version_script=yes
|
||||||
|
], [
|
||||||
|
--
|
||||||
|
GitLab
|
||||||
|
|
@ -1,27 +0,0 @@
|
|||||||
# Copyright 1999-2021 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
inherit autotools multilib-minimal git-r3
|
|
||||||
|
|
||||||
DESCRIPTION="Message Digest functions from BSD systems"
|
|
||||||
HOMEPAGE="https://www.hadrons.org/software/libmd/"
|
|
||||||
EGIT_REPO_URI="https://git.hadrons.org/git/libmd.git"
|
|
||||||
|
|
||||||
LICENSE="|| ( BSD BSD-2 ISC BEER-WARE public-domain )"
|
|
||||||
SLOT="0"
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
default
|
|
||||||
eautoreconf
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_configure() {
|
|
||||||
ECONF_SOURCE="${S}" econf
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_install() {
|
|
||||||
default
|
|
||||||
find "${ED}" -type f -name "*.la" -delete || die
|
|
||||||
}
|
|
@ -0,0 +1,45 @@
|
|||||||
|
https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg/-/commit/447e4747089731f322589299d3ff6fd54e56aefb
|
||||||
|
|
||||||
|
From 447e4747089731f322589299d3ff6fd54e56aefb Mon Sep 17 00:00:00 2001
|
||||||
|
From: Justus Winter <justus@sequoia-pgp.org>
|
||||||
|
Date: Thu, 9 Feb 2023 10:44:26 +0100
|
||||||
|
Subject: [PATCH] tests: Normalize underlines.
|
||||||
|
|
||||||
|
- GnuPG emits a header with underlines in key listings that changes
|
||||||
|
with the length of GNUPGHOME. Now, since the state directories
|
||||||
|
are created within TMPDIR, the length of both GNUPGHOME and the
|
||||||
|
underline changes. Previously, we normalized GNUPGHOME, but we
|
||||||
|
failed to normalize the underline.
|
||||||
|
|
||||||
|
- Fixes #8.
|
||||||
|
--- a/tests/gpg.rs
|
||||||
|
+++ b/tests/gpg.rs
|
||||||
|
@@ -243,12 +243,24 @@ impl Output {
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Canonicalizes the paths in the output.
|
||||||
|
+ ///
|
||||||
|
+ /// This replaces `homedir` with `"/HOMEDIR"` and `experiment`
|
||||||
|
+ /// with `"/EXPERIMENT"` in stdout and stderr, and normalizes the
|
||||||
|
+ /// underline decorating `homedir` in key listings in stdout.
|
||||||
|
fn canonicalize(mut self, homedir: &Path, experiment: &Path) -> Self {
|
||||||
|
+ const DASHES: &str =
|
||||||
|
+ "\n------------------------------------------------------------";
|
||||||
|
+ let d = regex::bytes::Regex::new(
|
||||||
|
+ &DASHES[..DASHES.len().min(homedir.to_str().unwrap().len() + 1)])
|
||||||
|
+ .unwrap();
|
||||||
|
let h = regex::bytes::Regex::new(homedir.to_str().unwrap()).unwrap();
|
||||||
|
let e = regex::bytes::Regex::new(experiment.to_str().unwrap()).unwrap();
|
||||||
|
self.stdout =
|
||||||
|
- e.replace_all(&h.replace_all(&self.stdout, &b"/HOMEDIR"[..]),
|
||||||
|
- &b"/EXPERIMENT"[..])
|
||||||
|
+ e.replace_all(
|
||||||
|
+ &h.replace_all(
|
||||||
|
+ &d.replace_all(&self.stdout, &b"\n--------"[..]),
|
||||||
|
+ &b"/HOMEDIR"[..]),
|
||||||
|
+ &b"/EXPERIMENT"[..])
|
||||||
|
.into();
|
||||||
|
self.stderr =
|
||||||
|
e.replace_all(&h.replace_all(&self.stderr, &b"/HOMEDIR"[..]),
|
||||||
|
--
|
||||||
|
GitLab
|
@ -0,0 +1,52 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=7
|
||||||
|
|
||||||
|
inherit autotools flag-o-matic
|
||||||
|
|
||||||
|
DESCRIPTION="TrouSerS' support tools for the Trusted Platform Modules"
|
||||||
|
HOMEPAGE="http://trousers.sourceforge.net"
|
||||||
|
SRC_URI="mirror://sourceforge/trousers/${PN}/${P}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="CPL-1.0"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~s390 ~x86"
|
||||||
|
IUSE="nls pkcs11 debug"
|
||||||
|
|
||||||
|
DEPEND=">=app-crypt/trousers-0.3.15-r1
|
||||||
|
dev-libs/openssl:0=
|
||||||
|
pkcs11? ( dev-libs/opencryptoki )"
|
||||||
|
RDEPEND="${DEPEND}"
|
||||||
|
BDEPEND="nls? ( sys-devel/gettext )"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# upstream didn't generate the tarball correctly so we must bootstrap
|
||||||
|
# ouselves
|
||||||
|
mkdir -p po || die
|
||||||
|
mkdir -p m4 || die
|
||||||
|
cp -R po_/* po/ || die
|
||||||
|
touch po/Makefile.in.in || die
|
||||||
|
touch m4/Makefile.am || die
|
||||||
|
|
||||||
|
sed -i -r \
|
||||||
|
-e '/CFLAGS/s/ -m64//' \
|
||||||
|
configure.ac || die
|
||||||
|
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
append-cppflags $(usex debug -DDEBUG -DNDEBUG)
|
||||||
|
|
||||||
|
econf \
|
||||||
|
$(use_enable nls) \
|
||||||
|
$(use pkcs11 || echo --disable-pkcs11-support)
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
default
|
||||||
|
find "${D}" -name '*.la' -delete || die
|
||||||
|
}
|
@ -0,0 +1,69 @@
|
|||||||
|
https://bugs.gentoo.org/713444
|
||||||
|
|
||||||
|
From 2299eadf77ae7a7ec52148b6a8f4ea37e217eafa Mon Sep 17 00:00:00 2001
|
||||||
|
From: Stijn Tintel <stijn@linux-ipv6.be>
|
||||||
|
Date: Thu, 2 Feb 2023 01:06:15 +0200
|
||||||
|
Subject: [PATCH] tspi: drop the use of getpwent_r
|
||||||
|
|
||||||
|
On systems with musl libc, libtspi.so is unusable due to the lack of
|
||||||
|
getpwent_r. As there are multiple historical functions named getpwent_r
|
||||||
|
that all behave differently, let's just play it safe and stop using it
|
||||||
|
altogether.
|
||||||
|
|
||||||
|
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
|
||||||
|
---
|
||||||
|
src/tspi/ps/tspps.c | 16 ----------------
|
||||||
|
1 file changed, 16 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/tspi/ps/tspps.c b/src/tspi/ps/tspps.c
|
||||||
|
index b5e83d0..ae7b3df 100644
|
||||||
|
--- a/src/tspi/ps/tspps.c
|
||||||
|
+++ b/src/tspi/ps/tspps.c
|
||||||
|
@@ -51,9 +51,7 @@
|
||||||
|
|
||||||
|
static int user_ps_fd = -1;
|
||||||
|
static MUTEX_DECLARE_INIT(user_ps_lock);
|
||||||
|
-#if (defined (__FreeBSD__) || defined (__OpenBSD__))
|
||||||
|
static MUTEX_DECLARE_INIT(user_ps_path);
|
||||||
|
-#endif
|
||||||
|
static struct flock fl;
|
||||||
|
|
||||||
|
|
||||||
|
@@ -66,9 +64,6 @@ get_user_ps_path(char **file)
|
||||||
|
TSS_RESULT result;
|
||||||
|
char *file_name = NULL, *home_dir = NULL;
|
||||||
|
struct passwd *pwp;
|
||||||
|
-#if (defined (__linux) || defined (linux) || defined(__GLIBC__))
|
||||||
|
- struct passwd pw;
|
||||||
|
-#endif
|
||||||
|
struct stat stat_buf;
|
||||||
|
char buf[PASSWD_BUFSIZE];
|
||||||
|
uid_t euid;
|
||||||
|
@@ -96,16 +91,6 @@ get_user_ps_path(char **file)
|
||||||
|
#else
|
||||||
|
setpwent();
|
||||||
|
while (1) {
|
||||||
|
-#if (defined (__linux) || defined (linux) || defined(__GLIBC__))
|
||||||
|
- rc = getpwent_r(&pw, buf, PASSWD_BUFSIZE, &pwp);
|
||||||
|
- if (rc) {
|
||||||
|
- LogDebugFn("USER PS: Error getting path to home directory: getpwent_r: %s",
|
||||||
|
- strerror(rc));
|
||||||
|
- endpwent();
|
||||||
|
- return TSPERR(TSS_E_INTERNAL_ERROR);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
-#elif (defined (__FreeBSD__) || defined (__OpenBSD__))
|
||||||
|
if ((pwp = getpwent()) == NULL) {
|
||||||
|
LogDebugFn("USER PS: Error getting path to home directory: getpwent: %s",
|
||||||
|
strerror(rc));
|
||||||
|
@@ -113,7 +98,6 @@ get_user_ps_path(char **file)
|
||||||
|
MUTEX_UNLOCK(user_ps_path);
|
||||||
|
return TSPERR(TSS_E_INTERNAL_ERROR);
|
||||||
|
}
|
||||||
|
-#endif
|
||||||
|
if (euid == pwp->pw_uid) {
|
||||||
|
home_dir = strdup(pwp->pw_dir);
|
||||||
|
break;
|
||||||
|
--
|
||||||
|
2.39.1
|
||||||
|
|
@ -0,0 +1,73 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=7
|
||||||
|
|
||||||
|
inherit autotools linux-info readme.gentoo-r1 systemd udev
|
||||||
|
|
||||||
|
DESCRIPTION="An open-source TCG Software Stack (TSS) v1.1 implementation"
|
||||||
|
HOMEPAGE="http://trousers.sf.net"
|
||||||
|
SRC_URI="mirror://sourceforge/trousers/${PN}/${P}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="CPL-1.0 GPL-2"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86"
|
||||||
|
IUSE="doc selinux" # gtk
|
||||||
|
|
||||||
|
# gtk support presently does NOT compile.
|
||||||
|
# gtk? ( >=x11-libs/gtk+-2 )
|
||||||
|
|
||||||
|
DEPEND="acct-group/tss
|
||||||
|
acct-user/tss
|
||||||
|
>=dev-libs/glib-2
|
||||||
|
>=dev-libs/openssl-0.9.7:0=
|
||||||
|
"
|
||||||
|
RDEPEND="${DEPEND}
|
||||||
|
selinux? ( sec-policy/selinux-tcsd )"
|
||||||
|
BDEPEND="virtual/pkgconfig"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/${PN}-0.3.13-nouseradd.patch"
|
||||||
|
"${FILESDIR}/${PN}-0.3.14-Makefile.am-Mark-tddl.a-nodist.patch"
|
||||||
|
"${FILESDIR}/${P}-tspi-drop-the-use-of-getpwent_r.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
DOCS="AUTHORS ChangeLog NICETOHAVES README TODO"
|
||||||
|
|
||||||
|
DOC_CONTENTS="
|
||||||
|
If you have problems starting tcsd, please check permissions and
|
||||||
|
ownership on /dev/tpm* and ~tss/system.data
|
||||||
|
"
|
||||||
|
|
||||||
|
CONFIG_CHECK="~TCG_TPM"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
# econf --with-gui=$(usex gtk gtk openssl)
|
||||||
|
econf --with-gui=openssl
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
default
|
||||||
|
find "${D}" -name '*.la' -delete || die
|
||||||
|
|
||||||
|
keepdir /var/lib/tpm
|
||||||
|
use doc && dodoc doc/*
|
||||||
|
newinitd "${FILESDIR}"/tcsd.initd tcsd
|
||||||
|
systemd_dounit "${FILESDIR}"/tcsd.service
|
||||||
|
udev_dorules "${FILESDIR}"/61-trousers.rules
|
||||||
|
fowners tss:tss /var/lib/tpm
|
||||||
|
readme.gentoo_create_doc
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
udev_reload
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
udev_reload
|
||||||
|
}
|
@ -1,2 +1,2 @@
|
|||||||
DIST yubikey-manager-qt-1.2.2.tar.gz 17311287 BLAKE2B 115dbf18ce0bfd48a1b172153d9770a3bde754b1dbef55ee1ec9480128305b9fb0d52af23906a6f6040df71cc4d3d4be216615fc3807395f7e7be1615a5568da SHA512 dbac2d51b198ab15051790e080ad92aaef4b0d44596ad136115469e7bf038d6b56d1bfa78a69d1fda3644543f9762051767b8a1fd46a80f2f62ecf836f7df3d8
|
DIST yubikey-manager-qt-1.2.2.tar.gz 17311287 BLAKE2B 115dbf18ce0bfd48a1b172153d9770a3bde754b1dbef55ee1ec9480128305b9fb0d52af23906a6f6040df71cc4d3d4be216615fc3807395f7e7be1615a5568da SHA512 dbac2d51b198ab15051790e080ad92aaef4b0d44596ad136115469e7bf038d6b56d1bfa78a69d1fda3644543f9762051767b8a1fd46a80f2f62ecf836f7df3d8
|
||||||
DIST yubikey-manager-qt-1.2.4.tar.gz 17362256 BLAKE2B 5fd76f4ede59e8dc4ddec6c232fc35396962eb05937a453e7b7c8a93b88658c493750d31854b550f6ed3c7ab7e47df423f50bdd964b4145cf5178b8c00bbf044 SHA512 6b28aa3099b5158690f8f14271588adbfc4731a910eeece68b1ed6d1ef12dc2fb00debb91503748b87db9e482b8d68dab06c4476911c15880ad25652f47d4570
|
DIST yubikey-manager-qt-1.2.5.tar.gz 17360184 BLAKE2B 3b9d41e80fe81fe3f394d66ab3c2c8dc986fae0df5f51f184186ce800177aec5f7708e9b03259b5f9f20530cba66e5a73355135dacb51481e1169f7129fd47bd SHA512 e204f393a939bdc8bdec481b1a401c3f99fc364706dc4efc7460286a9bb4e5aa51496a92015a4b328eb948084135e95bb30f3f043ed742293799b6650915d6a7
|
||||||
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,376 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
inherit autotools elisp-common flag-o-matic readme.gentoo-r1
|
||||||
|
|
||||||
|
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||||
|
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||||
|
SRC_URI="mirror://gnu/emacs/${P}.tar.xz
|
||||||
|
https://dev.gentoo.org/~ulm/emacs/${P}-patches-4.tar.xz"
|
||||||
|
|
||||||
|
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||||
|
SLOT="26"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||||
|
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif gpm gsettings gtk gui gzip-el imagemagick +inotify jpeg kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm xwidgets zlib"
|
||||||
|
|
||||||
|
RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
|
||||||
|
sys-libs/ncurses:0=
|
||||||
|
acl? ( virtual/acl )
|
||||||
|
alsa? ( media-libs/alsa-lib )
|
||||||
|
dbus? ( sys-apps/dbus )
|
||||||
|
games? ( acct-group/gamestat )
|
||||||
|
gpm? ( sys-libs/gpm )
|
||||||
|
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
|
||||||
|
kerberos? ( virtual/krb5 )
|
||||||
|
lcms? ( media-libs/lcms:2 )
|
||||||
|
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||||
|
mailutils? ( net-mail/mailutils[clients] )
|
||||||
|
!mailutils? ( acct-group/mail net-libs/liblockfile )
|
||||||
|
selinux? ( sys-libs/libselinux )
|
||||||
|
ssl? ( net-libs/gnutls:0= )
|
||||||
|
systemd? ( sys-apps/systemd )
|
||||||
|
zlib? ( sys-libs/zlib )
|
||||||
|
gui? ( !aqua? (
|
||||||
|
x11-libs/libICE
|
||||||
|
x11-libs/libSM
|
||||||
|
x11-libs/libX11
|
||||||
|
x11-libs/libXext
|
||||||
|
x11-libs/libXfixes
|
||||||
|
x11-libs/libXinerama
|
||||||
|
x11-libs/libXrandr
|
||||||
|
x11-libs/libxcb
|
||||||
|
x11-misc/xbitmaps
|
||||||
|
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||||
|
gif? ( media-libs/giflib:0= )
|
||||||
|
jpeg? ( media-libs/libjpeg-turbo:0= )
|
||||||
|
png? ( >=media-libs/libpng-1.4:0= )
|
||||||
|
svg? ( >=gnome-base/librsvg-2.0 )
|
||||||
|
tiff? ( media-libs/tiff:= )
|
||||||
|
xpm? ( x11-libs/libXpm )
|
||||||
|
imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
|
||||||
|
xft? (
|
||||||
|
media-libs/fontconfig
|
||||||
|
media-libs/freetype
|
||||||
|
x11-libs/libXft
|
||||||
|
x11-libs/libXrender
|
||||||
|
cairo? ( >=x11-libs/cairo-1.12.18[X] )
|
||||||
|
m17n-lib? (
|
||||||
|
>=dev-libs/libotf-0.9.4
|
||||||
|
>=dev-libs/m17n-lib-1.5.1
|
||||||
|
)
|
||||||
|
)
|
||||||
|
gtk? (
|
||||||
|
x11-libs/gtk+:3
|
||||||
|
xwidgets? (
|
||||||
|
|| ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:4 )
|
||||||
|
net-libs/webkit-gtk:=
|
||||||
|
x11-libs/libXcomposite
|
||||||
|
)
|
||||||
|
)
|
||||||
|
!gtk? (
|
||||||
|
motif? (
|
||||||
|
>=x11-libs/motif-2.3:0
|
||||||
|
x11-libs/libXpm
|
||||||
|
x11-libs/libXmu
|
||||||
|
x11-libs/libXt
|
||||||
|
)
|
||||||
|
!motif? (
|
||||||
|
Xaw3d? (
|
||||||
|
x11-libs/libXaw3d
|
||||||
|
x11-libs/libXmu
|
||||||
|
x11-libs/libXt
|
||||||
|
)
|
||||||
|
!Xaw3d? ( athena? (
|
||||||
|
x11-libs/libXaw
|
||||||
|
x11-libs/libXmu
|
||||||
|
x11-libs/libXt
|
||||||
|
) )
|
||||||
|
)
|
||||||
|
)
|
||||||
|
) )"
|
||||||
|
|
||||||
|
DEPEND="${RDEPEND}
|
||||||
|
gui? ( !aqua? ( x11-base/xorg-proto ) )"
|
||||||
|
|
||||||
|
BDEPEND="virtual/pkgconfig
|
||||||
|
gzip-el? ( app-arch/gzip )"
|
||||||
|
|
||||||
|
IDEPEND="app-eselect/eselect-emacs"
|
||||||
|
|
||||||
|
RDEPEND+=" ${IDEPEND}"
|
||||||
|
|
||||||
|
EMACS_SUFFIX="emacs-${SLOT}"
|
||||||
|
SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
|
||||||
|
# FULL_VERSION keeps the full version number, which is needed in
|
||||||
|
# order to determine some path information correctly for copy/move
|
||||||
|
# operations later on
|
||||||
|
FULL_VERSION="${PV%%_*}"
|
||||||
|
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||||
|
PATCHES=("${WORKDIR}/patch")
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# Fix filename reference in redirected man page
|
||||||
|
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
|
||||||
|
|
||||||
|
AT_M4DIR=m4 eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
strip-flags
|
||||||
|
filter-flags -pie #526948
|
||||||
|
|
||||||
|
if use ia64; then
|
||||||
|
replace-flags "-O[2-9]" -O1 #325373
|
||||||
|
else
|
||||||
|
replace-flags "-O[3-9]" -O2
|
||||||
|
fi
|
||||||
|
|
||||||
|
local myconf
|
||||||
|
|
||||||
|
if use alsa; then
|
||||||
|
use sound || ewarn \
|
||||||
|
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||||
|
myconf+=" --with-sound=alsa"
|
||||||
|
else
|
||||||
|
myconf+=" --with-sound=$(usex sound oss)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! use gui; then
|
||||||
|
einfo "Configuring to build without window system support"
|
||||||
|
myconf+=" --without-x --without-ns"
|
||||||
|
elif use aqua; then
|
||||||
|
einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
|
||||||
|
myconf+=" --with-ns --disable-ns-self-contained"
|
||||||
|
myconf+=" --without-x"
|
||||||
|
else
|
||||||
|
myconf+=" --with-x --without-ns"
|
||||||
|
myconf+=" --without-gconf"
|
||||||
|
myconf+=" $(use_with gsettings)"
|
||||||
|
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||||
|
myconf+=" $(use_with gif)"
|
||||||
|
myconf+=" $(use_with jpeg)"
|
||||||
|
myconf+=" $(use_with png)"
|
||||||
|
myconf+=" $(use_with svg rsvg)"
|
||||||
|
myconf+=" $(use_with tiff)"
|
||||||
|
myconf+=" $(use_with xpm)"
|
||||||
|
myconf+=" $(use_with imagemagick)"
|
||||||
|
|
||||||
|
if use xft; then
|
||||||
|
myconf+=" --with-xft"
|
||||||
|
myconf+=" $(use_with cairo)"
|
||||||
|
myconf+=" $(use_with m17n-lib libotf)"
|
||||||
|
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||||
|
else
|
||||||
|
myconf+=" --without-xft"
|
||||||
|
myconf+=" --without-cairo"
|
||||||
|
myconf+=" --without-libotf --without-m17n-flt"
|
||||||
|
use cairo && ewarn \
|
||||||
|
"USE flag \"cairo\" has no effect if \"xft\" is not set."
|
||||||
|
use m17n-lib && ewarn \
|
||||||
|
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||||
|
fi
|
||||||
|
|
||||||
|
local f line
|
||||||
|
if use gtk; then
|
||||||
|
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||||
|
while read line; do ewarn "${line}"; done <<-EOF
|
||||||
|
Your version of GTK+ will have problems with closing open
|
||||||
|
displays. This is no problem if you just use one display, but
|
||||||
|
if you use more than one and close one of them Emacs may crash.
|
||||||
|
See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
|
||||||
|
<https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
|
||||||
|
If you intend to use more than one display, then it is strongly
|
||||||
|
recommended that you compile Emacs with the Athena/Lucid or the
|
||||||
|
Motif toolkit instead.
|
||||||
|
EOF
|
||||||
|
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
|
||||||
|
for f in motif Xaw3d athena; do
|
||||||
|
use ${f} && ewarn \
|
||||||
|
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||||
|
done
|
||||||
|
elif use motif; then
|
||||||
|
einfo "Configuring to build with Motif toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=motif"
|
||||||
|
for f in Xaw3d athena; do
|
||||||
|
use ${f} && ewarn \
|
||||||
|
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||||
|
done
|
||||||
|
elif use athena || use Xaw3d; then
|
||||||
|
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||||
|
else
|
||||||
|
einfo "Configuring to build with no toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=no"
|
||||||
|
fi
|
||||||
|
! use gtk && use xwidgets && ewarn \
|
||||||
|
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
|
||||||
|
fi
|
||||||
|
|
||||||
|
econf \
|
||||||
|
--program-suffix="-${EMACS_SUFFIX}" \
|
||||||
|
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
|
||||||
|
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||||
|
--localstatedir="${EPREFIX}"/var \
|
||||||
|
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||||
|
--without-compress-install \
|
||||||
|
--without-hesiod \
|
||||||
|
--without-pop \
|
||||||
|
--with-file-notification=$(usev inotify || usev gfile || echo no) \
|
||||||
|
$(use_enable acl) \
|
||||||
|
$(use_with dbus) \
|
||||||
|
$(use_with dynamic-loading modules) \
|
||||||
|
$(use_with games gameuser ":gamestat") \
|
||||||
|
$(use_with gpm) \
|
||||||
|
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||||
|
$(use_with lcms lcms2) \
|
||||||
|
$(use_with libxml2 xml2) \
|
||||||
|
$(use_with mailutils) \
|
||||||
|
$(use_with selinux) \
|
||||||
|
$(use_with ssl gnutls) \
|
||||||
|
$(use_with systemd libsystemd) \
|
||||||
|
$(use_with threads) \
|
||||||
|
$(use_with wide-int) \
|
||||||
|
$(use_with zlib) \
|
||||||
|
${myconf}
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
# Disable sandbox when dumping. For the unbelievers, see bug #131505
|
||||||
|
emake RUN_TEMACS="SANDBOX_ON=0 LD_PRELOAD= env ./temacs"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
|
||||||
|
|
||||||
|
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
|
||||||
|
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
|
||||||
|
mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die
|
||||||
|
|
||||||
|
# move info dir to avoid collisions with the dir file generated by portage
|
||||||
|
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} || die
|
||||||
|
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||||
|
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||||
|
|
||||||
|
# movemail must be setgid mail
|
||||||
|
if ! use mailutils; then
|
||||||
|
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||||
|
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||||
|
fi
|
||||||
|
|
||||||
|
# avoid collision between slots, see bug #169033 e.g.
|
||||||
|
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
|
||||||
|
rm -rf "${ED}"/usr/share/{applications,icons} || die
|
||||||
|
rm -rf "${ED}/usr/$(get_libdir)" || die
|
||||||
|
rm -rf "${ED}"/var || die
|
||||||
|
|
||||||
|
# remove unused <version>/site-lisp dir
|
||||||
|
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
|
||||||
|
|
||||||
|
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||||
|
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
|
||||||
|
|
||||||
|
if use systemd; then
|
||||||
|
insinto /usr/lib/systemd/user
|
||||||
|
sed -e "/^##/d" \
|
||||||
|
-e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \
|
||||||
|
-e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \
|
||||||
|
etc/emacs.service | newins - ${EMACS_SUFFIX}.service
|
||||||
|
assert
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use gzip-el; then
|
||||||
|
# compress .el files when a corresponding .elc exists
|
||||||
|
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||||
|
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||||
|
assert "gzip .el failed"
|
||||||
|
fi
|
||||||
|
|
||||||
|
local cdir
|
||||||
|
if use source; then
|
||||||
|
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||||
|
insinto "${cdir}"
|
||||||
|
# This is not meant to install all the source -- just the
|
||||||
|
# C source you might find via find-function
|
||||||
|
doins src/*.{c,h,m}
|
||||||
|
elif has installsources ${FEATURES}; then
|
||||||
|
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||||
|
fi
|
||||||
|
|
||||||
|
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
|
||||||
|
X
|
||||||
|
;;; ${EMACS_SUFFIX} site-lisp configuration
|
||||||
|
X
|
||||||
|
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||||
|
Y (setq find-function-C-source-directory
|
||||||
|
Y "${EPREFIX}${cdir}")
|
||||||
|
X (let ((path (getenv "INFOPATH"))
|
||||||
|
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||||
|
X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
|
||||||
|
X (and path
|
||||||
|
X ;; move Emacs Info dir before anything else in /usr/share
|
||||||
|
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||||
|
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||||
|
X (setq q (cdr q)))
|
||||||
|
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||||
|
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||||
|
EOF
|
||||||
|
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||||
|
|
||||||
|
dodoc README BUGS CONTRIBUTE
|
||||||
|
|
||||||
|
if use gui && use aqua; then
|
||||||
|
dodir /Applications/Gentoo
|
||||||
|
rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||||
|
mv nextstep/Emacs.app \
|
||||||
|
"${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
local DOC_CONTENTS="You can set the version to be started by
|
||||||
|
/usr/bin/emacs through the Emacs eselect module, which also
|
||||||
|
redirects man and info pages. Therefore, several Emacs versions can
|
||||||
|
be installed at the same time. \"man emacs.eselect\" for details.
|
||||||
|
\\n\\nIf you upgrade from a previous major version of Emacs, then
|
||||||
|
it is strongly recommended that you use app-admin/emacs-updater
|
||||||
|
to rebuild all byte-compiled elisp files of the installed Emacs
|
||||||
|
packages."
|
||||||
|
if use gui; then
|
||||||
|
DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||||
|
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||||
|
machine would satisfy basic Emacs requirements under X11.
|
||||||
|
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||||
|
for how to enable anti-aliased fonts."
|
||||||
|
use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
|
||||||
|
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or
|
||||||
|
symlink it into /Applications by yourself."
|
||||||
|
fi
|
||||||
|
readme.gentoo_create_doc
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_preinst() {
|
||||||
|
# move Info dir file to correct name
|
||||||
|
if [[ -d ${ED}/usr/share/info ]]; then
|
||||||
|
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{.orig,} || die
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
elisp-site-regen
|
||||||
|
readme.gentoo_print_elog
|
||||||
|
|
||||||
|
if use livecd; then
|
||||||
|
# force an update of the emacs symlink for the livecd/dvd,
|
||||||
|
# because some microemacs packages set it with USE=livecd
|
||||||
|
eselect emacs update
|
||||||
|
else
|
||||||
|
eselect emacs update ifunset
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
elisp-site-regen
|
||||||
|
eselect emacs update ifunset
|
||||||
|
}
|
@ -0,0 +1,439 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs
|
||||||
|
|
||||||
|
if [[ ${PV##*.} = 9999 ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
|
||||||
|
EGIT_BRANCH="emacs-27"
|
||||||
|
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
|
||||||
|
S="${EGIT_CHECKOUT_DIR}"
|
||||||
|
SLOT="${PV%%.*}-vcs"
|
||||||
|
else
|
||||||
|
# FULL_VERSION keeps the full version number, which is needed in
|
||||||
|
# order to determine some path information correctly for copy/move
|
||||||
|
# operations later on
|
||||||
|
FULL_VERSION="${PV%%_*}"
|
||||||
|
SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
|
||||||
|
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||||
|
# PV can be in any of the following formats:
|
||||||
|
# 27.1 released version (slot 27)
|
||||||
|
# 27.1_rc1 upstream release candidate (27)
|
||||||
|
# 27.0.9999 live ebuild (slot 27-vcs)
|
||||||
|
# 27.0.90 upstream prerelease snapshot (27-vcs)
|
||||||
|
# 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs)
|
||||||
|
if [[ ${PV} == *_pre* ]]; then
|
||||||
|
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
|
||||||
|
S="${WORKDIR}/emacs"
|
||||||
|
elif [[ ${PV//[0-9]} != "." ]]; then
|
||||||
|
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
|
||||||
|
fi
|
||||||
|
# Patchset from proj/emacs-patches.git
|
||||||
|
SRC_URI+=" https://dev.gentoo.org/~ulm/emacs/${P}-patches-5.tar.xz"
|
||||||
|
PATCHES=("${WORKDIR}/patch")
|
||||||
|
SLOT="${PV%%.*}"
|
||||||
|
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||||
|
fi
|
||||||
|
|
||||||
|
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||||
|
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||||
|
|
||||||
|
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||||
|
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm xwidgets zlib"
|
||||||
|
RESTRICT="test"
|
||||||
|
|
||||||
|
RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
|
||||||
|
sys-libs/ncurses:0=
|
||||||
|
acl? ( virtual/acl )
|
||||||
|
alsa? ( media-libs/alsa-lib )
|
||||||
|
dbus? ( sys-apps/dbus )
|
||||||
|
games? ( acct-group/gamestat )
|
||||||
|
gmp? ( dev-libs/gmp:0= )
|
||||||
|
gpm? ( sys-libs/gpm )
|
||||||
|
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
|
||||||
|
json? ( dev-libs/jansson:= )
|
||||||
|
kerberos? ( virtual/krb5 )
|
||||||
|
lcms? ( media-libs/lcms:2 )
|
||||||
|
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||||
|
mailutils? ( net-mail/mailutils[clients] )
|
||||||
|
!mailutils? ( acct-group/mail net-libs/liblockfile )
|
||||||
|
selinux? ( sys-libs/libselinux )
|
||||||
|
ssl? ( net-libs/gnutls:0= )
|
||||||
|
systemd? ( sys-apps/systemd )
|
||||||
|
zlib? ( sys-libs/zlib )
|
||||||
|
gui? ( !aqua? (
|
||||||
|
x11-libs/libICE
|
||||||
|
x11-libs/libSM
|
||||||
|
x11-libs/libX11
|
||||||
|
x11-libs/libXext
|
||||||
|
x11-libs/libXfixes
|
||||||
|
x11-libs/libXinerama
|
||||||
|
x11-libs/libXrandr
|
||||||
|
x11-libs/libxcb
|
||||||
|
x11-misc/xbitmaps
|
||||||
|
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||||
|
gif? ( media-libs/giflib:0= )
|
||||||
|
jpeg? ( media-libs/libjpeg-turbo:0= )
|
||||||
|
png? ( >=media-libs/libpng-1.4:0= )
|
||||||
|
svg? ( >=gnome-base/librsvg-2.0 )
|
||||||
|
tiff? ( media-libs/tiff:= )
|
||||||
|
xpm? ( x11-libs/libXpm )
|
||||||
|
imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
|
||||||
|
xft? (
|
||||||
|
media-libs/fontconfig
|
||||||
|
media-libs/freetype
|
||||||
|
x11-libs/libXft
|
||||||
|
x11-libs/libXrender
|
||||||
|
cairo? ( >=x11-libs/cairo-1.12.18[X] )
|
||||||
|
harfbuzz? ( media-libs/harfbuzz:0= )
|
||||||
|
m17n-lib? (
|
||||||
|
>=dev-libs/libotf-0.9.4
|
||||||
|
>=dev-libs/m17n-lib-1.5.1
|
||||||
|
)
|
||||||
|
)
|
||||||
|
gtk? (
|
||||||
|
x11-libs/gtk+:3
|
||||||
|
xwidgets? (
|
||||||
|
|| ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:4 )
|
||||||
|
net-libs/webkit-gtk:=
|
||||||
|
x11-libs/libXcomposite
|
||||||
|
)
|
||||||
|
)
|
||||||
|
!gtk? (
|
||||||
|
motif? (
|
||||||
|
>=x11-libs/motif-2.3:0
|
||||||
|
x11-libs/libXpm
|
||||||
|
x11-libs/libXmu
|
||||||
|
x11-libs/libXt
|
||||||
|
)
|
||||||
|
!motif? (
|
||||||
|
Xaw3d? (
|
||||||
|
x11-libs/libXaw3d
|
||||||
|
x11-libs/libXmu
|
||||||
|
x11-libs/libXt
|
||||||
|
)
|
||||||
|
!Xaw3d? ( athena? (
|
||||||
|
x11-libs/libXaw
|
||||||
|
x11-libs/libXmu
|
||||||
|
x11-libs/libXt
|
||||||
|
) )
|
||||||
|
)
|
||||||
|
)
|
||||||
|
) )"
|
||||||
|
|
||||||
|
DEPEND="${RDEPEND}
|
||||||
|
gui? ( !aqua? ( x11-base/xorg-proto ) )"
|
||||||
|
|
||||||
|
BDEPEND="sys-apps/texinfo
|
||||||
|
virtual/pkgconfig
|
||||||
|
gzip-el? ( app-arch/gzip )"
|
||||||
|
|
||||||
|
IDEPEND="app-eselect/eselect-emacs"
|
||||||
|
|
||||||
|
RDEPEND+=" ${IDEPEND}"
|
||||||
|
|
||||||
|
EMACS_SUFFIX="emacs-${SLOT}"
|
||||||
|
SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
if [[ ${PV##*.} = 9999 ]]; then
|
||||||
|
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
|
||||||
|
configure.ac)
|
||||||
|
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
|
||||||
|
einfo "Emacs branch: ${EGIT_BRANCH}"
|
||||||
|
einfo "Commit: ${EGIT_VERSION}"
|
||||||
|
einfo "Emacs version number: ${FULL_VERSION}"
|
||||||
|
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|
||||||
|
|| die "Upstream version number changed to ${FULL_VERSION}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
default
|
||||||
|
|
||||||
|
# Fix filename reference in redirected man page
|
||||||
|
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
|
||||||
|
|
||||||
|
AT_M4DIR=m4 eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
local myconf
|
||||||
|
|
||||||
|
if use alsa; then
|
||||||
|
use sound || ewarn \
|
||||||
|
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||||
|
myconf+=" --with-sound=alsa"
|
||||||
|
else
|
||||||
|
myconf+=" --with-sound=$(usex sound oss)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! use gui; then
|
||||||
|
einfo "Configuring to build without window system support"
|
||||||
|
myconf+=" --without-x --without-ns"
|
||||||
|
elif use aqua; then
|
||||||
|
einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
|
||||||
|
myconf+=" --with-ns --disable-ns-self-contained"
|
||||||
|
myconf+=" --without-x"
|
||||||
|
else
|
||||||
|
myconf+=" --with-x --without-ns"
|
||||||
|
myconf+=" --without-gconf"
|
||||||
|
myconf+=" $(use_with gsettings)"
|
||||||
|
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||||
|
myconf+=" $(use_with gif)"
|
||||||
|
myconf+=" $(use_with jpeg)"
|
||||||
|
myconf+=" $(use_with png)"
|
||||||
|
myconf+=" $(use_with svg rsvg)"
|
||||||
|
myconf+=" $(use_with tiff)"
|
||||||
|
myconf+=" $(use_with xpm)"
|
||||||
|
myconf+=" $(use_with imagemagick)"
|
||||||
|
|
||||||
|
if use xft; then
|
||||||
|
myconf+=" --with-xft"
|
||||||
|
myconf+=" $(use_with cairo)"
|
||||||
|
myconf+=" $(use_with harfbuzz)"
|
||||||
|
myconf+=" $(use_with m17n-lib libotf)"
|
||||||
|
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||||
|
else
|
||||||
|
myconf+=" --without-xft"
|
||||||
|
myconf+=" --without-cairo"
|
||||||
|
myconf+=" --without-libotf --without-m17n-flt"
|
||||||
|
use cairo && ewarn \
|
||||||
|
"USE flag \"cairo\" has no effect if \"xft\" is not set."
|
||||||
|
use m17n-lib && ewarn \
|
||||||
|
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||||
|
fi
|
||||||
|
|
||||||
|
local f line
|
||||||
|
if use gtk; then
|
||||||
|
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||||
|
while read line; do ewarn "${line}"; done <<-EOF
|
||||||
|
Your version of GTK+ will have problems with closing open
|
||||||
|
displays. This is no problem if you just use one display, but
|
||||||
|
if you use more than one and close one of them Emacs may crash.
|
||||||
|
See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
|
||||||
|
<https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
|
||||||
|
If you intend to use more than one display, then it is strongly
|
||||||
|
recommended that you compile Emacs with the Athena/Lucid or the
|
||||||
|
Motif toolkit instead.
|
||||||
|
EOF
|
||||||
|
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
|
||||||
|
for f in motif Xaw3d athena; do
|
||||||
|
use ${f} && ewarn \
|
||||||
|
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||||
|
done
|
||||||
|
elif use motif; then
|
||||||
|
einfo "Configuring to build with Motif toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=motif"
|
||||||
|
for f in Xaw3d athena; do
|
||||||
|
use ${f} && ewarn \
|
||||||
|
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||||
|
done
|
||||||
|
elif use athena || use Xaw3d; then
|
||||||
|
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||||
|
else
|
||||||
|
einfo "Configuring to build with no toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=no"
|
||||||
|
fi
|
||||||
|
! use gtk && use xwidgets && ewarn \
|
||||||
|
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
|
||||||
|
fi
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Configure a CBUILD directory when cross-compiling to make tools
|
||||||
|
mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die
|
||||||
|
ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit
|
||||||
|
popd >/dev/null || die
|
||||||
|
# Don't try to execute the binary for dumping during the build
|
||||||
|
myconf+=" --with-dumping=none"
|
||||||
|
elif use m68k; then
|
||||||
|
# Workaround for https://debbugs.gnu.org/44531
|
||||||
|
myconf+=" --with-dumping=unexec"
|
||||||
|
else
|
||||||
|
myconf+=" --with-dumping=pdumper"
|
||||||
|
fi
|
||||||
|
|
||||||
|
econf \
|
||||||
|
--program-suffix="-${EMACS_SUFFIX}" \
|
||||||
|
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
|
||||||
|
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||||
|
--localstatedir="${EPREFIX}"/var \
|
||||||
|
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||||
|
--without-compress-install \
|
||||||
|
--without-hesiod \
|
||||||
|
--without-pop \
|
||||||
|
--with-file-notification=$(usev inotify || usev gfile || echo no) \
|
||||||
|
--with-pdumper \
|
||||||
|
$(use_enable acl) \
|
||||||
|
$(use_with dbus) \
|
||||||
|
$(use_with dynamic-loading modules) \
|
||||||
|
$(use_with games gameuser ":gamestat") \
|
||||||
|
$(use_with gmp libgmp) \
|
||||||
|
$(use_with gpm) \
|
||||||
|
$(use_with json) \
|
||||||
|
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||||
|
$(use_with lcms lcms2) \
|
||||||
|
$(use_with libxml2 xml2) \
|
||||||
|
$(use_with mailutils) \
|
||||||
|
$(use_with selinux) \
|
||||||
|
$(use_with ssl gnutls) \
|
||||||
|
$(use_with systemd libsystemd) \
|
||||||
|
$(use_with threads) \
|
||||||
|
$(use_with wide-int) \
|
||||||
|
$(use_with zlib) \
|
||||||
|
${myconf}
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Build native tools for compiling lisp etc.
|
||||||
|
emake -C "${S}-build" src
|
||||||
|
emake lib # Cross-compile dependencies first for timestamps
|
||||||
|
# Save native build tools in the cross-directory
|
||||||
|
cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die
|
||||||
|
# Specify the native Emacs to compile lisp
|
||||||
|
emake -C lisp all EMACS="${S}-build/src/emacs"
|
||||||
|
fi
|
||||||
|
|
||||||
|
emake
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
|
||||||
|
|
||||||
|
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
|
||||||
|
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
|
||||||
|
mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die
|
||||||
|
|
||||||
|
# move info dir to avoid collisions with the dir file generated by portage
|
||||||
|
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} || die
|
||||||
|
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||||
|
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||||
|
|
||||||
|
# movemail must be setgid mail
|
||||||
|
if ! use mailutils; then
|
||||||
|
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||||
|
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||||
|
fi
|
||||||
|
|
||||||
|
# avoid collision between slots, see bug #169033 e.g.
|
||||||
|
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
|
||||||
|
rm -rf "${ED}"/usr/share/{applications,icons} || die
|
||||||
|
rm -rf "${ED}/usr/$(get_libdir)" || die
|
||||||
|
rm -rf "${ED}"/var || die
|
||||||
|
|
||||||
|
# remove unused <version>/site-lisp dir
|
||||||
|
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
|
||||||
|
|
||||||
|
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||||
|
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
|
||||||
|
|
||||||
|
if use systemd; then
|
||||||
|
insinto /usr/lib/systemd/user
|
||||||
|
sed -e "/^##/d" \
|
||||||
|
-e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \
|
||||||
|
-e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \
|
||||||
|
etc/emacs.service | newins - ${EMACS_SUFFIX}.service
|
||||||
|
assert
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use gzip-el; then
|
||||||
|
# compress .el files when a corresponding .elc exists
|
||||||
|
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||||
|
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||||
|
assert "gzip .el failed"
|
||||||
|
fi
|
||||||
|
|
||||||
|
local cdir
|
||||||
|
if use source; then
|
||||||
|
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||||
|
insinto "${cdir}"
|
||||||
|
# This is not meant to install all the source -- just the
|
||||||
|
# C source you might find via find-function
|
||||||
|
doins src/*.{c,h,m}
|
||||||
|
elif has installsources ${FEATURES}; then
|
||||||
|
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||||
|
fi
|
||||||
|
|
||||||
|
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
|
||||||
|
X
|
||||||
|
;;; ${EMACS_SUFFIX} site-lisp configuration
|
||||||
|
X
|
||||||
|
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||||
|
Y (setq find-function-C-source-directory
|
||||||
|
Y "${EPREFIX}${cdir}")
|
||||||
|
X (let ((path (getenv "INFOPATH"))
|
||||||
|
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||||
|
X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
|
||||||
|
X (and path
|
||||||
|
X ;; move Emacs Info dir before anything else in /usr/share
|
||||||
|
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||||
|
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||||
|
X (setq q (cdr q)))
|
||||||
|
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||||
|
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||||
|
EOF
|
||||||
|
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||||
|
|
||||||
|
dodoc README BUGS CONTRIBUTE
|
||||||
|
|
||||||
|
if use gui && use aqua; then
|
||||||
|
dodir /Applications/Gentoo
|
||||||
|
rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||||
|
mv nextstep/Emacs.app \
|
||||||
|
"${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
local DOC_CONTENTS="You can set the version to be started by
|
||||||
|
/usr/bin/emacs through the Emacs eselect module, which also
|
||||||
|
redirects man and info pages. Therefore, several Emacs versions can
|
||||||
|
be installed at the same time. \"man emacs.eselect\" for details.
|
||||||
|
\\n\\nIf you upgrade from a previous major version of Emacs, then
|
||||||
|
it is strongly recommended that you use app-admin/emacs-updater
|
||||||
|
to rebuild all byte-compiled elisp files of the installed Emacs
|
||||||
|
packages."
|
||||||
|
if use gui; then
|
||||||
|
DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||||
|
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||||
|
machine would satisfy basic Emacs requirements under X11.
|
||||||
|
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||||
|
for how to enable anti-aliased fonts."
|
||||||
|
use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
|
||||||
|
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or
|
||||||
|
symlink it into /Applications by yourself."
|
||||||
|
fi
|
||||||
|
tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write
|
||||||
|
a portable dump file due to being cross-compiled.
|
||||||
|
To create this file at run time, execute the following command:
|
||||||
|
\\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable
|
||||||
|
\"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'"
|
||||||
|
readme.gentoo_create_doc
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_preinst() {
|
||||||
|
# move Info dir file to correct name
|
||||||
|
if [[ -d ${ED}/usr/share/info ]]; then
|
||||||
|
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{.orig,} || die
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
elisp-site-regen
|
||||||
|
readme.gentoo_print_elog
|
||||||
|
|
||||||
|
if use livecd; then
|
||||||
|
# force an update of the emacs symlink for the livecd/dvd,
|
||||||
|
# because some microemacs packages set it with USE=livecd
|
||||||
|
eselect emacs update
|
||||||
|
else
|
||||||
|
eselect emacs update ifunset
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
elisp-site-regen
|
||||||
|
eselect emacs update ifunset
|
||||||
|
}
|
@ -0,0 +1,518 @@
|
|||||||
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs
|
||||||
|
|
||||||
|
if [[ ${PV##*.} = 9999 ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
|
||||||
|
EGIT_BRANCH="emacs-28"
|
||||||
|
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
|
||||||
|
S="${EGIT_CHECKOUT_DIR}"
|
||||||
|
SLOT="${PV%%.*}-vcs"
|
||||||
|
else
|
||||||
|
# FULL_VERSION keeps the full version number, which is needed in
|
||||||
|
# order to determine some path information correctly for copy/move
|
||||||
|
# operations later on
|
||||||
|
FULL_VERSION="${PV%%_*}"
|
||||||
|
SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
|
||||||
|
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||||
|
# PV can be in any of the following formats:
|
||||||
|
# 27.1 released version (slot 27)
|
||||||
|
# 27.1_rc1 upstream release candidate (27)
|
||||||
|
# 27.0.9999 live ebuild (slot 27-vcs)
|
||||||
|
# 27.0.90 upstream prerelease snapshot (27-vcs)
|
||||||
|
# 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs)
|
||||||
|
if [[ ${PV} == *_pre* ]]; then
|
||||||
|
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
|
||||||
|
S="${WORKDIR}/emacs"
|
||||||
|
elif [[ ${PV//[0-9]} != "." ]]; then
|
||||||
|
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
|
||||||
|
fi
|
||||||
|
# Patchset from proj/emacs-patches.git
|
||||||
|
SRC_URI+=" https://dev.gentoo.org/~ulm/emacs/${P}-patches-2.tar.xz"
|
||||||
|
PATCHES=("${WORKDIR}/patch")
|
||||||
|
SLOT="${PV%%.*}"
|
||||||
|
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||||
|
fi
|
||||||
|
|
||||||
|
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||||
|
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||||
|
|
||||||
|
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||||
|
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm xwidgets zlib"
|
||||||
|
|
||||||
|
RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
|
||||||
|
sys-libs/ncurses:0=
|
||||||
|
acl? ( virtual/acl )
|
||||||
|
alsa? ( media-libs/alsa-lib )
|
||||||
|
dbus? ( sys-apps/dbus )
|
||||||
|
games? ( acct-group/gamestat )
|
||||||
|
gmp? ( dev-libs/gmp:0= )
|
||||||
|
gpm? ( sys-libs/gpm )
|
||||||
|
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
|
||||||
|
jit? (
|
||||||
|
sys-devel/gcc:=[jit(-)]
|
||||||
|
sys-libs/zlib
|
||||||
|
)
|
||||||
|
json? ( dev-libs/jansson:= )
|
||||||
|
kerberos? ( virtual/krb5 )
|
||||||
|
lcms? ( media-libs/lcms:2 )
|
||||||
|
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||||
|
mailutils? ( net-mail/mailutils[clients] )
|
||||||
|
!mailutils? ( acct-group/mail net-libs/liblockfile )
|
||||||
|
selinux? ( sys-libs/libselinux )
|
||||||
|
ssl? ( net-libs/gnutls:0= )
|
||||||
|
systemd? ( sys-apps/systemd )
|
||||||
|
zlib? ( sys-libs/zlib )
|
||||||
|
gui? ( !aqua? (
|
||||||
|
x11-libs/libICE
|
||||||
|
x11-libs/libSM
|
||||||
|
x11-libs/libX11
|
||||||
|
x11-libs/libXext
|
||||||
|
x11-libs/libXfixes
|
||||||
|
x11-libs/libXinerama
|
||||||
|
x11-libs/libXrandr
|
||||||
|
x11-libs/libxcb
|
||||||
|
x11-misc/xbitmaps
|
||||||
|
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||||
|
gif? ( media-libs/giflib:0= )
|
||||||
|
jpeg? ( media-libs/libjpeg-turbo:0= )
|
||||||
|
png? ( >=media-libs/libpng-1.4:0= )
|
||||||
|
svg? ( >=gnome-base/librsvg-2.0 )
|
||||||
|
tiff? ( media-libs/tiff:= )
|
||||||
|
xpm? ( x11-libs/libXpm )
|
||||||
|
imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
|
||||||
|
xft? (
|
||||||
|
media-libs/fontconfig
|
||||||
|
media-libs/freetype
|
||||||
|
x11-libs/libXft
|
||||||
|
x11-libs/libXrender
|
||||||
|
cairo? ( >=x11-libs/cairo-1.12.18[X] )
|
||||||
|
harfbuzz? ( media-libs/harfbuzz:0= )
|
||||||
|
m17n-lib? (
|
||||||
|
>=dev-libs/libotf-0.9.4
|
||||||
|
>=dev-libs/m17n-lib-1.5.1
|
||||||
|
)
|
||||||
|
)
|
||||||
|
gtk? (
|
||||||
|
x11-libs/gtk+:3
|
||||||
|
xwidgets? (
|
||||||
|
|| ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:4 )
|
||||||
|
net-libs/webkit-gtk:=
|
||||||
|
x11-libs/libXcomposite
|
||||||
|
)
|
||||||
|
)
|
||||||
|
!gtk? (
|
||||||
|
motif? (
|
||||||
|
>=x11-libs/motif-2.3:0
|
||||||
|
x11-libs/libXpm
|
||||||
|
x11-libs/libXmu
|
||||||
|
x11-libs/libXt
|
||||||
|
)
|
||||||
|
!motif? (
|
||||||
|
Xaw3d? (
|
||||||
|
x11-libs/libXaw3d
|
||||||
|
x11-libs/libXmu
|
||||||
|
x11-libs/libXt
|
||||||
|
)
|
||||||
|
!Xaw3d? ( athena? (
|
||||||
|
x11-libs/libXaw
|
||||||
|
x11-libs/libXmu
|
||||||
|
x11-libs/libXt
|
||||||
|
) )
|
||||||
|
)
|
||||||
|
)
|
||||||
|
) )"
|
||||||
|
|
||||||
|
DEPEND="${RDEPEND}
|
||||||
|
gui? ( !aqua? ( x11-base/xorg-proto ) )"
|
||||||
|
|
||||||
|
BDEPEND="sys-apps/texinfo
|
||||||
|
virtual/pkgconfig
|
||||||
|
gzip-el? ( app-arch/gzip )"
|
||||||
|
|
||||||
|
IDEPEND="app-eselect/eselect-emacs"
|
||||||
|
|
||||||
|
RDEPEND+=" ${IDEPEND}"
|
||||||
|
|
||||||
|
EMACS_SUFFIX="emacs-${SLOT}"
|
||||||
|
SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
if [[ ${PV##*.} = 9999 ]]; then
|
||||||
|
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[^0-9.]*\([0-9.]*\).*/\1/p' \
|
||||||
|
configure.ac)
|
||||||
|
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
|
||||||
|
einfo "Emacs branch: ${EGIT_BRANCH}"
|
||||||
|
einfo "Commit: ${EGIT_VERSION}"
|
||||||
|
einfo "Emacs version number: ${FULL_VERSION}"
|
||||||
|
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|
||||||
|
|| die "Upstream version number changed to ${FULL_VERSION}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use jit; then
|
||||||
|
export NATIVE_FULL_AOT=1
|
||||||
|
find lisp -type f -name "*.elc" -delete || die
|
||||||
|
|
||||||
|
# These files ignore LDFLAGS. We assign the variable here, because
|
||||||
|
# for live ebuilds FULL_VERSION doesn't exist in global scope
|
||||||
|
QA_FLAGS_IGNORED="usr/$(get_libdir)/emacs/${FULL_VERSION}/native-lisp/.*"
|
||||||
|
|
||||||
|
# gccjit doesn't play well with ccache or distcc #801580
|
||||||
|
# For now, work around the problem with an explicit LIBRARY_PATH
|
||||||
|
has ccache ${FEATURES} || has distcc ${FEATURES} && tc-is-gcc \
|
||||||
|
&& export LIBRARY_PATH=$("$(tc-getCC)" -print-search-dirs \
|
||||||
|
| sed -n '/^libraries:/{s:^[^/]*::;p}')
|
||||||
|
fi
|
||||||
|
|
||||||
|
default
|
||||||
|
|
||||||
|
# Fix filename reference in redirected man page
|
||||||
|
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
|
||||||
|
|
||||||
|
AT_M4DIR=m4 eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
local myconf
|
||||||
|
|
||||||
|
# Prevents e.g. tests interfering with running Emacs.
|
||||||
|
unset EMACS_SOCKET_NAME
|
||||||
|
|
||||||
|
if use alsa; then
|
||||||
|
use sound || ewarn \
|
||||||
|
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||||
|
myconf+=" --with-sound=alsa"
|
||||||
|
else
|
||||||
|
myconf+=" --with-sound=$(usex sound oss)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use jit; then
|
||||||
|
use zlib || ewarn \
|
||||||
|
"USE flag \"jit\" overrides \"-zlib\"; enabling zlib support."
|
||||||
|
myconf+=" --with-zlib"
|
||||||
|
else
|
||||||
|
myconf+=" $(use_with zlib)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! use gui; then
|
||||||
|
einfo "Configuring to build without window system support"
|
||||||
|
myconf+=" --without-x --without-ns"
|
||||||
|
elif use aqua; then
|
||||||
|
einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
|
||||||
|
myconf+=" --with-ns --disable-ns-self-contained"
|
||||||
|
myconf+=" --without-x"
|
||||||
|
else
|
||||||
|
myconf+=" --with-x --without-ns"
|
||||||
|
myconf+=" --without-gconf"
|
||||||
|
myconf+=" $(use_with gsettings)"
|
||||||
|
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||||
|
myconf+=" $(use_with gif)"
|
||||||
|
myconf+=" $(use_with jpeg)"
|
||||||
|
myconf+=" $(use_with png)"
|
||||||
|
myconf+=" $(use_with svg rsvg)"
|
||||||
|
myconf+=" $(use_with tiff)"
|
||||||
|
myconf+=" $(use_with xpm)"
|
||||||
|
myconf+=" $(use_with imagemagick)"
|
||||||
|
|
||||||
|
if use xft; then
|
||||||
|
myconf+=" --with-xft"
|
||||||
|
myconf+=" $(use_with cairo)"
|
||||||
|
myconf+=" $(use_with harfbuzz)"
|
||||||
|
myconf+=" $(use_with m17n-lib libotf)"
|
||||||
|
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||||
|
else
|
||||||
|
myconf+=" --without-xft"
|
||||||
|
myconf+=" --without-cairo"
|
||||||
|
myconf+=" --without-libotf --without-m17n-flt"
|
||||||
|
use cairo && ewarn \
|
||||||
|
"USE flag \"cairo\" has no effect if \"xft\" is not set."
|
||||||
|
use m17n-lib && ewarn \
|
||||||
|
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||||
|
fi
|
||||||
|
|
||||||
|
local f line
|
||||||
|
if use gtk; then
|
||||||
|
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||||
|
while read line; do ewarn "${line}"; done <<-EOF
|
||||||
|
Your version of GTK+ will have problems with closing open
|
||||||
|
displays. This is no problem if you just use one display, but
|
||||||
|
if you use more than one and close one of them Emacs may crash.
|
||||||
|
See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
|
||||||
|
<https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
|
||||||
|
If you intend to use more than one display, then it is strongly
|
||||||
|
recommended that you compile Emacs with the Athena/Lucid or the
|
||||||
|
Motif toolkit instead.
|
||||||
|
EOF
|
||||||
|
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
|
||||||
|
for f in motif Xaw3d athena; do
|
||||||
|
use ${f} && ewarn \
|
||||||
|
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||||
|
done
|
||||||
|
elif use motif; then
|
||||||
|
einfo "Configuring to build with Motif toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=motif"
|
||||||
|
for f in Xaw3d athena; do
|
||||||
|
use ${f} && ewarn \
|
||||||
|
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||||
|
done
|
||||||
|
elif use athena || use Xaw3d; then
|
||||||
|
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||||
|
else
|
||||||
|
einfo "Configuring to build with no toolkit"
|
||||||
|
myconf+=" --with-x-toolkit=no"
|
||||||
|
fi
|
||||||
|
! use gtk && use xwidgets && ewarn \
|
||||||
|
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
|
||||||
|
fi
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Configure a CBUILD directory when cross-compiling to make tools
|
||||||
|
mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die
|
||||||
|
ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit
|
||||||
|
popd >/dev/null || die
|
||||||
|
# Don't try to execute the binary for dumping during the build
|
||||||
|
myconf+=" --with-dumping=none"
|
||||||
|
elif use m68k; then
|
||||||
|
# Workaround for https://debbugs.gnu.org/44531
|
||||||
|
myconf+=" --with-dumping=unexec"
|
||||||
|
else
|
||||||
|
myconf+=" --with-dumping=pdumper"
|
||||||
|
fi
|
||||||
|
|
||||||
|
econf \
|
||||||
|
--program-suffix="-${EMACS_SUFFIX}" \
|
||||||
|
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
|
||||||
|
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||||
|
--localstatedir="${EPREFIX}"/var \
|
||||||
|
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||||
|
--without-compress-install \
|
||||||
|
--without-hesiod \
|
||||||
|
--without-pop \
|
||||||
|
--with-file-notification=$(usev inotify || usev gfile || echo no) \
|
||||||
|
--with-pdumper \
|
||||||
|
$(use_enable acl) \
|
||||||
|
$(use_with dbus) \
|
||||||
|
$(use_with dynamic-loading modules) \
|
||||||
|
$(use_with games gameuser ":gamestat") \
|
||||||
|
$(use_with gmp libgmp) \
|
||||||
|
$(use_with gpm) \
|
||||||
|
$(use_with jit native-compilation) \
|
||||||
|
$(use_with json) \
|
||||||
|
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||||
|
$(use_with lcms lcms2) \
|
||||||
|
$(use_with libxml2 xml2) \
|
||||||
|
$(use_with mailutils) \
|
||||||
|
$(use_with selinux) \
|
||||||
|
$(use_with ssl gnutls) \
|
||||||
|
$(use_with systemd libsystemd) \
|
||||||
|
$(use_with threads) \
|
||||||
|
$(use_with wide-int) \
|
||||||
|
${myconf}
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Build native tools for compiling lisp etc.
|
||||||
|
emake -C "${S}-build" src
|
||||||
|
emake lib # Cross-compile dependencies first for timestamps
|
||||||
|
# Save native build tools in the cross-directory
|
||||||
|
cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die
|
||||||
|
# Specify the native Emacs to compile lisp
|
||||||
|
emake -C lisp all EMACS="${S}-build/src/emacs"
|
||||||
|
fi
|
||||||
|
|
||||||
|
emake
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
# List .el test files with a comment above listing the exact
|
||||||
|
# subtests which caused failure. Elements should begin with a %.
|
||||||
|
# e.g. %lisp/gnus/mml-sec-tests.el.
|
||||||
|
local exclude_tests=(
|
||||||
|
# Reason: not yet known
|
||||||
|
# mml-secure-en-decrypt-{1,2,3,4}
|
||||||
|
# mml-secure-find-usable-keys-{1,2}
|
||||||
|
# mml-secure-key-checks
|
||||||
|
# mml-secure-select-preferred-keys-4
|
||||||
|
# mml-secure-sign-verify-1
|
||||||
|
%lisp/gnus/mml-sec-tests.el
|
||||||
|
|
||||||
|
# Reason: race condition
|
||||||
|
# Looks like it should be fixed in 29.x at least:
|
||||||
|
# https://debbugs.gnu.org/cgi/bugreport.cgi?bug=55706
|
||||||
|
# files-tests-file-name-non-special-file-in-directory-p
|
||||||
|
%lisp/files-tests.el
|
||||||
|
|
||||||
|
# Reason: permission denied on /nonexistent
|
||||||
|
# (vc-*-bzr only fails if breezy is installed, as they
|
||||||
|
# try to access cache dirs under /nonexistent)
|
||||||
|
#
|
||||||
|
# rmail-undigest-test-multipart-mixed-digest
|
||||||
|
# rmail-undigest-test-rfc1153-less-strict-digest
|
||||||
|
# rmail-undigest-test-rfc1153-sloppy-digest
|
||||||
|
# rmail-undigest-test-rfc934-digest
|
||||||
|
# vc-test-bzr02-state
|
||||||
|
# vc-test-bzr05-rename-file
|
||||||
|
# vc-test-bzr06-version-diff
|
||||||
|
# vc-bzr-test-bug9781
|
||||||
|
%lisp/mail/undigest-tests.el
|
||||||
|
%lisp/vc/vc-tests.el
|
||||||
|
%lisp/vc/vc-bzr-tests.el
|
||||||
|
|
||||||
|
# Reason: fails if bubblewrap (bwrap) is installed
|
||||||
|
# "bwrap: setting up uid map: Permission denied"
|
||||||
|
#
|
||||||
|
# bytecomp-tests--dest-mountpoint
|
||||||
|
%lisp/emacs-lisp/bytecomp-tests.el
|
||||||
|
)
|
||||||
|
|
||||||
|
# See test/README for possible options
|
||||||
|
emake \
|
||||||
|
EMACS_TEST_VERBOSE=1 \
|
||||||
|
EXCLUDE_TESTS="${exclude_tests[*]}" \
|
||||||
|
TEST_BACKTRACE_LINE_LENGTH=nil \
|
||||||
|
check
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
|
||||||
|
|
||||||
|
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
|
||||||
|
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
|
||||||
|
mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.metainfo.xml || die
|
||||||
|
|
||||||
|
# move info dir to avoid collisions with the dir file generated by portage
|
||||||
|
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} || die
|
||||||
|
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||||
|
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||||
|
|
||||||
|
# movemail must be setgid mail
|
||||||
|
if ! use mailutils; then
|
||||||
|
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||||
|
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||||
|
fi
|
||||||
|
|
||||||
|
# avoid collision between slots, see bug #169033 e.g.
|
||||||
|
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
|
||||||
|
rm -rf "${ED}"/usr/share/{applications,icons} || die
|
||||||
|
rm -rf "${ED}/usr/$(get_libdir)/systemd" || die
|
||||||
|
rm -rf "${ED}"/var || die
|
||||||
|
|
||||||
|
# remove unused <version>/site-lisp dir
|
||||||
|
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
|
||||||
|
|
||||||
|
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||||
|
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
|
||||||
|
|
||||||
|
if use systemd; then
|
||||||
|
insinto /usr/lib/systemd/user
|
||||||
|
sed -e "/^##/d" \
|
||||||
|
-e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \
|
||||||
|
-e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \
|
||||||
|
etc/emacs.service | newins - ${EMACS_SUFFIX}.service
|
||||||
|
assert
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use gzip-el; then
|
||||||
|
# compress .el files when a corresponding .elc exists
|
||||||
|
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||||
|
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||||
|
assert "gzip .el failed"
|
||||||
|
fi
|
||||||
|
|
||||||
|
local cdir
|
||||||
|
if use source; then
|
||||||
|
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||||
|
insinto "${cdir}"
|
||||||
|
# This is not meant to install all the source -- just the
|
||||||
|
# C source you might find via find-function
|
||||||
|
doins src/*.{c,h,m}
|
||||||
|
elif has installsources ${FEATURES}; then
|
||||||
|
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||||
|
fi
|
||||||
|
|
||||||
|
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
|
||||||
|
X
|
||||||
|
;;; ${EMACS_SUFFIX} site-lisp configuration
|
||||||
|
X
|
||||||
|
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||||
|
Y (setq find-function-C-source-directory
|
||||||
|
Y "${EPREFIX}${cdir}")
|
||||||
|
X (let ((path (getenv "INFOPATH"))
|
||||||
|
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||||
|
X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
|
||||||
|
X (and path
|
||||||
|
X ;; move Emacs Info dir before anything else in /usr/share
|
||||||
|
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||||
|
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||||
|
X (setq q (cdr q)))
|
||||||
|
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||||
|
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||||
|
EOF
|
||||||
|
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||||
|
|
||||||
|
dodoc README BUGS CONTRIBUTE
|
||||||
|
|
||||||
|
if use gui && use aqua; then
|
||||||
|
dodir /Applications/Gentoo
|
||||||
|
rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||||
|
mv nextstep/Emacs.app \
|
||||||
|
"${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||||
|
fi
|
||||||
|
|
||||||
|
local DOC_CONTENTS="You can set the version to be started by
|
||||||
|
/usr/bin/emacs through the Emacs eselect module, which also
|
||||||
|
redirects man and info pages. Therefore, several Emacs versions can
|
||||||
|
be installed at the same time. \"man emacs.eselect\" for details.
|
||||||
|
\\n\\nIf you upgrade from a previous major version of Emacs, then
|
||||||
|
it is strongly recommended that you use app-admin/emacs-updater
|
||||||
|
to rebuild all byte-compiled elisp files of the installed Emacs
|
||||||
|
packages."
|
||||||
|
if use gui; then
|
||||||
|
DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||||
|
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||||
|
machine would satisfy basic Emacs requirements under X11.
|
||||||
|
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||||
|
for how to enable anti-aliased fonts."
|
||||||
|
use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
|
||||||
|
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or
|
||||||
|
symlink it into /Applications by yourself."
|
||||||
|
fi
|
||||||
|
tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write
|
||||||
|
a portable dump file due to being cross-compiled.
|
||||||
|
To create this file at run time, execute the following command:
|
||||||
|
\\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable
|
||||||
|
\"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'"
|
||||||
|
readme.gentoo_create_doc
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_preinst() {
|
||||||
|
# move Info dir file to correct name
|
||||||
|
if [[ -d ${ED}/usr/share/info ]]; then
|
||||||
|
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{.orig,} || die
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
elisp-site-regen
|
||||||
|
readme.gentoo_print_elog
|
||||||
|
|
||||||
|
if use livecd; then
|
||||||
|
# force an update of the emacs symlink for the livecd/dvd,
|
||||||
|
# because some microemacs packages set it with USE=livecd
|
||||||
|
eselect emacs update
|
||||||
|
else
|
||||||
|
eselect emacs update ifunset
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postrm() {
|
||||||
|
elisp-site-regen
|
||||||
|
eselect emacs update ifunset
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue