Sync with portage [Tue Apr 18 15:12:43 MSK 2023].

master 2420
root 1 year ago
parent b51eddaba0
commit 109f78ff87

Binary file not shown.

Binary file not shown.

@ -3,3 +3,4 @@ DIST aws-cli-1.27.109.gh.tar.gz 2396167 BLAKE2B a4221643b05b076fc9304491041e3b14
DIST aws-cli-1.27.112.gh.tar.gz 2398322 BLAKE2B aad52e0df4da8c59441b6540f0ce3ac2884157260584ecf3b4af8826d4a3e60190100727e725d211b0299552addce19d9ffe903cb8e5b13113df052a2c23f2d2 SHA512 dc06c09963002ef2cc4b419cbeed0f0f99f1ca73140cca9c942f76b49e49905cb51ee1be8a9235b1edfd79543ae25664ea0d283b5bfa45b1346feb7f19cf3b78
DIST aws-cli-1.27.113.gh.tar.gz 2398657 BLAKE2B 00fc53140bb5085713fecfb4182bb37a032d8cd02de4328435a04e2052ee058ca64ab05666562dd9665c86f95afccb94d1230b248408412a024c973b05ddadcd SHA512 238fd1743b008e76a50edbf688020ecf5d0a302f66d288cdc440893a40471525f9cdd85b8f3fa48370d235de2cafed9b616b335541194e5312e3869c5db746dd
DIST aws-cli-1.27.114.gh.tar.gz 2406530 BLAKE2B a566214d83d0238c74e306d82829bc9a512aa03def8a4f3ccffc819ded588427051c524fbd91c32f1dd6f6eafd54e6fe40a1e701c9985a1ec587f362fe1c2920 SHA512 60df892a996b5b5c36478e86f321ae9abe3c2d3faafc3187d0b9442d060633ddeddbeeab7ee42a0eca7cb45b07f8c86bbf9d626362a26c503f10b1c693dd1f2a
DIST aws-cli-1.27.115.gh.tar.gz 2406947 BLAKE2B ef5ac62ef273d92b19d1ef2ea755b35f2353a3aea66e935e44408f11c84320701b7419cfbf36f3ed220d62f3ca3d95ee455b50db4fbed70da7cdef885401090b SHA512 878da56008e5c8cd8347571187713c0624dfedae58bcf02df2082560cdcd082721cd215c4e4bce0b82281bdc61979f4006dd3b860bde65adbf072b45ec89130b

@ -0,0 +1,80 @@
# 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,4 +1,4 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -9,13 +9,16 @@ DESCRIPTION="clog is a colorized log tail utility"
HOMEPAGE="https://taskwarrior.org/docs/clog/"
SRC_URI="https://gothenburgbitfactory.org/download/${P}.tar.gz"
KEYWORDS="~amd64 ~x86 ~x64-macos"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~x64-macos"
RESTRICT="test" # No test suite on tar.gz
PATCHES=(
"${FILESDIR}"/${PN}-1.3.0-gcc13.patch
)
src_prepare() {
default
sed -i -e 's|share/doc/clog|share/clog|' CMakeLists.txt || die
cmake_src_prepare
}

@ -0,0 +1,11 @@
https://github.com/GothenburgBitFactory/libshared/pull/71
--- a/src/libshared/src/JSON2.h
+++ b/src/libshared/src/JSON2.h
@@ -27,6 +27,7 @@
#ifndef INCLUDED_JSON2
#define INCLUDED_JSON2
+#include <cstdint>
#include <string>
class JSON2

@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<!-- maintainer-needed -->
<upstream>
<remote-id type="github">GothenburgBitFactory/clog</remote-id>
</upstream>
</pkgmetadata>

@ -1 +1,2 @@
DIST consul-1.14.3-vendor.tar.gz 40650363 BLAKE2B 1c15333d1a1053da871ccf032c8b21f6b1265a5c222395f217444de3c4472c755d205bad82d83ecdb520081830d11e4c7f113207fe83a7dac4860497518d5be8 SHA512 b1764b845bea8681d72858de4558fdfce4de1faaaf1fb5221eab12d8c9f512efbf1b8a118ea68c829660e23410381a2b71d12fc6d995a64be041d74ad616a663
DIST consul-1.15.2-vendor.tar.gz 43070821 BLAKE2B 39e375cf6fcb17e9a633aa7048588560f8efc93aacad7a332210d509d0b50a74e525be5e56ad9e0aa642b43f68362b8e28beb264c4365a96dd98eab6f4d296d7 SHA512 b00cd569dee83c7850fc13e5591c55dd2903242349ec747cc7ac8f18ebd207858148521c62a1da914610988f95cd543fcc5f5771a1c072c09521a8af0a474ba6

@ -0,0 +1,57 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit go-module systemd
DESCRIPTION="A tool for service discovery, monitoring and configuration"
HOMEPAGE="https://www.consul.io"
GIT_COMMIT="5e08e229dbdaed5adf3ca99afe9df247c51507da"
SRC_URI="https://github.com/zmedico/consul/archive/v${PV}-vendor.tar.gz -> ${P}-vendor.tar.gz"
LICENSE="MPL-2.0 Apache-2.0 BSD BSD-2 CC0-1.0 ISC MIT"
RESTRICT="test"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
BDEPEND="dev-go/gox"
COMMON_DEPEND="
acct-group/consul
acct-user/consul"
DEPEND="${COMMON_DEPEND}"
RDEPEND="${COMMON_DEPEND}"
S=${WORKDIR}/${P}-vendor
src_prepare() {
default
sed -e 's|^GIT_DATE=.*|GIT_DATE=2023-03-30T17:51:19Z|' -i GNUmakefile || die
}
src_compile() {
# The dev target sets causes build.sh to set appropriate XC_OS
# and XC_ARCH, and skips generation of an unused zip file,
# avoiding a dependency on app-arch/zip.
GIT_DESCRIBE="v${PV}" \
GIT_DIRTY="" \
GIT_COMMIT="${GIT_COMMIT}" \
emake dev-build
}
src_install() {
dobin bin/consul
keepdir /etc/consul.d
insinto /etc/consul.d
doins "${FILESDIR}/"*.json.example
keepdir /var/log/consul
fowners consul:consul /var/log/consul
newinitd "${FILESDIR}/consul.initd" "${PN}"
newconfd "${FILESDIR}/consul.confd" "${PN}"
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotated" "${PN}"
systemd_dounit "${FILESDIR}/consul.service"
}

@ -1,4 +1,4 @@
DIST git-credential-gopass-1.15.3-deps.tar.xz 36895816 BLAKE2B 16b480c0e0f40f8b8e5802f25ef45d117dc96853d9fab89c9c7f11bda57bd681fb3f03bf7231a5b848196e079bb6717775389c86e8130e2b1f2238791ff2148b SHA512 7952aa7223839b8d0967b96b3dedbd2361df50b5108210de98237d7445d5941c06d98e295a7f7e25e57e466fd062933f6ef71a630cbbbfbf8d55a035a46c9558
DIST git-credential-gopass-1.15.3.tar.gz 20583 BLAKE2B caf091710a0fa4f6ac461c6beec4fe2add797cbaf7794a4675544fd3e878cd0e57c27280040605cca3879598922912194b70aa70e237a688362dfd9186b5824e SHA512 c3be30d502d77865dba660780903d195c2d328045150627a7a3412ec987f92ed931995e6fc6663a623b32de637cb600f878e633175ce5b813bfcafb0fc4a1b8d
DIST git-credential-gopass-1.15.4-deps.tar.xz 33138508 BLAKE2B 7cbb930e55f1ed53f3ce8c47e51d8066d1a518801d5d364b8c8b90b376910e916e34c5f2493cb062ac5c03e0b9aeb96119f129a8655b6ad3f1d9fec4600cb0a1 SHA512 14ecefd8b36513195cae86d355d974d596e859c46450121350af2d2aaf27f592b54e55e697c200eb89e94959f278e65712dbb4d534d0c1bcbc711fb4db829625
DIST git-credential-gopass-1.15.4.tar.gz 20592 BLAKE2B 2fef319cb7c1d90c89512f305fffbbe88ce5efa25bde798adfebdbf1a29847b1c62d51ca4ece4262c6746e5abb0f31e01804e827de8fdd364fa6bfbe2a9fd414 SHA512 4e456c35fb5fb4d91fada4c2ccafa5a48c9261746653dd363638b1fccfeea647f465d0956146a18bb0d50ffb8bd2c7502497efcac54095db7d37441074aeb6cb
DIST git-credential-gopass-1.15.5-deps.tar.xz 182896696 BLAKE2B 59cd74ff4be1dfd83d221327d041506c41799f67d8559f5a12341a70f2c63e36d03f8f99628ac973a02cbb42ba920366642f124a6315a8ff0d388d384c912b85 SHA512 64f34fecad85562cdf4db48030703b991bb2f6448e1fbd17ab0063f193c328f78e9630b7e64e9f1e4417f011b6a087e2e9fb19fe4adbac3ff36c3a315da933a6
DIST git-credential-gopass-1.15.5.tar.gz 23210 BLAKE2B 18f58e3e72778b9e3493288e2ab546413e09ed49b3d2764ed72d0cc444d4c03afd7fc4a4ecc1f378320296c6c7a488e0ec0e42ee688ad1b51c999c5a030e8339 SHA512 de67f21b27dc4f8e5437b465a748dabf3563393b09aefff08016fe367ffd847b3ad196d034589a05e1723763abf56395ab08372a05b86005cca11a3cc4cfb91f

@ -12,7 +12,7 @@ SRC_URI="https://github.com/gopasspw/git-credential-gopass/archive/v${PV}.tar.gz
LICENSE="MIT Apache-2.0 BSD MPL-2.0 BSD-2"
SLOT="0"
KEYWORDS="amd64 ~ppc64 ~x86"
KEYWORDS="~amd64 ~ppc64 ~x86"
DEPEND=">=dev-lang/go-1.16"
RDEPEND="

@ -1,4 +1,4 @@
DIST gopass-hibp-1.15.3-deps.tar.xz 37693396 BLAKE2B 24bb949660e9e38fe03ab2c6d1af2a4c46501352149d0532a99d1f8bede20aa10936af02d4cc4e94036eee50db21cab7e91c31aa9d15e34b4bf4ae88cc31e284 SHA512 060bf251850efb39590028a40d2922d3a2299550b4259c96b58e52a5ebc99e52bd341811f1a27676c5b5a0ab25d7094de3514e7f2d733caf64537bdb1cee56f6
DIST gopass-hibp-1.15.3.tar.gz 24961 BLAKE2B 477a5bdd285e1ff53a24e1f9f7e860b3226bc936a1283d058ba7b614a9578bdaa36fae9367584b182057c0dc114f10dafebea11149f1d3841ff7d263a7a7edd2 SHA512 da0e894a3429c40a3c5351f09edd21a9eb0552fde7cabee9f33f0b37346ef61af24d66aed0e81cc99d8f1ada716a5bf0182c2e604c1bf2b8d38de077c359ad18
DIST gopass-hibp-1.15.4-deps.tar.xz 33365976 BLAKE2B 15c125423cc52b89a93d650c30a94b95452d923884ef3637c5e04aef9885e89dfce4e1f2205ab18a362eea6624439accdb15420bc8fa950d4755cc741638deb6 SHA512 7f1312372ea9f134e81069de62d97d475c402e899248534923a9e5b3557360004dd92a01ca4bb0f1e3289c599bc027999742a9d24aa6922d8b2653f0e18a1f40
DIST gopass-hibp-1.15.4.tar.gz 24968 BLAKE2B 04c20ac2e29fd4268a01aca998ac32884c41b8e9a5f40772427a54a737ada5bcd6da0224a5e5939db082ddb5cc216deb24c9eea6db9320f8c89618bbff5fcfbe SHA512 64cd2beed3c1089b0be474722caba9511abdfac875c1a47ee29d2ec26591edf613801d0d3687a58d1cb67d9235093922fe5372effc96a373f49b09e7ffec54b1
DIST gopass-hibp-1.15.5-deps.tar.xz 182857584 BLAKE2B 0e0c536b02ac2c22daa299513815351e0890361dd2f3fb7cf2bf33c7c980371321b3e009599242190f51acf14f83be1c32948999e29aa54ad4e6b17a8c9087d0 SHA512 9b81e1a30a111f58b81e2e88a13e955ab406c31922287990968ef21e575d611d7754e0d7e0ee82191fbe6d2f72f3d30cf34b632c5ba548c1d165e218e2803698
DIST gopass-hibp-1.15.5.tar.gz 27096 BLAKE2B df6a87ba6279d3dc0f1403861e5829d2fd5f5ec1b2aadf4c1cb27d6380d50df482af115ec78ae807e20660c5cd1fbd4336849271959647259a5626896b85f923 SHA512 d32ad613a25b52e9fbdc655ac15ebac8456882be9dcc462f186a888e4f82070cfe295f0e359faa4cf01b3c562d01328ce1dcb835df85707957c79a84c52d9fcf

@ -12,7 +12,7 @@ SRC_URI="https://github.com/gopasspw/gopass-hibp/archive/v${PV}.tar.gz -> ${P}.t
LICENSE="MIT Apache-2.0 BSD MPL-2.0 BSD-2"
SLOT="0"
KEYWORDS="amd64 ~ppc64 ~x86"
KEYWORDS="~amd64 ~ppc64 ~x86"
DEPEND=">=dev-lang/go-1.16"
RDEPEND="

@ -1,4 +1,4 @@
DIST gopass-jsonapi-1.15.3-deps.tar.xz 37462824 BLAKE2B c6ec5937e0b029f70f378cc5ebda5b3dd70f426d67e0327f1851f68712fa6fc438841f2b1c6a403283a3a8a339c683970c10d11191d2ca282e0ebcc7c912876e SHA512 d41ff73f693283d33d9c0812ba929cf9fa2df51e616d653652cb2b2ffc8dd56f5b0a123cbdcf0659b579eb7dd6aa7895dd3a20b6df0420dc112dbdf48d5f5a72
DIST gopass-jsonapi-1.15.3.tar.gz 32273 BLAKE2B ed0befce03a00336329f322a9d682a8237e72fc01816b1d3df35813cc360711f19051614fea8562e0fe47e1cd96607f4347cf57a08f5372b0a60896fa9fb88ed SHA512 90f1ddb51ed006e7504895f3b686192eec7571243601c3ab24e7525144c0ed338519a710258b5edd8d5b0b9b0bc8c6c319f37e3fb67ba1c938273be30b739989
DIST gopass-jsonapi-1.15.4-deps.tar.xz 33151484 BLAKE2B 40ce78be07dcc3a795da0e76f5b66b2a2a95b222170655773f5ee62e849780d8d6c618233f19f28af3087e116935d6fc7f5ac0ba653158b5ea27014776d9ed26 SHA512 820f92f7ae7dbe9b546ddf7573c72a3b4a2516610932e499e6e15dbcb6a2fc16a5a8710b02c730d0e7654dd1ac9c0e57eb753df1236ef1b6edc2ae86b2e999b5
DIST gopass-jsonapi-1.15.4.tar.gz 32293 BLAKE2B 5796bf2c8eceb50dc05643e27ec8673ca4bb350a57776b57e6b3aaa7379c643efbafe9eea1662af9615a68adad03ef82eb76fa01ae209fa59a0cffaecfe225a7 SHA512 9471210eb1feb6bdefd88c2c051fd2327ac0915963c6958f9ca2991139437e21c964e7da549d1803367c2b77b6755211921651ffaa2a14925b00826410cb4651
DIST gopass-jsonapi-1.15.5-deps.tar.xz 182924608 BLAKE2B 1f17479dea38308fbf779ce772505af75461217b1d4f76f730b1a7747ffad8d2229712d0c740632c86a1e1a88aff093c67e500a35c12eac09563eaa28febc418 SHA512 bf51d1b9b83ce8056dfd7d88f17f2fea5efbe62a4f44fa68ffe3fdf317758782c9c6313de190db79462bc6a41188615e8995ea9ea7e01215f8f8381fbb597734
DIST gopass-jsonapi-1.15.5.tar.gz 34898 BLAKE2B f0cfe7aba96cf9eed7b1fcdaaeb031a280e3e57515de1e4c8ac72f2fe9ed35d553c21c068aa542d46b96f0726214a50d403acf545b77f1862a7d2a1d6e729d15 SHA512 dbc8de9cf16f1c20af1e94bc1c0a7c168b76db28a889f0f51d04f8a922f6ec70fd6b921ef5413708bd6832f79e82521f48feef3f9eb9742062d1e2c806ff3067

@ -12,7 +12,7 @@ SRC_URI="https://github.com/gopasspw/gopass-jsonapi/archive/v${PV}.tar.gz -> ${P
LICENSE="MIT Apache-2.0 BSD MPL-2.0 BSD-2"
SLOT="0"
KEYWORDS="amd64 ~ppc64 ~x86"
KEYWORDS="~amd64 ~ppc64 ~x86"
DEPEND=">=dev-lang/go-1.16"
RDEPEND="

@ -1,4 +1,4 @@
DIST gopass-summon-provider-1.15.3-deps.tar.xz 37377176 BLAKE2B 52da3b10cd05df981c2f1fc74d3a37b4136ac383f8388965d384573562ba70a52fa6894440f9f19378b24a4df6116ef7882684a4c3c4c2f30a5408715fcb2894 SHA512 e616b6ef0c6d300f62761e63a9184a243d34630269e0a2a85c9294e6b209a349421fba73c21b50df93c2e7ffd70582e162681b50c28c3effecae51d766b1515c
DIST gopass-summon-provider-1.15.3.tar.gz 17573 BLAKE2B 641f84b3ad27fa3af961a3d2463e7b476343238284b45575f9a76b12d811f1426943888129b19c1e60ca22debb560854ebded9b9966c16b0dc91e30f929892ff SHA512 d06734997651492aeb3d6b91bf8b15a48da3c2b7a5e7c8dec6fa40fa90e4e0e05ba89a73e100f27e1523f2c426e30f6fb07faf14151e98fe81e7403a468dcc33
DIST gopass-summon-provider-1.15.4-deps.tar.xz 33138508 BLAKE2B 7cbb930e55f1ed53f3ce8c47e51d8066d1a518801d5d364b8c8b90b376910e916e34c5f2493cb062ac5c03e0b9aeb96119f129a8655b6ad3f1d9fec4600cb0a1 SHA512 14ecefd8b36513195cae86d355d974d596e859c46450121350af2d2aaf27f592b54e55e697c200eb89e94959f278e65712dbb4d534d0c1bcbc711fb4db829625
DIST gopass-summon-provider-1.15.4.tar.gz 17546 BLAKE2B 9c0a8fc50ed4f39139d5b14e389066afc42814ff60036022877fe933b598f100b2169455b4576a2d83d18ea19c8ebce852510940e2c24e8a61073f074509c444 SHA512 6ba06f561379284bc1344ca6982f8bb7ed6641c790bc4907b235fc5a330551f829b21aadb4a72f962692d5d36bde68845f798eb9cc4116787a9015fd2bfc65d3
DIST gopass-summon-provider-1.15.5-deps.tar.xz 182896696 BLAKE2B 59cd74ff4be1dfd83d221327d041506c41799f67d8559f5a12341a70f2c63e36d03f8f99628ac973a02cbb42ba920366642f124a6315a8ff0d388d384c912b85 SHA512 64f34fecad85562cdf4db48030703b991bb2f6448e1fbd17ab0063f193c328f78e9630b7e64e9f1e4417f011b6a087e2e9fb19fe4adbac3ff36c3a315da933a6
DIST gopass-summon-provider-1.15.5.tar.gz 19679 BLAKE2B fbb4606ae6459537fc5f4c05fc7df7cd8191277a6e2435809bb352b92c88616ff93aa90f2597a62ef8c870fae310f659698ba9a6c4a9d7643730d05d3932c485 SHA512 c9009ca4fa282890b596abe9dd357cb550d70eaa74f30a9e5edfa659d1e646cf33bf105167f6627cee1818fe962f83af9e06294139697110bf593cd8a5f91ddb

@ -12,7 +12,7 @@ SRC_URI="https://github.com/gopasspw/gopass-summon-provider/archive/v${PV}.tar.g
LICENSE="MIT Apache-2.0 BSD MPL-2.0 BSD-2"
SLOT="0"
KEYWORDS="amd64 ~ppc64 ~x86"
KEYWORDS="~amd64 ~ppc64 ~x86"
DEPEND=">=dev-lang/go-1.16"
RDEPEND="

@ -1,4 +1,4 @@
DIST gopass-1.15.3-deps.tar.xz 36970888 BLAKE2B e338ba7a6a248694d33116a68aefc3abbe3b6b3a9a86896b5a0c5286824bffb94bb2715c8e9c1fc6ad0715897fa39e8fd46c0734adaafe5318dcdbc0eb0ac4b2 SHA512 2a5a011b170cf2635ab33399dec5661bb7ce297508878a82f38a3b6090c4b75086592da59ff07b81873ee67786be345d3092c69730b7e3c4234b048df1898ae4
DIST gopass-1.15.3.tar.gz 2293686 BLAKE2B f6a5191dbb6642f448103d0b5017d792be2d7ab7d1156ceeebe52dc7bdaf9b027bf417982f0eb7a189ad09a8df06eab1fc2a637c8219a72721d583542ab51372 SHA512 1638c681c4343ff42247d7de5c153e9f992d34fc46b97a5199047c38f2658d968e8bd81029447f7768b39bf432464eb2a24d25215a7cff228e108b3ca4536220
DIST gopass-1.15.4-deps.tar.xz 34045072 BLAKE2B d8525a166df31c99b20a1a7262c2e287b7e429dcd010183585fbac7e58ae8ce4d5430fb936da0b9a85fd8a2f0ff08555d02140a649fddc07c818e11b3bcdb287 SHA512 0953101962d77116e788858652a98ffa3b8c0bd58137f59791da45d6e73cfd5fa39e40edd400c5d881cc549fc1b155b17dda48c6f59d9e06b6c000b259098d2a
DIST gopass-1.15.4.tar.gz 2301976 BLAKE2B f947d0e7b7ba599743404a231d9b09380d0069489543e1cc306eb11a3dbf369368dc8c8a464abac04558907fa6c93982a56575b79b7920ee84a46c94beb815ae SHA512 c6cf67de3b3ace253822ea9890a50ecbd2829eb7b625d05327d1b3549ed3ff6b84d1155f71276fa94b6392012b0c87b4b9e488ca0d14915d40af77fc21325603
DIST gopass-1.15.5-deps.tar.xz 182300292 BLAKE2B 12878d90f59c1e15f18eefed331ffcb195292f9895243918cf6e66cc0d90b95bf0b0fa098ba80fb77ec559476c88b79e56102f191bfee6f6b68ef00dbcd7572b SHA512 1ba502d9074fd722c82a998791d291b2fba98c35339f404757b7ae10b3bb8971329e4a8c74bcf4b589e67dede0bf04b240d8a3db9812f4aa75bbd7f7ef9c1c51
DIST gopass-1.15.5.tar.gz 2304217 BLAKE2B bc20ce1f738e01800def34dac131199c249742cb1383af8bd97b0f441b47163b10ba2a3cc41962c933e343b88ce37c60c74665a599724353f3d5a245cc42cc75 SHA512 4e99db0020e87cb494fa33e6d63a6d3d7af10ebff79a32c95bfb18201f881c5e99ce6593c87cb43a6aa2f38bfcae23b1496eee9fbc88026aad41871ca83a94be

@ -12,7 +12,7 @@ SRC_URI="https://github.com/gopasspw/gopass/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="MIT Apache-2.0 BSD MPL-2.0 BSD-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc64 ~riscv ~x86"
KEYWORDS="amd64 ~ppc64 ~riscv ~x86"
DEPEND=">=dev-lang/go-1.18"
RDEPEND="

@ -12,7 +12,7 @@ SRC_URI="https://github.com/gopasspw/gopass/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="MIT Apache-2.0 BSD MPL-2.0 BSD-2"
SLOT="0"
KEYWORDS="amd64 ~ppc64 ~riscv ~x86"
KEYWORDS="~amd64 ~ppc64 ~riscv ~x86"
DEPEND=">=dev-lang/go-1.18"
RDEPEND="

@ -1,8 +1,6 @@
DIST rsyslog-8.2208.0.tar.gz 3262298 BLAKE2B c13920c755a24d8060335f3281a349d2f32c3c99de7351991e09e62302f6d9f61f4390b7945e30816c7d28afe5f757f6a49b2855e40e3f2f518a423662196b1b SHA512 e63f2465011722eb1bc99676ef6afd66e655af4fb9d751b3d8776499d054c422b195c65fef9ea6b9012d9fb334b7ed8a1c918167fecff389cbb79aa6b74acb73
DIST rsyslog-8.2210.0.tar.gz 3266727 BLAKE2B fc94e7d9b7d828c35e6117ff44d40aa421b79ecd9072cc143177cb77ac6e84adaa5e2b9ae9a66e4bb70d8b93411715f63f0e3707e53c965ef892d9146ec43c92 SHA512 c665b7f7a3c5ef31c9b62b50f815cfbb52db0cbe4a06934f4f1c3cd2a56fb49c319d33857ee92ab843aa5894cac16c16b8eccdf83714f31ab57a95049c4af231
DIST rsyslog-8.2212.0.tar.gz 3268012 BLAKE2B 72347c8281ce537cade415b73a5f15b80ad035ccf9091bcbb72952da32790064a8dd88416d3b7682e6fb77f23dbd51cb2b596587498d4cbccedf21c41c2c6305 SHA512 ca8c3d4c035f9dd5fb6b2d27c66f5e3211458cb1afbf2a73d3e268424a40e3e8746499d7db2e313cf2833f2f73640eb79924770198fb3009ef5461479cf80d15
DIST rsyslog-8.2302.0.tar.gz 3273655 BLAKE2B 41ab639dcc93e325b6e092bc7c2c8fa60ce6192ec20033665930573ed5944af5830fc91aa3e607501c2b4759775efcd55631f82096e18ff1df67f00c3e956d6b SHA512 ebdf179c320425a137d1d20eef15163b342165435879e55531aa0dd9ae459fa35266696cc80fecae63a7e1eef31be51ba4154360e5dbe3c00471a84883c03168
DIST rsyslog-doc-8.2208.0.tar.gz 6563848 BLAKE2B ec68684f1d7d895833f656ba6224a8013213a12b1bc7a28a268f2f629c25a3fbac7c379091f17eae24b6d71278c087e4a4cbed1656554de743fe5616a96559bf SHA512 428c2fe9e5025928d4a9d33f05f4eb20ac1bbde052b7fa2a8a0e45bfffe111eecc94eb2b6ec129de1011f0eabb106b4fb41d402b2a270e4148d3b1081e3b1da0
DIST rsyslog-doc-8.2210.0.tar.gz 6572454 BLAKE2B feb865e3585ee441117f38de61748a6ca99767dae113cfcf2cd0d0a124cc692889be713134163fc91f4ab43b9fe530e3c7c0b84e4bd4e70081c4539297ae1406 SHA512 e7847a9307a91fdf87d6cf91d2391eb75869679905b9598310c456fb3fe1864fc06dbdc649778f5b3788e47ffda0a6d89cb894258e55db441f7df7e74b0ae9f4
DIST rsyslog-doc-8.2212.0.tar.gz 6574799 BLAKE2B b81bef5a15c2c76a517617cb64682c663809f3308ffb2427beca180db7c91b4000fa72041ef83440134917e10ee6f4cd16ff58633d719bdb895c7316a87d8dc9 SHA512 bbecf2b9b9752f7d8a10bc3125c55e4def2a61108a65a717d7d86e7b63634e010ecd31fe40b2256611822d3dd17be20cbf9eb65efd787315723aba6b29cb3a8a
DIST rsyslog-doc-8.2302.0.tar.gz 6586882 BLAKE2B bd79d53670234df46fae79234e03bbee05129dcd5bfe36d74595ce90e91ed8efa2d32cc817dadc9634a67eab7b9e640ad686685495cff75ebb1ff16730c8e904 SHA512 b922a4ed3e7b7235aa4a00c26a45b3b9f3a092679a7ce324543eea0c59cb34ad5a0ee2cac3a37e8964a4bc059cbcc661932496c7ff5765ef4f2da19cb6d35ee2

@ -1,496 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
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 ~ia64 ~ppc64 ~riscv ~sparc ~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
sys-apps/lsb-release
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? (
dev-libs/apr-util
www-servers/civetweb
virtual/libcrypt:=
)
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 )
"
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!"
PATCHES=( "${FILESDIR}"/${PN}-8.2112.0-pr5024-configure.patch )
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
--disable-imfile-tests # Some imfile tests fail (noticed in version 8.2208.0)
$(use_enable test testbench)
$(use_enable test libfaketime)
$(use_enable test extended-tests)
# Input Plugins without dependencies
--enable-imbatchreport
--enable-imdiag
--enable-imdocker
--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
--enable-fmunflatten
$(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 imhiredis)
$(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"
}

@ -1,2 +1,3 @@
DIST syslog-ng-3.38.1.tar.gz 5405048 BLAKE2B 7819cbe0caab7f580ca9f71181c84d64da838a238a6f8b8b79c8816e37e5691e72e1284de57d5066d3c681d8751950e5a32d65a1b1af4e064dd82f2c59899fe3 SHA512 3a3ef5c72d8c211ed2914791380061dcd48ea1ea95f636a1a8649dc5dee731a11e9ae000a37cbeeba624f4053b623b697e6c7f945a81153106c2365f4f09a847
DIST syslog-ng-4.0.1.tar.gz 5452824 BLAKE2B a5c0328f3c88a38dbc07bb7af2a74c0037a6679525a29fca58620a8ef6b05ec13f3942d26767aded0049376ed30ce6a525686501914648a509997c5de2b48eb4 SHA512 5f83ee3cc4935218feb19f3f5065a68099e3ee291d806ad8810499ded9f9ef3b326b4b22841cd736354ed6a2ebc1ce8ae73f6abe981aa6f64c42da9ee3b1e22f
DIST syslog-ng-4.1.1.tar.gz 5556174 BLAKE2B 3e1a9c394b8a88cc7b39a026950760cbc7796d67b62bb3c0f2970fd80c296e9bd75d1057fe81a0d22ac8488789d13607f19abc6aa38b3a38a30ff450ee66e3a0 SHA512 89abb7a53570b6f7c0dc76905c97d207447117f1db1aa0c0da97c17366ea833b6404f9c7fc318436fd01be2bab032eccca9712063a7c683780026e7e52493dc8

@ -13,7 +13,7 @@ SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
IUSE="amqp caps dbi geoip2 http ipv6 json kafka mongodb pacct python redis smtp snmp test spoof-source systemd tcpd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
test? ( python )"

@ -0,0 +1,178 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit autotools python-single-r1 systemd
MY_PV_MM=$(ver_cut 1-2)
DESCRIPTION="syslog replacement with advanced filtering features"
HOMEPAGE="https://www.syslog-ng.com/products/open-source-log-management/"
SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz"
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="amqp caps dbi geoip2 http ipv6 json kafka mongodb pacct python redis smtp snmp test spoof-source systemd tcpd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
test? ( python )"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-libs/glib-2.10.1:2
>=dev-libs/ivykis-0.42.4
>=dev-libs/libpcre-6.1:=
!dev-libs/eventlog
amqp? ( >=net-libs/rabbitmq-c-0.8.0:=[ssl] )
caps? ( sys-libs/libcap )
dbi? ( >=dev-db/libdbi-0.9.0 )
geoip2? ( dev-libs/libmaxminddb:= )
http? ( net-misc/curl )
json? ( >=dev-libs/json-c-0.9:= )
kafka? ( >=dev-libs/librdkafka-1.0.0:= )
mongodb? ( >=dev-libs/mongo-c-driver-1.2.0 )
python? ( ${PYTHON_DEPS} )
redis? ( >=dev-libs/hiredis-0.11.0:= )
smtp? ( net-libs/libesmtp:= )
snmp? ( net-analyzer/net-snmp:0= )
spoof-source? ( net-libs/libnet:1.1= )
systemd? ( sys-apps/systemd:= )
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
dev-libs/openssl:0="
DEPEND="${RDEPEND}
test? ( dev-libs/criterion )"
BDEPEND="
>=sys-devel/bison-3.7.6
sys-devel/flex
virtual/pkgconfig"
DOCS=( AUTHORS NEWS.md CONTRIBUTING.md contrib/syslog-ng.conf.{HP-UX,RedHat,SunOS,doc}
contrib/syslog2ng "${T}/syslog-ng.conf.gentoo.hardened"
"${T}/syslog-ng.logrotate.hardened" "${FILESDIR}/README.hardened" )
PATCHES=(
"${FILESDIR}"/${PN}-3.28.1-net-snmp.patch
)
pkg_setup() {
use python && python-single-r1_pkg_setup
}
src_prepare() {
local f
# disable python-modules test as it requires additional python modules not
# packaged in Gentoo
sed -i '/MAKE/s/.*/exit 0/g' modules/python-modules/test_pymodules.sh || die
use python && python_fix_shebang .
# remove bundled libs
rm -r lib/ivykis || die
# drop scl modules requiring json
if use !json; then
sed -i -r '/cim|elasticsearch|ewmm|graylog2|loggly|logmatic|netskope|nodejs|osquery|slack/d' scl/Makefile.am || die
fi
# drop scl modules requiring http
if use !http; then
sed -i -r '/slack|telegram/d' scl/Makefile.am || die
fi
# use gentoo default path
if use systemd; then
sed -e 's@/etc/syslog-ng.conf@/etc/syslog-ng/syslog-ng.conf@g;s@/var/run@/run@g' \
-i contrib/systemd/syslog-ng@default || die
fi
for f in syslog-ng.logrotate.hardened.in syslog-ng.logrotate.in; do
sed \
-e "s#@GENTOO_RESTART@#$(usex systemd "systemctl kill -s HUP syslog-ng@default" \
"/etc/init.d/syslog-ng reload")#g" \
"${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
done
for f in syslog-ng.conf.gentoo.hardened.in \
syslog-ng.conf.gentoo.in; do
sed -e "s/@SYSLOGNG_VERSION@/${MY_PV_MM}/g" "${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
done
default
eautoreconf
}
src_configure() {
local myconf=(
--disable-docs
--disable-java
--disable-java-modules
--disable-riemann
--enable-manpages
--localstatedir=/var/lib/syslog-ng
--sysconfdir=/etc/syslog-ng
--with-embedded-crypto
--with-ivykis=system
--with-module-dir=/usr/$(get_libdir)/syslog-ng
--with-pidfile-dir=/var/run
--with-python-packages=none
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
$(use_enable amqp)
$(usex amqp --with-librabbitmq-client=system --without-librabbitmq-client)
$(use_enable caps linux-caps)
$(use_enable dbi sql)
$(use_enable geoip2)
$(use_enable http)
$(use_enable ipv6)
$(use_enable json)
$(use_enable kafka)
$(use_enable mongodb)
$(usex mongodb --with-mongoc=system "--without-mongoc --disable-legacy-mongodb-options")
$(use_enable pacct)
$(use_enable python)
$(use_enable redis)
$(use_enable smtp)
$(use_enable snmp afsnmp)
$(use_enable spoof-source)
$(use_enable systemd)
$(use_enable tcpd tcp-wrapper)
)
econf "${myconf[@]}"
}
src_install() {
default
# Install default configuration
insinto /etc/default
doins contrib/systemd/syslog-ng@default
insinto /etc/syslog-ng
newins "${T}/syslog-ng.conf.gentoo" syslog-ng.conf
insinto /etc/logrotate.d
newins "${T}/syslog-ng.logrotate" syslog-ng
newinitd "${FILESDIR}/syslog-ng.rc" syslog-ng
newconfd "${FILESDIR}/syslog-ng.confd" syslog-ng
keepdir /etc/syslog-ng/patterndb.d /var/lib/syslog-ng
find "${D}" -name '*.la' -delete || die
use python && python_optimize
}
pkg_postinst() {
# bug #355257
if ! has_version app-admin/logrotate ; then
elog "It is highly recommended that app-admin/logrotate be emerged to"
elog "manage the log files. ${PN} installs a file in /etc/logrotate.d"
elog "for logrotate to use."
fi
if use systemd; then
ewarn "The service file for systemd has changed to support multiple instances."
ewarn "To start the default instance issue:"
ewarn "# systemctl start syslog-ng@default"
fi
}

Binary file not shown.

@ -1 +1,2 @@
DIST lxqt-archiver-0.7.0.tar.xz 181612 BLAKE2B 41ad378f20a9a8f3d7ccfc7406d480eecfad41c991781f503947b37ee26eec5de38b44ea318507dc209a2f2f6d68db65e0f9cdf61920a47fb2d02dd975960f86 SHA512 d86fd636b1b2345ead8c4dc0161311b3e361d274902c5b34b9aaccf1a0b9af46d329fbec0d2249197b8e1c837d6949f723451f67fdc9ca4c6b7f1c2cf59daeca
DIST lxqt-archiver-0.8.0.tar.xz 181572 BLAKE2B 7bbd2b229cd8c546c86d742c13dac4bd00e24e85a146879290652a9ae41c9ced621738d06284fe285c81f2d5f8e43a5126b9bc61e286342cfb9d7fa935c330ee SHA512 70266581478e75505f708eccee4fd1680c1ff012dd4e99138d0c2d17fb8dfab24d9d5e5453d5d4a3f7a9b8437e8a980c3edf190f3e319400c46a655ba7db4898

@ -0,0 +1,53 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MY_PV="$(ver_cut 1-2)"
inherit cmake xdg-utils
DESCRIPTION="Qt GUI File Archiver"
HOMEPAGE="https://lxqt-project.org/"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/lxqt/${PN}.git"
else
SRC_URI="https://github.com/lxqt/${PN}/releases/download/${PV}/${P}.tar.xz"
KEYWORDS="~amd64 ~loong ~riscv ~x86"
fi
LICENSE="GPL-2 GPL-2+"
SLOT="0"
BDEPEND="
>=dev-qt/linguist-tools-5.15:5
>=dev-util/lxqt-build-tools-0.13.0
"
DEPEND="
dev-libs/glib:2
dev-libs/json-glib
>=dev-qt/qtcore-5.15:5
>=dev-qt/qtgui-5.15:5
>=dev-qt/qtwidgets-5.15:5
>=dev-qt/qtx11extras-5.15:5
>=x11-libs/libfm-qt-1.3:=
"
RDEPEND="${DEPEND}"
pkg_postinst() {
xdg_desktop_database_update
xdg_icon_cache_update
elog "Please note that this is only a graphical front-end, and additional"
elog "packages are needed to have support for specific file formats."
elog "For example, to be able to work with the 7-Zip format, the"
elog "'app-arch/p7zip' package may be used."
elog "For the full list of supported formats, see the 'README.md' file:"
elog "https://github.com/lxqt/lxqt-archiver/blob/master/README.md"
}
pkg_postrm() {
xdg_desktop_database_update
}

Binary file not shown.

@ -1,3 +1,2 @@
DIST certbot-2.3.0.gh.tar.gz 1335613 BLAKE2B af8ff393f92755e8e312f7596fe99abefa35c42cef6fa6688f7f3dd4a310205385fec81366df30d8edfe28d8abd3db447c9e1a3770fe31c3d45c69f04a038660 SHA512 5f52d9b0dd390fc696389a94ff897d803ee062feca50bb66972e197dcd79b0096b337cece2798557c3878903577171fd9afe1f18a4a2131ad7e6a62d0d945ebb
DIST certbot-2.4.0.gh.tar.gz 1333159 BLAKE2B 534c7d090cc8a2b77b2dd8bd8c407409260c18e7741223a327bb240dac9685b1ca152d4a20bb0ec46d8717f89bd3de6f494019c57afe22a74db69641a3ed209e SHA512 c307c97154935a3a01b468d6e91505caba6073b4c01071c87382bdc08c892094d95d75b047047d3221b7d8018a61ce974c0f4defbfdee00b136af920fd579108
DIST certbot-2.5.0.gh.tar.gz 1333903 BLAKE2B 2d30764616d2253fe320ad94182e64cc3e1ce75bd90322fcf7c303a52e32420a57cf84a3acf3f8f4825e058d6fe1e59438b728dacdf9032c4d8797312903825e SHA512 92313e352409d543f260fedee3f376c4750d9428cd39fde3518b162091667173ba6d582b4e91477f7122cf198f24119ecf34b2dce12734afbfc0ebedc395a49e

@ -1,59 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
PARENT_PN="certbot"
PARENT_P="${PARENT_PN}-${PV}"
if [[ "${PV}" == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
EGIT_SUBMODULES=()
EGIT_CHECKOUT_DIR="${WORKDIR}/${PARENT_P}"
else
SRC_URI="
https://github.com/certbot/certbot/archive/v${PV}.tar.gz
-> ${PARENT_P}.gh.tar.gz
"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86"
fi
DESCRIPTION="An implementation of the ACME protocol"
HOMEPAGE="
https://github.com/certbot/certbot
https://letsencrypt.org/
"
LICENSE="Apache-2.0"
SLOT="0"
S="${WORKDIR}/${PARENT_P}/${PN}"
BDEPEND="
test? (
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
dev-python/typing-extensions[${PYTHON_USEDEP}]
)
"
RDEPEND="
dev-python/chardet[${PYTHON_USEDEP}]
>=dev-python/cryptography-2.5.0[${PYTHON_USEDEP}]
>=dev-python/josepy-1.13.0[${PYTHON_USEDEP}]
>=dev-python/pyopenssl-17.5.0[${PYTHON_USEDEP}]
dev-python/pyrfc3339[${PYTHON_USEDEP}]
>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
>=dev-python/requests-2.20.0[${PYTHON_USEDEP}]
>=dev-python/requests-toolbelt-0.3.0[${PYTHON_USEDEP}]
"
distutils_enable_sphinx docs dev-python/sphinx-rtd-theme
distutils_enable_tests pytest

@ -1,3 +1,2 @@
DIST certbot-2.3.0.gh.tar.gz 1335613 BLAKE2B af8ff393f92755e8e312f7596fe99abefa35c42cef6fa6688f7f3dd4a310205385fec81366df30d8edfe28d8abd3db447c9e1a3770fe31c3d45c69f04a038660 SHA512 5f52d9b0dd390fc696389a94ff897d803ee062feca50bb66972e197dcd79b0096b337cece2798557c3878903577171fd9afe1f18a4a2131ad7e6a62d0d945ebb
DIST certbot-2.4.0.gh.tar.gz 1333159 BLAKE2B 534c7d090cc8a2b77b2dd8bd8c407409260c18e7741223a327bb240dac9685b1ca152d4a20bb0ec46d8717f89bd3de6f494019c57afe22a74db69641a3ed209e SHA512 c307c97154935a3a01b468d6e91505caba6073b4c01071c87382bdc08c892094d95d75b047047d3221b7d8018a61ce974c0f4defbfdee00b136af920fd579108
DIST certbot-2.5.0.gh.tar.gz 1333903 BLAKE2B 2d30764616d2253fe320ad94182e64cc3e1ce75bd90322fcf7c303a52e32420a57cf84a3acf3f8f4825e058d6fe1e59438b728dacdf9032c4d8797312903825e SHA512 92313e352409d543f260fedee3f376c4750d9428cd39fde3518b162091667173ba6d582b4e91477f7122cf198f24119ecf34b2dce12734afbfc0ebedc395a49e

@ -1,50 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
PARENT_PN="${PN%-apache}"
PARENT_P="${PARENT_PN}-${PV}"
if [[ "${PV}" == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
EGIT_SUBMODULES=()
EGIT_CHECKOUT_DIR="${WORKDIR}/${PARENT_P}"
else
SRC_URI="
https://github.com/certbot/certbot/archive/v${PV}.tar.gz
-> ${PARENT_P}.gh.tar.gz
"
# Only for amd64, arm64 and x86 because of dev-python/python-augeas
KEYWORDS="amd64 ~arm64 x86"
fi
DESCRIPTION="Apache plugin for Certbot (Lets Encrypt client)"
HOMEPAGE="
https://github.com/certbot/certbot
https://letsencrypt.org/
"
LICENSE="Apache-2.0"
SLOT="0"
S="${WORKDIR}/${PARENT_P}/${PN}"
BDEPEND="
test? ( dev-python/pytest[${PYTHON_USEDEP}] )
"
RDEPEND="
>=app-crypt/acme-${PV}[${PYTHON_USEDEP}]
>=app-crypt/certbot-${PV}[${PYTHON_USEDEP}]
dev-python/python-augeas[${PYTHON_USEDEP}]
"
distutils_enable_tests pytest

@ -1,3 +1,2 @@
DIST certbot-2.3.0.gh.tar.gz 1335613 BLAKE2B af8ff393f92755e8e312f7596fe99abefa35c42cef6fa6688f7f3dd4a310205385fec81366df30d8edfe28d8abd3db447c9e1a3770fe31c3d45c69f04a038660 SHA512 5f52d9b0dd390fc696389a94ff897d803ee062feca50bb66972e197dcd79b0096b337cece2798557c3878903577171fd9afe1f18a4a2131ad7e6a62d0d945ebb
DIST certbot-2.4.0.gh.tar.gz 1333159 BLAKE2B 534c7d090cc8a2b77b2dd8bd8c407409260c18e7741223a327bb240dac9685b1ca152d4a20bb0ec46d8717f89bd3de6f494019c57afe22a74db69641a3ed209e SHA512 c307c97154935a3a01b468d6e91505caba6073b4c01071c87382bdc08c892094d95d75b047047d3221b7d8018a61ce974c0f4defbfdee00b136af920fd579108
DIST certbot-2.5.0.gh.tar.gz 1333903 BLAKE2B 2d30764616d2253fe320ad94182e64cc3e1ce75bd90322fcf7c303a52e32420a57cf84a3acf3f8f4825e058d6fe1e59438b728dacdf9032c4d8797312903825e SHA512 92313e352409d543f260fedee3f376c4750d9428cd39fde3518b162091667173ba6d582b4e91477f7122cf198f24119ecf34b2dce12734afbfc0ebedc395a49e

@ -1,50 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
PARENT_PN="${PN%-nginx}"
PARENT_P="${PARENT_PN}-${PV}"
if [[ "${PV}" == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
EGIT_SUBMODULES=()
EGIT_CHECKOUT_DIR="${WORKDIR}/${PARENT_P}"
else
SRC_URI="
https://github.com/certbot/certbot/archive/v${PV}.tar.gz
-> ${PARENT_P}.gh.tar.gz
"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86"
fi
DESCRIPTION="Nginx plugin for Certbot (Lets Encrypt client)"
HOMEPAGE="
https://github.com/certbot/certbot
https://letsencrypt.org/
"
LICENSE="Apache-2.0"
SLOT="0"
S="${WORKDIR}/${PARENT_P}/${PN}"
BDEPEND="
test? ( dev-python/pytest[${PYTHON_USEDEP}] )
"
RDEPEND="
>=app-crypt/acme-${PV}[${PYTHON_USEDEP}]
>=app-crypt/certbot-${PV}[${PYTHON_USEDEP}]
>=dev-python/pyopenssl-17.5.0[${PYTHON_USEDEP}]
>=dev-python/pyparsing-2.2.1[${PYTHON_USEDEP}]
"
distutils_enable_tests pytest

@ -1,3 +1,2 @@
DIST certbot-2.3.0.gh.tar.gz 1335613 BLAKE2B af8ff393f92755e8e312f7596fe99abefa35c42cef6fa6688f7f3dd4a310205385fec81366df30d8edfe28d8abd3db447c9e1a3770fe31c3d45c69f04a038660 SHA512 5f52d9b0dd390fc696389a94ff897d803ee062feca50bb66972e197dcd79b0096b337cece2798557c3878903577171fd9afe1f18a4a2131ad7e6a62d0d945ebb
DIST certbot-2.4.0.gh.tar.gz 1333159 BLAKE2B 534c7d090cc8a2b77b2dd8bd8c407409260c18e7741223a327bb240dac9685b1ca152d4a20bb0ec46d8717f89bd3de6f494019c57afe22a74db69641a3ed209e SHA512 c307c97154935a3a01b468d6e91505caba6073b4c01071c87382bdc08c892094d95d75b047047d3221b7d8018a61ce974c0f4defbfdee00b136af920fd579108
DIST certbot-2.5.0.gh.tar.gz 1333903 BLAKE2B 2d30764616d2253fe320ad94182e64cc3e1ce75bd90322fcf7c303a52e32420a57cf84a3acf3f8f4825e058d6fe1e59438b728dacdf9032c4d8797312903825e SHA512 92313e352409d543f260fedee3f376c4750d9428cd39fde3518b162091667173ba6d582b4e91477f7122cf198f24119ecf34b2dce12734afbfc0ebedc395a49e

@ -1,62 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
if [[ "${PV}" == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
EGIT_SUBMODULES=()
EGIT_CHECKOUT_DIR="${WORKDIR}/${P}"
else
SRC_URI="
https://github.com/certbot/certbot/archive/v${PV}.tar.gz
-> ${P}.gh.tar.gz
"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86"
fi
DESCRIPTION="Lets Encrypt client to automate deployment of X.509 certificates"
HOMEPAGE="
https://github.com/certbot/certbot
https://letsencrypt.org/
"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="selinux"
S="${WORKDIR}/${P}/${PN}"
BDEPEND="
test? (
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pytest-cov[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
dev-python/typing-extensions[${PYTHON_USEDEP}]
)
"
# See certbot/setup.py for acme >= dep
RDEPEND="
>=app-crypt/acme-${PV}[${PYTHON_USEDEP}]
>=dev-python/ConfigArgParse-0.9.3[${PYTHON_USEDEP}]
>=dev-python/configobj-5.0.6[${PYTHON_USEDEP}]
>=dev-python/cryptography-2.5.0[${PYTHON_USEDEP}]
>=dev-python/distro-1.0.1[${PYTHON_USEDEP}]
>=dev-python/josepy-1.13.0[${PYTHON_USEDEP}]
>=dev-python/parsedatetime-2.4[${PYTHON_USEDEP}]
dev-python/pyrfc3339[${PYTHON_USEDEP}]
>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
selinux? ( sec-policy/selinux-certbot )
"
distutils_enable_sphinx docs dev-python/sphinx-rtd-theme
distutils_enable_tests pytest

@ -32,7 +32,7 @@ RESTRICT="!test? ( test )"
DEPEND="
>=dev-libs/libassuan-2.5.0
>=dev-libs/libgcrypt-1.8.0:=
>=dev-libs/libgpg-error-1.29
>=dev-libs/libgpg-error-1.38
>=dev-libs/libksba-1.3.5
>=dev-libs/npth-1.2
>=net-misc/curl-7.10

Binary file not shown.

@ -1,2 +1,2 @@
DIST eclass-manpages-20230222.tar.xz 410124 BLAKE2B 7da1a4b539c227c386fd27e3fb6de4d0dc79c4b648491547df0dceb50ba93f27ef1105234ad5c0f6c6a409c8837e8a629029215782471651606375332223cc2e SHA512 4def4388095c82a187f5dfc6ffb0eff59cec922c606b0202e7995ff81209fa9fe48e22fb05d4b07be4cd7e10f78ef4f87d01362099333ad49619e45c4b8b9411
DIST eclass-manpages-20230329.tar.xz 409168 BLAKE2B 5913afcf95174540546d238cc637689fe0c7de2013f4271ac3feee749eb2fede8b741e2409ba09060fd5c36941e36ee504be8a584201d04b368886f50abfd3ea SHA512 ee43c47f26b474acec2f778a5bf05c752198d2f5cce959a337eaa674465c92869e213dd4aea8243671825cea80bbfbec7040cac283354de4e8feeefeace46d32
DIST eclass-manpages-20230417.tar.xz 409620 BLAKE2B 0e1b3cce23ee9f2a91b87c5de89819eca8fd50101e813ecf56c8a1d4147bf33006505425be95a2f1693ec084fbf9409c2aaf1dccf6d9cbf244e71ee1c0e1498d SHA512 2cef6f30e917979b9f56c11f953c27a8048842b432fc6641ea06daf479bc202d9ea2f8ce26769584f317bf3cde2c2f9736d2605546be1b1a10ea557177639de3

Binary file not shown.

@ -1 +1,2 @@
DIST ghostwriter-2.1.6.tar.gz 7757010 BLAKE2B a450093b1f072aeea7e6a6e27abbdb2c427387eb70b5ed2a5e49ea1f33fd9c4e4014742cc7905e644ab39838c488d9eddb79e0d3c87bde7ce6528cd810b02e15 SHA512 10ee557a07f468cc12391c2b5f77a6667aef76429b58bfdc03df32dd1cd8c44a61fe77da5318d5b23758ede40a5f8ab89cf4573a09708a6abc2d12ec5ceb71ad
DIST ghostwriter-23.03.90.tar.xz 3064632 BLAKE2B f4e9605b37ff86f37af901a2b371fc6c03240df984ac8fda5fb568642b381b62838d01ce6845a0b8655ad7eae8c01eb54618a4de84f44ee601f11ba116ae53d3 SHA512 9c732c15e0f85334989e8f6e389f9e69e15dbd50081b44fba9fcfaa770f09a41213f7f2d70d4911cea340a7f97859f44489b9127544b461a0b2c5d7bc3eded77

@ -0,0 +1,37 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
KDE_ORG_CATEGORY="office"
ECM_HANDBOOK="optional"
KFMIN=5.104.0
QTMIN=5.15.5
inherit ecm gear.kde.org
DESCRIPTION="Cross-platform, aesthetic, distraction-free markdown editor"
HOMEPAGE="https://ghostwriter.kde.org/"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
RDEPEND="
app-text/hunspell:=
>=dev-qt/qtgui-${QTMIN}:5
>=dev-qt/qtsvg-${QTMIN}:5
>=dev-qt/qtwebchannel-${QTMIN}:5
>=dev-qt/qtwebengine-${QTMIN}:5[widgets]
>=dev-qt/qtwidgets-${QTMIN}:5
virtual/opengl
"
DEPEND="${RDEPEND}
>=dev-qt/qtconcurrent-${QTMIN}:5
"
BDEPEND="
>=dev-qt/linguist-tools-${QTMIN}:5
virtual/pkgconfig
"
DOCS=( CHANGELOG.md README.md )

Binary file not shown.

@ -14,14 +14,8 @@ S="${WORKDIR}"/a.el-${PV}
LICENSE="GPL-3+"
KEYWORDS="~amd64 ~x86"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="test? ( app-emacs/ert-runner )"
DOCS=( CHANGELOG.md README.md )
SITEFILE="50${PN}-gentoo.el"
src_test() {
ert-runner -L . -L test --reporter ert+duration --script test || die
}
elisp-enable-tests ert-runner test

@ -13,20 +13,11 @@ SRC_URI="https://github.com/sergeyklay/${PN}/archive/${PV}.tar.gz
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="
test? (
app-emacs/buttercup
app-emacs/undercover
)
"
BDEPEND="test? ( app-emacs/undercover )"
DOCS=( NEWS README.org )
ELISP_TEXINFO="bnf-mode.texi"
SITEFILE="50${PN}-gentoo.el"
src_test() {
buttercup -L . -L test --traceback full || die
}
elisp-enable-tests buttercup test

@ -25,15 +25,9 @@ RDEPEND="
"
BDEPEND="${RDEPEND}"
elisp-enable-tests ert test
src_compile() {
elisp_src_compile
elisp-make-autoload-file
}
src_test() {
${EMACS} ${EMACSFLAGS} ${BYTECOMPFLAGS} \
-L . -L test \
-l test/${PN}-core-test.el \
-l test/${PN}-env-test.el \
-f ert-run-tests-batch-and-exit || die "tests failed"
}

@ -14,15 +14,9 @@ S="${WORKDIR}"/emacs-${P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="test? ( app-emacs/buttercup )"
DOCS=( CHANGELOG.md README.org )
ELISP_REMOVE="eglot-fsharp.el test/integration-tests.el"
SITEFILE="50${PN}-gentoo.el"
src_test() {
buttercup -L . -L test --traceback full || die
}
elisp-enable-tests buttercup test

@ -0,0 +1 @@
DIST jinx-0.6.tar.xz 16692 BLAKE2B 49a391b55b809dd6749ce264b4f732b5c902c1ea67a39e681327ddcf8f728271897202ecd282dc5c4999cf336a5b37c89b9863239291fc944cee352920d99189 SHA512 aa253836d04aec04674ca6dbbd1e73719bee78f4d01d4d93eef2cb05f4c3edc6ec4a11c352fb8952780523f187581fae9c33ea0d30416ec30803b7a196d03f60

@ -0,0 +1,4 @@
;;; app-emacs/jinx site configuration -*- lexical-binding: t; -*-
(add-to-list 'load-path "@SITELISP@")
(add-to-list 'load-path "@EMACSMODULES@")
(load "@SITELISP@/jinx-autoload.el" nil t)

@ -0,0 +1,32 @@
From 3c0aa84130e07cf69219adce8a3494e76977fc26 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@gentoo.org>
Date: Tue, 18 Apr 2023 01:29:55 +0200
Subject: [PATCH] Try searching the whole load-path for jinx-mod
* jinx.el (jinx--load-module): Try to (locate-library module)
before trying to look for a sibling file of jinx.el.
---
https://github.com/minad/jinx/pull/42
jinx.el | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/jinx.el b/jinx.el
index d0cf56d..e829d50 100644
--- a/jinx.el
+++ b/jinx.el
@@ -472,6 +472,11 @@ If VISIBLE is non-nil, only include visible overlays."
(let ((default-directory
(file-name-directory (locate-library "jinx.el" t)))
(module (file-name-with-extension "jinx-mod" module-file-suffix)))
+
+ (let ((located-module (locate-library module)))
+ (when located-module
+ (setq module located-module)))
+
(unless (file-exists-p module)
(let ((command
`("cc" "-I." "-O2" "-Wall" "-Wextra" "-fPIC" "-shared"
--
2.40.0

@ -0,0 +1,44 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
NEED_EMACS=27.1
inherit edo elisp toolchain-funcs
DESCRIPTION="Enchanted Spell Checker for GNU Emacs"
HOMEPAGE="https://github.com/minad/jinx"
# Recompressed from ELPA.
SRC_URI="https://dev.gentoo.org/~arsen/${P}.tar.xz"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
app-text/enchant:2
>=app-emacs/compat-29.1.4.0
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
SITEFILE="50${PN}-gentoo.el"
PATCHES=(
"${FILESDIR}"/jinx-0.6-try-load-path.patch
)
src_compile() {
edo $(tc-getCC) -fPIC -Wall -Wextra -shared \
$($(tc-getPKG_CONFIG) --cflags --libs enchant-2) \
${CPPFLAGS} ${CFLAGS} ${LDFLAGS} -o jinx-mod.so jinx-mod.c
elisp_src_compile
}
src_install() {
elisp-make-autoload-file
elisp_src_install
elisp-modules-install "${PN}" jinx-mod.so
}

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>arsen@gentoo.org</email>
<description>Arsen Arsenović</description>
</maintainer>
<maintainer type="person">
<email>sam@gentoo.org</email>
<description>Sam James</description>
</maintainer>
<maintainer type="project">
<email>gnu-emacs@gentoo.org</email>
<name>Gentoo GNU Emacs project</name>
</maintainer>
<upstream>
<remote-id type="github">minad/jinx</remote-id>
</upstream>
</pkgmetadata>

@ -16,8 +16,6 @@ S="${WORKDIR}"/${PN}-${COMMIT}
LICENSE="GPL-3+"
KEYWORDS="amd64"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
>=app-emacs/dash-2.18.0
@ -33,7 +31,6 @@ BDEPEND="
app-emacs/deferred
app-emacs/ecukes
app-emacs/el-mock
app-emacs/ert-runner
app-emacs/espuds
app-emacs/flycheck
app-emacs/undercover
@ -46,15 +43,13 @@ ELISP_REMOVE="test/lsp-clangd-test.el test/lsp-common-test.el
test/lsp-integration-test.el" # Remove failing tests
SITEFILE="50${PN}-gentoo.el"
elisp-enable-tests ert-runner "${S}" -t "!no-win" -t "!org"
src_compile() {
elisp_src_compile
elisp-compile clients/*.el
}
src_test() {
ert-runner -L clients --reporter ert+duration -t "!no-win" -t "!org" || die
}
src_install() {
elisp_src_install
elisp-install ${PN}/clients clients/*

@ -18,8 +18,10 @@ KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
DOCS=( ../AUTHORS.md ../CHANGELOG.md ../CONTRIBUTING.md ../README{,.ja}.md ../docs )
SITEFILE="50${PN}-gentoo.el"
elisp-enable-tests ert "${S}" -L ../tests -l ../tests/php-mode-test.el
src_test() {
touch ../tests/project/1/.git || die
${EMACS} ${EMACSFLAGS} -L . -L ../tests -l ../tests/php-mode-test.el \
-f ert-run-tests-batch-and-exit || die "tests run failed"
elisp_src_test
}

@ -7,7 +7,7 @@ NEED_EMACS=26.1
DISTUTILS_USE_PEP517=no
PYTHON_COMPAT=( python3_{9..11} )
inherit elisp distutils-r1
inherit distutils-r1 elisp
DESCRIPTION="Tree style project file explorer"
HOMEPAGE="https://github.com/Alexander-Miller/treemacs/"
@ -17,8 +17,6 @@ SRC_URI="https://github.com/Alexander-Miller/${PN}/archive/${PV}.tar.gz
LICENSE="GPL-3+"
KEYWORDS="~amd64"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
app-emacs/ace-window
@ -29,10 +27,7 @@ RDEPEND="
app-emacs/pfuture
app-emacs/s
"
BDEPEND="
${RDEPEND}
test? ( app-emacs/buttercup )
"
BDEPEND="${RDEPEND}"
BYTECOMPFLAGS="-L . -L src/elisp"
PATCHES=(
@ -44,6 +39,8 @@ PATCHES=(
DOCS=( Changelog.org Extensions.org README.org screenshots )
SITEFILE="50${PN}-gentoo.el"
elisp-enable-tests buttercup test
src_prepare() {
distutils-r1_src_prepare
@ -62,10 +59,6 @@ src_compile() {
elisp-compile src/elisp/*.el
}
src_test() {
buttercup ${BYTECOMPFLAGS} -L test --traceback full || die "tests failed"
}
src_install() {
elisp-install ${PN} src/elisp/*.el{,c}
elisp-site-file-install "${FILESDIR}/${SITEFILE}"

@ -16,15 +16,12 @@ KEYWORDS="~amd64 ~x86"
SITEFILE="50${PN}-gentoo.el"
elisp-enable-tests ert "${S}" -l typescript-mode-tests.el
src_compile() {
elisp-compile ${PN}.el
}
src_test() {
${EMACS} ${EMACSFLAGS} -L . -l typescript-mode-tests.el \
-f ert-run-tests-batch-and-exit || die
}
src_install() {
elisp-install ${PN} ${PN}.el{,c}
elisp-site-file-install "${FILESDIR}/${SITEFILE}"

Binary file not shown.

@ -1,6 +1,7 @@
DIST dxvk-1.10.3.tar.gz 1204407 BLAKE2B 3507ffe4abf9c45f2a138b05e7cf706322a6bf3d2e9ae86a9d6216b206c09f79eac696ee7dfe33d0bef55e727f51301c36eb89bfa3b3f429d7d5fafc1eebdcb4 SHA512 8995b231b3f3650beda04c01f30186d10a373075a4774b4ecbfb3bbeb4de99c57555f1db0611e5c61c6a411a7215e0faf228f9861f6b7adae6fc365e8056f7e3
DIST dxvk-2.0.tar.gz 943397 BLAKE2B 7d59050e8ac3f9be311d11323cc0057d84c3b730360fe9e064ff4a5e2db5bffea5bae3214da366c60295ec5f1577ab08e2776274c9aaff7a7de1b9f2cefa836a SHA512 98537bdec2b5e4f2ead5b93ab49db717e0706fe771a82a6ef1e5b5792c1bdd3f417cd6b6b2deadb1397b8a0740445fa88b9fb6c1f73510cc5c0e7ae35d65bcac
DIST dxvk-2.1.tar.gz 960078 BLAKE2B ad8ea7eb000237914d9116a8fbfde13fde3dc00d428ebfe41aacb9373c6509112545ef1942b4cbc96a18338c3d07c2c494d0454236721e220ee5f5731a5c27b9 SHA512 10d919ba2612f665a20f7c72605967adeea94d8414bee45878f9df42ad263fa5ebfc7a76319173dce054ffe9b9cdc919ff7a136042f3f4e64142844c943bdef7
DIST dxvk-caf31033d7.tar.gz 961317 BLAKE2B 2686ed36c00325dfbe0351f6c8e3f6787f4568ee8baa73fa51e8e743f4f8f47174fd309d13de2fba6ea1d8496aaba6976bfba02685d2eeaa17cb9cc019620f5e SHA512 e8b9939d5de2642f445cead2d8168b02b05ee18dbb1b5dc89b5abd285cf75a9a229026e482b665b322baab0b82c2ccba9c23ead0f1c6e5f9d1cbfa60307d39ea
DIST dxvk-libdisplay-info-d39344f466.tar.bz2 81232 BLAKE2B af76ccd3c40bc953008bc30d222c72f90bdc77f47f767b6e7423efaa0ec89d746396a755160b5470e219a15a0aa392be6066aab12921b45a1adb35d88132cd97 SHA512 79b4bf325cefc39bc587233bd82ff64c927ca5f829b8172d213c3d47af725c8dc7fe33576a8e96a869075ee2a8f00d165f3aa9e6c472e862a47e5c800b2b3315
DIST dxvk-spirv-headers-0bcc624926.tar.gz 437771 BLAKE2B 08815e36ad99b84777e38ad0c5616b6608a552f993e7f67433f2b8e20de81e9bce41420ac5998f5b67bca70a92ce70aed91b238990bd431c7b97070dfb0c5a60 SHA512 5995cf75d5605d41e9643bca81c195ef5aaa17d596e0282807f6fa8f8c494f7b63a41d611c535ae43dc3d609436aabef1e0d89626f37e6f20bad17b5e122e32c
DIST dxvk-vulkan-headers-98f440ce68.tar.gz 1691979 BLAKE2B bf6fd288f16df7adcb5cebeb6e13713db1c26a0b833dead2fb522227861abc60b2d0cda8e3f46f8e89cccb629e01081ba27763989ad6fd336c60a475b198c1c8 SHA512 69238d37d0af0162e0fd68094cd2fa9baa320497d34a9de491dea086c23291d0815b51e89218b1f0ee2b3314cbc8ac1809d6edb15ca51fcb282fe1e2b39a1a77

@ -0,0 +1,173 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
MULTILIB_COMPAT=( abi_x86_{32,64} )
inherit flag-o-matic meson-multilib python-any-r1
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/doitsujin/dxvk.git"
EGIT_SUBMODULES=(
# picky about headers and is cross-compiled making -I/usr/include troublesome
include/{spirv,vulkan}
subprojects/libdisplay-info
)
else
HASH_DXVK=caf31033d711460e86781b16a4d9b0f41fa9e817 # matches proton-8.0.1c
HASH_SPIRV=0bcc624926a25a2a273d07877fd25a6ff5ba1cfb
HASH_VULKAN=98f440ce6868c94f5ec6e198cc1adda4760e8849
HASH_DISPLAYINFO=d39344f466caae0495ebac4d49b03a886d83ba3a
SRC_URI="
https://github.com/doitsujin/dxvk/archive/${HASH_DXVK}.tar.gz
-> ${PN}-${HASH_DXVK::10}.tar.gz
https://github.com/KhronosGroup/SPIRV-Headers/archive/${HASH_SPIRV}.tar.gz
-> ${PN}-spirv-headers-${HASH_SPIRV::10}.tar.gz
https://github.com/KhronosGroup/Vulkan-Headers/archive/${HASH_VULKAN}.tar.gz
-> ${PN}-vulkan-headers-${HASH_VULKAN::10}.tar.gz
https://gitlab.freedesktop.org/JoshuaAshton/libdisplay-info/-/archive/${HASH_DISPLAYINFO}/${PN}-libdisplay-info-${HASH_DISPLAYINFO::10}.tar.bz2"
S="${WORKDIR}/${PN}-${HASH_DXVK}"
KEYWORDS="-* ~amd64 ~x86"
fi
# setup_dxvk.sh is no longer provided, fetch old until a better solution
SRC_URI+=" https://raw.githubusercontent.com/doitsujin/dxvk/cd21cd7fa3b0df3e0819e21ca700b7627a838d69/setup_dxvk.sh"
DESCRIPTION="Vulkan-based implementation of D3D9, D3D10 and D3D11 for Linux / Wine"
HOMEPAGE="https://github.com/doitsujin/dxvk/"
LICENSE="ZLIB Apache-2.0 MIT"
SLOT="0"
IUSE="+abi_x86_32 crossdev-mingw +d3d9 +d3d10 +d3d11 debug +dxgi"
REQUIRED_USE="
|| ( d3d9 d3d10 d3d11 dxgi )
d3d10? ( d3d11 )
d3d11? ( dxgi )"
BDEPEND="
${PYTHON_DEPS}
dev-util/glslang
!crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] )"
pkg_pretend() {
[[ ${MERGE_TYPE} == binary ]] && return
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
local tool=-w64-mingw32-g++
for tool in $(usev abi_x86_64 x86_64${tool}) $(usev abi_x86_32 i686${tool}); do
if ! type -P ${tool} >/dev/null; then
eerror "With USE=crossdev-mingw, it is necessary to setup the mingw toolchain."
eerror "For instructions, please see: https://wiki.gentoo.org/wiki/Mingw"
use abi_x86_32 && use abi_x86_64 &&
eerror "Also, with USE=abi_x86_32, will need both i686 and x86_64 toolchains."
die "USE=crossdev-mingw is set but ${tool} was not found"
elif [[ ! $(LC_ALL=C ${tool} -v 2>&1) =~ "Thread model: posix" ]]; then
eerror "${PN} requires GCC to be built with --enable-threads=posix"
eerror "Please see: https://wiki.gentoo.org/wiki/Mingw#POSIX_threads_for_Windows"
die "USE=crossdev-mingw is set but ${tool} does not use POSIX threads"
fi
done
fi
}
src_prepare() {
if [[ ${PV} != 9999 ]]; then
rmdir include/{spirv,vulkan} subprojects/libdisplay-info || die
mv ../SPIRV-Headers-${HASH_SPIRV} include/spirv || die
mv ../Vulkan-Headers-${HASH_VULKAN} include/vulkan || die
mv ../libdisplay-info-${HASH_DISPLAYINFO} subprojects/libdisplay-info || die
fi
default
sed "/^basedir=/s|=.*|=${EPREFIX}/usr/lib/${PN}|" \
"${DISTDIR}"/setup_dxvk.sh > setup_dxvk.sh || die
}
src_configure() {
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
# AVX has a history of causing issues with this package, disable for safety
# https://bugs.winehq.org/show_bug.cgi?id=43516
# https://bugs.winehq.org/show_bug.cgi?id=45289
append-flags -mno-avx
if [[ ${CHOST} != *-mingw* ]]; then
if [[ ! -v MINGW_BYPASS ]]; then
unset AR CC CXX RC STRIP
filter-flags '-fstack-clash-protection' #758914
filter-flags '-fstack-protector*' #870136
filter-flags '-fuse-ld=*'
filter-flags '-mfunction-return=thunk*' #878849
fi
CHOST_amd64=x86_64-w64-mingw32
CHOST_x86=i686-w64-mingw32
CHOST=$(usex x86 ${CHOST_x86} ${CHOST_amd64})
strip-unsupported-flags
fi
multilib-minimal_src_configure
}
multilib_src_configure() {
# multilib's ${CHOST_amd64}-gcc -m32 is unusable with crossdev,
# unset again so meson eclass will set ${CHOST}-gcc + others
use crossdev-mingw && [[ ! -v MINGW_BYPASS ]] && unset AR CC CXX RC STRIP
local emesonargs=(
--prefix="${EPREFIX}"/usr/lib/${PN}
--{bin,lib}dir=x${MULTILIB_ABI_FLAG: -2}
$(meson_use {,enable_}d3d9)
$(meson_use {,enable_}d3d10)
$(meson_use {,enable_}d3d11)
$(meson_use {,enable_}dxgi)
$(usev !debug --strip) # portage won't strip .dll, so allow it here
)
meson_src_configure
}
multilib_src_install_all() {
dobin setup_dxvk.sh
dodoc README.md dxvk.conf
find "${ED}" -type f -name '*.a' -delete || die
}
pkg_preinst() {
[[ -e ${EROOT}/usr/$(get_libdir)/dxvk/d3d11.dll ]] && DXVK_HAD_OVERLAY=
}
pkg_postinst() {
if [[ ! ${REPLACING_VERSIONS} ]]; then
elog "To enable ${PN} on a wine prefix, you can run the following command:"
elog
elog " WINEPREFIX=/path/to/prefix setup_dxvk.sh install --symlink"
elog
elog "See ${EROOT}/usr/share/doc/${PF}/README.md* for details."
elog "Note: setup_dxvk.sh is unofficially temporarily provided as it was"
elog "removed upstream, handling may change in the future."
elif [[ -v DXVK_HAD_OVERLAY ]]; then
# temporary warning until this version is more widely used
elog "Gentoo's main repo ebuild for ${PN} uses different paths than most overlays."
elog "If you were using symbolic links in wine prefixes it may be necessary to"
elog "refresh them by re-running the command:"
elog
elog " WINEPREFIX=/path/to/prefix setup_dxvk.sh install --symlink"
elog
elog "Also, if you were using /etc/${PN}.conf, ${PN} is no longer patched to load"
elog "it. See ${EROOT}/usr/share/doc/${PF}/README.md* for handling configs."
fi
if [[ ! ${REPLACING_VERSIONS##* } ]] ||
ver_test ${REPLACING_VERSIONS##* } -lt 2.0
then
elog
elog ">=${PN}-2.0 requires drivers and Wine to support vulkan-1.3, meaning:"
elog ">=wine-*-7.1 (or >=wine-proton-7.0), and >=mesa-22.0 (or >=nvidia-drivers-510)"
elog "For details, see: https://github.com/doitsujin/dxvk/wiki/Driver-support"
fi
}

@ -0,0 +1,82 @@
DIST aho-corasick-0.7.18.crate 112923 BLAKE2B 4f6947d1aacf89ccfab0592cdc55fa61ef09cea38231d3f758765dbce328a810c0b588be4ba96e81d64955379ee005722d22a7aec39caea6e72342245d7ca34f SHA512 7a23b16231a90d23ee60ad4c81bc225410599a4560d33d3a203138fc540c39cf1000100fed3aed40dcc371c3635656a3792545dca5dd1aefbde00d8774eebd00
DIST ansi_term-0.12.1.crate 24838 BLAKE2B f636772c34e2d68cda7b8d3b2b86abda074585a62bd2654812ce92384244655a9197fa66e6939e19a674c0148ca605313d83de262bb18c2339a8a4eb4438a791 SHA512 b840e28b3e7700689a69a39659b1e066560078dd4a58326b91a028915819e7af883399ee53e920db68fd974c58d35bb1ddf8d427af5937d5f696f57c4376b671
DIST arc-swap-1.5.0.crate 65351 BLAKE2B c6b278134f6e29551302e27131639f3bc5bfb05042701cf6c12aab1697f211be0942c44919d374e196ef03605fb137334b42decb9623a137b6ead346586c2105 SHA512 b668a75b2ac77a9d2df3f29b70c8c22e5a961cd2478cd76b6d313e0e1ff809508887451b895f057d160860daa4b02cb74616ab8daa34d163ef3f42a009842031
DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
DIST capng-0.2.2.crate 24372 BLAKE2B 85cf114065f0f103a9e1583b11316c5a95d5fa9f5d70448d6749b500e956e4e0c6fb4f5e548a7490d191ecae878624cf4ea1e5026a6a0796c8269e68de70af0e SHA512 132c446c36eea932a39190b284d0f2f29b50334dc8c12043e43a1eca90366a56b2034c649740ac20ded4c4e91147226237cbbcee18750dfc281154644d6fa0db
DIST cc-1.0.78.crate 61375 BLAKE2B fd4765cf5ae0dc7018bc6b56298cd0fa9bf6fe23545e845670d98ce73baee55354e77c6d87cf047f10b074f3d742deca8b5631a250c69b347b4a1fc653965d43 SHA512 b85bec4c75cb1d1e252419052e9dd22b6892e54ea36195ff483a04f785b5b103e82b30b778459fd45324ffeb2463aa4f5696baeff2779c25ffe9f65eb99ae893
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST clap-2.34.0.crate 202210 BLAKE2B f383adf1d757ac4b68995132b33837686ce451f85a02a8d05d2c746da398510d05d46330f3efade063c3952aacb1754cdac73dd0afcae0df5340a89f9353aa1c SHA512 c648a761b9996a7e7464a538bb53621bae22090b846a42c3b729beca3363958ae67e3da9f93f58b10a10e043cadf7ff930388680d168646178c2824177832db8
DIST env_logger-0.10.0.crate 36574 BLAKE2B d2f387682059fe9b4566ab995be449c58c57b8df5e5d8bd5ffd153aec1648721d8a9606d3f9aa034263651f5182043e08b6cc08d2d29d0a10f6cc61df9949a06 SHA512 4dd02f9d333a1f15657167ef4bd403eda5426cad17e0a4a43fa20cc65449345eb4d3fae2d6b10a3480016b9e23497fac13ed7e70b40c9450ef430be9f910d3e4
DIST errno-0.2.8.crate 9276 BLAKE2B b73738deb47d1f76ec91ffd15558126d32312647b82677290725669edb01b8f34a503172fad6518ebf0ffb1633ef0afaf0750982b9384a9fb87833d31721c9a8 SHA512 1f513743224cd9a9b7e4caaf33dab075a4a79efa90c9f46c9edfb0c8600daccd3ad2677ba2116621e19fcf8be456954da5d611cbcea4b6f1410f7731828b50d1
DIST errno-dragonfly-0.1.2.crate 1810 BLAKE2B 781fc26dce5c33d83b9a1fd9be2b2ce9ac2559aaa858957ba6777e143b1e44cdfee48e1b47e3c91a95075a51921d1a421d0b45eb3d8de827cf4dd0ad744a7d8c SHA512 f853f1e1b8dd0f359a8f9a0399b3384c1103cd090d96e2b2204f91a40d40a9eb99383d4aa6a11e5470c51557afacf452d4be2049600d4235d27f59870fa3b916
DIST error-chain-0.12.4.crate 29274 BLAKE2B d082bcbce47411477e8b597cfcb76985cc7d6f1696926cb5314f4e84d2c8642939f5263e110aaef56353ec086a21874a8093bcea1d018be81c86ca42c2c30d71 SHA512 c0ee19a0ba2d79ff1843148d0a582045e68466a9dc429e5f3c8a3a75bc1b6e0d6de03ad69fce851bc0297e7db77b2c6817a13c37e1c3d4501ed41db8a454bf79
DIST futures-0.3.21.crate 49935 BLAKE2B 290dee4f7662a473d82350092c0b12a8270f6d6f5eae9e4f7e06a6abf59e2d9f2d33e5e62e2682fcf6e109d62f651cb37cc467cff2b20f909c72b5fee2cb7683 SHA512 723fc190e4480fd812a852656fa6509a188f0d06adaa1c22ef24ec4afa7688a1c5d3961e5747f0812d073fc672b0e084af6ad5e5c3fac3ea5829466f993ad865
DIST futures-channel-0.3.21.crate 31961 BLAKE2B e99f37cdeac080c8bad2203fd24b48eb62918166104ad6cc531c8f69d3e0c3a5898ca27f19693e2c143c9049a7d244f9af49c16fecba12233f9ff3f1d01e35b0 SHA512 1c10398657949b53b6df196cc44d8e4b3acf53b4d216be6f5f631d8d4b500f5c344e2cc7d5a5642ced6c5480511884611be6d429f56a0ede4a716b9c5770cb76
DIST futures-core-0.3.21.crate 14601 BLAKE2B 73cf4c422202a34cc9916509939fab35c79093a6c1aeb99e35763727ebf7d3a06ae203684d75cc74183126f0cd95dec1530f136ffa2a0e69354c554883e3af1f SHA512 b60e7892436ae28fd2240f17816f934f6caeac663d67b8efc7d519ebb4b0bd921f0b732b6176bd4b472d2fbe346d39a37ba394401e15afa93af8294ceea90976
DIST futures-executor-0.3.21.crate 17306 BLAKE2B fd20c7f0b4996cc10e3b3d30c33630a42eb363ac7893af4ae5c476775f8e4f3724ac110648252b6cfb3d652d352fbb5833f2647d262a4c9ae999de1fa69340a3 SHA512 597732f96b45ce21f7a0b149f62cbdc54a80010bfa5421ab0ef7345c501c197e1c8fe109fa2d1c813d5c2e872b4670e0fbd96e2572cc3e9d2646b68f41c78147
DIST futures-io-0.3.21.crate 8902 BLAKE2B e673342d3fae38e5a6a20c426cb1127353b4f15459b4c27965566f7f2f13f0773ac6ec850b0d679bea37d68219edf6cdf9d1d0eed37665f4ff51c6060b81466c SHA512 dde0b79c4ba208b4c92c699457efbd515d331ab612e7b7df735b3b8f2ab79c012b1ba329ddaf488d68c69dbd119aa231b833b81cbcc0cc2f55c656f68dc22bd8
DIST futures-macro-0.3.21.crate 11250 BLAKE2B c981e6d56971871102591b6f14b13f0ed75499627036a90cb71a3e11336db408d11ea0feced484d9ea454f47db74951cdfc61377af267359f46cb6462cc3fc0c SHA512 a79d4d3e487d05554e05e04f3a631fc9f0b5c525126eed550ee30eed16d4c457dc39274efac53558a3e33a119b8ff9d3552ce367359eec9d05105b278f7677c0
DIST futures-sink-0.3.21.crate 7843 BLAKE2B e4b2ac98e89063b23f5e278cad1df6b1b8f96d4f0df0cb035ce964b91e97f88c7a1a4942ec4010cb4da5f4a3552487eac048a6bfcef637bf1f83398d7f38758e SHA512 9bc0198495b5a1b3ed25fcf7b053a235bba0a43a4226bf085d9027537a57add1686ef61179bf2a2d4189945cb5a05a8d64ba6e6e647c56245666d51e138d113f
DIST futures-task-0.3.21.crate 11815 BLAKE2B ec3f2e2c025e9a482d86912099e68722099c22c0024669906036504d0e70998cb9cb5fd4074928d21847334611ccfcbe6d3e2f686c4d4d7d4436f1e7f501b8fb SHA512 8f3b27865d8c7a290471903297e3c0b52caebfaa55550a4738d7915008b893fce67c7d9ae5c5bd03f2a42ee72a96aa0245c4bee70fc06977b3493eb81bca2033
DIST futures-util-0.3.21.crate 153768 BLAKE2B b3bc5632bbc7616d33f74361d68f83e0cb051125475101c84212ea2bd03307e927cd125e2f93eeb0f84946cc45d3964a590dcbfcfff88d3ce1970f127e71aed3 SHA512 ff952fb74a54e793de943e3aee2ac771357bf9f1aa5de89af128868c46a6b44e414fc4ea97f2d9b201ff7ff41023e119f1adf90d314343ff53ab987c3e07f5d4
DIST heck-0.3.3.crate 10260 BLAKE2B dc756738081d855583f239908f671e9b5dde72ebfb577f6387b1a169817a03332464cf67071708a4c4f06b1ecb222118e8c719073ccdec1c0f938e5ef378b13f SHA512 b3498e033f44e03206421e565efec5b21d13107b60d35e4476331c44e6effd75c81f7678f2452c822eefd581209a2ffefd2034779cca2d8b4fac4583bbbf777f
DIST hermit-abi-0.1.19.crate 9979 BLAKE2B 801e8052b85341cca388ada9db4b06bb1bd7b64474185b2ad06c0256b9e597639bd3dd4ba0053ea010f922e53969a4ab47b90d451fd9b94c8f2324055d151ea1 SHA512 1c877fcd562b15d2de9c151fd6c5f3ea4bf48abcb799e6139a180ffad5d64b632f0000d5707bbd92ff23a0e5f349157b9e0f5be8b50f03680b0fa47315dbb78a
DIST hermit-abi-0.2.6.crate 13027 BLAKE2B 4df5306639511a5f69594e903f8ce62482cbbfbfe272a91a12f407483dbac4e87c2d7e5668cc06ca5c0fc149ca93a3152fe6ad4bb3b96cacf56a22cb635e5b7f SHA512 bad8442bb822a9c99f6536db16523c80f5139af6a139bcc359c03725c59ff935816e2ecc5c491dc362ac75ab2dff41ab1e9dd29431f5e9a109b60eb9b7a8dc28
DIST hostname-0.3.1.crate 9272 BLAKE2B cafcae4bbfadd51d058e3daba3e63d897bc3418723d8e843fd941d9663dbc89dba131c77d14ce7a5da552650ea3c40c4e418c88d465f1bab2fa20c178596852d SHA512 a90407996353c9bcf5b76be03713e3a0455ac80a50892e77a508744cf436a938ddb87ef97d8cc91ec7dc4353cfb7bca0fd28c90a72f8a9ecd4f29220d174edf2
DIST humantime-2.1.0.crate 16749 BLAKE2B e2ae8325b037fb175b9200cc5c1944ce579056c6662cce307beb6701894552362a25e371aad65f8fb9384945b48815ca74bb8b544a32e0a5845b7edd30b918c9 SHA512 3bf29ddd1391d82897c22baa0ff3ed58ef6d6959859f1f8ed54d324caba5b6fb4422e56790511ce82f902cd11467f93c8ab7fc7b0e0bdb719308a4d0a446ae0c
DIST io-lifetimes-1.0.4.crate 35815 BLAKE2B 82485bfd13189e0762f7ee501626df0dc741e152ceed875b91a3eed6608686b6d454939d557a0bc29d6bf210dfbe56d35131beb141fc95250544ab8ea992482b SHA512 1b2b151561dc79d1467b699590b2cb5d4acb39f75f38c05a94edb6d1543acca541b5a083fe7b606bc37cb2812692b7acb46996d0b096b96b0b085d31b1336775
DIST is-terminal-0.4.2.crate 7577 BLAKE2B 4ef84768184203b58e2b155256e35fd7a74169a8ccd52c3c74aec7fb1d6aeefe6232d049bbdbc40ede2acaf0be453caac19f758cf1abfd04cd1efdf4022c4996 SHA512 ce4997ce1b9f529a7d1b875985cde02440de288a0e823f2f5a9647e3a34658c5f56d254e85dd7f152a987f08f428bd82ce7e2af626c4b3c76cde50e8ae1e9374
DIST itoa-1.0.2.crate 11112 BLAKE2B e277db8e2f506d4d20b6888b609d9726d594e1cb2c9f21df60a8cf8dcbad1808d8c1bdb0b7857ce7734b92c0f23fb1ec56f8564e779f27eea953d0ffbfcd3f84 SHA512 44a732a102d60b58e72fe76c43a1d185fa12ff08d04eeacf03234368552f84d3de87a2ea0a6e7a56b8cfa74cb6f6697005afcee26f45afe0c2fc7dce5da3b593
DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
DIST libc-0.2.139.crate 638983 BLAKE2B e92b296cf8c916e10e859722ed75f4790401662ff7aa2fe8ed84ef9b94a00538768be33c272f0881e42da887c8c43e1fd44d061343386216492a76fe5d308598 SHA512 ff5fae517c49c382dee9b1d7479b65b0a818780453e5c00c416847d02f42186e2fcf19a8a8dc5e9cc2611300690c6ad324f9c0f0e8172e913a1b781fb7c0b5b4
DIST libseccomp-sys-0.2.1.crate 11601 BLAKE2B 77a77d6d1f8ef6f5d25b35c299032738aed0a404c855cb84223a7334caaf57392fbd8f0915f4f7be875778176cbfdb8062eabbf7b414d3c198a5d41cd8a466ef SHA512 b53b13f95ac487d802ff051b4cee32be2dfa496846f3104a61399a53a07a7d6fb6b4543088765858e26e060e22e0bf93f8cb3a175c06dae4719f918844c7fe0f
DIST linux-raw-sys-0.1.4.crate 878981 BLAKE2B b8708b06e48ef4e32d820b5a0e25ce12d3d985d729a2d7fef46d0b3b4518b4ad40d037d4689fb2270f9c2583dc031d0f4daa26500197e6c32bffd1400357934c SHA512 ee6d5a7a08b183681ae00890784c9e6b72e4c987b2ce2d7de6e7308b7a10d4a2b532db3d5121523bf5d4a262407f3033af4f4c1fd9f09be091523366fa30d768
DIST log-0.4.17.crate 38028 BLAKE2B b46be3719fc0a53e50b1f342762e188587e9f1ceb692c72473ce2663edfb8253742d30024e68c1444780ab7fc0e2d5b0601b8ea7228dc3405a9342a57548e605 SHA512 2477d88db42b1d92c30708d88823212e236f613b3465e85eb425f83f8d16fadfaf0352f06c2999a1852102edd2f6ffb10ecb539d8a3b6c48f552a25622ccffa2
DIST match_cfg-0.1.0.crate 7153 BLAKE2B d3f40e5b16761fed337ed18dfa9db9e46aa2ad84ca8cfdc7cf7c72bea7cff8d084d95214ce013b3515bbe5b1ad4b8527bfce692569551e4588fe6f396a8a96ee SHA512 fd36f2b128d70a0f278e708bcb3274d90380229f754aed7ce9b808138b0189d5e1a07e0ba732216f788a530cecddcdd980559b3f71efa371d8805a213ff8f2d6
DIST memchr-2.5.0.crate 65812 BLAKE2B 57966413a1f933dcb2d2d4ccb29c247070f65a83299b2a9f5aa83f5a48a5c5f1c4c7c632fa63bd19f9508e9291e7258db2f16e2813a56fd84e0856f70f1e67ab SHA512 444a163b484c233e78c0e2e4d51f01ce2da93d7d29f516a95e4b0866b20bdfd3f34137653abed53eb70387991ee3e2b5937d8d4360a85bbcb50a93005a75defa
DIST num_cpus-1.13.1.crate 14752 BLAKE2B 27490aeee349d944c29e50b44e9a84371030459353a9316ffaa0245ce499df4424e39c25a81be59cd0f9a19c3214c78bdc7a84b632059282be476d8f918c44d6 SHA512 91ffe0ec792228621d6c2d5cc544ef4744203d19fc9c86e0aad2610038c43aca0448b6c27d82979417a0f6c939ea73523303a44c28df0d1c1b8d09814d5306d9
DIST num_threads-0.1.6.crate 7334 BLAKE2B 416efdf395b0299b6b01e1508823afdda08cf67ca54e1d644fc5accbb0490945a492a34bc5ba70c3e838e6405d17ddce164ef87468bd9da27097de8994ad9577 SHA512 b2d9897e29e59353379b6372a629fc7f9afc89f777b4410eaeac7b4729527948a8dbecb175f056899f9076693ef855cc0d40e725cc54f28af588fbac5f7ce3b6
DIST pin-project-lite-0.2.9.crate 27713 BLAKE2B d6985b5add432fb6287d1b0c9fb0cc91a195f82c5a748a9ea430e4ba884717ec7b16d730b5ea62de5b2bfead1771da2d115b3776e12e605f70f2538f374a28fa SHA512 cef0b77233adca712db1183f780732ea577cf1b27c2643de221d54c837c75ce749f907e24a967be7474812c7682cba613a3fc5d553a9578a1b80569da0e562e4
DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B ef918c5efaf2545ab38787c8d0c07315af00431139e4dff66346bf798e3a429f91d12a79776c150412fdda0b158a72badd5e1044ac4d6917f8482d4b5a7110b7 SHA512 8a47bc9d3e24e9561d1e384d8f5a633284c2cf9b5e6733c5f9d1dbfe1870ccc8e2152482852e50b551cecb68e009148585b910ffb0508a7b4875598eaf8657db
DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823 SHA512 2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
DIST proc-macro2-1.0.40.crate 40559 BLAKE2B d83cf7283393a82ca65263afc375d123bd2f48b719c9eab6859c52dc0c2b9b4b5af3090a0ebd0fedf0e1095f0bafbc443016f751a0485dc654bcd80a6f71e326 SHA512 bb179524bd41e36735010a7ec53e096359ffc3688ab97806a45ed9cfb17e8688ce352bbb8cd3bd4e15a4299e8500603c86591b17cfa31bca03f299f6f6347992
DIST quote-1.0.20.crate 28160 BLAKE2B db257025f64817b1b58eecb8e64e63f1782d8a7fcb42ed6c3364254ec5a26705e49ce0637c880b0355b99a77473ce3083caae2cfabbd1a1a7e4fc826bae2cb7c SHA512 d12f4a425273b99ae655da11fcf5dad2609e20ad3e7d85cde08c7d09f444a5c7a3505470bad2d48b1ba8ea59ebf38ab87aa1052e47ec414acfc05dcb07d438be
DIST regex-1.6.0.crate 239329 BLAKE2B 646405e681ce572ebe2dc51a3339f0f8204143f9b2b8f8e74a4c80379c43c3581363ad347610a384d5ee831cf1425f74ddd944a658b1da2461e8068c5521af69 SHA512 b4861c9cc13d6fb224f67057fd3522f04576591b3d7ae0d3581dce42ca2b2bff96860cf2a7f4dfab00e46a1d29e6473f6723c4aeb02e34ed6d5f205b66f07876
DIST regex-syntax-0.6.27.crate 297300 BLAKE2B 4ca1a2e23d04e29c5925085ea4ab7ebcc398dfe135eacaab1e686aa8be43a110a28e8bec05a6910183f9a6bb1fd0d635fcb1a60b5a6a03fed4d2cf937a542a5a SHA512 5cc705a5dda08cbdb4dbcf3fa98763cadcda13d9c3ba407b35f3e88d77935efc2704bb40b3fb5aad7dfbad0df43bcb4c4cad9732defb954e2228a0739f7c37c6
DIST rustix-0.36.7.crate 290628 BLAKE2B 7cdd5610fb4c5c079de7dcead4d68115c67f56c77404dfc946c80062c44b5e821bdfc1c1ac0139c1dc9f0a7bca73076136dc38a08c1b690f00ea25353b9259ba SHA512 ed5fd16a983d2549ed8322c261fca651fcf0dfbd4eb1f7bfd896830434768fac317cb410ccf7fcf03a8b29f3de7dd06b5b4b6be4278f4fa13aa46f462a9e66ad
DIST slab-0.4.7.crate 16647 BLAKE2B f567cc822e7b84f64a0b0372c22a0463d260871455a33df025808a0476dcbbd4e051a117d8896d96d6d3d0655b7c296cd691ca22edc54486440f4e2e0f5d1e1b SHA512 659a9ca3323fc2cd236f6cb9eb6feeae8a1f5fa046fa239a34cd7a5ab8a7eadb9e5977e8d5cc41e9138900dd7c75ebc0601480771c5fdd2e084ee76619b82521
DIST strsim-0.8.0.crate 9309 BLAKE2B 40a8be506c43ee1ffe006ddc7dee98c3d418bdd205d57b78f5d1e4c9312feb57e1eaf952e02d92d4e0932db240c6fba45beb06ea8c4fc6de1cf1faa8b6a3a939 SHA512 1d55a8d946cd55f5f37d06aea536549ded95739fa58c0f2da285a0041154c181f663682bdcac643aa198b3e762d694a04f058db985c62ebe22b5c16327ba6d34
DIST structopt-0.3.26.crate 53798 BLAKE2B 04be64637d18bcc87d261320668023459a42c167bb5a4c52216df556a7dd19be28032e7bf759cbcf710a3729a9dfaeb20c29f37f35fcf33533db583ac4fa049a SHA512 dec27090b57107473c9d398db68bde3b1b5191e7c7980d7d2c20fc723f92c64a6cf1d391d5122a103222c4262253d8073fd0fdfb11c74f235af79b2ae0caf069
DIST structopt-derive-0.4.18.crate 20996 BLAKE2B 2ae17e0d365a7ce7a4d0e007513623ee0d5acf45afdc3844114e02975b855fd1a9f7df404a24044cf33a3a4cc4142eccc34d1e97925646d54d460a89baa28275 SHA512 68a7f9c2ed987993fdd8bb7e81c31969a1fdf5351c58cba9de61a2f5957aba1626be4b0742f31d4de502301675ba24b0d91dd3acb24f5607bdeec83070626a57
DIST syn-1.0.98.crate 235451 BLAKE2B 0667c24d7f6b9bf4c0a5f45fb51c903303a87c72d445ad824e05ab98a158f9beda0d00721144c486335b6a830db47fe57a34831cff6995f478c969c4d0a039dc SHA512 fe5dda742e085e14b6aea5617d3f9dd19ffd46009f34b119c0d74ec693042f641e594f75ff027dbfa38f3d5149a94eb6187248ee9d09d41dab9cc2cfc18fab18
DIST syslog-6.0.1.crate 9552 BLAKE2B eb4414c675842fd8cbde4e0c9ecec5dd0f43ca2877a082d634e145202df6817cee86e2edb11f1b78cfa5b0e5df98a42b6cdb2bf1b70c562661dfa9c03da142ba SHA512 fc3e0ef078d2414420e717b66517e9fc668a03b5d0cd0001aed6e477a92f2873877b873159bdf964e4cd670519e5a308bc7357674bd67ac320754221415aa36c
DIST termcolor-1.1.3.crate 17242 BLAKE2B 5aef69c0004081bd3cc4d531d13d63627cc02313868c0faab62358d13abfa7b4ba82f142c2801d25a6ae46ecbc8b7bdbeaa21c9105ea3b8950ab6a38cdb88513 SHA512 5838fcbfd70f300cb4b62aab50565db52074c56b152ccc8ac1173e4676c0d5a636271bf5a645a77da6e1d4edbf0091af2cd4dd6d73b85c3d198c760898c06f3a
DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
DIST time-0.3.11.crate 91807 BLAKE2B d5b80416590bf48c8f403cc0e2ad735b95d98048dc335737fe509c44f805cc911fa55d6af611d3a05150b2a9ebedf005e8903a4daf66e245a5d5f290ed661c46 SHA512 214bb8c5573d3ee405a923f55e22ac3d659c30ba413f5e960e17d8f226d094133e2b52084e34efc6ece2311e13a862f2fcded9783937d69709d11144a8d6b48d
DIST unicode-ident-1.0.2.crate 34951 BLAKE2B f03f7a040142785675a800672bb363dcf7aae266eebf50425436100249442f27b18837f9e297d93b59a9254c349e13222f8af892a9c0fbf2bac676df8a1b0e1e SHA512 60d78668b762eb842c15ee554c0c1175393702c805f1a874957d49104e9152ad2d0316966553fb14cb520aa858a84da223bf426d55e4ac23de3324a3bebc301c
DIST unicode-segmentation-1.9.0.crate 93241 BLAKE2B 359904bcaadfd161128d40a896a2d10e5dfdb4098de245c949ae3fffecce9b4b6b999bbc2c6ca522944733ab0074e50fe829690183639c312bba8f8d0ad24456 SHA512 7d0ea37bfb24a1a803b1cd40b7b0c0e6e44ebf9a474fdedf0dcca1ead25662e19f44af29b87de1b000c3cc75fec93320938bb3ab9d9e82298eda324bb97e7294
DIST unicode-width-0.1.9.crate 16745 BLAKE2B 38d4b92e47a284d6881a8073089be59a73d82b91efe5522f55be977f95f479890b6c02cd519544729f1b1e62eb21bcfff8c5f5382917f953603b760e39cf1ea7 SHA512 0f5ec46c57e3b5e50cb8430c89db8d9c129e80ca11a9c398b5312bfe95001e19ca3efbfeb01c3ac09c4ce7e26c6ee1f352f7e114ecef78cefd68c54d2d50f5f4
DIST vec_map-0.8.2.crate 14466 BLAKE2B 8f109fbff19604b82ea2aa61c952e2ce9b5597ccc8e1ef4e847648e2de08dece8c4debe92889edeccb8d393645fd0b62436b49d236ded7ad181c4a51239a9539 SHA512 4f1ef59bc2c437e79f1f84fe021bce5aa8ccd581f500f3d5776913d5f17d45b03ccee64f5bd03d47656318cfc9344a1f4311079d471fa409a8e4e94c143973f9
DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
DIST vhost-0.6.0.crate 196931 BLAKE2B e988df6489c33332c4b5a804ab1f79a1318ef07c46a531cc56df71529246678fa0469e2520708bb2b71dbdf3c8abdc7385f84c25701850139c26ff13cde88b82 SHA512 13d6d2966d596072d0afb559e4702d2a43fa6a85ebec5345bab0455483cfef0c4a70908737955d2423e380839ad0d57118203f3f2c582653d590dc52498cfe1c
DIST vhost-user-backend-0.8.0.crate 17703 BLAKE2B 9a4c9ab7f5eb1433b70500972ee580e0c34114da5db4d153f4130943114232d6e977357632e0fb57719c99c05c7074df04fe58d3bac9cd66500211a02f0fe728 SHA512 25ed03b2600c063ef3a75d6115e34451459bdeba80488c937e1f0caeb30412211b021387d682010d7f318d427322f6582e0e2dbc81097a7bfa014a27856dd04a
DIST virtio-bindings-0.1.0.crate 20293 BLAKE2B e511229ae22a53dd9cd1d2aeb235026c139d11ccd2e528eb78848e3586067c027d6f1b7d538276f74548d0949fe60a5d052caeb7f693b3d7d6d8baeb3ab550cd SHA512 ba27ff5790528942b1ed4a20851d426f0a66415970b98957b4bdfc5d3505897874ee9c0242be16d55964799b790f2acd76a1f0c38aa90aff3e3c337584d357ec
DIST virtio-queue-0.7.0.crate 146031 BLAKE2B 8fb2970e87051787e8891393edb345e3b0045681da5d07d5f75c6695580e57faf172c469a8f14b785c5d622e699613696e3544f8a4d06fa66e58a3546c4c191f SHA512 45891b3411915999d1758b0825699ea07912f83cca5802e56d33023378c268d29d77c3a7b52c0a0828b2256ead0ef6264753db2a78a8f571eb9787b879cc544a
DIST virtiofsd-v1.5.1.tar.gz 112534 BLAKE2B 52c86ab9d4842ecd496aed3f09a98be96d7ee0eda43a2519eb066be1f648963b155386f9eac1a1c878c12fd05d928f88700c6a7a840c0f34dfa6f86caab15fec SHA512 a50b3fac6d5eafc691ef4fc8808acb4dc03261f01623f6675a234d457231f96181e9cf6c8ac68b4fe1b1c97257faf56bc6d0c2776142c9dbfe82b4e9bde0e34a
DIST vm-memory-0.10.0.crate 68989 BLAKE2B 469a22ecf49d00b44c58b11856db46be02ec7abb783a451ed7f57080989d63d2ce1d66bec3ab8f2b92da8c2e8c685a6d5f652570cff9a48368eca037bc2ed6d9 SHA512 7bdeb565f4bdd6b0df39fb753c97addd18a51b5d788076f60f98cb8d532612a6d41c533f8d3bd3ffcb0304f045fe8b1f69762efdf29f957b27959b6be66420ea
DIST vmm-sys-util-0.11.1.crate 56848 BLAKE2B c5de8659cfe17914f008e5f74e45929421e2f8cfd9a801a8a5478e7934f94ce299aa91b9951374a6cb9f94a8311f76ae841b87170685e3d5250337da42d6629a SHA512 7395b730bf5e42ca75a73b2d75b2f624958474549c9ee63d4fc63a5a81c51b1e0c370e79d4290b4d6768499498a2941989845d5816c76e3eb1f5b43fdd0c8286
DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
DIST windows-sys-0.42.0.crate 3006791 BLAKE2B 7a0962364ecc416cf0ae7e49cce1298a12d819003e488f6e77aff1a52710f00378638b6a05db5557a031e1b75659587657971ddc63eaab35495133762f99a7b2 SHA512 b07b119688f3e3ad234d36979947f34e8e19988fb62101afbe18ec8afc9c8a4261128939df8bbb849d5c5982422cb4c50dbcba70f2bf401fbb7c605df1b2b354
DIST windows_aarch64_gnullvm-0.42.1.crate 362795 BLAKE2B 722b45789bcd1d973803b327d44072fbf9c904d448e29ae9e56d2f9d1a3e9b64e06883e4bf5ebf141f1e924235858fd1472e07a744cc5b16a0a3a4fc8ec8f6d4 SHA512 51eb9fa7ea441a9fef590c12576a8bbef74932d40fafde8f9e3a28f2734ce5aee6dd5fa478fb3847443241c8c392bb4abbc6014c71260bf924431779f7184f73
DIST windows_aarch64_msvc-0.42.1.crate 664655 BLAKE2B f4a060b802016a6d77a8ea6ac44c35dfec384acef9c45f932e2b6aca9d3ac48ae031f99e5b58f270d6020b8796e9dd06f7e8ffa7cc5610ea3f69181c2be7adc8 SHA512 f6412bae4b041201ef94e5a159ce90fd6b09816350204d4f573c1afdfb0a6d62d7887fbc2e416b40ec1d4478db521be492edf4703d87482d6d0006a51b827538
DIST windows_i686_gnu-0.42.1.crate 733428 BLAKE2B c1ca24973aca06b255d9317735cca7a13f7f69293da52dad41df43a5cdf48aac3d40d8b6765cf564905fb71cb548308d757f01167efe7a61da7bd2e2a7080f0a SHA512 61c3271b07df1d4585c875d27cf1686c8f595dcbb79626e8d15ff47228f7b7a4556d3d994566ccceee0d6795a4c76767f85f4579282fc9eed731e04c7e193a57
DIST windows_i686_msvc-0.42.1.crate 722583 BLAKE2B e03978daa0ac95d7bd9f594b28360dab647a1fe525f0ae4b44e6842d93c5674d9f202e8bbca99a0d30ecf7d138af0c48eec8e69e08bf285db51e32bcf83a2c54 SHA512 8afa4f92cb7bd96d4fdbefbd8e7bcaa37dee52224d5d8b950c5a537d3bb805bf9781097b8bd44d96e8b62b1290e3a3020557502fa3b357a53df6fea36b318932
DIST windows_x86_64_gnu-0.42.1.crate 697614 BLAKE2B 3cef0a3da3ce142bbdf932dbb54eb6473070c5722c9ec791dc4077efe2d774d51f8b3d06b3321f8f21cc49764f44d54b3432ee7a0d9376925b422b197f5d557e SHA512 f4c16b587fe407dee1f39df029c52302a0fbd5f519816a8d974fe9c2f928043b14037c701c0f3c9cf2e5c765e82430fd4b71615fe63a66a88159f7b15506f892
DIST windows_x86_64_gnullvm-0.42.1.crate 362788 BLAKE2B fff81e63b86ad04ce22ad3e05ec4cc02c0b791384c93bafb50832f6db9cb7fd9301ad3845339a08dd8cadac1d59f3e8dc9d5f56d7a987989dbfc16b9131af67b SHA512 8cc988b5995a4726bb7518b7fccff528274ad9b2b0160fe247eb240f9ced10db95afe7bff91bfc5a08ebd8237b6821e4a4abad1ff9da45022f1ce7e7586bcf05
DIST windows_x86_64_msvc-0.42.1.crate 664606 BLAKE2B 6c460cfa392aad0d11add200d652a42ee1a60052570527c4e85405f765255375729d4e26287f5246dcad65fa89ccadea23c5135171b311e6da5027e33149c547 SHA512 a651b1a34f101125f929c1d1f5e933691c7a5c19d0bb0c501fb6812236d2771805428e3bd5e05be7d72715595f5fc9e7978dd7934e5d92e9b78a41c2ece695b2

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>michal.privoznik@gmail.com</email>
<name>Michal Privoznik</name>
</maintainer>
<maintainer type="project">
<email>virtualization@gentoo.org</email>
<name>Gentoo Virtualization Project</name>
</maintainer>
<upstream>
<remote-id type="gitlab">virtio-fs/virtiofsd</remote-id>
</upstream>
</pkgmetadata>

@ -0,0 +1,126 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CRATES="
aho-corasick-0.7.18
ansi_term-0.12.1
arc-swap-1.5.0
atty-0.2.14
autocfg-1.1.0
bitflags-1.3.2
capng-0.2.2
cc-1.0.78
cfg-if-1.0.0
clap-2.34.0
env_logger-0.10.0
errno-0.2.8
errno-dragonfly-0.1.2
error-chain-0.12.4
futures-0.3.21
futures-channel-0.3.21
futures-core-0.3.21
futures-executor-0.3.21
futures-io-0.3.21
futures-macro-0.3.21
futures-sink-0.3.21
futures-task-0.3.21
futures-util-0.3.21
heck-0.3.3
hermit-abi-0.1.19
hermit-abi-0.2.6
hostname-0.3.1
humantime-2.1.0
io-lifetimes-1.0.4
is-terminal-0.4.2
itoa-1.0.2
lazy_static-1.4.0
libc-0.2.139
libseccomp-sys-0.2.1
linux-raw-sys-0.1.4
log-0.4.17
match_cfg-0.1.0
memchr-2.5.0
num_cpus-1.13.1
num_threads-0.1.6
pin-project-lite-0.2.9
pin-utils-0.1.0
proc-macro-error-1.0.4
proc-macro-error-attr-1.0.4
proc-macro2-1.0.40
quote-1.0.20
regex-1.6.0
regex-syntax-0.6.27
rustix-0.36.7
slab-0.4.7
strsim-0.8.0
structopt-0.3.26
structopt-derive-0.4.18
syn-1.0.98
syslog-6.0.1
termcolor-1.1.3
textwrap-0.11.0
time-0.3.11
unicode-ident-1.0.2
unicode-segmentation-1.9.0
unicode-width-0.1.9
vec_map-0.8.2
version_check-0.9.4
vhost-0.6.0
vhost-user-backend-0.8.0
virtio-bindings-0.1.0
virtio-queue-0.7.0
vm-memory-0.10.0
vmm-sys-util-0.11.1
winapi-0.3.9
winapi-i686-pc-windows-gnu-0.4.0
winapi-util-0.1.5
winapi-x86_64-pc-windows-gnu-0.4.0
windows-sys-0.42.0
windows_aarch64_gnullvm-0.42.1
windows_aarch64_msvc-0.42.1
windows_i686_gnu-0.42.1
windows_i686_msvc-0.42.1
windows_x86_64_gnu-0.42.1
windows_x86_64_gnullvm-0.42.1
windows_x86_64_msvc-0.42.1
"
inherit cargo
DESCRIPTION="Shared file system for virtual machines"
HOMEPAGE="https://virtio-fs.gitlab.io/"
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://gitlab.com/virtio-fs/virtiofsd.git"
EGIT_BRANCH="main"
else
SRC_URI="https://gitlab.com/virtio-fs/virtiofsd/-/archive/v${PV}/virtiofsd-v${PV}.tar.gz
$(cargo_crate_uris ${CRATES})"
KEYWORDS="~amd64"
S="${WORKDIR}/${PN}-v${PV}"
fi
LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-DFS-2016 Unlicense"
SLOT="0"
DEPEND="
sys-libs/libcap-ng
sys-libs/libseccomp
"
RDEPEND="${DEPEND}"
# rust does not use *FLAGS from make.conf, silence portage warning
# update with proper path to binaries this crate installs, omit leading /
QA_FLAGS_IGNORED="usr/bin/${PN}"
src_unpack() {
if [[ "${PV}" == *9999* ]]; then
git-r3_src_unpack
cargo_live_src_unpack
else
cargo_src_unpack
fi
}

@ -0,0 +1,126 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CRATES="
aho-corasick-0.7.18
ansi_term-0.12.1
arc-swap-1.5.0
atty-0.2.14
autocfg-1.1.0
bitflags-1.3.2
capng-0.2.2
cc-1.0.78
cfg-if-1.0.0
clap-2.34.0
env_logger-0.10.0
errno-0.2.8
errno-dragonfly-0.1.2
error-chain-0.12.4
futures-0.3.21
futures-channel-0.3.21
futures-core-0.3.21
futures-executor-0.3.21
futures-io-0.3.21
futures-macro-0.3.21
futures-sink-0.3.21
futures-task-0.3.21
futures-util-0.3.21
heck-0.3.3
hermit-abi-0.1.19
hermit-abi-0.2.6
hostname-0.3.1
humantime-2.1.0
io-lifetimes-1.0.4
is-terminal-0.4.2
itoa-1.0.2
lazy_static-1.4.0
libc-0.2.139
libseccomp-sys-0.2.1
linux-raw-sys-0.1.4
log-0.4.17
match_cfg-0.1.0
memchr-2.5.0
num_cpus-1.13.1
num_threads-0.1.6
pin-project-lite-0.2.9
pin-utils-0.1.0
proc-macro-error-1.0.4
proc-macro-error-attr-1.0.4
proc-macro2-1.0.40
quote-1.0.20
regex-1.6.0
regex-syntax-0.6.27
rustix-0.36.7
slab-0.4.7
strsim-0.8.0
structopt-0.3.26
structopt-derive-0.4.18
syn-1.0.98
syslog-6.0.1
termcolor-1.1.3
textwrap-0.11.0
time-0.3.11
unicode-ident-1.0.2
unicode-segmentation-1.9.0
unicode-width-0.1.9
vec_map-0.8.2
version_check-0.9.4
vhost-0.6.0
vhost-user-backend-0.8.0
virtio-bindings-0.1.0
virtio-queue-0.7.0
vm-memory-0.10.0
vmm-sys-util-0.11.1
winapi-0.3.9
winapi-i686-pc-windows-gnu-0.4.0
winapi-util-0.1.5
winapi-x86_64-pc-windows-gnu-0.4.0
windows-sys-0.42.0
windows_aarch64_gnullvm-0.42.1
windows_aarch64_msvc-0.42.1
windows_i686_gnu-0.42.1
windows_i686_msvc-0.42.1
windows_x86_64_gnu-0.42.1
windows_x86_64_gnullvm-0.42.1
windows_x86_64_msvc-0.42.1
"
inherit cargo
DESCRIPTION="Shared file system for virtual machines"
HOMEPAGE="https://virtio-fs.gitlab.io/"
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://gitlab.com/virtio-fs/virtiofsd.git"
EGIT_BRANCH="main"
else
SRC_URI="https://gitlab.com/virtio-fs/virtiofsd/-/archive/v${PV}/virtiofsd-v${PV}.tar.gz
$(cargo_crate_uris ${CRATES})"
KEYWORDS="~amd64"
S="${WORKDIR}/${PN}-v${PV}"
fi
LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-DFS-2016 Unlicense"
SLOT="0"
DEPEND="
sys-libs/libcap-ng
sys-libs/libseccomp
"
RDEPEND="${DEPEND}"
# rust does not use *FLAGS from make.conf, silence portage warning
# update with proper path to binaries this crate installs, omit leading /
QA_FLAGS_IGNORED="usr/bin/${PN}"
src_unpack() {
if [[ "${PV}" == *9999* ]]; then
git-r3_src_unpack
cargo_live_src_unpack
else
cargo_src_unpack
fi
}

@ -1,9 +1,12 @@
DIST vkd3d-proton-08909d9856.tar.gz 1424776 BLAKE2B cb29a927b28980283c96d9a1ac99ef98570b72edbec147314b2884e2d8c78c23b8b7cdab4530b9098e55a25801a9fad3e5a8ae48695b994c226d05fd380c905b SHA512 ca79dfccf638f65546f8654bbb3819b6b72e8a6fd2cf9c5d697444b91244e96d55d059c971afc6b0709c762575a27024862a482dc0159a58804f7d4072746660
DIST vkd3d-proton-2.6.tar.gz 1271948 BLAKE2B 02d2574a66614613748fe3471a6fd5aac2650fdae15a17b17ea2ed028fa53a0579b866e7240036a26108afc343395826474bb99e015b9299c2abec811bb872ab SHA512 6f27d213652e2380a9ba4534ac9ffe4b752b4608fbc2e8acd273fa151ab19ad0b132e3436384d2b8591cd1a59f0b69d342c893dc3a64be85188b5e3274bcf3f1
DIST vkd3d-proton-2.8.tar.gz 1435183 BLAKE2B 8b265e6dac1dd0ed6377ea6bc0ecffa7eccb8360f890bf2c996395b9db90e132ede9bddf6e889a9302466cccdcd2000f1e7ad9ece740b797c44f081b7ca1bb98 SHA512 d708fe62d64487b4430862b93913ba45f2889268c5efb9b1dc69fd48a665fcffc06a7bb91afc13b06a35fd82005a3115dc85f1de74d65f6958fd6f0c02a54007
DIST vkd3d-proton-dxil-spirv-9e2c26d15c.tar.gz 698285 BLAKE2B 034627322183771c67ac7f927f3883bb186ee1f17657e825f542331dcc4d907d65c764dd6e01603ac77d1205c92500be016a6f0df1e742b6e71f9a189d8287da SHA512 42e385f33b97444bf02a6f662094c256b5f92d5fd444fd3545a52b55aa30e23db2d794a62543de97baaf59cc4b6a1e8429d10b88c01c4bd0d71f5e086319b2d1
DIST vkd3d-proton-dxil-spirv-b537bbb91b.tar.gz 631130 BLAKE2B 99f40c5efde87d0af86542b427e5b0429be68ca69ba0c2b6d10a821811756d8dadff4449f268ae404f8ace09a91b3e8aaa135e534a77c0239e58c1a970a044cc SHA512 3c20090b7a1b53c30fd4967622fc7384e1bcc504c30d8075068b87dad1bd2c6f4a12459bf42e61bf76b9dd454ec17a9d529f74ab0d5583627e966d94bb341dc3
DIST vkd3d-proton-dxil-spirv-babf511d4c.tar.gz 695011 BLAKE2B 49e13065037edec80815b19907664d9681bc191303032db2e1678fbff5e144846c2ee267fdf5c1d4c31a1a30f2c14275f8e276a771253fabb8bbea8936be4eb4 SHA512 b310e4e856b4571ce13cce8539bd1640c7578b132558c009fcc04c24b4b10a86b620542891442dd81feaa8f6ad63d2d05021ca228d1c5f46eebe384fdb30f77e
DIST vkd3d-proton-spirv-headers-1d31a10040.tar.gz 445679 BLAKE2B 3dac88269df92428fd93ca187eb417ec0156ff0b24200daf85526aaa92c30ba8743102764e20c47d783ed0704fa690c1bf60944ef81bbdd296890dde5fb9fcaa SHA512 2536619cd7854954892dbb5ab5cd97e4e95fe3f5c121c4b2022426ae734fc20c1ebadbae1da7689f5ca18397075c54e4f16ad525b8ee873c4b0ffdc07aaacc03
DIST vkd3d-proton-spirv-headers-87d5b782be.tar.gz 439180 BLAKE2B 9c64a1b7aa408172bb57b38ca0e3d31221c7dfecfcd9afc77449c14e76f60f7436f1a54a794bf4959f4575f177e1024621c6ff696f7fb19b545877e0a527031c SHA512 d6ce02e53c259e508d1d72d81cc6aa6b3019e7ecd6a8878d81d8681d9734756f66c762ebd4b8b1d0f9fbb7a8f1f18d72aeb27c56822d810aca5a3e53c51c1ef6
DIST vkd3d-proton-spirv-headers-ae217c1780.tar.gz 415130 BLAKE2B 0c6444c4c1cb43b9c69757d7c2257ce2fe1bc6be308341f3189766f120994e4920bc738b737d9eefc299359dab568fb8809782e3663dd589c0e4d13aecb8873a SHA512 02cf1d63b29e48ef0efe489eb32237ba2f9f4bf58a182b00dc96aab18faba94de79283398e9e945cd81130f83fff228c59b04e496716ea9ccc148a5f4465282c
DIST vkd3d-proton-vulkan-headers-83e1a9ed8c.tar.gz 1299014 BLAKE2B 0b1e635aaa6eebec3525b13698a064e0e5b8a78829a772cbe9e1890148059bf396bc5c830e8d6ee3070a3343775991642565283994c65acfa0d82a91590b7d84 SHA512 ecb2158cad55edb4ba069383668f3b311a2f6aa6777b5b7ed94795d454622426ee34fee52b13c97d2f07b5b2f965815ee61a0203b76a0b0d2c708a4786d06b96
DIST vkd3d-proton-vulkan-headers-9f93cbe76a.tar.gz 1811251 BLAKE2B 6993e6e7301925a949a8ee18d7d0dec48adc8d4c66bb759929891241b64dd8f4bf4e563e86b40020123d5eced74b3ab02b86f3488b7d782c3cd4536079a3ddec SHA512 d0a157a560b58b676bbef115097423a4ab22928cd08a1010d2f3695bbf5fe3af79653b8db6ec00fa061ff46010749dc13526488f53cac6860af2a1918d873a19
DIST vkd3d-proton-vulkan-headers-b7a86d3b2b.tar.gz 1753074 BLAKE2B a2588e84edd09a04c3622a95310acc781432d6a962c69c1f5a709b65e2bfeb5196d9d217b0d261532c4b5c1424f13ff64d33728303c989fdbce3048741add486 SHA512 377ada7a9721c225067c6548475109cf4ad1f3d677b835fbe7a4bc7520621acd816cc59d4b75b23bc28f25891b556792cf853b98c0dfb915856774ff27eb6aba

@ -0,0 +1,179 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MULTILIB_COMPAT=( abi_x86_{32,64} )
inherit flag-o-matic meson-multilib toolchain-funcs
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/HansKristian-Work/vkd3d-proton.git"
EGIT_SUBMODULES=(
# uses hacks / recent features and easily breaks, keep bundled headers
# (also cross-compiled and -I/usr/include is troublesome)
subprojects/{SPIRV,Vulkan}-Headers
subprojects/dxil-spirv
subprojects/dxil-spirv/third_party/spirv-headers # skip cross/tools
)
else
HASH_VKD3D=08909d98565065994612e529feb0cad04e498a8e # matches proton-8.0.1c
HASH_DXIL=9e2c26d15c0eeac91fb8c6dda3aff8f6a602c0b6
HASH_SPIRV=1d31a100405cf8783ca7a31e31cdd727c9fc54c3
HASH_SPIRV_DXIL=87d5b782bec60822aa878941e6b13c0a9a954c9b
HASH_VULKAN=9f93cbe76abe9f6cb4a36df10b08fa3b78ae0027
SRC_URI="
https://github.com/HansKristian-Work/vkd3d-proton/archive/${HASH_VKD3D}.tar.gz
-> ${PN}-${HASH_VKD3D::10}.tar.gz
https://github.com/HansKristian-Work/dxil-spirv/archive/${HASH_DXIL}.tar.gz
-> ${PN}-dxil-spirv-${HASH_DXIL::10}.tar.gz
https://github.com/KhronosGroup/SPIRV-Headers/archive/${HASH_SPIRV}.tar.gz
-> ${PN}-spirv-headers-${HASH_SPIRV::10}.tar.gz
https://github.com/KhronosGroup/SPIRV-Headers/archive/${HASH_SPIRV_DXIL}.tar.gz
-> ${PN}-spirv-headers-${HASH_SPIRV_DXIL::10}.tar.gz
https://github.com/KhronosGroup/Vulkan-Headers/archive/${HASH_VULKAN}.tar.gz
-> ${PN}-vulkan-headers-${HASH_VULKAN::10}.tar.gz"
S="${WORKDIR}/${PN}-${HASH_VKD3D}"
KEYWORDS="-* ~amd64 ~x86"
fi
DESCRIPTION="Fork of VKD3D, development branches for Proton's Direct3D 12 implementation"
HOMEPAGE="https://github.com/HansKristian-Work/vkd3d-proton/"
LICENSE="LGPL-2.1+ Apache-2.0 MIT"
SLOT="0"
IUSE="+abi_x86_32 crossdev-mingw debug extras"
BDEPEND="
dev-util/glslang
!crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] )"
pkg_pretend() {
[[ ${MERGE_TYPE} == binary ]] && return
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
local tool=-w64-mingw32-g++
for tool in $(usev abi_x86_64 x86_64${tool}) $(usev abi_x86_32 i686${tool}); do
if ! type -P ${tool} >/dev/null; then
eerror "With USE=crossdev-mingw, it is necessary to setup the mingw toolchain."
eerror "For instructions, please see: https://wiki.gentoo.org/wiki/Mingw"
use abi_x86_32 && use abi_x86_64 &&
eerror "Also, with USE=abi_x86_32, will need both i686 and x86_64 toolchains."
die "USE=crossdev-mingw is enabled, but ${tool} was not found"
elif [[ ! $(LC_ALL=C ${tool} -v 2>&1) =~ "Thread model: posix" ]]; then
eerror "${PN} requires GCC to be built with --enable-threads=posix"
eerror "Please see: https://wiki.gentoo.org/wiki/Mingw#POSIX_threads_for_Windows"
die "USE=crossdev-mingw is enabled, but ${tool} does not use POSIX threads"
fi
done
tool=-w64-mingw32-widl
for tool in $(usev abi_x86_64 x86_64${tool}) $(usev abi_x86_32 i686${tool}); do
if ! type -P widl >/dev/null && ! type -P ${tool} >/dev/null; then
eerror "With USE=crossdev-mingw, you need to provide the widl compiler by either"
eerror "building crossdev mingw64-runtime with USE=tools or installing wine."
die "USE=crossdev-mingw is set but neither widl nor ${tool} were found"
fi
done
fi
}
src_prepare() {
if [[ ${PV} != 9999 ]]; then
rmdir subprojects/{{SPIRV,Vulkan}-Headers,dxil-spirv} || die
mv ../dxil-spirv-${HASH_DXIL} subprojects/dxil-spirv || die
mv ../SPIRV-Headers-${HASH_SPIRV} subprojects/SPIRV-Headers || die
mv ../Vulkan-Headers-${HASH_VULKAN} subprojects/Vulkan-Headers || die
# dxil and vkd3d's spirv headers currently mismatch and incompatible
rmdir subprojects/dxil-spirv/third_party/spirv-headers || die
mv ../SPIRV-Headers-${HASH_SPIRV_DXIL} \
subprojects/dxil-spirv/third_party/spirv-headers || die
# ln -s ../../../SPIRV-Headers/include \
# subprojects/dxil-spirv/third_party/spirv-headers || die
fi
default
sed -i "/^basedir=/s|=.*|=${EPREFIX}/usr/lib/${PN}|" setup_vkd3d_proton.sh || die
if [[ ${PV} != 9999 ]]; then
# without .git, meson sets vkd3d_build as 0x${PV} leading to failure
sed -i "s/@VCS_TAG@/${HASH_VKD3D::15}/" vkd3d_build.h.in || die
sed -i "s/@VCS_TAG@/${HASH_VKD3D::7}/" vkd3d_version.h.in || die
fi
}
src_configure() {
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
if [[ ${CHOST} != *-mingw* ]]; then
if [[ ! -v MINGW_BYPASS ]]; then
unset AR CC CXX RC STRIP WIDL
filter-flags '-fstack-clash-protection' #758914
filter-flags '-fstack-protector*' #870136
filter-flags '-fuse-ld=*'
filter-flags '-mfunction-return=thunk*' #878849
fi
CHOST_amd64=x86_64-w64-mingw32
CHOST_x86=i686-w64-mingw32
CHOST=$(usex x86 ${CHOST_x86} ${CHOST_amd64})
# preferring meson eclass' cross file over upstream's but, unlike
# dxvk, we lose static options in the process (from build-win*.txt)
append-ldflags -static -static-libgcc -static-libstdc++
strip-unsupported-flags
fi
multilib-minimal_src_configure
}
multilib_src_configure() {
# multilib's ${CHOST_amd64}-gcc -m32 is unusable with crossdev,
# unset again so meson eclass will set ${CHOST}-gcc + others
use crossdev-mingw && [[ ! -v MINGW_BYPASS ]] && unset AR CC CXX STRIP WIDL
# prefer ${CHOST}'s widl (mingw) over wine's as used by upstream if
# possible, but eclasses don't handle that so setup machine files
local widl=$(tc-getPROG WIDL widl)
use amd64 && [[ ${widl} == widl && ${ABI} == x86 ]] && widl="widl','-m32"
printf "[binaries]\nwidl = ['${widl}']\n" > "${T}"/widl.${ABI}.ini || die
local emesonargs=(
--prefix="${EPREFIX}"/usr/lib/${PN}
--{bin,lib}dir=x${ABI: -2}
--{cross,native}-file="${T}"/widl.${ABI}.ini
$(meson_use {,enable_}extras)
$(meson_use debug enable_trace)
$(usev !debug --strip) # portage won't strip .dll, so allow it here
-Denable_tests=false # needs wine/vulkan and is intended for manual use
)
meson_src_configure
}
multilib_src_install_all() {
dobin setup_vkd3d_proton.sh
einstalldocs
find "${ED}" -type f -name '*.a' -delete || die
}
pkg_postinst() {
if [[ ! ${REPLACING_VERSIONS} ]]; then
elog "To enable ${PN} on a wine prefix, you can run the following command:"
elog
elog " WINEPREFIX=/path/to/prefix setup_vkd3d_proton.sh install --symlink"
elog
elog "See ${EROOT}/usr/share/doc/${PF}/README.md* for details."
fi
if [[ ! ${REPLACING_VERSIONS##* } ]] ||
ver_test ${REPLACING_VERSIONS##* } -lt 2.7
then
elog
elog ">=${PN}-2.7 requires drivers and Wine to support vulkan-1.3, meaning:"
elog ">=wine-*-7.1 (or >=wine-proton-7.0), and >=mesa-22.0 (or >=nvidia-drivers-510)"
fi
}

@ -11,7 +11,7 @@ SRC_URI="https://dl.winehq.org/vkd3d/source/${P}.tar.xz"
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
IUSE="ncurses spirv-tools"
RESTRICT="test" #838655

@ -4,3 +4,5 @@ DIST wine-mono-7.3.1-x86.msi 86930432 BLAKE2B f43b605ab7b07a7b4d8d4675297af6e827
DIST wine-mono-7.3.1-x86.tar.xz 43216532 BLAKE2B bc00f41d2e9e88c0a687fad6bdd48e9a836f3d7369747602665691ca3e430c895655e9c5e9ef955a5cf45a96818b6858bc3cc93d90c3d7a49f8d8f4ff824d45a SHA512 a2c8d10d9b34fd7775eeddb6494b84f2f04e6a2f21d93940dc902434b189d43bdfdcd198baf8133cda8b17c2bc25ee84538e12a32027cdd66da9ab029eed6777
DIST wine-mono-7.4.0-x86.msi 87334912 BLAKE2B c0b778f9db59d1a2917631f1d6ca1a1798972a6a42e27975da78f3a35b77018a99228d7d95e5640c57618533a6b01bf2252859e3e978e2aa8dbdc8cd62afcc28 SHA512 cf35513b368324487c387d4339e5b05a90c4825b25ea603140524b79e69786ccc20dfb898213a9548c0313c0b0e4b160acb88364e4b280dd6712d185d9e5ae57
DIST wine-mono-7.4.0-x86.tar.xz 45404344 BLAKE2B 3a74106b9b3f21a88c2435f7988d66a54e08beea931a0ce0df6431c21add4ee2685bf9c9cb2404ee1a685736d61b1aee3cdd507130e5c5dddba7e506a2ff18bb SHA512 108cb5d969e84deeda3d2b11dba7cd73853fc3b088ecf2bcdb9bc5c5bbaaff03e72cd4f485d1935eda43cdd95b927886441be1d2204edeaee1ff1fea75735d22
DIST wine-mono-7.4.1-x86.msi 87339008 BLAKE2B 571469f21f4b2f4483172ef88cd973f94dd09eed3b9312775339711901fc5cd753944802a10e35c22f68b8685ae10f782e005f6ae9fcf7afc7b4da039a732b34 SHA512 ac2b398ce4c58b35da05d6d002f04cbdf7c615a9058f3db8e00f6c10166be84d90fc09ffa7e44f171e97bd91b741855f1547036d2eca2a688a92e3ed4297762a
DIST wine-mono-7.4.1-x86.tar.xz 44433444 BLAKE2B 28adbcca630698e74e455fbe37b8cd60c3d836c503db6a2df20e4db3e12f549a5d1fae6a4c0ccd6068e2667f700fbfe09858b95f156ad8d660ef3804773179a0 SHA512 2d0b231ee6e34d23f1e2ae0d7995dd31caab352f30816302743f884f5da56a071e931dabb53f813dd5389c82bdab70057b1d5c6430f1f88ace93789e41962cb6

@ -0,0 +1,26 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Replacement for the .NET runtime and class libraries in Wine"
HOMEPAGE="https://wiki.winehq.org/Mono"
SRC_URI="
shared? ( https://github.com/madewokherd/wine-mono/releases/download/${P}/${P}-x86.tar.xz )
!shared? ( https://github.com/madewokherd/wine-mono/releases/download/${P}/${P}-x86.msi )"
S="${WORKDIR}"
LICENSE="BSD-2 GPL-2 LGPL-2.1 MIT MPL-1.1"
SLOT="${PV}"
KEYWORDS="~amd64 ~x86"
IUSE="+shared"
src_install() {
insinto /usr/share/wine/mono
if use shared; then
doins -r ${P}
else
doins "${DISTDIR}"/${P}-x86.msi
fi
}

@ -1,2 +1,3 @@
DIST proton-wine-7.0-5.tar.gz 45724439 BLAKE2B d5ad4f00ca658b31c562c2ff4eb5ae33707126eee44ccfd9f33084ab5d184743034541efe3f9d18eb2a6941111da4c5134555f93769e8370b118b6f04e00ae1e SHA512 b16ace9c0bfa6d2685ea53617be2bba7e82c5c8da604f9e188bf782219785cfaed4317578c4314f2bde89d363a2e115f3bceeaa69d4a85f078a5fdb1ec64d33b
DIST proton-wine-7.0-6.tar.gz 45780326 BLAKE2B f140fcfdd1a47904c34a49d0795fa3326d7cf0d3fac8d6c2ef2a4926181a46223f43a2d1ca96c543e800c8c46b2a3cc51ae306a029d68a42608876e869e177d5 SHA512 793bbe2b23042301a1b518717d78cfff01eaffa0388883d010659a45779b9136d33cfac63f0c3fbb1e458953a954b423eb70ac4fa87633352267db890ceb2fef
DIST proton-wine-8.0-1c.tar.gz 48204851 BLAKE2B 5a746cf4d10e605ce30e93a5116e73c4ae893a6ccb105984afa3e65e0ec64780ca58462fe5fc89e51aef0499fdc52be9756254878d8f7f28160a1cf4ed0ee3a9 SHA512 67dbd73287409aaecd5cfab29f79ddf455bbbd25e79289c66828bd4f0fac3003e68afe3e65ea39e18e2390b825342a52285c4be1368928606628b72a274b5456

@ -7,7 +7,7 @@ To keep a low maintenance cost, these changes are not reverted in Gentoo
with the exception of re-enabling winemenubuilder for desktop entries.
Also, given this Wine variant is oriented toward running games, some
normally unrelated features (e.g. ldap) may not have real upstream
normally unrelated features (e.g. cups) may not have real upstream
(Valve) support. Because of this, some are left always disabled.
If needed, use other variants for the more expected Wine behavior.

@ -0,0 +1,36 @@
Fix build with llvm-libunwind, and also fix for non-llvm libunwind
when using clang+bfd given clang doesn't have _Unwind_Find_FDE in
its rtlib and expects it from llvm-libunwind.
The _CONFIG_H_ check is for <llvm-libunwind-15 (adds _VERSION).
--- a/dlls/ntdll/unix/dwarf.h
+++ b/dlls/ntdll/unix/dwarf.h
@@ -257,5 +257,7 @@
};
+#if defined(_LIBUNWIND_VERSION) || defined(____LIBUNWIND_CONFIG_H__) || !defined(__clang__)
extern const struct dwarf_fde *_Unwind_Find_FDE (void *, struct dwarf_eh_bases *);
+#endif
static unsigned char dwarf_get_u1( const unsigned char **p )
--- a/dlls/ntdll/unix/signal_x86_64.c
+++ b/dlls/ntdll/unix/signal_x86_64.c
@@ -648,5 +648,5 @@
int rc;
-#ifdef __APPLE__
+#if defined(__APPLE__) || defined(_LIBUNWIND_VERSION) || defined(____LIBUNWIND_CONFIG_H__)
rc = unw_getcontext( &unw_context );
if (rc == UNW_ESUCCESS)
@@ -774,4 +774,5 @@
CONTEXT *context = params->context;
struct dwarf_eh_bases bases;
+#if defined(_LIBUNWIND_VERSION) || defined(____LIBUNWIND_CONFIG_H__) || !defined(__clang__)
const struct dwarf_fde *fde = _Unwind_Find_FDE( (void *)(context->Rip - 1), &bases );
@@ -779,4 +780,5 @@
return dwarf_virtual_unwind( context->Rip, &dispatch->EstablisherFrame, context, fde,
&bases, &dispatch->LanguageHandler, &dispatch->HandlerData );
+#endif
#ifdef HAVE_LIBUNWIND
return libunwind_virtual_unwind( context->Rip, &dispatch->EstablisherFrame, context,

@ -39,7 +39,6 @@ RESTRICT="test"
# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
WINE_DLOPEN_DEPEND="
dev-libs/gmp:=[${MULTILIB_USEDEP}]
dev-libs/libgcrypt:=[${MULTILIB_USEDEP}]
media-libs/freetype[${MULTILIB_USEDEP}]
media-libs/libglvnd[X,${MULTILIB_USEDEP}]
@ -53,7 +52,10 @@ WINE_DLOPEN_DEPEND="
fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
ssl? (
dev-libs/gmp:=[${MULTILIB_USEDEP}]
net-libs/gnutls:=[${MULTILIB_USEDEP}]
)
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )

@ -39,7 +39,6 @@ RESTRICT="test"
# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
WINE_DLOPEN_DEPEND="
dev-libs/gmp:=[${MULTILIB_USEDEP}]
dev-libs/libgcrypt:=[${MULTILIB_USEDEP}]
media-libs/freetype[${MULTILIB_USEDEP}]
media-libs/libglvnd[X,${MULTILIB_USEDEP}]
@ -53,7 +52,10 @@ WINE_DLOPEN_DEPEND="
fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
ssl? (
dev-libs/gmp:=[${MULTILIB_USEDEP}]
net-libs/gnutls:=[${MULTILIB_USEDEP}]
)
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )

@ -0,0 +1,329 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MULTILIB_COMPAT=( abi_x86_{32,64} )
PYTHON_COMPAT=( python3_{9..11} )
inherit autotools flag-o-matic multilib multilib-build python-any-r1
inherit readme.gentoo-r1 toolchain-funcs wrapper
WINE_GECKO=2.47.3
WINE_MONO=7.4.1
WINE_PV=$(ver_rs 2 -)
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/ValveSoftware/wine.git"
EGIT_BRANCH="experimental_$(ver_cut 1-2)"
else
SRC_URI="https://github.com/ValveSoftware/wine/archive/refs/tags/proton-wine-${WINE_PV}.tar.gz"
S="${WORKDIR}/${PN}-wine-${WINE_PV}"
KEYWORDS="-* ~amd64 ~x86"
fi
DESCRIPTION="Valve Software's fork of Wine"
HOMEPAGE="https://github.com/ValveSoftware/wine/"
LICENSE="LGPL-2.1+ BSD-2 IJG MIT OPENLDAP ZLIB gsm libpng2 libtiff"
SLOT="${PV}"
IUSE="
+abi_x86_32 +abi_x86_64 +alsa crossdev-mingw custom-cflags debug
+fontconfig +gecko +gstreamer llvm-libunwind +mono nls osmesa
perl pulseaudio +sdl selinux +ssl udev udisks +unwind usb v4l
+xcomposite xinerama"
# tests are non-trivial to run, can hang easily, don't play well with
# sandbox, and several need real opengl/vulkan or network access
RESTRICT="test"
# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
WINE_DLOPEN_DEPEND="
dev-libs/libgcrypt:=[${MULTILIB_USEDEP}]
media-libs/freetype[${MULTILIB_USEDEP}]
media-libs/libglvnd[X,${MULTILIB_USEDEP}]
media-libs/vulkan-loader[${MULTILIB_USEDEP}]
x11-libs/libXcursor[${MULTILIB_USEDEP}]
x11-libs/libXfixes[${MULTILIB_USEDEP}]
x11-libs/libXi[${MULTILIB_USEDEP}]
x11-libs/libXrandr[${MULTILIB_USEDEP}]
x11-libs/libXrender[${MULTILIB_USEDEP}]
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? (
dev-libs/gmp:=[${MULTILIB_USEDEP}]
net-libs/gnutls:=[${MULTILIB_USEDEP}]
)
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )"
WINE_COMMON_DEPEND="
${WINE_DLOPEN_DEPEND}
x11-libs/libX11[${MULTILIB_USEDEP}]
x11-libs/libXext[${MULTILIB_USEDEP}]
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
gstreamer? (
dev-libs/glib:2[${MULTILIB_USEDEP}]
media-libs/gst-plugins-base:1.0[opengl,${MULTILIB_USEDEP}]
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
)
pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
unwind? (
llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] )
!llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] )
)
usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] )"
RDEPEND="
${WINE_COMMON_DEPEND}
app-emulation/wine-desktop-common
gecko? ( app-emulation/wine-gecko:${WINE_GECKO}[${MULTILIB_USEDEP}] )
gstreamer? ( media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}] )
mono? ( app-emulation/wine-mono:${WINE_MONO} )
perl? (
dev-lang/perl
dev-perl/XML-LibXML
)
selinux? ( sec-policy/selinux-wine )
udisks? ( sys-fs/udisks:2 )"
DEPEND="
${WINE_COMMON_DEPEND}
sys-kernel/linux-headers
x11-base/xorg-proto"
BDEPEND="
${PYTHON_DEPS}
dev-lang/perl
sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
nls? ( sys-devel/gettext )
!crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] )"
IDEPEND=">=app-eselect/eselect-wine-2"
QA_CONFIG_IMPL_DECL_SKIP=(
__clear_cache # unused on amd64+x86 (bug #900332)
res_getservers # false positive
)
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
PATCHES=(
"${FILESDIR}"/${PN}-7.0.4-musl.patch
"${FILESDIR}"/${PN}-7.0.4-noexecstack.patch
"${FILESDIR}"/${PN}-7.0.4-restore-menubuilder.patch
"${FILESDIR}"/${PN}-8.0.1c-unwind.patch
)
pkg_pretend() {
[[ ${MERGE_TYPE} == binary ]] && return
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
local mingw=-w64-mingw32
for mingw in $(usev abi_x86_64 x86_64${mingw}) $(usev abi_x86_32 i686${mingw}); do
if ! type -P ${mingw}-gcc >/dev/null; then
eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
eerror "yourself by installing sys-devel/crossdev then running:"
eerror
eerror " crossdev --target ${mingw}"
eerror
eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
eerror "--> Note that mingw builds are default for ${PN} even without this USE."
die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
fi
done
fi
}
src_prepare() {
# sanity check, bumping these has a history of oversights
local geckomono=$(sed -En '/^#define (GECKO|MONO)_VER/{s/[^0-9.]//gp}' \
dlls/appwiz.cpl/addons.c || die)
if [[ ${WINE_GECKO}$'\n'${WINE_MONO} != "${geckomono}" ]]; then
local gmfatal=
[[ ${PV} == *9999 ]] && gmfatal=nonfatal
${gmfatal} die -n "gecko/mono mismatch in ebuild, has: " ${geckomono} " (please file a bug)"
fi
default
# ensure .desktop calls this variant + slot
sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die
# similarly to staging, append to `wine --version` for identification
sed -i "s/wine_build[^1]*1/& (Proton-${WINE_PV})/" configure.ac || die
# always update for patches (including user's wrt #432348)
eautoreconf
tools/make_requests || die # perl
dlls/winevulkan/make_vulkan -x vk.xml || die # python, needed for proton's
}
src_configure() {
WINE_PREFIX=/usr/lib/${P}
WINE_DATADIR=/usr/share/${P}
local conf=(
--prefix="${EPREFIX}"${WINE_PREFIX}
--datadir="${EPREFIX}"${WINE_DATADIR}
--includedir="${EPREFIX}"/usr/include/${P}
--libdir="${EPREFIX}"${WINE_PREFIX}
--mandir="${EPREFIX}"${WINE_DATADIR}/man
# upstream (Valve) doesn't really support misc configurations (e.g.
# adds vulkan code not always guarded by --with-vulkan), so force
# some major options that are typically needed by games either way
--with-freetype
--with-mingw # needed by many, notably Blizzard titles
--with-opengl
--with-vulkan
--with-x
# ...and disable most options unimportant for games and unused by
# Proton rather than expose as volatile USEs with little support
--without-capi
--without-cups
--without-gphoto
--without-gssapi
--without-krb5
--without-netapi
--without-opencl
--without-pcap
--without-sane
ac_cv_lib_soname_odbc=
$(use_enable gecko mshtml)
$(use_enable mono mscoree)
--disable-tests
$(use_with alsa)
$(use_with fontconfig)
$(use_with gstreamer)
$(use_with nls gettext)
$(use_with osmesa)
--without-oss # media-sound/oss is not packaged (OSSv4)
$(use_with pulseaudio pulse)
$(use_with sdl)
$(use_with ssl gnutls)
$(use_with udev)
$(use_with udisks dbus) # dbus is only used for udisks
$(use_with unwind)
$(use_with usb)
$(use_with v4l v4l2)
$(use_with xcomposite)
$(use_with xinerama)
)
tc-ld-force-bfd # builds with non-bfd but broken at runtime (bug #867097)
filter-lto # build failure
use custom-cflags || strip-flags # can break in obscure ways at runtime
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
# temporary workaround for tc-ld-force-bfd not yet enforcing with mold
# https://github.com/gentoo/gentoo/pull/28355
[[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
append-ldflags -fuse-ld=bfd
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
for bits in $(usev abi_x86_64 64) $(usev abi_x86_32 32); do
(
einfo "Configuring ${PN} for ${bits}bits in ${WORKDIR}/build${bits} ..."
mkdir ../build${bits} || die
cd ../build${bits} || die
pe_arch=i386
if (( bits == 64 )); then
pe_arch=x86_64
: "${CROSSCC:=${CROSSCC_amd64:-x86_64-w64-mingw32-gcc}}"
conf+=( --enable-win64 )
elif use amd64; then
conf+=(
$(usev abi_x86_64 --with-wine64=../build64)
TARGETFLAGS=-m32 # for widl
)
# _setup is optional, but use over Wine's auto-detect (+#472038)
multilib_toolchain_setup x86
fi
: "${CROSSCC:=${CROSSCC_x86:-i686-w64-mingw32-gcc}}"
# CROSSCC is no longer recognized by Wine, but still use for now
# (future handling for CROSS* variables is subject to changes)
conf+=( ac_cv_prog_${pe_arch}_CC="${CROSSCC}" )
# use *FLAGS for mingw, but strip unsupported
: "${CROSSCFLAGS:=$(
# >=wine-7.21 configure.ac no longer adds -fno-strict by mistake
append-cflags '-fno-strict-aliasing'
filter-flags '-fstack-clash-protection' #758914
filter-flags '-fstack-protector*' #870136
filter-flags '-mfunction-return=thunk*' #878849
CC=${CROSSCC} test-flags-CC ${CFLAGS:--O2})}"
: "${CROSSLDFLAGS:=$(
filter-flags '-fuse-ld=*'
CC=${CROSSCC} test-flags-CCLD ${LDFLAGS})}"
export CROSS{C,LD}FLAGS
ECONF_SOURCE=${S} econf "${conf[@]}"
)
done
}
src_compile() {
use abi_x86_64 && emake -C ../build64 # do first
use abi_x86_32 && emake -C ../build32
}
src_install() {
use abi_x86_32 && emake DESTDIR="${D}" -C ../build32 install
use abi_x86_64 && emake DESTDIR="${D}" -C ../build64 install # do last
# symlink for plain 'wine' and install its man pages if 64bit-only #404331
if use abi_x86_64 && use !abi_x86_32; then
dosym wine64 ${WINE_PREFIX}/bin/wine
dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader
local man
for man in ../build64/loader/wine.*man; do
: "${man##*/wine}"
: "${_%.*}"
insinto ${WINE_DATADIR}/man/${_:+${_#.}/}man1
newins ${man} wine.1
done
fi
use perl || rm "${ED}"${WINE_DATADIR}/man/man1/wine{dump,maker}.1 \
"${ED}"${WINE_PREFIX}/bin/{function_grep.pl,wine{dump,maker}} || die
# create variant wrappers for eselect-wine
local bin
for bin in "${ED}"${WINE_PREFIX}/bin/*; do
make_wrapper "${bin##*/}-${P#wine-}" "${bin#"${ED}"}"
done
# don't let portage try to strip PE files with the wrong
# strip executable and instead handle it here (saves ~120MB)
dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows
use debug ||
find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
-exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} + || die
dodoc ANNOUNCE AUTHORS README* documentation/README*
readme.gentoo_create_doc
}
pkg_preinst() {
has_version ${CATEGORY}/${PN} && WINE_HAD_ANY_SLOT=
}
pkg_postinst() {
[[ -v WINE_HAD_ANY_SLOT ]] || readme.gentoo_print_elog
eselect wine update --if-unset || die
}
pkg_postrm() {
eselect wine update --if-unset || die
}

@ -2,7 +2,9 @@ DIST wine-8.0.tar.xz 29054044 BLAKE2B baf8f96b665119c9f38a148a2472dbe8f6ca8d4641
DIST wine-8.3.tar.xz 28983532 BLAKE2B b811a13aaa87f186c744254059d40fdf0740da42cf788acb2375c04cf3ecc281c92afc7bb7830d5797624d96f803edcb2d2778c5da378d89938fe0b68e72a287 SHA512 9c0c86f1d523cc65fe6bcb2f98e73f8909282eda1c04516ff35a32833e469421e099fe1351c3078ac96aa7884fc194a77fcf2ba8863e2a227316fd84562f1f5a
DIST wine-8.4.tar.xz 29031312 BLAKE2B 0b91267a68e4e332544d273646bb1e9389c3af3f48069ab7942096af5512e86a61d39788d91c221b4ae96e81858cfdff1e43a658ba407ff1450b6d752b8a3235 SHA512 8de144a65c0a3a2984fabc1294b647b8581da5fa8bd28a9ff756ab59256ee2b453d898453fc902bbc372a4e017a8e29b1eeef917f137ec1134ac08b671eccc7d
DIST wine-8.5.tar.xz 29064032 BLAKE2B 35fa6d7ec88ff67d9acf13466b3618eb45d664bed0a9ee581e46cb6e7692395837c8c8e86dead1dbcad582ef29c674a0df4b7180addee837b466eba7fdcd350a SHA512 f6aaab8a32eb7bce7f48d21d99417c9e6e8fe41b3d36320762775ef954db7ddd4fcff01d56475f35038d814557834a41a9e3ae85e5cae8a1b820c5044b42a327
DIST wine-8.6.tar.xz 29118124 BLAKE2B e4659785722f0c1adb9ce4a156fbafc8484977a5fe2f4a6e1d5eaf8f1f14c6787f080b9d389cdd8716eb7fd00ee2879fab2042af5dcb970530d2e19628442c73 SHA512 602680675f5e062121767769106199179c52a6dd93e97b9b8b4d8365134c72f7745e37d4e3edf6c89c553fb1bfe55b914e77177508fb4f032410d423359abba7
DIST wine-staging-8.0.tar.gz 9529620 BLAKE2B c9540195ea885d9f1e980232b0af471e92c61eb079cae35fdb3af5c13d4660b3466f751772440e38f15874082db296d16d1f1d68827a505b2dd949617eda0203 SHA512 76a729d7ced1ff634ddb455ddfaa66ca103b652f43cd152b57ada7431bb5fbb74f5e92bf2f4f329b6df6f5908130afad84e609cbce6df645d6cf8131e9b949f9
DIST wine-staging-8.3.tar.gz 9523336 BLAKE2B 3fdb6343ab3735e9235ea3d99e3da4d392de9620d93e85e2bd3b13ae2e0eca2654b2b48230a3bfd7c66ead1fb751ddb092b361943f7a95eb3df5a240c2b9e32b SHA512 e2b1dc107088f716f1c7e80bc25b152ff5c2c4c4a6f29a60e42eabdea0e8b5df84eaeaf8b978f5aefc3f9ad5962eb74784d5a98b95fa3694485d00f3fa628ce6
DIST wine-staging-8.4.tar.gz 9522340 BLAKE2B b9fb08f529c9c24d9d6b09adbb359b265e246b8f4651eef0983d10b9c84afbdc9c58e04180e802cd3a7d0951f12ff46495b1ec0508e02f5b76ae7d0d987dc22c SHA512 96a6a870020e59f8437c65604536fec4b80d7d9e5a937e5d0a6cb0b2b4e544e6153fa0cdf2a8fd2c32d090001334e68124c2855c6a2a1454fdcdb6ea23d75fd7
DIST wine-staging-8.5.tar.gz 9530306 BLAKE2B 9457fb44aea427c2c09d6329f2f585ae7e14ca32950204019136616d73ad1b83b629297499197b91fb542784b8e5b6edd8743ee6a72794ce58ef5c6b1d27f308 SHA512 9d347c55a62f661bdcc102d373e05d162217b7b1348bdb6f2b114d20e35146862379d2cf03a96916bd1d52166a538af55d48e25a169cd6ee23818673bd35909a
DIST wine-staging-8.6.1.tar.gz 9527141 BLAKE2B be43c642e6caa0f7e28a0aa45f736b839fe277a54c573955940523b6a27a0e4b7b5d531a027aab4a3c21a413fcac129dc16a7241700f2f848061fadafc9e695f SHA512 28bb066b55293e73df072cceb27a191365d6a319d859e6797bc443e830bb6ddd22cdbf7d9692b43e8eb7f2feb68ac1205aa440c60b37ab7c10ebeab83aa590ce

@ -0,0 +1,369 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MULTILIB_COMPAT=( abi_x86_{32,64} )
PYTHON_COMPAT=( python3_{9..11} )
inherit autotools edo flag-o-matic multilib multilib-build
inherit python-any-r1 toolchain-funcs wrapper
WINE_GECKO=2.47.4
WINE_MONO=7.4.0
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/wine-staging/wine-staging.git"
WINE_EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine.git"
else
(( $(ver_cut 2) )) && WINE_SDIR=$(ver_cut 1).x || WINE_SDIR=$(ver_cut 1).0
SRC_URI="
https://dl.winehq.org/wine/source/${WINE_SDIR}/wine-$(ver_cut 1-2).tar.xz
https://github.com/wine-staging/wine-staging/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="-* ~amd64 ~x86"
fi
S="${WORKDIR}/wine-$(ver_cut 1-2)"
DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset"
HOMEPAGE="https://wiki.winehq.org/Wine-Staging"
LICENSE="LGPL-2.1+ BSD-2 IJG MIT OPENLDAP ZLIB gsm libpng2 libtiff"
SLOT="${PV}"
IUSE="
+X +abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups dos
llvm-libunwind debug custom-cflags +fontconfig +gecko gphoto2
+gstreamer kerberos +mingw +mono netapi nls opencl +opengl osmesa
pcap perl pulseaudio samba scanner +sdl selinux smartcard +ssl
+truetype udev udisks +unwind usb v4l +vulkan wayland +xcomposite
xinerama"
REQUIRED_USE="
X? ( truetype )
crossdev-mingw? ( mingw )" # bug #551124 for truetype
# tests are non-trivial to run, can hang easily, don't play well with
# sandbox, and several need real opengl/vulkan or network access
RESTRICT="test"
# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
WINE_DLOPEN_DEPEND="
X? (
x11-libs/libXcursor[${MULTILIB_USEDEP}]
x11-libs/libXfixes[${MULTILIB_USEDEP}]
x11-libs/libXi[${MULTILIB_USEDEP}]
x11-libs/libXrandr[${MULTILIB_USEDEP}]
x11-libs/libXrender[${MULTILIB_USEDEP}]
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
opengl? (
media-libs/libglvnd[X,${MULTILIB_USEDEP}]
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
)
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
)
cups? ( net-print/cups[${MULTILIB_USEDEP}] )
fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
netapi? ( net-fs/samba[${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
truetype? ( media-libs/freetype[${MULTILIB_USEDEP}] )
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )"
WINE_COMMON_DEPEND="
${WINE_DLOPEN_DEPEND}
X? (
x11-libs/libX11[${MULTILIB_USEDEP}]
x11-libs/libXext[${MULTILIB_USEDEP}]
)
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
capi? ( net-libs/libcapi:=[${MULTILIB_USEDEP}] )
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
gstreamer? (
dev-libs/glib:2[${MULTILIB_USEDEP}]
media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}]
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
)
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
scanner? ( media-gfx/sane-backends[${MULTILIB_USEDEP}] )
smartcard? ( sys-apps/pcsc-lite[${MULTILIB_USEDEP}] )
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
unwind? (
llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] )
!llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] )
)
usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] )
wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )"
RDEPEND="
${WINE_COMMON_DEPEND}
app-emulation/wine-desktop-common
dos? ( games-emulation/dosbox )
gecko? ( app-emulation/wine-gecko:${WINE_GECKO}[${MULTILIB_USEDEP}] )
gstreamer? ( media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}] )
mono? ( app-emulation/wine-mono:${WINE_MONO} )
perl? (
dev-lang/perl
dev-perl/XML-LibXML
)
samba? ( net-fs/samba[winbind] )
selinux? ( sec-policy/selinux-wine )
udisks? ( sys-fs/udisks:2 )"
DEPEND="
${WINE_COMMON_DEPEND}
sys-kernel/linux-headers
X? ( x11-base/xorg-proto )"
# gitapply.sh prefers git but can fallback to patch+extras
BDEPEND="
${PYTHON_DEPS}
|| (
dev-vcs/git
(
sys-apps/gawk
sys-apps/util-linux
)
)
dev-lang/perl
sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
mingw? ( !crossdev-mingw? (
>=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}]
) )
nls? ( sys-devel/gettext )"
IDEPEND=">=app-eselect/eselect-wine-2"
QA_CONFIG_IMPL_DECL_SKIP=(
__clear_cache # unused on amd64+x86 (bug #900334)
res_getservers # false positive
)
QA_FLAGS_IGNORED="usr/lib/.*/wine/.*-unix/odbc32.so" # has no compiled objects
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
PATCHES=(
"${FILESDIR}"/${PN}-7.17-noexecstack.patch
"${FILESDIR}"/${PN}-7.20-unwind.patch
)
pkg_pretend() {
[[ ${MERGE_TYPE} == binary ]] && return
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
local mingw=-w64-mingw32
for mingw in $(usev abi_x86_64 x86_64${mingw}) $(usev abi_x86_32 i686${mingw}); do
if ! type -P ${mingw}-gcc >/dev/null; then
eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
eerror "yourself by installing sys-devel/crossdev then running:"
eerror
eerror " crossdev --target ${mingw}"
eerror
eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
fi
done
fi
}
src_unpack() {
if [[ ${PV} == *9999 ]]; then
EGIT_CHECKOUT_DIR=${WORKDIR}/${P}
git-r3_src_unpack
EGIT_COMMIT=$(<"${EGIT_CHECKOUT_DIR}"/staging/upstream-commit) || die
EGIT_REPO_URI=${WINE_EGIT_REPO_URI}
EGIT_CHECKOUT_DIR=${S}
einfo "Fetching Wine commit matching the current patchset by default (${EGIT_COMMIT})"
git-r3_src_unpack
else
default
fi
}
src_prepare() {
local patchinstallargs=(
--all
--no-autoconf
-W winemenubuilder-Desktop_Icon_Path #652176
${MY_WINE_STAGING_CONF}
)
edo "${PYTHON}" ../${P}/staging/patchinstall.py "${patchinstallargs[@]}"
# sanity check, bumping these has a history of oversights
local geckomono=$(sed -En '/^#define (GECKO|MONO)_VER/{s/[^0-9.]//gp}' \
dlls/appwiz.cpl/addons.c || die)
if [[ ${WINE_GECKO}$'\n'${WINE_MONO} != "${geckomono}" ]]; then
local gmfatal=
[[ ${PV} == *9999 ]] && gmfatal=nonfatal
${gmfatal} die -n "gecko/mono mismatch in ebuild, has: " ${geckomono} " (please file a bug)"
fi
default
# ensure .desktop calls this variant + slot
sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die
# always update for patches (including user's wrt #432348)
eautoreconf
tools/make_requests || die # perl
}
src_configure() {
WINE_PREFIX=/usr/lib/${P}
WINE_DATADIR=/usr/share/${P}
local conf=(
--prefix="${EPREFIX}"${WINE_PREFIX}
--datadir="${EPREFIX}"${WINE_DATADIR}
--includedir="${EPREFIX}"/usr/include/${P}
--libdir="${EPREFIX}"${WINE_PREFIX}
--mandir="${EPREFIX}"${WINE_DATADIR}/man
$(use_enable gecko mshtml)
$(use_enable mono mscoree)
--disable-tests
$(use_with X x)
$(use_with alsa)
$(use_with capi)
$(use_with cups)
$(use_with fontconfig)
$(use_with gphoto2 gphoto)
$(use_with gstreamer)
$(use_with kerberos gssapi)
$(use_with kerberos krb5)
$(use_with mingw)
$(use_with netapi)
$(use_with nls gettext)
$(use_with opencl)
$(use_with opengl)
$(use_with osmesa)
--without-oss # media-sound/oss is not packaged (OSSv4)
$(use_with pcap)
$(use_with pulseaudio pulse)
$(use_with scanner sane)
$(use_with sdl)
$(use_with smartcard pcsclite)
$(use_with ssl gnutls)
$(use_with truetype freetype)
$(use_with udev)
$(use_with udisks dbus) # dbus is only used for udisks
$(use_with unwind)
$(use_with usb)
$(use_with v4l v4l2)
$(use_with vulkan)
$(use_with wayland)
$(use_with xcomposite)
$(use_with xinerama)
)
tc-ld-force-bfd # builds with non-bfd but broken at runtime (bug #867097)
filter-lto # build failure
use mingw || filter-flags -fno-plt # build failure
use custom-cflags || strip-flags # can break in obscure ways at runtime
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
# temporary workaround for tc-ld-force-bfd not yet enforcing with mold
# https://github.com/gentoo/gentoo/pull/28355
[[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
append-ldflags -fuse-ld=bfd
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
for bits in $(usev abi_x86_64 64) $(usev abi_x86_32 32); do
(
einfo "Configuring ${PN} for ${bits}bits in ${WORKDIR}/build${bits} ..."
mkdir ../build${bits} || die
cd ../build${bits} || die
pe_arch=i386
if (( bits == 64 )); then
pe_arch=x86_64
: "${CROSSCC:=${CROSSCC_amd64:-x86_64-w64-mingw32-gcc}}"
conf+=( --enable-win64 )
elif use amd64; then
conf+=(
$(usev abi_x86_64 --with-wine64=../build64)
TARGETFLAGS=-m32 # for widl
)
# _setup is optional, but use over Wine's auto-detect (+#472038)
multilib_toolchain_setup x86
fi
: "${CROSSCC:=${CROSSCC_x86:-i686-w64-mingw32-gcc}}"
if use mingw; then
# CROSSCC is no longer recognized by Wine, but still use for now
# (future handling for CROSS* variables is subject to changes)
conf+=( ac_cv_prog_${pe_arch}_CC="${CROSSCC}" )
# use *FLAGS for mingw, but strip unsupported
: "${CROSSCFLAGS:=$(
# >=wine-7.21 configure.ac no longer adds -fno-strict by mistake
append-cflags '-fno-strict-aliasing'
filter-flags '-fstack-clash-protection' #758914
filter-flags '-fstack-protector*' #870136
filter-flags '-mfunction-return=thunk*' #878849
CC=${CROSSCC} test-flags-CC ${CFLAGS:--O2})}"
: "${CROSSLDFLAGS:=$(
filter-flags '-fuse-ld=*'
CC=${CROSSCC} test-flags-CCLD ${LDFLAGS})}"
export CROSS{C,LD}FLAGS
fi
ECONF_SOURCE=${S} econf "${conf[@]}"
)
done
}
src_compile() {
use abi_x86_64 && emake -C ../build64 # do first
use abi_x86_32 && emake -C ../build32
}
src_install() {
use abi_x86_32 && emake DESTDIR="${D}" -C ../build32 install
use abi_x86_64 && emake DESTDIR="${D}" -C ../build64 install # do last
# symlink for plain 'wine' and install its man pages if 64bit-only #404331
if use abi_x86_64 && use !abi_x86_32; then
dosym wine64 ${WINE_PREFIX}/bin/wine
dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader
local man
for man in ../build64/loader/wine.*man; do
: "${man##*/wine}"
: "${_%.*}"
insinto ${WINE_DATADIR}/man/${_:+${_#.}/}man1
newins ${man} wine.1
done
fi
use perl || rm "${ED}"${WINE_DATADIR}/man/man1/wine{dump,maker}.1 \
"${ED}"${WINE_PREFIX}/bin/{function_grep.pl,wine{dump,maker}} || die
# create variant wrappers for eselect-wine
local bin
for bin in "${ED}"${WINE_PREFIX}/bin/*; do
make_wrapper "${bin##*/}-${P#wine-}" "${bin#"${ED}"}"
done
# don't let portage try to strip PE files with the wrong
# strip executable and instead handle it here (saves ~120MB)
if use mingw; then
dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows
use debug ||
find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
-exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} + || die
fi
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
pkg_postinst() {
eselect wine update --if-unset || die
}
pkg_postrm() {
eselect wine update --if-unset || die
}

@ -16,7 +16,7 @@ else
(( $(ver_cut 2) )) && WINE_SDIR=$(ver_cut 1).x || WINE_SDIR=$(ver_cut 1).0
SRC_URI="https://dl.winehq.org/wine/source/${WINE_SDIR}/wine-${PV}.tar.xz"
S="${WORKDIR}/wine-${PV}"
KEYWORDS="-* ~amd64 ~x86"
KEYWORDS="-* ~amd64 x86"
fi
DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"

@ -4,7 +4,13 @@ DIST brotli-666c3280cc11dc433c303d79a83d4ffbdd12cc8d.tar.gz 23855739 BLAKE2B 740
DIST edk2-7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5.tar.gz 13998677 BLAKE2B 3614ceb69e295a6afb37c7905d0aec3534d8daf3d9f22137c1b722da6dc764a3669d99af03f96155d45feb5058a6f725acf37d1048186fecff4232d64f96e97c SHA512 a1933d815b947fd4f13c96970a6dc36c3048e3ddf27c897684104b0129cf58331e46d3147062ae1fb8973f08cd373c319788dd850ac5e45da385eed8368571a4
DIST ipxe-git-3c040ad387099483102708bb1839110bc788cefb.tar.gz 3962725 BLAKE2B a8084abaf93a4ab06ba170427a66dab08e68ba1288f42ea744e2cbc66d6bd2294bee82f6d0994260d2cd60daf6a6068e40eb74fdeba2bccaa432d090d81fd9db SHA512 4ac1d07ce879a3a8c6c260380258c37f5e4ecddc880b27fb59afc38fbf3718e81b04a4dda2b58fe7a438a23175e00b6179fc067acbc4a75e33d93c4b85ff5d68
DIST seabios-1.14.0.tar.gz 628985 BLAKE2B cc1126925dab1551a655680d20d06ebf28c12c386500d1ee4df9e1a99403b4c5bc6a66c2cc5ef58b4c3d6d7226f35007506a6a1855c2cf2742469dcb7aba05bb SHA512 215c42f59425f8abd062be7b11fc0e39c977cee5001a2381551b0f851ac337d0dd53c065267e6dee0e710ffd700fa635f9007b89da8dfce0f47122c984ee8146
DIST seabios-1.16.0.tar.gz 635419 BLAKE2B b645f20bae341d56ce4fc4a7044446050d8490c6c136377f6dccf02c88100b0644bc13d210b4a517a8be6002d5671b0fba77120a2aca3a9bafbad5e88d037e40 SHA512 9daefcfb1c9edda4462a4b080c9bac552154d577ae19703a914928e43005e7a52edd86869c6507e94a7f0c61ce8b3e6f5dea38cd5146628cb138a130947c522f
DIST xen-4.15.4.tar.gz 40820669 BLAKE2B 22edaf817851856c777d02b5211be932c1731bf50fb582545f948c7e8f871937f7c94636496a480642fa7ed8222e12dda091a06638c75b9ee935f3ff9bc2aea0 SHA512 fa6a4991c0699025af163ed117f8d0523c0a482102464615025eb3575d755ffacec5df394e3fe01871cde6028678f654d99f8e3c2533b138765971a2a7994cb8
DIST xen-4.16.3.tar.gz 45003057 BLAKE2B 6092cff33bffed1b6133daf8d3ce53c57204297e66df6ac58266b2da8d5585df62ae718cc8afaad36ebe6dabdce65b9979b0d13b88e60f2b23c01be21ae4db8e SHA512 b8cbd6f95681de5f824ada2d3cbe0653a38514a18df0dafcf811fb255219c7abec96f46217bdb0c83e1119f685da9a6af7194eeaa94f1cc3c892702782133b4f
DIST xen-4.17.0.tar.gz 46484553 BLAKE2B a4665fb557eb264566179bc5b2678d44f694ef5b20bb7dc58c8a7e6fcdf0145f25a462cfe2ad35be67a4a5ca4579c03eb092954915953e2ab98ae90b4ea983f0 SHA512 8aa7c3025c81127a4f653411bc1cbe8fc27b767a2f96a2a454329a6773cb74d714ecc1ff011a8e7169c6b83b2cc5cb39c39798bd6b1178df75ce9ff00f5a1011
DIST xen-gentoo-patches-4.15.3-gentoo-patchset-2.tar.bz2 4681 BLAKE2B 59fe5c2d5f3b975f281778ee96f8771debde7ae738636fc8294e7e2578dffc40938d8c48e4e94f0341762b2ba8e1b6769f71b7783322fb3b2a0a187bbf2b5104 SHA512 8540aa3631277fb652f90c53f6f5b4e9d119a7ed267dec96d7aecca4eac2c465ec3be32b0b82057e79f858cc8115bfdfbf2af5c4879a0be3f98ed68cbe64fdae
DIST xen-gentoo-patches-4.16.1-gentoo-patchset-2.tar.bz2 5403 BLAKE2B 7fa3b4aa123b2deed260d02b8d34a35dd205207038edb92569278b25c6fe32e0f0e3857c07755553e047f0eb0d9fe7f8b0816e0f3d7f68aee7929afaf6611dfd SHA512 9e7d25640b24235acf756b031b8b7cee582dded65fe7b94a706c990232e9704d574036c3a9605f285e8e9534578d100a3f38719b27b22775f17ef8f68287997e
DIST xen-gentoo-patches-4.17.0-gentoo-patchset-0.tar.bz2 4474 BLAKE2B aa367a4ccf96a61c04c52e415d7143ca946323d7d50d6ab16ad7a917279ad4b1aac802e35e7e306c3a244317db713e913dc8d6343717b2307ccd049adb956a0d SHA512 debba71b17be7b1bb9a70f01782c12c3c053cc2fb1f4ad95829356ee365878aad68430055d4b8c648ef1ff54cb9e3e7c03d40d14c560d51f8ac4fce2b8f82190
DIST xen-upstream-patches-4.15.5-pre-patchset-0.tar.bz2 21880 BLAKE2B 89ef7b8cc56ca5a4738ce665aaa3461b61c554088b1b727e34ea417beb43f9b8eae403bae50449c0c96e79ff4b71edf9b6808071b1ca8f0b3878bf1cb9697c6e SHA512 0752d699168e3c2ba13a0ad886dd1d1f9affefc5e7fed9980b2a634012508f405c2accfcd7e92f79016bb869d2d0b09139266a952cc203bea37870fc7d910e51
DIST xen-upstream-patches-4.16.4-pre-patchset-0.tar.bz2 60151 BLAKE2B 5c8a8f772ba6be5f776b3270b9f1e64df35c2be7b4e238262eb4ec6b4859576b3ecb448880e1e05ad53dbdaa71643e678978151b10d0d47c901ab3e3518b7eb0 SHA512 b33a9b2f602f18165e048ef6a339bc5bf3f800fb1f2449e2e1a6090774ce3ef07b1d7ea8e9e6449fae7b91afcc1a6e281c1bb218a56bca74ba7f12b491fab186
DIST xen-upstream-patches-4.17.1-pre-patchset-0.tar.bz2 87023 BLAKE2B 4b6c66c20aecde5a696ee6879b1a9e9b365eba3a2e55c7b13153adb4c100081242a5f4498e17597697ac96a75685d88536309accb8dcebee45b31c9b35a3d7d8 SHA512 9da15f7726f2813a6dc701dbf67c1aa52a574c8049238c6d18d68bc0c0c80db98b925cd1cb7ec5627ff8b3489847608a185353cda6e599e6e5bffe75339b18a7

@ -0,0 +1,541 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..10} )
PYTHON_REQ_USE='ncurses,xml(+),threads(+)'
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="amd64 ~arm ~arm64 x86"
SEABIOS_VER="1.16.0"
EDK2_COMMIT="7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5"
EDK2_OPENSSL_VERSION="1_1_1j"
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
IPXE_COMMIT="3c040ad387099483102708bb1839110bc788cefb"
XEN_GENTOO_PATCHSET_NUM=2
XEN_GENTOO_PATCHSET_BASE=4.15.3
XEN_PRE_PATCHSET_NUM=0
XEN_PRE_VERSION_BASE=4.15.4
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
if [[ -z "${XEN_GENTOO_PATCHSET_BASE}" ]]; then
XEN_GENTOO_PATCHSET_BASE="${XEN_BASE_PV}"
fi
SRC_URI="
https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz
https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
ipxe? ( https://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
)
"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="https://xenproject.org"
DOCS=( README )
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
# >=dev-lang/ocaml-4 stable
# Masked in profiles/eapi-5-files instead
IUSE="api debug doc +hvm +ipxe lzma ocaml ovmf pygrub python +qemu +qemu-traditional +rombios screen selinux sdl static-libs system-ipxe system-qemu system-seabios"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
ipxe? ( rombios )
ovmf? ( hvm )
pygrub? ( python )
rombios? ( hvm )
system-ipxe? ( rombios )
?? ( ipxe system-ipxe )
?? ( qemu system-qemu )"
COMMON_DEPEND="
lzma? ( app-arch/xz-utils )
qemu? (
dev-libs/glib:2
sys-libs/pam
)
app-arch/bzip2
dev-libs/libnl:3
dev-libs/lzo:2
dev-libs/yajl
sys-apps/util-linux
sys-fs/e2fsprogs
sys-libs/ncurses
sys-libs/zlib
${PYTHON_DEPS}
"
RDEPEND="${COMMON_DEPEND}
sys-apps/iproute2[-minimal]
net-misc/bridge-utils
screen? (
app-misc/screen
app-admin/logrotate
)
selinux? ( sec-policy/selinux-xen )"
DEPEND="${COMMON_DEPEND}
app-misc/pax-utils
>=sys-kernel/linux-headers-4.11
x11-libs/pixman
$(python_gen_cond_dep '
dev-python/lxml[${PYTHON_USEDEP}]
')
x86? ( sys-devel/dev86
system-ipxe? ( sys-firmware/ipxe[qemu] )
sys-power/iasl )
api? ( dev-libs/libxml2
net-misc/curl )
ovmf? (
!arm? ( !arm64? ( dev-lang/nasm ) )
$(python_gen_impl_dep sqlite)
)
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-power/iasl
system-seabios? (
|| (
sys-firmware/seabios
sys-firmware/seabios-bin
)
)
system-ipxe? ( sys-firmware/ipxe[qemu] )
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
arm64? ( sys-power/iasl
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
doc? (
app-text/ghostscript-gpl
app-text/pandoc
$(python_gen_cond_dep '
dev-python/markdown[${PYTHON_USEDEP}]
')
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-base/xorg-proto )
qemu? (
app-arch/snappy:=
dev-util/meson
sdl? (
media-libs/libsdl[X]
media-libs/libsdl2[X]
)
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
dev-lang/ocaml[ocamlopt] )
python? ( >=dev-lang/swig-4.0.0 )"
BDEPEND="dev-lang/perl
sys-devel/bison
sys-devel/gettext"
# hvmloader is used to bootstrap a fully virtualized kernel
# Approved by QA team in bug #144032
QA_WX_LOAD="
usr/libexec/xen/boot/hvmloader
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/share/qemu-xen/qemu/hppa-firmware.img
usr/share/qemu-xen/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_EXECSTACK="
usr/share/qemu-xen/qemu/hppa-firmware.img
"
QA_PREBUILT="
usr/libexec/xen/bin/elf2dmp
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-edid
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-keymap
usr/libexec/xen/bin/qemu-nbd
usr/libexec/xen/bin/qemu-pr-helper
usr/libexec/xen/bin/qemu-storage-daemon
usr/libexec/xen/bin/qemu-system-i386
usr/libexec/xen/bin/virtfs-proxy-helper
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/libexec/xen/libexec/qemu-pr-helper
usr/libexec/xen/libexec/virtfs-proxy-helper
usr/libexec/xen/libexec/virtiofsd
usr/libexec/xen/libexec/xen-bridge-helper
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/s390-netboot.img
usr/share/qemu-xen/qemu/u-boot.e500
"
RESTRICT="test"
pkg_setup() {
python_setup
export "CONFIG_LOMOUNT=y"
#bug 522642, disable compile tools/tests
export "CONFIG_TESTS=n"
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
if use x86 && use amd64; then
die "Confusion! Both x86 and amd64 are set in your use flags!"
elif use x86; then
export XEN_TARGET_ARCH="x86_32"
elif use amd64 ; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
pushd tools/firmware/ > /dev/null
ln -s seabios-dir-remote seabios-dir || die
popd > /dev/null
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Rename qemu-bridge-helper to xen-bridge-helper to avoid file
# collisions with app-emulation/qemu.
sed -i 's/qemu-bridge-helper/xen-bridge-helper/g' \
tools/qemu-xen/include/net/net.h \
tools/qemu-xen/Makefile \
tools/qemu-xen/qemu-bridge-helper.c \
tools/qemu-xen/qemu-options.hx \
|| die
if use ovmf; then
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
# Bug #816987
pushd tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli > /dev/null
eapply "${FILESDIR}/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
pushd tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli > /dev/null
eapply "${FILESDIR}/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
fi
# ipxe
if use ipxe; then
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/ipxe.tar.gz || die
# gcc 11
cp "${XEN_GENTOO_PATCHES_DIR}/ipxe/${PN}-4.15.0-ipxe-gcc11.patch" tools/firmware/etherboot/patches/ipxe-gcc11.patch || die
echo ipxe-gcc11.patch >> tools/firmware/etherboot/patches/series || die
fi
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
# Fix texi2html build error with new texi2html, qemu.doc.html
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
# Drop .config, fixes to gcc-4.6
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
# drop flags
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
if ! use pygrub; then
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
fi
if ! use python; then
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
fi
if ! use hvm; then
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
# Bug 351648
elif ! use x86 && ! has x86 $(get_all_abis); then
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
export CPATH="${WORKDIR}"/extra-headers
fi
if use qemu; then
if use sdl; then
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
tools/Makefile || die
else
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
tools/qemu-xen-traditional/xen-setup || die
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
tools/Makefile || die
fi
else
# Don't bother with qemu, only needed for fully virtualised guests
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
fi
# Reset bash completion dir; Bug 472438
sed -e "s;^BASH_COMPLETION_DIR :=.*;BASH_COMPLETION_DIR := $(get_bashcompdir);" \
-i config/Paths.mk.in || die
# xencommons, Bug #492332, sed lighter weight than patching
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
-i tools/hotplug/Linux/init.d/xencommons.in || die
# fix bashishm
sed -e '/Usage/s/\$//g' \
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
# respect multilib, usr/lib/libcacard.so.0.0.0
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
-i tools/qemu-xen/configure || die
#bug 518136, don't build 32bit exactuable for nomultilib profile
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
fi
# uncomment lines in xl.conf
sed -e 's:^#autoballoon=:autoballoon=:' \
-e 's:^#lockfile=:lockfile=:' \
-e 's:^#vif.default.script=:vif.default.script=:' \
-i tools/examples/xl.conf || die
# disable capstone (Bug #673474)
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
-i tools/Makefile || die
# disable glusterfs
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
-i tools/Makefile || die
# disable jpeg automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-jpeg:" \
-i tools/Makefile || die
# disable png automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-png:" \
-i tools/Makefile || die
# disable docker (Bug #732970)
sed -e "s:\$\$source/configure:\0 --disable-containers:" \
-i tools/Makefile || die
# disable abi-dumper (Bug #791172)
sed -e 's/$(ABI_DUMPER) /echo /g' \
-i tools/libs/libs.mk || die
# Remove -Werror
find . -type f \( -name Makefile -o -name "*.mk" \) \
-exec sed -i \
-e 's/-Werror //g' \
-e '/^CFLAGS *+= -Werror$/d' \
-e 's/, "-Werror"//' \
{} + || die
default
}
src_configure() {
local myconf=(
--libdir="${EPREFIX}/usr/$(get_libdir)"
--libexecdir="${EPREFIX}/usr/libexec"
--localstatedir="${EPREFIX}/var"
--disable-golang
--disable-werror
--disable-xen
--enable-tools
--enable-docs
$(use_enable api xenapi)
$(use_enable ipxe)
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '')
$(use_enable ocaml ocamltools)
$(use_enable ovmf)
$(use_enable rombios)
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored')
)
use system-seabios && myconf+=( --with-system-seabios=/usr/share/seabios/bios.bin )
use system-qemu && myconf+=( --with-system-qemu=/usr/bin/qemu-system-x86_64 )
use amd64 && myconf+=( $(use_enable qemu-traditional) )
tc-ld-disable-gold # Bug 669570
econf ${myconf[@]}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=y"
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
# bug #845099
if use ipxe; then
local -x NO_WERROR=1
fi
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
if use doc; then
emake -C docs build
else
emake -C docs man-pages
fi
}
src_install() {
# Override auto-detection in the build system, bug #382573
export INITD_DIR=/tmp/init.d
export CONFIG_LEAF_DIR=../tmp/default
# Let the build system compile installed Python modules.
local PYTHONDONTWRITEBYTECODE
export PYTHONDONTWRITEBYTECODE
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
XEN_PYTHON_NATIVE_INSTALL=y install-tools
# Created at runtime
rm -rv "${ED}/var/run" || die
# Fix the remaining Python shebangs.
python_fix_shebang "${D}"
# Remove RedHat-specific stuff
rm -rf "${D}"/tmp || die
if use doc; then
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
dodoc -r docs/{pdf,txt}
else
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
fi
dodoc ${DOCS[@]}
newconfd "${FILESDIR}"/xendomains.confd xendomains
newconfd "${FILESDIR}"/xenstored.confd xenstored
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
newinitd "${FILESDIR}"/xencommons.initd xencommons
newconfd "${FILESDIR}"/xencommons.confd xencommons
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
if use screen; then
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
keepdir /var/log/xen-consoles
fi
# For -static-libs wrt Bug 384355
if ! use static-libs; then
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
fi
# for xendomains
keepdir /etc/xen/auto
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
keepdir /var/lib/xen/dump
keepdir /var/lib/xen/xenpaging
keepdir /var/lib/xenstored
keepdir /var/log/xen
if use python; then
python_domodule "${S}/tools/libs/stat/bindings/swig/python/xenstat.py"
python_domodule "${S}/tools/libs/stat/bindings/swig/python/_xenstat.so"
fi
python_optimize
}
pkg_postinst() {
elog "Official Xen Guide and the offical wiki page:"
elog "https://wiki.gentoo.org/wiki/Xen"
elog "https://wiki.xen.org/wiki/Main_Page"
elog ""
elog "Recommended to utilise the xencommons script to config system at boot"
elog "Add by use of rc-update on completion of the install"
if ! use hvm; then
echo
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
elog "support enable the hvm use flag."
elog "An x86 or amd64 system is required to build HVM support."
fi
if use qemu; then
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
fi
}

@ -0,0 +1,532 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE='ncurses,xml(+),threads(+)'
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 readme.gentoo-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
SEABIOS_VER="1.16.0"
EDK2_COMMIT="7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5"
EDK2_OPENSSL_VERSION="1_1_1j"
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
IPXE_COMMIT="3c040ad387099483102708bb1839110bc788cefb"
XEN_GENTOO_PATCHSET_NUM=2
XEN_GENTOO_PATCHSET_BASE=4.16.1
XEN_PRE_PATCHSET_NUM=0
XEN_PRE_VERSION_BASE=4.16.3
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="
https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz
https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
ipxe? ( https://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
)
"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="https://xenproject.org"
DOCS=( README )
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
# >=dev-lang/ocaml-4 stable
# Masked in profiles/eapi-5-files instead
IUSE="api debug doc +hvm +ipxe lzma ocaml ovmf pygrub python +qemu +qemu-traditional +rombios screen selinux sdl static-libs system-ipxe system-qemu system-seabios systemd zstd"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
ipxe? ( rombios )
ovmf? ( hvm )
pygrub? ( python )
rombios? ( hvm )
system-ipxe? ( rombios )
?? ( ipxe system-ipxe )
?? ( qemu system-qemu )"
COMMON_DEPEND="
lzma? ( app-arch/xz-utils )
qemu? (
dev-libs/glib:2
sys-libs/pam
)
zstd? ( app-arch/zstd )
app-arch/bzip2
app-arch/zstd
dev-libs/libnl:3
dev-libs/lzo:2
dev-libs/yajl
sys-apps/util-linux
sys-fs/e2fsprogs
sys-libs/ncurses
sys-libs/zlib
${PYTHON_DEPS}
"
RDEPEND="${COMMON_DEPEND}
sys-apps/iproute2[-minimal]
net-misc/bridge-utils
screen? (
app-misc/screen
app-admin/logrotate
)
selinux? ( sec-policy/selinux-xen )"
DEPEND="${COMMON_DEPEND}
app-misc/pax-utils
>=sys-kernel/linux-headers-4.11
x11-libs/pixman
$(python_gen_cond_dep '
dev-python/lxml[${PYTHON_USEDEP}]
')
x86? ( sys-devel/dev86
system-ipxe? ( sys-firmware/ipxe[qemu] )
sys-power/iasl )
api? ( dev-libs/libxml2
net-misc/curl )
ovmf? (
!arm? ( !arm64? ( dev-lang/nasm ) )
$(python_gen_impl_dep sqlite)
)
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-power/iasl
system-seabios? (
|| (
sys-firmware/seabios
sys-firmware/seabios-bin
)
)
system-ipxe? ( sys-firmware/ipxe[qemu] )
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
arm64? ( sys-power/iasl
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
doc? (
app-text/ghostscript-gpl
app-text/pandoc
$(python_gen_cond_dep '
dev-python/markdown[${PYTHON_USEDEP}]
')
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-base/xorg-proto )
qemu? (
app-arch/snappy:=
dev-util/meson
sdl? (
media-libs/libsdl[X]
media-libs/libsdl2[X]
)
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
dev-lang/ocaml[ocamlopt] )
python? ( >=dev-lang/swig-4.0.0 )"
BDEPEND="dev-lang/perl
sys-devel/bison
sys-devel/gettext"
# hvmloader is used to bootstrap a fully virtualized kernel
# Approved by QA team in bug #144032
QA_WX_LOAD="
usr/libexec/xen/boot/hvmloader
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/share/qemu-xen/qemu/hppa-firmware.img
usr/share/qemu-xen/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_EXECSTACK="
usr/share/qemu-xen/qemu/hppa-firmware.img
"
QA_PREBUILT="
usr/libexec/xen/bin/elf2dmp
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-edid
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-keymap
usr/libexec/xen/bin/qemu-nbd
usr/libexec/xen/bin/qemu-pr-helper
usr/libexec/xen/bin/qemu-storage-daemon
usr/libexec/xen/bin/qemu-system-i386
usr/libexec/xen/bin/virtfs-proxy-helper
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/libexec/xen/libexec/qemu-pr-helper
usr/libexec/xen/libexec/virtfs-proxy-helper
usr/libexec/xen/libexec/virtiofsd
usr/libexec/xen/libexec/xen-bridge-helper
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/s390-netboot.img
usr/share/qemu-xen/qemu/u-boot.e500
"
RESTRICT="test"
pkg_setup() {
python_setup
export "CONFIG_LOMOUNT=y"
#bug 522642, disable compile tools/tests
export "CONFIG_TESTS=n"
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
if use x86 && use amd64; then
die "Confusion! Both x86 and amd64 are set in your use flags!"
elif use x86; then
export XEN_TARGET_ARCH="x86_32"
elif use amd64 ; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
pushd tools/firmware/ > /dev/null
ln -s seabios-dir-remote seabios-dir || die
popd > /dev/null
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Rename qemu-bridge-helper to xen-bridge-helper to avoid file
# collisions with app-emulation/qemu.
sed -i 's/qemu-bridge-helper/xen-bridge-helper/g' \
tools/qemu-xen/include/net/net.h \
tools/qemu-xen/meson.build \
tools/qemu-xen/qemu-bridge-helper.c \
tools/qemu-xen/qemu-options.hx \
|| die
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
if use ovmf; then
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
# Bug #816987
pushd tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli > /dev/null
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
pushd tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli > /dev/null
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
fi
# ipxe
if use ipxe; then
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/ipxe.tar.gz || die
# gcc 11
cp "${XEN_GENTOO_PATCHES_DIR}/ipxe/${PN}-4.15.0-ipxe-gcc11.patch" tools/firmware/etherboot/patches/ipxe-gcc11.patch || die
echo ipxe-gcc11.patch >> tools/firmware/etherboot/patches/series || die
fi
# Fix texi2html build error with new texi2html, qemu.doc.html
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
# Drop .config, fixes to gcc-4.6
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
# drop flags
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
if ! use pygrub; then
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
fi
if ! use python; then
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
fi
if ! use hvm; then
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
# Bug 351648
elif ! use x86 && ! has x86 $(get_all_abis); then
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
export CPATH="${WORKDIR}"/extra-headers
fi
if use qemu; then
if use sdl; then
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
tools/Makefile || die
else
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
tools/qemu-xen-traditional/xen-setup || die
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
tools/Makefile || die
fi
else
# Don't bother with qemu, only needed for fully virtualised guests
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
fi
# Reset bash completion dir; Bug 472438
sed -e "s;^BASH_COMPLETION_DIR :=.*;BASH_COMPLETION_DIR := $(get_bashcompdir);" \
-i config/Paths.mk.in || die
# xencommons, Bug #492332, sed lighter weight than patching
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
-i tools/hotplug/Linux/init.d/xencommons.in || die
# fix bashishm
sed -e '/Usage/s/\$//g' \
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
# respect multilib, usr/lib/libcacard.so.0.0.0
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
-i tools/qemu-xen/configure || die
#bug 518136, don't build 32bit exactuable for nomultilib profile
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
fi
# uncomment lines in xl.conf
sed -e 's:^#autoballoon=:autoballoon=:' \
-e 's:^#lockfile=:lockfile=:' \
-e 's:^#vif.default.script=:vif.default.script=:' \
-i tools/examples/xl.conf || die
# disable capstone (Bug #673474)
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
-i tools/Makefile || die
# disable glusterfs
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
-i tools/Makefile || die
# disable jpeg automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-jpeg:" \
-i tools/Makefile || die
# disable png automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-png:" \
-i tools/Makefile || die
# disable docker (Bug #732970)
sed -e "s:\$\$source/configure:\0 --disable-containers:" \
-i tools/Makefile || die
# disable abi-dumper (Bug #791172)
sed -e 's/$(ABI_DUMPER) /echo /g' \
-i tools/libs/libs.mk || die
# Remove -Werror
find . -type f \( -name Makefile -o -name "*.mk" \) \
-exec sed -i \
-e 's/-Werror //g' \
-e '/^CFLAGS *+= -Werror$/d' \
-e 's/, "-Werror"//' \
{} + || die
default
}
src_configure() {
local myconf=(
--libdir="${EPREFIX}/usr/$(get_libdir)"
--libexecdir="${EPREFIX}/usr/libexec"
--localstatedir="${EPREFIX}/var"
--disable-golang
--disable-werror
--disable-xen
--enable-tools
--enable-docs
$(use_enable api xenapi)
$(use_enable ipxe)
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '')
$(use_enable ocaml ocamltools)
$(use_enable ovmf)
$(use_enable rombios)
$(use_enable systemd)
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored')
)
use system-seabios && myconf+=( --with-system-seabios=/usr/share/seabios/bios.bin )
use system-qemu && myconf+=( --with-system-qemu=/usr/bin/qemu-system-x86_64 )
use amd64 && myconf+=( $(use_enable qemu-traditional) )
tc-ld-disable-gold # Bug 669570
econf ${myconf[@]}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=y"
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
# bug #845099
if use ipxe; then
local -x NO_WERROR=1
fi
emake \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
LD="$(tc-getLD)" \
AR="$(tc-getAR)" \
OBJDUMP="$(tc-getOBJDUMP)" \
RANLIB="$(tc-getRANLIB)" \
build-tools ${myopt}
if use doc; then
emake -C docs build
else
emake -C docs man-pages
fi
}
src_install() {
# Override auto-detection in the build system, bug #382573
export INITD_DIR=/tmp/init.d
export CONFIG_LEAF_DIR=../tmp/default
# Let the build system compile installed Python modules.
local PYTHONDONTWRITEBYTECODE
export PYTHONDONTWRITEBYTECODE
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
XEN_PYTHON_NATIVE_INSTALL=y install-tools
# Created at runtime
rm -rv "${ED}/var/run" || die
# Fix the remaining Python shebangs.
python_fix_shebang "${D}"
# Remove RedHat-specific stuff
rm -rf "${D}"/tmp || die
if use doc; then
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
dodoc -r docs/{pdf,txt}
else
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
fi
dodoc ${DOCS[@]}
newconfd "${FILESDIR}"/xendomains.confd xendomains
newconfd "${FILESDIR}"/xenstored.confd xenstored
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
newinitd "${FILESDIR}"/xencommons.initd xencommons
newconfd "${FILESDIR}"/xencommons.confd xencommons
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
if use screen; then
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
keepdir /var/log/xen-consoles
fi
# For -static-libs wrt Bug 384355
if ! use static-libs; then
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
fi
# for xendomains
keepdir /etc/xen/auto
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
keepdir /var/lib/xen/dump
keepdir /var/lib/xen/xenpaging
keepdir /var/lib/xenstored
keepdir /var/log/xen
if use python; then
python_domodule "${S}/tools/libs/stat/bindings/swig/python/xenstat.py"
python_domodule "${S}/tools/libs/stat/bindings/swig/python/_xenstat.so"
fi
python_optimize
readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
}

@ -0,0 +1,533 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE='ncurses,xml(+),threads(+)'
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 readme.gentoo-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
SEABIOS_VER="1.16.0"
EDK2_COMMIT="7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5"
EDK2_OPENSSL_VERSION="1_1_1j"
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
IPXE_COMMIT="3c040ad387099483102708bb1839110bc788cefb"
XEN_GENTOO_PATCHSET_NUM=0
XEN_GENTOO_PATCHSET_BASE=4.17.0
XEN_PRE_PATCHSET_NUM=0
XEN_PRE_VERSION_BASE=4.17.0
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="
https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz
https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
ipxe? ( https://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
)
"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="https://xenproject.org"
DOCS=( README )
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
# >=dev-lang/ocaml-4 stable
# Masked in profiles/eapi-5-files instead
IUSE="api debug doc +hvm +ipxe lzma ocaml ovmf pygrub python +qemu +qemu-traditional +rombios screen selinux sdl static-libs system-ipxe system-qemu system-seabios systemd zstd"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
ipxe? ( rombios )
ovmf? ( hvm )
pygrub? ( python )
rombios? ( hvm )
system-ipxe? ( rombios )
?? ( ipxe system-ipxe )
?? ( qemu system-qemu )"
COMMON_DEPEND="
lzma? ( app-arch/xz-utils )
qemu? (
dev-libs/glib:2
sys-libs/pam
)
zstd? ( app-arch/zstd )
app-arch/bzip2
app-arch/zstd
dev-libs/libnl:3
dev-libs/lzo:2
dev-libs/yajl
sys-apps/util-linux
sys-fs/e2fsprogs
sys-libs/ncurses
sys-libs/zlib
${PYTHON_DEPS}
"
RDEPEND="${COMMON_DEPEND}
sys-apps/iproute2[-minimal]
net-misc/bridge-utils
screen? (
app-misc/screen
app-admin/logrotate
)
selinux? ( sec-policy/selinux-xen )"
DEPEND="${COMMON_DEPEND}
app-misc/pax-utils
>=sys-kernel/linux-headers-4.11
x11-libs/pixman
$(python_gen_cond_dep '
dev-python/lxml[${PYTHON_USEDEP}]
')
x86? ( sys-devel/dev86
system-ipxe? ( sys-firmware/ipxe[qemu] )
sys-power/iasl )
api? ( dev-libs/libxml2
net-misc/curl )
ovmf? (
!arm? ( !arm64? ( dev-lang/nasm ) )
$(python_gen_impl_dep sqlite)
)
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-power/iasl
system-seabios? (
|| (
sys-firmware/seabios
sys-firmware/seabios-bin
)
)
system-ipxe? ( sys-firmware/ipxe[qemu] )
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
arm64? ( sys-power/iasl
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
doc? (
app-text/ghostscript-gpl
app-text/pandoc
$(python_gen_cond_dep '
dev-python/markdown[${PYTHON_USEDEP}]
')
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-base/xorg-proto )
qemu? (
app-arch/snappy:=
dev-util/meson
sdl? (
media-libs/libsdl[X]
media-libs/libsdl2[X]
)
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
dev-lang/ocaml[ocamlopt] )
python? ( >=dev-lang/swig-4.0.0 )"
BDEPEND="dev-lang/perl
sys-devel/bison
sys-devel/gettext"
# hvmloader is used to bootstrap a fully virtualized kernel
# Approved by QA team in bug #144032
QA_WX_LOAD="
usr/libexec/xen/boot/hvmloader
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/share/qemu-xen/qemu/hppa-firmware.img
usr/share/qemu-xen/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_EXECSTACK="
usr/share/qemu-xen/qemu/hppa-firmware.img
"
QA_PREBUILT="
usr/libexec/xen/bin/elf2dmp
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-edid
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-keymap
usr/libexec/xen/bin/qemu-nbd
usr/libexec/xen/bin/qemu-pr-helper
usr/libexec/xen/bin/qemu-storage-daemon
usr/libexec/xen/bin/qemu-system-i386
usr/libexec/xen/bin/virtfs-proxy-helper
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/libexec/xen/libexec/qemu-pr-helper
usr/libexec/xen/libexec/virtfs-proxy-helper
usr/libexec/xen/libexec/virtiofsd
usr/libexec/xen/libexec/xen-bridge-helper
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/s390-netboot.img
usr/share/qemu-xen/qemu/u-boot.e500
"
RESTRICT="test"
pkg_setup() {
python_setup
export "CONFIG_LOMOUNT=y"
#bug 522642, disable compile tools/tests
export "CONFIG_TESTS=n"
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
if use x86 && use amd64; then
die "Confusion! Both x86 and amd64 are set in your use flags!"
elif use x86; then
export XEN_TARGET_ARCH="x86_32"
elif use amd64 ; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
pushd tools/firmware/ > /dev/null
ln -s seabios-dir-remote seabios-dir || die
popd > /dev/null
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Rename qemu-bridge-helper to xen-bridge-helper to avoid file
# collisions with app-emulation/qemu.
sed -i 's/qemu-bridge-helper/xen-bridge-helper/g' \
tools/qemu-xen/include/net/net.h \
tools/qemu-xen/meson.build \
tools/qemu-xen/qemu-bridge-helper.c \
tools/qemu-xen/qemu-options.hx \
|| die
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
if use ovmf; then
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
# Bug #816987
pushd tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli > /dev/null
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
pushd tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli > /dev/null
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
fi
# ipxe
if use ipxe; then
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/ipxe.tar.gz || die
# gcc 11
cp "${XEN_GENTOO_PATCHES_DIR}/ipxe/${PN}-4.15.0-ipxe-gcc11.patch" tools/firmware/etherboot/patches/ipxe-gcc11.patch || die
echo ipxe-gcc11.patch >> tools/firmware/etherboot/patches/series || die
fi
# Fix texi2html build error with new texi2html, qemu.doc.html
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
# Drop .config, fixes to gcc-4.6
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
# drop flags
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
if ! use pygrub; then
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
fi
if ! use python; then
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
fi
if ! use hvm; then
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
# Bug 351648
elif ! use x86 && ! has x86 $(get_all_abis); then
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
export CPATH="${WORKDIR}"/extra-headers
fi
if use qemu; then
if use sdl; then
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
tools/Makefile || die
else
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
tools/qemu-xen-traditional/xen-setup || die
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
tools/Makefile || die
fi
else
# Don't bother with qemu, only needed for fully virtualised guests
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
fi
# Reset bash completion dir; Bug 472438
sed -e "s;^BASH_COMPLETION_DIR :=.*;BASH_COMPLETION_DIR := $(get_bashcompdir);" \
-i config/Paths.mk.in || die
# xencommons, Bug #492332, sed lighter weight than patching
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
-i tools/hotplug/Linux/init.d/xencommons.in || die
# fix bashishm
sed -e '/Usage/s/\$//g' \
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
# respect multilib, usr/lib/libcacard.so.0.0.0
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
-i tools/qemu-xen/configure || die
#bug 518136, don't build 32bit exactuable for nomultilib profile
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
fi
# uncomment lines in xl.conf
sed -e 's:^#autoballoon=:autoballoon=:' \
-e 's:^#lockfile=:lockfile=:' \
-e 's:^#vif.default.script=:vif.default.script=:' \
-i tools/examples/xl.conf || die
# disable capstone (Bug #673474)
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
-i tools/Makefile || die
# disable glusterfs
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
-i tools/Makefile || die
# disable jpeg automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-jpeg:" \
-i tools/Makefile || die
# disable png automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-png:" \
-i tools/Makefile || die
# disable docker (Bug #732970)
sed -e "s:\$\$source/configure:\0 --disable-containers:" \
-i tools/Makefile || die
# disable abi-dumper (Bug #791172)
sed -e 's/$(ABI_DUMPER) /echo /g' \
-i tools/libs/libs.mk || die
# Remove -Werror
find . -type f \( -name Makefile -o -name "*.mk" \) \
-exec sed -i \
-e 's/-Werror //g' \
-e '/^CFLAGS *+= -Werror$/d' \
-e 's/, "-Werror"//' \
{} + || die
default
}
src_configure() {
local myconf=(
--libdir="${EPREFIX}/usr/$(get_libdir)"
--libexecdir="${EPREFIX}/usr/libexec"
--localstatedir="${EPREFIX}/var"
--disable-golang
--disable-pvshim
--disable-werror
--disable-xen
--enable-tools
--enable-docs
$(use_enable api xenapi)
$(use_enable ipxe)
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '')
$(use_enable ocaml ocamltools)
$(use_enable ovmf)
$(use_enable rombios)
$(use_enable systemd)
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored')
)
use system-seabios && myconf+=( --with-system-seabios=/usr/share/seabios/bios.bin )
use system-qemu && myconf+=( --with-system-qemu=/usr/bin/qemu-system-x86_64 )
use amd64 && myconf+=( $(use_enable qemu-traditional) )
tc-ld-disable-gold # Bug 669570
econf ${myconf[@]}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=y"
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
# bug #845099
if use ipxe; then
local -x NO_WERROR=1
fi
emake \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
LD="$(tc-getLD)" \
AR="$(tc-getAR)" \
OBJDUMP="$(tc-getOBJDUMP)" \
RANLIB="$(tc-getRANLIB)" \
build-tools ${myopt}
if use doc; then
emake -C docs build
else
emake -C docs man-pages
fi
}
src_install() {
# Override auto-detection in the build system, bug #382573
export INITD_DIR=/tmp/init.d
export CONFIG_LEAF_DIR=../tmp/default
# Let the build system compile installed Python modules.
local PYTHONDONTWRITEBYTECODE
export PYTHONDONTWRITEBYTECODE
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
XEN_PYTHON_NATIVE_INSTALL=y install-tools
# Created at runtime
rm -rv "${ED}/var/run" || die
# Fix the remaining Python shebangs.
python_fix_shebang "${D}"
# Remove RedHat-specific stuff
rm -rf "${D}"/tmp || die
if use doc; then
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
dodoc -r docs/{pdf,txt}
else
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
fi
dodoc ${DOCS[@]}
newconfd "${FILESDIR}"/xendomains.confd xendomains
newconfd "${FILESDIR}"/xenstored.confd xenstored
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
newinitd "${FILESDIR}"/xencommons.initd xencommons
newconfd "${FILESDIR}"/xencommons.confd xencommons
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
if use screen; then
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
keepdir /var/log/xen-consoles
fi
# For -static-libs wrt Bug 384355
if ! use static-libs; then
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
fi
# for xendomains
keepdir /etc/xen/auto
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
keepdir /var/lib/xen/dump
keepdir /var/lib/xen/xenpaging
keepdir /var/lib/xenstored
keepdir /var/log/xen
if use python; then
python_domodule "${S}/tools/libs/stat/bindings/swig/python/xenstat.py"
python_domodule "${S}/tools/libs/stat/bindings/swig/python/_xenstat.so"
fi
python_optimize
readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
}

@ -1,3 +1,8 @@
DIST xen-4.15.4.tar.gz 40820669 BLAKE2B 22edaf817851856c777d02b5211be932c1731bf50fb582545f948c7e8f871937f7c94636496a480642fa7ed8222e12dda091a06638c75b9ee935f3ff9bc2aea0 SHA512 fa6a4991c0699025af163ed117f8d0523c0a482102464615025eb3575d755ffacec5df394e3fe01871cde6028678f654d99f8e3c2533b138765971a2a7994cb8
DIST xen-4.16.3.tar.gz 45003057 BLAKE2B 6092cff33bffed1b6133daf8d3ce53c57204297e66df6ac58266b2da8d5585df62ae718cc8afaad36ebe6dabdce65b9979b0d13b88e60f2b23c01be21ae4db8e SHA512 b8cbd6f95681de5f824ada2d3cbe0653a38514a18df0dafcf811fb255219c7abec96f46217bdb0c83e1119f685da9a6af7194eeaa94f1cc3c892702782133b4f
DIST xen-4.17.0.tar.gz 46484553 BLAKE2B a4665fb557eb264566179bc5b2678d44f694ef5b20bb7dc58c8a7e6fcdf0145f25a462cfe2ad35be67a4a5ca4579c03eb092954915953e2ab98ae90b4ea983f0 SHA512 8aa7c3025c81127a4f653411bc1cbe8fc27b767a2f96a2a454329a6773cb74d714ecc1ff011a8e7169c6b83b2cc5cb39c39798bd6b1178df75ce9ff00f5a1011
DIST xen-gentoo-patches-4.16.1-gentoo-patchset-2.tar.bz2 5403 BLAKE2B 7fa3b4aa123b2deed260d02b8d34a35dd205207038edb92569278b25c6fe32e0f0e3857c07755553e047f0eb0d9fe7f8b0816e0f3d7f68aee7929afaf6611dfd SHA512 9e7d25640b24235acf756b031b8b7cee582dded65fe7b94a706c990232e9704d574036c3a9605f285e8e9534578d100a3f38719b27b22775f17ef8f68287997e
DIST xen-gentoo-patches-4.17.0-gentoo-patchset-0.tar.bz2 4474 BLAKE2B aa367a4ccf96a61c04c52e415d7143ca946323d7d50d6ab16ad7a917279ad4b1aac802e35e7e306c3a244317db713e913dc8d6343717b2307ccd049adb956a0d SHA512 debba71b17be7b1bb9a70f01782c12c3c053cc2fb1f4ad95829356ee365878aad68430055d4b8c648ef1ff54cb9e3e7c03d40d14c560d51f8ac4fce2b8f82190
DIST xen-upstream-patches-4.15.5-pre-patchset-0.tar.bz2 21880 BLAKE2B 89ef7b8cc56ca5a4738ce665aaa3461b61c554088b1b727e34ea417beb43f9b8eae403bae50449c0c96e79ff4b71edf9b6808071b1ca8f0b3878bf1cb9697c6e SHA512 0752d699168e3c2ba13a0ad886dd1d1f9affefc5e7fed9980b2a634012508f405c2accfcd7e92f79016bb869d2d0b09139266a952cc203bea37870fc7d910e51
DIST xen-upstream-patches-4.16.4-pre-patchset-0.tar.bz2 60151 BLAKE2B 5c8a8f772ba6be5f776b3270b9f1e64df35c2be7b4e238262eb4ec6b4859576b3ecb448880e1e05ad53dbdaa71643e678978151b10d0d47c901ab3e3518b7eb0 SHA512 b33a9b2f602f18165e048ef6a339bc5bf3f800fb1f2449e2e1a6090774ce3ef07b1d7ea8e9e6449fae7b91afcc1a6e281c1bb218a56bca74ba7f12b491fab186
DIST xen-upstream-patches-4.17.1-pre-patchset-0.tar.bz2 87023 BLAKE2B 4b6c66c20aecde5a696ee6879b1a9e9b365eba3a2e55c7b13153adb4c100081242a5f4498e17597697ac96a75685d88536309accb8dcebee45b31c9b35a3d7d8 SHA512 9da15f7726f2813a6dc701dbf67c1aa52a574c8049238c6d18d68bc0c0c80db98b925cd1cb7ec5627ff8b3489847608a185353cda6e599e6e5bffe75339b18a7

@ -0,0 +1,187 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..10} )
inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="amd64 ~arm -x86"
XEN_GENTOO_PATCHSET_NUM=
XEN_GENTOO_PATCHSET_BASE=
XEN_PRE_PATCHSET_NUM=0
XEN_PRE_VERSION_BASE=4.15.4
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
if [[ -z "${XEN_GENTOO_PATCHSET_BASE}" ]]; then
XEN_GENTOO_PATCHSET_BASE="${XEN_BASE_PV}"
fi
SRC_URI="https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_BASE_PV})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="https://xenproject.org"
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0"
IUSE="debug efi flask"
REQUIRED_USE="arm? ( debug )"
DEPEND="${PYTHON_DEPS}
efi? ( >=sys-devel/binutils-2.22[multitarget] )
!efi? ( >=sys-devel/binutils-2.22 )
flask? ( sys-apps/checkpolicy )"
RDEPEND=""
PDEPEND="~app-emulation/xen-tools-${PV}"
# no tests are available for the hypervisor
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
RESTRICT="test splitdebug strip"
# Approved by QA team in bug #144032
QA_WX_LOAD="boot/xen-syms-${PV}"
pkg_setup() {
python-any-r1_pkg_setup
if [[ -z ${XEN_TARGET_ARCH} ]]; then
if use amd64; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
eapply "${FILESDIR}"/${PN}-4.15-efi.patch
# Enable XSM-FLASK
use flask && eapply "${FILESDIR}"/${PN}-4.15-flask.patch
# Workaround new gcc-11 options
sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
# Drop .config
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
if use efi; then
export EFI_VENDOR="gentoo"
export EFI_MOUNTPOINT="/boot"
fi
default
}
xen_make() {
# Setting clang to either 'y' or 'n' tells Xen's build system
# whether or not clang is used.
local clang=n
if tc-is-clang; then
clang=y
fi
# Send raw LDFLAGS so that --as-needed works
emake \
V=1 \
LDFLAGS="$(raw-ldflags)" \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
clang="${clang}" \
"$@"
}
src_configure() {
cd xen || die
touch gentoo-config || die
if use arm; then
echo "CONFIG_EARLY_PRINTK=sun7i" >> gentoo-config || die
fi
if use debug; then
cat <<-EOF >> gentoo-config || die
CONFIG_DEBUG=y
CONFIG_CRASH_DEBUG=y
EOF
fi
if use flask; then
echo "CONFIG_XSM=y" >> gentoo-config || die
fi
# remove flags
unset CFLAGS
tc-ld-disable-gold # Bug 700374
xen_make KCONFIG_ALLCONFIG=gentoo-config alldefconfig
}
src_compile() {
xen_make -C xen
}
src_install() {
# The 'make install' doesn't 'mkdir -p' the subdirs
if use efi; then
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
fi
xen_make DESTDIR="${D}" -C xen install
# make install likes to throw in some extra EFI bits if it built
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
}
pkg_postinst() {
elog "Official Xen Guide:"
elog " https://wiki.gentoo.org/wiki/Xen"
use efi && einfo "The efi executable is installed in /boot/efi/gentoo"
ewarn
ewarn "Xen 4.12+ changed the default scheduler to credit2 which can cause"
ewarn "domU lockups on multi-cpu systems. The legacy credit scheduler seems"
ewarn "to work fine."
ewarn
ewarn "Add sched=credit to xen command line options to use the legacy scheduler."
ewarn
ewarn "https://wiki.gentoo.org/wiki/Xen#Xen_domU_hanging_with_Xen_4.12.2B"
}

@ -0,0 +1,174 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
XEN_GENTOO_PATCHSET_NUM=2
XEN_GENTOO_PATCHSET_BASE=4.16.1
XEN_PRE_PATCHSET_NUM=0
XEN_PRE_VERSION_BASE=4.16.3
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="https://xenproject.org"
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0"
IUSE="+boot-symlinks debug efi flask"
REQUIRED_USE="arm? ( debug )"
DEPEND="${PYTHON_DEPS}
efi? ( >=sys-devel/binutils-2.22[multitarget] )
!efi? ( >=sys-devel/binutils-2.22 )
flask? ( sys-apps/checkpolicy )"
RDEPEND=""
PDEPEND="~app-emulation/xen-tools-${PV}"
# no tests are available for the hypervisor
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
RESTRICT="test splitdebug strip"
# Approved by QA team in bug #144032
QA_WX_LOAD="boot/xen-syms-${PV}"
pkg_setup() {
python-any-r1_pkg_setup
if [[ -z ${XEN_TARGET_ARCH} ]]; then
if use amd64; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Symlinks do not work on fat32 volumes # 829765
if ! use boot-symlinks || use efi; then
eapply "${XEN_GENTOO_PATCHES_DIR}"/no-boot-symlinks/${PN}-4.16-no-symlinks.patch
fi
# Workaround new gcc-11 options
sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
# Drop .config
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
if use efi; then
export EFI_VENDOR="gentoo"
export EFI_MOUNTPOINT="/boot"
fi
default
}
xen_make() {
# Setting clang to either 'y' or 'n' tells Xen's build system
# whether or not clang is used.
local clang=n
if tc-is-clang; then
clang=y
fi
# Send raw LDFLAGS so that --as-needed works
emake \
V=1 \
LDFLAGS="$(raw-ldflags)" \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
LD="$(tc-getLD)" \
AR="$(tc-getAR)" \
OBJDUMP="$(tc-getOBJDUMP)" \
RANLIB="$(tc-getRANLIB)" \
clang="${clang}" \
"$@"
}
src_configure() {
cd xen || die
touch gentoo-config || die
if use arm; then
echo "CONFIG_EARLY_PRINTK=sun7i" >> gentoo-config || die
fi
if use debug; then
cat <<-EOF >> gentoo-config || die
CONFIG_DEBUG=y
CONFIG_CRASH_DEBUG=y
EOF
fi
if use flask; then
echo "CONFIG_XSM=y" >> gentoo-config || die
fi
# remove flags
unset CFLAGS
tc-ld-disable-gold # Bug 700374
xen_make KCONFIG_ALLCONFIG=gentoo-config alldefconfig
}
src_compile() {
xen_make -C xen
}
src_install() {
# The 'make install' doesn't 'mkdir -p' the subdirs
if use efi; then
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
fi
xen_make DESTDIR="${D}" -C xen install
# make install likes to throw in some extra EFI bits if it built
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
}

@ -0,0 +1,174 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
XEN_GENTOO_PATCHSET_NUM=0
XEN_GENTOO_PATCHSET_BASE=4.17.0
XEN_PRE_PATCHSET_NUM=0
XEN_PRE_VERSION_BASE=4.17.0
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="https://xenproject.org"
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0"
IUSE="+boot-symlinks debug efi flask"
REQUIRED_USE="arm? ( debug )"
DEPEND="${PYTHON_DEPS}
efi? ( >=sys-devel/binutils-2.22[multitarget] )
!efi? ( >=sys-devel/binutils-2.22 )
flask? ( sys-apps/checkpolicy )"
RDEPEND=""
PDEPEND="~app-emulation/xen-tools-${PV}"
# no tests are available for the hypervisor
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
RESTRICT="test splitdebug strip"
# Approved by QA team in bug #144032
QA_WX_LOAD="boot/xen-syms-${PV}"
pkg_setup() {
python-any-r1_pkg_setup
if [[ -z ${XEN_TARGET_ARCH} ]]; then
if use amd64; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Symlinks do not work on fat32 volumes # 829765
if ! use boot-symlinks || use efi; then
eapply "${XEN_GENTOO_PATCHES_DIR}"/no-boot-symlinks/${PN}-4.16-no-symlinks.patch
fi
# Workaround new gcc-11 options
sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
# Drop .config
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
if use efi; then
export EFI_VENDOR="gentoo"
export EFI_MOUNTPOINT="/boot"
fi
default
}
xen_make() {
# Setting clang to either 'y' or 'n' tells Xen's build system
# whether or not clang is used.
local clang=n
if tc-is-clang; then
clang=y
fi
# Send raw LDFLAGS so that --as-needed works
emake \
V=1 \
LDFLAGS="$(raw-ldflags)" \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
LD="$(tc-getLD)" \
AR="$(tc-getAR)" \
OBJDUMP="$(tc-getOBJDUMP)" \
RANLIB="$(tc-getRANLIB)" \
clang="${clang}" \
"$@"
}
src_configure() {
cd xen || die
touch gentoo-config || die
if use arm; then
echo "CONFIG_EARLY_PRINTK=sun7i" >> gentoo-config || die
fi
if use debug; then
cat <<-EOF >> gentoo-config || die
CONFIG_DEBUG=y
CONFIG_CRASH_DEBUG=y
EOF
fi
if use flask; then
echo "CONFIG_XSM=y" >> gentoo-config || die
fi
# remove flags
unset CFLAGS
tc-ld-disable-gold # Bug 700374
xen_make KCONFIG_ALLCONFIG=gentoo-config alldefconfig
}
src_compile() {
xen_make -C xen
}
src_install() {
# The 'make install' doesn't 'mkdir -p' the subdirs
if use efi; then
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
fi
xen_make DESTDIR="${D}" -C xen install
# make install likes to throw in some extra EFI bits if it built
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
}

Binary file not shown.

@ -4,3 +4,5 @@ DIST aflplusplus-4.04c-patches.tar.xz 4236 BLAKE2B 86bb5d1e0da271833fc548633e088
DIST aflplusplus-4.04c.tar.gz 2832011 BLAKE2B 80a5652b0d64b4824c3b4f91bf993a8499a0c86cf878ca83c7b7afe217cc1603700d4cf7408ae40f1435251153f88e0663cabe470a06387e6664249b3a015172 SHA512 1c2e2e6677e87de2f069e1acdc2319580e488670c3d4975a0f0807da33965c4a14087a7c734195d0a47260acc91f7211b10bd905aac99bdab81145b282edb44e
DIST aflplusplus-4.05c-patches.tar.xz 4860 BLAKE2B dcc0bf2799393bb7e27c6592cf46efc19277733ae1e17b3ab5b7a60aed244ec24405ceaecb5f310ac344390a92b4348275e8a19936b8760c0f2fe74f086771b9 SHA512 7a475f433796d9b9c13c5755a11aa632174662d18e69add6531fe1cbe42d75ad514bc779e42630b0a48c9df9edcc89fe992f654812fa2281b6ffa64a1019c82c
DIST aflplusplus-4.05c.tar.gz 2839704 BLAKE2B 31594e5c41cb057a1598a112e158360a172a512756a2cba2ec9bd78643045945c9a0f378e322c9250e75a6348b76f5cc84d8de6560e0a6a92a19f4d4b9a149eb SHA512 cb07279e4b1b2fa48a455acd551e26d9a53cf585258880aba4f26aa147b748b947b0608e5bbec4212362da3efc20183ba90b2dfa6584df93861dcca269d5ea7c
DIST aflplusplus-4.06c-patches.tar.xz 4360 BLAKE2B fb59065ef610e87d8bc822513822c150b592e0cdcf4f8f2d861b5dc4a5ded49a03b4ccc46636e24d69bdcee58f6882511f25a04cbc02565f9435c47be1b0829f SHA512 251db964ce6c7e1f59c6c1a8383c1fe4d362c7d336df4d13f0bc1f3c8583494e2b9c9f160fdd544174cc784afc1ae100310109d0d6a30c361b82f3ab50350afa
DIST aflplusplus-4.06c.tar.gz 2859398 BLAKE2B bf26d6be364d01f91a5b60e2bca1ab48e2fed04571bbaee2fd74c31af1c3d53295808c5372bda8dc941232349e9113e09f2d0e8cadc5917fc4fc52e24bad9d60 SHA512 b585b244218e70e1120a81a5fbb7401d277174be13c5d5d507130ff7a7b25723ff29c2b3c820466ba847ff53ef016b23781edaccdfcdce904f6b93ec4d860140

@ -0,0 +1,87 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
LLVM_MAX_SLOT=16
inherit toolchain-funcs llvm optfeature python-single-r1
AFL_PATCHSET="${PN}-4.06c-patches"
DESCRIPTION="A fork of AFL, the popular compile-time instrumentation fuzzer"
HOMEPAGE="https://github.com/AFLplusplus/AFLplusplus"
SRC_URI="https://github.com/AFLplusplus/AFLplusplus/archive/${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${AFL_PATCHSET}.tar.xz"
S="${WORKDIR}"/AFLplusplus-${PV}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="test"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
# Tests involve heavy use of LD_PRELOAD in some cases
# This isn't compatible with sandbox
RESTRICT="test"
# It turns out we need Clang too
RDEPEND="${PYTHON_DEPS}
>=sys-devel/llvm-13:=
|| (
sys-devel/clang:13
sys-devel/clang:14
sys-devel/clang:${LLVM_MAX_SLOT}
)
!app-forensics/afl"
DEPEND="${RDEPEND}
test? ( dev-util/cmocka )"
QA_FLAGS_IGNORED="afl-gcc-cmplog-pass.so afl-gcc-cmptrs-pass.so"
QA_PREBUILT="usr/share/afl/testcases/others/elf/small_exec.elf"
PATCHES=(
"${WORKDIR}"/${AFL_PATCHSET}
)
llvm_check_deps() {
has_version -b "sys-devel/clang:${LLVM_SLOT}" && \
has_version -b "sys-devel/llvm:${LLVM_SLOT}"
}
pkg_setup() {
llvm_pkg_setup
python-single-r1_pkg_setup
}
mymake() {
emake \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
CFLAGS_FLTO="" \
LLVM_CONFIG="$(get_llvm_prefix ${LLVM_MAX_SLOT})"/bin/llvm-config \
PREFIX="${EPREFIX}/usr" \
HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
MAN_PATH="${EPREFIX}/usr/share/man/man8" \
"$@"
}
src_compile() {
mymake
}
src_test() {
mymake test
}
src_install() {
mymake DESTDIR="${D}" install
dostrip -x /usr/share/afl/testcases/
}
pkg_postinst() {
# TODO: Any others?
optfeature "fuzzing with AFL_USE_ASAN" sys-libs/compiler-rt-sanitizers[asan]
optfeature "fuzzing with AFL_USE_MSAN" sys-libs/compiler-rt-sanitizers[msan]
}

Binary file not shown.

@ -1,7 +1,7 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=8
inherit toolchain-funcs
@ -9,13 +9,11 @@ MY_PN="LinuxSPA"
DESCRIPTION="Linux Serial Protocol Analyser"
HOMEPAGE="https://sourceforge.net/projects/serialsniffer/"
SRC_URI="mirror://sourceforge/serialsniffer/${MY_PN}-${PV}.tgz"
LICENSE="GPL-2"
S="${WORKDIR}/${MY_PN}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 x86"
IUSE=""
S="${WORKDIR}/${MY_PN}"
KEYWORDS="~amd64 ~x86"
PATCHES=( "${FILESDIR}/${P}-compile-fix.patch" )

@ -1,2 +1,3 @@
DIST qtxdg-tools-3.10.0.tar.xz 16704 BLAKE2B a43ebdaca879cbfc6f1b6cebcea4964c5486bd983b030a4b374605efeef9a9ad67e3176c95e33ad09c90df5e9432526dbf62ecfbb192df768509e213f57e383f SHA512 d5cdc14ceadf6b2ed7adaa7de383b9930d57d06a6c5294920764b403bcedfdb837de4a01e70f65f2957e18a9e866659406b88e35903376fb26b91f8620b95a55
DIST qtxdg-tools-3.11.0.tar.xz 16716 BLAKE2B ef6b88e69b0b4e8896ba37f7b5f663234a5348759d430600396432f4abb52901001c54ec78bd706efa021b51d9ff514457ff8e123d5142a6562cd380dd5a15ee SHA512 da88f36130b7c23d1553bce252ddc783ae30ba91cd55fba065702376f6cc9c0353c0ad4bb099ed1b65964bd9d476ae431bfde46df110bccec832d3f57cbaa7f3
DIST qtxdg-tools-3.9.1.tar.xz 16688 BLAKE2B c59032f55749616554036cded80050b3390f02741d6874d4e48ca943d0b37864d3565cc1bb0e39474cfbcc38b6b525e73c22a9e9d6277a319dd44a93935af982 SHA512 f5bea93ad927967edf13c07ee39a24297fbe06d03e450557afd519b26c3eeed6c9347747efbdc2e0c201a4d51f66cd80a5f2da143544149375d89f36baab5c3f

@ -0,0 +1,27 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake
DESCRIPTION="User Tools from libqtxdg"
HOMEPAGE="https://lxqt-project.org/"
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/lxqt/${PN}.git"
else
SRC_URI="https://github.com/lxqt/${PN}/releases/download/${PV}/${P}.tar.xz"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
fi
LICENSE="LGPL-2.1"
SLOT="0"
BDEPEND=">=dev-util/lxqt-build-tools-0.13.0"
RDEPEND="
>=dev-libs/libqtxdg-3.11.0
>=dev-qt/qtcore-5.15:5
"
DEPEND="${RDEPEND}"

@ -1 +1,2 @@
DIST tmux-mem-cpu-load-3.5.1.tar.gz 23020 BLAKE2B 2bbe2441c0fd687fee4ed2f27b8cea0fdbb0596c36fe8c791be110b880abe5d8c28a14960a9836552cf49b4f92d32a127be9271954853c5310f1628791138f7a SHA512 e08a3ad088021d4f4a3fb671a15cc8468a833501202391a63f57d3b53ea65934dc32869c3b7bbe47bce7d8ff2c9d1d35a5823a70c80d1218392aac82ed96e68f
DIST tmux-mem-cpu-load-3.7.0.tar.gz 23374 BLAKE2B 61dfd556b22afd37d7011c2f31e1c1ee2632921c590ac273e92baf18f018d09eaffc628490d8c2bca973fc73dba67f83dfd380792c70f7fac8335cc9c732d7c3 SHA512 0a87d91e2d7ea0b687b0610b913aa782813fc80cc689c6f42fa2e1537715b7b2307edbfabf231fc0e13fe5aeaca1c0ffa4500ce338b37365ba0ac7a8b69e7385

@ -0,0 +1,24 @@
https://github.com/thewtex/tmux-mem-cpu-load/pull/95
From 59cca005e4c6d2fe9f90574a99afe78dcb6d8539 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Tue, 18 Apr 2023 04:25:00 +0100
Subject: [PATCH] Fix build with GCC 13
GCC 13 (as usual for new compiler releases) shuffles around some internal includes so some
are no longer transitively included.
See https://gnu.org/software/gcc/gcc-13/porting_to.html.
Bug: https://bugs.gentoo.org/895304
--- a/common/cpu.h
+++ b/common/cpu.h
@@ -19,6 +19,7 @@
#ifndef CPU_H_
#define CPU_H_
+#include <cstdint>
#include <sys/types.h>
#if defined(__APPLE__) && defined(__MACH__)

@ -0,0 +1,26 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake
if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/thewtex/tmux-mem-cpu-load.git"
inherit git-r3
else
SRC_URI="https://github.com/thewtex/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
fi
DESCRIPTION="CPU, RAM memory, and load monitor for use with tmux"
HOMEPAGE="https://github.com/thewtex/tmux-mem-cpu-load"
LICENSE="Apache-2.0"
SLOT="0"
DOCS=( AUTHORS README.rst )
PATCHES=(
"${FILESDIR}"/${PN}-3.7.0-gcc13.patch
)

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -10,7 +10,7 @@ if [[ ${PV} == *9999* ]]; then
inherit git-r3
else
SRC_URI="https://github.com/thewtex/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm64 ~x86"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
fi
DESCRIPTION="CPU, RAM memory, and load monitor for use with tmux"

Binary file not shown.

@ -23,7 +23,7 @@ fi
LICENSE="AGPL-3 CPL-1.0"
SLOT="0/$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="cups dbus gtk l10n_de static-libs unicode X"
LANGS="ja ko zh-CN zh-TW"

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save