Sync with portage [Wed Feb 22 22:01:14 MSK 2023].

master 2396
root 2 years ago
parent 1211eeb803
commit bb8e81c889

Binary file not shown.

Binary file not shown.

@ -1,3 +1,4 @@
DIST ansible-lint-6.12.1.tar.gz 466371 BLAKE2B f43b3403c5d3db80d3ec3e3526cafc22bee68b31b5458e378a73bbec900de5411c597e9fc079a77cffc66a278a37bf0fc9ecfcaba3beccf74c6eecbe5b6148b9 SHA512 05c92c930d91419c212a9513aed5506c99e993acbce9437b6f8f3b95bd78ca5b0ff8e1a7d39f32907df72d858a2e4e6c74f47443c0f937b3644c7a18d1d59252
DIST ansible-lint-6.13.1.tar.gz 488778 BLAKE2B d58002e10105759c6a19e8f67cccf6914cfb058573f7873bb6092bc3367c5af9583de30478c65e0d3b9b4840ac8103d688e6dc63e49543199b82447eba12eca0 SHA512 c71b45f3a73dd782480ae9c4c38fef5741297706d60d07c524f5abfb3249c87950bf8ffccd782a85ee6a83c357b1a0fbf101c659c640d98365d508dfb0a513a3
DIST ansible-lint-6.8.2.gh.tar.gz 288616 BLAKE2B 4ae9c344d834a3d69a05689df296c7915e6eb7cb2a85b773f3adcc4efd898c3e1c9f32d8b1efda31afb7a5466d1966aa754cd5529c7dcfd6c1f45517d39e1750 SHA512 101be050772f6df827a697faa5ff9650c98959d9bd6e7a025a19c0ac94faa6b06e114b9122ae8f09f650be565b226189f4706ef8dd0f27548774664adccf3d18
DIST ansible-lint-6.9.1.gh.tar.gz 388343 BLAKE2B 73035bdbd6c1bdee5566d5dee5a8461953d99bbaf896d7a9764c32419e74c3d23883ac1a7548de3e21372195f99c325c371cead7397bf64d6d033d9a2f81ed01 SHA512 eaf255c53fb8355b06e7013f6676a09e2d7e67aa332306448f530c345925c80ff5ea54c580f7f6720a25ebed9e8deb4c0a8e4e22af4183e8a8ef7b6999be6099

@ -0,0 +1,55 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..11} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="Checks ansible playbooks for practices and behaviour that can be improved"
HOMEPAGE="https://github.com/ansible/ansible-lint"
SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~riscv"
# Upstream has stated explicitly that all tests require Internet access
PROPERTIES="test_network"
RESTRICT="test"
RDEPEND="
>=app-admin/ansible-core-2.12.0[${PYTHON_USEDEP}]
>=dev-python/ansible-compat-2.2.7[${PYTHON_USEDEP}]
>=dev-python/black-22.8.0[${PYTHON_USEDEP}]
>=dev-python/filelock-3.8.0[${PYTHON_USEDEP}]
>=dev-python/jsonschema-4.17.0[${PYTHON_USEDEP}]
>=dev-python/packaging-21.3[${PYTHON_USEDEP}]
>=dev-python/pyyaml-5.4.1[${PYTHON_USEDEP}]
>=dev-python/rich-12.0.0[${PYTHON_USEDEP}]
>=dev-python/ruamel-yaml-0.17.21[${PYTHON_USEDEP}]
>=dev-python/wcmatch-8.3.2[${PYTHON_USEDEP}]
>=dev-util/yamllint-1.26.3[${PYTHON_USEDEP}]
dev-vcs/git"
BDEPEND="
>=dev-python/setuptools_scm-7.0.5[${PYTHON_USEDEP}]
test? (
dev-python/pytest-mock[${PYTHON_USEDEP}]
>=dev-python/pytest-plus-0.2[${PYTHON_USEDEP}]
>=dev-python/pytest-xdist-2.5.0[${PYTHON_USEDEP}]
)"
# test_call_from_outside_venv doesn't play nicely with the sandbox
# irrespective of whether Internet access is allowed or not
EPYTEST_DESELECT=(
test/test_main.py::test_call_from_outside_venv
)
distutils_enable_tests pytest
# Test suite fails to start without this
python_test() {
epytest test
}

@ -1,3 +1,4 @@
DIST aws-cli-1.27.69.gh.tar.gz 2366011 BLAKE2B e2ac484bb6ead107d0deca6bad5b9ca4a014f129d1253528869c303d72d58f1e9d5329b6c3180ec53190e43711d999b7026764c0cf65786903dade2a5c135f88 SHA512 85d6d820918ab42ce39e3a90751726a8dbf691083f5d71834b61b8456f6c91e3cac7ead86448187a3853a26f9e75e2e1d7f2acd3a8de59a69ebc028a4692b9ac
DIST aws-cli-1.27.74.gh.tar.gz 2368706 BLAKE2B 3eb9d8c21b9ddfd3a3e4bb53172a46ad69ca71033785bd29fd8b0b0f694c2ed62a4cad998ccd13b07949b86a89f2ca238a63a4553e591ba9066832f51ed87759 SHA512 cf61a3f1dd643bb7d0f81f047c1eeae78a7793532bffa612045273c46ae970b2763156a7679b6e16e65c2f886dec68e54db0169580bb3c37cc08420f874e704c
DIST aws-cli-1.27.75.gh.tar.gz 2368634 BLAKE2B b1a150c77b5f7ff98b33bff0225d889d8b4947492103d44da2b58339a59a7616613db6a29daeab63c50a58f2c8022b392bdd392024080dca853e6b329652db09 SHA512 b5eaac8c5277a9f8428ccad060cfa8764ac51853701cb02d3a4656711df1daaaf836071522ecc32baeeb05ab739ee56968ce11b4552a942cc3a9705c74a788d9
DIST aws-cli-1.27.76.gh.tar.gz 2368848 BLAKE2B 617291112ef43719d42cc3bde9bdf2aa267296f047c2f488070d60adcf0ea64e72838d13af694bf053ad00899936d9ad6975a78bc6f24ccd35b7b632b3e8efcf SHA512 91410d33c002626964928dabc5bf2d2957030559756c3d85a4a2c6d7963b34cc6560e9048ebd856aeb805281d37ca49e3a2ee3b0838d1333f390cf34f93b3611

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

@ -6,3 +6,5 @@ DIST terraform-1.2.4-deps.tar.xz 264291608 BLAKE2B 4c0dd8d76bbf2b062f80225ff6534
DIST terraform-1.2.4.tar.gz 5183520 BLAKE2B 51b9353dfe40e988c8c621f9e09ec9d3e8facfa7b682832671b3f0f12f52d0836dd6ff1851bebfe6ca590248cd029c508dc35b437b637a51ace4c36ad5807730 SHA512 43dfc4745dbcb3f29577fac610771258c5a9551bf33019d1f6bd3059a808cd365f432842c565522c530b03abf18aeada53fc390604eaeafce4464afd9edcb463
DIST terraform-1.2.7-deps.tar.xz 264297220 BLAKE2B 0052fe5519c5b9aec060dcb6a68d0a48ed069a7c4f37f8cfc9088f2fec5865c7e3e515be176e316f50eabd00c2658d7371ecb3a728d3bcf28fca120553bc39b3 SHA512 a9d77a8c26ec6fb7da3c8a574b10fd6559b8828539b5fe89ea98c29979bedf33488bb10b1b2ea1624841ea23dc33d5c5b350b1d6ba3b31fdcbc7e067aa9c8601
DIST terraform-1.2.7.tar.gz 4694193 BLAKE2B e32f7a304aad5b4cfb0866d890036f772eafbd1c767941999c0db44ed7a9e0e931890a466518af5b7715dcff2a0bac1d379c230fa032f9ebae45ad9df041b9d1 SHA512 d77db9040bd19f4a6e2988a61ecb7dc5adecf46f798d90e1232f9ffe385668ecb0869f1877d5f6ea8a36d48e1e47fffa463b9809046b524af741ddb5b67b469e
DIST terraform-1.3.9-deps.tar.xz 246904620 BLAKE2B 26577614ff95fa03dcf0362050f0e2a10eaa500f71d992b2927f6c44475341e899f62141e203ce9231bf329dc03825076d3f615c693a6c33c11190d4420b042f SHA512 9587b6022d320a104f3ad67dda9f1b931e258f78e7f6b6f87a8302732206b55d7d4af555b09517994ea1f53f069d8e1b5e2ca05c129efbbe4d7c3b75cbd27c69
DIST terraform-1.3.9.tar.gz 4964672 BLAKE2B bfe823a2c1bc8d6188d339c8b5d452be4873adf1063aa0a880457d7e5b4e042d2d8c2ba93eb20eb46bad209c184bfe628b5093d6bdd6163e1bc57934c6770ad2 SHA512 3e951142120b5d71830b5bde34ef3e8907b1585f461f51f83e16170a46e1fc21934d4d1935f1a49963add3d894f68a5cf267ef91293347d0dd9a4b90978ea751

@ -0,0 +1,40 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit go-module
DESCRIPTION="A tool for building, changing, and combining infrastructure safely"
HOMEPAGE="https://www.terraform.io/"
SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 MPL-2.0 MIT ISC"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~riscv"
BDEPEND="dev-go/gox"
RESTRICT="test"
DOCS=( {README,CHANGELOG}.md )
src_compile() {
export CGO_ENABLED=0
gox \
-os=$(go env GOOS) \
-arch=$(go env GOARCH) \
-output bin/terraform \
-verbose \
. || die
}
src_install() {
dobin bin/*
einstalldocs
}
pkg_postinst() {
elog "If you would like to install shell completions please run:"
elog " terraform -install-autocomplete"
}

Binary file not shown.

@ -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
@ -28,6 +28,7 @@ PATCHES=(
multilib_src_configure() {
local mycmakeargs=(
-DCMAKE_CXX_STANDARD=14 # Latest gtest needs -std=c++14 or newer
-DSNAPPY_BUILD_TESTS=$(usex test)
-DSNAPPY_BUILD_BENCHMARKS=OFF
# Options below are related to benchmarking, that we disable.

@ -19,7 +19,7 @@ SRC_URI="x86? ( https://github.com/upx/upx/releases/download/v${PV}/${MY_P}-i386
LICENSE="GPL-2+ UPX-exception"
SLOT="0"
KEYWORDS="-* ~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86"
KEYWORDS="-* amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 x86"
RESTRICT="strip"
RDEPEND="!app-arch/upx"

@ -12,7 +12,7 @@ S="${WORKDIR}/${P}-src"
LICENSE="GPL-2+ UPX-exception" # Read the exception before applying any patches
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc x86"
RDEPEND="!app-arch/upx-bin"
BDEPEND="app-arch/xz-utils[extra-filters]"

Binary file not shown.

@ -1,3 +1,3 @@
DIST borgmatic-1.7.2.tar.gz 333772 BLAKE2B fd628e9c77547686d4edf5d1066d3c171575f4d923ebc5205c5eb64f3a960e94c121282e9f4fb02b1291a81011a18dc393c6d13a07f215585459e7a5b55f8107 SHA512 6ec12ec25ae4d0210bb9114795c1ea292d8236f9e68c9425e24ee7b580796504e4c317a3fcf778806a33bbd3db68669beb4ef7a88ec538c1bd432db9a2845b3e
DIST borgmatic-1.7.5.tar.gz 338412 BLAKE2B e27fd709070a27c2ddd01fdfe23ef9caeb942c52d756332b4abd6d6cf39724656677a0d142a5392e35e0a0f25958421fe23edf04a252d212d761f48a0c320d9b SHA512 c27a364617e0e8fc1c11adac5375deac4e1663236a545d3fb70280974614d50ffe3821010ed5e4345afa3c3dab5f45c0d3bbfc946f50321601acb56965fd555d
DIST borgmatic-1.7.6.tar.gz 348350 BLAKE2B ae5d6eb1be445b346965d7735bc8131472089e8d588523cbf56961658bc17faf6dd4c1d0b4ae3696172358139a0de39df68202a8f1315d7f7391d46f39f83084 SHA512 aa01a27b65af9a24d779c5f0245473415a3edbc685646aaf17ccd1b790ba72b67fca6da92c924b0f2d11f0d851d01054bb5a98dc7556921c640c1fc62a42f4fc
DIST borgmatic-1.7.7.tar.gz 348839 BLAKE2B 686a5552bdace0e44ced612448fd9a9609d9df2dfb41007f0432bbb6fe9d4c2ef154a215eef63f4aed4626471feda52142d3511498901545a3ab4bbf3171c14f SHA512 e1a7c20a17a4ad37ce348feb89e1a3b34912ae6730742e6b4c822b7a1026e3630167645154268f47922a106621cd02d5f06ada448ac844dfd7c9ff46660ca2ec

@ -2,3 +2,5 @@ DIST restic-0.13.1-deps.tar.xz 179648640 BLAKE2B 5ba9663a95ccc3a1c41b88e44704e74
DIST restic-0.13.1.tar.gz 23855387 BLAKE2B e10fb1920ab62ba2116b8a7b9676c537c93fe2e8743a9ce6748b412d11fcf611deb368c0db1b0855b71fbac260930c86dc510ee149c09692eb93bf6e1830d0d6 SHA512 14feb6d0b3d258783d55ad537d8ccbdc9574a966e14f65465c132eceb92c821f4033428eba83acb1e1a9cfb169cc5fdc86b6ae90b94fe2855bd1f69262e30770
DIST restic-0.14.0-deps.tar.xz 226627460 BLAKE2B e97fe4b68b4216fa01449aff7a8df8d3ef91d64d97f07930740fdfbd0ead5099e2a732a36613db85104611a993926e10043ae35eddd19248303e17352ab9681f SHA512 6b89be07baaf080c287b51163e41d1e659df8e844d75a801df49e0062db872b4ab7d03ec617047e34aa8b0d2912fe384053c0de2c9ab282f1c80c88a07fda81a
DIST restic-0.14.0.tar.gz 23902279 BLAKE2B 21586b48e55de53b19c4f4d368167c69e3050cff41ae85a6fcdb3171ac71a38987b8b578de2e9e37bac9a531d364432610b9ecb316b3c93133fa07ccac5664f3 SHA512 d896c93b72790ba5b3c3cd71b68bb45682a12661067cd0d7370b6dfe6d4482988462c4243b5c0b412e5444784568f0375c5a01d43d4d0557d5e6bf01ca512157
DIST restic-0.15.1-deps.tar.xz 156200684 BLAKE2B 8b34551c12e9b57d0e3328dd656f69d95964f4128eb61b1e546b1a002fd37874ee7614a9563754260d3b7ec0caf349fa611cb0316c5c5f983ba95d3607d6cae9 SHA512 4b2d9c9f6b43bd558965396f5ca501d57298ac444bf715801d52a743424a8e87b979c5808c599a6c13015e4e57a57e7911d86e77b2232cfa0c05822616f8ce9d
DIST restic-0.15.1.tar.gz 23920501 BLAKE2B 9561211576c01707691a1d0d7575c6bcd0d8f3c691159d10281ecb1cce5d16f237d60fd2f998bf7ad41d2ad7f8e69fd92ce6d487769774d41bae7f5ebd0ee4d7 SHA512 54b982f87f60df506c293df12813bea2f8a0df8996453096565a0eaba2832791a35da288c2e9fac590a0eaee9aef52b2c968ee717457fab30a1974d00d1d73fe

@ -0,0 +1,45 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit bash-completion-r1 go-module
DESCRIPTION="A backup program that is fast, efficient and secure"
HOMEPAGE="https://restic.github.io/"
SRC_URI="https://github.com/restic/restic/archive/v${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 LGPL-3-with-linking-exception MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
RDEPEND="sys-fs/fuse:0"
DEPEND="${RDEPEND}"
src_compile() {
local mygoargs=(
-tags release
-ldflags "-X main.version=${PV}"
-asmflags "-trimpath=${S}"
-gcflags "-trimpath=${S}"
)
ego build "${mygoargs[@]}" -o restic ./cmd/restic
}
src_test() {
ego test -timeout 30m ./cmd/... ./internal/...
}
src_install() {
dobin restic
newbashcomp doc/bash-completion.sh "${PN}"
insinto /usr/share/zsh/site-functions
newins doc/zsh-completion.zsh _restic
doman doc/man/*
dodoc doc/*.rst
}

Binary file not shown.

@ -1,2 +1,2 @@
DIST apptainer-1.1.2.tar.gz 12896912 BLAKE2B 29a8df78617661e0a181955942e8321c112a69efaf15f4bb3e1563cc0789197916a3be1eb5396fb608d57b0edd5d5de2a70a2bda935095d8d511410660ebc106 SHA512 3fad253379a87ea790f22a14aec703296f606255d4ce847454a59f9dba0b9a6fc449489e7760c4696c1df90fc6abec198934310c1b762e33a83c72cafc7cb370
DIST apptainer-1.1.5.tar.gz 12915073 BLAKE2B 0cd696adb9f99782f6f1dd4d384f6aacb11a71f3df13c07775c376d42b88993ca82c02ad545a57b012a151403c3a3719e3e4512fe34e7de540d04d7d27ddf86f SHA512 e6a5d392f3874f093a8580508e83e270140ad52606c7856797e7e7665dd6687e63900984a4cb920c3cba9a4b7148047de4085a4353c9c77697b94f8d9cd099fc
DIST apptainer-1.1.6.tar.gz 12914465 BLAKE2B a04ed9b9b429d7885d6c91f72d574d2a3a2955fdbe5cb2d30b59744b1f3bfb6f7d4f07ce7f1863caa83fb3361d7fdd2739b82334458d606ce053de43e1e9f755 SHA512 dd38abe1e343352e29a8a1fd1922901e4d48282fef641c75360253392ad53c6f1e5f7510ef612594e29db5f090fb41ff55b9d52d126be253450b0630fc7d383b

@ -1,3 +1,4 @@
DIST buildah-1.27.1.tar.gz 14825932 BLAKE2B bf290eeb4d96d255c7cdaa07af49eff44191664ac7dee255c7979656383daaa93c3673ba82ac1cbff033de769ffa08ad027f5d91c81b08a36222cb73e8a1e399 SHA512 a5e2ddf837e613554ffe8fe9c15ac9c8f9c2564c403e5544df7fb8802962581fb4e9dd4361c28c93443ede74c20c82f1631990e443c7895a3b4c3b8a659ee05a
DIST buildah-1.28.0.tar.gz 14579386 BLAKE2B effc7d0a154e30790585c19e19655f98026c34687e79b91777700bc2f387b96896d88855cd5ec34573dd2678e4a30a832c39f789d53b61b45cb5f682dacd252e SHA512 f5e82a22648fa0d0ba7f5dcf3b97a2ec1182f31d3e03cd2624e01fe76fcdddf0a5605c59816eeef6401d151864b6b6be493c144b83f5667ab3947eea902f0086
DIST buildah-1.28.1.tar.gz 14576193 BLAKE2B 5317b991780b0c2539802495a2a15e91d4e1623700d0a3fa354e362bd647e59a0e9c34d8f19858e129d0028c71bb04665bde7668e3b5f3f3e5b85c944f7108b5 SHA512 c674a90a0cae2977b76c2b68c06a0006f89d74b5b41362c2512a3f8d7ba515c3bd693648a0ba955dad7bea1a43da6890d80855e1283f0fc0136d16d77a798fba
DIST buildah-1.29.1.tar.gz 15594930 BLAKE2B 71b87352062b3a5df67389897fd0d82c2491c48cffbda808b30e2767a1e290eccfd726be26dbd57fd8d08cfacb74f313058179c40600225d863a9340b772df1e SHA512 ea78aacee9b5cc10e299789d739e7086579e67719ab72b84f6ea5acbaf31d443284387ac92e7c5c1c3da9bd6523f43e2d9c7e2ea5698c251cb5458a384f41b04

@ -0,0 +1,51 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit bash-completion-r1 go-module
GIT_COMMIT=faf0d4fc
DESCRIPTION="A tool that facilitates building OCI images"
HOMEPAGE="https://github.com/containers/buildah"
SRC_URI="https://github.com/containers/buildah/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="selinux"
RDEPEND="app-crypt/gpgme:=
app-containers/skopeo
dev-libs/libgpg-error:=
dev-libs/libassuan:=
sys-apps/shadow:=
sys-fs/lvm2:=
sys-libs/libseccomp:=
selinux? ( sys-libs/libselinux:= )"
DEPEND="${RDEPEND}"
RESTRICT="test"
src_prepare() {
default
[[ -f selinux_tag.sh ]] || die
use selinux || { echo -e "#!/bin/sh\ntrue" > \
selinux_tag.sh || die; }
sed -i -e 's/make -C/$(MAKE) -C/' Makefile || die 'sed failed'
}
src_compile() {
emake GIT_COMMIT=${GIT_COMMIT} all
}
src_install() {
dodoc CHANGELOG.md CONTRIBUTING.md README.md install.md troubleshooting.md
doman docs/*.1
dodoc -r docs/tutorials
dobin bin/{${PN},imgtype}
dobashcomp contrib/completions/bash/buildah
}
src_test() {
emake test-unit
}

@ -1,3 +1,4 @@
DIST conmon-2.0.30.tar.gz 161285 BLAKE2B c4e01759d819d3dff94b9ae09caa72b6f664e49d907d3a1be9fb4a0e1f782fad29a7cd7c89703e861f4aa6d7955996386f81460f19f22be2889c4f88c34536cb SHA512 2451e441913925f8423385b83e97630e980948a9bd57ae8800889016c4412a26bed598825d3c034c3edcecbab66c38417f55ad3866d3c2c98cada6acce2b2d16
DIST conmon-2.0.31.tar.gz 158184 BLAKE2B b14bae77a18cc352bc9583604544b4e7ffe4bd8a77e5c3185c897c11819bba227edcbd84b559d998a2b5648ca371f0e98e4d9cd15951a953cbe05a9c9ae9d434 SHA512 ff879fcd5a3b7de8ee6ff9de2a13d0afc36fdb392390278b26ee179be26ff375ddce4f5ae24e3e88b737f63202af64b49e82b2ffbfc0de8bfd14690dac523747
DIST conmon-2.1.0.tar.gz 159045 BLAKE2B a39b7620091ca17f4d91a26e040f886293688562cba1827cc09c1da1c1401ad78cbb16420c9df8a055ab5ca3eb2933aec6ac1b9fbb1eea10f33b1b0d76c5dd54 SHA512 0f27a1b048c2dcafb40cd67f80c2a5d7e92f5beb849174233dc10e2db42b4ea8b89f27c901d3f38cf1d412ed875c5521e07140038e859fb54bcc554cb9197e74
DIST conmon-2.1.6.tar.gz 157838 BLAKE2B 319a170ab048c14f3be998391da403799171c5d0e342ac4214a6456398ab872cb6a77cb4d67dbb97a0bc47008c6fa657ba2a166eea4c56ee65db545b08e032bd SHA512 0b5d7f33745766f4f1646e79554e16e1d6c977fd08c5a86c72068aec9f28110b5981c38972134741281c8470c295b6195843f3dbb78e1e9da34b8d577ea41d65

@ -0,0 +1,49 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit toolchain-funcs
DESCRIPTION="An OCI container runtime monitor"
HOMEPAGE="https://github.com/containers/conmon"
SRC_URI="https://github.com/containers/conmon/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
IUSE="systemd"
RESTRICT="test"
RDEPEND="dev-libs/glib:=
sys-libs/libseccomp
systemd? ( sys-apps/systemd:= )"
DEPEND="${RDEPEND}
dev-go/go-md2man"
src_prepare() {
default
if ! use systemd; then
sed -e 's| $(PKG_CONFIG) --exists libsystemd-journal | false |' \
-e 's| $(PKG_CONFIG) --exists libsystemd | false |' \
-i Makefile || die
fi
sed -e 's|make -C tools|$(MAKE) -C tools|' -i Makefile || die
sed -e 's|^GOMD2MAN = .*|GOMD2MAN = go-md2man|' -i docs/Makefile || die
}
src_compile() {
tc-export CC
emake GIT_COMMIT="v${PV}" \
all
}
src_install() {
emake DESTDIR="${D}" \
PREFIX="${EPREFIX}/usr" \
install
dodir /usr/libexec/podman
ln "${ED}/usr/"{bin,libexec/podman}/conmon || die
dodoc README.md
}

@ -1,4 +1,2 @@
DIST lxc-5.0.1.tar.gz 973206 BLAKE2B 6d5cb1a03eb2612d0f8cb59783a64ec42bedd560cacfebf76383d9599dfc153e381f0e584a1c8c9a0b5b18a46bfb01863649dc5a019546e9ded6079b5ec69ddd SHA512 c87563b556aec83c93a7c62932217791e92da950cc76983f0d5e1d603fe1ae298a63fb5e88ec9ef5173846d579babb5acd0836679b915de00844bb9edf9c8d7e
DIST lxc-5.0.1.tar.gz.asc 833 BLAKE2B f85df5fc5bd88a738042f622ee4191b99e0a8e07db7ceb5824d634bc451f4bf93c8b64d1c72d4899f639ad30bbc9ee82be292dbe310218fa20566ee00f9bb752 SHA512 09de4e74d174b54cf9240ca4ef4793b9f63355c65f610abffb40e6dc2dc9130380761a50725e4dcee39b421e4b51c874d141fe22d5ecfd7ad3af35f7ebec09a0
DIST lxc-5.0.2.tar.gz 973977 BLAKE2B e6017406b96f53525b576528814922a017a7d65fb04724046236307f4e85219b3c8ac725678e57ae3f77a4e817f718748e8c61fbc8147160e4ac87d3146b6567 SHA512 2e8800875e9c91cc0cbfdfc33c43d84bad9471d8a1b8ccd52d7d9c6fe44f280f9f701b8ccc2e0f5319a3e4c50d8c4331722f0dd9c0347575eb4f7b4ed110bef3
DIST lxc-5.0.2.tar.gz.asc 833 BLAKE2B 3d78f8a87b2f45d2b91a9a6595d286e2fc1dcfc7d28f3c1d86e968860a7e346506ab28d4dafffede8acf1f82e8b12f90eda2e6210cd6bdec702f59bad97295c6 SHA512 9bd1ef117cf256841b75d409e8f14b88ed54fdfc9c8c472b6baa5e9695e39cdb8c1f47ce612dc8263abb65511df0812554cc9a5820cdd6c1539a07283a4cd08f

@ -1,383 +0,0 @@
From c1115e1503bf955c97f4cf3b925a6a9f619764c3 Mon Sep 17 00:00:00 2001
From: Christian Brauner <brauner@kernel.org>
Date: Tue, 9 Aug 2022 16:14:25 +0200
Subject: [PATCH 1/3] build: detect where struct mount_attr is declared
Fixes: #4176
Signed-off-by: Christian Brauner (Microsoft) <christian.brauner@ubuntu.com>
---
meson.build | 30 ++++++++++++++++++++++++++++--
src/lxc/conf.c | 6 +++---
src/lxc/conf.h | 2 +-
src/lxc/mount_utils.c | 6 +++---
src/lxc/syscall_wrappers.h | 12 ++++++++++--
5 files changed, 45 insertions(+), 11 deletions(-)
diff --git a/meson.build b/meson.build
index a145faf069..f679aabbc8 100644
--- a/meson.build
+++ b/meson.build
@@ -590,7 +590,6 @@ decl_headers = '''
foreach decl: [
'__aligned_u64',
'struct clone_args',
- 'struct mount_attr',
'struct open_how',
'struct rtnl_link_stats64',
]
@@ -610,7 +609,6 @@ foreach tuple: [
['struct seccomp_notif_sizes'],
['struct clone_args'],
['__aligned_u64'],
- ['struct mount_attr'],
['struct open_how'],
['struct rtnl_link_stats64'],
]
@@ -630,6 +628,34 @@ foreach tuple: [
endif
endforeach
+## Types.
+decl_headers = '''
+#include <sys/mount.h>
+'''
+
+# We get -1 if the size cannot be determined
+if cc.sizeof('struct mount_attr', prefix: decl_headers, args: '-D_GNU_SOURCE') > 0
+ srcconf.set10('HAVE_' + 'struct mount_attr'.underscorify().to_upper(), true)
+ found_types += 'struct mount_attr (sys/mount.h)'
+else
+ srcconf.set10('HAVE_' + 'struct mount_attr'.underscorify().to_upper(), false)
+ missing_types += 'struct mount_attr (sys/mount.h)'
+endif
+
+## Types.
+decl_headers = '''
+#include <linux/mount.h>
+'''
+
+# We get -1 if the size cannot be determined
+if cc.sizeof('struct mount_attr', prefix: decl_headers, args: '-D_GNU_SOURCE') > 0
+ srcconf.set10('HAVE_UAPI_' + 'struct mount_attr'.underscorify().to_upper(), true)
+ found_types += 'struct mount_attr (linux/mount.h)'
+else
+ srcconf.set10('HAVE_UAPI_' + 'struct mount_attr'.underscorify().to_upper(), false)
+ missing_types += 'struct mount_attr (linux/mount.h)'
+endif
+
## Headers.
foreach ident: [
['bpf', '''#include <sys/syscall.h>
diff --git a/src/lxc/conf.c b/src/lxc/conf.c
index ffbe74c2f6..4193cd07f5 100644
--- a/src/lxc/conf.c
+++ b/src/lxc/conf.c
@@ -2885,7 +2885,7 @@ static int __lxc_idmapped_mounts_child(struct lxc_handler *handler, FILE *f)
struct lxc_mount_options opts = {};
int dfd_from;
const char *source_relative, *target_relative;
- struct lxc_mount_attr attr = {};
+ struct mount_attr attr = {};
ret = parse_lxc_mount_attrs(&opts, mntent.mnt_opts);
if (ret < 0)
@@ -3005,7 +3005,7 @@ static int __lxc_idmapped_mounts_child(struct lxc_handler *handler, FILE *f)
/* Set propagation mount options. */
if (opts.attr.propagation) {
- attr = (struct lxc_mount_attr) {
+ attr = (struct mount_attr) {
.propagation = opts.attr.propagation,
};
@@ -4109,7 +4109,7 @@ int lxc_idmapped_mounts_parent(struct lxc_handler *handler)
for (;;) {
__do_close int fd_from = -EBADF, fd_userns = -EBADF;
- struct lxc_mount_attr attr = {};
+ struct mount_attr attr = {};
struct lxc_mount_options opts = {};
ssize_t ret;
diff --git a/src/lxc/conf.h b/src/lxc/conf.h
index 7dc2f15b60..772479f9e1 100644
--- a/src/lxc/conf.h
+++ b/src/lxc/conf.h
@@ -223,7 +223,7 @@ struct lxc_mount_options {
unsigned long mnt_flags;
unsigned long prop_flags;
char *data;
- struct lxc_mount_attr attr;
+ struct mount_attr attr;
char *raw_options;
};
diff --git a/src/lxc/mount_utils.c b/src/lxc/mount_utils.c
index bba75f933c..88dd73ee36 100644
--- a/src/lxc/mount_utils.c
+++ b/src/lxc/mount_utils.c
@@ -31,7 +31,7 @@ lxc_log_define(mount_utils, lxc);
* setting in @attr_set, but must also specify MOUNT_ATTR__ATIME in the
* @attr_clr field.
*/
-static inline void set_atime(struct lxc_mount_attr *attr)
+static inline void set_atime(struct mount_attr *attr)
{
switch (attr->attr_set & MOUNT_ATTR__ATIME) {
case MOUNT_ATTR_RELATIME:
@@ -272,7 +272,7 @@ int create_detached_idmapped_mount(const char *path, int userns_fd,
{
__do_close int fd_tree_from = -EBADF;
unsigned int open_tree_flags = OPEN_TREE_CLONE | OPEN_TREE_CLOEXEC;
- struct lxc_mount_attr attr = {
+ struct mount_attr attr = {
.attr_set = MOUNT_ATTR_IDMAP | attr_set,
.attr_clr = attr_clr,
.userns_fd = userns_fd,
@@ -335,7 +335,7 @@ int __fd_bind_mount(int dfd_from, const char *path_from, __u64 o_flags_from,
__u64 attr_clr, __u64 propagation, int userns_fd,
bool recursive)
{
- struct lxc_mount_attr attr = {
+ struct mount_attr attr = {
.attr_set = attr_set,
.attr_clr = attr_clr,
.propagation = propagation,
diff --git a/src/lxc/syscall_wrappers.h b/src/lxc/syscall_wrappers.h
index a5e98b565c..c8a7d0c7b7 100644
--- a/src/lxc/syscall_wrappers.h
+++ b/src/lxc/syscall_wrappers.h
@@ -18,6 +18,12 @@
#include "macro.h"
#include "syscall_numbers.h"
+#if HAVE_STRUCT_MOUNT_ATTR
+#include <sys/mount.h>
+#elif HAVE_UAPI_STRUCT_MOUNT_ATTR
+#include <linux/mount.h>
+#endif
+
#ifdef HAVE_LINUX_MEMFD_H
#include <linux/memfd.h>
#endif
@@ -210,16 +216,18 @@ extern int fsmount(int fs_fd, unsigned int flags, unsigned int attr_flags);
/*
* mount_setattr()
*/
-struct lxc_mount_attr {
+#if !HAVE_STRUCT_MOUNT_ATTR && !HAVE_UAPI_STRUCT_MOUNT_ATTR
+struct mount_attr {
__u64 attr_set;
__u64 attr_clr;
__u64 propagation;
__u64 userns_fd;
};
+#endif
#if !HAVE_MOUNT_SETATTR
static inline int mount_setattr(int dfd, const char *path, unsigned int flags,
- struct lxc_mount_attr *attr, size_t size)
+ struct mount_attr *attr, size_t size)
{
return syscall(__NR_mount_setattr, dfd, path, flags, attr, size);
}
From ef1e0607b82e27350c2d677d649c6a0a9693fd40 Mon Sep 17 00:00:00 2001
From: Christian Brauner <brauner@kernel.org>
Date: Tue, 9 Aug 2022 16:27:40 +0200
Subject: [PATCH 2/3] build: detect sys/pidfd.h availability
Fixes: #4176
Signed-off-by: Christian Brauner (Microsoft) <christian.brauner@ubuntu.com>
---
meson.build | 1 +
src/lxc/process_utils.h | 6 ++++++
2 files changed, 7 insertions(+)
diff --git a/meson.build b/meson.build
index f679aabbc8..e999542336 100644
--- a/meson.build
+++ b/meson.build
@@ -735,6 +735,7 @@ foreach tuple: [
['sys/resource.h'],
['sys/memfd.h'],
['sys/personality.h'],
+ ['sys/pidfd.h'],
['sys/signalfd.h'],
['sys/timerfd.h'],
['pty.h'],
diff --git a/src/lxc/process_utils.h b/src/lxc/process_utils.h
index 9c15b15741..ed84741d0e 100644
--- a/src/lxc/process_utils.h
+++ b/src/lxc/process_utils.h
@@ -15,6 +15,10 @@
#include <sys/syscall.h>
#include <unistd.h>
+#if HAVE_SYS_PIDFD_H
+#include <sys/pidfd.h>
+#endif
+
#include "compiler.h"
#include "syscall_numbers.h"
@@ -136,9 +140,11 @@
#endif
/* waitid */
+#if !HAVE_SYS_PIDFD_H
#ifndef P_PIDFD
#define P_PIDFD 3
#endif
+#endif
#ifndef CLONE_ARGS_SIZE_VER0
#define CLONE_ARGS_SIZE_VER0 64 /* sizeof first published struct */
From cbabe8abf11e7e7fb49c123bae31efdd9bc8f1e8 Mon Sep 17 00:00:00 2001
From: Christian Brauner <brauner@kernel.org>
Date: Tue, 9 Aug 2022 17:19:40 +0200
Subject: [PATCH 3/3] build: check for FS_CONFIG_* header symbol in sys/mount.h
Fixes: #4176
Signed-off-by: Christian Brauner (Microsoft) <christian.brauner@ubuntu.com>
---
meson.build | 59 +++++++++++++++++++++++++++++++++++++++++--
src/lxc/mount_utils.h | 16 ++++++++++++
2 files changed, 73 insertions(+), 2 deletions(-)
diff --git a/meson.build b/meson.build
index e999542336..9f8a5de60c 100644
--- a/meson.build
+++ b/meson.build
@@ -639,8 +639,7 @@ if cc.sizeof('struct mount_attr', prefix: decl_headers, args: '-D_GNU_SOURCE') >
found_types += 'struct mount_attr (sys/mount.h)'
else
srcconf.set10('HAVE_' + 'struct mount_attr'.underscorify().to_upper(), false)
- missing_types += 'struct mount_attr (sys/mount.h)'
-endif
+ missing_types += 'struct mount_attr (sys/mount.h)' endif
## Types.
decl_headers = '''
@@ -656,6 +655,62 @@ else
missing_types += 'struct mount_attr (linux/mount.h)'
endif
+if cc.has_header_symbol('sys/mount.h', 'FSCONFIG_SET_FLAG')
+ srcconf.set10('HAVE_' + 'FSCONFIG_SET_FLAG'.underscorify().to_upper(), true)
+ found_types += 'FSCONFIG_SET_FLAG'
+else
+ srcconf.set10('HAVE_' + 'FSCONFIG_SET_FLAG'.underscorify().to_upper(), false)
+ missing_types += 'FSCONFIG_SET_FLAG'
+endif
+
+if cc.has_header_symbol('sys/mount.h', 'FS_CONFIG_SET_STRING')
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_STRING'.underscorify().to_upper(), true)
+ found_types += 'FS_CONFIG_SET_STRING'
+else
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_STRING'.underscorify().to_upper(), false)
+ missing_types += 'FS_CONFIG_SET_STRING'
+endif
+
+if cc.has_header_symbol('sys/mount.h', 'FS_CONFIG_SET_BINARY')
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_BINARY'.underscorify().to_upper(), true)
+ found_types += 'FS_CONFIG_SET_BINARY'
+else
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_BINARY'.underscorify().to_upper(), false)
+ missing_types += 'FS_CONFIG_SET_BINARY'
+endif
+
+if cc.has_header_symbol('sys/mount.h', 'FS_CONFIG_SET_PATH_EMPTY')
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_PATH_EMPTY'.underscorify().to_upper(), true)
+ found_types += 'FS_CONFIG_SET_PATH_EMPTY'
+else
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_PATH_EMPTY'.underscorify().to_upper(), false)
+ missing_types += 'FS_CONFIG_SET_PATH_EMPTY'
+endif
+
+if cc.has_header_symbol('sys/mount.h', 'FS_CONFIG_SET_PATH_FD')
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_PATH_FD'.underscorify().to_upper(), true)
+ found_types += 'FS_CONFIG_SET_PATH_FD'
+else
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_PATH_FD'.underscorify().to_upper(), false)
+ missing_types += 'FS_CONFIG_SET_PATH_FD'
+endif
+
+if cc.has_header_symbol('sys/mount.h', 'FS_CONFIG_SET_CMD_CREATE')
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_CMD_CREATE'.underscorify().to_upper(), true)
+ found_types += 'FS_CONFIG_SET_CMD_CREATE'
+else
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_CMD_CREATE'.underscorify().to_upper(), false)
+ missing_types += 'FS_CONFIG_SET_CMD_CREATE'
+endif
+
+if cc.has_header_symbol('sys/mount.h', 'FS_CONFIG_SET_CMD_RECONFIGURE')
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_CMD_RECONFIGURE'.underscorify().to_upper(), true)
+ found_types += 'FS_CONFIG_SET_CMD_RECONFIGURE'
+else
+ srcconf.set10('HAVE_' + 'FS_CONFIG_SET_CMD_RECONFIGURE'.underscorify().to_upper(), false)
+ missing_types += 'FS_CONFIG_SET_CMD_RECONFIGURE'
+endif
+
## Headers.
foreach ident: [
['bpf', '''#include <sys/syscall.h>
diff --git a/src/lxc/mount_utils.h b/src/lxc/mount_utils.h
index ea392672d8..fd34739459 100644
--- a/src/lxc/mount_utils.h
+++ b/src/lxc/mount_utils.h
@@ -82,37 +82,53 @@ struct lxc_rootfs;
#endif
/* fsconfig() commands */
+#if !HAVE_FSCONFIG_SET_FLAG
#ifndef FSCONFIG_SET_FLAG
#define FSCONFIG_SET_FLAG 0 /* Set parameter, supplying no value */
#endif
+#endif
+#if !HAVE_FSCONFIG_SET_STRING
#ifndef FSCONFIG_SET_STRING
#define FSCONFIG_SET_STRING 1 /* Set parameter, supplying a string value */
#endif
+#endif
+#if !HAVE_FSCONFIG_SET_BINARY
#ifndef FSCONFIG_SET_BINARY
#define FSCONFIG_SET_BINARY 2 /* Set parameter, supplying a binary blob value */
#endif
+#endif
+#if !HAVE_FSCONFIG_SET_PATH
#ifndef FSCONFIG_SET_PATH
#define FSCONFIG_SET_PATH 3 /* Set parameter, supplying an object by path */
#endif
+#endif
+#if !HAVE_FSCONFIG_SET_PATH_EMPTY
#ifndef FSCONFIG_SET_PATH_EMPTY
#define FSCONFIG_SET_PATH_EMPTY 4 /* Set parameter, supplying an object by (empty) path */
#endif
+#endif
+#if !HAVE_FSCONFIG_SET_FD
#ifndef FSCONFIG_SET_FD
#define FSCONFIG_SET_FD 5 /* Set parameter, supplying an object by fd */
#endif
+#endif
+#if !HAVE_FSCONFIG_CMD_CREATE
#ifndef FSCONFIG_CMD_CREATE
#define FSCONFIG_CMD_CREATE 6 /* Invoke superblock creation */
#endif
+#endif
+#if !FSCONFIG_CMD_RECONFIGURE
#ifndef FSCONFIG_CMD_RECONFIGURE
#define FSCONFIG_CMD_RECONFIGURE 7 /* Invoke superblock reconfiguration */
#endif
+#endif
/* fsmount() flags */
#ifndef FSMOUNT_CLOEXEC

@ -1,44 +0,0 @@
From b0abedf60b40adf0f2fb3cf9dfee4bc601f7b39f Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Thu, 25 Aug 2022 05:45:53 -0700
Subject: [PATCH] use sd_bus_call_method_async to replace the asyncv one
The sd_bus_call_method_asyncv's 10th parameter is of type
va_list and supplying NULL when invoking it causes compilation
error. Just replace it with the async one.
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
meson.build | 4 ++--
src/lxc/cgroups/cgfsng.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/meson.build b/meson.build
index 21955a0504..f8bdcf4e83 100644
--- a/meson.build
+++ b/meson.build
@@ -295,9 +295,9 @@ if not want_sd_bus.disabled()
has_sd_bus = false
endif
- if not cc.has_function('sd_bus_call_method_asyncv', prefix: '#include <systemd/sd-bus.h>', dependencies: libsystemd)
+ if not cc.has_function('sd_bus_call_method_async', prefix: '#include <systemd/sd-bus.h>', dependencies: libsystemd)
if not sd_bus_optional
- error('libsystemd misses required sd_bus_call_method_asyncv function')
+ error('libsystemd misses required sd_bus_call_method_async function')
endif
has_sd_bus = false
diff --git a/src/lxc/cgroups/cgfsng.c b/src/lxc/cgroups/cgfsng.c
index 8a3615893f..d90e5385e1 100644
--- a/src/lxc/cgroups/cgfsng.c
+++ b/src/lxc/cgroups/cgfsng.c
@@ -1232,7 +1232,7 @@ static int unpriv_systemd_create_scope(struct cgroup_ops *ops, struct lxc_conf *
if (r < 0)
return log_error(SYSTEMD_SCOPE_FAILED, "Failed to connect to user bus: %s", strerror(-r));
- r = sd_bus_call_method_asyncv(bus, NULL, DESTINATION, PATH, INTERFACE, "Subscribe", NULL, NULL, NULL, NULL);
+ r = sd_bus_call_method_async(bus, NULL, DESTINATION, PATH, INTERFACE, "Subscribe", NULL, NULL, NULL);
if (r < 0)
return log_error(SYSTEMD_SCOPE_FAILED, "Failed to subscribe to signals: %s", strerror(-r));

@ -1,171 +0,0 @@
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit bash-completion-r1 linux-info meson optfeature systemd toolchain-funcs verify-sig
DESCRIPTION="A userspace interface for the Linux kernel containment features"
HOMEPAGE="https://linuxcontainers.org/ https://github.com/lxc/lxc"
SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz
verify-sig? ( https://linuxcontainers.org/downloads/lxc/${P}.tar.gz.asc )"
LICENSE="GPL-2 LGPL-2.1 LGPL-3"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86"
IUSE="apparmor +caps examples io-uring lto man pam seccomp selinux ssl systemd test +tools"
RDEPEND="acct-group/lxc
acct-user/lxc
apparmor? ( sys-libs/libapparmor )
caps? ( sys-libs/libcap[static-libs] )
io-uring? ( >=sys-libs/liburing-2:= )
pam? ( sys-libs/pam )
seccomp? ( sys-libs/libseccomp )
selinux? ( sys-libs/libselinux )
ssl? ( dev-libs/openssl:0= )
systemd? ( sys-apps/systemd:= )
tools? ( sys-libs/libcap[static-libs] )"
DEPEND="${RDEPEND}
sys-kernel/linux-headers"
BDEPEND="virtual/pkgconfig
man? ( app-text/docbook2X )
verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )"
RESTRICT="!test? ( test )"
CONFIG_CHECK="~!NETPRIO_CGROUP
~CGROUPS
~CGROUP_CPUACCT
~CGROUP_DEVICE
~CGROUP_FREEZER
~CGROUP_SCHED
~CPUSETS
~IPC_NS
~MACVLAN
~MEMCG
~NAMESPACES
~NET_NS
~PID_NS
~POSIX_MQUEUE
~USER_NS
~UTS_NS
~VETH"
ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers"
ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking"
ERROR_MEMCG="CONFIG_MEMCG: needed for memory resource control in containers"
ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network"
ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command"
ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info"
ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking"
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linuxcontainers.asc
DOCS=( AUTHORS CONTRIBUTING MAINTAINERS README.md doc/FAQ.txt )
PATCHES=( "${FILESDIR}"/lxc-5.0.1-glibc-2.36.patch
"${FILESDIR}"/lxc-5.0.1-use-sd_bus_call_method_async-insteaf-of-asyncv.patch )
pkg_setup() {
linux-info_pkg_setup
}
src_configure() {
local emesonargs=(
--localstatedir "${EPREFIX}/var"
-Dcoverity-build=false
-Doss-fuzz=false
-Dcommands=true
-Dmemfd-rexec=true
-Dthread-safety=true
$(meson_use apparmor)
$(meson_use caps capabilities)
$(meson_use examples)
$(meson_use io-uring io-uring-event-loop)
$(meson_use lto b_lto)
$(meson_use man)
$(meson_use pam pam-cgroup)
$(meson_use seccomp)
$(meson_use selinux)
$(meson_use ssl openssl)
$(meson_use test tests)
$(meson_use tools)
-Ddata-path=/var/lib/lxc
-Ddoc-path=/usr/share/doc/${PF}
-Dlog-path=/var/log/lxc
-Drootfs-mount-path=/var/lib/lxc/rootfs
-Druntime-path=/run
)
if use systemd; then
local emesonargs+=( -Dinit-script="systemd" )
local emesonargs+=( -Dsd-bus=enabled )
else
local emesonargs+=( -Dinit-script="sysvinit" )
local emesonargs+=( -Dsd-bus=disabled )
fi
use tools && local emesonargs+=( -Dcapabilities=true )
if $(tc-ld-is-gold) || $(tc-ld-is-lld); then
local emesonargs+=( -Db_lto_mode=thin )
else
local emesonargs+=( -Db_lto_mode=default )
fi
meson_src_configure
}
src_install() {
meson_src_install
# The main bash-completion file will collide with lxd, need to relocate and update symlinks.
mkdir -p "${ED}"/$(get_bashcompdir) || die "Failed to create bashcompdir."
if use tools; then
bashcomp_alias lxc-start lxc-{attach,autostart,cgroup,checkpoint,config,console,copy,create,destroy,device,execute,freeze,info,ls,monitor,snapshot,stop,top,unfreeze,unshare,usernsexec,wait}
else
bashcomp_alias lxc-start lxc-usernsexec
fi
keepdir /var/lib/cache/lxc /var/lib/lib/lxc
find "${ED}" -name '*.la' -delete -o -name '*.a' -delete || die
# Replace upstream sysvinit/systemd files.
if use systemd; then
rm -r "${D}$(systemd_get_systemunitdir)" || die "Failed to remove systemd lib dir"
else
rm "${ED}"/etc/init.d/lxc-{containers,net} || die "Failed to remove sysvinit scripts"
fi
newinitd "${FILESDIR}/${PN}.initd.8" ${PN}
systemd_newunit "${FILESDIR}"/lxc-monitord.service.5.0.0 lxc-monitord.service
systemd_newunit "${FILESDIR}"/lxc-net.service.5.0.0 lxc-net.service
systemd_newunit "${FILESDIR}"/lxc.service-5.0.0 lxc.service
systemd_newunit "${FILESDIR}"/lxc_at.service.5.0.0 "lxc@.service"
if ! use apparmor; then
sed -i '/lxc-apparmor-load/d' "${D}$(systemd_get_systemunitdir)/lxc.service" || die "Failed to remove apparmor references from lxc.service systemd unit."
fi
}
pkg_postinst() {
elog "Please refer to "
elog "https://wiki.gentoo.org/wiki/LXC for introduction and usage guide."
elog
elog "Run 'lxc-checkconfig' to see optional kernel features."
elog
optfeature "automatic template scripts" app-containers/lxc-templates
optfeature "Debian-based distribution container image support" dev-util/debootstrap
optfeature "snapshot & restore functionality" sys-process/criu
}

@ -23,7 +23,7 @@ DEPEND="acct-group/lxd
dev-db/sqlite:3
dev-libs/dqlite:=
dev-libs/lzo
dev-libs/raft[lz4]
dev-libs/raft:=[lz4]
>=dev-util/xdelta-3.0[lzma(+)]
net-dns/dnsmasq[dhcp]
sys-libs/libcap

@ -12,7 +12,7 @@ SRC_URI="https://linuxcontainers.org/downloads/lxd/${P}.tar.gz
LICENSE="Apache-2.0 BSD LGPL-3 MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
KEYWORDS="amd64 ~arm64 ~x86"
IUSE="apparmor nls"
DEPEND="acct-group/lxd

@ -0,0 +1,183 @@
DIST aho-corasick-0.7.19.crate 113070 BLAKE2B 5ddaa0d415d19cf9922b5723bf3480750634ea68cb66fd05bfa2bf57607eb6383ba86d8c55f70adb87b71b98caa73d8f6ebd075c006493530c81979032899b60 SHA512 0d63d29079650bde4e8a9f8529716b9d8c42db076a1d74715116240c2628173f1e86fb29c08a25ad07a0148e48789ab20de0c186a8b3dfb193cbfeb0d76ae78c
DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191
DIST anyhow-1.0.66.crate 43770 BLAKE2B 8d74397c47bd64c00f015cf7ee279fa020ea39191440208d77e4a5fdb35fca531e8bb9b765be223b24050d0fd1db76fa5b516146f450937f84a5c113c9eca997 SHA512 7b4078906df2805d491dc2f29c4eec85a9f43078c0dcd9c05261c2706ed655953b693c4f59fda62547681b29cda9ac7a0789f1359bb18110403cfe34e9fb0dc3
DIST async-broadcast-0.4.1.crate 19732 BLAKE2B 9b48985cf6b10a14911a7c83c742357c818bd5e0847eb825fb00b89ac90961504eda9ba3c5b2312bc02800e41863bc03772519a44e3ea8429be99783f6256509 SHA512 b4fe8fb92d957f0988e7d68fdc81153636a3fb30c019dc005fd9a17838fcc6b68e06b84828cad06259dd334a2fa478f5418e0f0d8091f1fe5be7ff59e6e31ef9
DIST async-channel-1.7.1.crate 12855 BLAKE2B f7762c5d3fa880da7e31f176fc28d9997fcb734c8cb850f8f369315af317c6c0a0b8b834b23474b8320cacfa5fda7464f60cf28f284b68b45d9abb728201bd89 SHA512 26c2fcc2b0f0bd1fb58826f7a0ef1bdd3069c02c00b7e59c2c7001f39d347df8c9882eee8682629ff8d94e88973186b20fcf2ee6885332024d181d3525866cd9
DIST async-executor-1.5.0.crate 15068 BLAKE2B d764f9166018d0dd07ca687be64f139e4dd8ae8488a1d6ada0595a17abb5fbd1c04b37c00b1f02e6c100529eeb0e9147729833e2203c56d4b92ae76fa75929ab SHA512 0fa79f50648aafed31d572e25534ac10df7d5d105119d4f6e1cc9af710e86103b0def49829ed6523e384634a3ccd697d01f07e4898c1e84dcb48d3fe52aaed5d
DIST async-io-1.10.0.crate 36493 BLAKE2B 5ccfbf160aefe2b8a661e74b09d8b5374c403759d78c8d0a13db47d7e7943c22938d1c7bd03512a98899aa9f4cc8b31584e0fb47e4d296f369b8d2908c5a912b SHA512 f1ba7cd3f28944c106dc94c05ca4cac851299bed6899a53867580317c73436d062c164a1de55ee9b2913d3c34470ef3c25c2ffdb2a9d342ed9919961b6e5377b
DIST async-lock-2.6.0.crate 20497 BLAKE2B 9703dec1ecfda4b482b6df48bb1691b8aa5e6645c310e437656cb7eccd2115f2af6443063dd9f1ffd0108aa866cacdbabbebc287800b7824a25f2d1b8fbb4a42 SHA512 20cb5f5f37d4c4fd7f010d96ed79a924dcc7eee3584027c48ea0edc04d19158f080771acd63fe0534dc5762937a0c1ea8bce8df707526a9f245b5dda61317dad
DIST async-recursion-1.0.0.crate 10746 BLAKE2B 2f7457958f3565e440d404c7cc0dc8077c731909ef27a625afe906bc42d4639a9ccefe9200e701ab8f3791d96d5e8a4ae784241ed37c5d1f226833d3feeba1d8 SHA512 3c1ea5a7810fab786ad8a815077894ed8413c5e4fba74e0998fc0847c6ea79fe8dad0926a778bfd02a671172c2386184e388cbaee687b777ad3eab080115a515
DIST async-task-4.3.0.crate 29544 BLAKE2B ed27a637b0c7196f9dbc13b597cd97afbf4bdcd78d5f46e20862a39f41ea3b2dd9335795dbb8fc22e2c4ba75e4678156fb062f91211e1caf2475546ca99ba327 SHA512 55f4fa697d1e00946e3e518e35117552e66a28a4c52e72f66af4c1b9a31e932d1fd32f31a4097fea707789575a9aec0db2ce9eb51643909480a41c52d3558d22
DIST async-trait-0.1.58.crate 26783 BLAKE2B 6ea40439b0d57169ae3346f4cc3b57322be7e073070cc4d3e476d349e9e2dcc95aaf8b9360a6d2dff82e6ba5d86ca1cbfa3ad54f7bd2740b8ac2b7bf0ac75f4a SHA512 2ce2e2ca1128c413667618bb1d865d6f3d2de89c9480c4124321a2cee2e51908fa6b7e911bcb1c5699a21cc296d221f9b4e970df6c37f5b2b234de05a6138291
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 block-buffer-0.10.3.crate 10465 BLAKE2B 32f0089971bb759244b73a75bdbbeb2d24f0422e92ceb0ae0afe3c698e3fabb371112a2eba3dab16a3859420d492c0ac984bfbb25e59e0c31951501cc652aab7 SHA512 e29faab70f8f2965a58089728274ec34bc97d681526687868c9cb1a2c145db00717f97e77b79a04fa52bd76817d796e104b509cd2a3163085b214f8eb68ac04f
DIST bumpalo-3.11.1.crate 81207 BLAKE2B ba76008fb5a975aca12b6f893779e18dd353a22a42cbbeecd5870622a7cbc0cd7e37036af600c570b8a55f26ea8d07f44a9aa1a8373d977b6f75bd4276730292 SHA512 70e90bee1fa4e783ff5a3b18f192b9347bafab7daaa907e74913a415a66c29acfb073fcfb46150801aa7649ab0d2ec8a610de239551565dd167bac72ab13a9bc
DIST byteorder-1.4.3.crate 22512 BLAKE2B d39c546ba7346df315297fc53da4bfc77ecb1f38567ddb788549ee31cae2719a8bc0b7d1f1705abb3cff033aa57af004987d90748f5a31765273b3223a011c0d SHA512 8c8000eb8ecf40351c9ce36a3a8acd7a02f81786d1b11aab85adfeffa0f2267ed74df29b2ca5d1d38128484d1d3cad2b673aa0d0441dcd0620dfd3934bb888fa
DIST bytes-1.2.1.crate 54857 BLAKE2B fae7e7b0e8023e4b5a9b7d5a390035dc5ee2b19f1fca03d885ad27611d45bd276c837bb63e9498e3f6d2f00d5573fd01f20115da21ccdf8606ce8d8bf5bd1b7f SHA512 39c19594f52af24b04eab319ab329e8ecb5732e4531184eb376677f57c8a6402c15bd171282498e69a4a472d82e308d0dc8140df0b7d923dca588aec90c4fd31
DIST cache-padded-1.2.0.crate 9125 BLAKE2B d50b506aca9cfad3117be593c33bba4a5240034a838610925f9eac969155f22e0064c91f8d3588333880d1f5b6b936df87c0728530f80cd1062c73d570bfd1e4 SHA512 5b67d06908981d0e1ba01912a973cc5c90ce6612f227b306d12b13500594f5d2376d437a046e10b9cf959b609cb67fa6e24193fc651cb2d84e1f77338c6823fc
DIST cc-1.0.76.crate 60132 BLAKE2B 9e8dabe8cb64a8ef7bb4a91d4e601a9175712da00644125e0e625b0a10a4815ed1a3c93f32eb773d0c2215c74b8f0d73a35831291195dff65d1ae79b8e423d8a SHA512 9a31f5a78859f7272cba9289d0c1b7fe01cbbe5ccd20a729141a751df7f5a576726e2b7e038cb7142e63c59a5ce7cdb83b93c32d5b5f3f45bb297ecdc1b9e983
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST chrono-0.4.22.crate 185570 BLAKE2B 10dfae2fe871a9910bf885b78aaf3e9ed1bcb87a40962d781c8ea407a945b837c665c2bb4e3d0562ac63d9e7bd5012804434642ee6f5c80e22bc816d4331f1b0 SHA512 de856679ec16afe035176b22125a00ced532d49c8babac0a88fa5f6e4a3d9e526a34ee8bf51639653fc313a5703a202b1be013aa16fdd72a505151d7aafa7c44
DIST clap-3.2.23.crate 219435 BLAKE2B e99a928ef61a7f9f6d7df2c38acd480fc86bfa3885d8b875007aa5bc855396641ca6772387de2eadc1d545dd201434037ea9e7fd138395831e4755ae5a917a7d SHA512 1f1f2ad07a0f8fbe8672f4252edf260ffb5e024a20d6673fb846d59e245a226a43675539ccd3cb252571766b1f6511c68c5cb0f2351c8086955d49c37f87338a
DIST clap_derive-3.2.18.crate 28208 BLAKE2B 05a23083a8e792858819d7eebf057257b1d49b0e8246d3f24c6f812456cbabfc75d9271c295a0d44539bd531ea6808ca7490e787c1fcae63bce045422d33d280 SHA512 d5349b3d5711bd4900173aa5210d7c4aebb0bf70128e11f26b362f5acb43687f6ce5ef73e4d614ce9c1d649d34b68ff15ab8b65fdf1898fd295ee4b4a7523497
DIST clap_lex-0.2.4.crate 9652 BLAKE2B 5120b508dedf52507068c0c369a45ddfbe0369e5c05b65bc5a78c422b2a4bf488f9ef1e0bed4e335450f2c08b80148eb5f7efed678039b5a94b5bd666385939f SHA512 6c05e5fd850befd45be9005af7252385f2304aa28a107413bbe329d97aea835f7acfd0bd169c99f69f466ab93d6e1c35d73a4e48343457a06fe2d6be5bedde0f
DIST codespan-reporting-0.11.1.crate 48963 BLAKE2B 39deb717a853ffbe3585e20a67fd7a75b62e2d796a66b5004876501fd7476acde9f126804f2ef6220ebab66821a3ccf058d544d689a2705eae44285f34b510cb SHA512 0869789f5c50d3523d3ee16a8fe64756498a13704efbe82bb0845eaa87c7b6b1d075b3b6b80567cd9fce6cb09c5179e9c07e485fd17ce56c8139ade0f8bc6844
DIST concurrent-queue-1.2.4.crate 15375 BLAKE2B d65f379ab2cf8e75bdcedc0a8def45624c8eec73e92f8b559481695ffefbb715fb608985f204ecb964e547cbebb62a024cee210a03ebbb216e018a5ad951870e SHA512 4c0c81f02bc10b1ac25880f7a9647d787742f694a8cbc6aa921cb76c5416bae7ad94eab857e48d56a42243a96cc86bb0b7e18651021d281cca90d77a644d941a
DIST concurrent-queue-2.0.0.crate 19465 BLAKE2B 314a70f63588f1a083d864a3e49529d770e81922544b4419472e89265dadcab7ab16bb0d41da20b0147f069486097c80442f6b126999cd91d351c768dd9e25d0 SHA512 e518fb6c25424f49eceff427a5a4840ef277eceb8bde40c73604e798397eb4733b513de26f147093012a0addaced14540b88b411d176b95065f3cc60788c3e08
DIST core-foundation-sys-0.8.3.crate 17519 BLAKE2B 4ac3d9ab16753dd995abe82f158d460d0d22184ab55d260e73b20305cffe4e03427dabfe0c8be968b6c3ecd348be2e17154ded7c9bbd5a95334ff266fe83bbf7 SHA512 a3ba3184cef65dafe8318c4db7e59eb2749dcde7b2370ad20272b0735ded0032daf2de3fd0cf55eb48448a335f5b81e8e745f2a647f9a43bb85946ce714bfd82
DIST cpufeatures-0.2.5.crate 11251 BLAKE2B 2724be40d3bc0e2fda957f645e1cd6472450dee68db3592ab607bdac444283f571f3c904e47981a3fdaa06cab4032734a54470e3dd6e1b67fd856daf010e1277 SHA512 d02327a27ca9fc3c587dcbd10da6b1370671cd7b1df8dfc9078b47180744d0572ef41a7ec205ae9f1c571e5b7f4bc81278ab4c6b076c6ccac0167100e346e74e
DIST crossbeam-utils-0.8.13.crate 42080 BLAKE2B 169fbcaf38e91ea910102ea62d277dd7354058be4b0116a5aa4b0262d24c98490ed7931bcee4406150affea8374415f8570b4f6b377d10713f039c1a7a95486c SHA512 fc5929b598bd8bbe427d7b80c8f8a079821303156a343f9a6800de4aa70ecbbbc3fcbc5c5225ac7238b469939632acbea43253ccafc97750598227def089b55d
DIST crypto-common-0.1.6.crate 8760 BLAKE2B f2422bfb89c15d47a8f91c8f6695e05eb56990a922e3cdf3d426044736f9932324c0d899a151a6df4d6683e6a6b21659c657d3988734014c02cd854bb4b924e7 SHA512 471dbc43f517089d2cfe0868e29510c6ca579875b3bb5d013c70796db969b609b6c4bb35c9a07b9a2917012dc5708b717d48e317a20038adbe7e7039bf3ada6f
DIST cxx-1.0.81.crate 197202 BLAKE2B 63dcada61c519d547e4c402736e3b7aa42720513c8eb84de77f5bf659935b992d8a91ffcc8d804bc614f6d5fd96eefbce20197e95cce518ea79edf08f01389a8 SHA512 44a8f04c175caea86edde5230285831ac92cf464ae26c13e40a30120af985c3b17a5f0bfabd6913f90e03742ec8945f15c830397134f189232c1c3dbe3f5537e
DIST cxx-build-1.0.81.crate 84069 BLAKE2B 9dce4c3e8ba37cc58fe1865e33b948675bb7cf4f72672b932a6958da3ba023303a758074dcee62c78315bd2b6d991ee9f09742aa12dcaf00d630778823f305b1 SHA512 6f612664a50839bd39c4138e6e046fe5f0e519f7a86d0b9276eff110c9dac7398bbe8b9b2a563033b2c0e54a7b7ecad4fea6865a9802f79e19ebf5338fa8cfdf
DIST cxxbridge-flags-1.0.81.crate 5636 BLAKE2B 312c1c1c0f16b77becccdf2081e5a98db8bc9b43751e791ca7534042bc6920027d319851a37f3eee536d117415aed19908ef45f2f5cf89a81ef9c46435934d29 SHA512 b3d6092d652699c8497404707e6b4abe8562a03ccbb396fe266147743c2c3fdb9cf6e2a6fd919124107a411f3858ed67195ec4a417d53dbaa8109b3d20560f66
DIST cxxbridge-macro-1.0.81.crate 59869 BLAKE2B 445496f150751ebcf8f0bd9c1cc46d830a9bdb59853caf8fec73929f7d7f5913574c234ae5d4bc47cabe17fafe3864f2397dd5826e5e022a689a92cce83ecb84 SHA512 5ee31c8f0758dfd066f25791e28f6c3378c425211cd703d5cc7967ff787fa772b5f5ffc28cbe8e4c53402aae121f9640f8e9fcce7acb1e14ca485d9a52170e76
DIST derivative-2.2.0.crate 48076 BLAKE2B 56d27e27493c3b818ad45703efda607a0a0d9a48b0d43785b6a013443b8b964b67bb5b5284d242358415c5fb81b86b02079ee7c0595ec07bc658240eb114b887 SHA512 3c65ecdabd2dc202be3d83b06f96b6f68504fe542ede7e2285093c6d360a33ec76a3787c436c6e5ff8f59d430436a4b8ce2f908cf7b2b08cd8b0045de4e5d1da
DIST digest-0.10.5.crate 19503 BLAKE2B a73ef5f7b85869f8f6e2bd1c83f88f155ffab8ae1c687018ddd12f5806385a2664c163101aec84d4c20647a8bfd04095aa997e088a3f56e2664adabff1c5614f SHA512 3542fc0322a8b10dbc229ae83475a0df5f9beee4f879eacab1fda53a7b61136df2961265472ae66d896681bd17f8a68148b25827733bd782c6bae05d2f307951
DIST dirs-4.0.0.crate 12503 BLAKE2B 02c0b9b68d09ca713e365410c72d761de5adb87a0fc5176c4f980050198cc05078fa67b43a8af1b16e80e7edf41a428dbe55807463bab59f3fade09b53d7399e SHA512 be582e5045f1916fb6b918c8e8c5907b4b663534025e4227ea4828e2aa9fe7fbcb3c48f1f0d08d163ba684aa4404076ac210e7f14766a09b9ed89a2825121b3b
DIST dirs-sys-0.3.7.crate 10597 BLAKE2B bbeadbfe15d9b92e4057cb600f1957e066e295e0208e1645ee49fa76c55c45e273ae5b87337eeb398dd3ef3adf0a5584087b8fc0fb780aa23c6d9392029d6581 SHA512 e630964e4c452950a475c10a490b49b2979dd7dfda48172b905cc789153ae4a0ba2d7d91f690705cbfff23737c4b4a339eb0c49e922efd7d68a92fe6368a929f
DIST enumflags2-0.7.5.crate 15117 BLAKE2B 416be2914575d608e907b5ea964f80167ba4353c2c2ec3f65a9cf073e5f19e8597e24d7abcfbf951e35c0207a0325469d7a6211e82afa7481ed8c83b0f48bde5 SHA512 d275f1b7f49d5efaf2e4ed7b6665ad10526730192be9fd6b73ee0d414ce461a18b4024525527a867eaa007314c477700da5aadd8c44cab0e69b6331c711e75ce
DIST enumflags2_derive-0.7.4.crate 8166 BLAKE2B 33b7be39b07a01fdf1f877b393353ec86e4b341acf1e2dd27b66ee5c00379dd834a3a6e619c58f84859670cad94c59749c9096b702e3777e69be2be5fdfc6db1 SHA512 9d70027993e6784674c5142750568374528d8b4290c629cbbc967e4812599145d74f577ec1bc4049f43235246fa7200e6348e93ff163a0f56d7643830583f19d
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 event-listener-2.5.3.crate 15392 BLAKE2B c56ed5eafa64014141e869dcf952e86f755eb35ed1722f8139260cb502ba226351ed1bea301618e94c9ca7f3309747057eb5f7d7986cfcdb7f6b79d13d52b439 SHA512 ddd67c1139ffe2aba95d763b73db0e2a9985dd2e57cf8f72030047d53d46d833df4b4192730cf0af4e060ce52e4f2df23aab6509abb94a6cd02e0d8cc3559d22
DIST fastrand-1.8.0.crate 11369 BLAKE2B 93e911ffcec559e30b2fefa44c4d74d1ffa9b8ef1904ace608b8576210bcd41a2b4c7adffc00cd3bb40996110d07316cf8068f4754a879c6cb47e3d41304d406 SHA512 82cbc2b29b97fa3fa2c9372d3e8c390586a7b39f6c7d8c45f9b779bdfdaa2e8a3b44bc7bfcb3367c18120726facc753c9827cf63a8fb4ddc2667509b16333cb1
DIST form_urlencoded-1.1.0.crate 8734 BLAKE2B eaca73d73d16242f3fa3e38e23531c67c01404697bc7b7eb7c64fa04167dcb403a41818487fc46c5d9118842818472d549a2f5fcef5e4d962461e1c103d895d1 SHA512 9e245495dbf235b147e4216b313f2e6a96357d2782a66d71c08c2902c6a065701ca8ecdbb6b2035983a83c44cf36c921b5c71d63af0e02dd39bf5f8347117e11
DIST fs2-0.4.3.crate 13138 BLAKE2B a8c53130014affc276544360425718c480fe6b6583675e15e8bf25dca0cd2752aeb0793135fce1bdc12bcfc0ef21fb7f6aa298981d61ac150300eb134c2014e0 SHA512 b83fefa9123f304e4813ec1dacbb1aee5dc0c94e1316cd7c8a434aa2a242c9c42523d2bd8232d78e6c84c4e172b5c46ef8605e93b54216a2d4496fdf885dcf50
DIST futures-core-0.3.25.crate 14623 BLAKE2B efc97e52dd0aeee34402018897a276a68cf94bf13fe37b4c0e4d971cc2dbc8cdf54d0744f0846049ff75192c0fcba906b3556f000fa8657f89a54d9356f8f578 SHA512 3b3c758c493255024df26a763023a5d403fcf1a9fd105b08c518bdd5891ada4fddfcbfc8cde6101157a209ab6d1555831bfeb49372b17e902b4fdd8a83cded4b
DIST futures-io-0.3.25.crate 8911 BLAKE2B 4100c46b7ac6908e849d3c50bce6d563419a2eea7d05d27844408287cd41bc29310754012031e3068c0d6b90307c9de36261400d438046af74d6a86b0e60f31f SHA512 ad19dc9de5e3559ac453478aa5d154c28a174a9d6492c028cf4d7c6d9e2ec1ce3ba80aa79c0035f82a1bbf86e55e4a65c9eae488bc5dabd399419cfa8cf652e0
DIST futures-lite-1.12.0.crate 36032 BLAKE2B 16cd92362ddb217fd3c316f1104635b086abbf3b482b3381d62e3b5ddbd20122d1dadb48c83d3022db080d05352ee5a40f33978529bac3eb182b875f45cd132d SHA512 3d26148ed1c87926de51412a8d08e0619c64b85b610a74d6f61fcc1972dc0cbedb04c5824fcb4ef0a920c557ac81a0b2b4403ddb1c01e11648694ae56c28d72a
DIST futures-sink-0.3.25.crate 7854 BLAKE2B af109917de26c608b21d2fd1be304428a6d78095168a0b14eb709136789acda0a6bee4332802c3fa3f1e65ad9057e765b43728b8aa6ebd6bebeb2f25d5f96adc SHA512 fc318461bcec3344c0658135944ce7ebf6756c9d1950c2c5e3ab3ddc7d4ef5b0f0858d09f14d7bbc9a9fec7da19236a10dec0e125e5550c965bae95255eb0089
DIST futures-task-0.3.25.crate 11844 BLAKE2B 60635ba309e978f1b4ba72b29b9d5cce1d870d8398986eb1845d8194080ffd9845d8d2cde19ad0333843bc642cd08a8e5aa44b8c85763ef459c39de4a5cd5042 SHA512 d2278d52397390d7cc1028bcccf1aec009b16ffc33873b8a96cc4f456d7cf501b86660507489d8b284e0798e7fe68c04796471050b6fd2d0529c761d89f9efed
DIST futures-util-0.3.25.crate 155866 BLAKE2B 574e7cddaae172827179c1d012c8088ea84141d453b154b4358350f53f94d13b776339b0fe16b6e18429e2f83cf5fa35bd5079537a044f240c1471014e3b6a2a SHA512 3e233a3093f3889af6bb5adf661c1cc32f821b00975bea05eee14c2b38e25974b65c10234eb060c52dea4c665ebd09895df666f8583559b7f7d7636070ea51a8
DIST generic-array-0.14.6.crate 15889 BLAKE2B 7beac5446f5da4d077598af43c238eb7e71a12b0b91e6be5dbfc1ca33dc21d128fc93c9c8b18caac4b88830c8c8a643f2033acaca1d9a9f3d95329d042276156 SHA512 254e6fb6658f083f26e022916795c9ebfac241b9df2d811aac8316b17e1375e1c5aa54d72f1bf6c2627a88484a7df4b14eca231c90578e9aa3d9997047fa0f20
DIST getrandom-0.2.8.crate 30553 BLAKE2B 30211bc6a8ceb5ba765cbf068405cfc08842b2521c5850647971f4cb4bc9a5b0a9195ccfbc1461de019eeb7744ee69f934922ff21677259d7b815800516df4dc SHA512 cd7aea29f79a33a0de2a52a0a82f2b57ea8f27908ccfe00a5f42248766df88b225023603ec56d6fc634ef9c1eb67ad0135c90d4c695f6f659db0767e7fda44c5
DIST hashbrown-0.12.3.crate 102968 BLAKE2B 492072f27eaec45abd2c5d7405c614c0c6a8221425e901bb6174bfa1688ee524408a618650126d6c683b7285b9bf0a21dcdbff7347e4d8f97bf7111defa1b7e5 SHA512 b3700fcd659a21a6b9b3777c18b37a83bf25542b4e8f2b963779a122f5d22e1742c064cfc03e649583e7dd5c6e90ca8407f8c51a0e8755f6a108682853022f76
DIST heck-0.4.0.crate 11161 BLAKE2B 13b8bc39cf3ab90e71433e3c7b3e5f1c19404bec58dc4298dca05d94d5c14c2fc97350de737cb78aa45196b1241aa8f1ccf3a11ca309da5fe0f6a657673412b3 SHA512 33bdbf4ff9ecc4f4d74cf06590e056f4d96bf0d990d5381b9da5b65682b2495ed74e27b45419c2afa986c1f6200909d5175b137ae73ced5cc8ac869e4e1bce8f
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 hex-0.4.3.crate 13299 BLAKE2B deab49bf3d97f6fd7c0a0855b50232422443b226362bc7a4a19e57c2e662fff2cb046d4c5bd7618ddd523045f3d8c78754508f862f9a8ca29ca9247da6d6ec79 SHA512 fd8ff33b68eea2d6f2c6b02a6d82a2807cbcdc209ca5a76e3e3e5d006917ee151f236b6d18e2646cc9a9674bcdda1d6ce6ee363a89cadd99bef00d0eea9989e6
DIST humantime-2.1.0.crate 16749 BLAKE2B e2ae8325b037fb175b9200cc5c1944ce579056c6662cce307beb6701894552362a25e371aad65f8fb9384945b48815ca74bb8b544a32e0a5845b7edd30b918c9 SHA512 3bf29ddd1391d82897c22baa0ff3ed58ef6d6959859f1f8ed54d324caba5b6fb4422e56790511ce82f902cd11467f93c8ab7fc7b0e0bdb719308a4d0a446ae0c
DIST iana-time-zone-0.1.53.crate 20176 BLAKE2B 842c3c2a9f5b753363668af5162edb6f2734a51fa6c6fc8bafc3981f5f287451258f5ab31d5ea6c2a1df75934233849bba8dde4ee5aa9fcc456fbafa93d8b51b SHA512 a3f899fe9ebc7501bd22e75b2df34c3b26ad5a53afbff4fa552672d0185d8a291736c48ac2fa76dab36a6621e689b5584a2d7bd0334055994bb21077765aa7cb
DIST iana-time-zone-haiku-0.1.1.crate 7200 BLAKE2B 9e748694423cadd6edebc1daef2aa4126904f5597202874d68066a15580cade77f48f1e6f2a77e17c7de0fae5204ef1262ad5b6f30bd95f4faec77748aa2ae0a SHA512 daa7570aaf5a07c990b07fdc2153b63d947598ed35aa9c35c4773772a6c67997143b120a18ff4c7c13474d296e81a92975ebf5b9aa9d204c1820e9629cb2e369
DIST idna-0.3.0.crate 271128 BLAKE2B cf8a2c43760f03e94953c6692423a12f28fe763aabea8785b93cd247b3aedd2aeef2cd99978a027186290016ed924db39d19fe7d397da1ab570be9646bbb630a SHA512 9b7cee27811ee52ed9bb39fe82f724742eef2e5370642b6c756bd134c8cbc20bb6faa9f296053672dba8a66f7356a08b2ca99f176407b173e2d566d85d066441
DIST indexmap-1.9.1.crate 54114 BLAKE2B 71e4968c85d5b3fac550590658f9fed72c754a9443221fc804efb97bd39b5fca7f894ee67f8d2c330bf212eb8a6b5c85879cd813ed56e3fc43a54f0bb689af5a SHA512 7eac99056123332ad38ef32eb65235c810e8b4d051d9b0ddd5582348c9cd3b162d36defe8e46a532e2066562f224e37fae94b52b4649ee9cfac7673b76a2513e
DIST instant-0.1.12.crate 6128 BLAKE2B 728923f757c1ee4e4a7afb90e460eed81392068961240a538e5c6468e15a0b6491f590fb5f6cc46e6d78901ca232351f65abb9f2f230d8f4983c5e58c4011902 SHA512 fae494c00111c51c840f9dd6a10febe403e27ebb933dd16633a213e9c20f2bc11adeb431c71f8a6713bf88f270a010941e15d83df294e658791934f83a5d2407
DIST io-lifetimes-1.0.1.crate 35926 BLAKE2B 7fa79f3de3f41850cf2cb7d56e2bf563ea4293d50ad384ca962ebd375899491b3fb35631e534ec54ac7b16e1ad69fec193204a4093f85d8d130226f96ac40a55 SHA512 be3db1785800ddf72db757ce977c5b0196ebfabe8c604f6a979d8f9d52669b56bcbbee89bec125e7cab28352f569fd700fc9a4ed22df8bd6ff505b5fb905e0eb
DIST ipnet-2.5.1.crate 26025 BLAKE2B 4085c73f8fc7c4bdd45ae144ff2a77fe35856da8ae3a4ea0632b5f55911663dfaf6b4162c35266c1c0503d88da6d3e5b07a713336779a73d4d995b63fda1ad8c SHA512 6b27cdee3b00ba743c6d96685e9446c6fea9ee11955f66f3115bc6fe4ac9736c3e2460cc1a1a966804f5650f6d93d4e88b14124889813330e4fcbd816bba5efc
DIST iptables-0.5.0.crate 6918 BLAKE2B 4eda38e997b7ed243d100cf65270b89aac0534667ba610c657617bc9c69b5f6b318cb12a5c1a3d7bf9c1504ac73a54b5fca7d22abd4d238f197e2bc5d98979fc SHA512 3a75330d19072ee7948b518115a464432363d53caae2db5ac388b89307530742b5084fadd7b3ce1d7879d8792a8b6c54d0f7bef2f713e8a3366d3ecac43262eb
DIST is-terminal-0.4.0.crate 6722 BLAKE2B e28b6c37fff04f3795672416d8340cc2d2cd43c4224c65882d3fc9fca9c37e5256dd8b23a76faaa794af758764b0f8ead5ddacad1cb03992f22db912d5dee473 SHA512 212fe6de078cb8060569026d7221f6a08e21c50d7df66ec32b8a9c0ee9dca6eb5c262e44c533573e9e35f24237a9adb535c960dd47cfe828683ce040d7825a64
DIST itoa-1.0.4.crate 10601 BLAKE2B 95545252eaabc3114323a44c8b8ea12a91568d9fc8d26ccb3bdd798ac0e04d9a6a9307927c17558f1284fa5491464cfceba2f0b880d00673449b94c0fb783150 SHA512 a70bb6fbdbcab27fbb5a84041bcbad8e0c8fda58d55ca7ac757f7be5cd373101be40df99e9acd6ae49e637e40de037c6bc59560f96c9adeccb2b2e0bf6531e42
DIST js-sys-0.3.60.crate 79257 BLAKE2B 714facdab00d567d074de4a25b69487400c23194d0f58ca784159483f9e02289acadce084b1514d8816cc9e0597800de82a5298b071b7df19a24df93541f23c1 SHA512 543dfd444539fad27bafcbbf112366f53d4ccf4bc63f8bb17820d818c3e1804656697ed6268a793f383ddf6b6227f7e9b3a11fb6fbb24e10732fdbd971801665
DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
DIST libc-0.2.138.crate 609081 BLAKE2B 210aa9a7ba99d69533946fb06c2ac6ca0714b3d4c0c5a80096e188f849319dc5509b3b41ec56aff7d1ee899378be2197fe9f8dc921500b11ea6cdc8b3b15df45 SHA512 986ccf0fcd18dd124fa6d3d89c3c7cfeca1046270a6a1b5c4addcdbc7f7f36216cb74094836ce8e97a9e331b97ed893d57daf39e919d24b001c4789a022f7761
DIST link-cplusplus-1.0.7.crate 7576 BLAKE2B 9e8fc7f4b149a778c732469c6ef4663ad01aa49d6dae747b4368f827a41c62cd2f38cbd7e1efff45d8bf0ccafbff305b8ff5503f25028bef12400343b427e278 SHA512 c8fdf9ffb29cd0f8824bb4416d28f6f4fd7a024ce5056acbe63a680f975f50fc0cb408c0d0af04a37b6985bf15f78e7e7d1fc20a9c0f8b729e7ea696460d8c75
DIST linux-raw-sys-0.1.3.crate 878488 BLAKE2B eaf7d613f42d3f843f541a29641a1bc4f9152854f7a61a837ed79f121f1c962222e6c32244fc473297f09215a0e33c475c833090897b2e84af64197594112f1f SHA512 c968f7ef0289195717d245977b57aa127e8874d3e15310b38b92897f39da547211b2e7ea914b21bc3dc7cbe67daa8dbed812be868db64a00d6f270c51c5b3f26
DIST lock_api-0.4.9.crate 25685 BLAKE2B 8adf5c3cccebdf6aff6ec977f230cd2a208b0b188ef57deacbbc6019431f0ede1a760b2384ba3cb49c96b8a589dc56c0f46a6359b3e62277e7ae1a1c3f586fa3 SHA512 9215381d9bb6b80d217c73a900db43df043b3e939b5bd7a292a02e9ab911cf0eacd8f883d35bdf72b3a0e78df8f1bc3e843ca4c775294c7a7a03091dc1a74990
DIST log-0.4.17.crate 38028 BLAKE2B b46be3719fc0a53e50b1f342762e188587e9f1ceb692c72473ce2663edfb8253742d30024e68c1444780ab7fc0e2d5b0601b8ea7228dc3405a9342a57548e605 SHA512 2477d88db42b1d92c30708d88823212e236f613b3465e85eb425f83f8d16fadfaf0352f06c2999a1852102edd2f6ffb10ecb539d8a3b6c48f552a25622ccffa2
DIST memchr-2.5.0.crate 65812 BLAKE2B 57966413a1f933dcb2d2d4ccb29c247070f65a83299b2a9f5aa83f5a48a5c5f1c4c7c632fa63bd19f9508e9291e7258db2f16e2813a56fd84e0856f70f1e67ab SHA512 444a163b484c233e78c0e2e4d51f01ce2da93d7d29f516a95e4b0866b20bdfd3f34137653abed53eb70387991ee3e2b5937d8d4360a85bbcb50a93005a75defa
DIST memoffset-0.6.5.crate 7686 BLAKE2B 9a797388702389076c426052c3d54dc62802d5db8bc5c9c83990429f2ffaec4fab4c7dd3f09cd0704d1ea555e87976563bb43408ba54b5e66ce7e406d4604009 SHA512 11bdd9185b99dfee8e659e051b09ee301c7142a372a8117864745a5085c015436d2efbb1478192886f09cbc562529e209d2e3325d94938a64bc75b1d91d2bf3f
DIST memoffset-0.7.1.crate 8556 BLAKE2B 1ef270f1c8dba32e66cf47a1835f10c342024762c0e56953f16e82d575250028154054d4c42b1324c60f955a40fad3bbb1c5fced147c11c9a4ad62f6f0e948c3 SHA512 40ca3c4b1fb929bec75bfcde0135037f81a6c5aa80181bc7dd7bbcd9c0946288eea8d23fca95e296567ccb02155ed0f66c7c23644b5cb3e6d3932be9f9742157
DIST netavark-1.4.0.crate 81129 BLAKE2B 489d4c5a3af254869dbd777a19342c9e77166ab80e22f882d89a5c3d023db4fca996a1e24ebbd215db6479cb3680c05091e9d9252dd9e8852d16e1e3b8eed9d1 SHA512 1e5a609d1bcc8d7b7c7ebc2bbb3cb3c7ef54ad6dce4927b11576581de65dbfb00bc3a8cce78769554a1c517cd37a9a6dec1b4f4fbcf5d8e03f6d64ca65f43a44
DIST netlink-packet-core-0.4.2.crate 13702 BLAKE2B 3f1119ba40688111bd6d65622d0bdb1cfa0400649cb448e24bb5947151bcb7c42e683209b1f1b12753efd087c1a67b26428fc8494d07c027797b16e9bfeb02ea SHA512 b6023e4b9b703af6834406327978507eeccad4d80e9b584ffbe108bec06cc730607ce4fc65ff48912b5a350a761da8077da46c64f826563b414d0caf47286f61
DIST netlink-packet-route-0.13.0.crate 103036 BLAKE2B a24beb72e9004ce6925ada2f2287d65104d78806dec4c8e904d996e4d025db27006a8c213798cb30fb4232147816233dfa6d57280fbb886a077686268ed7a2d1 SHA512 b61f0af8e24191509af9ddb43539b71fa3585694d370c8796ec532b5d379fc16bb2da7c2a0b7343ca2b9188193891261fec82c3054d406102db66f7ee946f6bb
DIST netlink-packet-utils-0.5.1.crate 6888 BLAKE2B 195d969cdc66fa6a8418a1a3c7f784a2bf5ca23576679aa0f81264ef337b1499d82f436020f67f4c856f6fcde9866f6328dc89bd5d16e8cc7ad844b2fc49ccf0 SHA512 b8eb636d92dd97606d81e56dd25f3ceca5ef63c204bfa2f4cdc9ae31a38219a675a318e30111122568e5606bfd81d4b591f7601b285206f57ce8cc2590b66498
DIST netlink-sys-0.8.3.crate 21676 BLAKE2B a9804ec0c554be6d9facf70ead3d187f19a527af66186c63db0ceb947e073d5ed36835d6c3684a5776407c043749e29c2f71b29fa91a03563f71b08b1d2bd9bf SHA512 ef4e69bb49f2d795f0a3e2fb7747f4d9ca08e1dd03a372609b4c6386e29129232c526d0aa9b843741d3d216d2d6cebcac5f17301113fe85a667c455dd5391e8d
DIST nix-0.23.1.crate 240531 BLAKE2B 8e03f4edbad39a467c1557083cfbbd6eff4b78d5ec4e0f1ba06eb043f853352f5154f115ce75556e0d672f0499a9d4c03650bc5a1f57ba1b920cd1595cc50ea9 SHA512 23431030b094ebb027200d8cdc05d0ac1730fbb86ee088795a2314f1ba19b76ed5f24373c1aba8125575bf69f8e7d4d9c08344b9cb49a4ae3d8f7987b5f4e6b6
DIST nix-0.25.1.crate 272312 BLAKE2B 5981fec66eb96dfeb4b380130c4f2927a1f904b10744690e361b480355be31ac625f52614f95a89ea19fa07cc383b0975b3985f743c64f6780800e64a2f11f14 SHA512 e80b3a4e38b26687ba39b52ebebc6415e9618ca41e037d571fcaa33638ef28d022be02e2265db0149088a927fb81935329e651e2cda5c29c92038eb07fe55538
DIST nix-0.26.1.crate 277805 BLAKE2B 7ba6efa24a5ab399184623fd019643a132a803cf72a9b8b4d0070caf839e123fb4394773e0b816c0d024494d657eae9b05b56b0b4cc6ace6d07db03a3d1c461b SHA512 4d75ccc1a8c4627dc14b4a2080aeda721d22dd6d7c78e448131f7589d0ddb58fd5649eedd80816153a978571fc843f078256a6c09ceaf34b95fd3caa3e6b73e4
DIST num-integer-0.1.45.crate 22529 BLAKE2B 4da3e801f71ba8f92c692497e200bfc8d32183c94eaad91260683b09f4697c03175fec7cff5a9ff3782d5db5d514d74f22f7a61a102c0f0d2e67a7a4b4f29222 SHA512 731bdc09c3af7f9d8b171041f2957aa60facef93b06886000d8ba60d410aabbbee358d700bf31b2588b2e077464f290f24a0b712df7bb7f12972675b6c9bd735
DIST num-traits-0.2.15.crate 49262 BLAKE2B 942ab170b2acce1cb40e6847f766bf810a79edd293d34f3a27864f464c16fe2b99fb13171ba429cc6d584248de879434beaadf1b231a4001b0e8389ed6c1be04 SHA512 5228498af0f15daeac3c9210f3e6e71cfaaeb30beea81dd37f8eb06b9592c8bf3226a47597cd8592ad4c513964a9a40f1ab2c33102ef3dfe3800d22c8d4528e8
DIST once_cell-1.16.0.crate 32120 BLAKE2B 59bfc8a44f1fec72442e3d34bf4be3a5af073f854f07b3618b2857c759dca4a0fa6ba358514ae28c25d745b01bb7b390ffe9ed6e296d163fd3dd67e49092b87a SHA512 bc199570ee43bde9245a2c4637ae738e370ce9988635c8342349ceb6fb158f376247b69f9ec4ea0e6d76b934decdc77a524299ebde96c0a2c2d29d9501b9a568
DIST ordered-float-2.10.0.crate 15589 BLAKE2B 76561b2ab32b61ae69bef039f5f4636a05533cb8002b894ea18ce776ada1b5911c3067af2318126f359a305d7a9d3844053be62af1cbd2c3c9c1f45443a1cc9c SHA512 cb883ddd723d1bedfe13d16c9546dcb84d17d4fb1c6dc6d632a0c385d80b0b881694b3364a406e5d7f073c5a7e9e80810f343dd1d6f22df6188322b3e89cf77f
DIST ordered-stream-0.1.2.crate 17055 BLAKE2B 7b65bcd38b94b4a7930548ad5daf6bc6e86d425b02af2ba7829dcbc7d56683ecc1c9fd6fea167cbe5b9c6f791abdc8976b7df9acfb040edbce264bf58802f78f SHA512 710e71a5913f0074d9bfe00b6498d0f201d2db96fd795a09b421606169dfeee33f7fdaccac48970e0441d4515aa045a67c508d1497fa1d344fb21924381fabc0
DIST os_str_bytes-6.3.1.crate 22934 BLAKE2B 2b2794218aefb43884d3c4c9c32568734e3f5587145c1d52f34f72bc60fe010f493acabd98ea20965e48197ae493e02c09b8b0b3518b5dcb32074467ce32929b SHA512 39ce351af00046c709b9d279c8d9013f8539ecb046cf1d5992c470547395905755723838b1e7f1b81a54a193e78dd6ae4b09fc799f3b463d016790fa3d8b173e
DIST parking-2.0.0.crate 9714 BLAKE2B e3ecd48e90289fe173b1419ad3f68350dd05359461c5842e52304e20fef9b5e089803e0c0a8e85b249a546f61cf8624367e6ec164ef7638850b451d325851075 SHA512 21c5723dc0281ade1c2cd6a1c2215ba70eb47a721a4a594ef1e54061bc79579ffe9c31f06e534fd847f936ed265cd65a59dfa9e38880f8bd42c6e8ac70a13f93
DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
DIST parking_lot_core-0.9.4.crate 32359 BLAKE2B 98629cee7346434103d0e9776d89d1c875c023c3fe91d47beae2f3029fe8bdcbe7dedadd262012ad9d1a1e624ffbebe6d3a9165623e40077ab9d0fa4b768cea7 SHA512 6dae00356b759ad1dd08c1edbcc3ffcc86ad412af98a5e4cdf4fc622d0feb79bdb3900c4f72e76cce803c667a6d8581b44264980816ebdc85d59ddaa881a2990
DIST paste-1.0.9.crate 17752 BLAKE2B 5480193f6e99b13a887413c5b3522a0e9c670ba9685a86bee1c0b0353e1e2b9505de914b30db18106346b65d0c1e3ca0b7a3d88561a174e9d5a4cb1145f81997 SHA512 7e35cd5ac36b2414b67aa0cbbd6ba42dfd6f0a652f258d0a76134a3f185f49f0fb9a75e40cb03c262adc834ac53561b08eef3f487e62215726d662ac181f8a59
DIST percent-encoding-2.2.0.crate 10075 BLAKE2B 397e59acc3953868c709244b89a2e0db3304c0b574ecba761026b570a485f2cb5b0b2a0159586d1f342ec395ef02ace536da3bc1c72093e1cf93f8b37b26b0ec SHA512 890a5256d2b4290e12e04a02c3529f3a017faa2b6016a4dd0f08b36509f0b1107eacfcb4702024d6a21ff8852a11f263c1adc096b16ef8d12c45a734c087fe68
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 polling-2.4.0.crate 21678 BLAKE2B 55d3f39649c3ea370fe6f96a7a3b13b7dfcc38b6ba2bae012b5485bfdcf629c303cbd942b964d2eb575d7a90eacaaaa74c6ea74c07dd0df86edb623140d64843 SHA512 876f9fc145e444df490fd21ce49b3ad175253c845771de32e446809cbcf45e8e44ee735eb26812e0402348263aef1b770c769bcbe7bf1968955de1a837da087e
DIST ppv-lite86-0.2.17.crate 22242 BLAKE2B 48c4a31a3b555fa37072c4de083580bb769747c7668748541af472778b5b58c3e7ab2b5e178760f542f973774f09910bdd4058ae5fb9d6b10c103eb76cfd0d3d SHA512 539d916e7e5869d832045c1aa88aec519bd000227f9b01d4dd0bfc9ffb640d5f5eb21b05eba718174773c97192a655ad3cb31b53ceb914dd19179a6699b3583a
DIST proc-macro-crate-1.2.1.crate 9161 BLAKE2B 4c498132d80ee3de239991e2c631ba219accccf093460b2e3f22ab364207336f575692ceecd92be9735713b0c999578f13e9a3a6bcdb26024914450f9bc3711c SHA512 94e39efafb9afd36996b4b03f23398c2b01e3da3f029d868e7cc9c114dee4263628460037f194b3e31580c931ee7842882633fec3f39d344c71f961e4deed0a7
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.47.crate 41955 BLAKE2B dbfc20b61443225130d08b05deeba56e63e76921e56359c9b0531798b18778d6ddcb56c3372fb6ccc68586a6c1dc725054f0e83f93e8623cb5ff6a7a2ed3dc83 SHA512 60c5d0dcbdee7ddab40664882d3cf5a868f7ea5b49ebab3b4419c3f325582b816625e73e0d1737bbd46bd7d765ece6c81c2ff4be894555d4b255f5cb9255e931
DIST quote-1.0.21.crate 28030 BLAKE2B 547344ba9272874f5fbb4bd27a69ef5be99823e10e1318afe71971b18f37e9c73d54168f16efb82c53a332e4874c80a82ea951fb2c85fad50cdfe783622b79fc SHA512 0728eb4df7e1f7c4d32ab08c901c2c969db8eb46b03bcec3e4956a4f6b360939d32abc6b6ebd7a31058e8e9b69c3d995a24cb484f93656f05b4ee963be1c74fc
DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79
DIST redox_syscall-0.2.16.crate 24012 BLAKE2B 9497a52044458b1435ea16e86ee072e379b6b11ee31602ea72d6b6072a4a99426f409c2e58108a4e9c36dc193fa49c83951e71f4fd4e158eafff18c594dc01ad SHA512 63b5d876baaf99f5cf737679bc6ac7a9e3d8a41aa93f5c59416ce7e3841e2513bff678773553cfe62fb452707f82acc384ea63aec932a31bf94679cd1caddd27
DIST redox_users-0.4.3.crate 15353 BLAKE2B 5e3b4e902566620cee8856c092cac193366ddcd2f5aef787b1d485353a0da11486ae1359dc60f3c87a198cb68f93ef99ac7551cc2315412b93b10ffb10540633 SHA512 0d3366e23cf93e1b0e025a29025eaebfcd1145bd158e2663b94fd952dc2d8a25566819e3a03c4136ca16a6408d37396e2ead0814c3f0c2bb10334dfd0b838fda
DIST regex-1.7.0.crate 239421 BLAKE2B 6e9434bb9835bd8e15c81e817aa64e8443c4188219caf46579078c6b7cbd98ee588af0f526e0fd5a01814762dfaa113ca3d15f7cfa14e969d5acda3a631e9560 SHA512 974c15a593d86c33e0bb34f7a67957fe96dec07b3752f2b6b968d657845f5d2342a5ee9ec1359109c43e4f46c9b2b2b678d59f7b752455a0ab1435c1fa56ca3c
DIST regex-syntax-0.6.28.crate 299288 BLAKE2B 8554370e269e888e603c403089aa6eb4a087ae65fec016a428e424289990a07826e37a2e51cd353c7d530d5b3421e2db6a8f9d50e62379867bb5b6cbc57f2436 SHA512 ba5fb1622a330b67a4eb820551c7f20dbfdc6b38eb697b9bfddea4cf0060b473472045e93aaf6cb9727ae609e06ed285e1e42f06f34ac730ac39fb90425bbe85
DIST remove_dir_all-0.5.3.crate 9184 BLAKE2B ab7ef94e0230ddc9b363f038254a180881bbc20eb04a254f97e6f71ed491c99ba1c88f5e85632d450243882a4a0df63f3b8b183bc1fbca9caf30ec23d577b1d7 SHA512 50417d6d8a33912193a1ed37eb72b47431b12ae65d2780cdb7080c3d141e63819da13751c3fb737685cea322f70b36d413389c3dc01aa12b4dce615aefed0e2c
DIST rustix-0.36.3.crate 287028 BLAKE2B 19c665f4742125f9638589aad532dd691f9cb33d53dc90d96357f05e887a194993ffcdf0040fcb3d27247c91a6bfd3a2528479519e74e077e31fde12e76385d9 SHA512 6e842d4701ef8a3e04fe5d951818621818899af8b975427317c4a11c5d333679dc3a3a12b9541addaaca4a96ed81190e01daa6b89300590c707f46041044c646
DIST ryu-1.0.11.crate 47007 BLAKE2B d03e8df69c3b21c1b2e4ffa91ece794f141e9f9bce4e9ed1ebf394b1cb0f796147b86189885f0734df8f431b2d166d8f6ed6a261be398d6d088fd56046a85c2e SHA512 dd2642aab2d3017c31432436226d5350b894c8b88a09395eb7de6350964b3cc48451a829ce78b04a9e4e0480076fe1bddd0604f4e57700faa2d60cac6e361408
DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
DIST scratch-1.0.2.crate 8152 BLAKE2B d38df70a8067ab6a411798b64e4e9679b554aa66886c824e410d50ed805555716e96c54872186617f2963526119ba81c20ce237d4a0b1ce754d7d28696c9b742 SHA512 c3863dff0c67184605b356d6cc57db2bdf26cad9e0357ce6cbf7d3f23d913fa8917966a8c93b3084a3c9c900e357c6ca4bc2bc5ae5db3bb6feb5ee1ea5c61521
DIST serde-1.0.149.crate 76702 BLAKE2B 7ae815ef79d4c0cdc91fbb12aeaef291b16f6e6e4990fa22b13c8edf2fee426adc235756850df98e8b412cfe48bb32d0f908241717b33070e6bfc6712ddfb7c4 SHA512 dc4ada7a0becfd7c5a1e8e7852454bea5074644a77e00886d87f9443aac1aa42b4662cd5705644cbcf7f6068e8eff6f3c5a5db076a022081fe558914a271bf13
DIST serde-value-0.7.0.crate 10249 BLAKE2B d2d3d687cf490eb0be1910bf82c09334ffe32efc485297ee228363e4dbb536b72e2c37f3d37a5f8fe61af7480fa8975c0a654f761c55e56348082e4605f2288b SHA512 6ca9a73420ca9fb5415730bac4daa30087b1722ed7966ae07f403497b8cab95e1e1da664c0581b9cd170494242d4e01be75e1d5f9b6ce19c538e7323da46bf76
DIST serde_derive-1.0.149.crate 55561 BLAKE2B e1bc0b105444b6f01ce775f0d28cfcfa45d197eb52a1857c8bdb924accc2acb0436aeec6a6791321775fce309863c952f841975e7ac86afc6438dbd4ace80c17 SHA512 d3b4f2b851d0ae87ffa99c1e11fbd49d2cc8ed5d88b89ba4854b9a2fff55009d85d0eb1357482a133bc34d11f5d39935e3d4fb2d8e61f49627e316733cce922f
DIST serde_json-1.0.89.crate 144638 BLAKE2B e296fd2fd3054b81349f246d207de4f7f8072e480a34f1c39afc2d46cdb6b861d1514a8bb64f2f68920e8db43b642814f7f4e989dab95cee62485ca2f8db2e8d SHA512 4bafa5693977e129f5787f2ff10f914e2a7740bf7e631bcdf51b27d0d9e5517873184b56649914371e1881107e7ed0a8fedf487617db334d4a7a4bf95c6c16a3
DIST serde_repr-0.1.9.crate 9695 BLAKE2B ae28d645e12998ce971bface40e7bac688d0f6347149e7be7e7ea40e46b1bee5b6f28b592f981138ac1ddef02c6c62856b98f9aa2f126848307b57e5a2ae8977 SHA512 987d197c4e8326853281f4f8e3f1831c4591d0687429fc08191a1d39edf88261668047100156fe08b2beddc3b01fdcaba5a2a4e45eddffd19fe5cf3e6052f2bc
DIST sha1-0.10.5.crate 12146 BLAKE2B 476a0c365ab639a0ce427856787595865a60339fd6b81a45f879ff9b9112021d2c3a62e0a817b4555951131a7fe257d0c30988631ddddc3d217274c46c79ebe6 SHA512 1046b91a9ea64b90098ee6e16c63f0620dc7c2dc847d200972a3da3c8d1ac61fa9030682099a411cdd24717b64d488e0b1be1cbe8f7bfee26b8c15cf4f8e5e9b
DIST sha2-0.10.6.crate 20558 BLAKE2B ceae6f1e28606371f93f5e4fd617b2cb057ed9aa4aa2d81bf4c6af4ca47d639a51f50d0fe4fa77667022c770056d6d711beb4835b2341ae0a8d667f11a4a51a3 SHA512 38dea4c300ea8dee22587ab0af6d66dbde824e1cb071e02e7790bf978efff6bdb6d4076d61c5acb38e86e69261a65811a7bd0182299d53ef053202ee54d2b05c
DIST slab-0.4.7.crate 16647 BLAKE2B f567cc822e7b84f64a0b0372c22a0463d260871455a33df025808a0476dcbbd4e051a117d8896d96d6d3d0655b7c296cd691ca22edc54486440f4e2e0f5d1e1b SHA512 659a9ca3323fc2cd236f6cb9eb6feeae8a1f5fa046fa239a34cd7a5ab8a7eadb9e5977e8d5cc41e9138900dd7c75ebc0601480771c5fdd2e084ee76619b82521
DIST smallvec-1.10.0.crate 31564 BLAKE2B e3e46a0781d3a7892a739b001592d462d0704f010363984c439e3fe4f75aecb9720648aa1e9bcc56bb3be848dd40cee578212439f78f07a807c9441c3c3e0147 SHA512 a09110184582dcc01d7a0d3fa8f74c17bf726935126d3654667b8e9c4bc43ad16ccfd8fa94feae7d9b31913aa7ee030fe5936e4b44a36302b6ce5fe37372a7ae
DIST socket2-0.4.7.crate 44619 BLAKE2B 9bf2560812db2c91498d12274e02d17c279efe5817d882faabc465de71b1cb8045f6eab3c8e6031f6fd18e0e77913f42daab07f01e8d83bfa5ea44cc6966466f SHA512 44487f2de30cd327cad1af31ad36aaaa0bf10c33b5c23b024ada8d7e41d064fb2adbc9edb14aa8aa1eba679d8530c373c7187fc68d9709ae736a5c1a2cf37088
DIST static_assertions-1.1.0.crate 18480 BLAKE2B 358dd5ac413d06f62da0388e2016c5fcb8ec68fd7dceb0dbbcb97665c032b7509b7e083c20701648b6a9174485f117c02682ae4bde7ef037e80a85cdf6a0c86e SHA512 46d0e35f77941dee6f60f574c130472248063dc38494c1c4f84f7c048244cc2a58a86fe17c0990e3f0f01406b75ed385a13d00058612b27cf0e867c8d31c92ee
DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
DIST syn-1.0.104.crate 236683 BLAKE2B 865904923ecac469f1d92bab04ea9ee384be0592c7a303d9d0f2f4bc755744bd883372c215a8f1add8bc2728d7c2c27489ab292fc8a89bdce918fc4a32deae44 SHA512 8feabd8e6b1b5eb15077d7c92f0b3269e848d33b1f233b3df343b6d445ed332fb23e0222911a13edfd82cee969d25c43434268cd7a20ce1c0a608a1bbe327b29
DIST sysctl-0.5.2.crate 18036 BLAKE2B d52521fa9d7e224abff7f437f362db8af1fa11c5c3e85aa2e370dd3514588249c5c204c58b0ad94a12781d3a41581ae887427c927e034476314ff28b76e5d9cc SHA512 0c42a7a4e29109b120b0f24da2d54779e640d2b38b1e1d203a6d3c92d0b4453c13c4e2db5c7c4d31e0fa2b81f05e1849f4899dd2993ab1ddf3be7c13c337a966
DIST tempfile-3.3.0.crate 27578 BLAKE2B e98c5ed4c59b6ff411e89ad4eb529bbe15264d6744edca8675c89bfb4397fbbb8da60bbc582da24bf9953afd9bb17cdb22654d933468697e9fa9e9903e6a7c77 SHA512 ba6faafb2dd56d694efe424752099a2efb50316afc0a4db9fdb7620ae3f1a31dfbb2a7b41724878cb977fa11f7568a406bd3b6a4f7cfc0b88b86b2cc616b953e
DIST termcolor-1.1.3.crate 17242 BLAKE2B 5aef69c0004081bd3cc4d531d13d63627cc02313868c0faab62358d13abfa7b4ba82f142c2801d25a6ae46ecbc8b7bdbeaa21c9105ea3b8950ab6a38cdb88513 SHA512 5838fcbfd70f300cb4b62aab50565db52074c56b152ccc8ac1173e4676c0d5a636271bf5a645a77da6e1d4edbf0091af2cd4dd6d73b85c3d198c760898c06f3a
DIST textwrap-0.16.0.crate 53722 BLAKE2B 44140aa2dfd5076005749449a56e920418e71e34cb92f1d697eb3f3e7f6fe87b0a3861c8a4050a4a62e03187b6cadc4495e4200bee52ee183541431c73e47209 SHA512 97ae8acece5663e1a6b08b827179e96d5ad0ee67d635888cc3d83454b52cf48fce97eb0eba374ba4747834099c74f43d66d9fec868e84be45369a42c1aaec2c3
DIST thiserror-1.0.37.crate 18752 BLAKE2B b8d792715cfdffccba72af132e414a6ef28f8e4dfc0608bea49bda1bde5b6acb13da24feaabf4467b8aeace9b6d90a97e2202f7d24bfb753cc4019c2243bda25 SHA512 07f0cf9da1bf1029d70c1b6f0c54bc41ed759214683f35cf6b321ec2d69173e3da0abf80a692115a1e4630400b1fbf462878053853fdc6026edb40f7e13be72e
DIST thiserror-impl-1.0.37.crate 15428 BLAKE2B d91e9f058e1a2b722f604d9a399c0f291c5309299c4bc103427f8927ba41c9937c7e7cd4c0f394dfb9d96799be8a3d5b33f8e869045f58228a43354dead5117b SHA512 37d90875118fe45b51afa89dd0acfbe4d9852b899ad391b419b5181a92bda115cf5569ffef57caf6020964d5d847c2b1f191c99e2c0caf7d4166f531bd19f952
DIST tinyvec-1.6.0.crate 45991 BLAKE2B e9699d4d80a78978f0ebfd049f5b33d7f23d401cf4f4439ccb168e8c0e322473ad0ea7e2ff0ff69e9aac3e5c4c9ae5a7102185533bfbf96dbe77b3526e700bc9 SHA512 e5acaf353c58c60ae5556130a934f1048abb79cf6668ae467d308bac44b689d8a9997227ea879f4b5fe50f29cde8761801b088d7149bcd063b973056c381921c
DIST tinyvec_macros-0.1.0.crate 1817 BLAKE2B a3d1966bf57c11afcd026269135a6189f149f905bb70b47537c0a7bcaef0bfc6c89bdcbdb0f6cb8e5255632855134631c683fc90606a254ec8ba818fd5ef0794 SHA512 d6afc83a3c70cde916a6ff599e2772588e4bbfa7a5b1c7e5c8aa0f4a8a5c9426182497a644e4a88194ece986d38fa64b6c8eda9eb1630441c8e65a8741a45873
DIST toml-0.5.9.crate 55667 BLAKE2B f2bbcac136e0182cad9b51f07943610c8700b68afd08fdbb822b47bb79d215e8132376da8ac61fd550e86c353a83b007297b6ac92ef5d503e1b90e746c40c649 SHA512 7151bcafbe2bdb1d2bb91562daebd357c884819af047843f1b4a56bc3812d4153eaf70683d0f9bff51bd1048700920322d64d41da13ebb4cbf34f0f7822d7ce7
DIST tracing-0.1.37.crate 73888 BLAKE2B 60c74379bf84d7b152f0b4d5b4d4669a1227dce0f3b5c10210338193853ca332de7eed3cc3b6160ee3719da7fdfe565665a887f2f82fb1e1c716c421048a2e87 SHA512 2116045f51b35e90fc933cc136d045d09c0aaa33400a9056051d887fea2d2982b394830e4d4c3bcb4b831e62b9c19f6c751c2d216169f663aa18c4067aed7d75
DIST tracing-attributes-0.1.23.crate 30450 BLAKE2B fa21c4074eefbc1110268cfc79291c909503428b26560cf68cf04640a6387d04c29e22b8f86fd48cc1b8c0fd4bb67fca428c9f8009b3c99879352b9d9f68c5ea SHA512 55e92b4e0410805f8cf9eb8ee50cabcf08d1f6c6b4b38c5a51c70f59d06c82096af1f3b9b7dd4267945cf631fa8d99f78ae9b3d0760f9c7ed4d6da6e5e6ff3cb
DIST tracing-core-0.1.30.crate 60351 BLAKE2B eadd1ad68830f4fa9972d207fac3b5be6b0f6d3d2ee4299f2fcd6d03313db6850ae0bb278ae618615e0bc2cd83ffbde0928857fe8e01dd9591a9e80114e0ff88 SHA512 9a14edf6338eff6636473f4ea844dfe337e434c14f40e7b9af6d7e6cf25f745f37bbe372bc63c01043667bea2f5b248b8afa8d6aae4cac3dc5193e3383ef1c65
DIST typenum-1.15.0.crate 40741 BLAKE2B 5752d80396d0a37b0069b98ace9efe96d94ccaf41b33b8149c8b8c6a767537dbffe64251bbf61f3812465ecbc8cb45544f177dc97ac9735d84454282e4d1ed66 SHA512 a3c1ceac85e1aed98d0829449c35f4f36db860218b955b4e5f8f01da1d27ee6213f3c60e2b25c3745dcd67369049da5de737a9473fa9402db99cf7cddeb42288
DIST uds_windows-1.0.2.crate 16206 BLAKE2B e895e97b5610c1402023b2b86daa5b248c4528f06fcbdb900cc996ff1f62a8234cbd6d8cfae84008345399f73363f9cdf62b1def60b782e06514b9d215236a30 SHA512 a58806bb9673f583d58ba2088c0dcb03808752bea6c0a502b717a541cb54c1b4cf70af8c8f3ae48437069c9017012c6e880a1e7c3c754835193e581849f28587
DIST unicode-bidi-0.3.8.crate 36575 BLAKE2B c0442dd47a8ee81f575b28e34c9781ccf507b53ea96d1d4df2e8117231e8e67579031e4244a2dacfd6f4c24ec01fbbd4da7c9ab72ad50af51ef56d7d813b6444 SHA512 810b5be48159ecbca542c715496f279518285c3b09f7c39451986f94e6c259fab1057512a2148bf99ba9abf76e861a24456b547cc2273f0b45ed5d3ce9dfe3d5
DIST unicode-ident-1.0.5.crate 35455 BLAKE2B 7e14ce97ac53a88ccec015dea690918a673dc5b49e44de7fdcb5421871da35c4f514c6db9a363d6f4bfcf2e9a61a50a593d345d0b6f388ea882b17a00cd0335d SHA512 d355370daac356d900cd4c0a792d6c0eff114524c4bffce4d7e74469fe2117883ee00bf0e27d950b72e88739473f2045d5f83440a0aedfede97b4d9163b64a6c
DIST unicode-normalization-0.1.22.crate 122604 BLAKE2B 3f3430b279cc0ce1595392c869442ce676ab097154c688779ebcf726e10c497df59be2cd7bb2f84f99499a9df0654760a10ac92224c17d74775aeebe291241e1 SHA512 a5810d5e9cd93dbb80e013997aa9d38e60834619483a6623eb2859ec5d59a5aec3fc4db123dc7f4e2fe9f2b8799cf6af48bdff22d69a00a23707240e8bf3bb3c
DIST unicode-width-0.1.10.crate 18968 BLAKE2B 6174e307fd3ee290d0a5d1d31233baaa5315cdb73f19b8580718e9f9eb04cfd3aeaeb474af1e50c4b9fecc6fc777937dedc527c9dc9ed14ccf42af099e591f31 SHA512 9836a8d489d18ea1ecfe1957ed6d5da7dce825e138cd1848aef093fa8d2eb83fcf01eabb1a2446df4f5ede4e67316e9e81b5d58b59d4e8c5d67870e8fa5dca3b
DIST url-2.3.1.crate 72777 BLAKE2B 6ca0e537baf373b92269b2531945c1cdf360f1566cae4734dfb96f05a605e5c6c82e3192a1b9dde0ff22b92b87aba2d56e32a1bf17882b4de15efd7cdf52bc76 SHA512 8224010bef067574481e5d84100d944782d52b49db7c396ae2b4dfc145ed58769c15440d97a0fed4d2f9857592a8601417cc5b1bdea959c47a3e7a1f7182ed0d
DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
DIST waker-fn-1.1.0.crate 7114 BLAKE2B e510eec0490f0caca3930000cecccde209ad387d1657c380f95122c68ccc15fcbe0684315d0aea28f094f2c65f7b7b08ae62f6ec95e0d67fc47e6af0ba4589e9 SHA512 80f612597534d9f8bdcd5e6bdff740805efe28242822bc6db360e114a23cb47ff88c74b8ab855bc764f0a73545e85a69d76bce1441e5899a36e41ca270695dc5
DIST walkdir-2.3.2.crate 23516 BLAKE2B 473f2b51aafd6ac17e5c3da8d545d179b31486b3a65ab39fbd8bd7fbb2ebcc24bebf01781200a26a68f0b1cb464f5763a919aead3b03eba5a7e1be6efec5500b SHA512 6c44071354faf37720ec4117ded34c8d530489542ee107ac26a7a56ef4a882b9003e22e84f1d61f6078643521343e35aa1f7b57c838779e78e5937a667bf82da
DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
DIST wasm-bindgen-0.2.83.crate 169618 BLAKE2B f6158596c80a0385bee0a05bd9cf0b3beee83a7958efb40244956b4fec2c83baa1a1b4605eb604f313db3508a7911c78f645acbb19f6fc93eef27e9f7f0ac109 SHA512 ec93d1334417d0329e113d5f2da7f16c0f1209d71e5cbd21a2dc9278d877e70ca2327ff7863b40505504883ed51d6bf20dda98c22ef44011a47c604a7b44e82d
DIST wasm-bindgen-backend-0.2.83.crate 25620 BLAKE2B 3cbba20a2f5344c0ed2791de7b04ee294746606289ba83a9c139b53b56edf31eab8d3b3802cec309d5395e2404bbd75b7fab5d748a9961b36906fabeb0e66493 SHA512 dd1b65733e4d0a198d61a5287bb75db3e03ef738d2c2dcd3ce3e873c27d41c90cfcbb775ad40b2a546190db8d7213e5866f8e3f9913c28fe4b43a49054bfea44
DIST wasm-bindgen-macro-0.2.83.crate 12075 BLAKE2B 3b358ba7c2a3563840f54f11170cde78044a8f087659daa7c784fa252f5dd4b7f6200eba425d95b568e50fd43c04c32a509994ddaf5248120feaa67586402150 SHA512 eb83e06f998e858cf25494c1d171984269e72db798147d4d1d8aeeb25ea7a35c5986b882011e131968621742ceecff976430856b4e8b7d7fd7f1237767cf01b4
DIST wasm-bindgen-macro-support-0.2.83.crate 18530 BLAKE2B f305c9fc1f7bba5bee65a1c76fc2216c98aa306a072286e1ced048ab191f49e7e4436bf2f67d4c1fff558f59b2cef5e9b40e9e940268128ab1ebeb3c64696107 SHA512 804014c75ae5f8c1c7f0fad3f3209887fa346d74029e5f6e1830e44f7318719e65c4a643c71d87cf388f131fd370af40d536bbc15fc11c25b91cb785f56a908b
DIST wasm-bindgen-shared-0.2.83.crate 7194 BLAKE2B 4dd1cffea1edc98dcd4993bf6fdde8100fe00d1e97322ce8bc0bdefd0c659047c8c726e5da27b59fd7a6621c1e5385c18204e834c6c6fd1fb9de52f95b40e40d SHA512 2bfc1a068fa41a9ecacce7bda494fc0485c57ccb102c1d76c87a42e00ad30b944b0cb788642e8339d050a0e831ce8306844a77292ab9f79ed765b65cdb4765e7
DIST wepoll-ffi-0.1.2.crate 31309 BLAKE2B cd1b01c9fdb6482baff3ab12a9926c1a5a9b6e430e4609890a94b13480f8223de166558724b4d6926d6e9dd7f466926c783df54f9beabc75d646edf4f3429a73 SHA512 f0f5c379d08642aee9c6ef36175b9d858ee1cb7d444b832d6e7ad194167a4db2de5aaee3b2356ca42ef9f48a9872928c61b456305c05dd40cc53e5204686b8a7
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.0.crate 357917 BLAKE2B 58da715a46692ed786fa554338d446eaaa50c63ec1d4090cf0690a9211c0221034479e9066cad1c98234410519833826ae3163bf6724c3b06097d5b84d7b9fcf SHA512 8bd60142e8982ddb14dde4e93b9753f9ac34830c05c2a1dd4568377f9a928651bf9f026a0080e5bc7dfa62a45942376736954e3ac800855d00eef0c72929f338
DIST windows_aarch64_msvc-0.42.0.crate 659424 BLAKE2B a8c9a288767756f2086bd0706774cdcce5c8639431ad76ed122d4b6d13c936ca8fb1a463d34835b3a2728f4444e2f4b91ee772f00c54f348094da69c05ce6b93 SHA512 20c0840adec84dde03b143e5b82bb0003fee675310487f0071a81ed7f40ee647c4018ccb9ebdbc4aeada717ec8600a30dfb15510c6b336f07becdb7167668fd0
DIST windows_i686_gnu-0.42.0.crate 728570 BLAKE2B b72079610b5c4fc798a79fa757b19f8c8baceaf7f4ce824193a65fadaac988ebdff1719a74d676b7dd017e11ceb029402bbac4e55c35206172e15a9bef422f78 SHA512 a24dd1ba5eb7d5231853bebadfde0575ae9071a565868d2f3d1bc6ec0a87380c569a621f0cba2552af7a1e46ac62f09f87cfbce3f674be06be1a7c1d3f421474
DIST windows_i686_msvc-0.42.0.crate 717477 BLAKE2B a37e068f45590f0c31349acbdb56848106d6de0e1f8030e6bd5e1e174bd9a46737db54fbd61de99054e5e8c5263eaef0508c440f43c39dca82baa77792ff2743 SHA512 740400e2b11c1d177f7f37f844cd2a0f84b97a5adb03a7656661deb026b593a799ace8da1f9013ba9f74446fc43260d01dff7d4be607129ec7d602f341b2b4d1
DIST windows_x86_64_gnu-0.42.0.crate 692493 BLAKE2B e00eae443cfed3004809244654268ee1bec17975166ca876dd393dcfe8a2ef0ca65d81b04c8f513f95a0fae9405ba796c085951bc2c597d252a3122f7dbf6425 SHA512 7df7ee0c345f0a2c37d7f9ec3a2824116b4d7a943bf245787509e67809a4f31ebb1862e212efb2d943d82ccef77a716437cdc61004396ca86e95e688368c6dae
DIST windows_x86_64_gnullvm-0.42.0.crate 357906 BLAKE2B 02e08e696f18105f0c131fcf5db046ec945cb21ede76d2da477589e15d062ca6f04906dac80fdd2ef9fcda9244490aad86b401d0156eb6b65ba3599098e8cfe7 SHA512 242e11b4a0d50a0ffe8d0e26e971de30ef4d29260ae6749403d39cb4278297a240c1ec4112bb38151cbb11a6f3c8a743e84cd75b6a76adfeaee8e623649c9ecf
DIST windows_x86_64_msvc-0.42.0.crate 659377 BLAKE2B f01dbfcb86dcb7301790a1a704661864378021cbb92b147fdfcee978b7011bb770441c481b439985c298816c524c6a11f21a7bd81115e65882fa000a28566bcd SHA512 94d6554ae293785d2fc9dc9d53480c98bc08ab2b78bd8684a0606e7e0ec156a454c1a653d214c21de382bc7ab5d898e45000ed73e6110f679da513ffabbf3cb9
DIST zbus-3.6.1.crate 134998 BLAKE2B 4ac4913f28015b2604d56571f683b955b4f1b0e8c375214fe62917d91d5ece13382ea505ece5ce17dd585fbd6baccf166b2dd5db8593377b453b742a1966e4ba SHA512 2388480ba750abe492396d561b0ef364e47b5cf5be280901097a2b7a2917ba09a11609cc3045956c5f42d7634347a3d4e6245937d9ef0c1ff99e978aa8fbc393
DIST zbus_macros-3.6.1.crate 27240 BLAKE2B 22cb2c8caad025c552885637719c68a70ddb290878d802ba6d1f249b3c94aae77e94882d399d48d48e59728cb9abb4fe1abec47a305acae5beaacb0cd8a4749c SHA512 11663e7ea0e3e88da207f48862859264879821607bd655a4268e9923fcf71fe71a4197de5151a431d9c08d0b132cf3b8b2abc07f5521e895b8befc5972e8a3f6
DIST zbus_names-2.4.0.crate 9858 BLAKE2B 7545e63a6356b9a5a07173f39d9fb8bd61541173515cab3136cb488cf20b752404e2d4cc65858ffd6dd0655101722f91fc1ffb916c9702873a0a868b8a5fa9e9 SHA512 b36755a6c5c0b265bc5cadb84b7765d64cb8b44f547cd1f46f4af247158832bc9804ed87506111d8be843a45362dbed4c4978a836aad42cd4ffa85f2b7a00f8d
DIST zvariant-3.9.0.crate 70577 BLAKE2B be41bfbe39a7eb81448ce3496ad07eb61c1d6bf40af494acc791d86a8a3ab4b8a1df801f8f650bf72bcc9793c7efcfd68761c34e169569f20f5212a5e47fdc12 SHA512 c5abdb6118426eaa10c6fcc2d80136b931eea29912f9c7cc6972333ab238f4a885892853a7722bb34ef0f9ddd9b68e7500cc1e82a1d6b13fe5ab2c15877c10c4
DIST zvariant_derive-3.9.0.crate 11055 BLAKE2B c2d8c58228fa8c1880d126303c0f55d888d02b2dedd9c5e1c39ce23179ed19a4c89aea5f1dccd763d427fa644f0ef5c800ee00b600b9b9cf5faf1e0593d863e1 SHA512 d50bf6ab2511a0ab9bf0d0deebe61fe6bd1ed76c0980dd416716201eb611353aabd598198507c30d1eff9d282732ea15e04129e154c6c446e2b170e66931baeb

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zmedico@gentoo.org</email>
<name>Zac Medico</name>
</maintainer>
<longdescription lang="en">
Netavark is a rust based network stack for containers. It is
being designed to work with Podman but is also applicable for
other OCI container management applications.
</longdescription>
<upstream>
<remote-id type="github">containers/netavark</remote-id>
</upstream>
</pkgmetadata>

@ -0,0 +1,213 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CRATES="
aho-corasick-0.7.19
android_system_properties-0.1.5
anyhow-1.0.66
async-broadcast-0.4.1
async-channel-1.7.1
async-executor-1.5.0
async-io-1.10.0
async-lock-2.6.0
async-recursion-1.0.0
async-task-4.3.0
async-trait-0.1.58
atty-0.2.14
autocfg-1.1.0
bitflags-1.3.2
block-buffer-0.10.3
bumpalo-3.11.1
byteorder-1.4.3
bytes-1.2.1
cache-padded-1.2.0
cc-1.0.76
cfg-if-1.0.0
chrono-0.4.22
clap-3.2.23
clap_derive-3.2.18
clap_lex-0.2.4
codespan-reporting-0.11.1
concurrent-queue-1.2.4
concurrent-queue-2.0.0
core-foundation-sys-0.8.3
cpufeatures-0.2.5
crossbeam-utils-0.8.13
crypto-common-0.1.6
cxx-1.0.81
cxx-build-1.0.81
cxxbridge-flags-1.0.81
cxxbridge-macro-1.0.81
derivative-2.2.0
digest-0.10.5
dirs-4.0.0
dirs-sys-0.3.7
enumflags2-0.7.5
enumflags2_derive-0.7.4
env_logger-0.10.0
errno-0.2.8
errno-dragonfly-0.1.2
event-listener-2.5.3
fastrand-1.8.0
form_urlencoded-1.1.0
fs2-0.4.3
futures-core-0.3.25
futures-io-0.3.25
futures-lite-1.12.0
futures-sink-0.3.25
futures-task-0.3.25
futures-util-0.3.25
generic-array-0.14.6
getrandom-0.2.8
hashbrown-0.12.3
heck-0.4.0
hermit-abi-0.1.19
hermit-abi-0.2.6
hex-0.4.3
humantime-2.1.0
iana-time-zone-0.1.53
iana-time-zone-haiku-0.1.1
idna-0.3.0
indexmap-1.9.1
instant-0.1.12
io-lifetimes-1.0.1
ipnet-2.5.1
iptables-0.5.0
is-terminal-0.4.0
itoa-1.0.4
js-sys-0.3.60
lazy_static-1.4.0
libc-0.2.138
link-cplusplus-1.0.7
linux-raw-sys-0.1.3
lock_api-0.4.9
log-0.4.17
memchr-2.5.0
memoffset-0.6.5
memoffset-0.7.1
netavark-1.4.0
netlink-packet-core-0.4.2
netlink-packet-route-0.13.0
netlink-packet-utils-0.5.1
netlink-sys-0.8.3
nix-0.23.1
nix-0.25.1
nix-0.26.1
num-integer-0.1.45
num-traits-0.2.15
once_cell-1.16.0
ordered-float-2.10.0
ordered-stream-0.1.2
os_str_bytes-6.3.1
parking-2.0.0
parking_lot-0.12.1
parking_lot_core-0.9.4
paste-1.0.9
percent-encoding-2.2.0
pin-project-lite-0.2.9
pin-utils-0.1.0
polling-2.4.0
ppv-lite86-0.2.17
proc-macro-crate-1.2.1
proc-macro-error-1.0.4
proc-macro-error-attr-1.0.4
proc-macro2-1.0.47
quote-1.0.21
rand-0.8.5
rand_chacha-0.3.1
rand_core-0.6.4
redox_syscall-0.2.16
redox_users-0.4.3
regex-1.7.0
regex-syntax-0.6.28
remove_dir_all-0.5.3
rustix-0.36.3
ryu-1.0.11
same-file-1.0.6
scopeguard-1.1.0
scratch-1.0.2
serde-1.0.149
serde-value-0.7.0
serde_derive-1.0.149
serde_json-1.0.89
serde_repr-0.1.9
sha1-0.10.5
sha2-0.10.6
slab-0.4.7
smallvec-1.10.0
socket2-0.4.7
static_assertions-1.1.0
strsim-0.10.0
syn-1.0.104
sysctl-0.5.2
tempfile-3.3.0
termcolor-1.1.3
textwrap-0.16.0
thiserror-1.0.37
thiserror-impl-1.0.37
tinyvec-1.6.0
tinyvec_macros-0.1.0
toml-0.5.9
tracing-0.1.37
tracing-attributes-0.1.23
tracing-core-0.1.30
typenum-1.15.0
uds_windows-1.0.2
unicode-bidi-0.3.8
unicode-ident-1.0.5
unicode-normalization-0.1.22
unicode-width-0.1.10
url-2.3.1
version_check-0.9.4
waker-fn-1.1.0
walkdir-2.3.2
wasi-0.11.0+wasi-snapshot-preview1
wasm-bindgen-0.2.83
wasm-bindgen-backend-0.2.83
wasm-bindgen-macro-0.2.83
wasm-bindgen-macro-support-0.2.83
wasm-bindgen-shared-0.2.83
wepoll-ffi-0.1.2
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.0
windows_aarch64_msvc-0.42.0
windows_i686_gnu-0.42.0
windows_i686_msvc-0.42.0
windows_x86_64_gnu-0.42.0
windows_x86_64_gnullvm-0.42.0
windows_x86_64_msvc-0.42.0
zbus-3.6.1
zbus_macros-3.6.1
zbus_names-2.4.0
zvariant-3.9.0
zvariant_derive-3.9.0
"
inherit cargo
DESCRIPTION="A container network stack"
HOMEPAGE="https://github.com/containers/netavark"
SRC_URI="$(cargo_crate_uris)"
LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD BSD-2 Boost-1.0 MIT Unicode-DFS-2016 Unlicense ZLIB"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
BDEPEND="dev-go/go-md2man"
QA_FLAGS_IGNORED="usr/bin/${PN}"
src_compile() {
go-md2man -in docs/netavark.1.md -out docs/netavark.1 || die
cargo_src_compile
}
src_install() {
cargo_src_install
doman docs/netavark.1
}

Binary file not shown.

@ -19,10 +19,13 @@ fi
LICENSE="Apache-2.0 BSD BSD-2 LGPL-3 MIT MPL-2.0"
SLOT="0"
IUSE="fuse"
RDEPEND="
app-crypt/gnupg
sys-fs/fuse:0=
fuse? (
~app-crypt/kbfs-${PV}
)
"
src_unpack() {

@ -13,6 +13,9 @@
The official Keybase secure messaging, file-sharing, and key directory
client for Linux.
</longdescription>
<use>
<flag name="fuse">Enable app-crypt/kbfs support</flag>
</use>
<upstream>
<remote-id type="github">keybase/client</remote-id>
</upstream>

@ -26,7 +26,7 @@ IUSE="ssl"
RDEPEND="
app-crypt/ccid
dev-python/click[${PYTHON_USEDEP}]
<dev-python/cryptography-39[${PYTHON_USEDEP}]
dev-python/cryptography[${PYTHON_USEDEP}]
dev-python/fido2:0/0.9[${PYTHON_USEDEP}]
dev-python/pyscard[${PYTHON_USEDEP}]
ssl? ( >=dev-python/pyopenssl-0.15.1[${PYTHON_USEDEP}] )"

Binary file not shown.

@ -1,3 +1,4 @@
DIST eclass-manpages-20220824.tar.xz 407700 BLAKE2B 7384e2d9100cdb8dca50bc5156b7f55f5ae52279d6c6563b0da3f6f11d49fcd24bfc7ae452587768a33489ddf83171f4f65433da3450e08ffb0125d2b3404d3c SHA512 ddac3f75ef6d228fd59ea323c94f6e7d725e41ecb7a7b49946e15ebc1c0fb97ebb9bbd464aef991944f1e5ef42198f0cb85a7ad6c5a96eb0524b191485c6421e
DIST eclass-manpages-20220925.tar.xz 410196 BLAKE2B a2fa7b4d6367dc236af8d3cdd3277c144a27bda9339be1041d426d12ccdd7427b1e18f30695ef93e48617efbc51754ef995881f963f24beb30d2f5bbb935e6bb SHA512 11e7886077a5d9259afaa12e3dcaa2c9b6588f5052fd92be82569a7d56971d68614798dfa548e8fe1f8e5313fc074ec7fae20cd524681668f82d20b11620b37f
DIST eclass-manpages-20230110.tar.xz 408684 BLAKE2B ebd11e8d78731ecd043b8cea74818fbded074c07a9050fec59cfae7204187310fad37945b59c2381cb182bd55026165fc92c4c7a29b67e396b00bac6850f0f94 SHA512 30e0e1e97ca6b76a002c112ddc4ae7647decd5ce966b7f54d4e02adaf6bcbcd54f95ec41eb7ef16677bbf01d762eb7cdc974f07d04dbdf2039c372aa3228f4cb
DIST eclass-manpages-20230222.tar.xz 410124 BLAKE2B 7da1a4b539c227c386fd27e3fb6de4d0dc79c4b648491547df0dceb50ba93f27ef1105234ad5c0f6c6a409c8837e8a629029215782471651606375332223cc2e SHA512 4def4388095c82a187f5dfc6ffb0eff59cec922c606b0202e7995ff81209fa9fe48e22fb05d4b07be4cd7e10f78ef4f87d01362099333ad49619e45c4b8b9411

@ -0,0 +1,24 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Instructions to make a dist tarball:
# git clone https://github.com/mgorny/eclass-to-manpage.git
# cd eclass-to-manpage
# make dist ECLASSDIR=~/g/eclass/
DESCRIPTION="Collection of Gentoo eclass manpages"
HOMEPAGE="https://github.com/mgorny/eclass-to-manpage"
SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
# Keep the keywords stable. No need to change to ~arch.
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-solaris"
BDEPEND="sys-apps/gawk"
src_install() {
emake install DESTDIR="${D}" PREFIX="${EPREFIX}/usr"
}

Binary file not shown.

@ -1 +1,2 @@
DIST load-relative-1.3.1.tar.gz 33985 BLAKE2B 5e2f4329d380d9bc001e23ea4dd096422357cf18e3685d0eeff80c319172ab3ac0afeb722a9322e0cccd8d99c809ace42bc3352a38161f1aea0a3d3d3af27241 SHA512 22d31bfeee37a14bb9820df818a6d1d3cd4d2efb98bbf41ef9e866df602bd18ac0896c625c70195b50f98703d9e0ba2797e0095f051e2937455c29d8be5599c0
DIST load-relative-1.3.2.tar.gz 33225 BLAKE2B 5b717baeef7c207d1cfef5c4ba3e13ef160a8e4fac09b5a2443afed840c383b29d0086b8b43fb3dffb31d50437838951196ccc75f5eb20b81b9b27db10314c70 SHA512 73ba6b33492348722da5d06a5b999658d4b43265bec57440216724521bc56470fccbeeb5e97a5bfcc870492a1a2ce3331fbbe520711f1c2bab29b402eca07a0d

@ -0,0 +1,19 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit elisp
DESCRIPTION="Relative loads for Emacs Lisp files"
HOMEPAGE="https://github.com/rocky/emacs-load-relative/"
SRC_URI="https://github.com/rocky/emacs-${PN}/archive/${PV}.tar.gz
-> ${P}.tar.gz"
S="${WORKDIR}"/emacs-${P}
LICENSE="GPL-3+"
KEYWORDS="~amd64 ~x86"
SLOT="0"
DOCS=( ChangeLog README.md )
SITEFILE="50${PN}-gentoo.el"

Binary file not shown.

@ -1,5 +1,6 @@
https://bugs.gentoo.org/895662
https://gitlab.com/qemu-project/qemu/-/commit/9f0246539ae84a5e21efd1cc4516fc343f08115a
https://gitlab.com/qemu-project/qemu/-/commit/6003159ce18faad4e1bc7bf9c85669019cd4950e
From 9f0246539ae84a5e21efd1cc4516fc343f08115a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
@ -64,3 +65,73 @@ Signed-off-by: Laurent Vivier <laurent@vivier.eu>
#endif
--
GitLab
From 6003159ce18faad4e1bc7bf9c85669019cd4950e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
Date: Tue, 10 Jan 2023 12:49:01 -0500
Subject: [PATCH] Revert "linux-user: fix compat with glibc >= 2.36
sys/mount.h"
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This reverts commit 3cd3df2a9584e6f753bb62a0028bd67124ab5532.
glibc has fixed (in 2.36.9000-40-g774058d729) the problem
that caused a clash when both sys/mount.h annd linux/mount.h
are included, and backported this to the 2.36 stable release
too:
https://sourceware.org/glibc/wiki/Release/2.36#Usage_of_.3Clinux.2Fmount.h.3E_and_.3Csys.2Fmount.h.3E
It is saner for QEMU to remove the workaround it applied for
glibc 2.36 and expect distros to ship the 2.36 maint release
with the fix. This avoids needing to add a further workaround
to QEMU to deal with the fact that linux/brtfs.h now also pulls
in linux/mount.h via linux/fs.h since Linux 6.1
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230110174901.2580297-3-berrange@redhat.com>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -95,25 +95,7 @@
#include <linux/soundcard.h>
#include <linux/kd.h>
#include <linux/mtio.h>
-
-#ifdef HAVE_SYS_MOUNT_FSCONFIG
-/*
- * glibc >= 2.36 linux/mount.h conflicts with sys/mount.h,
- * which in turn prevents use of linux/fs.h. So we have to
- * define the constants ourselves for now.
- */
-#define FS_IOC_GETFLAGS _IOR('f', 1, long)
-#define FS_IOC_SETFLAGS _IOW('f', 2, long)
-#define FS_IOC_GETVERSION _IOR('v', 1, long)
-#define FS_IOC_SETVERSION _IOW('v', 2, long)
-#define FS_IOC_FIEMAP _IOWR('f', 11, struct fiemap)
-#define FS_IOC32_GETFLAGS _IOR('f', 1, int)
-#define FS_IOC32_SETFLAGS _IOW('f', 2, int)
-#define FS_IOC32_GETVERSION _IOR('v', 1, int)
-#define FS_IOC32_SETVERSION _IOW('v', 2, int)
-#else
#include <linux/fs.h>
-#endif
#include <linux/fd.h>
#if defined(CONFIG_FIEMAP)
#include <linux/fiemap.h>
--- a/meson.build
+++ b/meson.build
@@ -2046,8 +2046,6 @@ config_host_data.set('HAVE_OPTRESET',
cc.has_header_symbol('getopt.h', 'optreset'))
config_host_data.set('HAVE_IPPROTO_MPTCP',
cc.has_header_symbol('netinet/in.h', 'IPPROTO_MPTCP'))
-config_host_data.set('HAVE_SYS_MOUNT_FSCONFIG',
- cc.has_header_symbol('sys/mount.h', 'FSCONFIG_SET_FLAG'))
# has_member
config_host_data.set('HAVE_SIGEV_NOTIFY_THREAD_ID',
--
GitLab

@ -0,0 +1,182 @@
https://bugs.gentoo.org/895746#c3
https://gitlab.com/qemu-project/qemu/-/issues/1471
https://gitlab.com/qemu-project/qemu/-/commit/60c7dd22e1383754d5f150bc9f7c2785c662a7b6
From 60c7dd22e1383754d5f150bc9f7c2785c662a7b6 Mon Sep 17 00:00:00 2001
From: Paolo Bonzini <pbonzini@redhat.com>
Date: Tue, 31 Jan 2023 09:48:03 +0100
Subject: [PATCH] target/i386: fix ADOX followed by ADCX
When ADCX is followed by ADOX or vice versa, the second instruction's
carry comes from EFLAGS and the condition codes use the CC_OP_ADCOX
operation. Retrieving the carry from EFLAGS is handled by this bit
of gen_ADCOX:
tcg_gen_extract_tl(carry_in, cpu_cc_src,
ctz32(cc_op == CC_OP_ADCX ? CC_C : CC_O), 1);
Unfortunately, in this case cc_op has been overwritten by the previous
"if" statement to CC_OP_ADCOX. This works by chance when the first
instruction is ADCX; however, if the first instruction is ADOX,
ADCX will incorrectly take its carry from OF instead of CF.
Fix by moving the computation of the new cc_op at the end of the function.
The included exhaustive test case fails without this patch and passes
afterwards.
Because ADCX/ADOX need not be invoked through the VEX prefix, this
regression bisects to commit 16fc5726a6e2 ("target/i386: reimplement
0x0f 0x38, add AVX", 2022-10-18). However, the mistake happened a
little earlier, when BMI instructions were rewritten using the new
decoder framework.
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1471
Reported-by: Paul Jolly <https://gitlab.com/myitcv>
Fixes: 1d0b926150e5 ("target/i386: move scalar 0F 38 and 0F 3A instruction to new decoder", 2022-10-18)
Cc: qemu-stable@nongnu.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
--- a/target/i386/tcg/emit.c.inc
+++ b/target/i386/tcg/emit.c.inc
@@ -1015,6 +1015,7 @@ VSIB_AVX(VPGATHERQ, vpgatherq)
static void gen_ADCOX(DisasContext *s, CPUX86State *env, MemOp ot, int cc_op)
{
+ int opposite_cc_op;
TCGv carry_in = NULL;
TCGv carry_out = (cc_op == CC_OP_ADCX ? cpu_cc_dst : cpu_cc_src2);
TCGv zero;
@@ -1022,14 +1023,8 @@ static void gen_ADCOX(DisasContext *s, CPUX86State *env, MemOp ot, int cc_op)
if (cc_op == s->cc_op || s->cc_op == CC_OP_ADCOX) {
/* Re-use the carry-out from a previous round. */
carry_in = carry_out;
- cc_op = s->cc_op;
- } else if (s->cc_op == CC_OP_ADCX || s->cc_op == CC_OP_ADOX) {
- /* Merge with the carry-out from the opposite instruction. */
- cc_op = CC_OP_ADCOX;
- }
-
- /* If we don't have a carry-in, get it out of EFLAGS. */
- if (!carry_in) {
+ } else {
+ /* We don't have a carry-in, get it out of EFLAGS. */
if (s->cc_op != CC_OP_ADCX && s->cc_op != CC_OP_ADOX) {
gen_compute_eflags(s);
}
@@ -1053,7 +1048,14 @@ static void gen_ADCOX(DisasContext *s, CPUX86State *env, MemOp ot, int cc_op)
tcg_gen_add2_tl(s->T0, carry_out, s->T0, carry_out, s->T1, zero);
break;
}
- set_cc_op(s, cc_op);
+
+ opposite_cc_op = cc_op == CC_OP_ADCX ? CC_OP_ADOX : CC_OP_ADCX;
+ if (s->cc_op == CC_OP_ADCOX || s->cc_op == opposite_cc_op) {
+ /* Merge with the carry-out from the opposite instruction. */
+ set_cc_op(s, CC_OP_ADCOX);
+ } else {
+ set_cc_op(s, cc_op);
+ }
}
static void gen_ADCX(DisasContext *s, CPUX86State *env, X86DecodedInsn *decode)
--- a/tests/tcg/i386/Makefile.target
+++ b/tests/tcg/i386/Makefile.target
@@ -14,7 +14,7 @@ config-cc.mak: Makefile
I386_SRCS=$(notdir $(wildcard $(I386_SRC)/*.c))
ALL_X86_TESTS=$(I386_SRCS:.c=)
SKIP_I386_TESTS=test-i386-ssse3 test-avx test-3dnow test-mmx
-X86_64_TESTS:=$(filter test-i386-bmi2 $(SKIP_I386_TESTS), $(ALL_X86_TESTS))
+X86_64_TESTS:=$(filter test-i386-adcox test-i386-bmi2 $(SKIP_I386_TESTS), $(ALL_X86_TESTS))
test-i386-sse-exceptions: CFLAGS += -msse4.1 -mfpmath=sse
run-test-i386-sse-exceptions: QEMU_OPTS += -cpu max
@@ -28,6 +28,10 @@ test-i386-bmi2: CFLAGS=-O2
run-test-i386-bmi2: QEMU_OPTS += -cpu max
run-plugin-test-i386-bmi2-%: QEMU_OPTS += -cpu max
+test-i386-adcox: CFLAGS=-O2
+run-test-i386-adcox: QEMU_OPTS += -cpu max
+run-plugin-test-i386-adcox-%: QEMU_OPTS += -cpu max
+
#
# hello-i386 is a barebones app
#
--- /dev/null
+++ b/tests/tcg/i386/test-i386-adcox.c
@@ -0,0 +1,75 @@
+/* See if various BMI2 instructions give expected results */
+#include <assert.h>
+#include <stdint.h>
+#include <stdio.h>
+
+#define CC_C 1
+#define CC_O (1 << 11)
+
+#ifdef __x86_64__
+#define REG uint64_t
+#else
+#define REG uint32_t
+#endif
+
+void test_adox_adcx(uint32_t in_c, uint32_t in_o, REG adcx_operand, REG adox_operand)
+{
+ REG flags;
+ REG out_adcx, out_adox;
+
+ asm("pushf; pop %0" : "=r"(flags));
+ flags &= ~(CC_C | CC_O);
+ flags |= (in_c ? CC_C : 0);
+ flags |= (in_o ? CC_O : 0);
+
+ out_adcx = adcx_operand;
+ out_adox = adox_operand;
+ asm("push %0; popf;"
+ "adox %3, %2;"
+ "adcx %3, %1;"
+ "pushf; pop %0"
+ : "+r" (flags), "+r" (out_adcx), "+r" (out_adox)
+ : "r" ((REG)-1), "0" (flags), "1" (out_adcx), "2" (out_adox));
+
+ assert(out_adcx == in_c + adcx_operand - 1);
+ assert(out_adox == in_o + adox_operand - 1);
+ assert(!!(flags & CC_C) == (in_c || adcx_operand));
+ assert(!!(flags & CC_O) == (in_o || adox_operand));
+}
+
+void test_adcx_adox(uint32_t in_c, uint32_t in_o, REG adcx_operand, REG adox_operand)
+{
+ REG flags;
+ REG out_adcx, out_adox;
+
+ asm("pushf; pop %0" : "=r"(flags));
+ flags &= ~(CC_C | CC_O);
+ flags |= (in_c ? CC_C : 0);
+ flags |= (in_o ? CC_O : 0);
+
+ out_adcx = adcx_operand;
+ out_adox = adox_operand;
+ asm("push %0; popf;"
+ "adcx %3, %1;"
+ "adox %3, %2;"
+ "pushf; pop %0"
+ : "+r" (flags), "+r" (out_adcx), "+r" (out_adox)
+ : "r" ((REG)-1), "0" (flags), "1" (out_adcx), "2" (out_adox));
+
+ assert(out_adcx == in_c + adcx_operand - 1);
+ assert(out_adox == in_o + adox_operand - 1);
+ assert(!!(flags & CC_C) == (in_c || adcx_operand));
+ assert(!!(flags & CC_O) == (in_o || adox_operand));
+}
+
+int main(int argc, char *argv[]) {
+ /* try all combinations of input CF, input OF, CF from op1+op2, OF from op2+op1 */
+ int i;
+ for (i = 0; i <= 15; i++) {
+ printf("%d\n", i);
+ test_adcx_adox(!!(i & 1), !!(i & 2), !!(i & 4), !!(i & 8));
+ test_adox_adcx(!!(i & 1), !!(i & 2), !!(i & 4), !!(i & 8));
+ }
+ return 0;
+}
+
--
GitLab

@ -0,0 +1,973 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-qemu-docs
# Set to 1 if prebuilt, 0 if not
# (the construct below is to allow overriding from env for script)
QEMU_DOCS_PREBUILT=${QEMU_DOCS_PREBUILT:-1}
QEMU_DOCS_PREBUILT_DEV=ajak
QEMU_DOCS_VERSION="${PV}"
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
# bug #830088
QEMU_DOC_USEFLAG="+doc"
PYTHON_COMPAT=( python3_{9,10,11} )
PYTHON_REQ_USE="ncurses,readline"
FIRMWARE_ABI_VERSION="7.2.0"
inherit linux-info toolchain-funcs python-r1 udev fcaps readme.gentoo-r1 \
pax-utils xdg-utils
if [[ ${PV} == *9999* ]]; then
QEMU_DOCS_PREBUILT=0
EGIT_REPO_URI="https://gitlab.com/qemu-project/qemu.git/"
EGIT_SUBMODULES=(
tests/fp/berkeley-softfloat-3
tests/fp/berkeley-testfloat-3
ui/keycodemapdb
)
inherit git-r3
SRC_URI=""
else
MY_P="${PN}-${PV/_rc/-rc}"
SRC_URI="https://download.qemu.org/${MY_P}.tar.xz"
if [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${QEMU_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${QEMU_DOCS_VERSION}-docs.tar.xz )"
fi
S="${WORKDIR}/${MY_P}"
[[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0"
[[ ${QEMU_DOCS_PREBUILT} == 1 ]] && QEMU_DOC_USEFLAG="doc"
IUSE="accessibility +aio alsa bpf bzip2 capstone +curl debug ${QEMU_DOC_USEFLAG}
+fdt fuse glusterfs +gnutls gtk infiniband iscsi io-uring
jack jemalloc +jpeg
lzo multipath
ncurses nfs nls numa opengl +oss pam +pin-upstream-blobs
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
+slirp
smartcard snappy spice ssh static static-user systemtap test udev usb
usbredir vde +vhost-net virgl virtfs +vnc vte xattr xen
zstd"
COMMON_TARGETS="
aarch64
alpha
arm
cris
hppa
i386
loongarch64
m68k
microblaze
microblazeel
mips
mips64
mips64el
mipsel
nios2
or1k
ppc
ppc64
riscv32
riscv64
s390x
sh4
sh4eb
sparc
sparc64
x86_64
xtensa
xtensaeb
"
IUSE_SOFTMMU_TARGETS="
${COMMON_TARGETS}
avr
rx
tricore
"
IUSE_USER_TARGETS="
${COMMON_TARGETS}
aarch64_be
armeb
hexagon
mipsn32
mipsn32el
ppc64le
sparc32plus
"
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
RESTRICT="!test? ( test )"
# Allow no targets to be built so that people can get a tools-only build.
# Block USE flag configurations known to not work.
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
qemu_softmmu_targets_arm? ( fdt )
qemu_softmmu_targets_microblaze? ( fdt )
qemu_softmmu_targets_mips64el? ( fdt )
qemu_softmmu_targets_ppc64? ( fdt )
qemu_softmmu_targets_ppc? ( fdt )
qemu_softmmu_targets_riscv32? ( fdt )
qemu_softmmu_targets_riscv64? ( fdt )
qemu_softmmu_targets_x86_64? ( fdt )
sdl-image? ( sdl )
static? ( static-user !alsa !gtk !jack !opengl !pam !pulseaudio !plugins !rbd !snappy !udev )
static-user? ( !plugins )
virgl? ( opengl )
virtfs? ( xattr )
vnc? ( gnutls )
vte? ( gtk )
multipath? ( udev )
plugins? ( !static !static-user )
"
for smname in ${IUSE_SOFTMMU_TARGETS} ; do
REQUIRED_USE+=" qemu_softmmu_targets_${smname}? ( seccomp ) "
done
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# and user/softmmu targets (qemu-*, qemu-system-*).
#
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
#
# The attr lib isn't always linked in (although the USE flag is always
# respected). This is because qemu supports using the C library's API
# when available rather than always using the external library.
ALL_DEPEND="
dev-libs/glib:2[static-libs(+)]
sys-libs/zlib[static-libs(+)]
python? ( ${PYTHON_DEPS} )
systemtap? ( dev-util/systemtap )
xattr? ( sys-apps/attr[static-libs(+)] )"
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# softmmu targets (qemu-system-*).
SOFTMMU_TOOLS_DEPEND="
sys-libs/libcap-ng[static-libs(+)]
>=x11-libs/pixman-0.28.0[static-libs(+)]
accessibility? (
app-accessibility/brltty[api]
app-accessibility/brltty[static-libs(+)]
)
aio? ( dev-libs/libaio[static-libs(+)] )
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bpf? ( dev-libs/libbpf:= )
bzip2? ( app-arch/bzip2[static-libs(+)] )
capstone? ( dev-libs/capstone:=[static-libs(+)] )
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
fdt? ( >=sys-apps/dtc-1.5.1[static-libs(+)] )
fuse? ( >=sys-fs/fuse-3.1:3[static-libs(+)] )
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
gnutls? (
>=net-libs/gnutls-3.0:=[static-libs(+)]
dev-libs/nettle:=[static-libs(+)]
)
gtk? (
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/libX11
vte? ( x11-libs/vte:2.91 )
)
infiniband? ( sys-cluster/rdma-core[static-libs(+)] )
iscsi? ( net-libs/libiscsi )
io-uring? ( sys-libs/liburing:=[static-libs(+)] )
jack? ( virtual/jack )
jemalloc? ( dev-libs/jemalloc )
jpeg? ( media-libs/libjpeg-turbo:=[static-libs(+)] )
lzo? ( dev-libs/lzo:2[static-libs(+)] )
multipath? ( sys-fs/multipath-tools )
ncurses? (
sys-libs/ncurses:=[unicode(+)]
sys-libs/ncurses:=[static-libs(+)]
)
nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
numa? ( sys-process/numactl[static-libs(+)] )
opengl? (
virtual/opengl
media-libs/libepoxy[static-libs(+)]
media-libs/mesa[static-libs(+)]
media-libs/mesa[egl(+),gbm(+)]
)
pam? ( sys-libs/pam )
png? ( media-libs/libpng:0=[static-libs(+)] )
pulseaudio? ( media-libs/libpulse )
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? (
media-libs/libsdl2[video]
media-libs/libsdl2[static-libs(+)]
)
sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
slirp? ( net-libs/libslirp[static-libs(+)] )
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
snappy? ( app-arch/snappy:= )
spice? (
>=app-emulation/spice-protocol-0.12.3
>=app-emulation/spice-0.12.0[static-libs(+)]
)
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
udev? ( virtual/libudev:= )
usb? ( >=virtual/libusb-1-r2:1[static-libs(+)] )
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
virgl? ( media-libs/virglrenderer[static-libs(+)] )
virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools:= )
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
"
EDK2_OVMF_VERSION="202202"
SEABIOS_VERSION="1.16.0"
X86_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
~sys-firmware/ipxe-1.21.1[binary,qemu]
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
~sys-firmware/sgabios-0.1_pre10[binary]
)
!pin-upstream-blobs? (
|| (
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
)
sys-firmware/ipxe[qemu]
|| (
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
>=sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
sys-firmware/sgabios
)"
PPC_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
!pin-upstream-blobs? (
|| (
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
>=sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
)
"
BDEPEND="
$(python_gen_impl_dep)
dev-lang/perl
dev-util/meson
sys-apps/texinfo
virtual/pkgconfig
doc? (
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
)
gtk? ( nls? ( sys-devel/gettext ) )
test? (
dev-libs/glib[utils]
sys-devel/bc
)
"
CDEPEND="
!static? (
${ALL_DEPEND//\[static-libs(+)]}
${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
)
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} )
"
DEPEND="${CDEPEND}
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static? (
${ALL_DEPEND}
${SOFTMMU_TOOLS_DEPEND}
)
static-user? ( ${ALL_DEPEND} )"
RDEPEND="${CDEPEND}
acct-group/kvm
selinux? (
sec-policy/selinux-qemu
sys-libs/libselinux
)"
PATCHES=(
"${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch
"${FILESDIR}"/${PN}-6.0.0-make.patch
"${FILESDIR}"/${PN}-7.1.0-also-build-virtfs-proxy-helper.patch
"${FILESDIR}"/${PN}-7.1.0-capstone-include-path.patch
"${FILESDIR}"/${PN}-7.2.0-disable-gmp.patch
"${FILESDIR}"/${PN}-7.2.0-linux-headers-6.2-glibc-2.36.patch
"${FILESDIR}"/${PN}-7.2.0-tcg-curl-ssl.patch
)
QA_PREBUILT="
usr/share/qemu/hppa-firmware.img
usr/share/qemu/openbios-ppc
usr/share/qemu/openbios-sparc64
usr/share/qemu/openbios-sparc32
usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu/palcode-clipper
usr/share/qemu/s390-ccw.img
usr/share/qemu/s390-netboot.img
usr/share/qemu/u-boot.e500
"
QA_WX_LOAD="usr/bin/qemu-i386
usr/bin/qemu-x86_64
usr/bin/qemu-alpha
usr/bin/qemu-arm
usr/bin/qemu-cris
usr/bin/qemu-m68k
usr/bin/qemu-microblaze
usr/bin/qemu-microblazeel
usr/bin/qemu-mips
usr/bin/qemu-mipsel
usr/bin/qemu-or1k
usr/bin/qemu-ppc
usr/bin/qemu-ppc64
usr/bin/qemu-sh4
usr/bin/qemu-sh4eb
usr/bin/qemu-sparc
usr/bin/qemu-sparc64
usr/bin/qemu-armeb
usr/bin/qemu-sparc32plus
usr/bin/qemu-s390x
usr/bin/qemu-unicore32
"
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
kernel module loaded before running kvm. The easiest way to ensure that the
kernel module is loaded is to load it on boot.
For AMD CPUs the module is called 'kvm-amd'.
For Intel CPUs the module is called 'kvm-intel'.
Please review /etc/conf.d/modules for how to load these.
Make sure your user is in the 'kvm' group. Just run
$ gpasswd -a <USER> kvm
then have <USER> re-login.
For brand new installs, the default permissions on /dev/kvm might not let
you access it. You can tell udev to reset ownership/perms:
$ udevadm trigger -c add /dev/kvm
If you want to register binfmt handlers for qemu user targets:
For openrc:
# rc-update add qemu-binfmt
For systemd:
# ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
pkg_pretend() {
if use kernel_linux && kernel_is lt 2 6 25; then
eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
elif use kernel_linux; then
if ! linux_config_exists; then
eerror "Unable to check your kernel for KVM support"
else
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
ERROR_KVM="You must enable KVM in your kernel to continue"
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
ERROR_KVM_AMD+=" your kernel configuration."
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
ERROR_TUN+=" into your kernel or loaded as a module to use the"
ERROR_TUN+=" virtual network device if using -net tap."
ERROR_BRIDGE="You will also need support for 802.1d"
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
ERROR_VHOST_NET+=" support"
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
if grep -q AuthenticAMD /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_AMD"
elif grep -q GenuineIntel /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_INTEL"
fi
fi
use python && CONFIG_CHECK+=" ~DEBUG_FS"
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
# Now do the actual checks setup above
check_extra_config
fi
fi
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
eerror "instances are still pointing to it. Please update your"
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
eerror "and the right system binary (e.g. qemu-system-x86_64)."
die "update your virt configs to not use qemu-kvm"
fi
}
# Sanity check to make sure target lists are kept up-to-date.
check_targets() {
local var=$1 mak=$2
local detected sorted
pushd "${S}"/configs/targets/ >/dev/null || die
# Force C locale until glibc is updated. #564936
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
if [[ ${sorted} != "${detected}" ]] ; then
eerror "The ebuild needs to be kept in sync."
eerror "${var}: ${sorted}"
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
die "sync ${var} to the list of targets"
fi
popd >/dev/null
}
src_prepare() {
check_targets IUSE_SOFTMMU_TARGETS softmmu
check_targets IUSE_USER_TARGETS linux-user
default
# Use correct toolchain to fix cross-compiling
tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS
export WINDRES=${CHOST}-windres
# Verbose builds
MAKEOPTS+=" V=1"
# We already force -D_FORTIFY_SOURCE=2 (or 3) in our toolchain, but
# this setting (-U then -D..=2) will prevent us from trying out 3, so
# drop it. No change to level of protection b/c we patch our toolchain.
sed -i -e 's/-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2//' configure || die
# Remove bundled modules
rm -r dtc meson roms/*/ || die
}
##
# configures qemu based on the build directory and the build type
# we are using.
#
qemu_src_configure() {
debug-print-function ${FUNCNAME} "$@"
local buildtype=$1
local builddir="${S}/${buildtype}-build"
mkdir "${builddir}" || die
local conf_opts=(
--prefix=/usr
--sysconfdir=/etc
--bindir=/usr/bin
--libdir=/usr/$(get_libdir)
--datadir=/usr/share
--docdir=/usr/share/doc/${PF}/html
--mandir=/usr/share/man
--localstatedir=/var
--disable-bsd-user
--disable-containers # bug #732972
--disable-guest-agent
--disable-strip
--with-git-submodules=ignore
# bug #746752: TCG interpreter has a few limitations:
# - it does not support FPU
# - it's generally slower on non-self-modifying code
# It's advantage is support for host architectures
# where native codegeneration is not implemented.
# Gentoo has qemu keyworded only on targets with
# native code generation available. Avoid the interpreter.
--disable-tcg-interpreter
--disable-werror
# We support gnutls/nettle for crypto operations. It is possible
# to use gcrypt when gnutls/nettle are disabled (but not when they
# are enabled), but it's not really worth the hassle. Disable it
# all the time to avoid automatically detecting it. #568856
--disable-gcrypt
--cc="$(tc-getCC)"
--cxx="$(tc-getCXX)"
--host-cc="$(tc-getBUILD_CC)"
$(use_enable alsa)
$(use_enable debug debug-info)
$(use_enable debug debug-tcg)
$(use_enable jack)
$(use_enable nls gettext)
$(use_enable oss)
$(use_enable plugins)
$(use_enable pulseaudio pa)
$(use_enable selinux)
$(use_enable xattr attr)
)
# Disable options not used by user targets. This simplifies building
# static user targets (USE=static-user) considerably.
conf_notuser() {
if [[ ${buildtype} == "user" ]] ; then
echo "--disable-${2:-$1}"
else
use_enable "$@"
fi
}
# Enable option only for softmmu build, but not 'user' or 'tools'
conf_softmmu() {
if [[ ${buildtype} == "softmmu" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
# Enable option only for tools build, but not 'user' or 'softmmu'
conf_tools() {
if [[ ${buildtype} == "tools" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
# Special case for the malloc flag, because the --disable flag does
# not exist and trying like above will break configuring.
conf_malloc() {
if [[ ! ${buildtype} == "user" ]] ; then
usex "${1}" "--enable-malloc=${1}" ""
fi
}
conf_opts+=(
$(conf_notuser accessibility brlapi)
$(conf_notuser aio linux-aio)
$(conf_softmmu bpf)
$(conf_notuser bzip2)
$(conf_notuser capstone)
$(conf_notuser curl)
$(conf_tools doc docs)
$(conf_notuser fdt)
$(conf_notuser fuse)
$(conf_notuser glusterfs)
$(conf_notuser gnutls)
$(conf_notuser gnutls nettle)
$(conf_notuser gtk)
$(conf_notuser infiniband rdma)
$(conf_notuser iscsi libiscsi)
$(conf_notuser io-uring linux-io-uring)
$(conf_malloc jemalloc)
$(conf_notuser jpeg vnc-jpeg)
$(conf_notuser kernel_linux kvm)
$(conf_notuser lzo)
$(conf_notuser multipath mpath)
$(conf_notuser ncurses curses)
$(conf_notuser nfs libnfs)
$(conf_notuser numa)
$(conf_notuser opengl)
$(conf_notuser pam auth-pam)
$(conf_notuser png)
$(conf_notuser rbd)
$(conf_notuser sasl vnc-sasl)
$(conf_notuser sdl)
$(conf_softmmu sdl-image)
$(conf_notuser seccomp)
$(conf_notuser slirp)
$(conf_notuser smartcard)
$(conf_notuser snappy)
$(conf_notuser spice)
$(conf_notuser ssh libssh)
$(conf_notuser udev libudev)
$(conf_notuser usb libusb)
$(conf_notuser usbredir usb-redir)
$(conf_notuser vde)
$(conf_notuser vhost-net)
$(conf_notuser virgl virglrenderer)
$(conf_softmmu virtfs)
$(conf_notuser vnc)
$(conf_notuser vte)
$(conf_notuser xen)
$(conf_notuser xen xen-pci-passthrough)
# use prebuilt keymaps, bug #759604
--disable-xkbcommon
$(conf_notuser zstd)
)
if [[ ! ${buildtype} == "user" ]] ; then
# audio options
local audio_opts=(
# Note: backend order matters here: #716202
# We iterate from higher-level to lower level.
$(usex pulseaudio pa "")
$(usev jack)
$(usev sdl)
$(usev alsa)
$(usev oss)
)
conf_opts+=(
--audio-drv-list=$(IFS=,; echo "${audio_opts[*]}")
)
fi
case ${buildtype} in
user)
conf_opts+=(
--enable-linux-user
--disable-system
--disable-blobs
--disable-tools
--disable-cap-ng
--disable-seccomp
)
local static_flag="static-user"
;;
softmmu)
conf_opts+=(
--disable-linux-user
--enable-system
--disable-tools
--enable-cap-ng
--enable-seccomp
)
local static_flag="static"
;;
tools)
conf_opts+=(
--disable-linux-user
--disable-system
--disable-blobs
--enable-tools
--enable-cap-ng
)
local static_flag="static"
;;
esac
local targets="${buildtype}_targets"
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
# Add support for SystemTAP
use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
# We always want to attempt to build with PIE support as it results
# in a more secure binary. But it doesn't work with static or if
# the current GCC doesn't have PIE support.
if use ${static_flag}; then
conf_opts+=( --static --disable-pie )
else
tc-enables-pie && conf_opts+=( --enable-pie )
fi
# Meson will not use a cross-file unless cross_prefix is set.
tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" )
# Plumb through equivalent of EXTRA_ECONF to allow experiments
# like bug #747928.
conf_opts+=( ${EXTRA_CONF_QEMU} )
echo "../configure ${conf_opts[*]}"
cd "${builddir}"
../configure "${conf_opts[@]}" || die "configure failed"
}
src_configure() {
local target
python_setup
softmmu_targets= softmmu_bins=()
user_targets= user_bins=()
for target in ${IUSE_SOFTMMU_TARGETS} ; do
if use "qemu_softmmu_targets_${target}"; then
softmmu_targets+=",${target}-softmmu"
softmmu_bins+=( "qemu-system-${target}" )
fi
done
for target in ${IUSE_USER_TARGETS} ; do
if use "qemu_user_targets_${target}"; then
user_targets+=",${target}-linux-user"
user_bins+=( "qemu-${target}" )
fi
done
softmmu_targets=${softmmu_targets#,}
user_targets=${user_targets#,}
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
[[ -n ${user_targets} ]] && qemu_src_configure "user"
qemu_src_configure "tools"
}
src_compile() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build" || die
default
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build" || die
default
fi
cd "${S}/tools-build" || die
default
}
src_test() {
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build" || die
pax-mark m */qemu-system-* #515550
emake check
fi
}
qemu_python_install() {
python_domodule "${S}/python/qemu"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/scripts/qmp/qmp-shell"
python_doscript "${S}/scripts/qmp/qemu-ga-client"
}
# Generate binfmt support files.
# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
generate_initd() {
local out="${T}/qemu-binfmt"
local out_systemd="${T}/qemu.conf"
local d="${T}/binfmt.d"
einfo "Generating qemu binfmt scripts and configuration files"
# Generate the debian fragments first.
mkdir -p "${d}"
"${S}"/scripts/qemu-binfmt-conf.sh \
--debian \
--exportdir "${d}" \
--qemu-path "${EPREFIX}/usr/bin" \
|| die
# Then turn the fragments into a shell script we can source.
sed -E -i \
-e 's:^([^ ]+) (.*)$:\1="\2":' \
"${d}"/* || die
# Generate the init.d script by assembling the fragments from above.
local f qcpu package interpreter magic mask
cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
for f in "${d}"/qemu-* ; do
source "${f}"
# Normalize the cpu logic like we do in the init.d for the native cpu.
qcpu=${package#qemu-}
case ${qcpu} in
arm*) qcpu="arm";;
mips*) qcpu="mips";;
ppc*) qcpu="ppc";;
s390*) qcpu="s390";;
sh*) qcpu="sh";;
sparc*) qcpu="sparc";;
esac
# we use 'printf' here to be portable across 'sh'
# implementations: #679168
cat <<EOF >>"${out}"
if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
fi
EOF
echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
done
cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
}
src_install() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build"
emake DESTDIR="${ED}" install
# Install binfmt handler init script for user targets.
generate_initd
doinitd "${T}/qemu-binfmt"
# Install binfmt/qemu.conf.
insinto "/usr/share/qemu/binfmt.d"
doins "${T}/qemu.conf"
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build"
emake DESTDIR="${ED}" install
# This might not exist if the test failed. #512010
[[ -e check-report.html ]] && dodoc check-report.html
if use kernel_linux; then
udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules
fi
if use python; then
python_foreach_impl qemu_python_install
fi
fi
cd "${S}/tools-build" || die
emake DESTDIR="${ED}" install
# If USE=doc, there'll be newly generated docs which we install instead.
if ! use doc && [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then
doman "${WORKDIR}"/${PN}-${QEMU_DOCS_VERSION}-docs/docs/*.[0-8]
fi
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
pushd "${ED}"/usr/bin >/dev/null || die
pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
popd >/dev/null || die
# Install config file example for qemu-bridge-helper
insinto "/etc/qemu"
doins "${FILESDIR}/bridge.conf"
cd "${S}" || die
dodoc MAINTAINERS docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios
# Disallow stripping of prebuilt firmware files.
dostrip -x ${QA_PREBUILT}
if [[ -n ${softmmu_targets} ]]; then
# Remove SeaBIOS since we're using the SeaBIOS packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
fi
# Remove vgabios since we're using the seavgabios packaged one
rm "${ED}/usr/share/qemu/vgabios.bin"
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
# PPC/PPC64 loads vgabios-stdvga
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then
dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
fi
# Remove sgabios since we're using the sgabios packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
fi
# Remove iPXE since we're using the iPXE packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
fi
fi
DISABLE_AUTOFORMATTING=true
readme.gentoo_create_doc
}
firmware_abi_change() {
local pv
for pv in ${REPLACING_VERSIONS}; do
if ver_test ${pv} -lt ${FIRMWARE_ABI_VERSION}; then
return 0
fi
done
return 1
}
pkg_postinst() {
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
udev_reload
fi
xdg_icon_cache_update
[[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
fcaps cap_net_admin "${EROOT}"/usr/libexec/qemu-bridge-helper
DISABLE_AUTOFORMATTING=true
readme.gentoo_print_elog
if use pin-upstream-blobs && firmware_abi_change; then
ewarn "This version of qemu pins new versions of firmware blobs:"
if has_version 'sys-firmware/edk2-ovmf-bin'; then
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
else
ewarn " $(best_version sys-firmware/edk2-ovmf)"
fi
if has_version 'sys-firmware/seabios-bin'; then
ewarn " $(best_version sys-firmware/seabios-bin)"
else
ewarn " $(best_version sys-firmware/seabios)"
fi
ewarn " $(best_version sys-firmware/ipxe)"
ewarn " $(best_version sys-firmware/sgabios)"
ewarn "This might break resume of hibernated guests (started with a different"
ewarn "firmware version) and live migration to/from qemu versions with different"
ewarn "firmware. Please (cold) restart all running guests. For functional"
ewarn "guest migration ensure that all"
ewarn "hosts run at least"
ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
fi
}
pkg_info() {
echo "Using:"
echo " $(best_version app-emulation/spice-protocol)"
if has_version 'sys-firmware/edk2-ovmf-bin'; then
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
else
echo " $(best_version sys-firmware/edk2-ovmf)"
fi
if has_version 'sys-firmware/seabios-bin'; then
echo " $(best_version sys-firmware/seabios-bin)"
else
echo " $(best_version sys-firmware/seabios)"
fi
echo " $(best_version sys-firmware/ipxe)"
echo " $(best_version sys-firmware/sgabios)"
}
pkg_postrm() {
xdg_icon_cache_update
udev_reload
}

Binary file not shown.

@ -4,20 +4,27 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{9..10} )
PYTHON_COMPAT=( python3_{9..11} )
inherit distutils-r1 optfeature
DESCRIPTION="A tool to generate a static blog, with restructured text or markdown input files"
HOMEPAGE="https://blog.getpelican.com/ https://pypi.org/project/pelican/"
SRC_URI="https://github.com/getpelican/pelican/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
HOMEPAGE="
https://getpelican.com/
https://pypi.org/project/pelican/
"
SRC_URI="
https://github.com/getpelican/pelican/archive/${PV}.tar.gz
-> ${P}.gh.tar.gz
"
LICENSE="AGPL-3"
SLOT="0"
KEYWORDS="amd64 ~riscv x86"
IUSE="doc examples markdown"
RDEPEND=">=dev-python/docutils-0.16[${PYTHON_USEDEP}]
RDEPEND="
>=dev-python/docutils-0.16[${PYTHON_USEDEP}]
>=dev-python/blinker-1.4[${PYTHON_USEDEP}]
>=dev-python/feedgenerator-1.9[${PYTHON_USEDEP}]
>=dev-python/jinja-2.7[${PYTHON_USEDEP}]

Binary file not shown.

@ -3,7 +3,7 @@
EAPI=8
PYTHON_COMPAT=( python3_10 )
PYTHON_COMPAT=( python3_{10..11} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1 toolchain-funcs

Binary file not shown.

@ -1 +1,2 @@
DIST platformio-6.1.5.tar.gz 290684 BLAKE2B 1beca08e70f6a932426e13e6b4755188ad2ac266c4b311b2e6ea560623ccc7479ad5fa1955c09e613eb62682164d1952be3b7f050a26d5a5b6bff26435bb2337 SHA512 43835a40636091d7062a1cbd96950ddb29592aba6c4eaeb80f37288f949bd95f3312cb5f33814cf8521e3b5bd3ceeb2e32e76c294ef5cbf992ed3c674d4a9ab7
DIST platformio-6.1.6.tar.gz 295288 BLAKE2B 4508f3eda25cbb2d2bad6881d7041a9bd8bb87b452564b3cabd58bec0506ca10e53b2552eee8ac1984cb429e5ea52c332d863f1c76a10b5106ab238e6506bb87 SHA512 879fbc759476118473d13375e4dcdbda901f48f5d0d9bb94bdd3ed09de2563603880b91d102e35eaf144e61cd457b132056e0a8293b762b3566a537f3b886078

@ -0,0 +1,113 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_SINGLE_IMPL=1
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{9..11} )
inherit distutils-r1 udev
DESCRIPTION="An open source ecosystem for IoT development"
HOMEPAGE="https://platformio.org/"
SRC_URI="https://github.com/platformio/platformio-core/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}"/${PN}-core-${PV}
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
RDEPEND="
$(python_gen_cond_dep '
=dev-python/aiofiles-22.1*[${PYTHON_USEDEP}]
dev-python/ajsonrpc[${PYTHON_USEDEP}]
<dev-python/bottle-0.13[${PYTHON_USEDEP}]
=dev-python/click-8*[${PYTHON_USEDEP}]
dev-python/colorama[${PYTHON_USEDEP}]
>=dev-python/pyserial-3[${PYTHON_USEDEP}]
<dev-python/pyserial-4[${PYTHON_USEDEP}]
>=dev-python/zeroconf-0.37[${PYTHON_USEDEP}]
=dev-python/requests-2*[${PYTHON_USEDEP}]
>=dev-python/semantic_version-2.9[${PYTHON_USEDEP}]
<dev-python/semantic_version-3[${PYTHON_USEDEP}]
=dev-python/tabulate-0.9*[${PYTHON_USEDEP}]
dev-python/twisted[${PYTHON_USEDEP}]
>=dev-python/pyelftools-0.27[${PYTHON_USEDEP}]
<dev-python/pyelftools-1[${PYTHON_USEDEP}]
=dev-python/marshmallow-3*[${PYTHON_USEDEP}]
=dev-python/starlette-0.21*[${PYTHON_USEDEP}]
=dev-python/uvicorn-0.19*[${PYTHON_USEDEP}]
dev-python/wsproto[${PYTHON_USEDEP}]
')
virtual/udev"
DEPEND="virtual/udev"
BDEPEND="test? ( $(python_gen_cond_dep 'dev-python/jsondiff[${PYTHON_USEDEP}]') )"
# This list could be refined a bit to have individual tests which need network
# (within EPYTEST_DESELECT) but so many need it that it doesn't seem worth it right now.
EPYTEST_IGNORE=(
# Requires network access
tests/test_builder.py
tests/package/test_manager.py
tests/package/test_manifest.py
tests/commands/test_platform.py
tests/commands/test_test.py
tests/commands/test_ci.py
tests/commands/test_init.py
tests/commands/test_lib.py
tests/commands/test_lib_complex.py
tests/commands/test_boards.py
tests/commands/test_check.py
tests/commands/test_run.py
tests/commands/pkg/test_exec.py
tests/commands/pkg/test_list.py
tests/commands/pkg/test_outdated.py
tests/commands/pkg/test_search.py
tests/commands/pkg/test_show.py
tests/commands/pkg/test_install.py
tests/commands/pkg/test_uninstall.py
tests/commands/pkg/test_update.py
tests/misc/ino2cpp/test_ino2cpp.py
tests/test_maintenance.py
tests/test_misc.py
)
EPYTEST_DESELECT=(
# Requires network access
tests/misc/test_maintenance.py::test_check_pio_upgrade
tests/misc/test_misc.py::test_ping_internet_ips
tests/misc/test_misc.py::test_api_cache
)
distutils_enable_tests pytest
src_prepare() {
# Allow newer versions of zeroconf, Bug #831181.
# Also wsproto.
# ... and semantic_version, bug #853247.
sed \
-e '/zeroconf/s/<[0-9.*]*//' \
-e '/wsproto/s/==.*/"/' \
-e '/semantic_version/s/==[0-9.*]*//' \
-i setup.py || die
default
}
python_test() {
epytest -k "not skip_ci"
}
src_install() {
distutils-r1_src_install
udev_dorules platformio/assets/system/99-platformio-udev.rules
}
pkg_postinst() {
udev_reload
}
pkg_postrm() {
udev_reload
}

Binary file not shown.

@ -74,6 +74,7 @@ PATCHES=(
"${FILESDIR}/${PN}-1.2.35_laf_fixes.patch"
"${FILESDIR}/${PN}-1.2.40_musl_pthreads.patch"
"${FILESDIR}/${PN}-1.2.40_ixwebsocket-gcc13.patch"
"${FILESDIR}/${PN}-1.2.40_laf-gcc13.patch"
)
src_prepare() {

@ -0,0 +1,47 @@
From 59c6af303dea4c6dc0c9da687ec73612929eacfc Mon Sep 17 00:00:00 2001
From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com>
Date: Tue, 21 Feb 2023 17:01:04 +0300
Subject: [PATCH] Fix compilation on GCC13
GCC-13 changes internal cstdint includes, and now files that uses
standard integer types should directly include cstdint header.
See: https://gcc.gnu.org/gcc-13/porting_to.html#header-dep-changes
See: https://github.com/aseprite/laf/pull/55
Bug: https://bugs.gentoo.org/865117
Bug: https://bugs.gentoo.org/895616
--- a/laf/base/file_content.h
+++ b/laf/base/file_content.h
@@ -9,6 +9,7 @@
#pragma once
#include "base/buffer.h"
+#include "base/ints.h"
#include <cstdio>
#include <string>
--- a/laf/base/sha1.h
+++ b/laf/base/sha1.h
@@ -11,6 +11,8 @@
#include <vector>
#include <string>
+#include "base/ints.h"
+
extern "C" struct SHA1Context;
namespace base {
--- a/laf/base/sha1_rfc3174.h
+++ b/laf/base/sha1_rfc3174.h
@@ -18,6 +18,8 @@
#define BASE_SHA1_RFC3174_H_INCLUDED
#pragma once
+#include "base/ints.h"
+
#ifdef __cplusplus
extern "C" {
#endif
--
2.39.2

@ -1,2 +1,3 @@
DIST godot-3.5.1-stable.tar.xz 24153448 BLAKE2B 9d61276a2d82ef4f4487ec1046b7fa58f2b3626640b2db25c1f98c3f8e2ff40eddcf943fd9ffaaf6814fbafbbe7ef1d3f642d77af953b87731cff570ac3a5473 SHA512 59e5ca88534f542562971efb83b76561705f9ca8761311f01b4453857e7ae046c17cadd0d5ca6f6f56e262b5031294a8b9ad970fa6ffc95e1a6a1e1bae48d55f
DIST godot-4.0-rc2.tar.xz 29105476 BLAKE2B be30da3909ee881ed929747d97232ad1356b15d0bdb0f5ea07fedc6de300a776ffac4e156134218322ccc4b6e2d4ae457cf53ee72a2da0df645e98fb957e773f SHA512 5d36ca7018ed2963e92a0917a6310f787ab807f47a302f11b6c09ffd60e4e98800aef6957345feb61f49a623eb1993abf601669cd7b7511a5b1d974b129b11c3
DIST godot-4.0-rc3.tar.xz 29301840 BLAKE2B d981240f117839a05c00871b0e019c08e1f6136cea4935ae5028dbd06c16a6f34f7464309f44c1c0bebd982179cad092b4eb36529a412ccfcc27277fca5f3268 SHA512 4d5702b472e0ab52a86c7c47069ba08a8fe2c40d6b4437842c0610fe7e1d139d348ad521967ef844eb0442f78122864d97fab5a99fd21ec40e6b987c2af96c44

@ -0,0 +1,15 @@
--- a/SConstruct
+++ b/SConstruct
@@ -241,2 +241,3 @@
opts.Add("CC", "C compiler")
+opts.Add("AR", "Archiver")
opts.Add("LINK", "Linker")
@@ -569,8 +570,2 @@
env.Append(CCFLAGS=["-g2"])
- else:
- if methods.using_clang(env) and not methods.is_vanilla_clang(env):
- # Apple Clang, its linker doesn't like -s.
- env.Append(LINKFLAGS=["-Wl,-S", "-Wl,-x", "-Wl,-dead_strip"])
- else:
- env.Append(LINKFLAGS=["-s"])

@ -0,0 +1,234 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit bash-completion-r1 desktop python-any-r1 scons-utils toolchain-funcs xdg
MY_P="${PN}-$(ver_rs 2 -)"
DESCRIPTION="Multi-platform 2D and 3D game engine with a feature-rich editor"
HOMEPAGE="https://godotengine.org/"
SRC_URI="https://downloads.tuxfamily.org/godotengine/$(ver_rs 2 /)/${MY_P}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="
MIT
Apache-2.0 BSD Boost-1.0 CC0-1.0 Unlicense ZLIB
gui? ( CC-BY-4.0 ) tools? ( OFL-1.1 )"
SLOT="4"
KEYWORDS="~amd64"
# Enable roughly same as upstream by default so it works as expected,
# except raycast (tools-only heavy dependency), and deprecated.
IUSE="
alsa +dbus debug deprecated +fontconfig +gui pulseaudio raycast
+runner speech test +theora +tools +udev +upnp +vulkan +webp"
# tests need more figuring out, they are still somewhat new and volatile
RESTRICT="test"
# dlopen: libglvnd
RDEPEND="
app-arch/zstd:=
dev-games/recastnavigation:=
dev-libs/icu:=
dev-libs/libpcre2:=[pcre32]
media-libs/freetype[brotli,harfbuzz]
media-libs/harfbuzz:=[icu]
media-libs/libogg
media-libs/libpng:=
media-libs/libvorbis
<net-libs/mbedtls-3:=
net-libs/wslay
sys-libs/zlib:=
alsa? ( media-libs/alsa-lib )
dbus? ( sys-apps/dbus )
fontconfig? ( media-libs/fontconfig )
gui? (
media-libs/libglvnd
x11-libs/libX11
x11-libs/libXcursor
x11-libs/libXext
x11-libs/libXi
x11-libs/libXinerama
x11-libs/libXrandr
x11-libs/libXrender
x11-libs/libxkbcommon
tools? ( raycast? ( media-libs/embree:3 ) )
vulkan? ( media-libs/vulkan-loader[X] )
)
pulseaudio? ( media-libs/libpulse )
speech? ( app-accessibility/speech-dispatcher )
theora? ( media-libs/libtheora )
tools? ( app-misc/ca-certificates )
udev? ( virtual/udev )
upnp? ( net-libs/miniupnpc:= )
webp? ( media-libs/libwebp:= )"
DEPEND="
${RDEPEND}
gui? ( x11-base/xorg-proto )
tools? ( test? ( dev-cpp/doctest ) )"
BDEPEND="virtual/pkgconfig"
PATCHES=(
"${FILESDIR}"/${PN}-4.0_beta3-headless-header.patch
"${FILESDIR}"/${PN}-4.0_rc2-musl.patch
"${FILESDIR}"/${PN}-4.0_rc2-gcc13.patch
"${FILESDIR}"/${PN}-4.0_rc3-scons.patch
)
src_prepare() {
default
sed -i "1,5s/ godot/&${SLOT}/i" misc/dist/linux/godot.6 || die
sed -i "/id/s/Godot/&${SLOT}/" misc/dist/linux/org.godotengine.Godot.appdata.xml || die
sed -e "s/=godot/&${SLOT}/" -e "/^Name=/s/$/ ${SLOT}/" \
-i misc/dist/linux/org.godotengine.Godot.desktop || die
sed -i "s|pkg-config |$(tc-getPKG_CONFIG) |" platform/linuxbsd/detect.py || die
# use of builtin_ switches can be messy (see below), delete to be sure
local unbundle=(
doctest embree freetype graphite harfbuzz icu4c libogg
libpng libtheora libvorbis libwebp linuxbsd_headers mbedtls
miniupnpc pcre2 recastnavigation volk wslay zlib zstd
# certs: unused by generated header, but scons panics if not found
)
rm -r "${unbundle[@]/#/thirdparty/}" || die
ln -s "${ESYSROOT}"/usr/include/doctest thirdparty/ || die
}
src_compile() {
local -x GODOT_VERSION_STATUS=$(ver_cut 3-4) # for dev versions only
local -x BUILD_NAME=gentoo # replaces "custom_build" in version string
local esconsargs=(
AR="$(tc-getAR)" CC="$(tc-getCC)" CXX="$(tc-getCXX)"
progress=no
verbose=yes
use_sowrap=no
alsa=$(usex alsa)
dbus=$(usex dbus)
deprecated=$(usex deprecated)
fontconfig=$(usex fontconfig)
opengl3=$(usex gui)
pulseaudio=$(usex pulseaudio)
speechd=$(usex speech)
udev=$(usex udev)
use_volk=no # unnecessary when linking directly to libvulkan
vulkan=$(usex gui $(usex vulkan))
x11=$(usex gui)
system_certs_path="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt
# platform/*/detect.py uses builtin_* switches to check if need
# to link with system libraries, but ignores whether the dep is
# actually used, so "enable" deleted builtins on disabled deps
builtin_certs=no
builtin_embree=$(usex !gui yes $(usex !tools yes $(usex !raycast)))
builtin_enet=yes # bundled copy is patched for IPv6+DTLS support
builtin_freetype=no
builtin_glslang=yes #879111
builtin_graphite=no
builtin_harfbuzz=no
builtin_icu4c=no
builtin_libogg=no
builtin_libpng=no
builtin_libtheora=$(usex !theora)
builtin_libvorbis=no
builtin_libwebp=$(usex !webp)
builtin_mbedtls=no
builtin_miniupnpc=$(usex !upnp)
builtin_msdfgen=yes # not wired for unbundling nor packaged
builtin_pcre2=no
builtin_recastnavigation=no
builtin_rvo2=yes # bundled copy has godot-specific changes
builtin_squish=yes # ^ likewise, may not be safe to unbundle
builtin_wslay=no
builtin_xatlas=yes # not wired for unbundling nor packaged
builtin_zlib=no
builtin_zstd=no
# (more is bundled in third_party/ but they lack builtin_* switches)
# modules with optional dependencies, "possible" to disable more but
# gets messy and breaks all sorts of features (expected enabled)
module_gridmap_enabled=$(usex deprecated) # fails without deprecated
module_mono_enabled=no # unhandled
# note raycast is only enabled on amd64+arm64, see raycast/config.py
module_raycast_enabled=$(usex gui $(usex tools $(usex raycast)))
module_theora_enabled=$(usex theora)
module_upnp_enabled=$(usex upnp)
module_webp_enabled=$(usex webp)
# let *FLAGS handle these, e.g. can pass -flto as-is
debug_symbols=no
lto=none
optimize=custom
use_static_cpp=no
)
if use runner && use tools; then
# build alternate faster + ~60% smaller binary for running
# games or servers without game development debug paths
escons extra_suffix=runner target=template_release "${esconsargs[@]}"
fi
esconsargs+=(
target=$(usex tools editor template_$(usex debug{,} release))
dev_build=$(usex debug)
# harmless but note this bakes in --test in the final binary
tests=$(usex tools $(usex test))
)
escons extra_suffix=main "${esconsargs[@]}"
}
src_test() {
xdg_environment_reset
bin/godot*.main --headless --test || die
}
src_install() {
local s=godot${SLOT}
newbin bin/godot*.main ${s}
if use runner && use tools; then
newbin bin/godot*.runner ${s}-runner
else
# always available, revdeps shouldn't depend on [runner]
dosym ${s} /usr/bin/${s}-runner
fi
newman misc/dist/linux/godot.6 ${s}.6
dodoc AUTHORS.md CHANGELOG.md DONORS.md README.md
if use gui; then
newicon icon.svg ${s}.svg
newmenu misc/dist/linux/org.godotengine.Godot.desktop \
org.godotengine.${s^}.desktop
insinto /usr/share/metainfo
newins misc/dist/linux/org.godotengine.Godot.appdata.xml \
org.godotengine.${s^}.appdata.xml
insinto /usr/share/mime/application
newins misc/dist/linux/org.godotengine.Godot.xml \
org.godotengine.${s^}.xml
fi
newbashcomp misc/dist/shell/godot.bash-completion ${s}
bashcomp_alias ${s}{,-runner}
insinto /usr/share/fish/vendor_completions.d
newins misc/dist/shell/godot.fish ${s}.fish
dosym ${s}.fish /usr/share/fish/vendor_completions.d/${s}-runner.fish
insinto /usr/share/zsh/site-functions
newins misc/dist/shell/_godot.zsh-completion _${s}
dosym _${s} /usr/share/zsh/site-functions/_${s}-runner
}

@ -24,6 +24,7 @@
<flag name="deprecated">Enable support for deprecated features</flag>
<flag name="raycast">Enable the raycast Editor module using <pkg>media-libs/embree</pkg></flag>
<flag name="runner">Build an additional binary optimized for running games (only relevant with USE=tools)</flag>
<flag name="speech">Enable text-to-speech support</flag>
<flag name="tools">Enable the Godot Editor for game development</flag>
<flag name="vulkan">Enable support for Vulkan</flag>
<flag name="webm">Enable the WebM module</flag>

Binary file not shown.

@ -1,2 +1,3 @@
DIST commons-collections-3.2.2-src.tar.gz 630693 BLAKE2B a70cebe9526291d5207db7edd7c9b50060413880d41dcb28c01cf05f7e00a9f5e1560012c3c3c763162412282db9512bc2b64a5788f210c5c8866943d912dafb SHA512 2e8ef638f07515b028a3e7e97851fcf1d9023a2c188e211bd1e936f35d3d91c2885adf3b1103ad17dfb7aeea6e7a67ce7826ee346a8a29c1aa7c6b0cf14e9230
DIST commons-collections-3.2.2-src.tar.gz.asc 819 BLAKE2B a7d170b03613cddddc284908d95287fc092c01b125c5adffebfc493daf9119e0c9d82fdc7d8ce1865ef45a1e015072f5a09181abcba5b17c9c48d7c6333279da SHA512 c5d33518ed5343b38c10e317f677266858bd9614eff7fdc13a2e0131fe71836c3694f49898843e6978496d7dd2f976b82922230a44cde1eac5f6cdfdb822dcd0
DIST commons-collections-4.4-src.tar.gz 703008 BLAKE2B f4a0e858eb7412bdd431894f923a4731685ceb2463bee002401d8048cc40534f002ec0291aa67297e061a50b624d3de8f64e227f513ab1f3620e38d1d6858255 SHA512 2110e73eda97ca52a886cb708f21d8609a83655861594f3b6eb7a15b777d42eeeefc5d3b28ffc6ecc5e4f0b3fd5407f80019c2ce006f970f55455ef33eee47ee

@ -1,21 +1,21 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
JAVA_PKG_IUSE="doc source test"
MAVEN_ID="commons-collections:commons-collections:3.2.2"
inherit java-pkg-2 java-ant-2 java-utils-2
inherit java-pkg-2 java-ant-2 verify-sig
DESCRIPTION="Jakarta-Commons Collections Component"
HOMEPAGE="https://commons.apache.org/collections/"
SRC_URI="mirror://apache/${PN/-//}/source/${P}-src.tar.gz"
SRC_URI="https://archive.apache.org/dist/commons/collections/source/commons-collections-${PV}-src.tar.gz
verify-sig? ( https://archive.apache.org/dist/commons/collections/source/commons-collections-${PV}-src.tar.gz.asc )"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
IUSE="test"
RESTRICT="!test? ( test )"
DEPEND="
@ -27,6 +27,9 @@ DEPEND="
RDEPEND=">=virtual/jre-1.8:*"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}/usr/share/openpgp-keys/commons.apache.org.asc"
S="${WORKDIR}/${P}-src"
PATCHES=(

Binary file not shown.

@ -1,2 +1,3 @@
DIST dafny-3.10.0-x64-ubuntu-16.04.zip 76468200 BLAKE2B d3b35260fca709f1808ec47874f5566dd2fc42af9a43354a97b86b8962b1b15c95df10f25fa8f0d6a12c83f5c12569aa981d56b796aeb1fd7563fc59c62d4259 SHA512 3f8e669025fd655a7709334876652176b3dce1eb980f1f797cf829fa53b125129a66a175d3a4fcc56aa276e28661c6d795ccc01901d0e457bdac754b29382ca3
DIST dafny-3.11.0-x64-ubuntu-16.04.zip 76510888 BLAKE2B 03591064f7af8971c5e175b4538c1344d6fd09c4ca2f3c52fef65af424d5fe462112f3853a59a0d3e84bf5945290b3b088472378577cb0881cf8129401606148 SHA512 0535151b0622f70b49457f1eaaa15c031b5ade5e44e64e79a6c6d1c46b9c2fed155f8da72274f8b8dd7815130ce80bd2b7af8a28d9423ebefde80d8cda1d12bb
DIST dafny-3.12.0-x64-ubuntu-16.04.zip 76588835 BLAKE2B 144928b5e9a32c770d4552be31373defd1153a7ce481aa3948c5fe6c30ff2ce5f20b3d057a587c7762f3c37d63f683275fcf60bbd4ca3754f8713132b3bdfdc9 SHA512 2ea5f97b4fe0f8aaeefd16f739306482824f76ae6c5a37038fedda60bacb2496abc02715c0973a05f845972fd81aeb06e62c3c41d6908c2cf7416006ce8519d4

@ -0,0 +1,51 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Verification-aware programming language"
HOMEPAGE="https://dafny.org/"
SRC_URI="https://github.com/dafny-lang/dafny/releases/download/v${PV}/dafny-${PV}-x64-ubuntu-16.04.zip"
LICENSE="MIT"
SLOT="0"
KEYWORDS="-* ~amd64"
REQUIRED_USE="elibc_glibc"
RDEPEND="
dev-libs/userspace-rcu
dev-util/lttng-ust:0/2.12
sci-mathematics/z3
"
BDEPEND="app-arch/unzip"
S="${WORKDIR}"/dafny
QA_PREBUILT="*"
src_prepare() {
default
# Remove bundled z3.
# NOTICE: New versions do not need the bundled one but older versions
# hardcoded the path relative to "dafny" binary.
# While bumping make sure to verify that system's "z3" is used
# by, for example, compiling/verifying a simple dafny program.
rm -r z3 || die
}
src_install() {
local dest=/opt/dafny
insinto ${dest}
# Maybe too general, but this installation mode matched how it arrives.
insopts -m0755
doins "${S}"/*
local bin
for bin in DafnyServer dafny ; do
dosym ../../${dest}/${bin} /usr/bin/${bin}
done
# Make "dafny-server" clients happy.
dosym ../../${dest}/DafnyServer /usr/bin/dafny-server
}

@ -21,7 +21,7 @@ case ${PV} in
case ${PV} in
*_beta*|*_rc*) ;;
*)
KEYWORDS="-* amd64 arm ~arm64 ~loong ~mips ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
KEYWORDS="-* amd64 arm ~arm64 ~loong ~mips ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
;;
esac
esac

@ -1,6 +1,8 @@
DIST firefox-102.6.0esr.source.tar.xz 478856656 BLAKE2B 2094bbb3ba00fc2d726a620e9946ca1ec98ad4c930ed611486ac92a7c74aa84da9c15b1353603eb36ce0a9098bd1f311dea2bea255f2bb6dd06fafbc7808d52c SHA512 c0f0160bea612d0ae74c29dd44beb7fd9a1c292694b8cd5c4faf2e54feb5c27684eee821b67dd40df714d69866a4e3a8b19e22182d9bc3023050d2d96b02d308
DIST firefox-102.7.0esr.source.tar.xz 479538092 BLAKE2B bcfc62fce9ddaa12c25951178cc865af5d230de453dfea28ff46ad40976b08d31479c1a81dbf235dcf3c9ddbf949bee447ceb5bb384aee1f2da633ef2199f114 SHA512 2a9d212b5d15e1bf7a6156495126cbc9161d2057aeedea8f7a5a0670a19a9b00cf35044075935c8f3c788118856ba2cc00f9b297c5ac713f094857683f7cd13b
DIST firefox-102.8.0esr.source.tar.xz 479172816 BLAKE2B 0b4cbf11028abc73a8479fb94670e98f0a293fc12381b1eccbadd64a33db068ab7434357abbe3ce0773382c7c90b8fe4d2258cc55abe8bdc2f551bba1dc2b797 SHA512 93ea87997b66088b94c6e943b6e99e9a71d1908444d096c0f65b6876d2c584e55ff6120266f3851f986b664bd1f12fa31206b03479c2b751e7c3ca097ac14275
DIST firefox-102esr-patches-07j.tar.xz 23012 BLAKE2B 41b706f5ae8695ddd33e971cf1aa99317382a57618cf19163c5bca09ed5d430dba672ac51b7ab3072360452cc89ac50397bb7992882a61a3adda37022239e654 SHA512 7048353ea5504e34d9d3950e3e5e3125f631f95269d5c9e422ca052173a316718fdd4b57ea7980a452139b1192805cb598f47f398fb148a426a85a5e979c6cdd
DIST firefox-102esr-patches-09j.tar.xz 20236 BLAKE2B 35431fbc56c5470dac2839fd218d2a589558cf964eab2373f2db7a01e6e0dfee329b1b63f6a421bfd4c9bf8c3ed9877067cdc462742a1cc59d78d1d10264ebac SHA512 7fb82ff3ef2cbca339ab05ac07f0409088a87dfe37314d31d441bae1beb181cbea799dcd63dd560d0ccde24b665379118e5e99a1c1a2385d859378901593089b
DIST firefox-78.15.0esr.source.tar.xz 330819568 BLAKE2B dc8785613c2f72c55d484642c89c2545765a9efbd609bc7c2cf57b4a3a06a2ea22e6959e42b5b8af867db782e8b2097a67dec858796b744e47008a8e575e2316 SHA512 ac3de735b246ce4f0e1619cd2664321ffa374240ce6843e785d79a350dc30c967996bbcc5e3b301cb3d822ca981cbea116758fc4122f1738d75ddfd1165b6378
DIST firefox-78esr-patches-19.tar.xz 88424 BLAKE2B fdc7bf8f28b3e799551a70f1cec7a695f52c4712f3b28733648fcd7dac5a599613f4c3d2cfa169266dc62b65619b7f28c0e06d32317adb8ec0056ca79c87e9f6 SHA512 3c81dadc9bf74207c4e361605127ef6141d77700c5c54f1f9cd5ad3be13df9f73c6eec2f51d779558e4bdad1e7395c6aa8943a93415bd1786d461042bc03550a
DIST firefox-91.13.0esr.source.tar.xz 380053584 BLAKE2B 75d0daa512b3a2d41974a0169778be9ef19a100de2bd382add9831860ca93976585a41e760b6a7ec753268fb78f9f61049780fa7961834248bc8157cfdcc2827 SHA512 38b4cc52de21e76d6061e6ba175e1cbfd888a16070aa951f5a44283f2db9d7e94f2504621f0da78feac6e71491a6d0e7038f63dd0ae112dcad700eb02e9aa516

@ -0,0 +1,411 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
# Patch version
FIREFOX_PATCHSET="firefox-102esr-patches-09j.tar.xz"
SPIDERMONKEY_PATCHSET="spidermonkey-102-patches-04j.tar.xz"
LLVM_MAX_SLOT=15
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE="ssl,xml(+)"
WANT_AUTOCONF="2.1"
inherit autotools check-reqs flag-o-matic llvm multiprocessing prefix python-any-r1 toolchain-funcs
MY_PN="mozjs"
MY_PV="${PV/_pre*}" # Handle Gentoo pre-releases
MY_MAJOR=$(ver_cut 1)
MOZ_ESR=yes
MOZ_PV=${PV}
MOZ_PV_SUFFIX=
if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
# Convert the ebuild version to the upstream Mozilla version
MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
fi
if [[ -n ${MOZ_ESR} ]] ; then
# ESR releases have slightly different version numbers
MOZ_PV="${MOZ_PV}esr"
fi
MOZ_PN="firefox"
MOZ_P="${MOZ_PN}-${MOZ_PV}"
MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
if [[ ${PV} == *_rc* ]] ; then
MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
fi
PATCH_URIS=(
https://dev.gentoo.org/~{juippis,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
https://dev.gentoo.org/~{juippis,whissi}/mozilla/patchsets/${SPIDERMONKEY_PATCHSET}
)
SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
${PATCH_URIS[@]}"
DESCRIPTION="SpiderMonkey is Mozilla's JavaScript engine written in C and C++"
HOMEPAGE="https://spidermonkey.dev https://firefox-source-docs.mozilla.org/js/index.html "
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
SLOT="$(ver_cut 1)"
LICENSE="MPL-2.0"
IUSE="clang cpu_flags_arm_neon debug +jit lto test"
#RESTRICT="test"
RESTRICT="!test? ( test )"
BDEPEND="${PYTHON_DEPS}
|| (
(
sys-devel/llvm:15
clang? (
sys-devel/clang:15
virtual/rust:0/llvm-15
lto? ( sys-devel/lld:15 )
)
)
(
sys-devel/llvm:14
clang? (
sys-devel/clang:14
virtual/rust:0/llvm-14
lto? ( sys-devel/lld:14 )
)
)
)
!clang? ( virtual/rust )
virtual/pkgconfig
test? (
$(python_gen_any_dep 'dev-python/six[${PYTHON_USEDEP}]')
)"
DEPEND=">=dev-libs/icu-71.1:=
dev-libs/nspr
sys-libs/readline:0=
sys-libs/zlib"
RDEPEND="${DEPEND}"
S="${WORKDIR}/firefox-${MY_PV}/js/src"
llvm_check_deps() {
if ! has_version -b "sys-devel/llvm:${LLVM_SLOT}" ; then
einfo "sys-devel/llvm:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
return 1
fi
if use clang ; then
if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
return 1
fi
if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
return 1
fi
if use lto ; then
if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then
einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
return 1
fi
fi
fi
einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
}
python_check_deps() {
if use test ; then
python_has_version "dev-python/six[${PYTHON_USEDEP}]"
fi
}
pkg_pretend() {
if use test ; then
CHECKREQS_DISK_BUILD="7000M"
else
CHECKREQS_DISK_BUILD="6000M"
fi
check-reqs_pkg_pretend
}
pkg_setup() {
if [[ ${MERGE_TYPE} != binary ]] ; then
if use test ; then
CHECKREQS_DISK_BUILD="7000M"
else
CHECKREQS_DISK_BUILD="6000M"
fi
check-reqs_pkg_setup
llvm_pkg_setup
if use clang && use lto ; then
local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
[[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
[[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
[[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
[[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
eerror " - Build ${CATEGORY}/${PN} without USE=lto"
eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole "
eerror " llvm/clang/lld/rust chain depending on your @world updates)"
die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
fi
fi
python-any-r1_pkg_setup
# Build system is using /proc/self/oom_score_adj, bug #604394
addpredict /proc/self/oom_score_adj
if ! mountpoint -q /dev/shm ; then
# If /dev/shm is not available, configure is known to fail with
# a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
ewarn "/dev/shm is not mounted -- expect build failures!"
fi
# Ensure we use C locale when building, bug #746215
export LC_ALL=C
fi
}
src_prepare() {
pushd ../.. &>/dev/null || die
use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
eapply "${WORKDIR}"/firefox-patches
eapply "${WORKDIR}"/spidermonkey-patches
default
# Make cargo respect MAKEOPTS
export CARGO_BUILD_JOBS="$(makeopts_jobs)"
# sed-in toolchain prefix
sed -i \
-e "s/objdump/${CHOST}-objdump/" \
python/mozbuild/mozbuild/configure/check_debug_ranges.py \
|| die "sed failed to set toolchain prefix"
# use prefix shell in wrapper linker scripts, bug #789660
hprefixify "${S}"/../../build/cargo-{,host-}linker
einfo "Removing pre-built binaries ..."
find third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
MOZJS_BUILDDIR="${WORKDIR}/build"
mkdir "${MOZJS_BUILDDIR}" || die
popd &>/dev/null || die
eautoconf
}
src_configure() {
# Show flags set at the beginning
einfo "Current CFLAGS: ${CFLAGS}"
einfo "Current CXXFLAGS: ${CXXFLAGS}"
einfo "Current LDFLAGS: ${LDFLAGS}"
einfo "Current RUSTFLAGS: ${RUSTFLAGS}"
local have_switched_compiler=
if use clang; then
# Force clang
einfo "Enforcing the use of clang due to USE=clang ..."
if tc-is-gcc; then
have_switched_compiler=yes
fi
AR=llvm-ar
CC=${CHOST}-clang
CXX=${CHOST}-clang++
NM=llvm-nm
RANLIB=llvm-ranlib
elif ! use clang && ! tc-is-gcc ; then
# Force gcc
have_switched_compiler=yes
einfo "Enforcing the use of gcc due to USE=-clang ..."
AR=gcc-ar
CC=${CHOST}-gcc
CXX=${CHOST}-g++
NM=gcc-nm
RANLIB=gcc-ranlib
fi
if [[ -n "${have_switched_compiler}" ]] ; then
# Because we switched active compiler we have to ensure
# that no unsupported flags are set
strip-unsupported-flags
fi
# Ensure we use correct toolchain
export HOST_CC="$(tc-getBUILD_CC)"
export HOST_CXX="$(tc-getBUILD_CXX)"
export AS="$(tc-getCC) -c"
tc-export CC CXX LD AR AS NM OBJDUMP RANLIB PKG_CONFIG
cd "${MOZJS_BUILDDIR}" || die
# ../python/mach/mach/mixin/process.py fails to detect SHELL
export SHELL="${EPREFIX}/bin/bash"
local -a myeconfargs=(
--host="${CBUILD:-${CHOST}}"
--target="${CHOST}"
--disable-ctype
--disable-jemalloc
--disable-smoosh
--disable-strip
--enable-readline
--enable-release
--enable-shared-js
--with-intl-api
--with-system-icu
--with-system-nspr
--with-system-zlib
--with-toolchain-prefix="${CHOST}-"
$(use_enable debug)
$(use_enable jit)
$(use_enable test tests)
)
if use debug; then
myeconfargs+=( --disable-optimize )
else
myeconfargs+=( --enable-optimize )
fi
if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
myeconfargs+=( --enable-rust-simd )
fi
# Modifications to better support ARM, bug 717344
if use cpu_flags_arm_neon ; then
myeconfargs+=( --with-fpu=neon )
if ! tc-is-clang ; then
# thumb options aren't supported when using clang, bug 666966
myeconfargs+=( --with-thumb=yes )
myeconfargs+=( --with-thumb-interwork=no )
fi
fi
# Tell build system that we want to use LTO
if use lto ; then
if use clang ; then
myeconfargs+=( --enable-linker=lld )
myeconfargs+=( --enable-lto=cross )
else
myeconfargs+=( --enable-linker=bfd )
myeconfargs+=( --enable-lto=full )
fi
fi
# LTO flag was handled via configure
filter-flags '-flto*'
# Use system's Python environment
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
# Show flags we will use
einfo "Build CFLAGS: ${CFLAGS}"
einfo "Build CXXFLAGS: ${CXXFLAGS}"
einfo "Build LDFLAGS: ${LDFLAGS}"
einfo "Build RUSTFLAGS: ${RUSTFLAGS}"
# Forcing system-icu allows us to skip patching bundled ICU for PPC
# and other minor arches
ECONF_SOURCE="${S}" \
econf \
${myeconfargs[@]} \
XARGS="${EPREFIX}/usr/bin/xargs"
}
src_compile() {
cd "${MOZJS_BUILDDIR}" || die
default
}
src_test() {
if "${MOZJS_BUILDDIR}/js/src/js" -e 'print("Hello world!")'; then
einfo "Smoke-test successful, continuing with full test suite"
else
die "Smoke-test failed: did interpreter initialization fail?"
fi
cp "${FILESDIR}"/spidermonkey-${SLOT}-known-test-failures.txt "${T}"/known_failures.list || die
if [[ $(tc-endian) == "big" ]] ; then
echo "non262/extensions/clone-errors.js" >> "${T}"/known_failures.list
echo "test262/built-ins/Date/UTC/fp-evaluation-order.js" >> "${T}"/known_failures.list
echo "test262/built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-other-type.js" >> "${T}"/known_failures.list
fi
${EPYTHON} \
"${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
--exclude-file="${T}"/known_failures.list \
"${MOZJS_BUILDDIR}"/js/src/js \
|| die
if use jit ; then
${EPYTHON} \
"${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
--exclude-file="${T}"/known_failures.list \
"${MOZJS_BUILDDIR}"/js/src/js basic \
|| die
fi
}
src_install() {
cd "${MOZJS_BUILDDIR}" || die
default
# fix soname links
pushd "${ED}"/usr/$(get_libdir) &>/dev/null || die
mv lib${MY_PN}-${MY_MAJOR}.so lib${MY_PN}-${MY_MAJOR}.so.0.0.0 || die
ln -s lib${MY_PN}-${MY_MAJOR}.so.0.0.0 lib${MY_PN}-${MY_MAJOR}.so.0 || die
ln -s lib${MY_PN}-${MY_MAJOR}.so.0 lib${MY_PN}-${MY_MAJOR}.so || die
popd &>/dev/null || die
# remove unneeded files
rm \
"${ED}"/usr/bin/js${MY_MAJOR}-config \
"${ED}"/usr/$(get_libdir)/libjs_static.ajs \
|| die
# fix permissions
chmod -x \
"${ED}"/usr/$(get_libdir)/pkgconfig/*.pc \
"${ED}"/usr/include/mozjs-${MY_MAJOR}/js-config.h \
|| die
}

Binary file not shown.

@ -1,2 +1 @@
DIST dqlite-1.13.0.tar.gz 190627 BLAKE2B 02880a112a7b070ee19653b60f19dbb49030b1d0d1bd3671577137ce281fd1af9c135f138d692fcc1c14592972cc9321198b3a2003fa0e81829c8ae462604964 SHA512 da56c622c75dcdc1df814d2b7acfeb08cb046fa7b74691d63575ddb3d30f91b441b8f58cc72466872b4c5e0028706b6505846d8f3d06583be844baefdd85f8a9
DIST dqlite-1.14.0.tar.gz 190757 BLAKE2B 5304ff10134c7775c4475f77bbe60cc6892cc35c3f2a7b4813743cd27fc1176a1d513d66ebf22b47ed7e83fa833be1408f44f781fbd8200bfd3f4465ea1d6011 SHA512 4305b289903766f00c26e278cce3f761c778b67105a6d7e51e66cc1cbf85564fd41f27689b6895c6f182968d851e10a40d052570d55e22007e9eb5c2929dabd9

@ -1,46 +0,0 @@
# Copyright 2020-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
DESCRIPTION="Embeddable, replicated and fault tolerant SQL engine"
HOMEPAGE="https://dqlite.io/ https://github.com/canonical/dqlite"
SRC_URI="https://github.com/canonical/dqlite/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-3-with-linking-exception"
SLOT="0/1.12.0"
KEYWORDS="amd64 ~arm64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="dev-db/sqlite:3
dev-libs/libuv:=
>=dev-libs/raft-0.16.0"
DEPEND="${RDEPEND}
test? ( >=dev-libs/raft-0.13.0[lz4,test] )"
BDEPEND="virtual/pkgconfig"
PATCHES=( "${FILESDIR}"/dqlite-1.12.0-disable-werror.patch )
src_prepare() {
default
eautoreconf
}
src_configure() {
local myeconfargs=(
--disable-backtrace
--disable-debug
--disable-sanitize
--disable-static
)
econf "${myeconfargs[@]}"
}
src_install() {
default
find "${ED}" -name '*.la' -delete || die
}

@ -1 +1,2 @@
DIST hyperscan-5.4.0.tar.gz 1844963 BLAKE2B 1a5af88655854b4c1ec58e6663b6c9c4b6fca0aa9d3e4daad3992daf911b8f359f48a95b65e4f05c71aa644e0271471d016fafaca05d547b838a9c52ea016e27 SHA512 cfec3f43b9e8b3fbb2e761927f3a173c1230f2688da710ec7708f2941ce6f550a1d3cb48b0b0e2ccf709807390117a7e40047cb99190bcc341f37eb3da13ae62
DIST hyperscan-5.4.1.tar.gz 1848831 BLAKE2B 8be2a05de04a8f32c723e35be16923470ef7dbda830cf0a08c87bfcaff49564f9104f1b48b26a93a7fb157ac74e531841ea43db75bbfe3f836b98e748ccdfd45 SHA512 e9404946287e32604798dc8f9415efe8a47e464cf6e29e5c534ca6074f3674d2d38d4600787d3035ba2898a40e5048fbcd03e23f387ce43f81de4b6c63f70035

@ -0,0 +1,57 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit cmake flag-o-matic python-any-r1
DESCRIPTION="High-performance regular expression matching library"
SRC_URI="https://github.com/intel/hyperscan/archive/v${PV}.tar.gz -> ${P}.tar.gz"
HOMEPAGE="
https://www.hyperscan.io/
https://github.com/intel/hyperscan
"
LICENSE="BSD"
SLOT="0"
KEYWORDS="-* ~amd64 ~x86"
IUSE="cpu_flags_x86_avx2 cpu_flags_x86_ssse3"
RDEPEND="dev-libs/boost:="
DEPEND="${RDEPEND}"
BDEPEND="
${PYTHON_DEPS}
dev-util/ragel
"
# We can't default this to on as it's against the expectation of
# how CPU_FLAGS_* work for users.
REQUIRED_USE="cpu_flags_x86_ssse3"
src_prepare() {
# Respect user -O flags
sed -i '/set(OPT_CX*_FLAG/d' CMakeLists.txt || die
# upstream workaround
append-cxxflags -Wno-redundant-move
cmake_src_prepare
}
src_configure() {
use cpu_flags_x86_ssse3 && append-flags -mssse3
use cpu_flags_x86_avx2 && append-flags -mavx2
local mycmakeargs=(
-DBUILD_SHARED_LIBS=ON
-DBUILD_STATIC_AND_SHARED=OFF
-DBUILD_EXAMPLES=OFF
-DFAT_RUNTIME=false
)
cmake_src_configure
}
src_test() {
"${BUILD_DIR}"/bin/unit-hyperscan || die
}

@ -1,2 +1,3 @@
DIST intel-compute-runtime-22.43.24595.35.tar.gz 5880869 BLAKE2B c9d4a16e9908427b69154a5a6550e4eec47bcce4fa811a9121c54de75bcd3e17e1d4cff8b1fa7486b2ffe0dd01f7fae06e5fd3b1d241378dcf521d1f8822bedb SHA512 0aab6cc16f7d523819c9a9eb58fba916c3b06c4be450c94cfc30b36038c768d6ddb79937ded7d9df68b7bdc97679756450c1c54844caed1655ddc688a6ae8a54
DIST intel-compute-runtime-22.49.25018.24.tar.gz 5991968 BLAKE2B 06589bd63d3cfe35ed0a1af3a94c9e12cc2588143dcf52a371b71f827ca006989a74edabb58b6ecc0a08cfa850f582e47e441ee8d9bffdf672653e8a7809375e SHA512 9c0cc541cd635063ed49e8f807c0a81035abd46367deb43fe7187c00c017f2609cd9c5e55d0b40bb3cb54d05f01306df3a843f3b35683b0ab732881b5192182f
DIST intel-compute-runtime-22.53.25242.13.tar.gz 6084532 BLAKE2B a32adbe173ae49f5ac45968319475a7c23590ffd138a09ebb4f899971cdbabe0bccd1919364e7518f9a15cd9123274272929d7f5fc2053287376ded621c105c0 SHA512 48a69ec8c7f5f7a713c4389af167c11aaf780506950fee4e5ab47b6cc9f80bf6de3408d3dfca3d6141067a6d6ce76a1c6a3a9ba1caaa11c70b216ef2dfe7a07f

@ -0,0 +1,82 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CMAKE_BUILD_TYPE="Release"
MY_PN="${PN/intel-/}"
MY_P="${MY_PN}-${PV}"
inherit cmake flag-o-matic
DESCRIPTION="Intel Graphics Compute Runtime for oneAPI Level Zero and OpenCL Driver"
HOMEPAGE="https://github.com/intel/compute-runtime"
SRC_URI="https://github.com/intel/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${MY_P}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+l0 +vaapi"
RDEPEND=">=media-libs/gmmlib-22.1.7:="
DEPEND="
${DEPEND}
>=dev-libs/intel-metrics-library-0_pre20220930:=
dev-libs/libnl:3
dev-libs/libxml2:2
>=dev-util/intel-graphics-compiler-1.0.12812.26
>=dev-util/intel-graphics-system-controller-0.8.7:=
media-libs/mesa
>=virtual/opencl-3
l0? ( >=dev-libs/level-zero-1.9.4:= )
vaapi? (
x11-libs/libdrm[video_cards_intel]
media-libs/libva
)
"
BDEPEND="virtual/pkgconfig"
DOCS=( "README.md" "FAQ.md" )
PATCHES=(
"${FILESDIR}/${PN}-22.24.23453-remove-fortify-sources.patch"
"${FILESDIR}/${PN}-22.49.25018.24-level-zero-1.9.patch"
)
src_prepare() {
# Remove '-Werror' from default
sed -e '/Werror/d' -i CMakeLists.txt || die
cmake_src_prepare
}
src_configure() {
# See https://github.com/intel/compute-runtime/issues/531
filter-flags -flto=* -flto
local mycmakeargs=(
-DCCACHE_ALLOWED="OFF"
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
-DCMAKE_INSTALL_LIBDIR="$(get_libdir)"
-DBUILD_WITH_L0="$(usex l0)"
-DDISABLE_LIBVA="$(usex !vaapi)"
-DNEO__METRICS_LIBRARY_INCLUDE_DIR="${ESYSROOT}/usr/include"
-DKHRONOS_GL_HEADERS_DIR="${ESYSROOT}/usr/include"
-DOCL_ICD_VENDORDIR="${EPREFIX}/etc/OpenCL/vendors"
-DSUPPORT_DG1="ON"
-Wno-dev
# See https://github.com/intel/intel-graphics-compiler/issues/204
# -DNEO_DISABLE_BUILTINS_COMPILATION="ON"
# If enabled, tests are automatically run during
# the compile phase and we cannot run them because
# they require permissions to access the hardware.
-DSKIP_UNIT_TESTS="1"
)
cmake_src_configure
}

@ -1 +1,2 @@
DIST libxmlb-0.3.10.tar.gz 122004 BLAKE2B e51caacff96aa41029314c5d8a13503713fb813b2512c322214e309a5aebed2b6cd5f8d24412240dbc57d500b7186b6760a82451063eeb1f1011c0b450f6ad99 SHA512 05907c3dd2fa2ab67580e40fb573f27d9d47053fef5e23eb11ed887163ae0194b0f9b590e758fa76501098a5f261a48d9cd94003af828f5a18c61d89a9ec05bb
DIST libxmlb-0.3.11.tar.gz 124796 BLAKE2B 7f54e7c6370e0f3ebb9f94c9859f3d211127caa7d4d3ffbc2d11378ec5f0ee0cb508a1697635c30187643acdba279d493f9054d4f2a54f93ede1785f79b378ce SHA512 cebbfe1372d933a212a46ed95169099a642c1c48914b170c9f1de51fb017dccb22ca8dc9e2108fabb92fd0519cfba58da88b10bccc74a49a3e9e7adb9a1d9872

@ -0,0 +1,64 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit meson python-any-r1
DESCRIPTION="Library to help create and query binary XML blobs"
HOMEPAGE="https://github.com/hughsie/libxmlb"
SRC_URI="https://github.com/hughsie/libxmlb/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2.1+"
SLOT="0/2" # libxmlb.so version
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
IUSE="doc introspection stemmer test"
RESTRICT="!test? ( test )"
RDEPEND="
app-arch/xz-utils
app-arch/zstd:=
dev-libs/glib:2
sys-apps/util-linux
stemmer? ( dev-libs/snowball-stemmer:= )
"
DEPEND="
${RDEPEND}
doc? ( dev-util/gtk-doc )
introspection? ( dev-libs/gobject-introspection )
"
BDEPEND="
${PYTHON_DEPS}
>=dev-util/meson-0.47.0
virtual/pkgconfig
introspection? (
$(python_gen_any_dep 'dev-python/setuptools[${PYTHON_USEDEP}]')
)
"
PATCHES=(
"${FILESDIR}"/${PN}-0.3.9-no_installed_tests.patch
)
python_check_deps() {
python_has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
}
pkg_setup() {
python-any-r1_pkg_setup
}
src_configure() {
local emesonargs=(
$(meson_use doc gtkdoc)
$(meson_use introspection)
$(meson_use stemmer)
$(meson_use test tests)
)
meson_src_configure
}

@ -1,156 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools toolchain-funcs multilib-minimal
MIN_PV="$(ver_cut 2)"
DESCRIPTION="Netscape Portable Runtime"
HOMEPAGE="https://www.mozilla.org/projects/nspr/"
SRC_URI="https://archive.mozilla.org/pub/nspr/releases/v${PV}/src/${P}.tar.gz"
LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris ~x86-solaris"
IUSE="debug"
MULTILIB_CHOST_TOOLS=(
/usr/bin/nspr-config
)
PATCHES=(
"${FILESDIR}"/${PN}-4.23-prtime.patch
"${FILESDIR}"/${PN}-4.7.1-solaris.patch
"${FILESDIR}"/${PN}-4.10.6-solaris.patch
"${FILESDIR}"/${PN}-4.8.4-darwin-install_name.patch
"${FILESDIR}"/${PN}-4.8.9-link-flags.patch
# We do not need to pass -L$libdir via nspr-config --libs
"${FILESDIR}"/${PN}-4.9.5_nspr_config.patch
)
QA_CONFIGURE_OPTIONS="--disable-static"
src_prepare() {
cd "${S}"/nspr || die
default
use elibc_musl && eapply "${FILESDIR}"/${PN}-4.21-ipv6-musl-support.patch
# rename configure.in to configure.ac for new autotools compatibility
if [[ -e "${S}"/nspr/configure.in ]] ; then
einfo "Renaming configure.in to configure.ac"
mv "${S}"/nspr/configure.{in,ac} || die
else
elog "configure.in rename logic can be removed from ebuild."
fi
# We must run eautoconf to regenerate configure
eautoconf
# make sure it won't find Perl out of Prefix
sed -i -e "s/perl5//g" "${S}"/nspr/configure || die
# Respect LDFLAGS
sed -i -e 's/\$(MKSHLIB) \$(OBJS)/\$(MKSHLIB) \$(LDFLAGS) \$(OBJS)/g' \
"${S}"/nspr/config/rules.mk || die
}
multilib_src_configure() {
# We use the standard BUILD_xxx but nspr uses HOST_xxx
tc-export_build_env BUILD_CC
export HOST_CC=${BUILD_CC} HOST_CFLAGS=${BUILD_CFLAGS} HOST_LDFLAGS=${BUILD_LDFLAGS}
tc-export AR AS CC CXX RANLIB
[[ ${CBUILD} != ${CHOST} ]] \
&& export CROSS_COMPILE=1 \
|| unset CROSS_COMPILE
local myconf=(
--libdir="${EPREFIX}/usr/$(get_libdir)"
$(use_enable debug)
$(use_enable !debug optimize)
)
# The configure has some fancy --enable-{{n,x}32,64bit} switches
# that trigger some code conditional to platform & arch. This really
# matters for the few common arches (x86, ppc) but we pass a little
# more of them to be future-proof.
# use ABI first, this will work for most cases
case "${ABI}" in
alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86) ;;
n32) myconf+=( --enable-n32 );;
x32) myconf+=( --enable-x32 );;
s390x|*64) myconf+=( --enable-64bit );;
default) # no abi actually set, fall back to old check
einfo "Running a short build test to determine 64bit'ness"
echo > "${T}"/test.c || die
${CC} ${CFLAGS} ${CPPFLAGS} -c "${T}"/test.c -o "${T}"/test.o || die
case $(file "${T}"/test.o) in
*32-bit*x86-64*) myconf+=( --enable-x32 );;
*64-bit*|*ppc64*|*x86_64*) myconf+=( --enable-64bit );;
*32-bit*|*ppc*|*i386*) ;;
*) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";;
esac ;;
*) ;;
esac
# Ancient autoconf needs help finding the right tools.
LC_ALL="C" ECONF_SOURCE="${S}/nspr" \
ac_cv_path_AR="${AR}" \
ac_cv_path_AS="${AS}" \
econf "${myconf[@]}"
}
multilib_src_test() {
# https://firefox-source-docs.mozilla.org/nspr/running_nspr_tests.html
cd "${BUILD_DIR}/pr/tests" || die
einfo "Building tests"
emake
einfo "Running test suite"
../../../${P}/${PN}/pr/tests/runtests.pl | tee "${T}"/${ABI}-tests.log
# Needed to check if runtests.pl itself or the tee (somehow) failed
# (can't use die with pipes to check each component)
[[ ${PIPESTATUS[@]} == "0 0" ]] || die "Tests failed to run!"
local known_failures=(
# network-sandbox related?
cltsrv
# network-sandbox related?
gethost
)
local known_failure
for known_failure in "${known_failures[@]}" ; do
sed -i -e "/${known_failure}.*FAILED/d" "${T}"/${ABI}-tests.log || die
done
# But to actually check the test results, we examine the log.
if grep -q "FAILED" "${T}"/${ABI}-tests.log ; then
die "Test failure for ${ABI}!"
fi
}
multilib_src_install() {
# Their build system is royally confusing, as usual
MINOR_VERSION=${MIN_PV} # Used for .so version
emake DESTDIR="${D}" install
einfo "removing static libraries as upstream has requested!"
rm "${ED}"/usr/$(get_libdir)/*.a || die "failed to remove static libraries."
# install nspr-config
dobin config/nspr-config
# Remove stupid files in /usr/bin
rm "${ED}"/usr/bin/prerr.properties || die
# This is used only to generate prerr.c and prerr.h at build time.
# No other projects use it, and we don't want to depend on perl.
# Talked to upstream and they agreed w/punting.
rm "${ED}"/usr/bin/compile-et.pl || die
}

@ -1,3 +1,2 @@
DIST nss-pem-1.0.8.tar.xz 41840 BLAKE2B 6a210517b6f70a6a1a0351970811500c1364c6cbb0159dc4b7b3edeff7c01d3b643a5a4a4946a350a1a49898570141acda1e913fdc79d750339f5021445e61c7 SHA512 9fd1fa9203fd707668506752be6f99d26e53281b8b95d7c3020da33ab8cb287890b66c8a59f1ee952fe8d2a8a350d7c5b4214a523a2e1762e48989f02c408b33
DIST nss-pem-1.0.9.tar.xz 41848 BLAKE2B 606c8db9f8f8b6f46dfcc1128903d7139ba7b9d0062b7137d78ab7ba8af1877d1a6f9e96c139715dcdaf76a6ef268031692395d80efc00db719a5984edfda9e4 SHA512 c656e2f6ab1a0ab9448ef9efd70168f17901f585b53237f3dae493a1a40f8c90dfeb25b81e46472e479bfa3f443994669b5614f124cd828224227b7b8326f6f3
DIST nss-pem-1.1.0.tar.xz 41928 BLAKE2B 99dae611fd8caa58947fb518a68462c1fc779fd19bc3ba8d81aa81bc167b9ecb77830d9dd0b883996b2b62a49809f9830a989ae39facc3d421266c17af1c28c7 SHA512 0fe2b4a3f1fe1746845ba51fa246b7c21b3197e7533fa77851eba2c4163e07b53114ee84f8ad493542ffc00bc1dfe2bf93524f4fead4e3d7b1eed600f73c048c

@ -1,29 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake-multilib
DESCRIPTION="PEM file reader for Network Security Services (NSS)"
HOMEPAGE="https://github.com/kdudka/nss-pem"
SRC_URI="https://github.com/kdudka/${PN}/releases/download/${P}/${P}.tar.xz"
LICENSE="MPL-1.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-solaris"
DEPEND="dev-libs/nss
dev-libs/nspr"
RDEPEND="${DEPEND}"
BDEPEND="dev-libs/nss
virtual/pkgconfig"
S="${WORKDIR}/${P}/src"
multilib_src_configure() {
local mycmakeargs=(
-DLIB_INSTALL_DIR="$(get_libdir)"
)
cmake_src_configure
}

@ -1,4 +1,3 @@
DIST nss-3.79.2.tar.gz 84825187 BLAKE2B 9589095a0f3af5201662fe96ba4dac73c661db3abde534941ea61d597dce1016dc06f8559e26fafc940f2b123987381e1faa22ff6a995ef3cc0a9dc4ebe7a4ad SHA512 52ca7574d2bb6e2fd874ac40f3e75d58135b103d8bd4b964a9262b5c302b4668ff7c8f5dabbef46e413fd72faeddc44057bc7b489946813331cc9a481d078181
DIST nss-3.87.tar.gz 71435408 BLAKE2B 0d69e18b1e2c4ccfc86db8f3afba94d5000e8ab2a4e766eb6f99f13f57d78b62dd711a0f5f70a24378a3cf1e435cc8ecb7e6fbeae18d5db0176660a0ea35dac2 SHA512 4ec7b94e537df109638b821f3a7e3b7bf31d89c3739a6e4c85cad4fab876390ae482971d6f66198818400f467661e86f39dc1d2a4a88077fd81e3a0b7ed64110
DIST nss-3.88.1.tar.gz 71607211 BLAKE2B ff84d3153a01519a52e83be5327453d8e6a81e1f62ccd69906b549fe42ec5ebf075b403395a67bc75f3c7f7dd33ef49f3b1f33558652ff75ee87e2970b2e06a4 SHA512 d15289803a4c3caa1b7a8872b761a95b4f571688c8b8ffaf2a1478e032a356fbcf8a9239ebe1777561503329f63dd237384e1d8af9ca70fb48b40e70954b455a
DIST nss-cacert-class1-class3-r2.patch 21925 BLAKE2B 7627ff9a09f084c19d72d0490676865e3cab3ca7c920ae1ce4bea2db664f37fd0aa84fcda919809a516891ab2a62e2e7a43a9d6ada4c231adfe4c216525fac7d SHA512 1ce6ff9ab310aaca9005eafb461338b291df8523cc7044e096cd75774ce746c26eed19ec6bb2643c6c67f94650f2f309463492d80a90568f38ce2557f8ada2f4

@ -1,394 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic multilib toolchain-funcs multilib-minimal
NSPR_VER="4.35"
RTM_NAME="NSS_${PV//./_}_RTM"
DESCRIPTION="Mozilla's Network Security Services library that implements PKI support"
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS"
SRC_URI="https://archive.mozilla.org/pub/security/nss/releases/${RTM_NAME}/src/${P}.tar.gz
cacert? ( https://dev.gentoo.org/~whissi/dist/ca-certificates/nss-cacert-class1-class3-r2.patch )"
LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
IUSE="cacert test +utils cpu_flags_ppc_altivec cpu_flags_ppc_vsx"
RESTRICT="!test? ( test )"
# pkg-config called by nss-config -> virtual/pkgconfig in RDEPEND
RDEPEND="
>=dev-libs/nspr-${NSPR_VER}[${MULTILIB_USEDEP}]
>=dev-db/sqlite-3.8.2[${MULTILIB_USEDEP}]
>=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
virtual/pkgconfig
"
DEPEND="${RDEPEND}"
BDEPEND="dev-lang/perl"
S="${WORKDIR}/${P}/${PN}"
MULTILIB_CHOST_TOOLS=(
/usr/bin/nss-config
)
PATCHES=(
# Custom changes for gentoo
"${FILESDIR}/${PN}-3.53-gentoo-fixups.patch"
"${FILESDIR}/${PN}-3.21-gentoo-fixup-warnings.patch"
"${FILESDIR}/${PN}-3.23-hppa-byte_order.patch"
)
QA_PKGCONFIG_VERSION="${PV}.0"
src_prepare() {
default
if use cacert ; then
eapply -p2 "${DISTDIR}"/nss-cacert-class1-class3-r2.patch
fi
pushd coreconf >/dev/null || die
# hack nspr paths
echo 'INCLUDES += -I$(DIST)/include/dbm' \
>> headers.mk || die "failed to append include"
# modify install path
sed -e '/CORE_DEPTH/s:SOURCE_PREFIX.*$:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' \
-i source.mk || die
# Respect LDFLAGS
sed -i -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/g' rules.mk
# Workaround make-4.4's change to sub-make, bmo#1800237, bgo#882069
sed -i -e "s/^CPU_TAG = _.*/CPU_TAG = _$(nssarch)/" Linux.mk || die
popd >/dev/null || die
# Fix pkgconfig file for Prefix
sed -i -e "/^PREFIX =/s:= /usr:= ${EPREFIX}/usr:" \
config/Makefile || die
# use host shlibsign if need be #436216
if tc-is-cross-compiler ; then
sed -i \
-e 's:"${2}"/shlibsign:shlibsign:' \
cmd/shlibsign/sign.sh || die
fi
# dirty hack
sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../freebl/\$(OBJDIR):" \
lib/ssl/config.mk || die
sed -i -e "/CRYPTOLIB/s:\$(SOFTOKEN_LIB_DIR):../../lib/freebl/\$(OBJDIR):" \
cmd/platlibs.mk || die
multilib_copy_sources
strip-flags
}
multilib_src_configure() {
# Ensure we stay multilib aware
sed -i -e "/@libdir@/ s:lib64:$(get_libdir):" config/Makefile || die
}
nssarch() {
# Most of the arches are the same as $ARCH
local t=${1:-${CHOST}}
case ${t} in
*86*-pc-solaris2*) echo "i86pc" ;;
aarch64*) echo "aarch64" ;;
hppa*) echo "parisc" ;;
i?86*) echo "i686" ;;
x86_64*) echo "x86_64" ;;
*) tc-arch ${t} ;;
esac
}
nssbits() {
local cc cppflags="${1}CPPFLAGS" cflags="${1}CFLAGS"
if [[ ${1} == BUILD_ ]]; then
cc=$(tc-getBUILD_CC)
else
cc=$(tc-getCC)
fi
echo > "${T}"/test.c || die
${cc} ${!cppflags} ${!cflags} -c "${T}"/test.c -o "${T}/${1}test.o" || die
case $(file "${T}/${1}test.o") in
*32-bit*x86-64*) echo USE_X32=1;;
*64-bit*|*ppc64*|*x86_64*) echo USE_64=1;;
*32-bit*|*ppc*|*i386*) ;;
*) die "Failed to detect whether ${cc} builds 64bits or 32bits, disable distcc if you're using it, please";;
esac
}
multilib_src_compile() {
# use ABI to determine bit'ness, or fallback if unset
local buildbits mybits
case "${ABI}" in
n32) mybits="USE_N32=1";;
x32) mybits="USE_X32=1";;
s390x|*64) mybits="USE_64=1";;
${DEFAULT_ABI})
einfo "Running compilation test to determine bit'ness"
mybits=$(nssbits)
;;
esac
# bitness of host may differ from target
if tc-is-cross-compiler; then
buildbits=$(nssbits BUILD_)
fi
local makeargs=(
CC="$(tc-getCC)"
CCC="$(tc-getCXX)"
AR="$(tc-getAR) rc \$@"
RANLIB="$(tc-getRANLIB)"
OPTIMIZER=
${mybits}
disable_ckbi=0
)
# Take care of nspr settings #436216
local myCPPFLAGS="${CPPFLAGS} $($(tc-getPKG_CONFIG) nspr --cflags)"
unset NSPR_INCLUDE_DIR
export NSS_ALLOW_SSLKEYLOGFILE=1
export NSS_ENABLE_WERROR=0 #567158
export BUILD_OPT=1
export NSS_USE_SYSTEM_SQLITE=1
export NSDISTMODE=copy
export FREEBL_NO_DEPEND=1
export FREEBL_LOWHASH=1
export NSS_SEED_ONLY_DEV_URANDOM=1
export USE_SYSTEM_ZLIB=1
export ZLIB_LIBS=-lz
export ASFLAGS=""
# Fix build failure on arm64
export NS_USE_GCC=1
# Detect compiler type and set proper environment value
if tc-is-gcc; then
export CC_IS_GCC=1
elif tc-is-clang; then
export CC_IS_CLANG=1
fi
export NSS_DISABLE_GTESTS=$(usex !test 1 0)
# explicitly disable altivec/vsx if not requested
# https://bugs.gentoo.org/789114
case ${ARCH} in
ppc*)
use cpu_flags_ppc_altivec || export NSS_DISABLE_ALTIVEC=1
use cpu_flags_ppc_vsx || export NSS_DISABLE_CRYPTO_VSX=1
;;
esac
local d
# Build the host tools first.
LDFLAGS="${BUILD_LDFLAGS}" \
XCFLAGS="${BUILD_CFLAGS}" \
NSPR_LIB_DIR="${T}/fakedir" \
emake -C coreconf \
CC="$(tc-getBUILD_CC)" \
${buildbits-${mybits}}
makeargs+=( NSINSTALL="${PWD}/$(find -type f -name nsinstall)" )
# Then build the target tools.
for d in . lib/dbm ; do
CPPFLAGS="${myCPPFLAGS}" \
XCFLAGS="${CFLAGS} ${CPPFLAGS}" \
NSPR_LIB_DIR="${T}/fakedir" \
emake "${makeargs[@]}" -C ${d} OS_TEST="$(nssarch)"
done
}
multilib_src_test() {
einfo "Tests can take a *long* time, especially on a multilib system."
einfo "30-45+ minutes per lib configuration. Bug #852755"
# https://www.linuxfromscratch.org/blfs/view/svn/postlfs/nss.html
# https://firefox-source-docs.mozilla.org/security/nss/legacy/nss_sources_building_testing/index.html#running_the_nss_test_suite
# https://www-archive.mozilla.org/projects/security/pki/nss/testnss_32.html (older)
export BUILD_OPT=1
export HOST="localhost"
export DOMSUF="localdomain"
export USE_IP=TRUE
export IP_ADDRESS="127.0.0.1"
NSINSTALL="${PWD}/$(find -type f -name nsinstall)"
cd "${BUILD_DIR}"/tests || die
# Hack to get current objdir (prefixed dir where built binaries are)
# Without this, at least multilib tests go wrong when building the amd64 variant
# after x86.
local objdir=$(find "${BUILD_DIR}"/dist -maxdepth 1 -iname Linux* | rev | cut -d/ -f1 | rev)
# Can tweak to a subset of tests in future if we need to, but would prefer not
OBJDIR="${objdir}" DIST="${BUILD_DIR}/dist" MOZILLA_ROOT="${BUILD_DIR}" ./all.sh || die
}
# Altering these 3 libraries breaks the CHK verification.
# All of the following cause it to break:
# - stripping
# - prelink
# - ELF signing
# http://www.mozilla.org/projects/security/pki/nss/tech-notes/tn6.html
# Either we have to NOT strip them, or we have to forcibly resign after
# stripping.
#local_libdir="$(get_libdir)"
#export STRIP_MASK="
# */${local_libdir}/libfreebl3.so*
# */${local_libdir}/libnssdbm3.so*
# */${local_libdir}/libsoftokn3.so*"
export NSS_CHK_SIGN_LIBS="freebl3 nssdbm3 softokn3"
generate_chk() {
local shlibsign="$1"
local libdir="$2"
einfo "Resigning core NSS libraries for FIPS validation"
shift 2
local i
for i in ${NSS_CHK_SIGN_LIBS} ; do
local libname=lib${i}.so
local chkname=lib${i}.chk
"${shlibsign}" \
-i "${libdir}"/${libname} \
-o "${libdir}"/${chkname}.tmp \
&& mv -f \
"${libdir}"/${chkname}.tmp \
"${libdir}"/${chkname} \
|| die "Failed to sign ${libname}"
done
}
cleanup_chk() {
local libdir="$1"
shift 1
local i
for i in ${NSS_CHK_SIGN_LIBS} ; do
local libfname="${libdir}/lib${i}.so"
# If the major version has changed, then we have old chk files.
[ ! -f "${libfname}" -a -f "${libfname}.chk" ] \
&& rm -f "${libfname}.chk"
done
}
multilib_src_install() {
pushd dist >/dev/null || die
dodir /usr/$(get_libdir)
cp -L */lib/*$(get_libname) "${ED}"/usr/$(get_libdir) || die "copying shared libs failed"
local i
for i in crmf freebl nssb nssckfw ; do
cp -L */lib/lib${i}.a "${ED}"/usr/$(get_libdir) || die "copying libs failed"
done
# Install nss-config and pkgconfig file
dodir /usr/bin
cp -L */bin/nss-config "${ED}"/usr/bin || die
dodir /usr/$(get_libdir)/pkgconfig
cp -L */lib/pkgconfig/nss.pc "${ED}"/usr/$(get_libdir)/pkgconfig || die
# create an nss-softokn.pc from nss.pc for libfreebl and some private headers
# bug 517266
sed -e 's#Libs:#Libs: -lfreebl#' \
-e 's#Cflags:#Cflags: -I${includedir}/private#' \
*/lib/pkgconfig/nss.pc >"${ED}"/usr/$(get_libdir)/pkgconfig/nss-softokn.pc \
|| die "could not create nss-softokn.pc"
# all the include files
insinto /usr/include/nss
doins public/nss/*.{h,api}
insinto /usr/include/nss/private
doins private/nss/{blapi,alghmac,cmac}.h
popd >/dev/null || die
local f nssutils
# Always enabled because we need it for chk generation.
nssutils=( shlibsign )
if multilib_is_native_abi ; then
if use utils; then
# The tests we do not need to install.
#nssutils_test="bltest crmftest dbtest dertimetest
#fipstest remtest sdrtest"
# checkcert utils has been removed in nss-3.22:
# https://bugzilla.mozilla.org/show_bug.cgi?id=1187545
# https://hg.mozilla.org/projects/nss/rev/df1729d37870
# certcgi has been removed in nss-3.36:
# https://bugzilla.mozilla.org/show_bug.cgi?id=1426602
nssutils+=(
addbuiltin
atob
baddbdir
btoa
certutil
cmsutil
conflict
crlutil
derdump
digest
makepqg
mangle
modutil
multinit
nonspr10
ocspclnt
oidcalc
p7content
p7env
p7sign
p7verify
pk11mode
pk12util
pp
rsaperf
selfserv
signtool
signver
ssltap
strsclnt
symkeyutil
tstclnt
vfychain
vfyserv
)
# install man-pages for utils (bug #516810)
doman doc/nroff/*.1
fi
pushd dist/*/bin >/dev/null || die
for f in ${nssutils[@]}; do
dobin ${f}
done
popd >/dev/null || die
fi
}
pkg_postinst() {
multilib_pkg_postinst() {
# We must re-sign the libraries AFTER they are stripped.
local shlibsign="${EROOT}/usr/bin/shlibsign"
# See if we can execute it (cross-compiling & such). #436216
"${shlibsign}" -h >&/dev/null
if [[ $? -gt 1 ]] ; then
shlibsign="shlibsign"
fi
generate_chk "${shlibsign}" "${EROOT}"/usr/$(get_libdir)
}
multilib_foreach_abi multilib_pkg_postinst
}
pkg_postrm() {
multilib_pkg_postrm() {
cleanup_chk "${EROOT}"/usr/$(get_libdir)
}
multilib_foreach_abi multilib_pkg_postrm
}

@ -1,2 +1 @@
DIST raft-0.16.0.tar.gz 347565 BLAKE2B 8452feed5bffefcc8087e62cdd48bda05be6a4068fbffcb0621779ab349902015be9095f252a253d6584faf4bfc6c8daefd97a130e7a9f8ef682ca03efd70dc0 SHA512 cee4a2f6fd9a0a16b591d46aa9df2104a50f2b62068eb27017e3347fc28a6b3cd3aef6bfabe3acc7e72844406b4b71aff1d1e088d08e83d6d2f5744876a681c8
DIST raft-0.17.1.tar.gz 354331 BLAKE2B d1be3eb4139422dab8126879d2ba0782e8635a60ce9752f4389f79dd2238021d9679d3b5f799c9627921c954a4395cdff139ff41f8145ebc43190f2c4aa3e5a7 SHA512 20e2b4a144a597b77bcb31e8b22355725142b14fb50e20b33509e7b0dd10aa20d08501b66e836c659e9aa492184db71ea9e53a45fe4b908b1464eb94431154db

@ -1,55 +0,0 @@
# Copyright 2020-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
DESCRIPTION="C implementation of the Raft consensus protocol"
HOMEPAGE="https://github.com/canonical/raft"
SRC_URI="https://github.com/canonical/raft/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-3-with-linking-exception"
SLOT="0"
KEYWORDS="amd64 ~arm64 ~x86"
IUSE="lz4 test zfs"
RESTRICT="!test? ( test )"
DEPEND="dev-libs/libuv:=
lz4? ( app-arch/lz4:= )"
RDEPEND="${DEPEND}"
BDEPEND="virtual/pkgconfig"
PATCHES=(
"${FILESDIR}"/raft-0.10.0-toggle-zfs.patch
"${FILESDIR}"/raft-0.11.3-disable-automagic-check-for-lz4.patch
)
src_prepare() {
default
eautoreconf
}
src_configure() {
local myeconfargs=(
--enable-uv
--disable-benchmark
--disable-debug
--disable-example
--disable-sanitize
--disable-static
$(use_enable lz4)
$(use_enable test fixture)
$(use_with zfs)
)
econf "${myeconfargs[@]}"
}
src_install() {
default
find "${ED}" -name '*.la' -delete || die
}

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -44,6 +44,7 @@ src_configure() {
local mycmakeargs=(
-DDOC_INSTALL_DIR="${EPREFIX}/usr/share/doc/${PF}"
-DLIB_INSTALL_DIR="${EPREFIX}/usr/$(get_libdir)"
-DRAPIDJSON_BUILD_CXX11=OFF # latest gtest requires C++14 or later
-DRAPIDJSON_BUILD_DOC=$(usex doc)
-DRAPIDJSON_BUILD_EXAMPLES=$(usex examples)
-DRAPIDJSON_BUILD_TESTS=$(usex test)

@ -1,4 +1,4 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -45,6 +45,8 @@ src_configure() {
local mycmakeargs=(
-DDOC_INSTALL_DIR="${EPREFIX}/usr/share/doc/${PF}"
-DLIB_INSTALL_DIR="${EPREFIX}/usr/$(get_libdir)"
-DRAPIDJSON_BUILD_CXX11=OFF # latest gtest requires C++14 or later
-DRAPIDJSON_BUILD_CXX17=ON
-DRAPIDJSON_BUILD_DOC=$(usex doc)
-DRAPIDJSON_BUILD_EXAMPLES=$(usex examples)
-DRAPIDJSON_BUILD_TESTS=$(usex test)

@ -1 +1,2 @@
DIST rinutils-0.10.0.tar.xz 17268 BLAKE2B 2c651b70295d10690ca76bf1349ce83728cd5398fe4babf821ee6a0d61d4c7d107c6c68595e19a841fb5baaa0057237357b3917acd61c02599781bf0252fd512 SHA512 d3780b34b4eda4658f65cf7555553430441fcd45fb2d4fdba22a8f48c0df09c6c0a4e9543262c797c0602e2f9bace2d3f41514ae202ee13183286c9fb1f38677
DIST rinutils-0.10.1.tar.xz 19160 BLAKE2B afefc834e3968d9cc32e3cb3368c1aadedaa90adf9f6e95c0d11367ce5ec9f2960b73685f55293aaa4c9aecb31b8a26a235f4d0aae60ffd4eaa8d229e31e84d6 SHA512 e743ee02258132830e7fd4436c1e6bfda33cdd90835978ad5a233562f85848274846ba0b46a1402cd70054da4dffba78f7e3d6e8fe484d97c569b4f9c7459abd

@ -0,0 +1,23 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake
DESCRIPTION="Set of C headers containing macros and static functions"
HOMEPAGE="https://www.shlomifish.org/open-source/projects/ https://github.com/shlomif/rinutils"
SRC_URI="https://github.com/shlomif/${PN}/releases/download/${PV}/${P}.tar.xz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~hppa ~ppc64 ~riscv ~x86"
src_configure() {
local mycmakeargs=(
-DDISABLE_APPLYING_RPATH=OFF
-DWITH_TEST_SUITE=OFF # tests require perl
)
cmake_src_configure
}

@ -1,2 +1,3 @@
DIST rocm-comgr-5.1.3.tar.gz 117155 BLAKE2B 40e415c4c7ae3e709dd50981299291f0fc1133f35310b4c86a86847d3bce5fd7685a3f4480f8f156873ca922921c1d4e1cb620fd33bd5cdc87f155af839f2bbe SHA512 5927250f5e03c32b7f270a1dbfe5221d349dfe32aba34143040da53d4e7eb83faa3073a43edabcff13e1fc977bc17088404523f2ab2ea95e207d2c00beb4249b
DIST rocm-comgr-5.3.3.tar.gz 120414 BLAKE2B 29b9d466d74ef94165a2b9bea35eac4616f6b2fc529cdac3c830ee7dc08f219cb9e5d4f081658881c76633f12eaebb74d1a2ea30a76652231b8ee516f9988db1 SHA512 ba7b1ef214e3624168e438ed7fd94291a07508fe89d178c0b158bf22e0998d5a8e4d8f0a7f08f05ac108ef65f725db5764fd66353a85bc25000e572a4fdcb61f
DIST rocm-comgr-5.4.3.tar.gz 120461 BLAKE2B c4eb79dd5a72a2b18e16841fc8cb9a3a33efb0c7b04a7585df9672d682bba6fa826ab8b37dba5febca3b8c5ee5aca30d8546e1fa69e77671e5c750e2a8c1f12f SHA512 1a25af99a0166d70ca6dc5df5a667068eaf583dccd74bbb18a2a5de3c1b769e0c1eb9a0c539e0cd88bc50bbbe53214a1d1b23fbdfd6fc5b6507c44da259815c4

@ -0,0 +1,60 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake llvm prefix
LLVM_MAX_SLOT=15
if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/"
inherit git-r3
S="${WORKDIR}/${P}/lib/comgr"
else
SRC_URI="https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/ROCm-CompilerSupport-rocm-${PV}/lib/comgr"
KEYWORDS="~amd64"
fi
IUSE="test"
RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/${PN}-5.1.3-clang-fix-include.patch"
"${FILESDIR}/${PN}-5.1.3-rocm-path.patch"
"${FILESDIR}/0001-Specify-clang-exe-path-in-Driver-Creation.patch"
"${FILESDIR}/0001-Find-CLANG_RESOURCE_DIR-using-clang-print-resource-d.patch"
"${FILESDIR}/${PN}-5.3.3-HIPIncludePath-not-needed.patch"
"${FILESDIR}/${PN}-5.3.3-fix-tests.patch"
"${FILESDIR}/${PN}-5.3.3-fno-stack-protector.patch"
)
DESCRIPTION="Radeon Open Compute Code Object Manager"
HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm-CompilerSupport"
LICENSE="MIT"
SLOT="0/$(ver_cut 1-2)"
RDEPEND=">=dev-libs/rocm-device-libs-${PV}
sys-devel/clang:${LLVM_MAX_SLOT}=
sys-devel/clang-runtime:=
sys-devel/lld:${LLVM_MAX_SLOT}="
DEPEND="${RDEPEND}"
CMAKE_BUILD_TYPE=Release
src_prepare() {
sed '/sys::path::append(HIPPath/s,"hip","",' -i src/comgr-env.cpp || die
sed "/return LLVMPath;/s,LLVMPath,llvm::SmallString<128>(\"$(get_llvm_prefix ${LLVM_MAX_SLOT})\")," -i src/comgr-env.cpp || die
eapply $(prefixify_ro "${FILESDIR}"/${PN}-5.0-rocm_path.patch)
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
-DLLVM_DIR="$(get_llvm_prefix ${LLVM_MAX_SLOT})"
-DCMAKE_STRIP="" # disable stripping defined at lib/comgr/CMakeLists.txt:58
-DBUILD_TESTING=$(usex test ON OFF)
)
cmake_src_configure
}

@ -1,2 +1,3 @@
DIST rocm-device-libs-5.1.3.tar.gz 242862 BLAKE2B 68d66de897f461e9f876de5fe2214803d4c00665651dea6af0952f0ce579c6704a5ec41b08971fa613ade309a0a85cb611b56b592dc2a25e247183e634ea3378 SHA512 cc3dfb8d4b4841ba777355c537175259d0019159ff462358320674b85082cccd99f6462f60fee66228ddfb88fade043445c1bac62504aa1462ba61b7e2751de7
DIST rocm-device-libs-5.3.3.tar.gz 245690 BLAKE2B 475c0d818b8b0f090a8daeca2910cd4002e4cdf505d020327f46eb5f864a26937a6a3dfe4ff7b188ebda0f936b1c396f2163bb27b9e2a62c5976e60fa60856ac SHA512 8f6f2fc1534e348e02ba30a25cfc6017f8eab768968b5d0344a5ea7d65c4f0a874072f9e53919c74545814330602ef7c190753c7ff019137230e02f58a5d3a5d
DIST rocm-device-libs-5.4.3.tar.gz 246095 BLAKE2B eb749346c96d465a5f22831968ccbd71f02749e6aa0d9c2becc0f378641ca0f65c1a131bfd3ed226f838b4208091fcc920b1e31b427adbd69a42881898668e6a SHA512 67b904363a3cff6c15bbd032cbc72cb5cd5f82acaa68c74391dbcf415266e8f35486a496b69b69e1fc0721e0e4e21fb6a6b9c180a46cb59cdcf53916be846ca4

@ -0,0 +1,216 @@
From 8ce920dddac9846254aaf6261bafd8b22976b04e Mon Sep 17 00:00:00 2001
From: Jeremy Newton <alexjnewt@hotmail.com>
Date: Sun, 18 Dec 2022 20:48:21 -0500
Subject: [PATCH] Revert "Update counters for gfx11"
This reverts commit 85f95b94960c6f7ff4ff0242a399deb4a204fb6a.
---
doc/OCKL.md | 4 ++--
ockl/inc/ockl.h | 3 ---
ockl/src/dm.cl | 15 +++++++++++----
ockl/src/mtime.cl | 35 ++---------------------------------
ockl/src/wait.cl | 18 +++++++++---------
5 files changed, 24 insertions(+), 51 deletions(-)
diff --git a/doc/OCKL.md b/doc/OCKL.md
index 07574f6..05c5c49 100644
--- a/doc/OCKL.md
+++ b/doc/OCKL.md
@@ -99,8 +99,8 @@ The following table lists the available functions along with a brief description
| `int __ockl_mul24_i32(int,int);` | Multiply assuming operands fit in 24 bits |
| `uint __ockl_mul24_u32(uint,uint);` | |
| - | |
-| `ulong __ockl_cyclectr_u64(void);` | Current value of free running 64-bit clock counter |
-| `ulong __ockl_steadyctr_u64(void);` | Current value of constant speed 64-bit clock counter |
+| `ulong __ockl_memtime_u64(void);` | Current value of free running 64-bit clock counter |
+| `ulong __ockl_memrealtime_u64(void);` | Current value of constant speed 64-bit clock counter |
| - | |
| `uint __ockl_activelane_u32(void);` | Index of currently lane counting only active lanes in wavefront |
| - | |
diff --git a/ockl/inc/ockl.h b/ockl/inc/ockl.h
index d0b98d4..6300279 100644
--- a/ockl/inc/ockl.h
+++ b/ockl/inc/ockl.h
@@ -143,9 +143,6 @@ DECL_OCKL_NULLARY_U32(activelane)
DECL_OCKL_NULLARY_U64(memtime)
DECL_OCKL_NULLARY_U64(memrealtime)
-DECL_OCKL_NULLARY_U64(cyclectr)
-DECL_OCKL_NULLARY_U64(steadyctr)
-
extern half OCKL_MANGLE_T(wfred_add,f16)(half x);
extern float OCKL_MANGLE_T(wfred_add,f32)(float x);
diff --git a/ockl/src/dm.cl b/ockl/src/dm.cl
index 245b4a1..26373dd 100644
--- a/ockl/src/dm.cl
+++ b/ockl/src/dm.cl
@@ -201,6 +201,13 @@ get_heap_ptr(void) {
}
}
+// realtime
+__attribute__((target("s-memrealtime"))) static ulong
+realtime(void)
+{
+ return __builtin_amdgcn_s_memrealtime();
+}
+
// The actual number of blocks in a slab with blocks of kind k
static uint
num_blocks(kind_t k)
@@ -466,7 +473,7 @@ new_slab_wait(__global heap_t *hp, kind_t k)
uint aid = __ockl_activelane_u32();
if (aid == 0) {
ulong expected = AL(&hp->salloc_time[k].value, memory_order_relaxed);
- ulong now = __ockl_steadyctr_u64();
+ ulong now = realtime();
ulong dt = now - expected;
if (dt < SLAB_TICKS)
__ockl_rtcwait_u32(SLAB_TICKS - (uint)dt);
@@ -480,7 +487,7 @@ grow_recordable_wait(__global heap_t *hp, kind_t k)
uint aid = __ockl_activelane_u32();
if (aid == 0) {
ulong expected = AL(&hp->grow_time[k].value, memory_order_relaxed);
- ulong now = __ockl_steadyctr_u64();
+ ulong now = realtime();
ulong dt = now - expected;
if (dt < GROW_TICKS)
__ockl_rtcwait_u32(GROW_TICKS - (uint)dt);
@@ -540,7 +547,7 @@ try_grow_num_recordable_slabs(__global heap_t *hp, kind_t k)
uint ret = GROW_BUSY;
if (aid == 0) {
ulong expected = AL(&hp->grow_time[k].value, memory_order_relaxed);
- ulong now = __ockl_steadyctr_u64();
+ ulong now = realtime();
if (now - expected >= GROW_TICKS &&
ACE(&hp->grow_time[k].value, &expected, now, memory_order_relaxed))
ret = GROW_FAILURE;
@@ -687,7 +694,7 @@ try_allocate_new_slab(__global heap_t *hp, kind_t k)
if (aid == 0) {
ulong expected = AL(&hp->salloc_time[k].value, memory_order_relaxed);
- ulong now = __ockl_steadyctr_u64();
+ ulong now = realtime();
if (now - expected >= SLAB_TICKS &&
ACE(&hp->salloc_time[k].value, &expected, now, memory_order_relaxed))
ret = (__global sdata_t *)0;
diff --git a/ockl/src/mtime.cl b/ockl/src/mtime.cl
index 43f4161..543aaa3 100644
--- a/ockl/src/mtime.cl
+++ b/ockl/src/mtime.cl
@@ -5,48 +5,17 @@
* License. See LICENSE.TXT for details.
*===------------------------------------------------------------------------*/
-#include "oclc.h"
#include "ockl.h"
-__attribute__((target("s-memrealtime"))) static ulong
-mem_realtime(void)
-{
- return __builtin_amdgcn_s_memrealtime();
-}
-
-__attribute__((target("gfx11-insts"))) static ulong
-msg_realtime(void)
-{
- return __builtin_amdgcn_s_sendmsg_rtnl(0x83);
-}
-
-// Deprecated
__attribute__((target("s-memtime-inst"))) ulong
OCKL_MANGLE_U64(memtime)(void)
{
return __builtin_amdgcn_s_memtime();
}
-// Deprecated
-ulong
+__attribute__((target("s-memrealtime"))) ulong
OCKL_MANGLE_U64(memrealtime)(void)
{
- return mem_realtime();
-}
-
-ulong
-OCKL_MANGLE_U64(cyclectr)(void)
-{
- return __builtin_readcyclecounter();
-}
-
-ulong
-OCKL_MANGLE_U64(steadyctr)(void)
-{
- if (__oclc_ISA_version >= 11000) {
- return msg_realtime();
- } else {
- return mem_realtime();
- }
+ return __builtin_amdgcn_s_memrealtime();
}
diff --git a/ockl/src/wait.cl b/ockl/src/wait.cl
index 49b038e..b249599 100644
--- a/ockl/src/wait.cl
+++ b/ockl/src/wait.cl
@@ -10,47 +10,47 @@
#include "ockl.h"
#include "oclc.h"
-void
+__attribute__((target("s-memrealtime"))) void
OCKL_MANGLE_T(rtcwait,u32)(uint ticks)
{
- ulong now = __ockl_steadyctr_u64();
+ ulong now = __builtin_amdgcn_s_memrealtime();
ulong end = now + __builtin_amdgcn_readfirstlane(ticks);
if (__oclc_ISA_version >= 9000) {
while (end > now + 1625) {
__builtin_amdgcn_s_sleep(127);
- now = __ockl_steadyctr_u64();
+ now = __builtin_amdgcn_s_memrealtime();
}
while (end > now + 806) {
__builtin_amdgcn_s_sleep(63);
- now = __ockl_steadyctr_u64();
+ now = __builtin_amdgcn_s_memrealtime();
}
while (end > now + 396) {
__builtin_amdgcn_s_sleep(31);
- now = __ockl_steadyctr_u64();
+ now = __builtin_amdgcn_s_memrealtime();
}
}
while (end > now + 192) {
__builtin_amdgcn_s_sleep(15);
- now = __ockl_steadyctr_u64();
+ now = __builtin_amdgcn_s_memrealtime();
}
while (end > now + 89) {
__builtin_amdgcn_s_sleep(7);
- now = __ockl_steadyctr_u64();
+ now = __builtin_amdgcn_s_memrealtime();
}
while (end > now + 38) {
__builtin_amdgcn_s_sleep(3);
- now = __ockl_steadyctr_u64();
+ now = __builtin_amdgcn_s_memrealtime();
}
while (end > now) {
__builtin_amdgcn_s_sleep(1);
- now = __ockl_steadyctr_u64();
+ now = __builtin_amdgcn_s_memrealtime();
}
}
--
2.34.1

@ -0,0 +1,48 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake llvm
LLVM_MAX_SLOT=15
if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://github.com/RadeonOpenCompute/ROCm-Device-Libs/"
inherit git-r3
S="${WORKDIR}/${P}/src"
else
SRC_URI="https://github.com/RadeonOpenCompute/ROCm-Device-Libs/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/ROCm-Device-Libs-rocm-${PV}"
KEYWORDS="~amd64"
fi
DESCRIPTION="Radeon Open Compute Device Libraries"
HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm-Device-Libs"
LICENSE="MIT"
SLOT="0/$(ver_cut 1-2)"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="sys-devel/clang:${LLVM_MAX_SLOT}"
DEPEND="${RDEPEND}"
CMAKE_BUILD_TYPE=Release
PATCHES=( "${FILESDIR}/${PN}-5.1.3-test-bitcode-dir.patch"
"${FILESDIR}/${PN}-5.1.3-llvm-link.patch"
"${FILESDIR}/${PN}-5.4.3-Revert-Update-counters-for-gfx11.patch" )
src_prepare() {
sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" -i "${S}/cmake/OCL.cmake" || die
sed -e "s:amdgcn/bitcode:lib/amdgcn/bitcode:" -i "${S}/cmake/Packages.cmake" || die
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
-DLLVM_DIR="$(get_llvm_prefix "${LLVM_MAX_SLOT}")"
)
cmake_src_configure
}

@ -1,2 +1,3 @@
DIST rocr-runtime-5.1.3.tar.gz 720567 BLAKE2B bdf2d258ec607ffc69264d48ce82c36787757b7809397d643a24abaa852f3cc217a57210fba760d4d11ef8ce2922dc1ef275d3b47a4bebc5c7b204bbbb5b7c66 SHA512 d47523ea2fe32fee832ca19b56a091f52e16b366db1c571f87e5599514b826376d49281e79ff0936dcaf7349f9becbc8ae9b3e9472a9c3e14b62a3f98d541b35
DIST rocr-runtime-5.3.3.tar.gz 809871 BLAKE2B 1a44e88c34fcebcea3351de812f2ac64a7b151303c5bfc4066920755c185731388afff89c705afee6010d262f68358a20b1c0197e8f23c22ab24409eb55fde0a SHA512 27efe57954575549703b31c4a632548bf3d82df0f01d5f15485d0bda7efa6ec2ad0a4a8710b8f240ff57296eb62d3796926e32d16dfe448b188d8264fde0ef8b
DIST rocr-runtime-5.4.3.tar.gz 811062 BLAKE2B 4ee8ef49cdac7f6918db3aa96089852847d093aacc11ed7e7157a6eb512cf36a3d37396670c14ea24b16b1127c4547977390694d05bc6006ac48b40e707d6dae SHA512 29f13a1b16ef457071cc050227d57cda92992f416ebc074f8cd5a856d9bd76fd34ab2ccb53c21c3d798165282d44bba287ef44a9d1da327ee198e1facc77a4db

@ -0,0 +1,54 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake flag-o-matic llvm
LLVM_MAX_SLOT=15
if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://github.com/RadeonOpenCompute/ROCR-Runtime/"
inherit git-r3
S="${WORKDIR}/${P}/src"
else
SRC_URI="https://github.com/RadeonOpenCompute/ROCR-Runtime/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/ROCR-Runtime-rocm-${PV}/src"
KEYWORDS="~amd64"
fi
DESCRIPTION="Radeon Open Compute Runtime"
HOMEPAGE="https://github.com/RadeonOpenCompute/ROCR-Runtime"
PATCHES=(
"${FILESDIR}/${PN}-4.3.0_no-aqlprofiler.patch"
)
LICENSE="MIT"
SLOT="0/$(ver_cut 1-2)"
IUSE="debug"
COMMON_DEPEND="dev-libs/elfutils"
RDEPEND="${COMMON_DEPEND}"
DEPEND="${COMMON_DEPEND}
>=dev-libs/roct-thunk-interface-${PV}
>=dev-libs/rocm-device-libs-${PV}
sys-devel/clang
sys-devel/lld"
BDEPEND="app-editors/vim-core"
# vim-core is needed for "xxd"
src_prepare() {
# ... otherwise system llvm/clang is used ...
sed -e "/find_package(Clang REQUIRED HINTS /s:\${CMAKE_INSTALL_PREFIX}/llvm \${CMAKE_PREFIX_PATH}/llvm PATHS /opt/rocm/llvm:$(get_llvm_prefix ${LLVM_MAX_SLOT}):" -i image/blit_src/CMakeLists.txt || die
# Gentoo installs "*.bc" to "/usr/lib" instead of a "[path]/bitcode" directory ...
sed -e "s:-O2:--rocm-path=${EPREFIX}/usr/lib/ -O2:" -i image/blit_src/CMakeLists.txt || die
cmake_src_prepare
}
src_configure() {
use debug || append-cxxflags "-DNDEBUG"
local mycmakeargs=( -DINCLUDE_PATH_COMPATIBILITY=OFF )
cmake_src_configure
}

@ -1,2 +1,3 @@
DIST roct-thunk-interface-5.1.3.tar.gz 3178689 BLAKE2B c46af7bc60772beaa9a214a86a634290cfd7952589f70736c0c2544c0459eb4fdcc65030d897dbb67bfbaae545f529ac647397df3fcfeddeb5d5e05a283cfd6b SHA512 746a04e667ce242160d6e2519594fc93b205520dae28678859fbd40c3c641082aa6219c04c8e2b58289763a5244dd6336b56c2e2016ba671c5e5a6fb9ca5caea
DIST roct-thunk-interface-5.3.3.tar.gz 646773 BLAKE2B 48632cad576ceccede0ee62663f226cbedba8374d8962028fd729a7b8e7eb75bebcb2f8ce06a838de15a388caea3d6dcb150db80f8d45a91675997b4f80625e6 SHA512 4a8730d16a0d240a43d5e22092325b0731d133733af0aac6c6893763d1ffb1a04a0c045d988835079581e097fc7c9e383f41ba84daa105c032d3a653b6b2c6b0
DIST roct-thunk-interface-5.4.3.tar.gz 648897 BLAKE2B 9eefc5f417280a98c7c6b6d611d0d87fa52abca94f67bf5ecc10d84bb86433b5ff502f76aa6724245c7cf9d82b5c16c10943275e8d41f0053484765df5a901db SHA512 1787526515ec708edc398cdba308a8dfa32c2579524a6856a6f336cb7bfee8f9a00d67f1b489993c7454d1d88885032ce85ac752b4a15aaedef910f147aed3b5

@ -0,0 +1,40 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake linux-info
if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/"
inherit git-r3
else
SRC_URI="https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/ROCT-Thunk-Interface-rocm-${PV}"
KEYWORDS="~amd64"
fi
DESCRIPTION="Radeon Open Compute Thunk Interface"
HOMEPAGE="https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface"
CONFIG_CHECK="~HSA_AMD ~HMM_MIRROR ~ZONE_DEVICE ~DRM_AMDGPU ~DRM_AMDGPU_USERPTR"
LICENSE="MIT"
SLOT="0/$(ver_cut 1-2)"
RDEPEND="sys-process/numactl"
DEPEND="${RDEPEND}"
BDEPEND="x11-libs/libdrm[video_cards_amdgpu]"
CMAKE_BUILD_TYPE=Release
src_prepare() {
sed -e "s:get_version ( \"1.0.0\" ):get_version ( \"${PV}\" ):" -i CMakeLists.txt || die
sed -e "s:ubuntu:gentoo:" -i CMakeLists.txt || die
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
-DCPACK_PACKAGING_INSTALL_PREFIX="${EPREFIX}/usr"
)
cmake_src_configure
}

Binary file not shown.

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

Loading…
Cancel
Save