diff options
686 files changed, 25252 insertions, 13925 deletions
diff --git a/.editorconfig b/.editorconfig index 7d6e17345e1e..8624863e01af 100644 --- a/.editorconfig +++ b/.editorconfig @@ -9,3 +9,6 @@ indent_style = tab indent_size = 4 trim_trailing_whitespace = true #max_line_length = 80 + +[*.patch] +trim_trailing_whitespace = false diff --git a/app-admin/ansible-lint/Manifest b/app-admin/ansible-lint/Manifest index 6d824b7aaf37..3d8b190d5d1b 100644 --- a/app-admin/ansible-lint/Manifest +++ b/app-admin/ansible-lint/Manifest @@ -1,2 +1,3 @@ DIST ansible-lint-24.2.2.tar.gz 515822 BLAKE2B e9d8e689dfe4e4efbd4dad44ff3567f50412400ed979f2d60150f09f17c5f63f2441f25a33ecdf0112024ced07e62ac16b8a2dbc1c01d62855ec785fc75d1b9a SHA512 3de6b14e4b64ba577abcb67920a45dbf45fedb84e21091cd6a29e3c52a7a91555a152ee3e265624aafbf9dddba96d04241c2598a18f2103ce2cae48706142446 DIST ansible_lint-24.6.0.tar.gz 529088 BLAKE2B 3d307669d2035eb5a3a8295b40e3afca92ca4eae4ea419948fd2fa86127e05c60f3ca037a4b85b447320ba8a57f7e1a736a55d63aac80e386f9fc4d733190b09 SHA512 1eb8e3e1805ff98ae76ddcd873a5e90b0b0182fbbce3c40844b2a9069e6879fef906e14f98dd77e41372e461ea4350388b68e08be420afaf5d6c449a449a7989 +DIST ansible_lint-24.7.0.tar.gz 530977 BLAKE2B bc6b98b2372dc58bedc8fc305ebad72e75bddf980906789f51f8dde9eda9b2f51ad3397b8dc2bb5712c1abbf61d08a1a6ab5c1468d6ae10404846f952e2fc078 SHA512 1ba69c7fd2c29f89cc2526ad14ea6a7aff4a0715d3dddf0abc79d6dae9bc5ad02152bdece635684a0d1a805a816ea2f28b2a07c5570975bb73bfa332e8679109 diff --git a/app-admin/ansible-lint/ansible-lint-24.7.0.ebuild b/app-admin/ansible-lint/ansible-lint-24.7.0.ebuild new file mode 100644 index 000000000000..057962e736a9 --- /dev/null +++ b/app-admin/ansible-lint/ansible-lint-24.7.0.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..12} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Checks ansible playbooks for practices and behaviour that can be improved" +HOMEPAGE="https://github.com/ansible/ansible-lint" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv" + +# Upstream has stated explicitly that all tests require Internet access +PROPERTIES="test_network" +RESTRICT="test" + +RDEPEND=" + >=app-admin/ansible-core-2.13.0[${PYTHON_USEDEP}] + >=dev-python/ansible-compat-24.5.0[${PYTHON_USEDEP}] + >=dev-python/black-24.3.0[${PYTHON_USEDEP}] + >=dev-python/filelock-3.8.0[${PYTHON_USEDEP}] + dev-python/importlib-metadata[${PYTHON_USEDEP}] + >=dev-python/jsonschema-4.17.0[${PYTHON_USEDEP}] + >=dev-python/packaging-21.3[${PYTHON_USEDEP}] + >=dev-python/pathspec-0.10.3[${PYTHON_USEDEP}] + >=dev-python/pyyaml-5.4.1[${PYTHON_USEDEP}] + >=dev-python/rich-12.0.0[${PYTHON_USEDEP}] + >=dev-python/ruamel-yaml-0.18.5[${PYTHON_USEDEP}] + >=dev-python/wcmatch-8.5.0[${PYTHON_USEDEP}] + >=dev-util/yamllint-1.30.0[${PYTHON_USEDEP}] + dev-vcs/git" +BDEPEND=" + >=dev-python/setuptools-scm-7.0.5[${PYTHON_USEDEP}] + test? ( + dev-python/mypy[${PYTHON_USEDEP}] + dev-python/jmespath[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + >=dev-python/pytest-plus-0.6[${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 +} diff --git a/app-admin/ansible-lint/metadata.xml b/app-admin/ansible-lint/metadata.xml index fffa95157a95..1b94c21f73d9 100644 --- a/app-admin/ansible-lint/metadata.xml +++ b/app-admin/ansible-lint/metadata.xml @@ -1,7 +1,14 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <!-- maintainer-needed --> + <maintainer type="person" proxied="yes"> + <email>johnmh@johnmh.me</email> + <name>John M. Harris, Jr.</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> <upstream> <remote-id type="pypi">ansible-lint</remote-id> <remote-id type="github">ansible/ansible-lint</remote-id> diff --git a/app-admin/awscli/Manifest b/app-admin/awscli/Manifest index 3e848e553043..2808d07b0240 100644 --- a/app-admin/awscli/Manifest +++ b/app-admin/awscli/Manifest @@ -2,3 +2,5 @@ DIST aws-cli-1.34.10.gh.tar.gz 2788517 BLAKE2B 8b110119087836435f3e0ef29a6cfe35d DIST aws-cli-1.34.14.gh.tar.gz 2790437 BLAKE2B df3355ac11561ac7f6e2a7c707d08de0b3335b4321ef3f5730a9abd6a23dfa909e0ba27367e705c56ce7223bbb7d1d436759457f0f92a0d7b4da21e6392a0c6b SHA512 be707816a1f6a53ab32870eaed498bfd47782b07c146af79d6f5cc1153e0b180788be1cc48cbf21f8850d04a79b3255bcfa2456079c57585e4779083bc5353e1 DIST aws-cli-1.34.19.gh.tar.gz 2795240 BLAKE2B ede95bb83dffdef1cbc6896f35e6926e3f7fe1cf27a091c019a4edadc57c24a88d06900fc6542fcf78c21f57de6651759a8ebd44952b21864313269c1cbfb289 SHA512 a82299d7f2d2fbb4600c91739b38e22e83eb95ffae0e70ef62e95ba039de6a47ba1d4e2423190a5e8ee59bf768a85181153c60329b9bbfc1a3e794d07d50dc75 DIST aws-cli-1.34.20.gh.tar.gz 2795708 BLAKE2B 733b5fd765dcfdb04a6717efcdb78988f915bd4efbe90c862b2c08e26b3a79e4ccc075d3dfcb6ad475ecb10bb1c14f4f98ca459774a6ca58febb33b4d3d751fd SHA512 03b2a368940777aed9e12f1168de953144dad40f33f05ec506630df7145dcd9a51565b1e91d5561c20ec18705fdeb0360959a6c9d6ac5803a59da7a989279709 +DIST aws-cli-1.34.21.gh.tar.gz 2796251 BLAKE2B c72399ae535ceaff6986be3d94956683a9cec868b7e0125b2c4f81f20a418a2dd926af3770caf5af70d915f76a4a1c367135075c9810a1274667a66f8dfaee6a SHA512 39d54dd1da183bf21fb2e22aa250bb05965c2dc04597eab7372a5af0de497bbd7c0d7084b38d12df8457fb22c74a2bd47bd32944f7269830a3dc34547f74af81 +DIST aws-cli-1.34.22.gh.tar.gz 2797222 BLAKE2B e9575e6f450daed3d45f9523cec74f8cd4a124a9cdb90e6abac1281efbc5df86463ccd47cf763891665765af67f22da6195bf4eadb77deb785ae759ad71f5563 SHA512 06f338559627035c24a029020dbbb58879c9101e3eb6b601b3783458135a0f86ae70ceaa4f3026c9a1b5e6af5d559b41f2eccc19895138374eb79c884fcf4cf1 diff --git a/app-admin/awscli/awscli-1.34.21.ebuild b/app-admin/awscli/awscli-1.34.21.ebuild new file mode 100644 index 000000000000..599b9bd389b9 --- /dev/null +++ b/app-admin/awscli/awscli-1.34.21.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit bash-completion-r1 distutils-r1 + +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+1).z +BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 1 )).$(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.10.0[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + !app-admin/awscli-bin +" +BDEPEND=" + test? ( + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/pytest-forked[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +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 serial_tests=( + tests/functional/ecs/test_execute_command.py::TestExecuteCommand::test_execute_command_success + tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_{fails,success} + tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_with_new_version_plugin_success + tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking + tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking_windows + tests/unit/customizations/codeartifact/test_adapter_login.py::TestNuGetLogin::test_login_nuget_sources_listed_with_backtracking + tests/unit/customizations/ecs/test_executecommand_startsession.py::TestExecuteCommand::test_execute_command_success + tests/unit/customizations/test_sessionmanager.py + tests/unit/test_compat.py::TestIgnoreUserSignals + tests/unit/test_help.py + tests/unit/test_utils.py::TestIgnoreCtrlC::test_ctrl_c_is_ignored + ) + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + EPYTEST_XDIST= epytest "${serial_tests[@]}" + + local EPYTEST_DESELECT=( "${serial_tests[@]}" ) + # integration tests require AWS credentials and Internet access + epytest tests/{functional,unit} +} + +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 +} diff --git a/app-admin/awscli/awscli-1.34.22.ebuild b/app-admin/awscli/awscli-1.34.22.ebuild new file mode 100644 index 000000000000..599b9bd389b9 --- /dev/null +++ b/app-admin/awscli/awscli-1.34.22.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit bash-completion-r1 distutils-r1 + +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+1).z +BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 1 )).$(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.10.0[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + !app-admin/awscli-bin +" +BDEPEND=" + test? ( + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/pytest-forked[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +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 serial_tests=( + tests/functional/ecs/test_execute_command.py::TestExecuteCommand::test_execute_command_success + tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_{fails,success} + tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_with_new_version_plugin_success + tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking + tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking_windows + tests/unit/customizations/codeartifact/test_adapter_login.py::TestNuGetLogin::test_login_nuget_sources_listed_with_backtracking + tests/unit/customizations/ecs/test_executecommand_startsession.py::TestExecuteCommand::test_execute_command_success + tests/unit/customizations/test_sessionmanager.py + tests/unit/test_compat.py::TestIgnoreUserSignals + tests/unit/test_help.py + tests/unit/test_utils.py::TestIgnoreCtrlC::test_ctrl_c_is_ignored + ) + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + EPYTEST_XDIST= epytest "${serial_tests[@]}" + + local EPYTEST_DESELECT=( "${serial_tests[@]}" ) + # integration tests require AWS credentials and Internet access + epytest tests/{functional,unit} +} + +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 +} diff --git a/app-admin/djbdns-logparse/djbdns-logparse-0.0.2-r2.ebuild b/app-admin/djbdns-logparse/djbdns-logparse-0.0.2-r2.ebuild index 2a5bb8a3b82e..bda4829ac142 100644 --- a/app-admin/djbdns-logparse/djbdns-logparse-0.0.2-r2.ebuild +++ b/app-admin/djbdns-logparse/djbdns-logparse-0.0.2-r2.ebuild @@ -28,5 +28,5 @@ python_install_all() { } python_test() { - esetup.py test + "${EPYTHON}" -m doctest --verbose djbdns/*.py || die } diff --git a/app-admin/sysklogd/Manifest b/app-admin/sysklogd/Manifest index 28a9f11671bc..faabe8b3d2cd 100644 --- a/app-admin/sysklogd/Manifest +++ b/app-admin/sysklogd/Manifest @@ -2,3 +2,4 @@ DIST sysklogd-2.4.4.tar.gz 451938 BLAKE2B 218d9487440ab3fa395f596e5e4a9fa95df9df DIST sysklogd-2.5.0.tar.gz 459695 BLAKE2B ab8185e114f7da2c35b6ba3e3b42e13f3697155b43ccfa923229d95150e3734f74db6f732bcbc999068d8a2f8124a404ee893d2e6ce4c154f89301b3b523df39 SHA512 4599f153b046317977de990455b1eea195967da81f68451f1bda4fadba6fe685d7fe533aba3b39f4daa456d6c4931743162a021067e0a16f072a7c77908286f9 DIST sysklogd-2.5.1.tar.gz 461179 BLAKE2B efb1e1ef6456644935b0c5341bf844fe87ed910aec3fd0725da2cc2d6b3f0e1f8d4667e45525b61fa3a249387a23757291daa33aac2a72d4fcd89d325e12ab89 SHA512 24d8a76cab4c25b646d879676b46f98bb56c2079badab4f351bf983015479134e4a3e4d64fb50faade26fea8dd7e31c2c45610c17420c147c36bbbe054634983 DIST sysklogd-2.5.2.tar.gz 459292 BLAKE2B c61a89e80d6fde10f5955cf3a7a563fbe9e00799eb1199bc9a2995585c074e7ab2b4fe6a30ae8bc224876448a521c3be9031853ae4710db2555279789aeda95d SHA512 0c160236d0f5ec31d0c5679c04b6f0f40a35af2b5b159af8b2b9dd2d37f5959efbe550dfc50c0b0419bea702b91a6594f2e141c2fbb78fdb20715ee8b2d27805 +DIST sysklogd-2.6.2.tar.gz 462950 BLAKE2B 591bf168cd9249af888feefd45ed10b8f90e7bdb71c75fbc8a95867dba0abfd20c08b0bbc13f80de2eb9ccf69ab9f77690978963ce96bf17472d2c036f96bb15 SHA512 4fb5ccba9e94c273e92ca4a55c6a7234a3dd6bbfd4568c8227b515c0ac5eeb6fdca452c82c989432e86a667dcf13df87f96aef302141e6023d630dc90466224d diff --git a/app-admin/sysklogd/sysklogd-2.6.2.ebuild b/app-admin/sysklogd/sysklogd-2.6.2.ebuild new file mode 100644 index 000000000000..7a72c587b181 --- /dev/null +++ b/app-admin/sysklogd/sysklogd-2.6.2.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic systemd toolchain-funcs + +DESCRIPTION="Standard log daemons" +HOMEPAGE="https://troglobit.com/sysklogd.html https://github.com/troglobit/sysklogd" + +if [[ ${PV} == *9999 ]] ; then + inherit autotools git-r3 + EGIT_REPO_URI="https://github.com/troglobit/sysklogd.git" +else + SRC_URI="https://github.com/troglobit/sysklogd/releases/download/v${PV}/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="logger logrotate" +# Needs network access +RESTRICT="test" + +DEPEND=" + logger? ( sys-apps/util-linux[-logger(+)] ) +" +RDEPEND=" + ${DEPEND} + logrotate? ( app-admin/logrotate ) +" + +DOCS=( ChangeLog.md README.md ) + +src_prepare() { + default + + [[ ${PV} == *9999 ]] && eautoreconf +} + +src_configure() { + append-lfs-flags + tc-export CC + + local myeconfargs=( + --disable-static + --runstatedir="${EPREFIX}"/run + --with-systemd=$(systemd_get_systemunitdir) + $(use_with logger) + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + insinto /etc + doins syslog.conf + keepdir /etc/syslog.d + + newinitd "${FILESDIR}"/sysklogd.rc10 sysklogd + newconfd "${FILESDIR}"/sysklogd.confd3 sysklogd + + if use logrotate ; then + insinto /etc/logrotate.d + newins "${FILESDIR}"/sysklogd.logrotate sysklogd + sed 's@ -r 10M:10@@' -i "${ED}"/etc/conf.d/sysklogd || die + fi + + find "${ED}" -type f -name "*.la" -delete || die +} + +pkg_postinst() { + if ! use logrotate && [[ -n ${REPLACING_VERSIONS} ]] && ver_test ${REPLACING_VERSIONS} -lt 2.0 ; then + elog "Starting with version 2.0 syslogd has built in log rotation" + elog "functionality that does no longer require a running cron daemon." + elog "So we no longer install any log rotation cron files for sysklogd." + fi + + if [[ -n ${REPLACING_VERSIONS} ]] && ver_test ${REPLACING_VERSIONS} -lt 2.1 ; then + elog "Starting with version 2.1 sysklogd no longer provides klogd." + elog "syslogd now also logs kernel messages." + fi +} diff --git a/app-arch/libarchive/Manifest b/app-arch/libarchive/Manifest index 0c49596464d7..56e85afbaa09 100644 --- a/app-arch/libarchive/Manifest +++ b/app-arch/libarchive/Manifest @@ -1,2 +1,4 @@ DIST libarchive-3.7.4.tar.xz 5417660 BLAKE2B 128f72235da61e112201046c0cfe62a8c580cf73b426c4cfe270ae913356f6ad430ba33a663dcd617b082c7baf45ada8d1c9928c45fea16fd57e8020693a60bc SHA512 84bc346ba15861ab10aa54a3d687de955178e4efbe12bf3a49a467181e7f819673949f131f4c8338de8ed6e319a8565af376e5a540380bda08e60dffbc7c8686 DIST libarchive-3.7.4.tar.xz.asc 659 BLAKE2B 77e705194f6e9a9f97da0ac43c9b3157e1a8a490d26da34079e4ef3f2bcf98d6f6e95567e110287fab0ec26d3fc27e5bbeff7569c9ca138de2caf47af737c6d0 SHA512 82caa18a78661ea717ce93cdcb0806eed48450c20fb4d45cb4c33001f2d4d0fb5a791552acbb24ad8c41772e1d0b66c76c9cb86946bc862109721a0c986f5331 +DIST libarchive-3.7.5.tar.xz 5437940 BLAKE2B e1cf8490b2db64e912bd181391310653b4e3524e74f35557e1ddb8c5eb53dcde307da945d393921acf7549ef0d4a6bf228d8f42ab4d795d06dd2248196a11c85 SHA512 b9cfb0a147bf0f77cca9e2bdea173f47a78dcba5df1d97a8e0e7b14a15039ac6d5467e325423b2a05741848f73ca7ab4fece922153f24f934f9370cb521d20df +DIST libarchive-3.7.5.tar.xz.asc 659 BLAKE2B 7310b8d7e3f07b8c75910ff3355ffda653402ca2d6db9cdf7d669b9a4ac5f3fb4c4c4482e85184fd68a23c96bce587a95b56efb88ae971399e130e533bd0969a SHA512 7494518b61a58a9aa1e991a2cf6b16340e34d7aa2c25a3c531799785e165541781d1a915437260bc536fe8267140cc69abb2670e8c0576e975a5a2b7ecf8e20d diff --git a/app-arch/libarchive/files/libarchive-3.7.5-iso9660-times.patch b/app-arch/libarchive/files/libarchive-3.7.5-iso9660-times.patch new file mode 100644 index 000000000000..2c5bcc277364 --- /dev/null +++ b/app-arch/libarchive/files/libarchive-3.7.5-iso9660-times.patch @@ -0,0 +1,334 @@ +From b65d12b344a5d81c6060b1c1794afa8858fe234b Mon Sep 17 00:00:00 2001 +From: Tim Kientzle <kientzle@acm.org> +Date: Sat, 14 Sep 2024 21:09:34 -0700 +Subject: [PATCH] Be more cautious about parsing ISO-9660 timestamps + +Some ISO images don't have valid timestamps for the root directory +entry. Parsing such timestamps can generate nonsensical results, +which in one case showed up as an unexpected overflow on a 32-bit system. + +Add some validation logic that can check whether a 7-byte or 17-byte +timestamp is reasonable-looking, and use this to ignore invalid +timestamps in various locations. This also requires us to be a little +more careful about tracking which timestamps are actually known. + +Resolves issue #2329 +--- + .../archive_read_support_format_iso9660.c | 186 ++++++++++++++++-- + libarchive/test/test_read_format_iso_Z.c | 12 +- + 2 files changed, 177 insertions(+), 21 deletions(-) + +diff --git a/libarchive/archive_read_support_format_iso9660.c b/libarchive/archive_read_support_format_iso9660.c +index 056beb5ff..951afb603 100644 +--- a/libarchive/archive_read_support_format_iso9660.c ++++ b/libarchive/archive_read_support_format_iso9660.c +@@ -273,7 +273,7 @@ struct file_info { + char re; /* Having RRIP "RE" extension. */ + char re_descendant; + uint64_t cl_offset; /* Having RRIP "CL" extension. */ +- int birthtime_is_set; ++ int time_is_set; /* Bitmask indicating which times are known */ + time_t birthtime; /* File created time. */ + time_t mtime; /* File last modified time. */ + time_t atime; /* File last accessed time. */ +@@ -306,6 +306,11 @@ struct file_info { + } rede_files; + }; + ++#define BIRTHTIME_IS_SET 1 ++#define MTIME_IS_SET 2 ++#define ATIME_IS_SET 4 ++#define CTIME_IS_SET 8 ++ + struct heap_queue { + struct file_info **files; + int allocated; +@@ -394,7 +399,9 @@ static void dump_isodirrec(FILE *, const unsigned char *isodirrec); + #endif + static time_t time_from_tm(struct tm *); + static time_t isodate17(const unsigned char *); ++static int isodate17_valid(const unsigned char *); + static time_t isodate7(const unsigned char *); ++static int isodate7_valid(const unsigned char *); + static int isBootRecord(struct iso9660 *, const unsigned char *); + static int isVolumePartition(struct iso9660 *, const unsigned char *); + static int isVDSetTerminator(struct iso9660 *, const unsigned char *); +@@ -1351,13 +1358,22 @@ archive_read_format_iso9660_read_header(struct archive_read *a, + archive_entry_set_uid(entry, file->uid); + archive_entry_set_gid(entry, file->gid); + archive_entry_set_nlink(entry, file->nlinks); +- if (file->birthtime_is_set) ++ if ((file->time_is_set & BIRTHTIME_IS_SET)) + archive_entry_set_birthtime(entry, file->birthtime, 0); + else + archive_entry_unset_birthtime(entry); +- archive_entry_set_mtime(entry, file->mtime, 0); +- archive_entry_set_ctime(entry, file->ctime, 0); +- archive_entry_set_atime(entry, file->atime, 0); ++ if ((file->time_is_set & MTIME_IS_SET)) ++ archive_entry_set_mtime(entry, file->mtime, 0); ++ else ++ archive_entry_unset_mtime(entry); ++ if ((file->time_is_set & CTIME_IS_SET)) ++ archive_entry_set_ctime(entry, file->ctime, 0); ++ else ++ archive_entry_unset_ctime(entry); ++ if ((file->time_is_set & ATIME_IS_SET)) ++ archive_entry_set_atime(entry, file->atime, 0); ++ else ++ archive_entry_unset_atime(entry); + /* N.B.: Rock Ridge supports 64-bit device numbers. */ + archive_entry_set_rdev(entry, (dev_t)file->rdev); + archive_entry_set_size(entry, iso9660->entry_bytes_remaining); +@@ -1898,8 +1914,11 @@ parse_file_info(struct archive_read *a, struct file_info *parent, + file->parent = parent; + file->offset = offset; + file->size = fsize; +- file->mtime = isodate7(isodirrec + DR_date_offset); +- file->ctime = file->atime = file->mtime; ++ if (isodate7_valid(isodirrec + DR_date_offset)) { ++ file->time_is_set |= MTIME_IS_SET | ATIME_IS_SET | CTIME_IS_SET; ++ file->mtime = isodate7(isodirrec + DR_date_offset); ++ file->ctime = file->atime = file->mtime; ++ } + file->rede_files.first = NULL; + file->rede_files.last = &(file->rede_files.first); + +@@ -2573,51 +2592,73 @@ parse_rockridge_TF1(struct file_info *file, const unsigned char *data, + /* Use 17-byte time format. */ + if ((flag & 1) && data_length >= 17) { + /* Create time. */ +- file->birthtime_is_set = 1; +- file->birthtime = isodate17(data); ++ if (isodate17_valid(data)) { ++ file->time_is_set |= BIRTHTIME_IS_SET; ++ file->birthtime = isodate17(data); ++ } + data += 17; + data_length -= 17; + } + if ((flag & 2) && data_length >= 17) { + /* Modify time. */ +- file->mtime = isodate17(data); ++ if (isodate17_valid(data)) { ++ file->time_is_set |= MTIME_IS_SET; ++ file->mtime = isodate17(data); ++ } + data += 17; + data_length -= 17; + } + if ((flag & 4) && data_length >= 17) { + /* Access time. */ +- file->atime = isodate17(data); ++ if (isodate17_valid(data)) { ++ file->time_is_set |= ATIME_IS_SET; ++ file->atime = isodate17(data); ++ } + data += 17; + data_length -= 17; + } + if ((flag & 8) && data_length >= 17) { + /* Attribute change time. */ +- file->ctime = isodate17(data); ++ if (isodate17_valid(data)) { ++ file->time_is_set |= CTIME_IS_SET; ++ file->ctime = isodate17(data); ++ } + } + } else { + /* Use 7-byte time format. */ + if ((flag & 1) && data_length >= 7) { + /* Create time. */ +- file->birthtime_is_set = 1; +- file->birthtime = isodate7(data); ++ if (isodate7_valid(data)) { ++ file->time_is_set |= BIRTHTIME_IS_SET; ++ file->birthtime = isodate7(data); ++ } + data += 7; + data_length -= 7; + } + if ((flag & 2) && data_length >= 7) { + /* Modify time. */ +- file->mtime = isodate7(data); ++ if (isodate7_valid(data)) { ++ file->time_is_set |= MTIME_IS_SET; ++ file->mtime = isodate7(data); ++ } + data += 7; + data_length -= 7; + } + if ((flag & 4) && data_length >= 7) { + /* Access time. */ +- file->atime = isodate7(data); ++ if (isodate7_valid(data)) { ++ file->time_is_set |= ATIME_IS_SET; ++ file->atime = isodate7(data); ++ } + data += 7; + data_length -= 7; + } + if ((flag & 8) && data_length >= 7) { + /* Attribute change time. */ +- file->ctime = isodate7(data); ++ if (isodate7_valid(data)) { ++ file->time_is_set |= CTIME_IS_SET; ++ file->ctime = isodate7(data); ++ } + } + } + } +@@ -3226,6 +3267,56 @@ isValid733Integer(const unsigned char *p) + && p[3] == p[4]); + } + ++static int ++isodate7_valid(const unsigned char *v) ++{ ++ int year = v[0]; ++ int month = v[1]; ++ int day = v[2]; ++ int hour = v[3]; ++ int minute = v[4]; ++ int second = v[5]; ++ int gmt_off = (signed char)v[6]; ++ ++ /* ECMA-119 9.1.5 "If all seven values are zero, it shall mean ++ * that the date is unspecified" */ ++ if (year == 0 ++ && month == 0 ++ && day == 0 ++ && hour == 0 ++ && minute == 0 ++ && second == 0 ++ && gmt_off == 0) ++ return 0; ++ /* ++ * Sanity-test each individual field ++ */ ++ /* Year can have any value */ ++ /* Month must be 1-12 */ ++ if (month < 1 || month > 12) ++ return 0; ++ /* Day must be 1-31 */ ++ if (day < 1 || day > 31) ++ return 0; ++ /* Hour must be 0-23 */ ++ if (hour > 23) ++ return 0; ++ /* Minute must be 0-59 */ ++ if (minute > 59) ++ return 0; ++ /* second must be 0-59 according to ECMA-119 9.1.5 */ ++ /* BUT: we should probably allow for the time being in UTC, which ++ allows up to 61 seconds in a minute in certain cases */ ++ if (second > 61) ++ return 0; ++ /* Offset from GMT must be -48 to +52 */ ++ if (gmt_off < -48 || gmt_off > +52) ++ return 0; ++ ++ /* All tests pass, this is OK */ ++ return 1; ++} ++ + static time_t + isodate7(const unsigned char *v) + { +@@ -3252,6 +3343,67 @@ isodate7(const unsigned char *v) + return (t); + } + ++static int ++isodate17_valid(const unsigned char *v) ++{ ++ /* First 16 bytes are all ASCII digits */ ++ for (int i = 0; i < 16; i++) { ++ if (v[i] < '0' || v[i] > '9') ++ return 0; ++ } ++ ++ int year = (v[0] - '0') * 1000 + (v[1] - '0') * 100 ++ + (v[2] - '0') * 10 + (v[3] - '0'); ++ int month = (v[4] - '0') * 10 + (v[5] - '0'); ++ int day = (v[6] - '0') * 10 + (v[7] - '0'); ++ int hour = (v[8] - '0') * 10 + (v[9] - '0'); ++ int minute = (v[10] - '0') * 10 + (v[11] - '0'); ++ int second = (v[12] - '0') * 10 + (v[13] - '0'); ++ int hundredths = (v[14] - '0') * 10 + (v[15] - '0'); ++ int gmt_off = (signed char)v[16]; ++ ++ if (year == 0 && month == 0 && day == 0 ++ && hour == 0 && minute == 0 && second == 0 ++ && hundredths == 0 && gmt_off == 0) ++ return 0; ++ /* ++ * Sanity-test each individual field ++ */ ++ ++ /* Year must be 1900-2300 */ ++ /* (Not specified in ECMA-119, but these seem ++ like reasonable limits. */ ++ if (year < 1900 || year > 2300) ++ return 0; ++ /* Month must be 1-12 */ ++ if (month < 1 || month > 12) ++ return 0; ++ /* Day must be 1-31 */ ++ if (day < 1 || day > 31) ++ return 0; ++ /* Hour must be 0-23 */ ++ if (hour > 23) ++ return 0; ++ /* Minute must be 0-59 */ ++ if (minute > 59) ++ return 0; ++ /* second must be 0-59 according to ECMA-119 9.1.5 */ ++ /* BUT: we should probably allow for the time being in UTC, which ++ allows up to 61 seconds in a minute in certain cases */ ++ if (second > 61) ++ return 0; ++ /* Hundredths must be 0-99 */ ++ if (hundredths > 99) ++ return 0; ++ /* Offset from GMT must be -48 to +52 */ ++ if (gmt_off < -48 || gmt_off > +52) ++ return 0; ++ ++ /* All tests pass, this is OK */ ++ return 1; ++ ++} ++ + static time_t + isodate17(const unsigned char *v) + { +diff --git a/libarchive/test/test_read_format_iso_Z.c b/libarchive/test/test_read_format_iso_Z.c +index d07bc1bc8..716552fa3 100644 +--- a/libarchive/test/test_read_format_iso_Z.c ++++ b/libarchive/test/test_read_format_iso_Z.c +@@ -93,16 +93,20 @@ test_small(const char *name) + assertEqualIntA(a, ARCHIVE_OK, + archive_read_next_header(a, &ae)); + assertEqualString(".", archive_entry_pathname(ae)); +- assertEqualIntA(a, 3443989665, archive_entry_atime(ae)); +- assertEqualIntA(a, 0, archive_entry_birthtime(ae)); +- assertEqualIntA(a, 3443989665, archive_entry_ctime(ae)); ++ assertEqualInt(0, archive_entry_atime_is_set(ae)); ++ assertEqualInt(0, archive_entry_atime(ae)); ++ assertEqualInt(0, archive_entry_birthtime_is_set(ae)); ++ assertEqualInt(0, archive_entry_birthtime(ae)); ++ assertEqualInt(0, archive_entry_ctime_is_set(ae)); ++ assertEqualInt(0, archive_entry_ctime(ae)); + assertEqualIntA(a, 0, archive_entry_dev(ae)); + assertEqualIntA(a, AE_IFDIR, archive_entry_filetype(ae)); + assertEqualIntA(a, 0, archive_entry_gid(ae)); + assertEqualStringA(a, NULL, archive_entry_gname(ae)); + assertEqualIntA(a, 0, archive_entry_ino(ae)); + assertEqualIntA(a, AE_IFDIR | 0700, archive_entry_mode(ae)); +- assertEqualIntA(a, 3443989665, archive_entry_mtime(ae)); ++ assertEqualInt(0, archive_entry_mtime_is_set(ae)); ++ assertEqualInt(0, archive_entry_mtime(ae)); + assertEqualIntA(a, 4, archive_entry_nlink(ae)); + assertEqualIntA(a, 0700, archive_entry_perm(ae)); + assertEqualIntA(a, 2048, archive_entry_size(ae)); diff --git a/app-arch/libarchive/libarchive-3.7.5.ebuild b/app-arch/libarchive/libarchive-3.7.5.ebuild new file mode 100644 index 000000000000..dbe3b684bfbd --- /dev/null +++ b/app-arch/libarchive/libarchive-3.7.5.ebuild @@ -0,0 +1,177 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit libtool multilib-minimal toolchain-funcs verify-sig + +DESCRIPTION="Multi-format archive and compression library" +HOMEPAGE=" + https://www.libarchive.org/ + https://github.com/libarchive/libarchive/ +" +SRC_URI=" + https://www.libarchive.de/downloads/${P}.tar.xz + verify-sig? ( https://www.libarchive.de/downloads/${P}.tar.xz.asc ) +" + +LICENSE="BSD BSD-2 BSD-4 public-domain" +SLOT="0/13" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE=" + acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle + static-libs test xattr +zstd +" +RESTRICT="!test? ( test )" + +RDEPEND=" + sys-libs/zlib:=[${MULTILIB_USEDEP}] + acl? ( virtual/acl:=[${MULTILIB_USEDEP}] ) + blake2? ( app-crypt/libb2:=[${MULTILIB_USEDEP}] ) + bzip2? ( app-arch/bzip2:=[${MULTILIB_USEDEP}] ) + expat? ( dev-libs/expat:=[${MULTILIB_USEDEP}] ) + !expat? ( dev-libs/libxml2:=[${MULTILIB_USEDEP}] ) + iconv? ( virtual/libiconv:=[${MULTILIB_USEDEP}] ) + dev-libs/openssl:=[${MULTILIB_USEDEP}] + lz4? ( >=app-arch/lz4-0_p131:=[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.2.5-r1:=[${MULTILIB_USEDEP}] ) + lzo? ( >=dev-libs/lzo-2:=[${MULTILIB_USEDEP}] ) + nettle? ( dev-libs/nettle:=[${MULTILIB_USEDEP}] ) + zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) +" +# TODO: fix attr/xattr.h includes and remove sys-apps/attr dep +DEPEND="${RDEPEND} + kernel_linux? ( + virtual/os-headers + e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] ) + xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] ) + ) + test? ( + app-arch/lrzip + app-arch/lz4 + app-arch/lzip + app-arch/lzop + app-arch/xz-utils + app-arch/zstd + lzma? ( app-arch/xz-utils[extra-filters(+)] ) + ) +" +BDEPEND=" + verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20221209 ) + elibc_musl? ( sys-libs/queue-standalone ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc + +# false positives (checks for libc-defined hash functions) +QA_CONFIG_IMPL_DECL_SKIP=( + SHA256_Init SHA256_Update SHA256_Final + SHA384_Init SHA384_Update SHA384_Final + SHA512_Init SHA512_Update SHA512_Final +) + +PATCHES=( + # https://github.com/libarchive/libarchive/issues/2069 + # (we can simply update the command since we don't support old lrzip) + "${FILESDIR}/${PN}-3.7.2-lrzip.patch" + # https://github.com/libarchive/libarchive/pull/2330 + "${FILESDIR}/${P}-iso9660-times.patch" +) + +src_prepare() { + default + + # Needed for flags to be respected w/ LTO + elibtoolize +} + +multilib_src_configure() { + export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923 + + local myconf=( + $(use_enable acl) + $(use_enable static-libs static) + $(use_enable xattr) + $(use_with blake2 libb2) + $(use_with bzip2 bz2lib) + $(use_with expat) + $(use_with !expat xml2) + $(use_with iconv) + $(use_with lz4) + $(use_with lzma) + $(use_with lzo lzo2) + $(use_with nettle) + --with-zlib + $(use_with zstd) + + # Windows-specific + --without-cng + ) + if multilib_is_native_abi ; then + myconf+=( + --enable-bsdcat="$(tc-is-static-only && echo static || echo shared)" + --enable-bsdcpio="$(tc-is-static-only && echo static || echo shared)" + --enable-bsdtar="$(tc-is-static-only && echo static || echo shared)" + --enable-bsdunzip="$(tc-is-static-only && echo static || echo shared)" + ) + else + myconf+=( + --disable-bsdcat + --disable-bsdcpio + --disable-bsdtar + --disable-bsdunzip + ) + fi + + ECONF_SOURCE="${S}" econf "${myconf[@]}" +} + +multilib_src_compile() { + if multilib_is_native_abi ; then + emake + else + emake libarchive.la + fi +} + +src_test() { + mkdir -p "${T}"/bin || die + # tests fail when lbzip2[symlink] is used in place of ref bunzip2 + ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die + # workaround lrzip broken on 32-bit arches with >= 10 threads + # https://bugs.gentoo.org/927766 + cat > "${T}"/bin/lrzip <<-EOF || die + #!/bin/sh + exec "$(type -P lrzip)" -p1 "\${@}" + EOF + chmod +x "${T}/bin/lrzip" || die + local -x PATH=${T}/bin:${PATH} + multilib-minimal_src_test +} + +multilib_src_test() { + # sandbox is breaking long symlink behavior + local -x SANDBOX_ON=0 + local -x LD_PRELOAD= + # some locales trigger different output that breaks tests + local -x LC_ALL=C.UTF-8 + emake check +} + +multilib_src_install() { + if multilib_is_native_abi ; then + emake DESTDIR="${D}" install + else + local install_targets=( + install-includeHEADERS + install-libLTLIBRARIES + install-pkgconfigDATA + ) + emake DESTDIR="${D}" "${install_targets[@]}" + fi + + # Libs.private: should be used from libarchive.pc instead + find "${ED}" -type f -name "*.la" -delete || die + # https://github.com/libarchive/libarchive/issues/1766 + sed -e '/Requires\.private/s:iconv::' \ + -i "${ED}/usr/$(get_libdir)/pkgconfig/libarchive.pc" || die +} diff --git a/app-cdr/dvd+rw-tools/metadata.xml b/app-cdr/dvd+rw-tools/metadata.xml index 115e9d64a669..8a56389895fc 100644 --- a/app-cdr/dvd+rw-tools/metadata.xml +++ b/app-cdr/dvd+rw-tools/metadata.xml @@ -1,5 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <!-- maintainer-needed --> + <maintainer type="person" proxied="yes"> + <email>johnmh@johnmh.me</email> + <name>John M. Harris, Jr.</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> </pkgmetadata> diff --git a/app-containers/incus/Manifest b/app-containers/incus/Manifest index f13173f5e89f..1c61557d1e23 100644 --- a/app-containers/incus/Manifest +++ b/app-containers/incus/Manifest @@ -1,5 +1,7 @@ DIST incus-6.0.1.tar.xz 11653056 BLAKE2B d026f9fb99d7393d286006cfe759681b58b980b7a2432a98ba8a6862e17099ef6ee8d1ec1766d00fac1a6d1e748a7d10d3d5ad14b31c542618044f77a27fe255 SHA512 8218c121cf1afd307f748c0f1c0b1ba34a05fa0c43a515aab03d9f92c66becaa6bff245e93842e7b0746ce6019d66f1a5e4c317ec05e0ab088b539e5378d78dc DIST incus-6.0.1.tar.xz.asc 833 BLAKE2B c5c9d3d4796e97ef745102c13e52d691e7f087a5a0cc8e0a069ec7c94686e6e8de04d3dd247157e16eb3deea2b877453e3462ec829ced2ba9cb1928af9a3aa1b SHA512 c47df95afa7c9ef7041fb29497567ab3b1ed30c3c175b4be84bc75a6a2c47072cc291e43fa738a5a58d753b04aef87334780f9d45184a9543a49fad263859aa0 +DIST incus-6.0.2.tar.xz 11197324 BLAKE2B fa15816ea05865ce48f7cb668c3138d2d186a1876669d6eaf05ffd335d8feedf7eda41301be9d2e07879aa3fb2e7177a5bd26cb89a3789d46ef648c2fcb06db5 SHA512 ef58bc22154204a3f89b973fd5289385fa98aa2c2a97b0ff3ed2fa2a0c899ee3dc08cb46552ade2e86dc13f5de55f9ef59aea775c60eb3df74d088f8a1e2795a +DIST incus-6.0.2.tar.xz.asc 833 BLAKE2B bcdeb0d2a3684dcdcb620166865523a2e9eb595f0e7760f05a06ea0608dc4fc7111b75206fe62a63cfd90a0d0ec79206404994e53770d5e35a639a67e1ad753c SHA512 18587ddc7b7cb41418ee0e7a43875663e71c9d39a505fd55bc29fe83717b5d5cdc876c46912561610735ddf80462631716354a943a272ae5ccf0ee495aff1c1c DIST incus-6.4.tar.xz 11745236 BLAKE2B 14e9980238f1eb55b0ca8c1a9fe72e5335aa92193ba5805525bde7fa6d417b46cc193ce43e9ef6c85b86d2fc500021bfb6f30535e69722a93e395be55de64358 SHA512 a9d32526cc7ccf93fe0579f95cbd87f72cecf13c5ebe9d0ee4a61a8f921737f1842ea35d452bdf58ca3d2c5529198e8d80dfee41ce6c92a6213f1994f421c1f6 DIST incus-6.4.tar.xz.asc 833 BLAKE2B 8a6753f0b92f58095ff27d7ffdac9e70a408a1466dd224cabb47d482fe0b9b0747a03635a5bc419b26897e2ae073f9f0c0d81bd5ed3dff09a5e844ee9dd02f6d SHA512 c6d69941f4ecca2c0020001c5fe848f4bf14edf99b471ace57e38bed48b74862bf13eae1b973e0783ca5ab16bc33887ab9b98b42ff6d1a387ff5670af7666d6a DIST incus-6.5.tar.xz 11233032 BLAKE2B 667bf93a55dc58f8426765d3b536fee0e3b3f521fa64ba51948874a04dbf4549d856170f50723aaad18690169e41913507bdac4cf426c65cf89df06ae883b1e8 SHA512 e5e9d0b7458052214813201c771c24e878c0682d749bb150fd477f5319a4dc1b641c963646ee5c16981d5698e941b62a4c5cc7a5f29e9f45eebf6a443dc029ec diff --git a/app-containers/incus/incus-6.0.2.ebuild b/app-containers/incus/incus-6.0.2.ebuild new file mode 100644 index 000000000000..aaf998d9ce31 --- /dev/null +++ b/app-containers/incus/incus-6.0.2.ebuild @@ -0,0 +1,215 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit go-module linux-info optfeature systemd toolchain-funcs verify-sig + +DESCRIPTION="Modern, secure and powerful system container and virtual machine manager" +HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus" +SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz + verify-sig? ( https://linuxcontainers.org/downloads/incus/${P}.tar.xz.asc )" + +LICENSE="Apache-2.0 BSD LGPL-3 MIT" +SLOT="0/lts" +KEYWORDS="~amd64 ~arm64" +IUSE="apparmor fuidshift nls" + +DEPEND="acct-group/incus + acct-group/incus-admin + app-arch/xz-utils + >=app-containers/lxc-5.0.0:=[apparmor?,seccomp(+)] + dev-db/sqlite:3 + >=dev-libs/cowsql-1.15.6 + dev-libs/lzo + >=dev-libs/raft-0.22.1:=[lz4] + >=dev-util/xdelta-3.0[lzma(+)] + net-dns/dnsmasq[dhcp] + sys-libs/libcap + virtual/udev" +RDEPEND="${DEPEND} + fuidshift? ( !app-containers/lxd ) + net-firewall/ebtables + net-firewall/iptables + sys-apps/iproute2 + sys-fs/fuse:* + >=sys-fs/lxcfs-5.0.0 + sys-fs/squashfs-tools[lzma] + virtual/acl" +BDEPEND=">=dev-lang/go-1.21 + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-linuxcontainers )" + +CONFIG_CHECK=" + ~CGROUPS + ~IPC_NS + ~NET_NS + ~PID_NS + + ~SECCOMP + ~USER_NS + ~UTS_NS + + ~KVM + ~MACVTAP + ~VHOST_VSOCK +" + +ERROR_IPC_NS="CONFIG_IPC_NS is required." +ERROR_NET_NS="CONFIG_NET_NS is required." +ERROR_PID_NS="CONFIG_PID_NS is required." +ERROR_SECCOMP="CONFIG_SECCOMP is required." +ERROR_UTS_NS="CONFIG_UTS_NS is required." + +WARNING_KVM="CONFIG_KVM and CONFIG_KVM_AMD/-INTEL is required for virtual machines." +WARNING_MACVTAP="CONFIG_MACVTAP is required for virtual machines." +WARNING_VHOST_VSOCK="CONFIG_VHOST_VSOCK is required for virtual machines." + +# Go magic. +QA_PREBUILT="/usr/bin/incus + /usr/bin/incus-agent + /usr/bin/incus-benchmark + /usr/bin/incus-migrate + /usr/bin/lxc-to-incus + /usr/sbin/fuidshift + /usr/sbin/incusd + /usr/sbin/lxd-to-incus" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc + +# The testsuite must be run as root. +# make: *** [Makefile:156: check] Error 1 +RESTRICT="test" + +GOPATH="${S}/_dist" + +src_unpack() { + verify-sig_src_unpack + go-module_src_unpack +} + +src_prepare() { + export GOPATH="${S}/_dist" + + default + + sed -i \ + -e "s:\./configure:./configure --prefix=/usr --libdir=${EPREFIX}/usr/lib/incus:g" \ + -e "s:make:make ${MAKEOPTS}:g" \ + Makefile || die + + sed -i \ + -e "s:/usr/share/OVMF:/usr/share/edk2-ovmf:g" \ + -e "s:OVMF_VARS.ms.fd:OVMF_VARS.fd:g" \ + internal/server/instance/drivers/edk2/driver_edk2.go || die "Failed to fix hardcoded ovmf paths." + + # Fix hardcoded virtfs-proxy-helper file path, see bug 798924 + sed -i \ + -e "s:/usr/lib/qemu/virtfs-proxy-helper:/usr/libexec/virtfs-proxy-helper:g" \ + internal/server/device/device_utils_disk.go || die "Failed to fix virtfs-proxy-helper path." + + cp "${FILESDIR}"/incus-0.4.service "${T}"/incus.service || die + if use apparmor; then + sed -i \ + '/^EnvironmentFile=.*/a ExecStartPre=\/usr\/libexec\/lxc\/lxc-apparmor-load' \ + "${T}"/incus.service || die + fi + + # Disable -Werror's from go modules. + find "${S}" -name "cgo.go" -exec sed -i "s/ -Werror / /g" {} + || die +} + +src_configure() { :; } + +src_compile() { + export GOPATH="${S}/_dist" + export CGO_LDFLAGS_ALLOW="-Wl,-z,now" + + for k in incus-benchmark incus-simplestreams incus-user incus lxc-to-incus lxd-to-incus ; do + ego install -v -x "${S}/cmd/${k}" + done + + if use fuidshift ; then + ego install -v -x "${S}/cmd/fuidshift" + fi + + ego install -v -x -tags libsqlite3 "${S}"/cmd/incusd + + # Needs to be built statically + CGO_ENABLED=0 go install -v -tags netgo "${S}"/cmd/incus-migrate + CGO_ENABLED=0 go install -v -tags agent,netgo "${S}"/cmd/incus-agent + + use nls && emake build-mo +} + +src_test() { + emake check +} + +src_install() { + export GOPATH="${S}/_dist" + + if tc-is-cross-compiler ; then + local bindir="_dist/bin/linux_${GOARCH}" + else + local bindir="_dist/bin" + fi + + newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup + + # Admin tools + for l in incusd incus-user lxd-to-incus ; do + dosbin ${bindir}/${l} + done + + # User tools + for m in incus-agent incus-benchmark incus-migrate incus-simplestreams incus lxc-to-incus ; do + dobin ${bindir}/${m} + done + + # fuidshift, should be moved under admin tools at some point + if use fuidshift ; then + dosbin ${bindir}/fuidshift + fi + + newconfd "${FILESDIR}"/incus-6.0.confd incus + newinitd "${FILESDIR}"/incus-6.0.initd incus + newinitd "${FILESDIR}"/incus-user-0.4.initd incus-user + + systemd_dounit "${T}"/incus.service + systemd_newunit "${FILESDIR}"/incus-0.4.socket incus.socket + systemd_newunit "${FILESDIR}"/incus-startup-0.4.service incus-startup.service + systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service + systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket + + if ! tc-is-cross-compiler; then + # Generate and install shell completion files. + mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die + "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die + "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die + "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die + else + ewarn "Shell completion files not installed! Install them manually with incus completion --help" + fi + + dodoc AUTHORS + dodoc -r doc/* + use nls && domo po/*.mo +} + +pkg_postinst() { + elog + elog "Please see" + elog " https://wiki.gentoo.org/wiki/Incus" + elog " https://wiki.gentoo.org/wiki/Incus#Migrating_from_LXD" + elog + optfeature "virtual machine support" app-cdr/cdrtools app-emulation/qemu[spice,usbredir,virtfs] + optfeature "btrfs storage backend" sys-fs/btrfs-progs + optfeature "ipv6 support" net-dns/dnsmasq[ipv6] + optfeature "full incus-migrate support" net-misc/rsync + optfeature "lvm2 storage backend" sys-fs/lvm2 + optfeature "zfs storage backend" sys-fs/zfs + elog + elog "Be sure to add your local user to the incus group." + elog +} diff --git a/app-containers/lxc/lxc-6.0.1.ebuild b/app-containers/lxc/lxc-6.0.1.ebuild index eae2f21f0b05..415d5d6ed638 100644 --- a/app-containers/lxc/lxc-6.0.1.ebuild +++ b/app-containers/lxc/lxc-6.0.1.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz LICENSE="GPL-2 LGPL-2.1 LGPL-3" SLOT="0/1.8" # SONAME liblxc.so.1 + ${PV//./} _if_ breaking ABI change while bumping. -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +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 diff --git a/app-editors/vis/vis-0.9.ebuild b/app-editors/vis/vis-0.9.ebuild index dba3a4d7c4fb..453b5d46dd6f 100644 --- a/app-editors/vis/vis-0.9.ebuild +++ b/app-editors/vis/vis-0.9.ebuild @@ -16,7 +16,7 @@ else https://github.com/martanne/vis/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz test? ( https://github.com/martanne/vis-test/archive/${VIS_TEST_COMMIT}.tar.gz -> vis-test-${VIS_TEST_COMMIT}.tar.gz ) " - KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" + KEYWORDS="amd64 arm ~arm64 ~riscv x86" fi DESCRIPTION="modern, legacy free, simple yet efficient vim-like editor" diff --git a/app-emacs/htmlize/Manifest b/app-emacs/htmlize/Manifest index 3adc75deeceb..5163e8104c6b 100644 --- a/app-emacs/htmlize/Manifest +++ b/app-emacs/htmlize/Manifest @@ -1 +1,2 @@ DIST htmlize-1.56.tar.gz 50922 BLAKE2B 645a1ceb272711346c9175f06e13821afb056de4a43a309d96b51ef78ca75e662252286f40445cdec2273ab7734045aeec43c9cb9ed451cda76eea6606433411 SHA512 8788fde3cefb27fd82d5859593bbfc9250f9e60962e48eaa79b9c54bcd31574953a4131ce2d562efa2f59a5d725183a851075cd2c868891bf3f810607a2da57e +DIST htmlize-1.58.tar.gz 51270 BLAKE2B a4487b167e17692ae8e27e8bf9883ca7a20a936746add90c32ce9da29d678358468ddfbf5ce3e532eb2c34ef151e7fb89999827858e2ba1cb7592eb84c2d2293 SHA512 cd9dcb66f22f3a7d4444dbe92e559234bb03a9608879a7c42c89f2868ecba910d186aeaf8568f96d792a7bd0f40ac0c86c9d6e70323d50390a5b54cf1bd31ede diff --git a/app-emacs/htmlize/htmlize-1.58.ebuild b/app-emacs/htmlize/htmlize-1.58.ebuild new file mode 100644 index 000000000000..24dfb362af22 --- /dev/null +++ b/app-emacs/htmlize/htmlize-1.58.ebuild @@ -0,0 +1,30 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +REAL_PN="emacs-${PN}" + +inherit elisp + +DESCRIPTION="HTML-ize font-lock buffers in Emacs" +HOMEPAGE="https://www.emacswiki.org/emacs/Htmlize + https://github.com/hniksic/emacs-htmlize" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/hniksic/${REAL_PN}.git" +else + SRC_URI="https://github.com/hniksic/${REAL_PN}/archive/release/${PV}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}/${REAL_PN}-release-${PV}" + + KEYWORDS="~amd64 ~ppc ~x86" +fi + +LICENSE="GPL-2+" +SLOT="0" + +DOCS=( README.md NEWS ) +SITEFILE="50${PN}-gentoo.el" diff --git a/app-emacs/indent-bars/Manifest b/app-emacs/indent-bars/Manifest index 4397228c1d6f..2be1e565b1d6 100644 --- a/app-emacs/indent-bars/Manifest +++ b/app-emacs/indent-bars/Manifest @@ -1 +1,2 @@ DIST indent-bars-0.2.tar.gz 33072 BLAKE2B b5f0b80f1b4291c19fec603a5610ae020ae1cd1531278c5eedf814c3aae4be76d5731b553220314ef67f785f1822c7861e088a5ec163505d9303e9ec2c5fda5c SHA512 e5eab37d5963855948efdd9739a44306c60fafef0cd589edcb6550ff52a4e6a0e403bde8124838d250c1bb78aff0bfbfa1e45275458af3e0ae00472628981b1b +DIST indent-bars-0.7.4.tar.gz 49844 BLAKE2B 755858ddfb5dfb5f5e8af0e99f05571c33d52190b2117c34a5fc3f8b04548b6463b766f515ca5bdcd416d7f51eb251a65f2457562e9539365ede6bb7ef8c0eb0 SHA512 a8f95379925b92cb595b584742a8d916a470b9149849534b0bbdb644daf8f2ba60f0951dd99d393eceafe251c0eba048a5b703f697ac0870f51e5e0af805c4d0 diff --git a/app-emacs/indent-bars/indent-bars-0.7.4.ebuild b/app-emacs/indent-bars/indent-bars-0.7.4.ebuild new file mode 100644 index 000000000000..948a53369085 --- /dev/null +++ b/app-emacs/indent-bars/indent-bars-0.7.4.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +NEED_EMACS="27.1" + +inherit elisp + +DESCRIPTION="Fast, configurable indentation guide-bars for Emacs" +HOMEPAGE="https://github.com/jdtsmith/indent-bars/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/jdtsmith/${PN}.git" +else + SRC_URI="https://github.com/jdtsmith/${PN}/archive/v${PV}.tar.gz + -> ${P}.tar.gz" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" + +RDEPEND=" + >=app-emacs/compat-30.0.0.0 +" +BDEPEND=" + ${RDEPEND} +" + +SITEFILE="50${PN}-gentoo.el" +DOCS=( README.md examples.md ) diff --git a/app-emacs/org-contrib/Manifest b/app-emacs/org-contrib/Manifest index 45dcd5d53b8f..26790e027a15 100644 --- a/app-emacs/org-contrib/Manifest +++ b/app-emacs/org-contrib/Manifest @@ -1,3 +1,2 @@ -DIST org-contrib-0.4.1.tar.gz 177509 BLAKE2B 4aea73aa21f36d8e655feb78e34545ba962fe82e9516010c2f55c91009fc67ca9ce12c0309174704a2ace7f98401921571b927549bf8c134cdb020e1079898c7 SHA512 e582963ab65fd88cd01013733f497c19a724b9584ae7dec178604377f347f3f8d3aa1e7871ee1ab3903a0fc94baa4ff3ce0c0591c0d5c918aeda1a9a747f9d6b -DIST org-contrib-0.4.2.tar.gz 175913 BLAKE2B 42e4bc473ec63775e77e402614309f85c9228094bf4a8c604df1c11988ea116327fb97f8d914509075d2e988521c525ba1ac7a5da30623a9a0e2591695c39e1c SHA512 dfa2982a279384d5f0b3fcbfb3b107116c78f364d76c86952a29db6e41a7229295b700b6451f7085eb75307d7f83d1a8dbcf7c268127d989270344328a574167 DIST org-contrib-0.5.tar.gz 168071 BLAKE2B 8abc53edfa5ca5aa1c5568deabf6e9d167eae1745f7531b5a308c7b3f25c282a06003f37ef6ab45156abd067b332f1d718268c6854122fbd3c5755da43782455 SHA512 ef7b26a7626768cb0f3b95330c12eef8f8005a5e44a41f3b0426bc98b6d43b91655ec78685d6af71fe9baea305216cb991251b1141928af4dfdcc6e3321ba8f1 +DIST org-contrib-0.6.tar.gz 168041 BLAKE2B 43b0afeda86abaaf63f05f23d7be891728b9d01fa27931e84519f4b13e2d09ee7477be07234f864f5d46495d22bd7b80edeb90093539f91ae954423a1ca5208d SHA512 02502adef4e3c2a315ba433ccf7862736c3a222d6cb2b3e7ccf96237bc64beeeab6e57c614cca062a528bdcec32add3525da9828684c2f310f29b6c37d263c98 diff --git a/app-emacs/org-contrib/org-contrib-0.4.1.ebuild b/app-emacs/org-contrib/org-contrib-0.4.1.ebuild deleted file mode 100644 index 85893537b110..000000000000 --- a/app-emacs/org-contrib/org-contrib-0.4.1.ebuild +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit elisp - -DESCRIPTION="Contributed packages to Org" -HOMEPAGE="https://www.orgmode.org/" -SRC_URI="https://git.sr.ht/~bzg/${PN}/archive/release_${PV}.tar.gz -> ${P}.tar.gz" -S="${WORKDIR}/${PN}-release_${PV}/lisp" - -LICENSE="GPL-3+" -SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" - -RDEPEND=">=app-emacs/org-mode-9.5" - -DOCS="../README.org" -SITEFILE="50${PN}-gentoo.el" diff --git a/app-emacs/org-contrib/org-contrib-0.4.2.ebuild b/app-emacs/org-contrib/org-contrib-0.6.ebuild index 5c5af7aa3af6..70176f372f7d 100644 --- a/app-emacs/org-contrib/org-contrib-0.4.2.ebuild +++ b/app-emacs/org-contrib/org-contrib-0.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,10 +6,11 @@ EAPI=8 inherit elisp DESCRIPTION="Contributed packages to Org" -HOMEPAGE="https://www.orgmode.org/" +HOMEPAGE="https://orgmode.org/" if [[ ${PV} == *9999* ]] ; then inherit git-r3 + EGIT_REPO_URI="https://git.sr.ht/~bzg/${PN}" else SRC_URI="https://git.sr.ht/~bzg/${PN}/archive/release_${PV}.tar.gz @@ -22,7 +23,9 @@ fi LICENSE="GPL-3+" SLOT="0" -RDEPEND=">=app-emacs/org-mode-9.5" +RDEPEND=" + >=app-emacs/org-mode-9.5 +" DOCS=( ../README.org ) SITEFILE="50${PN}-gentoo.el" diff --git a/app-misc/fastfetch/Manifest b/app-misc/fastfetch/Manifest index bc2e8e1a0b75..cbaec5dc2a2a 100644 --- a/app-misc/fastfetch/Manifest +++ b/app-misc/fastfetch/Manifest @@ -2,3 +2,4 @@ DIST fastfetch-2.21.3.tar.gz 1093534 BLAKE2B dca99e337e1239958add6323c159f58de5f DIST fastfetch-2.22.0.tar.gz 1099230 BLAKE2B 4faef7574bc8897f17c9e59f05f033f8952d97ed56677f0ebe5afec11b7b708fce5d907431dda567cc71b0dd067239d97614b6035792009fff340a069691b547 SHA512 edb4532d220e031d666eac3ae12a004e1481a7c36c68a94b17323953822d0cedb80cdf34c84a184766e9bad64089aaadc3828b5e13f8867e961533c6919dbeae DIST fastfetch-2.23.0.tar.gz 1105725 BLAKE2B 8b79deb0f35d8238979441014ca049fcfa838c27323fec13127f5a48e6b28feb03965135c1a338b6bd1e59913e660fc91196c27acbe1b693bc5ff7727efaa5cb SHA512 aad3d549c0f4be3b1f99e7bbbf992dccf79f9ef7ea6a26bfc31ba574b1a32496a1cf75b85c32e0643941cad4061d7ba003b42924f9f272a825a1a09b628acc39 DIST fastfetch-2.24.0.tar.gz 1104540 BLAKE2B 619d77e533a9e105228d2ce7bb077c7ac561c2ebfe9d7f4d535c8a736ff9123b333865b237409d5fd65ed27d3943ec86a9e6b2ce9a68e317c178a741046b616b SHA512 6dde07346a6ae08c49f8deca19f974fafd94a964542d97f70c39625ccbf151bf01aa626af7582367dab208bb09fc2208f18ba831bdb06202a271f05831617ffd +DIST fastfetch-2.25.0.tar.gz 1110619 BLAKE2B 808b33ecdd28f7e31dd55ece10dd7c9ef1b4b731db87051cc7466ecfc28d94f1d2229bc8cc6486705d187d8be9b3daf08ed30dce58616bc35c5a6812570694fb SHA512 690c450cfdf53c31c99ab295702f36e0499024a79e3ebf00da0e3ad3d4bdd3b795dac59a7592451f4cbc652830297b1ec4f55428a522ae3afe50fa647334737f diff --git a/app-misc/fastfetch/fastfetch-2.25.0.ebuild b/app-misc/fastfetch/fastfetch-2.25.0.ebuild new file mode 100644 index 000000000000..2609a6c86f16 --- /dev/null +++ b/app-misc/fastfetch/fastfetch-2.25.0.ebuild @@ -0,0 +1,110 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake flag-o-matic + +DESCRIPTION="Fast neofetch-like system information tool" +HOMEPAGE="https://github.com/fastfetch-cli/fastfetch" +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/fastfetch-cli/fastfetch.git" + [[ ${PV} == *0.1.9999 ]] && EGIT_BRANCH=master + [[ ${PV} == *0.2.9999 ]] && EGIT_BRANCH=dev + [[ "${EGIT_BRANCH}" == "" ]] && die "Please set a git branch" +else + SRC_URI="https://github.com/fastfetch-cli/fastfetch/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="X chafa dbus ddcutil drm elf gnome imagemagick opencl opengl osmesa pulseaudio sqlite test vulkan wayland xcb xfce xrandr" +RESTRICT="!test? ( test )" + +# note - qa-vdb will always report errors because fastfetch loads the libs dynamically +# make sure to crank yyjson minimum version to match bundled version +RDEPEND=" + >=dev-libs/yyjson-0.10.0 + sys-libs/zlib + X? ( x11-libs/libX11 ) + chafa? ( media-gfx/chafa ) + dbus? ( sys-apps/dbus ) + ddcutil? ( app-misc/ddcutil:= ) + drm? ( x11-libs/libdrm ) + elf? ( virtual/libelf:= ) + gnome? ( + dev-libs/glib + gnome-base/dconf + ) + imagemagick? ( media-gfx/imagemagick:= ) + opencl? ( virtual/opencl ) + opengl? ( media-libs/libglvnd[X] ) + osmesa? ( media-libs/mesa[osmesa] ) + pulseaudio? ( media-libs/libpulse ) + sqlite? ( dev-db/sqlite:3 ) + vulkan? ( + media-libs/vulkan-loader + sys-apps/pciutils + ) + wayland? ( dev-libs/wayland ) + xcb? ( x11-libs/libxcb ) + xfce? ( xfce-base/xfconf ) + xrandr? ( x11-libs/libXrandr ) +" +DEPEND=" + ${RDEPEND} + vulkan? ( dev-util/vulkan-headers ) +" +BDEPEND="virtual/pkgconfig" + +REQUIRED_USE=" + xrandr? ( X ) + chafa? ( imagemagick ) +" + +src_configure() { + local fastfetch_enable_imagemagick7=no + local fastfetch_enable_imagemagick6=no + if use imagemagick; then + fastfetch_enable_imagemagick7=$(has_version '>=media-gfx/imagemagick-7.0.0' && echo yes || echo no) + fastfetch_enable_imagemagick6=$(has_version '<media-gfx/imagemagick-7.0.0' && echo yes || echo no) + fi + + local mycmakeargs=( + -DENABLE_RPM=no + -DENABLE_ZLIB=yes + -DENABLE_SYSTEM_YYJSON=yes + -DIS_MUSL=$(usex elibc_musl) + -DINSTALL_LICENSE=no + + -DENABLE_CHAFA=$(usex chafa) + -DENABLE_DBUS=$(usex dbus) + -DENABLE_DCONF=$(usex gnome) + -DENABLE_DDCUTIL=$(usex ddcutil) + -DENABLE_DRM=$(usex drm) + -DENABLE_ELF=$(usex elf) + -DENABLE_EGL=$(usex opengl) + -DENABLE_GIO=$(usex gnome) + -DENABLE_GLX=$(usex opengl) + -DENABLE_IMAGEMAGICK6=${fastfetch_enable_imagemagick6} + -DENABLE_IMAGEMAGICK7=${fastfetch_enable_imagemagick7} + -DENABLE_OPENCL=$(usex opencl) + -DENABLE_OSMESA=$(usex osmesa) + -DENABLE_PULSE=$(usex pulseaudio) + -DENABLE_SQLITE3=$(usex sqlite) + -DENABLE_VULKAN=$(usex vulkan) + -DENABLE_WAYLAND=$(usex wayland) + -DENABLE_X11=$(usex X) + -DENABLE_XCB=$(usex xcb) + -DENABLE_XCB_RANDR=$(usex xcb) + -DENABLE_XFCONF=$(usex xfce) + -DENABLE_XRANDR=$(usex xrandr) + -DBUILD_TESTS=$(usex test) + ) + + append-cppflags -DNDEBUG + + cmake_src_configure +} diff --git a/app-misc/regex-markup/files/regex-markup-0.10.0-c99.patch b/app-misc/regex-markup/files/regex-markup-0.10.0-c99.patch new file mode 100644 index 000000000000..4988b57e9d75 --- /dev/null +++ b/app-misc/regex-markup/files/regex-markup-0.10.0-c99.patch @@ -0,0 +1,11 @@ +https://bugs.gentoo.org/923618 +--- a/m4/regex.m4 ++++ b/m4/regex.m4 +@@ -34,6 +34,7 @@ AC_DEFUN([gl_INCLUDED_REGEX], + jm_cv_func_working_re_compile_pattern, + AC_TRY_RUN( + [#include <stdio.h> ++#include <stdlib.h> + #include <string.h> + #include <regex.h> + int diff --git a/app-misc/regex-markup/regex-markup-0.10.0-r2.ebuild b/app-misc/regex-markup/regex-markup-0.10.0-r3.ebuild index cee94b1f3d2f..e31d3e2708db 100644 --- a/app-misc/regex-markup/regex-markup-0.10.0-r2.ebuild +++ b/app-misc/regex-markup/regex-markup-0.10.0-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -17,6 +17,7 @@ IUSE="examples nls" PATCHES=( "${FILESDIR}"/${P}-locale.patch "${FILESDIR}"/${PN}-0.10.0-r2-configure.patch + "${FILESDIR}"/${PN}-0.10.0-c99.patch ) src_prepare() { diff --git a/app-office/gnucash/gnucash-5.8-r100.ebuild b/app-office/gnucash/gnucash-5.8-r100.ebuild new file mode 100644 index 000000000000..23341e458966 --- /dev/null +++ b/app-office/gnucash/gnucash-5.8-r100.ebuild @@ -0,0 +1,233 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_REQ_USE="regex" +GUILE_COMPAT=( 2-2 3-0 ) +PYTHON_COMPAT=( python3_{10..12} ) + +inherit cmake flag-o-matic gnome2-utils guile-single python-single-r1 + +# Please bump with app-doc/gnucash-docs +DESCRIPTION="A personal finance manager" +HOMEPAGE="https://www.gnucash.org/" +SRC_URI="https://github.com/Gnucash/gnucash/releases/download/${PV}/${P}.tar.bz2" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv ~x86" + +IUSE="aqbanking debug doc examples gnome-keyring +gui mysql nls ofx postgres python quotes smartcard sqlite test" + +# Currently restricting due to the following: +# https://bugs.gnucash.org/show_bug.cgi?id=799159#c1 +# +# Tests can be run but must first unmerge any existing GnuCash installation. +RESTRICT="test" + +# Examples doesn't build unless GUI is also built +REQUIRED_USE=" + ${GUILE_REQUIRED_USE} + examples? ( gui ) + python? ( ${PYTHON_REQUIRED_USE} ) + smartcard? ( aqbanking ) +" + +# dev-libs/boost must always be built with nls enabled. +# net-libs/aqbanking dropped gtk with v6. So, to simplify the +# dependency, we just rely on that. +RDEPEND=" + ${GUILE_DEPS} + >=dev-libs/glib-2.56.1:2 + >=sys-libs/zlib-1.1.4 + dev-libs/boost:=[icu,nls] + dev-libs/icu:= + dev-libs/libxml2:2 + dev-libs/libxslt + aqbanking? ( + >=net-libs/aqbanking-6[ofx?] + >=sys-libs/gwenhywfar-5.6.0:= + smartcard? ( sys-libs/libchipcard ) + ) + gnome-keyring? ( >=app-crypt/libsecret-0.18 ) + gui? ( + >=x11-libs/gtk+-3.22.30:3 + gnome-base/dconf + net-libs/webkit-gtk:4.1= + aqbanking? ( sys-libs/gwenhywfar:=[gtk] ) + ) + mysql? ( + dev-db/libdbi + dev-db/libdbi-drivers[mysql] + ) + ofx? ( >=dev-libs/libofx-0.9.12:= ) + postgres? ( + dev-db/libdbi + dev-db/libdbi-drivers[postgres] + ) + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/pygobject:3[${PYTHON_USEDEP}] + ') + ) + quotes? ( + >=dev-perl/Finance-Quote-1.11 + dev-perl/JSON-Parse + dev-perl/HTML-TableExtract + ) + sqlite? ( + dev-db/libdbi + dev-db/libdbi-drivers[sqlite] + ) +" + +# gtest is a required dep +# see https://bugs.gnucash.org/show_bug.cgi?id=795250 +DEPEND=" + ${RDEPEND} + >=sys-devel/gettext-0.20 + dev-lang/perl + dev-perl/XML-Parser + dev-build/libtool + >=dev-cpp/gtest-1.8.0 +" +# distutils is not available in python3.12, but it is still in setuptools +BDEPEND=" + dev-lang/swig + >=dev-build/cmake-3.10 + virtual/pkgconfig + python? ( + $(python_gen_cond_dep ' + dev-python/setuptools[${PYTHON_USEDEP}] + ') + ) +" + +PDEPEND=" + doc? ( + ~app-doc/gnucash-docs-${PV} + gnome-extra/yelp + ) +" + +PATCHES=( + "${FILESDIR}/${PN}-5.0-exclude-license.patch" + "${FILESDIR}/${PN}-4.12-drop-broken-test.patch" + "${FILESDIR}/${PN}-5.6-no-werror.patch" + + # This is only to prevent webkit2gtk-4 from being selected. + # https://bugs.gentoo.org/893676 + "${FILESDIR}/${PN}-5.0-webkit2gtk-4.1.patch" +) + +pkg_setup() { + guile-single_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + guile_bump_sources + + # ODR violation in libgnucash/engine/test/utest-Account.cpp and libgnucash/engine/test/utest-Split.cpp + # with Fixture struct + use test && filter-lto + + # Fix tests writing to /tmp + local fixtestfiles=( + gnucash/report/test/test-report-html.scm + gnucash/report/reports/standard/test/test-invoice.scm + gnucash/report/reports/standard/test/test-new-owner-report.scm + gnucash/report/reports/standard/test/test-owner-report.scm + gnucash/report/reports/standard/test/test-transaction.scm + gnucash/report/reports/standard/test/test-portfolios.scm + gnucash/report/reports/standard/test/test-charts.scm + gnucash/report/test/test-report.scm + gnucash/report/test/test-commodity-utils.scm + gnucash/report/test/test-report-extras.scm + libgnucash/backend/dbi/test/test-backend-dbi-basic.cpp + libgnucash/backend/xml/test/test-xml-pricedb.cpp + ) + for x in "${fixtestfiles[@]}"; do + sed -i -e "s|\"/tmp/|\"${T}/|g" "${S}/${x}" || die "sed of ${S}/${x} failed" + done +} + +src_configure() { + export GUILE_AUTO_COMPILE=0 + + local sql_on_off="OFF" + if use mysql || use postgres || use sqlite ; then + sql_on_off="ON" + fi + + local mycmakeargs=( + -DCOMPILE_GSCHEMAS=OFF + -DDISABLE_NLS=$(usex !nls) + -DWITH_AQBANKING=$(usex aqbanking) + -DWITH_GNUCASH=$(usex gui) + -DWITH_OFX=$(usex ofx) + -DWITH_PYTHON=$(usex python) + -DWITH_SQL=${sql_on_off} + ) + + cmake_src_configure +} + +src_test() { + LOCALE_TESTS= + if type locale >/dev/null 2>&1; then + MY_LOCALES="$(locale -a)" + if [[ "${MY_LOCALES}" != *en_US* || + "${MY_LOCALES}" != *en_GB* || + "${MY_LOCALES}" != *fr_FR* ]] ; then + ewarn "Missing one or more of en_US, en_GB, or fr_FR locales." + else + LOCALE_TESTS=true + fi + else + ewarn "'locale' not found." + fi + + if [[ ! "${LOCALE_TESTS}" ]]; then + ewarn "Disabling test-qof and test-gnc-numeric." + echo 'set(CTEST_CUSTOM_TESTS_IGNORE test-qof test-gnc-numeric)' \ + > "${BUILD_DIR}"/CTestCustom.cmake || die "Failed to disable test-qof and test-gnc-numeric!" + fi + + cd "${BUILD_DIR}" || die "Failed to enter ${BUILD_DIR}" + XDG_DATA_HOME="${T}/$(whoami)" eninja check + cmake_src_test +} + +src_install() { + cmake_src_install + guile_unstrip_ccache + + use examples && docompress -x /usr/share/doc/${PF}/examples + + if use python ; then + python_optimize + python_optimize "${ED}"/usr/share/gnucash/python + fi +} + +pkg_postinst() { + if use gui ; then + xdg_icon_cache_update + gnome2_schemas_update + fi + xdg_desktop_database_update + xdg_mimeinfo_database_update +} + +pkg_postrm() { + if use gui ; then + xdg_icon_cache_update + gnome2_schemas_update + fi + xdg_desktop_database_update + xdg_mimeinfo_database_update +} diff --git a/app-office/joplin-desktop/Manifest b/app-office/joplin-desktop/Manifest index 61ba1d4cb866..3b6e2b1e0a97 100644 --- a/app-office/joplin-desktop/Manifest +++ b/app-office/joplin-desktop/Manifest @@ -1,4 +1,3 @@ -DIST Joplin-3.0.13.AppImage 239287815 BLAKE2B 0766d60d974698758872c046046b133629583f06cbc3b4fd33d0f4886bc7eba3188a47ec5205b5396dbe7a4bd537c0c9ec9677ace97a03dc0d0087c540bb1dd9 SHA512 f96ca6dfb18a5794236e16fd0c0e0c851af2cc20ecfd6095ebbdbf74bd29888726676744196927f84f5f03518ad2bb3960bb599c149b480b8a2383e936eb4a30 DIST Joplin-3.0.14.AppImage 239287839 BLAKE2B 3aedf934239f2f20da76a7a59e1e11587a7ad7aadbab3718be79d62100c5b98560c9856a16948dea4f0f2f2a1c3e412dadb27d5c88b5f4c23be922775d611b08 SHA512 27e44ae52c9954f5ce1b2cb96e2287725d1371262c645eb73953cbe4de9e1ce875211842a666153b8e4820e3117f91249f2e9ee7770e24b15383a269ce6829ce DIST Joplin-3.0.15.AppImage 239276178 BLAKE2B 749095fd4e89a876155b4f83b87ec461df3054d75b81eb13c62383d6ba43fb7e846f9d48a855a14d6a4b8cb26e6660e28d08dca5e5f9a7191d21c29982ad250e SHA512 ace649b9e4c4039e0e85f6fee6a9e39b850601ae493a4b98451f651ca24fd9177fad89b5b81cb116b3b41c82b7ccd76f870f0293ca8398d20cdb74e992b9b0c8 DIST Joplin-3.1.3.AppImage 241399868 BLAKE2B a8a6960788dd0e703387fa3e88722513d6a394d4b347b6a69e0cf0079c2e4ce276e21fac60fe9a7a8f573259cdce5dc19dd871c06b6faffeedf5f6ded874a930 SHA512 b49bfed97bcc2210ef6c74d5a431d0620fe43332418486cc854e2f525c9e93d62682a732a03e977ed42ca55eabcde5e897406c3ecf4cc6d86fa6e333a71b9345 diff --git a/app-office/joplin-desktop/joplin-desktop-3.0.13.ebuild b/app-office/joplin-desktop/joplin-desktop-3.0.13.ebuild deleted file mode 100644 index 8178f87f501f..000000000000 --- a/app-office/joplin-desktop/joplin-desktop-3.0.13.ebuild +++ /dev/null @@ -1,103 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# NOTICE: This is a Electron app (oh my) and the upstream only provides AppImages. - -EAPI=8 - -APPIMAGE="Joplin-${PV}.AppImage" - -inherit desktop xdg - -DESCRIPTION="Secure note taking and to-do app with synchronization capabilities" -HOMEPAGE="https://joplinapp.org/ - https://github.com/laurent22/joplin/" -SRC_URI="https://github.com/laurent22/joplin/releases/download/v${PV}/${APPIMAGE}" - -LICENSE="AGPL-3+" -SLOT="0" -KEYWORDS="-* amd64" -RESTRICT="bindist" - -RDEPEND=" - >=app-accessibility/at-spi2-core-2.46.0:2 - app-crypt/libsecret[crypt] - app-misc/ca-certificates - dev-libs/expat - dev-libs/glib:2 - dev-libs/nspr - dev-libs/nss - media-libs/alsa-lib - media-libs/libcanberra[gtk3] - media-libs/libglvnd - media-libs/mesa - net-misc/curl - net-print/cups - sys-apps/dbus - sys-libs/zlib - sys-process/lsof - x11-libs/cairo - x11-libs/gtk+:3 - x11-libs/libdrm - x11-libs/libnotify - x11-libs/libX11 - x11-libs/libxcb - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libxkbcommon - x11-libs/libxkbfile - x11-libs/libXrandr - x11-libs/libXScrnSaver - x11-libs/pango - x11-misc/xdg-utils -" - -QA_PREBUILT="*" - -src_unpack() { - mkdir -p "${S}" || die - cp "${DISTDIR}/${APPIMAGE}" "${S}" || die - - cd "${S}" || die # "appimage-extract" unpacks to current directory. - chmod +x "${S}/${APPIMAGE}" || die - "${S}/${APPIMAGE}" --appimage-extract || die -} - -src_prepare() { - # Fix permissions. - find "${S}" -type d -exec chmod a+rx {} + || die - find "${S}" -type f -exec chmod a+r {} + || die - - default -} - -src_install() { - cd "${S}/squashfs-root" || die - - insinto /usr/share - doins -r ./usr/share/icons - - local apphome="/opt/${PN}" - local toremove=( - .DirIcon - @joplinapp-desktop.desktop - @joplinapp-desktop.png - AppRun - LICENSE.electron.txt - LICENSES.chromium.html - resources/app.asar.unpacked/node_modules/7zip-bin-linux/arm - resources/app.asar.unpacked/node_modules/7zip-bin-linux/arm64 - resources/app.asar.unpacked/node_modules/node-notifier - usr - ) - rm -f -r "${toremove[@]}" || die - - mkdir -p "${ED}/${apphome}" || die - cp -r . "${ED}/${apphome}" || die - - dosym -r "${apphome}/@joplinapp-desktop" "/usr/bin/${PN}" - make_desktop_entry "${PN}" Joplin @joplinapp-desktop "Office;" \ - "StartupWMClass=Joplin\nMimeType=x-scheme-handler/joplin;" -} diff --git a/app-office/libreoffice-l10n/libreoffice-l10n-24.2.6.2.ebuild b/app-office/libreoffice-l10n/libreoffice-l10n-24.2.6.2.ebuild index 36af8344e564..9f52527950ee 100644 --- a/app-office/libreoffice-l10n/libreoffice-l10n-24.2.6.2.ebuild +++ b/app-office/libreoffice-l10n/libreoffice-l10n-24.2.6.2.ebuild @@ -17,7 +17,7 @@ BASE_SRC_URI_STABLE="https://download.documentfoundation.org/${PN/-l10n/}/stable LICENSE="|| ( LGPL-3 MPL-1.1 )" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux" +KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux" IUSE="offlinehelp" # diff --git a/app-office/libreoffice/libreoffice-24.2.6.2.ebuild b/app-office/libreoffice/libreoffice-24.2.6.2.ebuild index dea7db5c8f02..31e34d86323b 100644 --- a/app-office/libreoffice/libreoffice-24.2.6.2.ebuild +++ b/app-office/libreoffice/libreoffice-24.2.6.2.ebuild @@ -111,7 +111,7 @@ LICENSE="|| ( LGPL-3 MPL-1.1 )" SLOT="0" [[ ${MY_PV} == *9999* ]] || \ -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux" +KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux" COMMON_DEPEND="${PYTHON_DEPS} app-arch/unzip diff --git a/app-shells/gash/gash-0.3.0-r100.ebuild b/app-shells/gash/gash-0.3.0-r100.ebuild new file mode 100644 index 000000000000..2dc3bad3b8f1 --- /dev/null +++ b/app-shells/gash/gash-0.3.0-r100.ebuild @@ -0,0 +1,29 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) + +inherit guile-single + +DESCRIPTION="POSIX-compatible shell written in Guile Scheme" +HOMEPAGE="https://savannah.nongnu.org/projects/gash/" +SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +RESTRICT="strip" + +REQUIRED_USE="${QUILE_REQUIRED_USE}" + +RDEPEND="${GUILE_DEPS}" +DEPEND="${RDEPEND}" +BDEPEND="sys-apps/texinfo" + +src_prepare() { + guile-single_src_prepare + + sed -i -e "s|guile|${GUILE}|" tests/temporary-assignments.org || die +} diff --git a/app-text/cherrytree/Manifest b/app-text/cherrytree/Manifest index 58fd75dce07b..8091cfa6e7b3 100644 --- a/app-text/cherrytree/Manifest +++ b/app-text/cherrytree/Manifest @@ -1,3 +1 @@ -DIST cherrytree_1.1.2.tar.xz 3460288 BLAKE2B bb09581bee1634d0d9885a6946b0baf5cb10db73d6c264ad7543ebeb4bba94be825a1f43ee4995c14dbd332ae414d44a1db461ca5f50b7d5f76f66b02ec9bed4 SHA512 39d1e765e3a644966a5571580baf7cd33b2ac65a05efebd31bfe7a6b037359f880309806d95e240d78a3f21dd312b7b4decdcd5cc5e50b48935ea3643a9dcf7e -DIST cherrytree_1.1.3.tar.xz 4714064 BLAKE2B 440d963a6e30a93a218af188c726b25a842738ea471daa8f82cab439f240780685eeed211d270d050a1b4fef896075e68407d456d48c0690961beb9861cdd51e SHA512 3d02d822fd342689420b45b51cbd4c272d88ad97b568b87a3f8b724a32554c6443293657ff1486a998e3f46fd91420dcb4a09ba7330d6e3fe4a6fc34f0783e9e DIST cherrytree_1.1.4.tar.xz 4714968 BLAKE2B 98cb6c20f5f957420b01352f3b1ba86768010e64583d94130e878eca747350c5eab11107ef3719c65f3a6126127b31e4d0e5807f90548f9f8819cd16f0f299f1 SHA512 053871386b4fd5e9964082421c63a10f332942fb1b29e5145b18858a1219ad55e108235dda279bdbf9b3516fd17502c55357e196a327232a6d82aaa1e06598d9 diff --git a/app-text/cherrytree/cherrytree-1.1.3.ebuild b/app-text/cherrytree/cherrytree-1.1.3.ebuild deleted file mode 100644 index 92140c4a5713..000000000000 --- a/app-text/cherrytree/cherrytree-1.1.3.ebuild +++ /dev/null @@ -1,77 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) - -inherit cmake python-any-r1 xdg - -DESCRIPTION="A hierarchical note taking application (C++ version)" -HOMEPAGE="https://www.giuspen.com/cherrytree/" - -SRC_URI="https://github.com/giuspen/${PN}/releases/download/v$PV/${P/-/_}.tar.xz" -S="${WORKDIR}"/${P/-/_} - -# GPL-3 — future/src/ct (CherryTree) -# LGPL-2.1 — future/src/7za (7zip) -# MIT — future/src/fmt (libfmt) -LICENSE="GPL-3 LGPL-2.1 MIT" - -SLOT="0" - -KEYWORDS="~amd64 ~x86" - -IUSE="nls test" - -# Has deps that aren't available in ::gentoo repo -RESTRICT="test" - -RDEPEND="app-i18n/uchardet - app-text/gspell:= - >=dev-cpp/glibmm-2.64.2:2 - dev-cpp/gtkmm:3.0 - dev-cpp/gtksourceviewmm:3.0 - dev-cpp/libxmlpp:2.6 - dev-cpp/pangomm:1.4 - dev-db/sqlite:3 - dev-libs/fribidi - dev-libs/glib:2 - dev-libs/libfmt:= - dev-libs/libsigc++:2 - dev-libs/libxml2:2 - >=dev-libs/spdlog-1.5 - >=x11-libs/vte-0.70.2:2.91 - net-misc/curl - x11-libs/cairo[X] - x11-libs/gtk+:3[X] - x11-libs/pango[X]" - -DEPEND="${PYTHON_DEPS} - ${RDEPEND}" - -BDEPEND=" - virtual/pkgconfig - nls? ( sys-devel/gettext ) - test? ( dev-util/cpputest )" - -src_prepare() { - # disable compress man pages - sed -i -e \ - '/install(FILES/s|${MANFILE_FULL_GZ}|${CMAKE_SOURCE_DIR}/data/cherrytree.1|' \ - CMakeLists.txt || die - - # python_fix_shebang . - cmake_src_prepare -} - -src_configure() { - local mycmakeargs=( - -DPYTHON_EXEC="${PYTHON}" - -DUSE_NLS=$(usex nls) - -DBUILD_TESTING=$(usex test) - -DUSE_SHARED_FMT_SPDLOG=ON - ) - - cmake_src_configure -} diff --git a/app-text/cherrytree/cherrytree-1.1.2.ebuild b/app-text/cherrytree/cherrytree-1.1.4-r1.ebuild index 136172d6e48a..112fe0853cc1 100644 --- a/app-text/cherrytree/cherrytree-1.1.2.ebuild +++ b/app-text/cherrytree/cherrytree-1.1.4-r1.ebuild @@ -40,6 +40,7 @@ RDEPEND="app-i18n/uchardet dev-libs/libfmt:= dev-libs/libsigc++:2 dev-libs/libxml2:2 + >=dev-libs/spdlog-1.5:= >=x11-libs/vte-0.70.2:2.91 net-misc/curl x11-libs/cairo[X] diff --git a/app-text/cherrytree/cherrytree-1.1.4.ebuild b/app-text/cherrytree/cherrytree-1.1.4.ebuild deleted file mode 100644 index 92140c4a5713..000000000000 --- a/app-text/cherrytree/cherrytree-1.1.4.ebuild +++ /dev/null @@ -1,77 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) - -inherit cmake python-any-r1 xdg - -DESCRIPTION="A hierarchical note taking application (C++ version)" -HOMEPAGE="https://www.giuspen.com/cherrytree/" - -SRC_URI="https://github.com/giuspen/${PN}/releases/download/v$PV/${P/-/_}.tar.xz" -S="${WORKDIR}"/${P/-/_} - -# GPL-3 — future/src/ct (CherryTree) -# LGPL-2.1 — future/src/7za (7zip) -# MIT — future/src/fmt (libfmt) -LICENSE="GPL-3 LGPL-2.1 MIT" - -SLOT="0" - -KEYWORDS="~amd64 ~x86" - -IUSE="nls test" - -# Has deps that aren't available in ::gentoo repo -RESTRICT="test" - -RDEPEND="app-i18n/uchardet - app-text/gspell:= - >=dev-cpp/glibmm-2.64.2:2 - dev-cpp/gtkmm:3.0 - dev-cpp/gtksourceviewmm:3.0 - dev-cpp/libxmlpp:2.6 - dev-cpp/pangomm:1.4 - dev-db/sqlite:3 - dev-libs/fribidi - dev-libs/glib:2 - dev-libs/libfmt:= - dev-libs/libsigc++:2 - dev-libs/libxml2:2 - >=dev-libs/spdlog-1.5 - >=x11-libs/vte-0.70.2:2.91 - net-misc/curl - x11-libs/cairo[X] - x11-libs/gtk+:3[X] - x11-libs/pango[X]" - -DEPEND="${PYTHON_DEPS} - ${RDEPEND}" - -BDEPEND=" - virtual/pkgconfig - nls? ( sys-devel/gettext ) - test? ( dev-util/cpputest )" - -src_prepare() { - # disable compress man pages - sed -i -e \ - '/install(FILES/s|${MANFILE_FULL_GZ}|${CMAKE_SOURCE_DIR}/data/cherrytree.1|' \ - CMakeLists.txt || die - - # python_fix_shebang . - cmake_src_prepare -} - -src_configure() { - local mycmakeargs=( - -DPYTHON_EXEC="${PYTHON}" - -DUSE_NLS=$(usex nls) - -DBUILD_TESTING=$(usex test) - -DUSE_SHARED_FMT_SPDLOG=ON - ) - - cmake_src_configure -} diff --git a/app-text/pdfjam/Manifest b/app-text/pdfjam/Manifest index 90a6f52c291f..9f9c84e51413 100644 --- a/app-text/pdfjam/Manifest +++ b/app-text/pdfjam/Manifest @@ -1,3 +1,3 @@ DIST pdfjam-3.10.tar.gz 121928 BLAKE2B 5ff82abba43becb2792ff9e6a13dd3458d4b884e9e2361d116c638bb8a396fd8ca833361dfbc981433ebf445cfa8bfe99bb5fc7f1a76a35361666b91acef934e SHA512 dd69d8e5f86bb4fcb8db0e71454fdb0f2dd75e222d68e8cf3870d9f318aa7e8ccf51f87977ad71ddba1d78569e358044b111b8014f88dddf86654dc5bc334e90 +DIST pdfjam-3.12.tar.gz 162802 BLAKE2B d22e78cdb1e0135b2d2a9d1269a7467417a2fd3f984e969434d59db82f94a6575ff12bf814c3f90081e8e08823d68577e43b243fb2f52160dffc9d425fc84f0e SHA512 c801f5dbfb2eebf185734d14974a00c3ca3b8edda349ed7d6e0017ac80136ea10cab7ab0dc77ec1a712f7e338c8c9e58d24d7b8b69a3b2116e0a6473fc0b1317 DIST pdfjam-extra-20191118.tar.gz 15457 BLAKE2B 3d673ba68a1ee89cec7af0ec7d7fc61c8993b9ae328d3362a6bbbae47cbda2caa2e8f4ecd28424dd894c31d14754228b067389b61fa7845cfe5dfc0e2b5d9b8d SHA512 1d02abb9d81baf6edf3e51e2c7838df191a7a18b4b50518ee1ae3108020a274d7608570654ab540539d3717e51ef10f548c83c3480681bc20c9702280f694b8f -DIST pdfjam_208.tgz 180725 BLAKE2B 903ce4f0874c9fc9ad23f3db37b882596589d6470dfe9289f65a72fb66ff843bbd49b52086d7b2d2cbbfb1b6406cbbda64d46b933a853d5d681ef88d4033372c SHA512 728c8d304c6d2af773980d20ef4a4be6e0a5dad286ad8cd00be9b1687f5024e00032a750c10c74dcd24431f081368d02b76f03cc5bb1c8725a060cd70be0fd8c diff --git a/app-text/pdfjam/metadata.xml b/app-text/pdfjam/metadata.xml index af299c1e9b05..5eb32f27f1d8 100644 --- a/app-text/pdfjam/metadata.xml +++ b/app-text/pdfjam/metadata.xml @@ -8,6 +8,22 @@ <use> <flag name="extra">Install unsupported wrapper scripts, for example pdf90, pdfnup, pdfjoin</flag> </use> + <longdescription> + The pdfjam is a shell script providing a simple interface to much of + the functionality of the excellent pdfpages package (by Andreas + Matthias) for LaTeX. + + It takes one or more PDF files (and/or JPG/PNG graphics files) as input, + and produces one or more PDF files as output. It is useful for joining + files together, selecting pages, reducing several source pages onto one + output page. + However, it does not preserve hyperlinks. + + If you don't like this package upstream recommends: + - <pkg>app-text/pdftk</pkg> (Java based) + - PDFsam (Java based) + - PSPDFUtils (Python based, supports PostScript) + </longdescription> <upstream> <remote-id type="github">rrthomas/pdfjam</remote-id> </upstream> diff --git a/app-text/pdfjam/pdfjam-2.08-r1.ebuild b/app-text/pdfjam/pdfjam-2.08-r1.ebuild deleted file mode 100644 index 992ae1784eaa..000000000000 --- a/app-text/pdfjam/pdfjam-2.08-r1.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -MY_PV=${PV/./} -DESCRIPTION="pdfnup, pdfjoin and pdf90" -HOMEPAGE="http://www.warwick.ac.uk/go/pdfjam" -SRC_URI="http://www.warwick.ac.uk/go/pdfjam/${PN}_${MY_PV}.tgz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" -IUSE="" -S="${WORKDIR}"/${PN} - -DEPEND="virtual/latex-base" -RDEPEND="${DEPEND}" - -src_install() { - dobin bin/* - dodoc PDFjam-README.html - doman man1/* -} diff --git a/app-text/pdfjam/pdfjam-3.12.ebuild b/app-text/pdfjam/pdfjam-3.12.ebuild new file mode 100644 index 000000000000..084765c1de2c --- /dev/null +++ b/app-text/pdfjam/pdfjam-3.12.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PDFJAM_EXTRAS_COMMIT=622e03add59db004144c0b41722a09b3b29d6d3e + +DESCRIPTION="Tool for manipulatiing PDF files" +HOMEPAGE="https://github.com/rrthomas/pdfjam" +SRC_URI=" + https://github.com/rrthomas/pdfjam/releases/download/v${PV}/pdfjam-${PV}.tar.gz + extra? ( + https://github.com/rrthomas/pdfjam-extras/archive/${PDFJAM_EXTRAS_COMMIT}.tar.gz + -> pdfjam-extra-20191118.tar.gz + ) +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" + +IUSE="extra test" +RESTRICT="!test? ( test )" + +DEPEND="virtual/latex-base" +RDEPEND=" + ${DEPEND} + !<dev-texlive/texlive-binextra-2023_p69527-r4 +" +BDEPEND="test? ( app-arch/unzip )" + +src_prepare() { + default + if use test; then + unzip tests.zip || die + fi +} + +src_test() { + ./tests/run.sh || die +} + +src_install() { + dobin bin/* + dodoc README.md + doman man1/* + + insinto usr/share/etc + doins pdfjam.conf + + if use extra; then + cd ../pdfjam-extras-${PDFJAM_EXTRAS_COMMIT} || die + + dobin bin/* + newdoc README.md README-extras.md + doman man1/* + fi +} diff --git a/app-text/poppler/poppler-24.08.0.ebuild b/app-text/poppler/poppler-24.08.0.ebuild index fcd590b4257a..166eb09cf6d9 100644 --- a/app-text/poppler/poppler-24.08.0.ebuild +++ b/app-text/poppler/poppler-24.08.0.ebuild @@ -17,7 +17,7 @@ else SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz" SRC_URI+=" test? ( https://gitlab.freedesktop.org/poppler/test/-/archive/${TEST_COMMIT}/test-${TEST_COMMIT}.tar.bz2 -> ${PN}-test-${TEST_COMMIT}.tar.bz2 )" SRC_URI+=" verify-sig? ( https://poppler.freedesktop.org/${P}.tar.xz.sig )" - KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" SLOT="0/140" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION fi diff --git a/app-text/zathura-pdf-poppler/zathura-pdf-poppler-0.3.2.ebuild b/app-text/zathura-pdf-poppler/zathura-pdf-poppler-0.3.2.ebuild index 4c9b1c46bdfe..ffb44e6d3890 100644 --- a/app-text/zathura-pdf-poppler/zathura-pdf-poppler-0.3.2.ebuild +++ b/app-text/zathura-pdf-poppler/zathura-pdf-poppler-0.3.2.ebuild @@ -10,7 +10,7 @@ if [[ ${PV} == *9999 ]]; then EGIT_REPO_URI="https://git.pwmt.org/pwmt/zathura-pdf-poppler.git" EGIT_BRANCH="develop" else - KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" + KEYWORDS="amd64 arm ~arm64 ~riscv x86" SRC_URI="https://github.com/pwmt/zathura-pdf-poppler/archive/${PV}.tar.gz -> ${P}.tar.gz" fi diff --git a/dev-build/remake/remake-4.3.1.1.6-r100.ebuild b/dev-build/remake/remake-4.3.1.1.6-r100.ebuild new file mode 100644 index 000000000000..7a08d41b8542 --- /dev/null +++ b/dev-build/remake/remake-4.3.1.1.6-r100.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) + +inherit guile-single flag-o-matic + +MY_MAKE_BASE=$(ver_cut 1-2) +MY_REMAKE_PATCH=$(ver_cut 4-) +MY_P="${PN}-${MY_MAKE_BASE}+dbg-${MY_REMAKE_PATCH}" + +DESCRIPTION="Patched version of GNU Make with improved error reporting, tracing and debugging" +HOMEPAGE="http://bashdb.sourceforge.net/remake/" +SRC_URI="https://github.com/rocky/remake/releases/download/${MY_P}/${MY_P}.tar.gz" +S="${WORKDIR}"/${MY_P} + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="guile readline" + +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )" + +RDEPEND=" + guile? ( ${GUILE_DEPS} ) + readline? ( sys-libs/readline:0= ) +" +DEPEND="${RDEPEND}" + +pkg_setup() { + use guile && guile-single_pkg_setup +} + +src_prepare() { + default + + use guile && guile_bump_sources +} + +src_configure() { + # Fixed in upstream make/gnulib, just not yet propagated into remake (bug #863827) + filter-lto + + use readline || export vl_cv_lib_readline=no + econf $(use_with guile) +} + +src_install() { + default + + use guile && guile_unstrip_ccache + + # delete files GNU make owns and remake doesn't care about. + rm -r "${ED}"/usr/include || die + rm "${ED}"/usr/share/info/make.info* || die +} diff --git a/dev-debug/gdb/gdb-15.1-r100.ebuild b/dev-debug/gdb/gdb-15.1-r100.ebuild new file mode 100644 index 000000000000..4d5d83a579f7 --- /dev/null +++ b/dev-debug/gdb/gdb-15.1-r100.ebuild @@ -0,0 +1,325 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# See https://sourceware.org/gdb/wiki/DistroAdvice for general packaging +# tips & notes. + +GUILE_COMPAT=( 2-2 3-0 ) +PYTHON_COMPAT=( python3_{10..12} ) +inherit flag-o-matic guile-single python-single-r1 strip-linguas toolchain-funcs + +export CTARGET=${CTARGET:-${CHOST}} + +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY} == cross-* ]] ; then + export CTARGET=${CATEGORY#cross-} + fi +fi + +is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; } + +case ${PV} in + 9999*) + # live git tree + EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git" + inherit git-r3 + SRC_URI="" + ;; + *.*.50_p2???????|*.*.90_p2???????) + # Weekly snapshots + MY_PV="${PV/_p/.}" + SRC_URI=" + https://sourceware.org/pub/gdb/snapshots/branch/gdb-weekly-${MY_PV}.tar.xz + https://sourceware.org/pub/gdb/snapshots/current/gdb-weekly-${MY_PV}.tar.xz + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/gdb-weekly-${MY_PV}.tar.xz + " + S="${WORKDIR}/${PN}-${MY_PV}" + + # e.g. 13.1.90_p20230325 is a snapshot on the stable branch, so it's fine + if [[ ${PV} == *.[123456789].9?_p2??????? ]] ; then + REGULAR_RELEASE=1 + fi + ;; + *.*.9?) + # Prereleases + MY_PV="${PV/_p/.}" + SRC_URI=" + https://sourceware.org/pub/gdb/snapshots/branch/gdb-${MY_PV}.tar.xz + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/gdb-${MY_PV}.tar.xz + " + S="${WORKDIR}/${PN}-${MY_PV}" + ;; + *) + # Normal upstream release + SRC_URI=" + mirror://gnu/gdb/${P}.tar.xz + https://sourceware.org/pub/gdb/releases/${P}.tar.xz + " + + REGULAR_RELEASE=1 +esac + +PATCH_DEV="" +PATCH_VER="" +DESCRIPTION="GNU debugger" +HOMEPAGE="https://sourceware.org/gdb/" +SRC_URI=" + ${SRC_URI} + ${PATCH_DEV:+https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${CATEGORY}/${PN}/${P}-patches-${PATCH_VER}.tar.xz} + ${PATCH_VER:+mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz} +" + +LICENSE="GPL-3+ LGPL-2.1+" +SLOT="0" +IUSE="cet debuginfod guile lzma multitarget nls +python +server sim source-highlight test vanilla xml xxhash zstd" +if [[ -n ${REGULAR_RELEASE} ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" +fi +REQUIRED_USE=" + guile? ( ${GUILE_REQUIRED_USE} ) + python? ( ${PYTHON_REQUIRED_USE} ) +" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-libs/mpfr:= + dev-libs/gmp:= + >=sys-libs/ncurses-5.2-r2:= + >=sys-libs/readline-7:= + sys-libs/zlib + elibc_glibc? ( net-libs/libnsl:= ) + debuginfod? ( + dev-libs/elfutils[debuginfod(-)] + ) + lzma? ( app-arch/xz-utils ) + python? ( ${PYTHON_DEPS} ) + guile? ( ${GUILE_DEPS} ) + xml? ( dev-libs/expat ) + source-highlight? ( + dev-util/source-highlight + ) + xxhash? ( + dev-libs/xxhash + ) + zstd? ( app-arch/zstd:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-arch/xz-utils + sys-apps/texinfo + app-alternatives/yacc + nls? ( sys-devel/gettext ) + source-highlight? ( virtual/pkgconfig ) + test? ( dev-util/dejagnu ) +" + +QA_CONFIG_IMPL_DECL_SKIP=( + MIN # gnulib FP (bug #898688) +) + +QA_PREBUILT="usr/share/gdb/guile/*" + +PATCHES=( + "${FILESDIR}"/${PN}-8.3.1-verbose-build.patch +) + +pkg_setup() { + use guile && guile-single_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + + use guile && guile_bump_sources + + strip-linguas -u bfd/po opcodes/po + + # Avoid using ancient termcap from host on Prefix systems + sed -i -e 's/termcap tinfow/tinfow/g' \ + gdb/configure{.ac,} || die +} + +gdb_branding() { + printf "Gentoo ${PV} " + + if ! use vanilla && [[ -n ${PATCH_VER} ]] ; then + printf "p${PATCH_VER}" + else + printf "vanilla" + fi + + [[ -n ${EGIT_COMMIT} ]] && printf " ${EGIT_COMMIT}" +} + +src_configure() { + strip-unsupported-flags + + # See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html + # Avoid really confusing logs from subconfigure spam, makes logs far + # more legible. + MAKEOPTS="--output-sync=line ${MAKEOPTS}" + + local myconf=( + # portage's econf() does not detect presence of --d-d-t + # because it greps only top-level ./configure. But not + # libiberty's or gdb's configure. + --disable-dependency-tracking + --disable-silent-rules + + --with-pkgversion="$(gdb_branding)" + --with-bugurl='https://bugs.gentoo.org/' + --disable-werror + # Disable modules that are in a combined binutils/gdb tree. bug #490566 + --disable-{binutils,etc,gas,gold,gprof,gprofng,ld} + + $(use_with debuginfod) + + $(use_enable test unit-tests) + + # Allow user to opt into CET for host libraries. + # Ideally we would like automagic-or-disabled here. + # But the check does not quite work on i686: bug #760926. + $(use_enable cet) + + # Helps when cross-compiling. Not to be confused with --with-sysroot. + --with-build-sysroot="${ESYSROOT}" + ) + + is_cross && myconf+=( + --with-sysroot="\${prefix}/${CTARGET}" + --includedir="\${prefix}/include/${CTARGET}" + --with-gdb-datadir="\${datadir}/gdb/${CTARGET}" + ) + + # gdbserver only works for native targets (CHOST==CTARGET). + # it also doesn't support all targets, so rather than duplicate + # the target list (which changes between versions), use the + # "auto" value when things are turned on, which is triggered + # whenever no --enable or --disable is given + if is_cross || use !server ; then + myconf+=( --disable-gdbserver ) + fi + + myconf+=( + --enable-64-bit-bfd + --disable-install-libbfd + --disable-install-libiberty + --enable-obsolete + # This only disables building in the readline subdir. + # For gdb itself, it'll use the system version. + --disable-readline + --with-system-readline + # This only disables building in the zlib subdir. + # For gdb itself, it'll use the system version. + --without-zlib + --with-system-zlib + --with-separate-debug-dir="${EPREFIX}"/usr/lib/debug + $(use_with xml expat) + $(use_with lzma) + $(use_enable nls) + $(use_enable sim) + $(use_enable source-highlight) + $(use multitarget && echo --enable-targets=all) + $(use_with python python "${EPYTHON}") + $(use_with xxhash) + $(use_with guile) + $(use_with zstd) + + # Find libraries using the toolchain sysroot rather than the configured + # prefix. Needed when cross-compiling. + # + # Check which libraries to apply this to with: + # "${S}"/gdb/configure --help | grep without-lib | sort + --without-lib{babeltrace,expat,gmp,iconv,ipt,lzma,mpfr,xxhash}-prefix + ) + + # source-highlight is detected with pkg-config: bug #716558 + export ac_cv_path_pkg_config_prog_path="$(tc-getPKG_CONFIG)" + + export CC_FOR_BUILD="$(tc-getBUILD_CC)" + + # ensure proper compiler is detected for Clang builds: bug #831202 + export GCC_FOR_TARGET="${CC_FOR_TARGET:-$(tc-getCC)}" + + econf "${myconf[@]}" +} + +src_test() { + # Run the unittests (nabbed invocation from Fedora's spec file) at least + emake -k -C gdb run GDBFLAGS='-batch -ex "maintenance selftest"' + + # Too many failures + # In fact, gdb's test suite needs some work to get passing. + # See e.g. https://sourceware.org/gdb/wiki/TestingGDB. + # As of 11.2, on amd64: "# of unexpected failures 8600" + # Also, ia64 kernel crashes when gdb testsuite is running. + #emake -k check +} + +src_install() { + emake DESTDIR="${D}" install + + find "${ED}"/usr -name libiberty.a -delete || die + + # Delete translations that conflict with binutils-libs. bug #528088 + # Note: Should figure out how to store these in an internal gdb dir. + if use nls ; then + find "${ED}" \ + -regextype posix-extended -regex '.*/(bfd|opcodes)[.]g?mo$' \ + -delete || die + fi + + # Don't install docs when building a cross-gdb + if [[ ${CTARGET} != ${CHOST} ]] ; then + rm -rf "${ED}"/usr/share/{doc,info,locale} || die + local f + for f in "${ED}"/usr/share/man/*/* ; do + if [[ ${f##*/} != ${CTARGET}-* ]] ; then + mv "${f}" "${f%/*}/${CTARGET}-${f##*/}" || die + fi + done + return 0 + fi + + # Install it by hand for now: + # https://sourceware.org/ml/gdb-patches/2011-12/msg00915.html + # Only install if it exists due to the twisted behavior (see + # notes in src_configure above). + [[ -e gdbserver/gdbreplay ]] && dobin gdbserver/gdbreplay + + docinto gdb + dodoc gdb/CONTRIBUTE gdb/README gdb/MAINTAINERS \ + gdb/NEWS gdb/PROBLEMS + docinto sim + dodoc sim/{MAINTAINERS,README-HACKING} + + if use server ; then + docinto gdbserver + dodoc gdbserver/README + fi + + # Remove shared info pages + rm -f "${ED}"/usr/share/info/{annotate,bfd,configure,ctf-spec,standards}.info* + + use guile && guile_unstrip_ccache + + if use python ; then + python_optimize "${ED}"/usr/share/gdb/python/gdb + fi +} + +pkg_postinst() { + # Portage doesn't unmerge files in /etc + rm -vf "${EROOT}"/etc/skel/.gdbinit + + if use prefix && [[ ${CHOST} == *-darwin* ]] ; then + ewarn "gdb is unable to get a mach task port when installed by Prefix" + ewarn "Portage, unprivileged. To make gdb fully functional you'll" + ewarn "have to perform the following steps:" + ewarn " % sudo chgrp procmod ${EPREFIX}/usr/bin/gdb" + ewarn " % sudo chmod g+s ${EPREFIX}/usr/bin/gdb" + fi +} diff --git a/dev-debug/gdb/gdb-9999.ebuild b/dev-debug/gdb/gdb-9999.ebuild index c35dad1f342f..90eaaa3ee62d 100644 --- a/dev-debug/gdb/gdb-9999.ebuild +++ b/dev-debug/gdb/gdb-9999.ebuild @@ -6,8 +6,9 @@ EAPI=8 # See https://sourceware.org/gdb/wiki/DistroAdvice for general packaging # tips & notes. +GUILE_COMPAT=( 2-2 3-0 ) PYTHON_COMPAT=( python3_{10..12} ) -inherit flag-o-matic python-single-r1 strip-linguas toolchain-funcs +inherit flag-o-matic guile-single python-single-r1 strip-linguas toolchain-funcs export CTARGET=${CTARGET:-${CHOST}} @@ -76,7 +77,10 @@ IUSE="cet debuginfod guile lzma multitarget nls +python +server sim source-highl if [[ -n ${REGULAR_RELEASE} ]] ; then KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" fi -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" +REQUIRED_USE=" + guile? ( ${GUILE_REQUIRED_USE} ) + python? ( ${PYTHON_REQUIRED_USE} ) +" RESTRICT="!test? ( test )" RDEPEND=" @@ -91,7 +95,7 @@ RDEPEND=" ) lzma? ( app-arch/xz-utils ) python? ( ${PYTHON_DEPS} ) - guile? ( >=dev-scheme/guile-2.0 ) + guile? ( ${GUILE_DEPS} ) xml? ( dev-libs/expat ) source-highlight? ( dev-util/source-highlight @@ -115,17 +119,22 @@ QA_CONFIG_IMPL_DECL_SKIP=( MIN # gnulib FP (bug #898688) ) +QA_PREBUILT="usr/share/gdb/guile/*" + PATCHES=( "${FILESDIR}"/${PN}-8.3.1-verbose-build.patch ) pkg_setup() { + use guile && guile-single_pkg_setup use python && python-single-r1_pkg_setup } src_prepare() { default + use guile && guile_bump_sources + strip-linguas -u bfd/po opcodes/po # Avoid using ancient termcap from host on Prefix systems @@ -303,6 +312,8 @@ src_install() { # Remove shared info pages rm -f "${ED}"/usr/share/info/{annotate,bfd,configure,ctf-spec,standards}.info* + use guile && guile_unstrip_ccache + if use python ; then python_optimize "${ED}"/usr/share/gdb/python/gdb fi diff --git a/dev-debug/lldb/Manifest b/dev-debug/lldb/Manifest index 83c2917d4ff1..dc64ac8b60a3 100644 --- a/dev-debug/lldb/Manifest +++ b/dev-debug/lldb/Manifest @@ -9,6 +9,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/dev-debug/lldb/lldb-19.1.0.ebuild b/dev-debug/lldb/lldb-19.1.0.ebuild new file mode 100644 index 000000000000..7734bd04d4e9 --- /dev/null +++ b/dev-debug/lldb/lldb-19.1.0.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +inherit cmake flag-o-matic llvm.org llvm-utils python-single-r1 + +DESCRIPTION="The LLVM debugger" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0/${LLVM_SOABI}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~x86" +IUSE="debug debuginfod +libedit lzma ncurses +python test +xml" +RESTRICT="test" +REQUIRED_USE=${PYTHON_REQUIRED_USE} + +DEPEND=" + debuginfod? ( + net-misc/curl:= + dev-cpp/cpp-httplib:= + ) + libedit? ( dev-libs/libedit:0= ) + lzma? ( app-arch/xz-utils:= ) + ncurses? ( >=sys-libs/ncurses-5.9-r3:0= ) + xml? ( dev-libs/libxml2:= ) + ~sys-devel/clang-${PV} + ~sys-devel/llvm-${PV}[debuginfod=] +" +RDEPEND=" + ${DEPEND} + python? ( + ${PYTHON_DEPS} + ) +" +BDEPEND=" + ${PYTHON_DEPS} + python? ( + >=dev-lang/swig-3.0.11 + ) + test? ( + $(python_gen_cond_dep " + ~dev-python/lit-${PV}[\${PYTHON_USEDEP}] + dev-python/psutil[\${PYTHON_USEDEP}] + ") + sys-devel/lld + ) +" + +LLVM_COMPONENTS=( lldb cmake llvm/utils ) +LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support third-party ) +llvm.org_set_globals + +src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + # bug #858389 (https://github.com/llvm/llvm-project/issues/83636) + filter-lto + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + + local mycmakeargs=( + -DLLDB_ENABLE_CURSES=$(usex ncurses) + -DLLDB_ENABLE_LIBEDIT=$(usex libedit) + -DLLDB_ENABLE_PYTHON=$(usex python) + -DLLDB_ENABLE_LUA=OFF + -DLLDB_ENABLE_LZMA=$(usex lzma) + -DLLDB_ENABLE_LIBXML2=$(usex xml) + -DLLVM_ENABLE_TERMINFO=$(usex ncurses) + + -DLLDB_INCLUDE_TESTS=$(usex test) + + -DCLANG_LINK_CLANG_DYLIB=ON + # TODO: fix upstream to detect this properly + -DHAVE_LIBDL=ON + -DHAVE_LIBPTHREAD=ON + + # normally we'd have to set LLVM_ENABLE_TERMINFO, HAVE_TERMINFO + # and TERMINFO_LIBS... so just force FindCurses.cmake to use + # ncurses with complete library set (including autodetection + # of -ltinfo) + -DCURSES_NEED_NCURSES=ON + + -DCLANG_RESOURCE_DIR="../../../clang/${LLVM_MAJOR}" + + -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" + -DPython3_EXECUTABLE="${PYTHON}" + ) + use test && mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags)" + ) + + cmake_src_configure +} + +src_test() { + local -x LIT_PRESERVES_TMP=1 + cmake_build check-lldb-{shell,unit} + # failures + hangs + #use python && cmake_build check-lldb-api +} + +src_install() { + cmake_src_install + find "${D}" -name '*.a' -delete || die + + use python && python_optimize +} diff --git a/dev-debug/strace/Manifest b/dev-debug/strace/Manifest index eb0dbf1c861d..ee9bc1b7055f 100644 --- a/dev-debug/strace/Manifest +++ b/dev-debug/strace/Manifest @@ -1,5 +1,12 @@ DIST strace-6.10.tar.xz 2600864 BLAKE2B acb26ed66fbfcb1bc6403441b632df2f7af018345e52120b8715e2bbfa578fc80af8e3844cba3e131601285f9e72b15c8b4ea56025c5efae846d2d36960f6c04 SHA512 0d7dafaa50fbcfebc37f37e53c2961972efd66ce0d71628fbcd2a8b871cb7e90bb3aebca14258a5a3115ae1e00cbe242b6d2f887d45f44e7321985720968f972 +DIST strace-6.10.tar.xz.asc 801 BLAKE2B 81b0bc033c5c8a34835b9fec8ab043879a1a2ba3a557fb3309b53254a92ab5abffac32b4d97b45aedbc045a882b69d7f26b186c6e9413599583976080f788e17 SHA512 058672503e8ae2444271e5c220a3bd29450c1badb06ec1a6e06e0f1f4d609af3730bc2a71e7f9cefeeed936e89d4d37e439f41da353388b885d49a204887fb91 +DIST strace-6.11.tar.xz 2610440 BLAKE2B 5ea511cd0d2f287ec4c979af7306b29ca39975a4a08f6a1123ae562db5331f7ebb1f23ff2a24ce01fd96c000d094c4d810f2b4bca3ce8adac26fbee57da7f92c SHA512 c639ae7097d418f8b815bd008de9423079dad70829a5eb392d3c5def81243b8a9133c10251a7c00a4991f580cff5b62466f8b53b4b8e425a009548fb3582bdb0 +DIST strace-6.11.tar.xz.asc 801 BLAKE2B bc60367dafb08551510bf64c384315aadc3027ed256fbfa5a6e23139800ad01f12b7ebdc09e7845b202260ec38b4a5de70e5701abd9dddc0c5f3c4c32bd6c97b SHA512 bdb86f8fa9b168240b892814037660456ee7beed547e6f5bbcb61431e6fd8d6544b8b169cc794e084c3c11f2f62aff36de410294c609c0a9ea8781fa1ddf57aa DIST strace-6.6.tar.xz 2420364 BLAKE2B f1465fec58ac20ccce6a88441a34b1402e5c51f0bb4b7963f69b5ab5019a8c8722e3406c6f93c10c1eea11d17de7f9874895d6f4df24cf9ec42a18f36267687b SHA512 77ea45c72e513f6c07026cd9b2cc1a84696a5a35cdd3b06dd4a360fb9f9196958e3f6133b4a9c91e091c24066ba29e0330b6459d18a9c390caae2dba97ab399b +DIST strace-6.6.tar.xz.asc 801 BLAKE2B 1bd72fc586f4338da1ae31181d28103ff3168322c07508699261b5ec4627ed3bdf7e20b4557182a258f22e83537712f20413aa9c5c4b335c75f3772e71888478 SHA512 b9eb6fc5c2f3bd8fced37fb81435087df95d9f23f0697afab8a3e359709c95238e50aafe2a3ba8cd698aeae75a4f8e28b6dce49a26878a961c2c06790458d228 DIST strace-6.7.tar.xz 2434880 BLAKE2B 249c149a9140fc79be1365e4e8697b46f6558334eefac11b51c96d2d2e67bb82cb2eac3c38c2fa31f40fc5e0ad3c52967e15a034c01c12ed041d51f006a194ae SHA512 da28fd9fb987044782e6fd6f5e90e2cea2ab8e536cbd3893ef4c9b11c9b3185f073ca3d8ca0eade49e9a2af8efbda8c2b66b8988be7ebc463dc45e8f48ca1256 +DIST strace-6.7.tar.xz.asc 801 BLAKE2B 3a87561c04e82bbb745e59343cf79c25abf2c6cbd7a82f8d116a3cf6fd00797636037b620529979bce6e814fcf84aa42d94d0678afa86aedaf829d48118339df SHA512 9ea90089ec0af3f2471c4e03fe95f09e16260c04f5083dde17ea28a94b62578a90319ccd4987ed50459318c4ef3174dfe42ea158cf45d11c8e21e7133113a1ae DIST strace-6.8.tar.xz 2457948 BLAKE2B 0897aedc6a1ed162b8967a56d54dd0bc589ce027321c1219e5fc23e6a44103576e0f363f79a03def365a05989173271eb6096a9c48b16cdf8c54033ec6bd6f2a SHA512 c477724a77112a74a5236a38b7dbaa9b6199622a1d21cc6253cac80dc4ddea78aeaf8cddf4a51ee4119e00e1adaf95f64f64e20d9775ec3edd77cd82c8f7b30e +DIST strace-6.8.tar.xz.asc 801 BLAKE2B 544f9a59824f5bd2e682b4df0106c85c90be8eba8fe99fa5a5b6ccc69bd9ced176f4ce3a02253e16a51290dae452426da3827e653d4c38f44eaf06427007e5a5 SHA512 4bcbf6b01440cd94ae2e05cc13220a141a0cc7c3a974d92947e09217fa4c77d7f7c272aaf32107c8974e140da25fd78e45f9f48731406b4dfd4d5a955e663daa DIST strace-6.9.tar.xz 2466252 BLAKE2B 2da51f253ea18f27b5fabafaebdc54805aeca5b750bec6169c269dbcadb98cf76a47bf92dd619458ca86d46ec7a03710e16e0ac4973d89a86edc2d0b853714c8 SHA512 aa80b9b6ec41082f1710f2327f7a22003cdce6d95ab0e5083ada9c5b7b40b8f7cbc7dc6c017878dc0e42c52e405e98ed1488c51d17bc3538989ff4be2c2411e1 +DIST strace-6.9.tar.xz.asc 801 BLAKE2B ccb3d026a272bc02d351fd15f8b18a50a8653cda247ea9baa938820fb3c870e1803562d7e17eac3d4f1842911a4e904bc88ba267cb74aeac869185e30cd89d48 SHA512 577a3f5d0bdd51b995755a76b58e6bdf6a0a173966bb1d95ebba0a59df8a8e828eb5eca4cda55c9faf7e31053652911541134107199c073ec24fa877cec393bd diff --git a/dev-debug/strace/strace-6.10.ebuild b/dev-debug/strace/strace-6.10.ebuild index 976615abb153..3b7b64121199 100644 --- a/dev-debug/strace/strace-6.10.ebuild +++ b/dev-debug/strace/strace-6.10.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit autotools edo flag-o-matic toolchain-funcs +inherit autotools edo flag-o-matic toolchain-funcs verify-sig DESCRIPTION="Useful diagnostic, instructional, and debugging tool" HOMEPAGE="https://strace.io/" @@ -12,17 +12,25 @@ if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/strace/strace.git" inherit git-r3 else - SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz" + SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) + " KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" fi +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc + LICENSE="LGPL-2.1+ test? ( GPL-2+ )" SLOT="0" IUSE="aio perl selinux static test unwind elfutils" RESTRICT="!test? ( test )" REQUIRED_USE="?? ( unwind elfutils )" -BDEPEND="virtual/pkgconfig" +BDEPEND=" + virtual/pkgconfig + verify-sig? ( >=sec-keys/openpgp-keys-strace-20151021 ) +" LIB_DEPEND=" unwind? ( sys-libs/libunwind[static-libs(+)] ) elfutils? ( dev-libs/elfutils[static-libs(+)] ) diff --git a/dev-debug/strace/strace-6.11.ebuild b/dev-debug/strace/strace-6.11.ebuild new file mode 100644 index 000000000000..3b7b64121199 --- /dev/null +++ b/dev-debug/strace/strace-6.11.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools edo flag-o-matic toolchain-funcs verify-sig + +DESCRIPTION="Useful diagnostic, instructional, and debugging tool" +HOMEPAGE="https://strace.io/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/strace/strace.git" + inherit git-r3 +else + SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +fi + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc + +LICENSE="LGPL-2.1+ test? ( GPL-2+ )" +SLOT="0" +IUSE="aio perl selinux static test unwind elfutils" +RESTRICT="!test? ( test )" +REQUIRED_USE="?? ( unwind elfutils )" + +BDEPEND=" + virtual/pkgconfig + verify-sig? ( >=sec-keys/openpgp-keys-strace-20151021 ) +" +LIB_DEPEND=" + unwind? ( sys-libs/libunwind[static-libs(+)] ) + elfutils? ( dev-libs/elfutils[static-libs(+)] ) + selinux? ( sys-libs/libselinux[static-libs(+)] ) +" +# strace only uses the header from libaio to decode structs +DEPEND=" + static? ( ${LIB_DEPEND} ) + aio? ( >=dev-libs/libaio-0.3.106 ) + sys-kernel/linux-headers +" +RDEPEND=" + !static? ( ${LIB_DEPEND//\[static-libs(+)]} ) + perl? ( dev-lang/perl ) +" + +PATCHES=( + "${FILESDIR}/${PN}-6.5-static.patch" +) + +src_prepare() { + default + + if [[ ! -e configure ]] ; then + # git generation + sed /autoreconf/d -i bootstrap || die + edo ./bootstrap + [[ ! -e CREDITS ]] && cp CREDITS{.in,} + fi + + eautoreconf + + # Stub out the -k test since it's known to be flaky. bug #545812 + sed -i '1iexit 77' tests*/strace-k.test || die +} + +src_configure() { + # Set up the default build settings, and then use the names strace expects. + tc-export_build_env BUILD_{CC,CPP} + local v bv + for v in CC CPP {C,CPP,LD}FLAGS ; do + bv="BUILD_${v}" + export "${v}_FOR_BUILD=${!bv}" + done + + filter-lfs-flags # configure handles this sanely + + export ac_cv_header_libaio_h=$(usex aio) + use elibc_musl && export ac_cv_header_stdc=no + + local myeconfargs=( + --disable-gcc-Werror + + # Don't require mpers support on non-multilib systems. #649560 + --enable-mpers=check + + $(use_enable static) + $(use_with unwind libunwind) + $(use_with elfutils libdw) + $(use_with selinux libselinux) + ) + econf "${myeconfargs[@]}" +} + +src_test() { + if has usersandbox ${FEATURES} ; then + # bug #643044 + ewarn "Test suite is known to fail with FEATURES=usersandbox -- skipping ..." + return 0 + fi + + default +} + +src_install() { + default + + if use perl ; then + exeinto /usr/bin + doexe src/strace-graph + fi + + dodoc CREDITS +} diff --git a/dev-debug/strace/strace-6.6.ebuild b/dev-debug/strace/strace-6.6.ebuild index c380af2dcd29..7c8d69f65cc5 100644 --- a/dev-debug/strace/strace-6.6.ebuild +++ b/dev-debug/strace/strace-6.6.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit autotools edo flag-o-matic toolchain-funcs +inherit autotools edo flag-o-matic toolchain-funcs verify-sig DESCRIPTION="Useful diagnostic, instructional, and debugging tool" HOMEPAGE="https://strace.io/" @@ -12,17 +12,25 @@ if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/strace/strace.git" inherit git-r3 else - SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz" + SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) + " KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" fi +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc + LICENSE="LGPL-2.1+ test? ( GPL-2+ )" SLOT="0" IUSE="aio perl selinux static test unwind elfutils" RESTRICT="!test? ( test )" REQUIRED_USE="?? ( unwind elfutils )" -BDEPEND="virtual/pkgconfig" +BDEPEND=" + virtual/pkgconfig + verify-sig? ( >=sec-keys/openpgp-keys-strace-20151021 ) +" LIB_DEPEND=" unwind? ( sys-libs/libunwind[static-libs(+)] ) elfutils? ( dev-libs/elfutils[static-libs(+)] ) diff --git a/dev-debug/strace/strace-6.7.ebuild b/dev-debug/strace/strace-6.7.ebuild index c380af2dcd29..7c8d69f65cc5 100644 --- a/dev-debug/strace/strace-6.7.ebuild +++ b/dev-debug/strace/strace-6.7.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit autotools edo flag-o-matic toolchain-funcs +inherit autotools edo flag-o-matic toolchain-funcs verify-sig DESCRIPTION="Useful diagnostic, instructional, and debugging tool" HOMEPAGE="https://strace.io/" @@ -12,17 +12,25 @@ if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/strace/strace.git" inherit git-r3 else - SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz" + SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) + " KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" fi +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc + LICENSE="LGPL-2.1+ test? ( GPL-2+ )" SLOT="0" IUSE="aio perl selinux static test unwind elfutils" RESTRICT="!test? ( test )" REQUIRED_USE="?? ( unwind elfutils )" -BDEPEND="virtual/pkgconfig" +BDEPEND=" + virtual/pkgconfig + verify-sig? ( >=sec-keys/openpgp-keys-strace-20151021 ) +" LIB_DEPEND=" unwind? ( sys-libs/libunwind[static-libs(+)] ) elfutils? ( dev-libs/elfutils[static-libs(+)] ) diff --git a/dev-debug/strace/strace-6.8.ebuild b/dev-debug/strace/strace-6.8.ebuild index c380af2dcd29..7c8d69f65cc5 100644 --- a/dev-debug/strace/strace-6.8.ebuild +++ b/dev-debug/strace/strace-6.8.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit autotools edo flag-o-matic toolchain-funcs +inherit autotools edo flag-o-matic toolchain-funcs verify-sig DESCRIPTION="Useful diagnostic, instructional, and debugging tool" HOMEPAGE="https://strace.io/" @@ -12,17 +12,25 @@ if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/strace/strace.git" inherit git-r3 else - SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz" + SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) + " KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" fi +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc + LICENSE="LGPL-2.1+ test? ( GPL-2+ )" SLOT="0" IUSE="aio perl selinux static test unwind elfutils" RESTRICT="!test? ( test )" REQUIRED_USE="?? ( unwind elfutils )" -BDEPEND="virtual/pkgconfig" +BDEPEND=" + virtual/pkgconfig + verify-sig? ( >=sec-keys/openpgp-keys-strace-20151021 ) +" LIB_DEPEND=" unwind? ( sys-libs/libunwind[static-libs(+)] ) elfutils? ( dev-libs/elfutils[static-libs(+)] ) diff --git a/dev-debug/strace/strace-6.9.ebuild b/dev-debug/strace/strace-6.9.ebuild index a28843ec66a5..f6f02d671260 100644 --- a/dev-debug/strace/strace-6.9.ebuild +++ b/dev-debug/strace/strace-6.9.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit autotools edo flag-o-matic toolchain-funcs +inherit autotools edo flag-o-matic toolchain-funcs verify-sig DESCRIPTION="Useful diagnostic, instructional, and debugging tool" HOMEPAGE="https://strace.io/" @@ -12,17 +12,25 @@ if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/strace/strace.git" inherit git-r3 else - SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz" + SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) + " KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" fi +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc + LICENSE="LGPL-2.1+ test? ( GPL-2+ )" SLOT="0" IUSE="aio perl selinux static test unwind elfutils" RESTRICT="!test? ( test )" REQUIRED_USE="?? ( unwind elfutils )" -BDEPEND="virtual/pkgconfig" +BDEPEND=" + virtual/pkgconfig + verify-sig? ( >=sec-keys/openpgp-keys-strace-20151021 ) +" LIB_DEPEND=" unwind? ( sys-libs/libunwind[static-libs(+)] ) elfutils? ( dev-libs/elfutils[static-libs(+)] ) diff --git a/dev-debug/strace/strace-9999.ebuild b/dev-debug/strace/strace-9999.ebuild index 976615abb153..3b7b64121199 100644 --- a/dev-debug/strace/strace-9999.ebuild +++ b/dev-debug/strace/strace-9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit autotools edo flag-o-matic toolchain-funcs +inherit autotools edo flag-o-matic toolchain-funcs verify-sig DESCRIPTION="Useful diagnostic, instructional, and debugging tool" HOMEPAGE="https://strace.io/" @@ -12,17 +12,25 @@ if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/strace/strace.git" inherit git-r3 else - SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz" + SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz + verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) + " KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" fi +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc + LICENSE="LGPL-2.1+ test? ( GPL-2+ )" SLOT="0" IUSE="aio perl selinux static test unwind elfutils" RESTRICT="!test? ( test )" REQUIRED_USE="?? ( unwind elfutils )" -BDEPEND="virtual/pkgconfig" +BDEPEND=" + virtual/pkgconfig + verify-sig? ( >=sec-keys/openpgp-keys-strace-20151021 ) +" LIB_DEPEND=" unwind? ( sys-libs/libunwind[static-libs(+)] ) elfutils? ( dev-libs/elfutils[static-libs(+)] ) diff --git a/dev-gap/browse/browse-1.8.21-r2.ebuild b/dev-gap/browse/browse-1.8.21-r2.ebuild index feca5aa41003..229fad9e7eff 100644 --- a/dev-gap/browse/browse-1.8.21-r2.ebuild +++ b/dev-gap/browse/browse-1.8.21-r2.ebuild @@ -20,9 +20,14 @@ DEPEND="sci-mathematics/gap:= sys-libs/ncurses:=" RDEPEND="${DEPEND}" -GAP_PKG_EXTRA_INSTALL=( app bibl ) +BDEPEND="test? ( + dev-gap/ctbllib + dev-gap/tomlib +)" gap-pkg_enable_tests +GAP_PKG_EXTRA_INSTALL=( app bibl ) + src_compile() { # This has been emailed upstream but there's no public # bug tracker AFAIK. diff --git a/dev-java/checker-framework-qual/Manifest b/dev-java/checker-framework-qual/Manifest index a5959914cdf3..f0802ea1f788 100644 --- a/dev-java/checker-framework-qual/Manifest +++ b/dev-java/checker-framework-qual/Manifest @@ -1 +1,2 @@ DIST checker-framework-3.43.0.tar.gz 8306595 BLAKE2B bcabe8e5a0de20615980048780528b6fcb1946f8793b9cd7c3b12afeb4688c6eb91724fd111419a243801b1456537cd40994d062f2ac341e904c93c285c530ad SHA512 73f6d6d45cf926b23160fc6089596f27b33b1ae6b8489aa3a2c2e0d8330331c331ce87d0826de8f512432d469f96330e77a4323082b3db4af5f5abf81ba06295 +DIST checker-framework-3.47.0.tar.gz 8335232 BLAKE2B 4b6d8f5bb055402e6b368640eb42e4e13173dc847a4b8145e7c306856cab2151c17bfbd2c3a645708e9b7525a1e3f73d4c28c3ae24d038ac0c3119d8fcf671df SHA512 17188ab83ee8c91fb112ed0f750611c7fb5fc17f80a0bbd9b19f1514902770c2a227cf879fb581c8c915fa9827febaa8e67a0188c70df625268118344a281fbd diff --git a/dev-java/checker-framework-qual/checker-framework-qual-3.47.0.ebuild b/dev-java/checker-framework-qual/checker-framework-qual-3.47.0.ebuild new file mode 100644 index 000000000000..026febee0f73 --- /dev/null +++ b/dev-java/checker-framework-qual/checker-framework-qual-3.47.0.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source" +MAVEN_ID="org.checkerframework:checker-qual:${PV}" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="Annotations for type-checking by the Checker Framework" +HOMEPAGE="https://checkerframework.org/" +SRC_URI="https://github.com/typetools/checker-framework/archive/checker-framework-${PV}.tar.gz" +S="${WORKDIR}/checker-framework-checker-framework-${PV}/checker-qual" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +DEPEND=">=virtual/jdk-11:*" # module-info +RDEPEND=">=virtual/jre-1.8:*" + +JAVA_SRC_DIR="src/main/java" diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.20.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.20.ebuild index b892008977f0..612bc76ff406 100644 --- a/dev-java/eclipse-ecj/eclipse-ecj-4.20.ebuild +++ b/dev-java/eclipse-ecj/eclipse-ecj-4.20.ebuild @@ -14,8 +14,8 @@ HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt" SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV/_rc/RC}.jar" LICENSE="EPL-1.0" -KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86" SLOT="4.20" +KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86" BDEPEND="app-arch/unzip" COMMON_DEP="app-eselect/eselect-java" diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.26-r2.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.26-r2.ebuild index 0a750385f6ab..beb7971b8347 100644 --- a/dev-java/eclipse-ecj/eclipse-ecj-4.26-r2.ebuild +++ b/dev-java/eclipse-ecj/eclipse-ecj-4.26-r2.ebuild @@ -15,8 +15,8 @@ SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV S="${WORKDIR}" LICENSE="EPL-1.0" -KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86" SLOT="4.26" +KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86" BDEPEND=" app-arch/unzip diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.27-r1.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.27-r1.ebuild index 5b3748f2682d..6042718d196f 100644 --- a/dev-java/eclipse-ecj/eclipse-ecj-4.27-r1.ebuild +++ b/dev-java/eclipse-ecj/eclipse-ecj-4.27-r1.ebuild @@ -17,8 +17,8 @@ HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt" SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV/_rc/RC}.jar" LICENSE="EPL-1.0" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" SLOT="4.27" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" BDEPEND="app-arch/unzip" COMMON_DEP="app-eselect/eselect-java" diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.30-r1.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.30-r1.ebuild index b87cee1c3b1a..fb20056ada16 100644 --- a/dev-java/eclipse-ecj/eclipse-ecj-4.30-r1.ebuild +++ b/dev-java/eclipse-ecj/eclipse-ecj-4.30-r1.ebuild @@ -14,12 +14,12 @@ DMF="R-${PV/_rc/RC}-202312010110" DESCRIPTION="Eclipse Compiler for Java" HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt" -SRC_URI="https://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV/_rc/RC}.jar" +SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV/_rc/RC}.jar" S="${WORKDIR}" LICENSE="EPL-1.0" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" SLOT="4.30" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" BDEPEND=" app-arch/unzip diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.31.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.31.ebuild index 44e5c0c826be..d7601e8396e0 100644 --- a/dev-java/eclipse-ecj/eclipse-ecj-4.31.ebuild +++ b/dev-java/eclipse-ecj/eclipse-ecj-4.31.ebuild @@ -18,8 +18,8 @@ SRC_URI="https://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${P S="${WORKDIR}" LICENSE="EPL-1.0" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" SLOT="4.31" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" BDEPEND="app-arch/unzip" COMMON_DEP="app-eselect/eselect-java" diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.32.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.32.ebuild index 3eefeac04654..1b686c4f4bff 100644 --- a/dev-java/eclipse-ecj/eclipse-ecj-4.32.ebuild +++ b/dev-java/eclipse-ecj/eclipse-ecj-4.32.ebuild @@ -18,8 +18,8 @@ SRC_URI="https://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${P S="${WORKDIR}" LICENSE="EPL-1.0" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" SLOT="4.32" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" BDEPEND="app-arch/unzip" COMMON_DEP="app-eselect/eselect-java" diff --git a/dev-java/error-prone-annotations/Manifest b/dev-java/error-prone-annotations/Manifest index f1084eef66fc..d5fc2fa612b3 100644 --- a/dev-java/error-prone-annotations/Manifest +++ b/dev-java/error-prone-annotations/Manifest @@ -1 +1,2 @@ DIST error-prone-2.27.1.tar.gz 2826681 BLAKE2B 8f848a89e97ea939dc4b81751a40d7b6bec64807ddca0d078bc02599bb663fa8a8d10d566536c33c4d50b3af21cf613bb282ac3403fe5345a20361627e116e5a SHA512 54d288dd5d5f23ae052eacc92ce304b2743aa56a524ad1b235ecd35cc4ecd72b44ec0c3fee319076466b8e90c20095fd5191d59b9c48cbe5bd940e189b1a073e +DIST error-prone-2.32.0.tar.gz 2856245 BLAKE2B 129347be0a1e9ae450c03b47c088962efd7f156dfd5f7343fc17837cb4b64e1787c325ea4d6021570559a09310688a378555c5ab0e1df4996f21e88a73487212 SHA512 ae6286f9cd4d75fb0165d9788a7a2c588a05eef5a4f714a6deb9623d6d8cf4a2173bb44a8faee058f2496dd31124b40570a91a359a8f735a88abf59eea05f39e diff --git a/dev-java/error-prone-annotations/error-prone-annotations-2.32.0.ebuild b/dev-java/error-prone-annotations/error-prone-annotations-2.32.0.ebuild new file mode 100644 index 000000000000..4f6b1d2395ad --- /dev/null +++ b/dev-java/error-prone-annotations/error-prone-annotations-2.32.0.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source" +MAVEN_ID="com.google.errorprone:error_prone_annotations:${PV}" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="Java annotations for the Error Prone static analysis tool" +HOMEPAGE="https://errorprone.info" +SRC_URI="https://github.com/google/error-prone/archive/v${PV}.tar.gz -> error-prone-${PV}.tar.gz" +S="${WORKDIR}/error-prone-${PV}/annotations" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +DEPEND=">=virtual/jdk-11:*" # module-info +RDEPEND=">=virtual/jre-1.8:*" + +JAVA_SRC_DIR="src/main/java" diff --git a/dev-java/guava-testlib/Manifest b/dev-java/guava-testlib/Manifest index 909dfaa7631a..85db383245eb 100644 --- a/dev-java/guava-testlib/Manifest +++ b/dev-java/guava-testlib/Manifest @@ -1,2 +1,3 @@ DIST guava-33.2.0.tar.gz 5812764 BLAKE2B ebfc20be079385e1bf4822b1402323d468c49604f585b514c1e6d40c64803df2f9848b73c63961976908ea8e6250f5e706add1619fc0ee0befaeacab02da075f SHA512 8807dd320af652cffc83ac930e6191b36c8942bc8bfe16cec5503e0721e2fe8a36d6636eb45d650c0ccd60c67fafe4f5aa8595ad454a822fd6888d4e1f22d466 +DIST guava-33.3.0.tar.gz 5819234 BLAKE2B 26c5f97b927f4afeb8c5d68714a54ef62bfc3995da8cf98d2022edd93054bb7e0bd38598adcefc209d04a246e3da50346e213ad49152e1fc0c91463cd8f0dea3 SHA512 122a10c98820443cbfc5769e1aaa5843becfc0e2e7119d0f2544d86bd265da1fc48c4113cb706f92d84ab896fc58583b80e7dc91b6cd13f9ee9996ae8457f02c DIST truth-1.4.2.jar 275487 BLAKE2B 9c0dce92648f734ab88a0faf1a1e5328d747efffd29aa8f12b7ed2b2c87036ce18bf3195348f9ffce848842a240179fa60e9625c6997439a4cedce6aac6c2b77 SHA512 5f29cb259f2cf63e8a908061d2a58b28ecf12366a03564c8e63c33cdbdb21935ac95ed7b68437b015a2bd055732c88ec8ca1e55b45b99a2cb3e9dd53cb0b87cc diff --git a/dev-java/guava-testlib/guava-testlib-33.3.0.ebuild b/dev-java/guava-testlib/guava-testlib-33.3.0.ebuild new file mode 100644 index 000000000000..c005039e87d3 --- /dev/null +++ b/dev-java/guava-testlib/guava-testlib-33.3.0.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_ID="com.google.guava:guava-testlib:${PV}-jre" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple check-reqs + +DESCRIPTION="A set of java classes to assist the tests for Guava itself" +HOMEPAGE="https://github.com/google/guava" +# Currently we bundle the binary version of truth.jar used only for tests, we don't install it. +SRC_URI="https://github.com/google/guava/archive/v${PV}.tar.gz -> guava-${PV}.tar.gz + test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.4.2/truth-1.4.2.jar )" +S="${WORKDIR}/guava-${PV}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +CP_DEPEND=" + >=dev-java/error-prone-annotations-2.32.0:0 + ~dev-java/guava-${PV}:0 + dev-java/jsr305:0 + dev-java/junit:4 +" + +DEPEND="${CP_DEPEND} + >=dev-java/checker-framework-qual-3.47.0:0 + dev-java/j2objc-annotations:0 + >=virtual/jdk-1.8:*" + +RDEPEND="${CP_DEPEND} + >=virtual/jre-1.8:*" + +JAVA_CLASSPATH_EXTRA="checker-framework-qual j2objc-annotations" +JAVA_SRC_DIR="${PN}/src" +JAVA_TEST_GENTOO_CLASSPATH="junit-4" +JAVA_TEST_SRC_DIR="${PN}/test" + +check_env() { + if use test; then + # this is needed only for tests + CHECKREQS_MEMORY="1024M" + check-reqs_pkg_pretend + fi +} + +pkg_pretend() { + check_env +} + +pkg_setup() { + check_env + java-pkg-2_pkg_setup +} + +src_test() { + JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.4.2.jar:testdata.jar" + JAVA_TEST_EXTRA_ARGS="-Xmx${CHECKREQS_MEMORY}" + java-pkg-simple_src_test +} diff --git a/dev-java/guava/Manifest b/dev-java/guava/Manifest index bd3ef1d79f18..a0da1bd1de4a 100644 --- a/dev-java/guava/Manifest +++ b/dev-java/guava/Manifest @@ -1 +1,2 @@ DIST guava-33.2.0.tar.gz 5812764 BLAKE2B ebfc20be079385e1bf4822b1402323d468c49604f585b514c1e6d40c64803df2f9848b73c63961976908ea8e6250f5e706add1619fc0ee0befaeacab02da075f SHA512 8807dd320af652cffc83ac930e6191b36c8942bc8bfe16cec5503e0721e2fe8a36d6636eb45d650c0ccd60c67fafe4f5aa8595ad454a822fd6888d4e1f22d466 +DIST guava-33.3.0.tar.gz 5819234 BLAKE2B 26c5f97b927f4afeb8c5d68714a54ef62bfc3995da8cf98d2022edd93054bb7e0bd38598adcefc209d04a246e3da50346e213ad49152e1fc0c91463cd8f0dea3 SHA512 122a10c98820443cbfc5769e1aaa5843becfc0e2e7119d0f2544d86bd265da1fc48c4113cb706f92d84ab896fc58583b80e7dc91b6cd13f9ee9996ae8457f02c diff --git a/dev-java/guava/guava-33.3.0.ebuild b/dev-java/guava/guava-33.3.0.ebuild new file mode 100644 index 000000000000..c24a36ec75a2 --- /dev/null +++ b/dev-java/guava/guava-33.3.0.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source" +MAVEN_ID="com.google.guava:guava:${PV}-jre" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="A collection of Google's core Java libraries" +HOMEPAGE="https://github.com/google/guava" +SRC_URI="https://github.com/google/guava/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${P}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +CP_DEPEND=" + >=dev-java/error-prone-annotations-2.32.0:0 + dev-java/j2objc-annotations:0 + dev-java/jsr305:0 +" + +DEPEND="${CP_DEPEND} + >=dev-java/checker-framework-qual-3.47.0:0 + >=virtual/jdk-1.8:*" +RDEPEND="${CP_DEPEND} + >=virtual/jre-1.8:*" + +JAVA_AUTOMATIC_MODULE_NAME="com.google.common" +JAVA_CLASSPATH_EXTRA="checker-framework-qual" +JAVA_GENTOO_CLASSPATH_EXTRA=":futures/failureaccess/src" +JAVA_SRC_DIR="guava/src" diff --git a/dev-java/jeromq/Manifest b/dev-java/jeromq/Manifest index 015d1b539992..cecc2a3c6361 100644 --- a/dev-java/jeromq/Manifest +++ b/dev-java/jeromq/Manifest @@ -1 +1,2 @@ DIST jeromq-0.5.2.tar.gz 422673 BLAKE2B f244ef95bff70de8eb184e6eda8e292c54488435b8c9e000dbff5f1d6cb7b2b3066061bcb1fa678d2756117a52c39df795dae84071b544b0f577a331aecc8516 SHA512 49a3e9f7ff6b54dcde03958a84e72b8d4b44fb150fc980e9f1ea4ba9e258dcb0a0730d006550a3eb33e9f241e6d89cdc0ee2155213ddd309e255d606d1fa567b +DIST jeromq-0.6.0.tar.gz 467854 BLAKE2B 65b5b8cf676965a07d4bc26898a6db6739a1b5431678c16c0c182eee5d0c69c86a01b17ad1055caacec78149816ddc0c9468fec577f2ab82c681b7822858ee17 SHA512 2e140d456bf6a7f566b3cd563a7697d08c96b004ae70cdc37e427e4526cf8db83e5df6a492e63887f3dba639e3c29384fc46ee9e9e4a6a800e3c2c2446a65695 diff --git a/dev-java/jeromq/jeromq-0.6.0-r1.ebuild b/dev-java/jeromq/jeromq-0.6.0-r1.ebuild new file mode 100644 index 000000000000..30abb471818b --- /dev/null +++ b/dev-java/jeromq/jeromq-0.6.0-r1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_ID="org.zeromq:jeromq:0.6.0" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="Pure Java implementation of libzmq" +HOMEPAGE="https://github.com/zeromq/jeromq" +SRC_URI="https://github.com/zeromq/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${P}" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +PROPERTIES="test_network" +RESTRICT="test" + +DEPEND=" + >=dev-java/jnacl-1.0-r1:0 + >=virtual/jdk-11:* +" + +RDEPEND=">=virtual/jre-1.8:*" + +DOCS=( AUTHORS {CHANGELOG,CONTRIBUTING,README}.md ) + +JAVA_CLASSPATH_EXTRA="jnacl" +JAVA_SRC_DIR="src/main/java" + +JAVA_TEST_GENTOO_CLASSPATH="junit-4" +JAVA_TEST_SRC_DIR="src/test/java" + +src_compile() { + JAVA_JAR_FILENAME="org.zeromq.${PN}.jar" + java-pkg-simple_src_compile # creates a legacy jar file without module-info + + # maven does it with jnacl not providing module-info + # need to figure out how jdeps could do so - we simply add one to jnacl + jdeps \ + --module-path "$(java-pkg_getjars --build-only jnacl)" \ + --add-modules com.neilalexander.jnacl \ + --generate-module-info \ + src/main/java \ + --multi-release 9 \ + "${JAVA_JAR_FILENAME}" || die + + JAVA_JAR_FILENAME="${PN}.jar" + java-pkg-simple_src_compile # creates the final jar file including module-info +} diff --git a/dev-java/jnacl/jnacl-1.0-r1.ebuild b/dev-java/jnacl/jnacl-1.0-r1.ebuild new file mode 100644 index 000000000000..2b78a0000a35 --- /dev/null +++ b/dev-java/jnacl/jnacl-1.0-r1.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_ID="com.neilalexander:jnacl:1.0" +# JAVA_TESTING_FRAMEWORKS="testng" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="Pure Java implementation of NaCl: Networking and Cryptography library" +HOMEPAGE="https://github.com/neilalexander/jnacl" +SRC_URI="https://github.com/neilalexander/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${P}" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +# We don't have fest-assert +RESTRICT="test" + +DEPEND=">=virtual/jdk-11:*" # module-info +RDEPEND=">=virtual/jre-1.8:*" + +JAVA_SRC_DIR="src/main/java" + +src_compile() { + JAVA_JAR_FILENAME="com.neilalexander.${PN}.jar" + java-pkg-simple_src_compile # creates a legacy jar file without module-info + + jdeps --generate-module-info \ + src/main/java \ + --multi-release 9 \ + "${JAVA_JAR_FILENAME}" || die + + JAVA_JAR_FILENAME="${PN}.jar" + java-pkg-simple_src_compile # creates the final jar file including module-info +} diff --git a/dev-java/maven-bin/Manifest b/dev-java/maven-bin/Manifest index bbe137ffaa16..4fb9d99fa973 100644 --- a/dev-java/maven-bin/Manifest +++ b/dev-java/maven-bin/Manifest @@ -1,3 +1,2 @@ DIST apache-maven-3.8.8-bin.tar.gz 8296049 BLAKE2B af6353193365ed33e8f2f0a7e4d31933132751f142ebbdb68aab7a74ad2dda6593bf34cef9d8d56d6c93ff93293b75517a10a5c1c048733b8c911f4ac150bdf6 SHA512 332088670d14fa9ff346e6858ca0acca304666596fec86eea89253bd496d3c90deae2be5091be199f48e09d46cec817c6419d5161fb4ee37871503f472765d00 -DIST apache-maven-3.9.8-bin.tar.gz 9083702 BLAKE2B c636ea861d1c96938490453600cac513caf54843ffc26f45e22a655e737af93689d492e3b3055b184a33a1975aaa50a681a29412ebfd036dfd8e2c61043f6291 SHA512 7d171def9b85846bf757a2cec94b7529371068a0670df14682447224e57983528e97a6d1b850327e4ca02b139abaab7fcb93c4315119e6f0ffb3f0cbc0d0b9a2 DIST apache-maven-3.9.9-bin.tar.gz 9102945 BLAKE2B a705f18a1e7bdfd5d9ba8c38da02245ed5754fe749416ccc715dcdae21d8a41026778dfb912e3ea3e89e8358aede13d29ce3081ac71b16191e53d5cac557e643 SHA512 a555254d6b53d267965a3404ecb14e53c3827c09c3b94b5678835887ab404556bfaf78dcfe03ba76fa2508649dca8531c74bca4d5846513522404d48e8c4ac8b diff --git a/dev-java/maven-bin/maven-bin-3.9.8.ebuild b/dev-java/maven-bin/maven-bin-3.9.8.ebuild deleted file mode 100644 index 16060561ede9..000000000000 --- a/dev-java/maven-bin/maven-bin-3.9.8.ebuild +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit java-pkg-2 - -MY_PN=apache-${PN%%-bin} -MY_PV=${PV/_alpha/-alpha-} -MY_P="${MY_PN}-${MY_PV}" -MY_MV="${PV%%.*}" - -DESCRIPTION="Project Management and Comprehension Tool for Java" -HOMEPAGE="https://maven.apache.org/" -SRC_URI="mirror://apache/maven/maven-${MY_MV}/${PV}/binaries/${MY_P}-bin.tar.gz" -S="${WORKDIR}/${MY_P}" - -LICENSE="Apache-2.0" -SLOT="3.9" -KEYWORDS="amd64 x86" - -DEPEND=" - >=virtual/jdk-1.8:* - app-eselect/eselect-java" - -RDEPEND=" - >=virtual/jre-1.8:*" - -MAVEN="${PN}-${SLOT}" -MAVEN_SHARE="/usr/share/${MAVEN}" - -QA_FLAGS_IGNORED=( - "${MAVEN_SHARE}/lib/jansi-native/linux32/libjansi.so" - "${MAVEN_SHARE}/lib/jansi-native/linux64/libjansi.so" -) - -# TODO: -# We should use jars from packages, instead of what is bundled. -src_install() { - dodir "${MAVEN_SHARE}" - - cp -Rp bin boot conf lib "${ED}/${MAVEN_SHARE}" || die "failed to copy" - - java-pkg_regjar "${ED}/${MAVEN_SHARE}"/boot/*.jar - java-pkg_regjar "${ED}/${MAVEN_SHARE}"/lib/*.jar - - dodoc NOTICE README.txt - - dodir /usr/bin - dosym "${MAVEN_SHARE}/bin/mvn" "${EPREFIX}/usr/bin/mvn-${SLOT}" - - # See bug #342901. - echo "CONFIG_PROTECT=\"${MAVEN_SHARE}/conf\"" > "${T}/25${MAVEN}" || die - doenvd "${T}/25${MAVEN}" -} - -pkg_postinst() { - eselect maven update mvn-${SLOT} -} - -pkg_postrm() { - eselect maven update -} diff --git a/dev-java/metainf-services/Manifest b/dev-java/metainf-services/Manifest index 9f645d5aee76..69a4f55fe8b4 100644 --- a/dev-java/metainf-services/Manifest +++ b/dev-java/metainf-services/Manifest @@ -1 +1,2 @@ +DIST metainf-services-1.11.tar.gz 5364 BLAKE2B 35c02791b4874a4806b9886c5d1d25e68ea0fbbd2e2e34c716e87e5043b56416c00e32e53f31e5ede0a4c9d466a64bb1e882ec9fff1ca0771ac9ae534c666394 SHA512 ccbe31a061c29ce45d1f86efee40675b89d328ad40b717abf28b9b7b62c678b584281b2d99848ff41992c7ff38941e5f9b93aac8e967605e2221d4bd02019490 DIST metainf-services-1.9.tar.gz 5353 BLAKE2B a2d72b886169f6697033c56fa581e4fed9f69236a335397b0480111959e87e1d25ee16b96c6449b37b467aa68f0b4997873346416d8a09e3b14b911ffe37ffd4 SHA512 6d666c2582944e824cc66dd58c09474775e475146af7f8edcb4abce45eff6573481f550d8c37b854addd81825201207be7855b9bbc21f539559395a63e9fa261 diff --git a/dev-java/metainf-services/metainf-services-1.11.ebuild b/dev-java/metainf-services/metainf-services-1.11.ebuild new file mode 100644 index 000000000000..d03e2e80adf5 --- /dev/null +++ b/dev-java/metainf-services/metainf-services-1.11.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="Generates META-INF/services files automatically" +HOMEPAGE="https://metainf-services.kohsuke.org/" +SRC_URI="https://github.com/kohsuke/${PN}/archive/${P}.tar.gz" +S="${WORKDIR}/${PN}-${P}" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=">=virtual/jre-1.8:*" +DEPEND=">=virtual/jdk-1.8:*" + +JAVA_SRC_DIR="src/main/java" +JAVA_RESOURCE_DIRS="src/main/resources" diff --git a/dev-java/openjdk-bin/Manifest b/dev-java/openjdk-bin/Manifest index 25258df079e6..b7c6f2420178 100644 --- a/dev-java/openjdk-bin/Manifest +++ b/dev-java/openjdk-bin/Manifest @@ -1,8 +1,9 @@ -DIST OpenJDK-jdk_aarch64_linux_hotspot_24_8-ea.tar.gz 212736873 BLAKE2B 19b1e544e8bb70a2377f9aeb85241ed807167795742e96829dccf8fa5e6ea8d8512fd85f781d40e1428f415775b6ab77c4bdbec4e3ad66b05010665e535d2a8e SHA512 5c7daf6d12bb4acc031ce17dc429f4e3bd2e7bb74ca9b8f3ef90598ef69fd017bd3c73589d64d23919344328869465c3551832d2095311f3b6208c2e62fcc4b1 -DIST OpenJDK-jdk_ppc64le_linux_hotspot_24_8-ea.tar.gz 214372109 BLAKE2B 891f3b1a16fa9ea1ec247a9c68d84fabbe67c9052584580626f67d2cd87504f7eaaf008bfbf59b6250c63b348d6b1cb734b75d7aa0ad334f9738b8f624c0d874 SHA512 d9756fcd2e02f4317c6be0c97e163c6d836c07dcf83f272ca97920433f596bbda01beac6c302a425bed3ca0fb628bc919a2e33ebe754b8bd9672787f1be9d255 -DIST OpenJDK-jdk_riscv64_linux_hotspot_24_8-ea.tar.gz 210709698 BLAKE2B a612df8e357a930ae1bc6f54a5f0f0c55f8fec279ce7ea7f52ff45a097badd1a848dbdad5778adf2a13e622c7ff63b6c10b6feb7e3f8de75016eb9bf404f03d4 SHA512 1c4d93def2a92de4e1a1a8f6ab624de542c4fc177b9d66815d50b1cac823ca6295a4a702402ae09b8b9662ea40c56da836d6a962af8a2fbd7bf6576a3036187e -DIST OpenJDK-jdk_x64_alpine-linux_hotspot_24_8-ea.tar.gz 215051746 BLAKE2B b58ad14f0faa0940621245eeca212ed6112352c9e52833fc5dd2aa740956bce85d69f8d30aa923bc0fe0a0d81ed8dc4d4c9d8cfea5132de03d34d6c40bb7f3c8 SHA512 610a2bc5df2670a214ce39ec426428c3dfca47e5c4c04ed3bfe92fe48ec944324208f4edbb242842508a1964b97bf1085aaadec14d5fe8c4cf7bde57e20d505b -DIST OpenJDK-jdk_x64_linux_hotspot_24_8-ea.tar.gz 214855714 BLAKE2B 4230cd14375499463872f9c9e879b27ffcff602ca2401634fa0ae1dbfbc9a7aabff67f6f99b7a2e5ce409eabef962775706785268b8bdce8cd3f40dc76042b83 SHA512 55ff9c22d61815e7b4cdf8bdadc75d6ab16c0a6d6a559a71bb11ae9ac3236e4305b9928981d489ca71078e64bb647f8731534d093e1c81249e32d7c168cc9df3 +DIST OpenJDK-jdk_aarch64_alpine-linux_hotspot_24_15-ea.tar.gz 212878116 BLAKE2B 1e5768eb0d900c7234049173dd2f76a9d1bd1661f8c5a2070400bf26fcb3d4550803b7e91b851152375b7344f164e86d6f33a82c28ee2e8bc4497029030c2281 SHA512 c8646b3f727ca48f7950327c621a8625931965b0a0b1ed4c5811a77d8b189f5295060d51ce3d7b3fa5fee714f44e6513d6fad69ae5cdf9fee314f1d8ee7397d8 +DIST OpenJDK-jdk_aarch64_linux_hotspot_24_15-ea.tar.gz 212847823 BLAKE2B b3986bd7038734c713a85177c2c87870b58c82f721a3b7328c80fdaba764589b6561d1b0ce7ca8d67a744b6e5acd15a9f51c206db0e06ab789005d44463cd511 SHA512 ece9e3cd2c88bb5455f67bbc185ff5e17f3b2f00c10ab7206a4062baa7852bf8b43abe6bc71f5eb797e87db25c3f4e199e6fd612c5f77c8ef9f58f167ce468da +DIST OpenJDK-jdk_ppc64le_linux_hotspot_24_15-ea.tar.gz 214453128 BLAKE2B 4a99153ca3bcdf94ef8d4fc96b66a80307f09626f63fe0f70451208362d4e4ae6759e0769528041d6c5d629057c10dfb3a173eed8f6ee289fadbd52587163e9c SHA512 80ccf9398534d025e42c44d21a9c3dfb389c6b376c96724e6b086b361fdda1e20880e00ad3f74715068ec69add527f9f2ba363759ac9edb25997096316ddd128 +DIST OpenJDK-jdk_riscv64_linux_hotspot_24_15-ea.tar.gz 210831983 BLAKE2B a8603cdc69b8a6608e06dd92d233db8867c633403f976ec62be3bf9d04296e56d89910a38ccae1a130abceedb1122a03eda03f7432abdc2f0f64cc1deeeb72ea SHA512 61e25536620880c5d39df44f740e349ff96075f9208bf6ccde5b4905cddbb0bda793cbcac4875b75e8116a7e443dd28fe9cde2de3d18367a10860a0d5bb55d20 +DIST OpenJDK-jdk_x64_alpine-linux_hotspot_24_15-ea.tar.gz 215189640 BLAKE2B 9eb9f839f7e581ed54647c9a2542c36495b0ba8357422a128e57655ee59518d67f28986889a654a41d50bfc2470e2ef14a91b5aff14c34197c0ee669f1919199 SHA512 3d41bbf1bdef408244eb953463c8f3758700edbd2c348af4cf5f2b854116452d70fffaff4d6cb7195764b6d07a429c0daf125b2761d0069a571fb084eb814bf3 +DIST OpenJDK-jdk_x64_linux_hotspot_24_15-ea.tar.gz 214963834 BLAKE2B 67ef16f4f8471dc307dfa4ad6a1ac6fa4a22d6f643804be928d134202db9196a1cba78bf44cd3bbd872421520c4a96b0df0ee838b9404418cc82e115443e9ffd SHA512 7eb11bc44260e0a6f807593b1c16eff8088c4329ccb9e2a72c5face45383540f59644363c3f9840325eacf23aed7b3ee2a6a4d5998adf92200df0d1912ba2136 DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz 192087968 BLAKE2B 12659ef10cf2728ca5eba2b4eed5f592a5bbff5065f33309498e7a465661957e0e8191bb691a89934a8221e26ae7265f0aca059ba59731b5d9a80e7f6cc55206 SHA512 84dbb810134199cb2f0278ccbcfca2d1abe32bf65bbb399e99c2ea9a027e21c2ace5685adae98930be4a185970640626b5bbbf822d499f815d803fa4485134f7 DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.24_8.tar.gz 182800065 BLAKE2B 50158e8e84637ab841226da590f53ef3d0f18aa2dc4ce5c2fabc2260d864a1de65a3021e380fa9a1af1aec92177c2618790ced8c7f12f449fd7ab4851bf37ac0 SHA512 893ab22f39f102724e7b77b7a06e09b33ee0551b166c0154ce19d4e6abd7e346d0a8314fe2e675e102febf93e001679a1c7c665f6b131c04a453cfbfbabb5003 DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz 177494491 BLAKE2B acc6c4893a57250284b7be0fe98d6ea3b44f42227174050ac3d035ff68e482a61aeb32b38f1404f597c47dc3090fa49aa27401c6903367cc938b1f4041cb714b SHA512 88d8e3eee4af1f3578ee001516fd9a2a71af6317af404e39b64365ac780f89455dbbac1eccf50aa6d09cb879a79da88e720c344cc527d7313d6abfb8b148c3ae @@ -22,6 +23,12 @@ DIST OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.4_7.tar.gz 207691025 BLAKE2B 5413 DIST OpenJDK21U-jdk_riscv64_linux_hotspot_21.0.4_7.tar.gz 203854772 BLAKE2B acecfba0619cd5856f2e2c835240729f5d70a1f4fc373c99e7dec2aadc701d5779c8b42b804337653d6e8b99089fcd1622f48232a9a36bd25b4e4b7016ce68e6 SHA512 92a12dad45b80ee25b555b26456a592db65e5cf2373984e7102ee0527a923cc1d015fba0a75177f3f0063c5d1843f4999fb6627b506cd506571b9625871dc892 DIST OpenJDK21U-jdk_x64_alpine-linux_hotspot_21.0.4_7.tar.gz 208015131 BLAKE2B b143b83ff40affffd0be90cc19fec59777a80f783c6a4d9d1161d5205dee9a50f88d89fc21e402a14a1849d2dfefb780935acb47b7366b8fb07a3cd10f9ca65b SHA512 9cf65b7ea2cc4e7a21c5832c3522211c53b55fb6f0d4ec4deecb94744dafbf1412c17508ed1c21cb06b03c5bcf8212a0e5d6f2804663833735a1ac2f77dae7a2 DIST OpenJDK21U-jdk_x64_linux_hotspot_21.0.4_7.tar.gz 207789015 BLAKE2B da61c96f082f18bbb64e543b96972d0cf812cbd64ac970a45000506e41f9f54628453d4a24b4090271dc267e21bfe285a04173c106259e67dc72246c43edbe32 SHA512 7675079ac1ed0c0428f806908b21c58549df7fc18043d26c011e063b58772ddb1c1c9648a46ab7d5204d47c2af5d3f08eace30028113d64e09cadc69c4fd0def +DIST OpenJDK23U-jdk_aarch64_alpine-linux_hotspot_23_37-ea.tar.gz 212329941 BLAKE2B c323d26d43f7d629a45098739e7a3ae32a7391c7246f818dcfb9db3c49ecc1e1a4ef1e60873a76e7dcfcc74e9e6310f4d29ecaf9aa3a1a1863e374e8b23f0d4e SHA512 692b818864b4c3c91e850b77b711d5fc1548f2c75630016689ac33fe25fe8602f89d52b046e3c213f9fdb66215e74dba4422b3e1d24133d991e7563c05dcd4cd +DIST OpenJDK23U-jdk_aarch64_linux_hotspot_23_37-ea.tar.gz 212322868 BLAKE2B 10b4c3a135ae8e92faf0f1137a502660632f4fda3a85ca4d69fd15c7b380a483adf2d97ba35501fa75550f4afedf0a59531cc72fef558c71fc495aa90f1d09bb SHA512 e66dbccd7e90b2282805a27478f72f3c9e62f1f25be57569a40c2a8b3a99f1cdd1b994ee58b83b20e6ad3a30c218082e845466457fc659cc742d8bfc6594e564 +DIST OpenJDK23U-jdk_ppc64le_linux_hotspot_23_37-ea.tar.gz 213924750 BLAKE2B b6d7158d2fac60a7187edaae129b986ad1977766731c89823ffe222803281adc8980f42dba6c7502403ed39fe0d5e178c858ff252c16bbbd7b05803edc6bf978 SHA512 f05c593681fc5c8048fa5e452a10ecae10aae06ee405c82db99748ecc252d9ec2ef553649765d4c01255f87039209d4dee26c25f9885531327477d95a5b4081c +DIST OpenJDK23U-jdk_riscv64_linux_hotspot_23_37-ea.tar.gz 210224273 BLAKE2B 027e55a567d75f596d1e53c0cf010d44ad025b03344292169003b09f070a2885be0e8d0df24130d8a6da49ac8617ea17f644ebde0dcbc70c9410d0a01260ab41 SHA512 82bcd987bace91ee57fbbb6ebf92b111ffbc3e524d3a76b9e716ea7469bfa40f5ba26e9a842a7676f1c93b0947296b10240a053039dfe04f01362bfb1f9564af +DIST OpenJDK23U-jdk_x64_alpine-linux_hotspot_23_37-ea.tar.gz 214601112 BLAKE2B f5413519769574e39cec93228dcdb21d003ecebf9a7b03bf19356bd151809b1e4541174292622d03a829510c5e937be9f21f64315fa3ac7618fac75c003362de SHA512 9894d9bd787b8ba4d5ed70cdf467b0c07bffec28d6d6149733eb7bafe9cef62fcb612fb94d1b90682ae4152c8cab2e403502f874ca9013df0c2c498da33c93e6 +DIST OpenJDK23U-jdk_x64_linux_hotspot_23_37-ea.tar.gz 214424735 BLAKE2B 667c76acff5c9980aeb1e0eb5cc6915961327d51a15c529a9a973c0e75c0eebedb877cec8678cc60d0859f21589b887c1bddd400c36470684eb5509b1ae34f74 SHA512 7dbb7d7dc391323287fb0a010735153b70b42f31755a4dee27de45c7fea170cf692e8cce98e9637dc57bba0bca1aa003e1bc1b896e1e48d3039ecaa87fc85c0f DIST OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz 102132553 BLAKE2B b59a2d99f9999f86eac2ab15617ee7c58d179a7db2e3606b3296b4bee8bbfaaee2f3cd1f441d90b7462ef9a502f4f351bdb4acc8e723d6b16f208827b813e8a7 SHA512 3856d2e711fd0f93f5efb73ffe5dc115d03dbd0cd015e903b7c2d02b6a3940b10793243edd6a372d7f84306f10c7a41cf13d7b787a33d525f1e86e9975453d06 DIST OpenJDK8U-jdk_arm_linux_hotspot_8u422b05.tar.gz 98342561 BLAKE2B e34d6c959a2100b7c1817ad0fa213331e1cca75229edccf68ed4fcbd3b9bdeb0852dfdf59dac3e9cdae0179af38edc64ff7329af9f44fadcfaa7cf301f8f4e13 SHA512 a667d531b3318e7f75d3d4d9a32248c5c9ae7c1d4bd9bfcbcb5f11418016c1faa179ed748c3eae09c8693885a9401a80de8f3530891883b9f6e9de0b50002ed5 DIST OpenJDK8U-jdk_ppc64le_linux_hotspot_8u422b05.tar.gz 100533202 BLAKE2B b83b926e5bf0fe45bce9a79489422b96c6ab321227a56d8b3c683a26e5b71cbf9ec80a4dc2706aa4853095a4ee3174591cba8725b9e1b645f4c275137a97abee SHA512 e345de1325f9807d1cc3e4b043d650d655ad8a3672edec304023af54c7dd1d8fea0e671781ed46e6d7459909afedb2458c1b45966b55957389ec62449aec6469 diff --git a/dev-java/openjdk-bin/openjdk-bin-23_p37_beta.ebuild b/dev-java/openjdk-bin/openjdk-bin-23_p37_beta.ebuild new file mode 100644 index 000000000000..2d005d919140 --- /dev/null +++ b/dev-java/openjdk-bin/openjdk-bin-23_p37_beta.ebuild @@ -0,0 +1,137 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit java-vm-2 toolchain-funcs + +abi_uri() { + local baseuri="https://github.com/adoptium/temurin$(ver_cut 1)-binaries/releases/download/jdk-${MY_PV1}/" + local musl= + local os=linux + + case ${2} in + *-macos) os=mac ;; + *-solaris) os=solaris ;; + esac + + if [[ ${3} == musl ]]; then + os=alpine-linux + musl=true + fi + + echo "${2-$1}? ( + ${musl:+ elibc_musl? ( } + ${baseuri}/OpenJDK$(ver_cut 1)U-jdk_${1}_${os}_hotspot_${MY_PV2//+/_}.tar.gz + ${musl:+ ) } )" +} + +MY_PV=${PV/_p/+} +MY_PV1=${MY_PV/_beta/-ea-beta} +MY_PV2=${MY_PV1/-beta/} + +DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin" +HOMEPAGE="https://adoptium.net" +SRC_URI=" + $(abi_uri aarch64 arm64) + $(abi_uri aarch64 arm64 musl) + $(abi_uri ppc64le ppc64) + $(abi_uri x64 amd64) + $(abi_uri x64 amd64 musl) + $(abi_uri riscv64 riscv) +" +S="${WORKDIR}/jdk-${MY_PV%_beta}" + +LICENSE="GPL-2-with-classpath-exception" +# SLOT=$(ver_cut 1) +SLOT="23" +# KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv" +IUSE="alsa cups headless-awt selinux source" + +RDEPEND=" + >=sys-apps/baselayout-java-0.1.0-r1 + kernel_linux? ( + media-libs/fontconfig:1.0 + media-libs/freetype:2 + media-libs/harfbuzz + elibc_glibc? ( >=sys-libs/glibc-2.2.5:* ) + elibc_musl? ( sys-libs/musl ) + sys-libs/zlib + alsa? ( media-libs/alsa-lib ) + cups? ( net-print/cups ) + selinux? ( sec-policy/selinux-java ) + !headless-awt? ( + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrender + x11-libs/libXtst + ) + )" + +RESTRICT="preserve-libs splitdebug" +QA_PREBUILT="*" + +pkg_pretend() { + if [[ "$(tc-is-softfloat)" != "no" ]]; then + die "These binaries require a hardfloat system." + fi +} + +src_unpack() { + default + if [[ ${A} == *_mac_* ]] ; then + mv -v "${S}/Contents/Home/"* "${S}" || die + rm -Rf "${S}/Contents" # drop macOS executable + fi +} + +src_install() { + local dest="/opt/${P}" + local ddest="${ED}/${dest#/}" + + # on macOS if they would exist they would be called .dylib, but most + # importantly, there are no different providers, so everything + # that's shipped works. + if [[ ${A} != *_mac_* ]] ; then + # Not sure why they bundle this as it's commonly available and they + # only do so on x86_64. It's needed by libfontmanager.so. IcedTea + # also has an explicit dependency while Oracle seemingly dlopens it. + rm -vf lib/libfreetype.so || die + + # prefer system copy # https://bugs.gentoo.org/776676 + rm -vf lib/libharfbuzz.so || die + + # Oracle and IcedTea have libjsoundalsa.so depending on + # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird. + if ! use alsa ; then + rm -v lib/libjsound.* || die + fi + + if use headless-awt ; then + rm -v lib/lib*{[jx]awt,splashscreen}* || die + fi + fi + + if ! use source ; then + rm -v lib/src.zip || die + fi + + rm -v lib/security/cacerts || die + dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts + + dodir "${dest}" + cp -pPR * "${ddest}" || die + + # provide stable symlink + dosym "${P}" "/opt/${PN}-${SLOT}" + + java-vm_install-env "${FILESDIR}"/${PN}.env.sh + java-vm_set-pax-markings "${ddest}" + java-vm_revdep-mask + java-vm_sandbox-predict /dev/random /proc/self/coredump_filter +} + +pkg_postinst() { + java-vm-2_pkg_postinst +} diff --git a/dev-java/openjdk-bin/openjdk-bin-24_p8_beta.ebuild b/dev-java/openjdk-bin/openjdk-bin-24_p15_beta.ebuild index 72e3e2f5c768..0d6bc9a78d7a 100644 --- a/dev-java/openjdk-bin/openjdk-bin-24_p8_beta.ebuild +++ b/dev-java/openjdk-bin/openjdk-bin-24_p15_beta.ebuild @@ -34,6 +34,7 @@ DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin" HOMEPAGE="https://adoptium.net" SRC_URI=" $(abi_uri aarch64 arm64) + $(abi_uri aarch64 arm64 musl) $(abi_uri ppc64le ppc64) $(abi_uri x64 amd64) $(abi_uri x64 amd64 musl) diff --git a/dev-java/openjdk/openjdk-11.0.24_p8.ebuild b/dev-java/openjdk/openjdk-11.0.24_p8.ebuild index fdf4cbbec3a1..777fecd885e4 100644 --- a/dev-java/openjdk/openjdk-11.0.24_p8.ebuild +++ b/dev-java/openjdk/openjdk-11.0.24_p8.ebuild @@ -163,11 +163,6 @@ src_configure() { export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}" fi - # Workaround for bug #938302 - if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then - export DTRACE="${BROOT}"/usr/bin/stap-dtrace - fi - # Work around stack alignment issue, bug #647954. use x86 && append-flags -mincoming-stack-boundary=2 @@ -233,6 +228,11 @@ src_configure() { fi fi + # Workaround for bug #938302 + if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then + myconf+=( DTRACE="${BROOT}"/usr/bin/stap-dtrace ) + fi + if use !system-bootstrap ; then addpredict /dev/random addpredict /proc/self/coredump_filter diff --git a/dev-java/openjdk/openjdk-17.0.12_p7.ebuild b/dev-java/openjdk/openjdk-17.0.12_p7.ebuild index 46a240264a9a..90f9a664d446 100644 --- a/dev-java/openjdk/openjdk-17.0.12_p7.ebuild +++ b/dev-java/openjdk/openjdk-17.0.12_p7.ebuild @@ -177,11 +177,6 @@ src_configure() { export JDK_HOME fi - # Workaround for bug #938302 - if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then - export DTRACE="${BROOT}"/usr/bin/stap-dtrace - fi - # Work around stack alignment issue, bug #647954. in case we ever have x86 use x86 && append-flags -mincoming-stack-boundary=2 @@ -242,6 +237,11 @@ src_configure() { fi fi + # Workaround for bug #938302 + if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then + myconf+=( DTRACE="${BROOT}"/usr/bin/stap-dtrace ) + fi + if use !system-bootstrap ; then addpredict /dev/random addpredict /proc/self/coredump_filter diff --git a/dev-java/openjdk/openjdk-21.0.4_p7.ebuild b/dev-java/openjdk/openjdk-21.0.4_p7.ebuild index 2d2f4a5ddf98..bb3ad26ff08a 100644 --- a/dev-java/openjdk/openjdk-21.0.4_p7.ebuild +++ b/dev-java/openjdk/openjdk-21.0.4_p7.ebuild @@ -175,11 +175,6 @@ src_configure() { export JDK_HOME fi - # Workaround for bug #938302 - if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then - export DTRACE="${BROOT}"/usr/bin/stap-dtrace - fi - # Work around stack alignment issue, bug #647954. in case we ever have x86 use x86 && append-flags -mincoming-stack-boundary=2 @@ -246,6 +241,11 @@ src_configure() { fi fi + # Workaround for bug #938302 + if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then + myconf+=( DTRACE="${BROOT}"/usr/bin/stap-dtrace ) + fi + if use !system-bootstrap ; then addpredict /dev/random addpredict /proc/self/coredump_filter diff --git a/dev-java/swingx/metadata.xml b/dev-java/swingx/metadata.xml index 6021501589e0..6eb29ba4b9dc 100644 --- a/dev-java/swingx/metadata.xml +++ b/dev-java/swingx/metadata.xml @@ -1,8 +1,11 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<maintainer type="project"> - <email>java@gentoo.org</email> - <name>Java</name> -</maintainer> + <maintainer type="project"> + <email>java@gentoo.org</email> + <name>Java</name> + </maintainer> + <upstream> + <remote-id type="github">arotenberg/swingx</remote-id> + </upstream> </pkgmetadata> diff --git a/dev-java/swt/Manifest b/dev-java/swt/Manifest index 166e78f0c03c..c5cc743a6940 100644 --- a/dev-java/swt/Manifest +++ b/dev-java/swt/Manifest @@ -15,3 +15,6 @@ DIST swt-4.31-gtk-linux-x86_64.zip 4039479 BLAKE2B 6f7e434acf57cd03dd5e938b1b1c5 DIST swt-4.32-gtk-linux-aarch64.zip 3991281 BLAKE2B 99fece9547e801661bb65f699780eb95cb626efd78e1bd79dec15d5fb63e03805ab6c6f75b98648cfad194d800c11cbe6a3c23250f4c4084072aea2aa4cde10c SHA512 adf5d207ba35bfa43fad2c4c64d72a4b56e8830efa0f817b158ad0bd4508eca9c83c43ebebb843c4fb75cb33835a6490b8b0b2a993bfa3507b62fba50345607a DIST swt-4.32-gtk-linux-ppc64le.zip 4028301 BLAKE2B 1ed2590ffe01836dc9209b8323db25204c157a829f4af10f20509c30f268c88e89a9e252aebd9a4a0d3337fa20b1a3d76040b768918f7a2f7c8a6313314d14b8 SHA512 713f762fab2d5eea125844912fafdc3eb42bfb76c2caac5612972714e07b66de0e2a71ae29a51c86b2ad76c32761842ad209f8b59c931ea727dc03b2161b40f2 DIST swt-4.32-gtk-linux-x86_64.zip 4011746 BLAKE2B 5d2784f9a18684d539ea576560bb5fecbbf59960cbd8ce901c9b152df087decb2db28ebf9fbf12c710f6dde71583e9002ca0ac85d5ca7a7ce17286ad1666c5c8 SHA512 f4d511595cccf104cda35c6f314e3689508e18e5da85bb2e8bdd408d9b8d4ab3371e851b3b96ba0f835b3ff0a079c4ed887661e586ab0ce06a52abf69ba243be +DIST swt-4.33-gtk-linux-aarch64.zip 3929090 BLAKE2B 60cc67c7b197cb31c68622c2d78090a50b4d3eca9c8c5f919b230ebed8f65a588c941f32e89ed0126d5bb5558b664a61661535b158bc7b26928556768f83fb5c SHA512 5a01ffd19c62de4fc1d0df4dae7c93ba8235af7e00713f49cf9cb591843f891bb8151a33dd51bca45c31b068edf65b59a1826cec1a1f3b9d14366d30e7efd430 +DIST swt-4.33-gtk-linux-ppc64le.zip 3966353 BLAKE2B 0ab4a75ac1efdedfcacdd235f45b1b0de04ab762cf64957ca1761e2f6a7e1571e106b26ab08b9ecd600ddf89f2abcd151dcd236c303bfe7d8cfabbce2910b2b4 SHA512 8f54cce4e5ac9e0043c8e3861aeed193f919b7bc4291f5812a568fcf4206cf4875d14d9cd7836235414cbde6a837fe38a2a6380c7d50ca04d3aa366dab733d81 +DIST swt-4.33-gtk-linux-x86_64.zip 3950557 BLAKE2B 6cf4f48e32bcfa40082c08a78dd8d64e9454db3859533696c7cc7cd37639ac7df980d9cfd13abaa80e95e44ad619b96944387363d2fb93d7de34f5f25052bd54 SHA512 3211a5480b886c542f99e29b715b5b1221ba679b572f1de6ca68bdb7b06eec6863c68fbddb9b70d74f13e501c3d76a220c7c8b466031b6c0a25bba5c011f8a63 diff --git a/dev-java/swt/metadata.xml b/dev-java/swt/metadata.xml index c06386289922..2a7f473b5a30 100644 --- a/dev-java/swt/metadata.xml +++ b/dev-java/swt/metadata.xml @@ -12,7 +12,7 @@ </longdescription> <upstream> <bugs-to>https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Platform%38component=SWT</bugs-to> - <doc>https://wiki.eclipse.org/SWT</doc> + <doc>https://wiki.eclipse.org/SWT/</doc> <remote-id type="github">eclipse-platform/eclipse.platform.swt</remote-id> </upstream> </pkgmetadata> diff --git a/dev-java/swt/swt-4.29-r1.ebuild b/dev-java/swt/swt-4.29-r1.ebuild index 6dbc30c768f9..140b2c69263a 100644 --- a/dev-java/swt/swt-4.29-r1.ebuild +++ b/dev-java/swt/swt-4.29-r1.ebuild @@ -8,7 +8,7 @@ JAVA_PKG_IUSE="doc source" inherit flag-o-matic java-pkg-2 java-pkg-simple toolchain-funcs MY_PV="${PV/_rc/RC}" -MY_DMF="https://download.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-202309031000" +MY_DMF="https://archive.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-202309031000" MY_P="${PN}-${MY_PV}" DESCRIPTION="GTK based SWT Library" diff --git a/dev-java/swt/swt-4.30-r2.ebuild b/dev-java/swt/swt-4.30-r2.ebuild index 61d849831270..3f0934da1e12 100644 --- a/dev-java/swt/swt-4.30-r2.ebuild +++ b/dev-java/swt/swt-4.30-r2.ebuild @@ -8,7 +8,7 @@ JAVA_PKG_IUSE="doc source" inherit flag-o-matic java-pkg-2 java-pkg-simple toolchain-funcs MY_PV="${PV/_rc/RC}" -MY_DMF="https://download.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-202312010110" +MY_DMF="https://archive.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-202312010110" MY_P="${PN}-${MY_PV}" DESCRIPTION="GTK based SWT Library" diff --git a/dev-java/swt/swt-4.33.ebuild b/dev-java/swt/swt-4.33.ebuild new file mode 100644 index 000000000000..444346927d00 --- /dev/null +++ b/dev-java/swt/swt-4.33.ebuild @@ -0,0 +1,152 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source" + +inherit flag-o-matic java-pkg-2 java-pkg-simple toolchain-funcs + +MY_PV="${PV/_rc/RC}" +MY_DMF="https://download.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-202409030240" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="GTK based SWT Library" +HOMEPAGE="https://www.eclipse.org/swt/" +SRC_URI=" + amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip ) + arm64? ( ${MY_DMF}/${MY_P}-gtk-linux-aarch64.zip ) + ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64le.zip )" +S="${WORKDIR}/library" + +LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1" +SLOT="4.33" +KEYWORDS="~amd64 ~arm64 ~ppc64" +IUSE="cairo opengl webkit" + +BDEPEND=" + app-arch/unzip + virtual/pkgconfig +" +COMMON_DEP=" + app-accessibility/at-spi2-core:2 + dev-libs/glib + x11-libs/gtk+:3 + x11-libs/libXtst + cairo? ( x11-libs/cairo ) + opengl? ( + virtual/glu + virtual/opengl + ) + webkit? ( + net-libs/webkit-gtk:4.1 + )" +DEPEND="${COMMON_DEP} + >=virtual/jdk-17:*[-headless-awt] + x11-base/xorg-proto + x11-libs/libX11 + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXtst" +# error: pattern matching in instanceof is not supported in -source 11 +RDEPEND="${COMMON_DEP} + >=virtual/jre-17:* + x11-libs/libX11" + +HTML_DOCS=( ../about.html ) + +JAVA_RESOURCE_DIRS="../resources" +JAVA_SRC_DIR="../src" + +PATCHES=( + "${FILESDIR}/swt-4.27-as-needed-and-flag-fixes.patch" +) + +src_unpack() { + default + unpack "./src.zip" +} + +src_prepare() { + default #780585 + java-pkg-2_src_prepare + # .css stuff is essential at least for running net-p2p/biglybt + unzip ../swt.jar 'org/eclipse/swt/internal/gtk/*.css' -d resources || die + java-pkg_clean + cd .. || die + mkdir resources src || die "mkdir failed" + find org -type f -name '*.java' \ + | xargs \ + cp --parent -t src -v \ + || die "copying resources failed" + find org -type f ! -name '*.java' \ + | xargs \ + cp --parent -t resources -v \ + || die "copying resources failed" + cp version.txt resources || die "adding version.txt failed" +} + +src_compile() { + append-cflags -fcommon # https://bugs.gentoo.org/707838 + + local JAWTSO="libjawt.so" + IFS=":" read -r -a ldpaths <<< $(java-config -g LDPATH) + + for libpath in "${ldpaths[@]}"; do + if [[ -f "${libpath}/${JAWTSO}" ]]; then + export AWT_LIB_PATH="${libpath}" + break + # this is a workaround for broken LDPATH in <=openjdk-8.292_p10 and <=dev-java/openjdk-bin-8.292_p10 + elif [[ -f "${libpath}/$(tc-arch)/${JAWTSO}" ]]; then + export AWT_LIB_PATH="${libpath}/$(tc-arch)" + break + fi + done + + if [[ -z "${AWT_LIB_PATH}" ]]; then + eerror "${JAWTSO} not found in the JDK being used for compilation!" + die "cannot build AWT library" + fi + + # Fix the pointer size for AMD64 + export SWT_PTR_CFLAGS=-DJNI64 + + # Bug #461784, g_thread_init is deprecated since glib-2.32. + append-cflags -DNO__1g_1thread_1init + + local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)" + + einfo "Building AWT library" + export SWT_JAVA_HOME="$(java-config -g JAVA_HOME)" + ${make} make_awt AWT_LIBS="-L\$(AWT_LIB_PATH) -Wl,-rpath,\$(AWT_LIB_PATH) -ljawt \`pkg-config --libs x11\`" + + einfo "Building SWT library" + ${make} make_swt + + einfo "Building JAVA-AT-SPI bridge" + ${make} make_atk + + if use cairo ; then + einfo "Building CAIRO support" + ${make} make_cairo + fi + + if use opengl ; then + einfo "Building OpenGL component" + ${make} make_glx + fi + + if use webkit ; then + einfo "Building WebKit component" + ${make} make_webkit + fi + + java-pkg-simple_src_compile +} + +src_install() { + java-pkg-simple_src_install + + java-pkg_sointo "/usr/$(get_libdir)/swt" + java-pkg_doso *.so +} diff --git a/dev-lang/elixir/elixir-1.17.2.ebuild b/dev-lang/elixir/elixir-1.17.2.ebuild index 46bdb92ad285..e327ad430656 100644 --- a/dev-lang/elixir/elixir-1.17.2.ebuild +++ b/dev-lang/elixir/elixir-1.17.2.ebuild @@ -9,7 +9,7 @@ SRC_URI="https://github.com/elixir-lang/elixir/archive/v${PV}.tar.gz -> ${P}.tar LICENSE="Apache-2.0 ErlPL-1.1" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~riscv ~sparc ~x86" +KEYWORDS="amd64 ~arm ~arm64 ppc ~riscv ~sparc ~x86" IUSE="test" RESTRICT="!test? ( test )" diff --git a/dev-lang/gnat-gpl/Manifest b/dev-lang/gnat-gpl/Manifest index 76a2910ce921..0467c2ea4c27 100644 --- a/dev-lang/gnat-gpl/Manifest +++ b/dev-lang/gnat-gpl/Manifest @@ -1,7 +1,6 @@ DIST gcc-10-2021-20210519-19A74-src.tar.gz 109157702 BLAKE2B 8ec307e4fde35c8726bc7b9702717329695bad928d5222a7bb691cce47500de31a60bcfcbb925129a57cb81d3d7ea92e60599aa7383d5358e63cc087b0482550 SHA512 2e2cc0ec9a3a82816a5d399d2db261c356e106b82a44efd54a1ac882b96549ab8de79c69858127c4397de6e9e9463ce6fb9994fc2e426e7d3d2f98d5efa2edb6 DIST gcc-10.3.0-patches-4.tar.xz 18460 BLAKE2B 7c4b91c3beebc5fd91c0fdbeec6512c141bd78759a02aa7fff32dd30025ef41db1d57280e50db575f46cc0061a480ced9259410e9875b1dc0048886df469c4c9 SHA512 3befbcdec84e583966aad37d1a08c1863f39eb877296c5991348db9d37cc8359197f23cb3b8fa1b0f4d01497dfd2ebaa393e1a459267c19a0976fb535e463ec8 DIST gcc-interface-10-2021-20210519-19A75-src.tar.gz 359085 BLAKE2B 75f941a7635f2880cc0192acb49d8e7f567baca7530fb981be14dc6cb1bf46fda0e3c043c8703cdbeeb242b548894e0bc6787adfff0f27198354d150e6e36386 SHA512 0251a93d20c59cc4705963438880fe265e2e0bb94a35b7ddaaf03e9efae60e044e585a2204d0773a46f17b3b774e4d0c73adf852f5d06ba17373d26ed580ca8d -DIST gcc-validate-failures-a447cd6dee206facb66720bdacf0c765a8b09f33.py 27537 BLAKE2B 96c7474de0bc50ab890a91551412398c979396c43aa237a4b6d8baa98ce7fda2cc9f5a755a03fd9d055d885ee2fb40ba29644a0649c24398361ce75a20fae634 SHA512 409434953351cf1f2287f1e4a4fbde5b28a27add35ddd284080acec71b33cb4ec5e1c07f41a79fac060bd6f1eedd198812495141923e410ded907429fe515f83 DIST gnat-2021-20210519-19A70-src.tar.gz 8765762 BLAKE2B ef48f54c6109566e37bfa5dee9262305d0529b3dfd333ee28bc4e66f4709a0673f673d742bc04deb15dc145404f7618d350dbdf3f2a7ab37c861e57d011946fa SHA512 3cb79be024fdd9b738d99ffc8e224d32bb382b5da2d02b97b2061a5ea58456f33d4564c92e224af2713ce15fd5481edd715e5b9a52abc74fdc142f27e103c201 DIST gnat-gpl-2014-x86-linux-bin.tar.gz 233049287 BLAKE2B 2e8bab113f6a319533ec12fdf71c481f72aee227c22bd0cc42a53bd727b323caba1e7b6298053db8b4d3016236b31649b0b255f4ebcbb81a08a69f29f78f13fc SHA512 ac7f53fb4bd71b0e8fbd62abc45de76f7f8f2f405b80e9b60b4b65a6cef6ee98e3b06848e4b752af3c8268237e5a0529cf6145ebc5b33cd6e5cf4928d85f5be2 DIST gnat-gpl-2014-x86_64-linux-bin.tar.gz 236253400 BLAKE2B c1db70db9442ba24688b8e323d5a02e2e9707ba1f02835ea551038d0a09aafede93a224091e5186f2f2a9d0f96144027af2184ee05ca1c19cc997a6cf3902df7 SHA512 5e40a251baac3d0ace78352956ca21a7d294d902d344a9ed7a8d376e900468c283721ebfb773adfedbf4d623ace02536505c0147815a0c1908933ad611ea085e diff --git a/dev-lang/gnat-gpl/gnat-gpl-2021-r5.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2021-r5.ebuild index 547c25989494..002368b2c0c0 100644 --- a/dev-lang/gnat-gpl/gnat-gpl-2021-r5.ebuild +++ b/dev-lang/gnat-gpl/gnat-gpl-2021-r5.ebuild @@ -7,7 +7,6 @@ PATCH_GCC_VER=10.3.0 PATCH_VER="4" TOOLCHAIN_GCC_PV=10.3.1 -PYTHON_COMPAT=( python3_{10..12} ) REL=10 MYP=gcc-${REL}-${PV}-20210519-19A74-src diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest index ef7cbff076ec..103d65c828ba 100644 --- a/dev-lang/go/Manifest +++ b/dev-lang/go/Manifest @@ -1,4 +1,3 @@ DIST go1.22.6.src.tar.gz 27561569 BLAKE2B 55ce88dc2039d68f14aea0792ed6a1b45c8e262aa73f76f852941aed12019318b3be7938c954fb7c03d7583f930f7a0e5164effc1ec10fc6d0fc282484390e49 SHA512 59f84ba390203271d9fe2d3f04624449d54d3bb73c2b6e54b5f7dc9e9e2dce2192bae07ef56a2afee871cff84d457b90f8a00f4433e072028b97af987f3799e1 DIST go1.22.7.src.tar.gz 27562038 BLAKE2B c4dd868ac6966029fd72e61d9c82ac26162f4eb26f77a3a6a7e8bc609223069c004786066ca66f24f4d595de1da4f4ee18b368f80ac94e832c8bd9edde407094 SHA512 60b37916e31c3482e8395580a29757971df5e1783dc13a9914261007e07aa8b1b9c1a0b874883e297903e16c7831117b8f814aeff0a0d4398948c97c9d73b73a -DIST go1.23.0.src.tar.gz 28163301 BLAKE2B 49e382dae5195e4a6544f9bd96b169a4c7a822544c7db07c69566063d3f6c21dbbac9991e7da1a0b946ee59ac8f65589b47edbb9856fed93d37e2bac18f61644 SHA512 5822124ca570662ac8dcec32a79196520ce355fe421d83372f8b8a97b3811de0739edcd7080a23f845cf700a6a26f3af6c93278f6ce485b93120afdd4f6c4f47 DIST go1.23.1.src.tar.gz 28164249 BLAKE2B cabe5c50f2f674b53114e5bd692b6482143cda42fc36076b37b4644be0769c8325fe400d1646478d360697a3fba5f6e086b181eb68dfecbc325675be0af2f5ee SHA512 c1db053bab03c33b4ec4cbef6c8dfae279542cde433fdb787b564ccf797bb9ac6d191aae3152a860a9539956502f31003f746e924287040849afce5ccaaf0988 diff --git a/dev-lang/go/go-1.23.0.ebuild b/dev-lang/go/go-1.23.0.ebuild deleted file mode 100644 index 56fac09b0188..000000000000 --- a/dev-lang/go/go-1.23.0.ebuild +++ /dev/null @@ -1,162 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} - -# See "Bootstrap" in release notes -GO_BOOTSTRAP_MIN=1.20.14 -MY_PV=${PV/_/} - -inherit go-env toolchain-funcs - -case ${PV} in -*9999*) - EGIT_REPO_URI="https://github.com/golang/go.git" - inherit git-r3 - ;; -*) - SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz " - S="${WORKDIR}"/go - case ${PV} in - *_beta*|*_rc*) ;; - *) - KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" - ;; - esac -esac - -DESCRIPTION="A concurrent garbage collected and typesafe programming language" -HOMEPAGE="https://go.dev" - -LICENSE="BSD" -SLOT="0/${PV}" -IUSE="cpu_flags_x86_sse2" - -RDEPEND=" -arm? ( sys-devel/binutils[gold] ) -arm64? ( sys-devel/binutils[gold] )" -BDEPEND="|| ( - >=dev-lang/go-${GO_BOOTSTRAP_MIN} - >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )" - -# the *.syso files have writable/executable stacks -QA_EXECSTACK='*.syso' - -# Do not complain about CFLAGS, etc, since Go doesn't use them. -QA_FLAGS_IGNORED='.*' - -# The tools in /usr/lib/go should not cause the multilib-strict check to fail. -QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" - -# This package triggers "unrecognized elf file(s)" notices on riscv. -# https://bugs.gentoo.org/794046 -QA_PREBUILT='.*' - -# Do not strip this package. Stripping is unsupported upstream and may -# fail. -RESTRICT=" strip" - -DOCS=( - CONTRIBUTING.md - PATENTS - README.md - SECURITY.md -) - -go_tuple() { - echo "$(go-env_goos $@)_$(go-env_goarch $@)" -} - -go_cross_compile() { - [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] -} - -PATCHES=( - "${FILESDIR}"/go-never-download-newer-toolchains.patch -) - -src_compile() { - if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" - elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" - else - eerror "Go cannot be built without go or go-bootstrap installed" - die "Should not be here, please report a bug" - fi - - # Go's build script does not use BUILD/HOST/TARGET consistently. :( - export GOHOSTARCH=$(go-env_goarch ${CBUILD}) - export GOHOSTOS=$(go-env_goos ${CBUILD}) - export CC=$(tc-getBUILD_CC) - - export GOARCH=$(go-env_goarch) - export GOOS=$(go-env_goos) - export CC_FOR_TARGET=$(tc-getCC) - export CXX_FOR_TARGET=$(tc-getCXX) - use arm && export GOARM=$(go-env_goarm) - use x86 && export GO386=$(go-env_go386) - - cd src - bash -x ./make.bash || die "build failed" -} - -src_test() { - go_cross_compile && return 0 - - cd src - - # https://github.com/golang/go/issues/42005 - rm cmd/link/internal/ld/fallocate_test.go || die - - PATH="${GOBIN}:${PATH}" \ - ./run.bash -no-rebuild -k || die "tests failed" - cd .. - rm -fr pkg/*_race || die - rm -fr pkg/obj/go-build || die -} - -src_install() { - dodir /usr/lib/go - # The use of cp is deliberate in order to retain permissions - cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go - einstalldocs - - insinto /usr/lib/go - doins go.env VERSION* - - # testdata directories are not needed on the installed system - rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print) - - local bin_path - if go_cross_compile; then - bin_path="bin/$(go_tuple)" - else - bin_path=bin - fi - local f x - for x in ${bin_path}/*; do - f=${x##*/} - dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} - done - - # install the @golang-rebuild set for Portage - insinto /usr/share/portage/config/sets - newins "${FILESDIR}"/go-sets.conf go.conf -} - -pkg_postinst() { - [[ -z ${REPLACING_VERSIONS} ]] && return - elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild" - elog "all packages compiled with previous versions of ${CATEGORY}/${PN}" - elog "due to the static linking nature of go." - elog "If this is not done, the packages compiled with the older" - elog "version of the compiler will not be updated until they are" - elog "updated individually, which could mean they will have" - elog "vulnerabilities." - elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages" - elog "See https://bugs.gentoo.org/752153 for more info" -} diff --git a/dev-lang/go/go-9999.ebuild b/dev-lang/go/go-9999.ebuild index b16e86ae904f..485f2a1bde8d 100644 --- a/dev-lang/go/go-9999.ebuild +++ b/dev-lang/go/go-9999.ebuild @@ -23,7 +23,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 diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest index 1450f8797ac1..724ada4397c1 100644 --- a/dev-lang/python/Manifest +++ b/dev-lang/python/Manifest @@ -33,7 +33,9 @@ DIST python-gentoo-patches-3.10.14_p1.tar.xz 15836 BLAKE2B a850e4ad4f025fa9d38cc DIST python-gentoo-patches-3.10.14_p2.tar.xz 19564 BLAKE2B 2ad1398e0679e73028a0614e8c4ef6bc76928f6c1d0e93c39c3bf2c23201904ee677377abb120444995154bda4251cb8f0aabafca5e6c82601a6270d0e62bf67 SHA512 6d4194b85a176a1a0f7acc3eab48829d504e66381f3008821a9a433e63f5188b444321192ad536d8219a1c3ca56dbdb5c39439401cbbb30f35a606e2b6617624 DIST python-gentoo-patches-3.10.14_p3.tar.xz 22080 BLAKE2B f45ebe4df3dc39a842c93d741ef66fd0f9f7d1c6453d499d59b62eda41f01bc17e109205fedc506963d1f21eb3fbf9478564ff5e1a11c10336f855069a642ceb SHA512 db268f1482e5c46a71ce3aef2c2ab6d458cc5263aec360e61c6aff97f119f4f100becefbb575156b1b0239e591a496cb62a136597fadae8a5b630c7233c0040a DIST python-gentoo-patches-3.10.15.tar.xz 15896 BLAKE2B f908b409dbcedeb4e2fa7255d9dedfb8f86f39b9b12612d45662d2305012692753874befa5377e1bcb2e8fc04b54bf206948e12eb7bc357a764c1b1e496e5997 SHA512 a647882ede8d7b97e301e472e91f4573dce9f8bf4e408449444625fdf79859a54fd828daa60c7960721f34c3d6d82e2e45db2c55f2fc093097a0db42f7363b8c +DIST python-gentoo-patches-3.10.15_p1.tar.xz 24048 BLAKE2B 191c28ad9bc781d6f3077870e8d40ff98a47a64009ecfbbd10fe2b3c5330692181837fd3e9b336fd01f936a39160fc12761b2ef9bc00843248ab978cda2e2767 SHA512 4461e351c991694415e2812e558d6c3d3f79295358623dc955bc0839691a170d95a3efd31c0bf9f0d6191e4184d7b55fdb485b948d591782fef5b060d7660cce DIST python-gentoo-patches-3.11.10.tar.xz 8484 BLAKE2B 844aa7a855e3ab5a6307c6bfac9d58faad249ce550d21e8526125dc56b9665dc6fa00530a60efe8f851397d368057400851906e59fec10f6325bd83a51e39317 SHA512 bb602b80eed62ca8477b05665267ec3729fd9a85d9b709f844ad729f496d008a529d05d2ebfe8acb5db5ccb99005260bfe458f6ce0d9d358530670e0970e415e +DIST python-gentoo-patches-3.11.10_p1.tar.xz 10592 BLAKE2B 1cc02d22b55cb76beba133c37e6db3b9ba12b11cd8776acb064f14431842405cbc9efb5a06319cff1c73d9178ddbbe2e340829d4628c88a9589aa2fc1d308f80 SHA512 7ddb08e4d8a9173a26fa18de687a4c85c3d460e2bc595da6f4b15cfe3be264ccdc7d61d5fed1e7a82f256d21caf3ea7de87f774fde61a9d37bed15f86f546adb DIST python-gentoo-patches-3.11.9.tar.xz 8456 BLAKE2B 4e62837f17c1d056460df417b056a79ad78dbcdd3454761c7cda68ffe6faf8f4d4f04d5539e0ba94332fe19a751f7d5ff2c35ff969a6aa09a2c72d2ce5efbff1 SHA512 a288aa8d1d15e906e0f1762602a2122f9dc91bbd6b72123ac5d00ce55b3af324a4e8280b600fc0fb630e489e57ee1547d7595a4ede7a70e4b26d6686a8414997 DIST python-gentoo-patches-3.11.9_p1.tar.xz 12348 BLAKE2B 885c18eb52d299c8da43fe48106a2464ce594822e8ed362150c98f749065447b7438741cacf82a71db102434a5b2a2e91778aca8609fd7ede7898f9e57a82d49 SHA512 2ed8a97692a8980e565038ad095dad8ed3daf1f8c5c5e042a0bc278c320e099962ad13b5ff919ae334674a4828c5e8f3b9c3af6b3c37e93a42374284f5ea2243 DIST python-gentoo-patches-3.11.9_p2.tar.xz 14916 BLAKE2B a910eae412fc1ce3657272c3c2ea9ef95b8d5711ed4c85b93a35f4ab757b1134bff0f8c8a0071e8e06aac784d0b51e36cd9271f892098cba272da4a4e73317d1 SHA512 5c055186b3a8376f4f602ec5d1f8e7bf0f067bc67295c1cdaa68ce1fb6fb21cda75e22705b8a5a2a6525af67f3b36a82fde5ba6ae9b097a5914ab79a2f1a0fad @@ -42,14 +44,18 @@ DIST python-gentoo-patches-3.12.4_p3.tar.xz 14796 BLAKE2B 68f5235ef434f9db16e7bc DIST python-gentoo-patches-3.12.5.tar.xz 6056 BLAKE2B d9b85d98a75f6365c63ddabb8f25db3be11e7e4de22ec9426bb24160efcca25c75e3e19beec9fc2f8f8fe273c145f825c6f27ece2fca83d44cf2dbdfacae918d SHA512 72949ae8a1c796cb57e8b43d259037a723482b5a3849823c1cdc58acc012177a0ec836a4dd6ad656fe57ee1d84491c03ed9109667a953aa52bf5df7640de969f DIST python-gentoo-patches-3.12.5_p1.tar.xz 8632 BLAKE2B 13570bb465002cea3590b06d055b936ac0fcc68f6f258aca99a67f02f0b1cd28396424b686c5e080f593a74a744ff449e7220f51f167a858b2313be4c8b64b19 SHA512 eb9fb2d48236a9f7941fb8938310cc32d216eb01e19277175223b8b1fe1bfd606bde9a3c8bc66ad2e494fb87ce23b0d1acd359c375e4a11a5caae25450c11360 DIST python-gentoo-patches-3.12.6.tar.xz 6048 BLAKE2B 577032d7aa4bab423781bffad8e64f56b492dc31fbd20acd91f3d28356bd697603dfd47a3a9051538dde2af942ae513727ecea415d82f5082a992bd22b8cb2dd SHA512 6f1037e97bb362a3d04c3ec080dc062c5de6e4b779cda0d88f684422d757acd6fc6f971c7004a3f50bbc0161dd28c3146672f74e0e598066f9a8ba4e0eb2627e +DIST python-gentoo-patches-3.12.6_p2.tar.xz 8144 BLAKE2B 2f36ce972e0b3e2884c9df629e3aeb1af05e4c77dffb866ff28e08a0a7df3c7cf36a9de250d148d909c07fd5bad483c95b3267818657c04e7d0d6fe512e21f9a SHA512 caa86c6cf693f9293b3aa8944452d117b78c1c3f8d6a6aa658cb5c2d2ffb0cecc6cf14b293872bd2101766ee7167ba88183904b2814090f8cbc64c1fa3b771be DIST python-gentoo-patches-3.13.0rc1_p2.tar.xz 12748 BLAKE2B 851d16e16d2a98fde62c38054d9bedf3538d88a59e19dcfd8ee7d86f3f67a3b66105664da9181dbfb9ad16aa0042815ccf469225348fb0ba8854337b0a736d33 SHA512 8264aa65bf71e97a4afe47a9fba58815163bc950ea70ff708c5f265722c5b4b8af19fbbe8a9c3673957a6de3af8307a9ba0ed9f4e42472ca24c5ed930682a038 DIST python-gentoo-patches-3.13.0rc1_p3.tar.xz 15148 BLAKE2B 668060644372e8ddf2d9686796ec304ae7689f5c10ecbc6862f054f96504c418b0e4df28675e4fbb610889f9a665a7a54f23633036b0df35f19f40ef8e6bab32 SHA512 c0cbdf9e0fe2ad29175302e548ebfda1d2af42af0ffeb363eb8b0dc53e1059f5abd7dcd02fd8e9eb9ba7bef2b34b7693633f0a62dc1ab933f43077feacf00fbc DIST python-gentoo-patches-3.13.0rc2.tar.xz 5696 BLAKE2B 4e716d1d6225e811b598d029ef1dbdc413df614ef00ab8051ea697e633477a0114a3660cae037bdf4142f76c9f2efdefc25b604af11c31eb77d6d98d8f932cff SHA512 c20b53772bd7d305562657722aec70de78fffbf8ab7939f59d496e06c21b31fcd7b4a92573b1000d3bee4d90fd8b7422543f9cfdad15d60bc9a7ecf2a2259599 +DIST python-gentoo-patches-3.13.0rc2_p1.tar.xz 7360 BLAKE2B be41dfc96c333ca19a4a21f0931287503094676d1eba1e9e5ae86bf07be571fb7ddaf75eab87dc2ce9364ea1861ca5307ae1b8cdbe2c6f9a1a0e351f42f0fb97 SHA512 38b8b5f5ec21d3cf02a4db43929f4dd870200bde655b9b3acd0f398ed0468f9e43996821510cebb5e01b5633afc7e6fc254b0c80062bb577a044d85e25d28ff2 DIST python-gentoo-patches-3.8.19_p2.tar.xz 35524 BLAKE2B a6b81e6ae907b60eea676cb65a9c693e62453dc44616baaadb294c5782a195c20eff6c2869b38ea110fe06e9e511468f4ab0c3d1811b16e0ab2833f9dc09b25b SHA512 9944c330b6062c2ac6e13fcfbc1c8835dfd078f6744cdfbc03ba787ae97c08bdae559cefadafe9dfe9be9c31f8c15ee895599b266d870f73c06a2f4b15c78dc3 DIST python-gentoo-patches-3.8.19_p3.tar.xz 39392 BLAKE2B 451765c7546831c35f52e2772b8b43b6515f66cace2d13ed473228bf2d2b18f49b938a61d4cdf1be0fecbebfac1fc8d3d95f7597eb9d877c0b2ce495e8d419c1 SHA512 76e405ddfd3ee98dbd077f6ec83ae93d0506ddbc3b2b8884a0f38c6269ea982b635b0eb7820f6f9b2f81eb0ef514b93a5eb10437414cde4de2bfb7ea37764b3c DIST python-gentoo-patches-3.8.19_p4.tar.xz 41888 BLAKE2B 8f5fcf8b6d925c9f668a1f8ac22d4b8c2ff7b4d90103606afc37eef735d5ed0fe7288469fb18e08bc31165c16c9877977610e5a6af9e385518028baed34fde2f SHA512 4440725419af3bc5c4f1719dd39605df28e2bca625c3a822082e4541db9479dc6fcf8c2d6fc777292b75f70669ab7e010df105b2b580865a442df76c0f83ebbc DIST python-gentoo-patches-3.8.20.tar.xz 34380 BLAKE2B 1fea8e65f7db809a716376a3062a730321f68e711837c400fecffc27273754bb9aef3ed98651bce412596d35674f0b0813f7a722c1e2fe22954922c17846de37 SHA512 3070a0b3cb91129ffcada6052e50d779ea6b5480a3b4edc3e3f1c9d3b683ec1866168255db84b86f0a4dedb4a23949cda8f474d320db34d7511e9ede9a0342d9 +DIST python-gentoo-patches-3.8.20_p2.tar.xz 42296 BLAKE2B c0f2c4d0adcb6c10eb68342b911016666cb68308717a5ca1369100a39229ce16c6e9dfdf9e1b4cffe0191d03ca5ee7d9568cd24885fd0f4f32f14e2e8c0a96a3 SHA512 cb9e98c0dd823b6e4f8a60e9095ab58e596cd9411b675678a0d4adefc92b37e14cecc7cecb82e287ac34a9ce1d4595f261b0736bcc9fc62c43c7d8c0b3be70e7 DIST python-gentoo-patches-3.9.19_p3.tar.xz 28240 BLAKE2B 35c70b1f9a590abe9a74795f478ab788cd72c96e9d84f2756685e61324dc4203148e71b00a236bb4af8fb8315e3582ecec255b39749a653e0511d4a9f9fef725 SHA512 6b8f4dab4aa7d4d646ee4091b5cf76bbc8896d4299a3623660a2c5fec06c0cf56c0a50ac87604885cd155141bc85e0e80acdbedb7b34a813901aad021b9b8ab2 DIST python-gentoo-patches-3.9.19_p4.tar.xz 32048 BLAKE2B 9595d508304baf36a2c8daa2ae15d3596fdfb5fed5c531fc379ee347d5b165885ade1842f094184fb7bd81a6385e45f9b77ba7bfa4334ea30292c0bc59b373e2 SHA512 5713c69ee3745246a570e0f05ac8f45baa8f9fa8a2154c930f1ddcf827a2a790cb5e308f5ff9452d3ffda5d60c167a02429af773eebf13dcb6463793cd448500 DIST python-gentoo-patches-3.9.19_p5.tar.xz 34548 BLAKE2B 6ad49bba626932b3ba1b781fe5762882aa90b552bedc0f1b8fe0921c7e4ad1bd67ddbc2c11c969fae53fd2b6189dd1b1506da87c123c055ec3df023950bd1938 SHA512 d66a2d6012d98edde4a9eb52cd8a06f0338a25f44e299713abd970884c7b1d457c6a09a1e27035841eae3a4844bbec1b4d2a4b691bbf519867a6ed58f251e633 DIST python-gentoo-patches-3.9.20.tar.xz 26992 BLAKE2B d77861cb99c5b0f76482c7250d45ab0726e9745929a2098724ba528034b7787e12be2505c3d2479f3b5e1760b8e4046d89ad6d5e4af200c4116c348c663792ba SHA512 132f1d731b671fbddf89a3af49c6887f3f8414f0f0df6769f243eab056e214ef3b2427075de10384cc4f6df2fd3140fb6321ad3e271539da9cb6846ba26e935e +DIST python-gentoo-patches-3.9.20_p1.tar.xz 34944 BLAKE2B 332454661adc03033c7e8a5fcc91081b7d405826e9bf89bb2c2e178a0795e4415c9e87ae923756470ee973441f242e194b397354964b8f43dadd4965d210a4f4 SHA512 19bf7227535526a733633723b75d49786dfd8738595c1115b4e05665bc13a1ea70cbf0cc62cb27e81c75f5db2aa56ab985eaa5abde6243697caccb2cb5288005 diff --git a/dev-lang/python/python-3.10.15_p1.ebuild b/dev-lang/python/python-3.10.15_p1.ebuild new file mode 100644 index 000000000000..38ab05f3ee55 --- /dev/null +++ b/dev-lang/python/python-3.10.15_p1.ebuild @@ -0,0 +1,592 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +WANT_LIBTOOL="none" + +inherit autotools check-reqs flag-o-matic multiprocessing pax-utils +inherit prefix python-utils-r1 toolchain-funcs verify-sig + +MY_PV=${PV/_rc/rc} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="An interpreted, interactive, object-oriented programming language" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE=" + bluetooth build debug +ensurepip examples gdbm libedit + +ncurses pgo +readline +sqlite +ssl test tk valgrind +" +RESTRICT="!test? ( test )" + +# Do not add a dependency on dev-lang/python to this ebuild. +# If you need to apply a patch which requires python for bootstrapping, please +# run the bootstrap code on your dev box and include the results in the +# patchset. See bug 447752. + +RDEPEND=" + app-arch/bzip2:= + app-arch/xz-utils:= + >=dev-libs/expat-2.1:= + dev-libs/libffi:= + dev-libs/mpdecimal:= + dev-python/gentoo-common + >=sys-libs/zlib-1.1.3:= + virtual/libcrypt:= + virtual/libintl + ensurepip? ( dev-python/ensurepip-wheels ) + gdbm? ( sys-libs/gdbm:=[berkdb] ) + kernel_linux? ( sys-apps/util-linux:= ) + ncurses? ( >=sys-libs/ncurses-5.2:= ) + readline? ( + !libedit? ( >=sys-libs/readline-4.1:= ) + libedit? ( dev-libs/libedit:= ) + ) + sqlite? ( >=dev-db/sqlite-3.3.8:3= ) + ssl? ( >=dev-libs/openssl-1.1.1:= ) + tk? ( + >=dev-lang/tcl-8.0:= + >=dev-lang/tk-8.0:= + dev-tcltk/blt:= + dev-tcltk/tix + ) +" +# bluetooth requires headers from bluez +DEPEND=" + ${RDEPEND} + bluetooth? ( net-wireless/bluez ) + valgrind? ( dev-debug/valgrind ) + test? ( app-arch/xz-utils ) +" +# autoconf-archive needed to eautoreconf +BDEPEND=" + dev-build/autoconf-archive + app-alternatives/awk + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-python ) +" +RDEPEND+=" + !build? ( app-misc/mime-types ) +" +if [[ ${PV} != *_alpha* ]]; then + RDEPEND+=" + dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] + " +fi + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +# large file tests involve a 2.5G file being copied (duplicated) +CHECKREQS_DISK_BUILD=5500M + +QA_PKGCONFIG_VERSION=${PYVER} +# false positives -- functions specific to *BSD +QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) + +pkg_pretend() { + use test && check-reqs_pkg_pretend +} + +pkg_setup() { + use test && check-reqs_pkg_setup +} + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + # Ensure that internal copies of expat and libffi are not used. + rm -r Modules/expat || die + rm -r Modules/_ctypes/libffi* || die + + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + default + + # https://bugs.gentoo.org/850151 + sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die + + # force the correct number of jobs + # https://bugs.gentoo.org/737660 + local jobs=$(makeopts_jobs) + sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die + sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + + eautoreconf +} + +build_cbuild_python() { + # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 + local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + # + # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) + local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" + local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} + local -x CFLAGS= LDFLAGS= + local -x BUILD_CFLAGS="${CFLAGS_NODIST}" + local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} + + # We need to build our own Python on CBUILD first, and feed it in. + # bug #847910 and bug #864911. + local myeconfargs_cbuild=( + "${myeconfargs[@]}" + + --prefix="${BROOT}"/usr + --libdir="${cbuild_libdir:2}" + + # Avoid needing to load the right libpython.so. + --disable-shared + + # As minimal as possible for the mini CBUILD Python + # we build just for cross. + --without-lto + --disable-optimizations + ) + + mkdir "${WORKDIR}"/${P}-${CBUILD} || die + pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die + # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating + # libdir correctly for cross. + PYTHON_DISABLE_MODULES+=" _ctypes _crypt" \ + ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" + + # Avoid as many dependencies as possible for the cross build. + cat >> Makefile <<-EOF || die + MODULE_NIS=disabled + MODULE__DBM=disabled + MODULE__GDBM=disabled + MODULE__DBM=disabled + MODULE__SQLITE3=disabled + MODULE__HASHLIB=disabled + MODULE__SSL=disabled + MODULE__CURSES=disabled + MODULE__CURSES_PANEL=disabled + MODULE_READLINE=disabled + MODULE__TKINTER=disabled + MODULE_PYEXPAT=disabled + MODULE_ZLIB=disabled + EOF + + # Unfortunately, we do have to build this immediately, and + # not in src_compile, because CHOST configure for Python + # will check the existence of the Python it was pointed to + # immediately. + PYTHON_DISABLE_MODULES+=" _ctypes _crypt" emake + popd &> /dev/null || die +} + +src_configure() { + # disable automagic bluetooth headers detection + if ! use bluetooth; then + local -x ac_cv_header_bluetooth_bluetooth_h=no + fi + local disable + use gdbm || disable+=" gdbm" + use ncurses || disable+=" _curses _curses_panel" + use readline || disable+=" readline" + use sqlite || disable+=" _sqlite3" + use ssl || export PYTHON_DISABLE_SSL="1" + use tk || disable+=" _tkinter" + export PYTHON_DISABLE_MODULES="${disable}" + + if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then + einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}" + fi + + append-flags -fwrapv + filter-flags -malign-double + + # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. + # PKG_CONFIG needed for cross. + tc-export CXX PKG_CONFIG + + local dbmliborder= + if use gdbm; then + dbmliborder+="${dbmliborder:+:}gdbm" + fi + + # Set baseline test skip flags. + COMMON_TEST_SKIPS=( + -x test_gdb + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + COMMON_TEST_SKIPS+=( + -x test_builtin + -x test_capi + -x test_cmath + -x test_float + # timeout + -x test_free_threading + -x test_math + -x test_numeric_tower + -x test_random + -x test_statistics + # bug 653850 + -x test_resource + -x test_strtod + ) + ;; + mips*) + COMMON_TEST_SKIPS+=( + -x test_ctypes + -x test_external_inspection + -x test_statistics + ) + ;; + powerpc64-*) # big endian + COMMON_TEST_SKIPS+=( + -x test_descr + ) + ;; + riscv*) + COMMON_TEST_SKIPS+=( + -x test_urllib2 + ) + ;; + sparc*) + COMMON_TEST_SKIPS+=( + # bug 788022 + -x test_multiprocessing_fork + -x test_multiprocessing_forkserver + + -x test_ctypes + -x test_descr + # bug 931908 + -x test_exceptions + ) + ;; + esac + + # musl-specific skips + use elibc_musl && COMMON_TEST_SKIPS+=( + # various musl locale deficiencies + -x test__locale + -x test_c_locale_coercion + -x test_locale + -x test_re + + # known issues with find_library on musl + # https://bugs.python.org/issue21622 + -x test_ctypes + + # fpathconf, ttyname errno values + -x test_os + ) + + if use pgo; then + local profile_task_flags=( + -m test + "-j$(makeopts_jobs)" + --pgo-extended + -u-network + + # We use a timeout because of how often we've had hang issues + # here. It also matches the default upstream PROFILE_TASK. + --timeout 1200 + + "${COMMON_TEST_SKIPS[@]}" + + -x test_dtrace + + # All of these seem to occasionally hang for PGO inconsistently + # They'll even hang here but be fine in src_test sometimes. + # bug #828535 (and related: bug #788022) + -x test_asyncio + -x test_concurrent_futures + -x test_httpservers + -x test_logging + -x test_multiprocessing_fork + -x test_socket + -x test_xmlrpc + + # Hangs (actually runs indefinitely executing itself w/ many cpython builds) + # bug #900429 + -x test_tools + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + profile_task_flags+=( + -x test_os + ) + ;; + hppa*) + profile_task_flags+=( + -x test_descr + # bug 931908 + -x test_exceptions + -x test_os + ) + ;; + powerpc64-*) # big endian + profile_task_flags+=( + # bug 931908 + -x test_exceptions + ) + ;; + riscv*) + profile_task_flags+=( + -x test_statistics + ) + ;; + esac + + if has_version "app-arch/rpm" ; then + # Avoid sandbox failure (attempts to write to /var/lib/rpm) + profile_task_flags+=( + -x test_distutils + ) + fi + local -x PROFILE_TASK="${profile_task_flags[*]}" + fi + + local myeconfargs=( + # glibc-2.30 removes it; since we can't cleanly force-rebuild + # Python on glibc upgrade, remove it proactively to give + # a chance for users rebuilding python before glibc + ac_cv_header_stropts_h=no + + --enable-shared + --without-static-libpython + --enable-ipv6 + --infodir='${prefix}/share/info' + --mandir='${prefix}/share/man' + --with-computed-gotos + --with-dbmliborder="${dbmliborder}" + --with-libc= + --enable-loadable-sqlite-extensions + --without-ensurepip + --without-lto + --with-system-expat + --with-system-ffi + --with-system-libmpdec + --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip + + $(use_with debug assertions) + $(use_enable pgo optimizations) + $(use_with readline readline "$(usex libedit editline readline)") + $(use_with valgrind) + ) + + # disable implicit optimization/debugging flags + local -x OPT= + + # https://bugs.gentoo.org/700012 + if tc-is-lto; then + append-cflags $(test-flags-CC -ffat-lto-objects) + myeconfargs+=( + --with-lto + ) + fi + + if tc-is-cross-compiler ; then + build_cbuild_python + # Point the imminent CHOST build to the Python we just + # built for CBUILD. + export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}" + fi + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + local -x CFLAGS_NODIST=${CFLAGS} + local -x LDFLAGS_NODIST=${LDFLAGS} + local -x CFLAGS= LDFLAGS= + + # Fix implicit declarations on cross and prefix builds. Bug #674070. + if use ncurses; then + append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw + fi + + hprefixify setup.py + econf "${myeconfargs[@]}" + + if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then + eerror "configure has detected that the sem_open function is broken." + eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." + die "Broken sem_open function (bug 496328)" + fi + + # install epython.py as part of stdlib + echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die +} + +src_compile() { + # Ensure sed works as expected + # https://bugs.gentoo.org/594768 + local -x LC_ALL=C + # Prevent using distutils bundled by setuptools. + # https://bugs.gentoo.org/823728 + export SETUPTOOLS_USE_DISTUTILS=stdlib + + # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't + # end up writing bytecode & violating sandbox. + # bug #831897 + local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} + + # Gentoo hack to disable accessing system site-packages + export GENTOO_CPYTHON_BUILD=1 + + if use pgo ; then + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + fi + + # also need to clear the flags explicitly here or they end up + # in _sysconfigdata* + emake CPPFLAGS= CFLAGS= LDFLAGS= + + # Restore saved value from above. + local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} + + # Work around bug 329499. See also bug 413751 and 457194. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E python + else + pax-mark m python + fi +} + +src_test() { + # Tests will not work when cross compiling. + if tc-is-cross-compiler; then + elog "Disabling tests due to crosscompiling." + return + fi + + local test_opts=( + --verbose3 + -u-network + -j "$(makeopts_jobs)" + "${COMMON_TEST_SKIPS[@]}" + ) + + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + + nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local ret=${?} + + [[ ${ret} -eq 0 ]] || die "emake test failed" +} + +src_install() { + local libdir=${ED}/usr/lib/python${PYVER} + + emake DESTDIR="${D}" TEST_MODULES=no altinstall + + # Fix collisions between different slots of Python. + rm "${ED}/usr/$(get_libdir)/libpython3.so" || die + + # Cheap hack to get version with ABIFLAGS + local abiver=$(cd "${ED}/usr/include"; echo python*) + if [[ ${abiver} != python${PYVER} ]]; then + # Replace python3.X with a symlink to python3.Xm + rm "${ED}/usr/bin/python${PYVER}" || die + dosym "${abiver}" "/usr/bin/python${PYVER}" + # Create python3.X-config symlink + dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" + # Create python-3.5m.pc symlink + dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" + fi + + # python seems to get rebuilt in src_install (bug 569908) + # Work around it for now. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E "${ED}/usr/bin/${abiver}" + else + pax-mark m "${ED}/usr/bin/${abiver}" + fi + + rm -r "${libdir}"/ensurepip/_bundled || die + if ! use ensurepip; then + rm -r "${libdir}"/ensurepip || die + fi + if ! use sqlite; then + rm -r "${libdir}/"sqlite3 || die + fi + if ! use tk; then + rm -r "${ED}/usr/bin/idle${PYVER}" || die + rm -r "${libdir}/"{idlelib,tkinter} || die + fi + + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + + dodoc Misc/{ACKS,HISTORY,NEWS} + + if use examples; then + docinto examples + find Tools -name __pycache__ -exec rm -fr {} + || die + dodoc -r Tools + fi + insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 + local libname=$( + printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | + emake --no-print-directory -s -f - 2>/dev/null + ) + newins Tools/gdb/libpython.py "${libname}"-gdb.py + + newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} + newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} + sed \ + -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ + -e "s:@PYDOC@:pydoc${PYVER}:" \ + -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ + "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" + + # python-exec wrapping support + local pymajor=${PYVER%.*} + local EPYTHON=python${PYVER} + local scriptdir=${D}$(python_get_scriptdir) + mkdir -p "${scriptdir}" || die + # python and pythonX + ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die + ln -s "python${pymajor}" "${scriptdir}/python" || die + # python-config and pythonX-config + # note: we need to create a wrapper rather than symlinking it due + # to some random dirname(argv[0]) magic performed by python-config + cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die + #!/bin/sh + exec "${abiver}-config" "\${@}" + EOF + chmod +x "${scriptdir}/python${pymajor}-config" || die + ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die + # 2to3, pydoc + ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die + ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die + # idle + if use tk; then + ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die + fi +} diff --git a/dev-lang/python/python-3.11.10_p1.ebuild b/dev-lang/python/python-3.11.10_p1.ebuild new file mode 100644 index 000000000000..388638fd7de9 --- /dev/null +++ b/dev-lang/python/python-3.11.10_p1.ebuild @@ -0,0 +1,624 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +WANT_LIBTOOL="none" + +inherit autotools check-reqs flag-o-matic multiprocessing pax-utils +inherit prefix python-utils-r1 toolchain-funcs verify-sig + +MY_PV=${PV/_rc/rc} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="An interpreted, interactive, object-oriented programming language" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE=" + bluetooth build debug +ensurepip examples gdbm libedit + +ncurses pgo +readline +sqlite +ssl test tk valgrind +" +RESTRICT="!test? ( test )" + +# Do not add a dependency on dev-lang/python to this ebuild. +# If you need to apply a patch which requires python for bootstrapping, please +# run the bootstrap code on your dev box and include the results in the +# patchset. See bug 447752. + +RDEPEND=" + app-arch/bzip2:= + app-arch/xz-utils:= + app-crypt/libb2 + >=dev-libs/expat-2.1:= + dev-libs/libffi:= + dev-libs/mpdecimal:= + dev-python/gentoo-common + >=sys-libs/zlib-1.1.3:= + virtual/libcrypt:= + virtual/libintl + ensurepip? ( dev-python/ensurepip-wheels ) + gdbm? ( sys-libs/gdbm:=[berkdb] ) + kernel_linux? ( sys-apps/util-linux:= ) + ncurses? ( >=sys-libs/ncurses-5.2:= ) + readline? ( + !libedit? ( >=sys-libs/readline-4.1:= ) + libedit? ( dev-libs/libedit:= ) + ) + sqlite? ( >=dev-db/sqlite-3.3.8:3= ) + ssl? ( >=dev-libs/openssl-1.1.1:= ) + tk? ( + >=dev-lang/tcl-8.0:= + >=dev-lang/tk-8.0:= + dev-tcltk/blt:= + dev-tcltk/tix + ) +" +# bluetooth requires headers from bluez +DEPEND=" + ${RDEPEND} + bluetooth? ( net-wireless/bluez ) + test? ( app-arch/xz-utils ) + valgrind? ( dev-debug/valgrind ) +" +# autoconf-archive needed to eautoreconf +BDEPEND=" + dev-build/autoconf-archive + app-alternatives/awk + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-python ) +" +RDEPEND+=" + !build? ( app-misc/mime-types ) +" +if [[ ${PV} != *_alpha* ]]; then + RDEPEND+=" + dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] + " +fi + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +# large file tests involve a 2.5G file being copied (duplicated) +CHECKREQS_DISK_BUILD=5500M + +QA_PKGCONFIG_VERSION=${PYVER} +# false positives -- functions specific to *BSD +QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) + +pkg_pretend() { + use test && check-reqs_pkg_pretend +} + +pkg_setup() { + use test && check-reqs_pkg_setup +} + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + # Ensure that internal copies of expat and libffi are not used. + rm -r Modules/expat || die + rm -r Modules/_ctypes/libffi* || die + + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + default + + # https://bugs.gentoo.org/850151 + sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die + + # force the correct number of jobs + # https://bugs.gentoo.org/737660 + local jobs=$(makeopts_jobs) + sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die + sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + + eautoreconf +} + +build_cbuild_python() { + # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 + local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + # + # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) + local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" + local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} + local -x CFLAGS= LDFLAGS= + local -x BUILD_CFLAGS="${CFLAGS_NODIST}" + local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} + + # We need to build our own Python on CBUILD first, and feed it in. + # bug #847910 + local myeconfargs_cbuild=( + "${myeconfargs[@]}" + + --prefix="${BROOT}"/usr + --libdir="${cbuild_libdir:2}" + + # Avoid needing to load the right libpython.so. + --disable-shared + + # As minimal as possible for the mini CBUILD Python + # we build just for cross to satisfy --with-build-python. + --without-lto + --without-readline + --disable-optimizations + ) + + mkdir "${WORKDIR}"/${P}-${CBUILD} || die + pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die + # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating + # libdir correctly for cross. + PYTHON_DISABLE_MODULES+=" _ctypes _crypt" \ + ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" + + # Avoid as many dependencies as possible for the cross build. + cat >> Makefile <<-EOF || die + MODULE_NIS_STATE=disabled + MODULE__DBM_STATE=disabled + MODULE__GDBM_STATE=disabled + MODULE__DBM_STATE=disabled + MODULE__SQLITE3_STATE=disabled + MODULE__HASHLIB_STATE=disabled + MODULE__SSL_STATE=disabled + MODULE__CURSES_STATE=disabled + MODULE__CURSES_PANEL_STATE=disabled + MODULE_READLINE_STATE=disabled + MODULE__TKINTER_STATE=disabled + MODULE_PYEXPAT_STATE=disabled + MODULE_ZLIB_STATE=disabled + EOF + + # Unfortunately, we do have to build this immediately, and + # not in src_compile, because CHOST configure for Python + # will check the existence of the --with-build-python value + # immediately. + PYTHON_DISABLE_MODULES+=" _ctypes _crypt" emake + popd &> /dev/null || die +} + +src_configure() { + # disable automagic bluetooth headers detection + if ! use bluetooth; then + local -x ac_cv_header_bluetooth_bluetooth_h=no + fi + + append-flags -fwrapv + filter-flags -malign-double + + # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. + # PKG_CONFIG needed for cross. + tc-export CXX PKG_CONFIG + + local dbmliborder= + if use gdbm; then + dbmliborder+="${dbmliborder:+:}gdbm" + fi + + # Set baseline test skip flags. + COMMON_TEST_SKIPS=( + # this is actually test_gdb.test_pretty_print + -x test_pretty_print + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + COMMON_TEST_SKIPS+=( + -x test_builtin + -x test_capi + -x test_cmath + -x test_float + # timeout + -x test_free_threading + -x test_math + -x test_numeric_tower + -x test_random + -x test_statistics + # bug 653850 + -x test_resource + -x test_strtod + ) + ;; + mips*) + COMMON_TEST_SKIPS+=( + -x test_ctypes + -x test_external_inspection + -x test_statistics + ) + ;; + powerpc64-*) # big endian + COMMON_TEST_SKIPS+=( + -x test_descr + ) + ;; + riscv*) + COMMON_TEST_SKIPS+=( + -x test_urllib2 + ) + ;; + sparc*) + COMMON_TEST_SKIPS+=( + # bug 788022 + -x test_multiprocessing_fork + -x test_multiprocessing_forkserver + + -x test_ctypes + -x test_descr + # bug 931908 + -x test_exceptions + ) + ;; + esac + + # musl-specific skips + use elibc_musl && COMMON_TEST_SKIPS+=( + # various musl locale deficiencies + -x test__locale + -x test_c_locale_coercion + -x test_locale + -x test_re + + # known issues with find_library on musl + # https://bugs.python.org/issue21622 + -x test_ctypes + + # fpathconf, ttyname errno values + -x test_os + ) + + if use pgo; then + local profile_task_flags=( + -m test + "-j$(makeopts_jobs)" + --pgo-extended + -u-network + + # We use a timeout because of how often we've had hang issues + # here. It also matches the default upstream PROFILE_TASK. + --timeout 1200 + + "${COMMON_TEST_SKIPS[@]}" + + -x test_dtrace + + # All of these seem to occasionally hang for PGO inconsistently + # They'll even hang here but be fine in src_test sometimes. + # bug #828535 (and related: bug #788022) + -x test_asyncio + -x test_concurrent_futures + -x test_httpservers + -x test_logging + -x test_multiprocessing_fork + -x test_socket + -x test_xmlrpc + + # Hangs (actually runs indefinitely executing itself w/ many cpython builds) + # bug #900429 + -x test_tools + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + profile_task_flags+=( + -x test_os + ) + ;; + hppa*) + profile_task_flags+=( + -x test_descr + # bug 931908 + -x test_exceptions + -x test_os + ) + ;; + powerpc64-*) # big endian + profile_task_flags+=( + # bug 931908 + -x test_exceptions + ) + ;; + riscv*) + profile_task_flags+=( + -x test_statistics + ) + ;; + esac + + if has_version "app-arch/rpm" ; then + # Avoid sandbox failure (attempts to write to /var/lib/rpm) + profile_task_flags+=( + -x test_distutils + ) + fi + local -x PROFILE_TASK="${profile_task_flags[*]}" + fi + + local myeconfargs=( + # glibc-2.30 removes it; since we can't cleanly force-rebuild + # Python on glibc upgrade, remove it proactively to give + # a chance for users rebuilding python before glibc + ac_cv_header_stropts_h=no + + --enable-shared + --without-static-libpython + --enable-ipv6 + --infodir='${prefix}/share/info' + --mandir='${prefix}/share/man' + --with-computed-gotos + --with-dbmliborder="${dbmliborder}" + --with-libc= + --enable-loadable-sqlite-extensions + --without-ensurepip + --without-lto + --with-system-expat + --with-system-ffi + --with-system-libmpdec + --with-platlibdir=lib + --with-pkg-config=yes + --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip + + $(use_with debug assertions) + $(use_enable pgo optimizations) + $(use_with readline readline "$(usex libedit editline readline)") + $(use_with valgrind) + ) + + # disable implicit optimization/debugging flags + local -x OPT= + + # https://bugs.gentoo.org/700012 + if tc-is-lto; then + append-cflags $(test-flags-CC -ffat-lto-objects) + myeconfargs+=( + --with-lto + ) + fi + + if tc-is-cross-compiler ; then + build_cbuild_python + myeconfargs+=( + # Point the imminent CHOST build to the Python we just + # built for CBUILD. + --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python + ) + fi + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + local -x CFLAGS_NODIST=${CFLAGS} + local -x LDFLAGS_NODIST=${LDFLAGS} + local -x CFLAGS= LDFLAGS= + + # Fix implicit declarations on cross and prefix builds. Bug #674070. + if use ncurses; then + append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw + fi + + hprefixify setup.py + econf "${myeconfargs[@]}" + + if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then + eerror "configure has detected that the sem_open function is broken." + eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." + die "Broken sem_open function (bug 496328)" + fi + + # force-disable modules we don't want built + local disable_modules=( NIS ) + use gdbm || disable_modules+=( _GDBM _DBM ) + use sqlite || disable_modules+=( _SQLITE3 ) + use ssl || disable_modules+=( _HASHLIB _SSL ) + use ncurses || disable_modules+=( _CURSES _CURSES_PANEL ) + use readline || disable_modules+=( READLINE ) + use tk || disable_modules+=( _TKINTER ) + + local mod + for mod in "${disable_modules[@]}"; do + echo "MODULE_${mod}_STATE=disabled" + done >> Makefile || die + + # install epython.py as part of stdlib + echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die +} + +src_compile() { + # Ensure sed works as expected + # https://bugs.gentoo.org/594768 + local -x LC_ALL=C + # Prevent using distutils bundled by setuptools. + # https://bugs.gentoo.org/823728 + export SETUPTOOLS_USE_DISTUTILS=stdlib + export PYTHONSTRICTEXTENSIONBUILD=1 + + # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't + # end up writing bytecode & violating sandbox. + # bug #831897 + local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} + + # Gentoo hack to disable accessing system site-packages + export GENTOO_CPYTHON_BUILD=1 + + if use pgo ; then + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + fi + + # also need to clear the flags explicitly here or they end up + # in _sysconfigdata* + emake CPPFLAGS= CFLAGS= LDFLAGS= + + # Restore saved value from above. + local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} + + # Work around bug 329499. See also bug 413751 and 457194. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E python + else + pax-mark m python + fi +} + +src_test() { + # Tests will not work when cross compiling. + if tc-is-cross-compiler; then + elog "Disabling tests due to crosscompiling." + return + fi + + # this just happens to skip test_support.test_freeze that is broken + # without bundled expat + # TODO: get a proper skip for it upstream + local -x LOGNAME=buildbot + + local test_opts=( + --verbose3 + -u-network + -j "$(makeopts_jobs)" + "${COMMON_TEST_SKIPS[@]}" + ) + + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + + nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local ret=${?} + + [[ ${ret} -eq 0 ]] || die "emake test failed" +} + +src_install() { + local libdir=${ED}/usr/lib/python${PYVER} + + # -j1 hack for now for bug #843458 + emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall + + # Fix collisions between different slots of Python. + rm "${ED}/usr/$(get_libdir)/libpython3.so" || die + + # Cheap hack to get version with ABIFLAGS + local abiver=$(cd "${ED}/usr/include"; echo python*) + if [[ ${abiver} != python${PYVER} ]]; then + # Replace python3.X with a symlink to python3.Xm + rm "${ED}/usr/bin/python${PYVER}" || die + dosym "${abiver}" "/usr/bin/python${PYVER}" + # Create python3.X-config symlink + dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" + # Create python-3.5m.pc symlink + dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" + fi + + # python seems to get rebuilt in src_install (bug 569908) + # Work around it for now. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E "${ED}/usr/bin/${abiver}" + else + pax-mark m "${ED}/usr/bin/${abiver}" + fi + + rm -r "${libdir}"/ensurepip/_bundled || die + if ! use ensurepip; then + rm -r "${libdir}"/ensurepip || die + fi + if ! use sqlite; then + rm -r "${libdir}/"sqlite3 || die + fi + if ! use tk; then + rm -r "${ED}/usr/bin/idle${PYVER}" || die + rm -r "${libdir}/"{idlelib,tkinter} || die + fi + + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + + dodoc Misc/{ACKS,HISTORY,NEWS} + + if use examples; then + docinto examples + find Tools -name __pycache__ -exec rm -fr {} + || die + dodoc -r Tools + fi + insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 + local libname=$( + printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | + emake --no-print-directory -s -f - 2>/dev/null + ) + newins Tools/gdb/libpython.py "${libname}"-gdb.py + + newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} + newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} + sed \ + -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ + -e "s:@PYDOC@:pydoc${PYVER}:" \ + -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ + "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" + + # python-exec wrapping support + local pymajor=${PYVER%.*} + local EPYTHON=python${PYVER} + local scriptdir=${D}$(python_get_scriptdir) + mkdir -p "${scriptdir}" || die + # python and pythonX + ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die + ln -s "python${pymajor}" "${scriptdir}/python" || die + # python-config and pythonX-config + # note: we need to create a wrapper rather than symlinking it due + # to some random dirname(argv[0]) magic performed by python-config + cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die + #!/bin/sh + exec "${abiver}-config" "\${@}" + EOF + chmod +x "${scriptdir}/python${pymajor}-config" || die + ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die + # 2to3, pydoc + ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die + ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die + # idle + if use tk; then + ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die + fi +} + +pkg_postinst() { + local v + for v in ${REPLACING_VERSIONS}; do + if ver_test "${v}" -lt 3.11.0_beta4-r2; then + ewarn "Python 3.11.0b4 has changed its module ABI. The .pyc files" + ewarn "installed previously are no longer valid and will be regenerated" + ewarn "(or ignored) on the next import. This may cause sandbox failures" + ewarn "when installing some packages and checksum mismatches when removing" + ewarn "old versions. To actively prevent this, rebuild all packages" + ewarn "installing Python 3.11 modules, e.g. using:" + ewarn + ewarn " emerge -1v /usr/lib/python3.11/site-packages" + fi + done +} diff --git a/dev-lang/python/python-3.12.6_p2.ebuild b/dev-lang/python/python-3.12.6_p2.ebuild new file mode 100644 index 000000000000..8dce4fb2a254 --- /dev/null +++ b/dev-lang/python/python-3.12.6_p2.ebuild @@ -0,0 +1,609 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +WANT_LIBTOOL="none" + +inherit autotools check-reqs flag-o-matic multiprocessing pax-utils +inherit python-utils-r1 toolchain-funcs verify-sig + +MY_PV=${PV/_rc/rc} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="An interpreted, interactive, object-oriented programming language" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE=" + bluetooth build debug +ensurepip examples gdbm libedit + +ncurses pgo +readline +sqlite +ssl test tk valgrind +" +RESTRICT="!test? ( test )" + +# Do not add a dependency on dev-lang/python to this ebuild. +# If you need to apply a patch which requires python for bootstrapping, please +# run the bootstrap code on your dev box and include the results in the +# patchset. See bug 447752. + +RDEPEND=" + app-arch/bzip2:= + app-arch/xz-utils:= + app-crypt/libb2 + >=dev-libs/expat-2.1:= + dev-libs/libffi:= + dev-libs/mpdecimal:= + dev-python/gentoo-common + >=sys-libs/zlib-1.1.3:= + virtual/libcrypt:= + virtual/libintl + ensurepip? ( dev-python/ensurepip-pip ) + gdbm? ( sys-libs/gdbm:=[berkdb] ) + kernel_linux? ( sys-apps/util-linux:= ) + ncurses? ( >=sys-libs/ncurses-5.2:= ) + readline? ( + !libedit? ( >=sys-libs/readline-4.1:= ) + libedit? ( dev-libs/libedit:= ) + ) + sqlite? ( >=dev-db/sqlite-3.3.8:3= ) + ssl? ( >=dev-libs/openssl-1.1.1:= ) + tk? ( + >=dev-lang/tcl-8.0:= + >=dev-lang/tk-8.0:= + dev-tcltk/blt:= + dev-tcltk/tix + ) +" +# bluetooth requires headers from bluez +DEPEND=" + ${RDEPEND} + bluetooth? ( net-wireless/bluez ) + test? ( + app-arch/xz-utils + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + dev-python/ensurepip-wheel + ) + valgrind? ( dev-debug/valgrind ) +" +# autoconf-archive needed to eautoreconf +BDEPEND=" + dev-build/autoconf-archive + app-alternatives/awk + virtual/pkgconfig + verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) +" +RDEPEND+=" + !build? ( app-misc/mime-types ) +" +if [[ ${PV} != *_alpha* ]]; then + RDEPEND+=" + dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] + " +fi + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +# large file tests involve a 2.5G file being copied (duplicated) +CHECKREQS_DISK_BUILD=5500M + +QA_PKGCONFIG_VERSION=${PYVER} +# false positives -- functions specific to *BSD +QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) + +pkg_pretend() { + use test && check-reqs_pkg_pretend +} + +pkg_setup() { + use test && check-reqs_pkg_setup +} + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + # Ensure that internal copies of expat and libffi are not used. + # TODO: Makefile has annoying deps on expat headers + #rm -r Modules/expat || die + + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + default + + # force the correct number of jobs + # https://bugs.gentoo.org/737660 + sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die + + # breaks tests when using --with-wheel-pkg-dir + rm -r Lib/test/wheeldata || die + + eautoreconf +} + +build_cbuild_python() { + # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 + local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + # + # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) + local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" + local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} + local -x CFLAGS= LDFLAGS= + local -x BUILD_CFLAGS="${CFLAGS_NODIST}" + local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} + + # We need to build our own Python on CBUILD first, and feed it in. + # bug #847910 + local myeconfargs_cbuild=( + "${myeconfargs[@]}" + + --prefix="${BROOT}"/usr + --libdir="${cbuild_libdir:2}" + + # Avoid needing to load the right libpython.so. + --disable-shared + + # As minimal as possible for the mini CBUILD Python + # we build just for cross to satisfy --with-build-python. + --without-lto + --without-readline + --disable-optimizations + ) + + mkdir "${WORKDIR}"/${P}-${CBUILD} || die + pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die + + # Avoid as many dependencies as possible for the cross build. + mkdir Modules || die + cat > Modules/Setup.local <<-EOF || die + *disabled* + nis + _dbm _gdbm + _sqlite3 + _hashlib _ssl + _curses _curses_panel + readline + _tkinter + pyexpat + zlib + # We disabled these for CBUILD because Python's setup.py can't handle locating + # libdir correctly for cross. This should be rechecked for the pure Makefile approach, + # and uncommented if needed. + #_ctypes _crypt + EOF + + ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" + + # Unfortunately, we do have to build this immediately, and + # not in src_compile, because CHOST configure for Python + # will check the existence of the --with-build-python value + # immediately. + emake + popd &> /dev/null || die +} + +src_configure() { + # disable automagic bluetooth headers detection + if ! use bluetooth; then + local -x ac_cv_header_bluetooth_bluetooth_h=no + fi + + append-flags -fwrapv + filter-flags -malign-double + + # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. + # PKG_CONFIG needed for cross. + tc-export CXX PKG_CONFIG + + local dbmliborder= + if use gdbm; then + dbmliborder+="${dbmliborder:+:}gdbm" + fi + + # Set baseline test skip flags. + COMMON_TEST_SKIPS=( + # this is actually test_gdb.test_pretty_print + -x test_pretty_print + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + COMMON_TEST_SKIPS+=( + -x test_builtin + -x test_capi + -x test_cmath + -x test_float + # timeout + -x test_free_threading + -x test_math + -x test_numeric_tower + -x test_random + -x test_statistics + # bug 653850 + -x test_resource + -x test_strtod + ) + ;; + mips*) + COMMON_TEST_SKIPS+=( + -x test_ctypes + -x test_external_inspection + -x test_statistics + ) + ;; + powerpc64-*) # big endian + COMMON_TEST_SKIPS+=( + -x test_descr + ) + ;; + riscv*) + COMMON_TEST_SKIPS+=( + -x test_urllib2 + ) + ;; + sparc*) + COMMON_TEST_SKIPS+=( + # bug 788022 + -x test_multiprocessing_fork + -x test_multiprocessing_forkserver + + -x test_ctypes + -x test_descr + # bug 931908 + -x test_exceptions + ) + ;; + esac + + # musl-specific skips + use elibc_musl && COMMON_TEST_SKIPS+=( + # various musl locale deficiencies + -x test__locale + -x test_c_locale_coercion + -x test_locale + -x test_re + + # known issues with find_library on musl + # https://bugs.python.org/issue21622 + -x test_ctypes + + # fpathconf, ttyname errno values + -x test_os + ) + + if use pgo; then + local profile_task_flags=( + -m test + "-j$(makeopts_jobs)" + --pgo-extended + -u-network + + # We use a timeout because of how often we've had hang issues + # here. It also matches the default upstream PROFILE_TASK. + --timeout 1200 + + "${COMMON_TEST_SKIPS[@]}" + + -x test_dtrace + + # All of these seem to occasionally hang for PGO inconsistently + # They'll even hang here but be fine in src_test sometimes. + # bug #828535 (and related: bug #788022) + -x test_asyncio + -x test_concurrent_futures + -x test_httpservers + -x test_logging + -x test_multiprocessing_fork + -x test_socket + -x test_xmlrpc + + # Hangs (actually runs indefinitely executing itself w/ many cpython builds) + # bug #900429 + -x test_tools + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + profile_task_flags+=( + -x test_os + ) + ;; + hppa*) + profile_task_flags+=( + -x test_descr + # bug 931908 + -x test_exceptions + -x test_os + ) + ;; + powerpc64-*) # big endian + profile_task_flags+=( + # bug 931908 + -x test_exceptions + ) + ;; + riscv*) + profile_task_flags+=( + -x test_statistics + ) + ;; + esac + + if has_version "app-arch/rpm" ; then + # Avoid sandbox failure (attempts to write to /var/lib/rpm) + profile_task_flags+=( + -x test_distutils + ) + fi + local -x PROFILE_TASK="${profile_task_flags[*]}" + fi + + local myeconfargs=( + # glibc-2.30 removes it; since we can't cleanly force-rebuild + # Python on glibc upgrade, remove it proactively to give + # a chance for users rebuilding python before glibc + ac_cv_header_stropts_h=no + + --enable-shared + --without-static-libpython + --enable-ipv6 + --infodir='${prefix}/share/info' + --mandir='${prefix}/share/man' + --with-computed-gotos + --with-dbmliborder="${dbmliborder}" + --with-libc= + --enable-loadable-sqlite-extensions + --without-ensurepip + --without-lto + --with-system-expat + --with-system-libmpdec + --with-platlibdir=lib + --with-pkg-config=yes + --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip + + $(use_with debug assertions) + $(use_enable pgo optimizations) + $(use_with readline readline "$(usex libedit editline readline)") + $(use_with valgrind) + ) + + # https://bugs.gentoo.org/700012 + if tc-is-lto; then + append-cflags $(test-flags-CC -ffat-lto-objects) + myeconfargs+=( + --with-lto + ) + fi + + # Force-disable modules we don't want built. + # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. + cat > Modules/Setup.local <<-EOF || die + *disabled* + nis + $(usev !gdbm '_gdbm _dbm') + $(usev !sqlite '_sqlite3') + $(usev !ssl '_hashlib _ssl') + $(usev !ncurses '_curses _curses_panel') + $(usev !readline 'readline') + $(usev !tk '_tkinter') + EOF + + # disable implicit optimization/debugging flags + local -x OPT= + + if tc-is-cross-compiler ; then + build_cbuild_python + myeconfargs+=( + # Point the imminent CHOST build to the Python we just + # built for CBUILD. + --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python + ) + fi + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + local -x CFLAGS_NODIST=${CFLAGS} + local -x LDFLAGS_NODIST=${LDFLAGS} + local -x CFLAGS= LDFLAGS= + + # Fix implicit declarations on cross and prefix builds. Bug #674070. + if use ncurses; then + append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw + fi + + econf "${myeconfargs[@]}" + + if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then + eerror "configure has detected that the sem_open function is broken." + eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." + die "Broken sem_open function (bug 496328)" + fi + + # install epython.py as part of stdlib + echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die +} + +src_compile() { + # Ensure sed works as expected + # https://bugs.gentoo.org/594768 + local -x LC_ALL=C + export PYTHONSTRICTEXTENSIONBUILD=1 + + # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't + # end up writing bytecode & violating sandbox. + # bug #831897 + local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} + + # Gentoo hack to disable accessing system site-packages + export GENTOO_CPYTHON_BUILD=1 + + if use pgo ; then + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + fi + + # also need to clear the flags explicitly here or they end up + # in _sysconfigdata* + emake CPPFLAGS= CFLAGS= LDFLAGS= + + # Restore saved value from above. + local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} + + # Work around bug 329499. See also bug 413751 and 457194. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E python + else + pax-mark m python + fi +} + +src_test() { + # Tests will not work when cross compiling. + if tc-is-cross-compiler; then + elog "Disabling tests due to crosscompiling." + return + fi + + # this just happens to skip test_support.test_freeze that is broken + # without bundled expat + # TODO: get a proper skip for it upstream + local -x LOGNAME=buildbot + + local test_opts=( + --verbose3 + -u-network + -j "$(makeopts_jobs)" + "${COMMON_TEST_SKIPS[@]}" + ) + + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + + nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local ret=${?} + + [[ ${ret} -eq 0 ]] || die "emake test failed" +} + +src_install() { + local libdir=${ED}/usr/lib/python${PYVER} + + # the Makefile rules are broken + # https://github.com/python/cpython/issues/100221 + mkdir -p "${libdir}"/lib-dynload || die + + # -j1 hack for now for bug #843458 + emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall + + # Fix collisions between different slots of Python. + rm "${ED}/usr/$(get_libdir)/libpython3.so" || die + + # Cheap hack to get version with ABIFLAGS + local abiver=$(cd "${ED}/usr/include"; echo python*) + if [[ ${abiver} != python${PYVER} ]]; then + # Replace python3.X with a symlink to python3.Xm + rm "${ED}/usr/bin/python${PYVER}" || die + dosym "${abiver}" "/usr/bin/python${PYVER}" + # Create python3.X-config symlink + dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" + # Create python-3.5m.pc symlink + dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" + fi + + # python seems to get rebuilt in src_install (bug 569908) + # Work around it for now. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E "${ED}/usr/bin/${abiver}" + else + pax-mark m "${ED}/usr/bin/${abiver}" + fi + + rm -r "${libdir}"/ensurepip/_bundled || die + if ! use ensurepip; then + rm -r "${libdir}"/ensurepip || die + fi + if ! use sqlite; then + rm -r "${libdir}/"sqlite3 || die + fi + if ! use tk; then + rm -r "${ED}/usr/bin/idle${PYVER}" || die + rm -r "${libdir}/"{idlelib,tkinter} || die + fi + + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + + dodoc Misc/{ACKS,HISTORY,NEWS} + + if use examples; then + docinto examples + find Tools -name __pycache__ -exec rm -fr {} + || die + dodoc -r Tools + fi + insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 + local libname=$( + printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | + emake --no-print-directory -s -f - 2>/dev/null + ) + newins Tools/gdb/libpython.py "${libname}"-gdb.py + + newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} + newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} + sed \ + -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ + -e "s:@PYDOC@:pydoc${PYVER}:" \ + -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ + "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" + + # python-exec wrapping support + local pymajor=${PYVER%.*} + local EPYTHON=python${PYVER} + local scriptdir=${D}$(python_get_scriptdir) + mkdir -p "${scriptdir}" || die + # python and pythonX + ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die + ln -s "python${pymajor}" "${scriptdir}/python" || die + # python-config and pythonX-config + # note: we need to create a wrapper rather than symlinking it due + # to some random dirname(argv[0]) magic performed by python-config + cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die + #!/bin/sh + exec "${abiver}-config" "\${@}" + EOF + chmod +x "${scriptdir}/python${pymajor}-config" || die + ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die + # 2to3, pydoc + ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die + ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die + # idle + if use tk; then + ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die + fi +} diff --git a/dev-lang/python/python-3.13.0_rc2.ebuild b/dev-lang/python/python-3.13.0_rc2.ebuild index d9dbd33759ab..7e681c4cc38e 100644 --- a/dev-lang/python/python-3.13.0_rc2.ebuild +++ b/dev-lang/python/python-3.13.0_rc2.ebuild @@ -243,13 +243,8 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( - # failures - -x test_concurrent_futures - -x test_gdb - # flaky: https://github.com/python/cpython/issues/121973 - -x test_pyrepl - # flaky: https://github.com/python/cpython/issues/122136 (bug #936314) - -x test_asyncio + # this is actually test_gdb.test_pretty_print + -x test_pretty_print ) # Arch-specific skips. See #931888 for a collection of these. diff --git a/dev-lang/python/python-3.13.0_rc2_p1.ebuild b/dev-lang/python/python-3.13.0_rc2_p1.ebuild new file mode 100644 index 000000000000..7e681c4cc38e --- /dev/null +++ b/dev-lang/python/python-3.13.0_rc2_p1.ebuild @@ -0,0 +1,643 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +LLVM_COMPAT=( 18 ) +LLVM_OPTIONAL=1 +WANT_LIBTOOL="none" + +inherit autotools check-reqs flag-o-matic llvm-r1 multiprocessing +inherit pax-utils python-utils-r1 toolchain-funcs verify-sig + +MY_PV=${PV/_} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="An interpreted, interactive, object-oriented programming language" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE=" + bluetooth build +debug +ensurepip examples gdbm +gil jit + libedit +ncurses pgo +readline +sqlite +ssl test tk valgrind +" +REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )" +RESTRICT="!test? ( test )" + +# Do not add a dependency on dev-lang/python to this ebuild. +# If you need to apply a patch which requires python for bootstrapping, please +# run the bootstrap code on your dev box and include the results in the +# patchset. See bug 447752. + +RDEPEND=" + app-arch/bzip2:= + app-arch/xz-utils:= + app-crypt/libb2 + >=dev-libs/expat-2.1:= + dev-libs/libffi:= + dev-libs/mpdecimal:= + dev-python/gentoo-common + >=sys-libs/zlib-1.1.3:= + virtual/libintl + ensurepip? ( dev-python/ensurepip-pip ) + gdbm? ( sys-libs/gdbm:=[berkdb] ) + kernel_linux? ( sys-apps/util-linux:= ) + ncurses? ( >=sys-libs/ncurses-5.2:= ) + readline? ( + !libedit? ( >=sys-libs/readline-4.1:= ) + libedit? ( dev-libs/libedit:= ) + ) + sqlite? ( >=dev-db/sqlite-3.3.8:3= ) + ssl? ( >=dev-libs/openssl-1.1.1:= ) + tk? ( + >=dev-lang/tcl-8.0:= + >=dev-lang/tk-8.0:= + dev-tcltk/blt:= + dev-tcltk/tix + ) +" +# bluetooth requires headers from bluez +DEPEND=" + ${RDEPEND} + bluetooth? ( net-wireless/bluez ) + test? ( + app-arch/xz-utils + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + dev-python/ensurepip-wheel + ) + valgrind? ( dev-debug/valgrind ) +" +# autoconf-archive needed to eautoreconf +BDEPEND=" + dev-build/autoconf-archive + app-alternatives/awk + virtual/pkgconfig + jit? ( + $(llvm_gen_dep ' + sys-devel/clang:${LLVM_SLOT} + sys-devel/llvm:${LLVM_SLOT} + ') + ) + verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) +" +RDEPEND+=" + !build? ( app-misc/mime-types ) +" +if [[ ${PV} != *_alpha* ]]; then + RDEPEND+=" + dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] + " +fi + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +# large file tests involve a 2.5G file being copied (duplicated) +CHECKREQS_DISK_BUILD=5500M + +QA_PKGCONFIG_VERSION=${PYVER} +# false positives -- functions specific to *BSD +QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) + +pkg_pretend() { + use test && check-reqs_pkg_pretend + + if ! use gil || use jit; then + ewarn "USE=-gil and USE=jit flags are considered experimental upstream. Using" + ewarn "them could lead to unexpected breakage, including race conditions" + ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" + ewarn "you can reproduce the problem with dev-lang/python[gil,-jit]. Instead," + ewarn "please consider reporting freethreading / JIT problems upstream." + fi +} + +pkg_setup() { + use jit && llvm-r1_pkg_setup + use test && check-reqs_pkg_setup +} + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + # Ensure that internal copies of expat and libffi are not used. + # TODO: Makefile has annoying deps on expat headers + #rm -r Modules/expat || die + + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + default + + # force the correct number of jobs + # https://bugs.gentoo.org/737660 + sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die + + # breaks tests when using --with-wheel-pkg-dir + rm -r Lib/test/wheeldata || die + + eautoreconf +} + +build_cbuild_python() { + # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 + local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + # + # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) + local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" + local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} + local -x CFLAGS= LDFLAGS= + local -x BUILD_CFLAGS="${CFLAGS_NODIST}" + local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} + + # We need to build our own Python on CBUILD first, and feed it in. + # bug #847910 + local myeconfargs_cbuild=( + "${myeconfargs[@]}" + + --prefix="${BROOT}"/usr + --libdir="${cbuild_libdir:2}" + + # Avoid needing to load the right libpython.so. + --disable-shared + + # As minimal as possible for the mini CBUILD Python + # we build just for cross to satisfy --with-build-python. + --without-lto + --without-readline + --disable-optimizations + ) + + mkdir "${WORKDIR}"/${P}-${CBUILD} || die + pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die + + # Avoid as many dependencies as possible for the cross build. + mkdir Modules || die + cat > Modules/Setup.local <<-EOF || die + *disabled* + nis + _dbm _gdbm + _sqlite3 + _hashlib _ssl + _curses _curses_panel + readline + _tkinter + pyexpat + zlib + # We disabled these for CBUILD because Python's setup.py can't handle locating + # libdir correctly for cross. This should be rechecked for the pure Makefile approach, + # and uncommented if needed. + #_ctypes + EOF + + ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" + + # Unfortunately, we do have to build this immediately, and + # not in src_compile, because CHOST configure for Python + # will check the existence of the --with-build-python value + # immediately. + emake + popd &> /dev/null || die +} + +src_configure() { + # disable automagic bluetooth headers detection + if ! use bluetooth; then + local -x ac_cv_header_bluetooth_bluetooth_h=no + fi + + append-flags -fwrapv + filter-flags -malign-double + + # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. + # PKG_CONFIG needed for cross. + tc-export CXX PKG_CONFIG + + local dbmliborder= + if use gdbm; then + dbmliborder+="${dbmliborder:+:}gdbm" + fi + + # Set baseline test skip flags. + COMMON_TEST_SKIPS=( + # this is actually test_gdb.test_pretty_print + -x test_pretty_print + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + COMMON_TEST_SKIPS+=( + -x test_builtin + -x test_capi + -x test_cmath + -x test_float + # timeout + -x test_free_threading + -x test_math + -x test_numeric_tower + -x test_random + -x test_statistics + # bug 653850 + -x test_resource + -x test_strtod + ) + ;; + mips*) + COMMON_TEST_SKIPS+=( + -x test_ctypes + -x test_external_inspection + -x test_statistics + ) + ;; + powerpc64-*) # big endian + COMMON_TEST_SKIPS+=( + -x test_descr + ) + ;; + riscv*) + COMMON_TEST_SKIPS+=( + -x test_urllib2 + ) + ;; + sparc*) + COMMON_TEST_SKIPS+=( + # bug 788022 + -x test_multiprocessing_fork + -x test_multiprocessing_forkserver + + -x test_ctypes + -x test_descr + # bug 931908 + -x test_exceptions + ) + ;; + esac + + # musl-specific skips + use elibc_musl && COMMON_TEST_SKIPS+=( + # various musl locale deficiencies + -x test__locale + -x test_c_locale_coercion + -x test_locale + -x test_re + + # known issues with find_library on musl + # https://bugs.python.org/issue21622 + -x test_ctypes + + # fpathconf, ttyname errno values + -x test_os + ) + + if use pgo; then + local profile_task_flags=( + -m test + "-j$(makeopts_jobs)" + --pgo-extended + --verbose3 + -u-network + + # We use a timeout because of how often we've had hang issues + # here. It also matches the default upstream PROFILE_TASK. + --timeout 1200 + + "${COMMON_TEST_SKIPS[@]}" + + -x test_dtrace + + # All of these seem to occasionally hang for PGO inconsistently + # They'll even hang here but be fine in src_test sometimes. + # bug #828535 (and related: bug #788022) + -x test_asyncio + -x test_httpservers + -x test_logging + -x test_multiprocessing_fork + -x test_socket + -x test_xmlrpc + + # Hangs (actually runs indefinitely executing itself w/ many cpython builds) + # bug #900429 + -x test_tools + + # Fails in profiling run, passes in src_test(). + -x test_capi + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + profile_task_flags+=( + -x test_os + ) + ;; + hppa*) + profile_task_flags+=( + -x test_descr + # bug 931908 + -x test_exceptions + -x test_os + ) + ;; + powerpc64-*) # big endian + profile_task_flags+=( + # bug 931908 + -x test_exceptions + ) + ;; + riscv*) + profile_task_flags+=( + -x test_statistics + ) + ;; + esac + + if has_version "app-arch/rpm" ; then + # Avoid sandbox failure (attempts to write to /var/lib/rpm) + profile_task_flags+=( + -x test_distutils + ) + fi + local -x PROFILE_TASK="${profile_task_flags[*]}" + fi + + local myeconfargs=( + # glibc-2.30 removes it; since we can't cleanly force-rebuild + # Python on glibc upgrade, remove it proactively to give + # a chance for users rebuilding python before glibc + ac_cv_header_stropts_h=no + + --enable-shared + --without-static-libpython + --enable-ipv6 + --infodir='${prefix}/share/info' + --mandir='${prefix}/share/man' + --with-computed-gotos + --with-dbmliborder="${dbmliborder}" + --with-libc= + --enable-loadable-sqlite-extensions + --without-ensurepip + --without-lto + --with-system-expat + --with-system-libmpdec + --with-platlibdir=lib + --with-pkg-config=yes + --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip + + $(use_with debug assertions) + $(use_enable gil) + $(use_enable jit experimental-jit) + $(use_enable pgo optimizations) + $(use_with readline readline "$(usex libedit editline readline)") + $(use_with valgrind) + ) + + # https://bugs.gentoo.org/700012 + if tc-is-lto; then + append-cflags $(test-flags-CC -ffat-lto-objects) + myeconfargs+=( + --with-lto + ) + fi + + # Force-disable modules we don't want built. + # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. + cat > Modules/Setup.local <<-EOF || die + *disabled* + nis + $(usev !gdbm '_gdbm _dbm') + $(usev !sqlite '_sqlite3') + $(usev !ssl '_hashlib _ssl') + $(usev !ncurses '_curses _curses_panel') + $(usev !readline 'readline') + $(usev !tk '_tkinter') + EOF + + # disable implicit optimization/debugging flags + local -x OPT= + + if tc-is-cross-compiler ; then + build_cbuild_python + myeconfargs+=( + # Point the imminent CHOST build to the Python we just + # built for CBUILD. + --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python + ) + fi + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + local -x CFLAGS_NODIST=${CFLAGS} + local -x LDFLAGS_NODIST=${LDFLAGS} + local -x CFLAGS= LDFLAGS= + + # Fix implicit declarations on cross and prefix builds. Bug #674070. + if use ncurses; then + append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw + fi + + econf "${myeconfargs[@]}" + + if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then + eerror "configure has detected that the sem_open function is broken." + eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." + die "Broken sem_open function (bug 496328)" + fi + + # install epython.py as part of stdlib + echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die +} + +src_compile() { + # Ensure sed works as expected + # https://bugs.gentoo.org/594768 + local -x LC_ALL=C + export PYTHONSTRICTEXTENSIONBUILD=1 + + # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't + # end up writing bytecode & violating sandbox. + # bug #831897 + local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} + + # Gentoo hack to disable accessing system site-packages + export GENTOO_CPYTHON_BUILD=1 + + if use pgo ; then + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + fi + + # also need to clear the flags explicitly here or they end up + # in _sysconfigdata* + emake CPPFLAGS= CFLAGS= LDFLAGS= + + # Restore saved value from above. + local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} + + # Work around bug 329499. See also bug 413751 and 457194. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E python + else + pax-mark m python + fi +} + +src_test() { + # Tests will not work when cross compiling. + if tc-is-cross-compiler; then + elog "Disabling tests due to crosscompiling." + return + fi + + # this just happens to skip test_support.test_freeze that is broken + # without bundled expat + # TODO: get a proper skip for it upstream + local -x LOGNAME=buildbot + + local test_opts=( + --verbose3 + -u-network + -j "$(makeopts_jobs)" + "${COMMON_TEST_SKIPS[@]}" + ) + + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + + nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local ret=${?} + + [[ ${ret} -eq 0 ]] || die "emake test failed" +} + +src_install() { + local libdir=${ED}/usr/lib/python${PYVER} + + # -j1 hack for now for bug #843458 + emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall + + # Fix collisions between different slots of Python. + rm "${ED}/usr/$(get_libdir)/libpython3.so" || die + + # Cheap hack to get version with ABIFLAGS + local abiver=$(cd "${ED}/usr/include"; echo python*) + if [[ ${abiver} != python${PYVER} ]]; then + # Replace python3.X with a symlink to python3.Xm + rm "${ED}/usr/bin/python${PYVER}" || die + dosym "${abiver}" "/usr/bin/python${PYVER}" + # Create python3.X-config symlink + dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" + # Create python-3.5m.pc symlink + dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" + fi + + # python seems to get rebuilt in src_install (bug 569908) + # Work around it for now. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E "${ED}/usr/bin/${abiver}" + else + pax-mark m "${ED}/usr/bin/${abiver}" + fi + + rm -r "${libdir}"/ensurepip/_bundled || die + if ! use ensurepip; then + rm -r "${libdir}"/ensurepip || die + fi + if ! use sqlite; then + rm -r "${libdir}/"sqlite3 || die + fi + if ! use tk; then + rm -r "${ED}/usr/bin/idle${PYVER}" || die + rm -r "${libdir}/"{idlelib,tkinter} || die + fi + + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + + dodoc Misc/{ACKS,HISTORY,NEWS} + + if use examples; then + docinto examples + find Tools -name __pycache__ -exec rm -fr {} + || die + dodoc -r Tools + fi + insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 + local libname=$( + printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | + emake --no-print-directory -s -f - 2>/dev/null + ) + newins Tools/gdb/libpython.py "${libname}"-gdb.py + + newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} + newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} + sed \ + -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ + -e "s:@PYDOC@:pydoc${PYVER}:" \ + -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ + "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" + + # python-exec wrapping support + local pymajor=${PYVER%.*} + local EPYTHON=python${PYVER} + local scriptdir=${D}$(python_get_scriptdir) + mkdir -p "${scriptdir}" || die + # python and pythonX + ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die + ln -s "python${pymajor}" "${scriptdir}/python" || die + # python-config and pythonX-config + # note: we need to create a wrapper rather than symlinking it due + # to some random dirname(argv[0]) magic performed by python-config + cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die + #!/bin/sh + exec "${abiver}-config" "\${@}" + EOF + chmod +x "${scriptdir}/python${pymajor}-config" || die + ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die + # pydoc + ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die + # idle + if use tk; then + ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die + fi +} + +pkg_postinst() { + local v + for v in ${REPLACING_VERSIONS}; do + if ver_test "${v}" -lt 3.13.0_beta2; then + ewarn "Python 3.13.0b2 has changed its module ABI. The .pyc files" + ewarn "installed previously are no longer valid and will be regenerated" + ewarn "(or ignored) on the next import. This may cause sandbox failures" + ewarn "when installing some packages and checksum mismatches when removing" + ewarn "old versions. To actively prevent this, rebuild all packages" + ewarn "installing Python 3.13 modules, e.g. using:" + ewarn + ewarn " emerge -1v /usr/lib/python3.13/site-packages" + fi + done +} diff --git a/dev-lang/python/python-3.8.20_p2.ebuild b/dev-lang/python/python-3.8.20_p2.ebuild new file mode 100644 index 000000000000..5d532ab5e9f5 --- /dev/null +++ b/dev-lang/python/python-3.8.20_p2.ebuild @@ -0,0 +1,489 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +WANT_LIBTOOL="none" + +inherit autotools flag-o-matic multiprocessing pax-utils +inherit prefix python-utils-r1 toolchain-funcs verify-sig + +MY_PV=${PV/_rc/rc} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="An interpreted, interactive, object-oriented programming language" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE=" + bluetooth build debug +ensurepip examples gdbm +ncurses pgo + +readline +sqlite +ssl test tk valgrind +" +RESTRICT="!test? ( test )" + +# Do not add a dependency on dev-lang/python to this ebuild. +# If you need to apply a patch which requires python for bootstrapping, please +# run the bootstrap code on your dev box and include the results in the +# patchset. See bug 447752. + +RDEPEND=" + app-arch/bzip2:= + app-arch/xz-utils:= + >=dev-libs/expat-2.1:= + dev-libs/libffi:= + dev-libs/mpdecimal:= + dev-python/gentoo-common + >=sys-libs/zlib-1.1.3:= + virtual/libcrypt:= + virtual/libintl + ensurepip? ( dev-python/ensurepip-wheels ) + gdbm? ( sys-libs/gdbm:=[berkdb] ) + kernel_linux? ( sys-apps/util-linux:= ) + ncurses? ( >=sys-libs/ncurses-5.2:= ) + readline? ( >=sys-libs/readline-4.1:= ) + sqlite? ( >=dev-db/sqlite-3.3.8:3= ) + ssl? ( >=dev-libs/openssl-1.1.1:= ) + tk? ( + >=dev-lang/tcl-8.0:= + >=dev-lang/tk-8.0:= + dev-tcltk/blt:= + dev-tcltk/tix + ) +" +# bluetooth requires headers from bluez +DEPEND=" + ${RDEPEND} + bluetooth? ( net-wireless/bluez ) + test? ( app-arch/xz-utils ) + valgrind? ( dev-debug/valgrind ) +" +# autoconf-archive needed to eautoreconf +BDEPEND=" + dev-build/autoconf-archive + app-alternatives/awk + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-python ) +" +RDEPEND+=" + !build? ( app-misc/mime-types ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +QA_PKGCONFIG_VERSION=${PYVER} +# false positives -- functions specific to *BSD +QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + # Ensure that internal copies of expat and libffi are not used. + rm -r Modules/expat || die + rm -r Modules/_ctypes/libffi* || die + + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + default + + # https://bugs.gentoo.org/850151 + sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die + + # force the correct number of jobs + # https://bugs.gentoo.org/737660 + local jobs=$(makeopts_jobs) + sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die + sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + + rm Lib/distutils/command/wininst*.exe || die + + eautoreconf +} + +src_configure() { + # disable automagic bluetooth headers detection + if ! use bluetooth; then + local -x ac_cv_header_bluetooth_bluetooth_h=no + fi + local disable + use gdbm || disable+=" gdbm" + use ncurses || disable+=" _curses _curses_panel" + use readline || disable+=" readline" + use sqlite || disable+=" _sqlite3" + use ssl || export PYTHON_DISABLE_SSL="1" + use tk || disable+=" _tkinter" + export PYTHON_DISABLE_MODULES="${disable}" + + if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then + einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}" + fi + + append-flags -fwrapv + filter-flags -malign-double + + # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. + # PKG_CONFIG needed for cross. + tc-export CXX PKG_CONFIG + + local dbmliborder= + if use gdbm; then + dbmliborder+="${dbmliborder:+:}gdbm" + fi + + # Set baseline test skip flags. + COMMON_TEST_SKIPS=( + -x test_gdb + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + COMMON_TEST_SKIPS+=( + -x test_builtin + -x test_capi + -x test_cmath + -x test_float + # timeout + -x test_free_threading + -x test_math + -x test_numeric_tower + -x test_random + -x test_statistics + # bug 653850 + -x test_resource + -x test_strtod + ) + ;; + mips*) + COMMON_TEST_SKIPS+=( + -x test_ctypes + -x test_external_inspection + -x test_statistics + ) + ;; + powerpc64-*) # big endian + COMMON_TEST_SKIPS+=( + -x test_descr + ) + ;; + riscv*) + COMMON_TEST_SKIPS+=( + -x test_urllib2 + ) + ;; + sparc*) + COMMON_TEST_SKIPS+=( + # bug 788022 + -x test_multiprocessing_fork + -x test_multiprocessing_forkserver + + -x test_ctypes + -x test_descr + # bug 931908 + -x test_exceptions + ) + ;; + esac + + # musl-specific skips + use elibc_musl && COMMON_TEST_SKIPS+=( + # various musl locale deficiencies + -x test__locale + -x test_c_locale_coercion + -x test_locale + -x test_re + + # known issues with find_library on musl + # https://bugs.python.org/issue21622 + -x test_ctypes + + # fpathconf, ttyname errno values + -x test_os + ) + + local myeconfargs=( + # glibc-2.30 removes it; since we can't cleanly force-rebuild + # Python on glibc upgrade, remove it proactively to give + # a chance for users rebuilding python before glibc + ac_cv_header_stropts_h=no + + --enable-shared + --enable-ipv6 + --infodir='${prefix}/share/info' + --mandir='${prefix}/share/man' + --with-computed-gotos + --with-dbmliborder="${dbmliborder}" + --with-libc= + --enable-loadable-sqlite-extensions + --without-ensurepip + --without-lto + --with-system-expat + --with-system-ffi + --with-system-libmpdec + --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip + + $(use_with debug assertions) + $(use_with valgrind) + ) + + # disable implicit optimization/debugging flags + local -x OPT= + + # https://bugs.gentoo.org/700012 + if tc-is-lto; then + append-cflags $(test-flags-CC -ffat-lto-objects) + myeconfargs+=( + --with-lto + ) + fi + + if tc-is-cross-compiler ; then + # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 + local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + # + # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) + local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" + local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} + local -x CFLAGS= LDFLAGS= + local -x BUILD_CFLAGS="${CFLAGS_NODIST}" + local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} + + # We need to build our own Python on CBUILD first, and feed it in. + # bug #847910 and bug #864911. + local myeconfargs_cbuild=( + "${myeconfargs[@]}" + + --libdir="${cbuild_libdir:2}" + + # Avoid needing to load the right libpython.so. + --disable-shared + + # As minimal as possible for the mini CBUILD Python + # we build just for cross. + --without-lto + --disable-optimizations + ) + + # Point the imminent CHOST build to the Python we just + # built for CBUILD. + export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}" + + mkdir "${WORKDIR}"/${P}-${CBUILD} || die + pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die + # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating + # libdir correctly for cross. + PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \ + ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" + + # Avoid as many dependencies as possible for the cross build. + cat >> Makefile <<-EOF || die + MODULE_NIS=disabled + MODULE__DBM=disabled + MODULE__GDBM=disabled + MODULE__DBM=disabled + MODULE__SQLITE3=disabled + MODULE__HASHLIB=disabled + MODULE__SSL=disabled + MODULE__CURSES=disabled + MODULE__CURSES_PANEL=disabled + MODULE_READLINE=disabled + MODULE__TKINTER=disabled + MODULE_PYEXPAT=disabled + MODULE_ZLIB=disabled + EOF + + # Unfortunately, we do have to build this immediately, and + # not in src_compile, because CHOST configure for Python + # will check the existence of the Python it was pointed to + # immediately. + PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake + popd &> /dev/null || die + fi + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + local -x CFLAGS_NODIST=${CFLAGS} + local -x LDFLAGS_NODIST=${LDFLAGS} + local -x CFLAGS= LDFLAGS= + + # Fix implicit declarations on cross and prefix builds. Bug #674070. + if use ncurses; then + append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw + fi + + hprefixify setup.py + econf "${myeconfargs[@]}" + + if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then + eerror "configure has detected that the sem_open function is broken." + eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." + die "Broken sem_open function (bug 496328)" + fi + + # install epython.py as part of stdlib + echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die +} + +src_compile() { + # Ensure sed works as expected + # https://bugs.gentoo.org/594768 + local -x LC_ALL=C + # Prevent using distutils bundled by setuptools. + # https://bugs.gentoo.org/823728 + export SETUPTOOLS_USE_DISTUTILS=stdlib + + # Gentoo hack to disable accessing system site-packages + export GENTOO_CPYTHON_BUILD=1 + + # also need to clear the flags explicitly here or they end up + # in _sysconfigdata* + emake CPPFLAGS= CFLAGS= LDFLAGS= + + # Work around bug 329499. See also bug 413751 and 457194. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E python + else + pax-mark m python + fi +} + +src_test() { + # Tests will not work when cross compiling. + if tc-is-cross-compiler; then + elog "Disabling tests due to crosscompiling." + return + fi + + local test_opts=( + --verbose3 + -u-network + -j "$(makeopts_jobs)" + "${COMMON_TEST_SKIPS[@]}" + ) + + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + + nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local ret=${?} + + [[ ${ret} -eq 0 ]] || die "emake test failed" +} + +src_install() { + local libdir=${ED}/usr/lib/python${PYVER} + + emake DESTDIR="${D}" altinstall + + # Remove static library + rm "${ED}"/usr/$(get_libdir)/libpython*.a || die + + # Fix collisions between different slots of Python. + rm "${ED}/usr/$(get_libdir)/libpython3.so" || die + + # Cheap hack to get version with ABIFLAGS + local abiver=$(cd "${ED}/usr/include"; echo python*) + if [[ ${abiver} != python${PYVER} ]]; then + # Replace python3.X with a symlink to python3.Xm + rm "${ED}/usr/bin/python${PYVER}" || die + dosym "${abiver}" "/usr/bin/python${PYVER}" + # Create python3.X-config symlink + dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" + # Create python-3.5m.pc symlink + dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" + fi + + # python seems to get rebuilt in src_install (bug 569908) + # Work around it for now. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E "${ED}/usr/bin/${abiver}" + else + pax-mark m "${ED}/usr/bin/${abiver}" + fi + + rm -r "${libdir}"/ensurepip/_bundled || die + if ! use ensurepip; then + rm -r "${libdir}"/ensurepip || die + fi + if ! use sqlite; then + rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die + fi + if ! use tk; then + rm -r "${ED}/usr/bin/idle${PYVER}" || die + rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die + fi + + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + + dodoc Misc/{ACKS,HISTORY,NEWS} + + if use examples; then + docinto examples + find Tools -name __pycache__ -exec rm -fr {} + || die + dodoc -r Tools + fi + insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 + local libname=$( + printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | + emake --no-print-directory -s -f - 2>/dev/null + ) + newins Tools/gdb/libpython.py "${libname}"-gdb.py + + newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} + newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} + sed \ + -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ + -e "s:@PYDOC@:pydoc${PYVER}:" \ + -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ + "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" + + # python-exec wrapping support + local pymajor=${PYVER%.*} + local EPYTHON=python${PYVER} + local scriptdir=${D}$(python_get_scriptdir) + mkdir -p "${scriptdir}" || die + # python and pythonX + ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die + ln -s "python${pymajor}" "${scriptdir}/python" || die + # python-config and pythonX-config + # note: we need to create a wrapper rather than symlinking it due + # to some random dirname(argv[0]) magic performed by python-config + cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die + #!/bin/sh + exec "${abiver}-config" "\${@}" + EOF + chmod +x "${scriptdir}/python${pymajor}-config" || die + ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die + # 2to3, pydoc + ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die + ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die + # idle + if use tk; then + ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die + fi +} diff --git a/dev-lang/python/python-3.9.20_p1.ebuild b/dev-lang/python/python-3.9.20_p1.ebuild new file mode 100644 index 000000000000..1bb1be074e3d --- /dev/null +++ b/dev-lang/python/python-3.9.20_p1.ebuild @@ -0,0 +1,581 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +WANT_LIBTOOL="none" + +inherit autotools check-reqs flag-o-matic multiprocessing pax-utils +inherit prefix python-utils-r1 toolchain-funcs verify-sig + +MY_PV=${PV/_rc/rc} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="An interpreted, interactive, object-oriented programming language" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE=" + bluetooth build debug +ensurepip examples gdbm +ncurses pgo + +readline +sqlite +ssl test tk valgrind +" +RESTRICT="!test? ( test )" + +# Do not add a dependency on dev-lang/python to this ebuild. +# If you need to apply a patch which requires python for bootstrapping, please +# run the bootstrap code on your dev box and include the results in the +# patchset. See bug 447752. + +RDEPEND=" + app-arch/bzip2:= + app-arch/xz-utils:= + >=dev-libs/expat-2.1:= + dev-libs/libffi:= + dev-libs/mpdecimal:= + dev-python/gentoo-common + >=sys-libs/zlib-1.1.3:= + virtual/libcrypt:= + virtual/libintl + ensurepip? ( dev-python/ensurepip-wheels ) + gdbm? ( sys-libs/gdbm:=[berkdb] ) + kernel_linux? ( sys-apps/util-linux:= ) + ncurses? ( >=sys-libs/ncurses-5.2:= ) + readline? ( >=sys-libs/readline-4.1:= ) + sqlite? ( >=dev-db/sqlite-3.3.8:3= ) + ssl? ( >=dev-libs/openssl-1.1.1:= ) + tk? ( + >=dev-lang/tcl-8.0:= + >=dev-lang/tk-8.0:= + dev-tcltk/blt:= + dev-tcltk/tix + ) +" +# bluetooth requires headers from bluez +DEPEND=" + ${RDEPEND} + bluetooth? ( net-wireless/bluez ) + test? ( app-arch/xz-utils ) + valgrind? ( dev-debug/valgrind ) +" +# autoconf-archive needed to eautoreconf +BDEPEND=" + dev-build/autoconf-archive + app-alternatives/awk + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-python ) +" +RDEPEND+=" + !build? ( app-misc/mime-types ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +# large file tests involve a 2.5G file being copied (duplicated) +CHECKREQS_DISK_BUILD=5500M + +QA_PKGCONFIG_VERSION=${PYVER} +# false positives -- functions specific to *BSD +QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) + +pkg_pretend() { + use test && check-reqs_pkg_pretend +} + +pkg_setup() { + use test && check-reqs_pkg_setup +} + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + # Ensure that internal copies of expat and libffi are not used. + rm -r Modules/expat || die + rm -r Modules/_ctypes/libffi* || die + + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + default + + # https://bugs.gentoo.org/850151 + sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die + + # force the correct number of jobs + # https://bugs.gentoo.org/737660 + local jobs=$(makeopts_jobs) + sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die + sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + + eautoreconf +} + +src_configure() { + # disable automagic bluetooth headers detection + if ! use bluetooth; then + local -x ac_cv_header_bluetooth_bluetooth_h=no + fi + local disable + use gdbm || disable+=" gdbm" + use ncurses || disable+=" _curses _curses_panel" + use readline || disable+=" readline" + use sqlite || disable+=" _sqlite3" + use ssl || export PYTHON_DISABLE_SSL="1" + use tk || disable+=" _tkinter" + export PYTHON_DISABLE_MODULES="${disable}" + + if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then + einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}" + fi + + append-flags -fwrapv + filter-flags -malign-double + + # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. + # PKG_CONFIG needed for cross. + tc-export CXX PKG_CONFIG + + local dbmliborder= + if use gdbm; then + dbmliborder+="${dbmliborder:+:}gdbm" + fi + + # Set baseline test skip flags. + COMMON_TEST_SKIPS=( + -x test_gdb + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + COMMON_TEST_SKIPS+=( + -x test_builtin + -x test_capi + -x test_cmath + -x test_float + # timeout + -x test_free_threading + -x test_math + -x test_numeric_tower + -x test_random + -x test_statistics + # bug 653850 + -x test_resource + -x test_strtod + ) + ;; + mips*) + COMMON_TEST_SKIPS+=( + -x test_ctypes + -x test_external_inspection + -x test_statistics + ) + ;; + powerpc64-*) # big endian + COMMON_TEST_SKIPS+=( + -x test_descr + ) + ;; + riscv*) + COMMON_TEST_SKIPS+=( + -x test_urllib2 + ) + ;; + sparc*) + COMMON_TEST_SKIPS+=( + # bug 788022 + -x test_multiprocessing_fork + -x test_multiprocessing_forkserver + + -x test_ctypes + -x test_descr + # bug 931908 + -x test_exceptions + ) + ;; + esac + + # musl-specific skips + use elibc_musl && COMMON_TEST_SKIPS+=( + # various musl locale deficiencies + -x test__locale + -x test_c_locale_coercion + -x test_locale + -x test_re + + # known issues with find_library on musl + # https://bugs.python.org/issue21622 + -x test_ctypes + + # fpathconf, ttyname errno values + -x test_os + ) + + if use pgo; then + local profile_task_flags=( + -m test + "-j$(makeopts_jobs)" + --pgo-extended + -u-network + + # We use a timeout because of how often we've had hang issues + # here. It also matches the default upstream PROFILE_TASK. + --timeout 1200 + + "${COMMON_TEST_SKIPS[@]}" + + -x test_dtrace + + # All of these seem to occasionally hang for PGO inconsistently + # They'll even hang here but be fine in src_test sometimes. + # bug #828535 (and related: bug #788022) + -x test_asyncio + -x test_concurrent_futures + -x test_httpservers + -x test_logging + -x test_multiprocessing_fork + -x test_socket + -x test_xmlrpc + + # Hangs (actually runs indefinitely executing itself w/ many cpython builds) + # bug #900429 + -x test_tools + ) + + # Arch-specific skips. See #931888 for a collection of these. + case ${CHOST} in + alpha*) + profile_task_flags+=( + -x test_os + ) + ;; + hppa*) + profile_task_flags+=( + -x test_descr + # bug 931908 + -x test_exceptions + -x test_os + ) + ;; + powerpc64-*) # big endian + profile_task_flags+=( + # bug 931908 + -x test_exceptions + ) + ;; + riscv*) + profile_task_flags+=( + -x test_statistics + ) + ;; + esac + + if has_version "app-arch/rpm" ; then + # Avoid sandbox failure (attempts to write to /var/lib/rpm) + profile_task_flags+=( + -x test_distutils + ) + fi + local -x PROFILE_TASK="${profile_task_flags[*]}" + fi + + local myeconfargs=( + # glibc-2.30 removes it; since we can't cleanly force-rebuild + # Python on glibc upgrade, remove it proactively to give + # a chance for users rebuilding python before glibc + ac_cv_header_stropts_h=no + + --enable-shared + --enable-ipv6 + --infodir='${prefix}/share/info' + --mandir='${prefix}/share/man' + --with-computed-gotos + --with-dbmliborder="${dbmliborder}" + --with-libc= + --enable-loadable-sqlite-extensions + --without-ensurepip + --without-lto + --with-system-expat + --with-system-ffi + --with-system-libmpdec + --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip + + $(use_with debug assertions) + $(use_enable pgo optimizations) + $(use_with valgrind) + ) + + # disable implicit optimization/debugging flags + local -x OPT= + + # https://bugs.gentoo.org/700012 + if tc-is-lto; then + append-cflags $(test-flags-CC -ffat-lto-objects) + myeconfargs+=( + --with-lto + ) + fi + + if tc-is-cross-compiler ; then + # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 + local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + # + # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) + local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" + local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} + local -x CFLAGS= LDFLAGS= + local -x BUILD_CFLAGS="${CFLAGS_NODIST}" + local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} + + # We need to build our own Python on CBUILD first, and feed it in. + # bug #847910 and bug #864911. + local myeconfargs_cbuild=( + "${myeconfargs[@]}" + + --libdir="${cbuild_libdir:2}" + + # Avoid needing to load the right libpython.so. + --disable-shared + + # As minimal as possible for the mini CBUILD Python + # we build just for cross. + --without-lto + --disable-optimizations + ) + + # Point the imminent CHOST build to the Python we just + # built for CBUILD. + export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}" + + mkdir "${WORKDIR}"/${P}-${CBUILD} || die + pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die + # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating + # libdir correctly for cross. + PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \ + ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" + + # Avoid as many dependencies as possible for the cross build. + cat >> Makefile <<-EOF || die + MODULE_NIS=disabled + MODULE__DBM=disabled + MODULE__GDBM=disabled + MODULE__DBM=disabled + MODULE__SQLITE3=disabled + MODULE__HASHLIB=disabled + MODULE__SSL=disabled + MODULE__CURSES=disabled + MODULE__CURSES_PANEL=disabled + MODULE_READLINE=disabled + MODULE__TKINTER=disabled + MODULE_PYEXPAT=disabled + MODULE_ZLIB=disabled + EOF + + # Unfortunately, we do have to build this immediately, and + # not in src_compile, because CHOST configure for Python + # will check the existence of the Python it was pointed to + # immediately. + PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake + popd &> /dev/null || die + fi + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + local -x CFLAGS_NODIST=${CFLAGS} + local -x LDFLAGS_NODIST=${LDFLAGS} + local -x CFLAGS= LDFLAGS= + + # Fix implicit declarations on cross and prefix builds. Bug #674070. + if use ncurses; then + append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw + fi + + hprefixify setup.py + econf "${myeconfargs[@]}" + + if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then + eerror "configure has detected that the sem_open function is broken." + eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." + die "Broken sem_open function (bug 496328)" + fi + + # install epython.py as part of stdlib + echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die +} + +src_compile() { + # Ensure sed works as expected + # https://bugs.gentoo.org/594768 + local -x LC_ALL=C + # Prevent using distutils bundled by setuptools. + # https://bugs.gentoo.org/823728 + export SETUPTOOLS_USE_DISTUTILS=stdlib + + # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't + # end up writing bytecode & violating sandbox. + # bug #831897 + local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} + + # Gentoo hack to disable accessing system site-packages + export GENTOO_CPYTHON_BUILD=1 + + if use pgo ; then + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + fi + + # also need to clear the flags explicitly here or they end up + # in _sysconfigdata* + emake CPPFLAGS= CFLAGS= LDFLAGS= + + # Restore saved value from above. + local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} + + # Work around bug 329499. See also bug 413751 and 457194. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E python + else + pax-mark m python + fi +} + +src_test() { + # Tests will not work when cross compiling. + if tc-is-cross-compiler; then + elog "Disabling tests due to crosscompiling." + return + fi + + local test_opts=( + --verbose3 + -u-network + -j "$(makeopts_jobs)" + "${COMMON_TEST_SKIPS[@]}" + ) + + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + + nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local ret=${?} + + [[ ${ret} -eq 0 ]] || die "emake test failed" +} + +src_install() { + local libdir=${ED}/usr/lib/python${PYVER} + + emake DESTDIR="${D}" altinstall + + # Remove static library + rm "${ED}"/usr/$(get_libdir)/libpython*.a || die + + # Fix collisions between different slots of Python. + rm "${ED}/usr/$(get_libdir)/libpython3.so" || die + + # Cheap hack to get version with ABIFLAGS + local abiver=$(cd "${ED}/usr/include"; echo python*) + if [[ ${abiver} != python${PYVER} ]]; then + # Replace python3.X with a symlink to python3.Xm + rm "${ED}/usr/bin/python${PYVER}" || die + dosym "${abiver}" "/usr/bin/python${PYVER}" + # Create python3.X-config symlink + dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" + # Create python-3.5m.pc symlink + dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" + fi + + # python seems to get rebuilt in src_install (bug 569908) + # Work around it for now. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E "${ED}/usr/bin/${abiver}" + else + pax-mark m "${ED}/usr/bin/${abiver}" + fi + + rm -r "${libdir}"/ensurepip/_bundled || die + if ! use ensurepip; then + rm -r "${libdir}"/ensurepip || die + fi + if ! use sqlite; then + rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die + fi + if ! use tk; then + rm -r "${ED}/usr/bin/idle${PYVER}" || die + rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die + fi + + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + + dodoc Misc/{ACKS,HISTORY,NEWS} + + if use examples; then + docinto examples + find Tools -name __pycache__ -exec rm -fr {} + || die + dodoc -r Tools + fi + insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 + local libname=$( + printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | + emake --no-print-directory -s -f - 2>/dev/null + ) + newins Tools/gdb/libpython.py "${libname}"-gdb.py + + newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} + newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} + sed \ + -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ + -e "s:@PYDOC@:pydoc${PYVER}:" \ + -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ + "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" + + # python-exec wrapping support + local pymajor=${PYVER%.*} + local EPYTHON=python${PYVER} + local scriptdir=${D}$(python_get_scriptdir) + mkdir -p "${scriptdir}" || die + # python and pythonX + ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die + ln -s "python${pymajor}" "${scriptdir}/python" || die + # python-config and pythonX-config + # note: we need to create a wrapper rather than symlinking it due + # to some random dirname(argv[0]) magic performed by python-config + cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die + #!/bin/sh + exec "${abiver}-config" "\${@}" + EOF + chmod +x "${scriptdir}/python${pymajor}-config" || die + ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die + # 2to3, pydoc + ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die + ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die + # idle + if use tk; then + ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die + fi +} diff --git a/dev-lang/rust-bin/rust-bin-1.81.0.ebuild b/dev-lang/rust-bin/rust-bin-1.81.0.ebuild index e51aa66a54b1..bf78998761f4 100644 --- a/dev-lang/rust-bin/rust-bin-1.81.0.ebuild +++ b/dev-lang/rust-bin/rust-bin-1.81.0.ebuild @@ -38,7 +38,7 @@ SRC_URI+=" ppc64? ( elibc_musl? ( LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4" SLOT="stable" KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix profiler rust-analyzer rust-src rustfmt" +IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt" RDEPEND=" >=app-eselect/eselect-rust-20190311 @@ -116,7 +116,6 @@ multilib_src_install() { local components="rustc,cargo,${std}" use doc && components="${components},rust-docs" use clippy && components="${components},clippy-preview" - use profiler && components="${components},rust-demangler-preview" use rustfmt && components="${components},rustfmt-preview" use rust-analyzer && components="${components},rust-analyzer-preview,${analysis}" # Rust component 'rust-src' is extracted from separate archive @@ -154,7 +153,6 @@ multilib_src_install() { ) use clippy && symlinks+=( clippy-driver cargo-clippy ) - use profiler && symlinks+=( rust-demangler ) use rustfmt && symlinks+=( rustfmt cargo-fmt ) use rust-analyzer && symlinks+=( rust-analyzer ) @@ -202,9 +200,6 @@ multilib_src_install() { echo /usr/bin/clippy-driver >> "${T}/provider-${P}" echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" fi - if use profiler; then - echo /usr/bin/rust-demangler >> "${T}/provider-${P}" - fi if use rustfmt; then echo /usr/bin/rustfmt >> "${T}/provider-${P}" echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" diff --git a/dev-lang/rust/rust-1.81.0.ebuild b/dev-lang/rust/rust-1.81.0.ebuild index b6837f265a6f..5634139adde1 100644 --- a/dev-lang/rust/rust-1.81.0.ebuild +++ b/dev-lang/rust/rust-1.81.0.ebuild @@ -342,7 +342,6 @@ src_configure() { local tools='"cargo","rustdoc"' use clippy && tools+=',"clippy"' use miri && tools+=',"miri"' - use profiler && tools+=',"rust-demangler"' use rustfmt && tools+=',"rustfmt"' use rust-analyzer && tools+=',"rust-analyzer","rust-analyzer-proc-macro-srv"' use rust-src && tools+=',"src"' @@ -685,7 +684,6 @@ src_install() { use clippy && symlinks+=( clippy-driver cargo-clippy ) use miri && symlinks+=( miri cargo-miri ) - use profiler && symlinks+=( rust-demangler ) use rustfmt && symlinks+=( rustfmt cargo-fmt ) use rust-analyzer && symlinks+=( rust-analyzer ) @@ -744,9 +742,6 @@ src_install() { echo /usr/bin/miri >> "${T}/provider-${P}" echo /usr/bin/cargo-miri >> "${T}/provider-${P}" fi - if use profiler; then - echo /usr/bin/rust-demangler >> "${T}/provider-${P}" - fi if use rustfmt; then echo /usr/bin/rustfmt >> "${T}/provider-${P}" echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" diff --git a/dev-libs/dotconf/dotconf-1.4.1.ebuild b/dev-libs/dotconf/dotconf-1.4.1.ebuild index b9e9dd68f11d..a7f18592c808 100644 --- a/dev-libs/dotconf/dotconf-1.4.1.ebuild +++ b/dev-libs/dotconf/dotconf-1.4.1.ebuild @@ -14,7 +14,7 @@ if [[ ${PV} == 9999* ]]; then EGIT_REPO_URI="https://github.com/williamh/dotconf.git" else SRC_URI="https://github.com/williamh/dotconf/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux" fi LICENSE="LGPL-2.1" diff --git a/dev-libs/dynolog/dynolog-0.3.1_p20230126-r2.ebuild b/dev-libs/dynolog/dynolog-0.3.1_p20230126-r2.ebuild index 0df5a58659f9..ca74802f6de0 100644 --- a/dev-libs/dynolog/dynolog-0.3.1_p20230126-r2.ebuild +++ b/dev-libs/dynolog/dynolog-0.3.1_p20230126-r2.ebuild @@ -72,6 +72,7 @@ PATCHES=( "${FILESDIR}"/${P}-riscv.patch "${FILESDIR}"/${P}-musl.patch "${FILESDIR}"/${P}-libcxx.patch + "${FILESDIR}"/${P}-gcc15.patch ) CMAKE_SKIP_TESTS=( "Defs.CpuSet" "KernelCollecterTest.NetworkStatsTest" ) diff --git a/dev-libs/dynolog/files/dynolog-0.3.1_p20230126-gcc15.patch b/dev-libs/dynolog/files/dynolog-0.3.1_p20230126-gcc15.patch new file mode 100644 index 000000000000..f3e55f56f2d7 --- /dev/null +++ b/dev-libs/dynolog/files/dynolog-0.3.1_p20230126-gcc15.patch @@ -0,0 +1,10 @@ +--- a/third_party/cpr/include/cpr/callback.h 2024-09-18 22:01:50.107007518 +0200 ++++ b/third_party/cpr/include/cpr/callback.h 2024-09-18 22:03:21.582963325 +0200 +@@ -4,6 +4,7 @@ + #include "cprtypes.h" + + #include <functional> ++#include <cstdint> + #include <utility> + + namespace cpr { diff --git a/dev-libs/libclc/Manifest b/dev-libs/libclc/Manifest index da671e73c02c..05cedfc4345b 100644 --- a/dev-libs/libclc/Manifest +++ b/dev-libs/libclc/Manifest @@ -8,6 +8,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/dev-libs/libclc/libclc-19.1.0.ebuild b/dev-libs/libclc/libclc-19.1.0.ebuild new file mode 100644 index 000000000000..369d04fb2877 --- /dev/null +++ b/dev-libs/libclc/libclc-19.1.0.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( {17..18} ) +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake llvm.org llvm-r1 python-any-r1 + +DESCRIPTION="OpenCL C library" +HOMEPAGE="https://libclc.llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( MIT BSD )" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +IUSE="+spirv video_cards_nvidia video_cards_r600 video_cards_radeonsi" + +BDEPEND=" + ${PYTHON_DEPS} + $(llvm_gen_dep ' + sys-devel/clang:${LLVM_SLOT} + spirv? ( dev-util/spirv-llvm-translator:${LLVM_SLOT} ) + ') +" + +LLVM_COMPONENTS=( libclc ) +llvm.org_set_globals + +pkg_setup() { + llvm-r1_pkg_setup + python-any-r1_pkg_setup +} + +src_configure() { + local libclc_targets=() + + use spirv && libclc_targets+=( + "spirv-mesa3d-" + "spirv64-mesa3d-" + ) + use video_cards_nvidia && libclc_targets+=( + "nvptx--" + "nvptx64--" + "nvptx--nvidiacl" + "nvptx64--nvidiacl" + ) + use video_cards_r600 && libclc_targets+=( + "r600--" + ) + use video_cards_radeonsi && libclc_targets+=( + "amdgcn--" + "amdgcn-mesa-mesa3d" + "amdgcn--amdhsa" + ) + [[ ${#libclc_targets[@]} ]] || die "libclc target missing!" + + libclc_targets=${libclc_targets[*]} + local mycmakeargs=( + -DLIBCLC_TARGETS_TO_BUILD="${libclc_targets// /;}" + ) + cmake_src_configure +} diff --git a/dev-libs/libfilezilla/libfilezilla-0.48.1.ebuild b/dev-libs/libfilezilla/libfilezilla-0.48.1.ebuild index e04a339a4c99..45fd1083f62d 100644 --- a/dev-libs/libfilezilla/libfilezilla-0.48.1.ebuild +++ b/dev-libs/libfilezilla/libfilezilla-0.48.1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://download.filezilla-project.org/${PN}/${P}.tar.xz" LICENSE="GPL-2+" SLOT="0/45" # libfilezilla.so version -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 ~riscv ~x86" IUSE="test" RESTRICT="!test? ( test )" diff --git a/dev-libs/libmirage/Manifest b/dev-libs/libmirage/Manifest index e7ea35fe6469..54664e1cea0e 100644 --- a/dev-libs/libmirage/Manifest +++ b/dev-libs/libmirage/Manifest @@ -1 +1,2 @@ DIST libmirage-3.2.8.tar.xz 229616 BLAKE2B 37b662bbeff84144ee2ff2e6225af022cd031ef7db7734d22510cef6b1b9599c603c009c603fdb43fa13877858fc5871cd8c7fa68739f06dab60d910c9577db6 SHA512 ab4f099dd3a0a7705d7ee828cf023ab61185e3d5fbf324823a55ee604a008b66a206b8f666c0482b0eac6ac144a2421f04badd2e3e11dbc5e7bd2b211dcb2716 +DIST libmirage-3.2.9.tar.xz 229792 BLAKE2B 2c18b6541bf830f523e82f59c97f5aa9e0a866b21394496696d8f33e7258f8b07720f5abc4cc0202b5f7abff65bb5c896ed5fdb25fddf2a36e56a6e837b9b631 SHA512 67c20c5ee70f3d84e8bf55b7e5b0b90fe9d7ece7b46eee14a1bf57416f1f319b1cafa75b189730525c0cbe3457fce8d2e76759f52c8b1632d19ced6017063a89 diff --git a/dev-libs/libmirage/libmirage-3.2.9.ebuild b/dev-libs/libmirage/libmirage-3.2.9.ebuild new file mode 100644 index 000000000000..ec9d1a2848d6 --- /dev/null +++ b/dev-libs/libmirage/libmirage-3.2.9.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake xdg-utils + +DESCRIPTION="CD and DVD image access library" +HOMEPAGE="https://cdemu.sourceforge.io" +SRC_URI="https://download.sourceforge.net/cdemu/libmirage/${P}.tar.xz" + +LICENSE="GPL-2+" +SLOT="0/11" +KEYWORDS="~amd64 ~x86" +IUSE="doc +introspection" + +DEPEND=" + >=app-arch/bzip2-1:= + >=app-arch/xz-utils-5:= + >=dev-libs/glib-2.38:2 + >=media-libs/libsamplerate-0.1:= + >=media-libs/libsndfile-1.0:= + sys-libs/zlib:= + introspection? ( >=dev-libs/gobject-introspection-1.30 ) +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + dev-util/desktop-file-utils + dev-util/intltool + sys-devel/gettext + virtual/pkgconfig + doc? ( dev-util/gtk-doc ) + introspection? ( >=dev-libs/gobject-introspection-1.30 ) +" + +DOCS=( AUTHORS README ) + +src_configure() { + local mycmakeargs=( + -DGTKDOC_ENABLED="$(usex doc)" + -DINTROSPECTION_ENABLED="$(usex introspection)" + -DPOST_INSTALL_HOOKS=OFF # avoid sandbox violation, #487304 + ) + cmake_src_configure +} + +pkg_postinst() { + xdg_mimeinfo_database_update +} + +pkg_postrm() { + xdg_mimeinfo_database_update +} diff --git a/dev-libs/libwacom/Manifest b/dev-libs/libwacom/Manifest index 4758c64292ed..3b37d58a7be7 100644 --- a/dev-libs/libwacom/Manifest +++ b/dev-libs/libwacom/Manifest @@ -1,3 +1 @@ -DIST libwacom-2.10.0.tar.xz 114952 BLAKE2B ec9226feeac9998bc8b1886967db1ef5ea34312717eec5cce31796ffb2209cd479f6b2c1f7e2fe63c7c26ff7bdc93cf33a04314caefe84bb1113693086a78de5 SHA512 dc62db42596e14ace8463bc6bb115503d55f14c23a2a259b2169746e21b25eeeaacc09d7d1dd85c3e05f6dc5f3d96a3c757b2c93b171673e8f869337408495f9 -DIST libwacom-2.11.0.tar.xz 116056 BLAKE2B 2091859e036d928bc62543a56ea6ca0e2a879f83000437bc73560c334533a1b7b17e36a4f730c51f5b944cea6dbed0bc90b924c1f2112cd8f4bf0cb82505a0b7 SHA512 66823d97d165b428ddbfc3539572c94e2138b0732bc1c9e97c5ee071982fe8b82ead1302a5c308cbd1038e283fdfd7db853ef4a822c946f85a63b8247877a8a9 DIST libwacom-2.12.2.tar.xz 153600 BLAKE2B f2a965d1990e8d2aa248d9d81f31f50e2602c66e3cbc41dd0638994c955b30a5e4be445041e8ac5240b336611f6fb3217779142e95fc3c5265860ebc4f918c41 SHA512 34f80f6c5bdb62938874978b2761d71a1da4629969550ac87b08eb132e88bfb67b56a4f5fcd687e4607a18ef8b34262ba9c4cfc0fcf6a1a6bb98c1a05ded0b08 diff --git a/dev-libs/libwacom/libwacom-2.10.0.ebuild b/dev-libs/libwacom/libwacom-2.10.0.ebuild deleted file mode 100644 index 6eb6728c8137..000000000000 --- a/dev-libs/libwacom/libwacom-2.10.0.ebuild +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -inherit meson python-any-r1 udev - -DESCRIPTION="Library for identifying Wacom tablets and their model-specific features" -HOMEPAGE="https://github.com/linuxwacom/libwacom" -SRC_URI="https://github.com/linuxwacom/${PN}/releases/download/${P}/${P}.tar.xz" - -LICENSE="MIT" -SLOT="0/9" # libwacom SONAME -KEYWORDS="~alpha amd64 arm ~arm64 ppc ppc64 sparc x86" -IUSE="doc test" -RESTRICT="!test? ( test )" - -RDEPEND=" - dev-libs/glib:2 - dev-libs/libevdev - dev-libs/libgudev:= -" -DEPEND="${RDEPEND}" -BDEPEND=" - ${PYTHON_DEPS} - virtual/pkgconfig - doc? ( app-text/doxygen ) - test? ( - $(python_gen_any_dep ' - dev-python/libevdev[${PYTHON_USEDEP}] - dev-python/pyudev[${PYTHON_USEDEP}] - dev-python/pytest[${PYTHON_USEDEP}] - ') - ) -" - -python_check_deps() { - use test || return 0 - python_has_version \ - "dev-python/libevdev[${PYTHON_USEDEP}]" \ - "dev-python/pyudev[${PYTHON_USEDEP}]" \ - "dev-python/pytest[${PYTHON_USEDEP}]" -} - -src_prepare() { - default - - # Don't call systemd daemon-reload in the test suite - sed -i -e '/daemon-reload/d' test/test_udev_rules.py || die -} - -src_configure() { - local emesonargs=( - $(meson_feature doc documentation) - $(meson_feature test tests) - -Dudev-dir=$(get_udevdir) - ) - meson_src_configure -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/dev-libs/libwacom/libwacom-2.11.0.ebuild b/dev-libs/libwacom/libwacom-2.11.0.ebuild deleted file mode 100644 index 80778e1e4813..000000000000 --- a/dev-libs/libwacom/libwacom-2.11.0.ebuild +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -inherit meson python-any-r1 udev - -DESCRIPTION="Library for identifying Wacom tablets and their model-specific features" -HOMEPAGE="https://github.com/linuxwacom/libwacom" -SRC_URI="https://github.com/linuxwacom/${PN}/releases/download/${P}/${P}.tar.xz" - -LICENSE="MIT" -SLOT="0/9" # libwacom SONAME -KEYWORDS="~alpha amd64 arm arm64 ppc ppc64 ~riscv sparc x86" -IUSE="doc test" -RESTRICT="!test? ( test )" - -RDEPEND=" - dev-libs/glib:2 - dev-libs/libevdev - dev-libs/libgudev:= -" -DEPEND="${RDEPEND}" -BDEPEND=" - ${PYTHON_DEPS} - virtual/pkgconfig - doc? ( app-text/doxygen ) - test? ( - $(python_gen_any_dep ' - dev-python/libevdev[${PYTHON_USEDEP}] - dev-python/pyudev[${PYTHON_USEDEP}] - dev-python/pytest[${PYTHON_USEDEP}] - ') - ) -" - -python_check_deps() { - use test || return 0 - python_has_version \ - "dev-python/libevdev[${PYTHON_USEDEP}]" \ - "dev-python/pyudev[${PYTHON_USEDEP}]" \ - "dev-python/pytest[${PYTHON_USEDEP}]" -} - -src_prepare() { - default - - # Don't call systemd daemon-reload in the test suite - sed -i -e '/daemon-reload/d' test/test_udev_rules.py || die -} - -src_configure() { - local emesonargs=( - $(meson_feature doc documentation) - $(meson_feature test tests) - -Dudev-dir=$(get_udevdir) - ) - meson_src_configure -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/dev-libs/libwacom/libwacom-2.12.2.ebuild b/dev-libs/libwacom/libwacom-2.12.2.ebuild index d34d7543e545..3ce1584b9fbb 100644 --- a/dev-libs/libwacom/libwacom-2.12.2.ebuild +++ b/dev-libs/libwacom/libwacom-2.12.2.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://github.com/linuxwacom/${PN}/releases/download/${P}/${P}.tar.xz" LICENSE="MIT" SLOT="0/9" # libwacom SONAME -KEYWORDS="~alpha amd64 arm arm64 ppc ppc64 ~riscv ~sparc x86" +KEYWORDS="~alpha amd64 arm arm64 ppc ppc64 ~riscv x86" IUSE="doc test" RESTRICT="!test? ( test )" diff --git a/dev-libs/rocm-opencl-runtime/files/rocm-opencl-runtime-6.1.2-fix-segfault.patch b/dev-libs/rocm-opencl-runtime/files/rocm-opencl-runtime-6.1.2-fix-segfault.patch new file mode 100644 index 000000000000..78f76303468f --- /dev/null +++ b/dev-libs/rocm-opencl-runtime/files/rocm-opencl-runtime-6.1.2-fix-segfault.patch @@ -0,0 +1,31 @@ +From d1fff7cea2231e7980d85790486edb70d093a1dc Mon Sep 17 00:00:00 2001 +From: Rakesh Roy <rakesh.roy@amd.com> +Date: Wed, 20 Mar 2024 22:50:22 +0530 +Subject: [PATCH] SWDEV-445096 - Fix -O0 crash in OpenCL tests + +- With https://gerrit-git.amd.com/c/lightning/ec/llvm-project/+/1002628 applied, at -O0 Kernel::dynamicParallelism() returns true but virtual queue isn't created +- This causes segfault inside VirtualGPU::submitKernelInternal() when getVQVirtualAddress() is called + +Change-Id: Ia7af042adad2329e870c142caaac3e8fa886f8b8 +--- + rocclr/device/rocm/rocvirtual.cpp | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/rocclr/device/rocm/rocvirtual.cpp b/rocclr/device/rocm/rocvirtual.cpp +index 51080013b..1610aecfe 100644 +--- a/rocclr/device/rocm/rocvirtual.cpp ++++ b/rocclr/device/rocm/rocvirtual.cpp +@@ -3326,8 +3326,11 @@ bool VirtualGPU::submitKernelInternal(const amd::NDRangeContainer& sizes, + + if (gpuKernel.dynamicParallelism()) { + dispatchBarrierPacket(kBarrierPacketHeader, true); +- static_cast<KernelBlitManager&>(blitMgr()).runScheduler( +- getVQVirtualAddress(), schedulerParam_, schedulerQueue_, schedulerSignal_, schedulerThreads_); ++ if (virtualQueue_ != nullptr) { ++ static_cast<KernelBlitManager&>(blitMgr()).runScheduler( ++ getVQVirtualAddress(), schedulerParam_, schedulerQueue_, ++ schedulerSignal_, schedulerThreads_); ++ } + } + + // Check if image buffer write back is required diff --git a/dev-libs/rocm-opencl-runtime/rocm-opencl-runtime-6.1.2-r1.ebuild b/dev-libs/rocm-opencl-runtime/rocm-opencl-runtime-6.1.2-r1.ebuild new file mode 100644 index 000000000000..540038443185 --- /dev/null +++ b/dev-libs/rocm-opencl-runtime/rocm-opencl-runtime-6.1.2-r1.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ROCM_SKIP_GLOBALS=1 +inherit cmake edo flag-o-matic rocm + +DESCRIPTION="Radeon Open Compute OpenCL Compatible Runtime" +HOMEPAGE="https://github.com/ROCm-Developer-Tools/clr" + +SRC_URI="https://github.com/ROCm-Developer-Tools/clr/archive/refs/tags/rocm-${PV}.tar.gz -> rocm-clr-${PV}.tar.gz" +S="${WORKDIR}/clr-rocm-${PV}/" + +LICENSE="Apache-2.0 MIT" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="debug test" +RESTRICT="!test? ( test )" + +RDEPEND=">=dev-libs/rocr-runtime-6.0 + >=dev-libs/rocm-comgr-6.0 + >=dev-libs/rocm-device-libs-6.0 + >=virtual/opencl-3 + media-libs/mesa[-opencl]" +DEPEND="${RDEPEND}" +BDEPEND=">=dev-build/rocm-cmake-5.3 + media-libs/glew + test? ( >=x11-apps/mesa-progs-8.5.0[X] ) +" + +PATCHES=( "${FILESDIR}/rocm-opencl-runtime-6.1.2-fix-segfault.patch" ) + +src_configure() { + # -Werror=strict-aliasing + # https://bugs.gentoo.org/856088 + # https://github.com/ROCm/clr/issues/64 + # + # Do not trust it for LTO either + append-flags -fno-strict-aliasing + filter-lto + + # Fix ld.lld linker error: https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/issues/155 + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + # Reported upstream: https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/issues/120 + append-cflags -fcommon + + local mycmakeargs=( + -Wno-dev + -DROCM_PATH="${EPREFIX}/usr" + -DBUILD_TESTS=$(usex test ON OFF) + -DEMU_ENV=ON + -DBUILD_ICD=ON + -DFILE_REORG_BACKWARD_COMPATIBILITY=OFF + -DCLR_BUILD_OCL=on + ) + cmake_src_configure +} + +src_install() { + insinto /etc/OpenCL/vendors + doins opencl/config/amdocl64.icd + + cd "${BUILD_DIR}"/opencl || die + insinto /usr/lib64 + doins amdocl/libamdocl64.so + doins tools/cltrace/libcltrace.so +} + +src_test() { + check_amdgpu + cd "${BUILD_DIR}"/tests/ocltst || die + export OCL_ICD_FILENAMES="${BUILD_DIR}"/amdocl/libamdocl64.so + local instruction1="Please start an X server using amdgpu driver (not Xvfb!)," + local instruction2="and export OCLGL_DISPLAY=\${DISPLAY} OCLGL_XAUTHORITY=\${XAUTHORITY} before reruning the test." + if [[ -n ${OCLGL_DISPLAY+x} ]]; then + export DISPLAY=${OCLGL_DISPLAY} + export XAUTHORITY=${OCLGL_XAUTHORITY} + ebegin "Running oclgl test under DISPLAY ${OCLGL_DISPLAY}" + if ! glxinfo | grep "OpenGL vendor string: AMD"; then + ewarn "${instruction1}" + ewarn "${instruction2}" + die "This display does not have AMD OpenGL vendor!" + fi + ./ocltst -m $(realpath liboclgl.so) -A ogl.exclude + eend $? || die "oclgl test failed" + else + ewarn "${instruction1}" + ewarn "${instruction2}" + die "\${OCLGL_DISPLAY} not set." + fi + edob ./ocltst -m $(realpath liboclruntime.so) -A oclruntime.exclude + edob ./ocltst -m $(realpath liboclperf.so) -A oclperf.exclude +} diff --git a/dev-ml/llvm-ocaml/Manifest b/dev-ml/llvm-ocaml/Manifest index da671e73c02c..05cedfc4345b 100644 --- a/dev-ml/llvm-ocaml/Manifest +++ b/dev-ml/llvm-ocaml/Manifest @@ -8,6 +8,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-19.1.0.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-19.1.0.ebuild new file mode 100644 index 000000000000..84bd71875fac --- /dev/null +++ b/dev-ml/llvm-ocaml/llvm-ocaml-19.1.0.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake llvm.org llvm-utils python-any-r1 + +DESCRIPTION="OCaml bindings for LLVM" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="debug test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-lang/ocaml-4.00.0:0= + dev-ml/ocaml-ctypes:= + ~sys-devel/llvm-${PV}:=[debug?] + !sys-devel/llvm[ocaml(-)] +" + +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + ${PYTHON_DEPS} + dev-lang/perl + dev-ml/findlib +" + +LLVM_COMPONENTS=( llvm cmake third-party ) +LLVM_USE_TARGETS=llvm +llvm.org_set_globals + +src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + local libdir=$(get_libdir) + local mycmakeargs=( + -DLLVM_LIBDIR_SUFFIX=${libdir#lib} + + -DBUILD_SHARED_LIBS=OFF + -DLLVM_BUILD_LLVM_DYLIB=ON + -DLLVM_LINK_LLVM_DYLIB=ON + -DLLVM_OCAML_OUT_OF_TREE=ON + + # cheap hack: LLVM combines both anyway, and the only difference + # is that the former list is explicitly verified at cmake time + -DLLVM_TARGETS_TO_BUILD="" + -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" + -DLLVM_BUILD_TESTS=$(usex test) + + # disable various irrelevant deps and settings + -DLLVM_ENABLE_FFI=OFF + -DLLVM_ENABLE_TERMINFO=OFF + -DHAVE_HISTEDIT_H=NO + -DLLVM_ENABLE_ASSERTIONS=$(usex debug) + -DLLVM_ENABLE_EH=ON + -DLLVM_ENABLE_RTTI=ON + + -DLLVM_HOST_TRIPLE="${CHOST}" + + -DPython3_EXECUTABLE="${PYTHON}" + + # TODO: ocamldoc + ) + + use test && mycmakeargs+=( + -DLLVM_LIT_ARGS="$(get_lit_flags)" + ) + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + # also: custom rules for OCaml do not work for CPPFLAGS + use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG" + cmake_src_configure + + local llvm_libdir=$(llvm-config --libdir) + # an ugly hack; TODO: figure out a way to pass -L to ocaml... + cd "${BUILD_DIR}/${libdir}" || die + ln -s "${llvm_libdir}"/*.so . || die + + if use test; then + local llvm_bindir=$(llvm-config --bindir) + # Force using system-installed tools. + sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \ + "${BUILD_DIR}"/test/lit.site.cfg.py || die + fi +} + +src_compile() { + cmake_build ocaml_all +} + +src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + cmake_build check-llvm-bindings-ocaml +} + +src_install() { + DESTDIR="${D}" \ + cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die + + dodoc bindings/ocaml/README.txt +} diff --git a/dev-python/PyQt6-sip/PyQt6-sip-13.8.0.ebuild b/dev-python/PyQt6-sip/PyQt6-sip-13.8.0.ebuild index c9db752fea93..fd219dc905f9 100644 --- a/dev-python/PyQt6-sip/PyQt6-sip-13.8.0.ebuild +++ b/dev-python/PyQt6-sip/PyQt6-sip-13.8.0.ebuild @@ -18,4 +18,4 @@ HOMEPAGE="https://github.com/Python-SIP/sip/" LICENSE="BSD-2" SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv" +KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv ~x86" diff --git a/dev-python/PyQt6/PyQt6-6.7.1-r1.ebuild b/dev-python/PyQt6/PyQt6-6.7.1-r1.ebuild index c2f03c08b4ca..ac2734ad7511 100644 --- a/dev-python/PyQt6/PyQt6-6.7.1-r1.ebuild +++ b/dev-python/PyQt6/PyQt6-6.7.1-r1.ebuild @@ -17,7 +17,7 @@ HOMEPAGE="https://www.riverbankcomputing.com/software/pyqt/" LICENSE="GPL-3" SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv" +KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv ~x86" # defaults match what is provided with qtbase by default (except testlib), # reduces the need to set flags but does increase build time a fair amount IUSE=" diff --git a/dev-python/ansible-compat/Manifest b/dev-python/ansible-compat/Manifest index 631883ed7489..0f4d601c431f 100644 --- a/dev-python/ansible-compat/Manifest +++ b/dev-python/ansible-compat/Manifest @@ -1,2 +1,3 @@ DIST ansible-compat-24.8.0.gh.tar.gz 74341 BLAKE2B ce6edf8ed532815f2e307ac51eef0ac694805b0d5f8cad78c75c57478a21eb443348d636ca0e405fe63d32daf0f426c20e0f97183082f0eba3dd4b889fb8be80 SHA512 07da3a5d4f6eaa6edec3a03107d6e751e9754a84420a9839239d17811de01e8c70bed84e8c23a1308d18e8388581b0e269ae03c235bbc244e95a29c3be25567b DIST ansible-compat-24.9.0.gh.tar.gz 75290 BLAKE2B 0482d9eba967d4d846e35f3a2754410e1f42d34e451b2cf42bcbb88155fdf90859b9fbf6ead28a6e8c252d3a37522c1d1c903a38d4e47ba427678bc39d3c8e9c SHA512 e6803e598fabb1097bf0f10a7b9592af97152d108bc89a29547546de0eaa87ebba9232e78aeababb3ffd94c58af8b93499de9c059a6c42d04179d02b50d92a0f +DIST ansible-compat-24.9.1.gh.tar.gz 76018 BLAKE2B 581199ab65ccc884a3eeef246a8dbe527cac91fc3b588edaf1ad45e7aa83a2e77d44eab8e9dc5d7f2598b02a22fb724ccf235d25592ff8c9de0b7718b9ad5507 SHA512 d5da3cbd29bfb49b9ac68f004eb957edbfdfa303ce204e230117e9964df36c6bcbf3b47ef343d6a77b4f24c390266aebd649a8036cf9e7f29dc350d207ab7409 diff --git a/dev-python/ansible-compat/ansible-compat-24.9.1.ebuild b/dev-python/ansible-compat/ansible-compat-24.9.1.ebuild new file mode 100644 index 000000000000..18c39cfc27c2 --- /dev/null +++ b/dev-python/ansible-compat/ansible-compat-24.9.1.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYTHON_COMPAT=( python3_{10..12} ) + +inherit distutils-r1 + +DESCRIPTION="Contains functions that facilitate working with various versions of Ansible" +HOMEPAGE=" + https://pypi.org/project/ansible-compat/ + https://github.com/ansible/ansible-compat/ +" +# We normally use PyPI here but 4.1.12 has never been uploaded there for some reason +SRC_URI="https://github.com/ansible/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv" + +RDEPEND=" + >=app-admin/ansible-core-2.14[${PYTHON_USEDEP}] + >=dev-python/jsonschema-4.6.0[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + >=dev-python/subprocess-tee-0.4.1[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/setuptools-scm-7.0.5[${PYTHON_USEDEP}] + test? ( + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/pytest-plus[${PYTHON_USEDEP}] + ) +" + +# All these tests attempt to connect to galaxy.ansible.com +EPYTEST_DESELECT=( + test/test_runtime.py::test_install_collection + test/test_runtime.py::test_install_collection_dest + test/test_runtime.py::test_prepare_environment_with_collections + test/test_runtime.py::test_prerun_reqs_v1 + test/test_runtime.py::test_prerun_reqs_v2 + test/test_runtime.py::test_require_collection_no_cache_dir + test/test_runtime.py::test_require_collection_wrong_version + test/test_runtime.py::test_require_collection + test/test_runtime.py::test_upgrade_collection + test/test_runtime_example.py::test_runtime + # pip, failing due to internets + test/test_runtime_scan_path.py::test_scan_sys_path + # internets? + test/test_runtime.py::test_runtime_has_playbook +) + +distutils_enable_tests pytest diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest index e193aada58f1..f2a689fa9136 100644 --- a/dev-python/boto3/Manifest +++ b/dev-python/boto3/Manifest @@ -2,3 +2,5 @@ DIST boto3-1.35.10.gh.tar.gz 856679 BLAKE2B 03e7be74455b487a79188405796fc08bd940 DIST boto3-1.35.14.gh.tar.gz 859166 BLAKE2B eb201a319453097068b4711356ea930de739ff8874da7441fa3b931434c8a82a1692a5f67b10f06eaf7644335033e302f733fcc2267b782398e9edd28c32a613 SHA512 ade4b6bc0c816244d5335b1669090d8a5e3c8dcc8802b0aa10498ce8c5fe8e456958ff3bfd73a5c9376ce1658f9c2a90d5470c86c2b3399d7198bacd09764619 DIST boto3-1.35.19.gh.tar.gz 861578 BLAKE2B 5011df66763e646768232a65022080ffbe3db08253f1bf3e192cf57be010ccdd08f8add78ec365e1c04d78ba1722cf6ef54fbc170f7f2419fcd370c08d48e3ce SHA512 faabd3ef8eb35a323ed64a711e0a026f8f77974516b05a93d389fb82b84932f69a2c784a1065811699dac4db016549f3756f24b879485b2dfb6ca380e6873670 DIST boto3-1.35.20.gh.tar.gz 862207 BLAKE2B 06a45feaba2a8afdd213a6c059e3a3dce2608ab5f55bdccd17478be8b865ad3dddef2459481f4565bbb44736bf6ae2a68bbd26dcd1e3f0e12afc03290dc8433f SHA512 59854e97f957b58c391111aae2538771003414c04d46d50006306b84b3566dd7b1d369e68ecc658e66c04fdf89541184063aebec7859387503fbea2cfd40ea08 +DIST boto3-1.35.21.gh.tar.gz 862801 BLAKE2B 44f322177603bad3de23dc47d95dc8b80b442762986a4402ec441c96cbbaa4708a3a9532c477983c0e0d857975f42ee980e61328ac72dc8bd68151980014dba1 SHA512 67bf2a8051bb08c1b761f1a13df41806356c67826e7cc6bd3c38f82ff709e6baac43430ed720f8d1f31a7e6c1fb7e4bf14bf67e8fd66db3f133ba8b8c93384c3 +DIST boto3-1.35.22.gh.tar.gz 863521 BLAKE2B 758d3b7ad49d147278e5a3cbe222fdc1b21f925343c491b4f1708762e70e7b5cc89eb3003e3b8fd1430b8b04f8d9a59c7002c404597a03321a4a57c8827a5a5d SHA512 ad7524fd5850fd77d4f3f5ca5a94c3674639c3b4e7b6d65881cf2e546f8c5f9217d2513b43435b1a9ab97a63c9d94c20f00a3791a5fba52590b2eb4c5453bf22 diff --git a/dev-python/boto3/boto3-1.35.21.ebuild b/dev-python/boto3/boto3-1.35.21.ebuild new file mode 100644 index 000000000000..8cba6d95740e --- /dev/null +++ b/dev-python/boto3/boto3-1.35.21.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 + +DESCRIPTION="The AWS SDK for Python" +HOMEPAGE=" + https://github.com/boto/boto3/ + https://pypi.org/project/boto3/ +" +SRC_URI=" + https://github.com/boto/boto3/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + >=dev-python/botocore-${PV}[${PYTHON_USEDEP}] + >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.10.0[${PYTHON_USEDEP}] +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + # don't lock versions to narrow ranges + sed -e '/botocore/ d' \ + -e '/jmespath/ d' \ + -e '/s3transfer/ d' \ + -i setup.py || die + + # 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 + + distutils-r1_python_prepare_all +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest tests/{functional,unit} +} diff --git a/dev-python/boto3/boto3-1.35.22.ebuild b/dev-python/boto3/boto3-1.35.22.ebuild new file mode 100644 index 000000000000..8cba6d95740e --- /dev/null +++ b/dev-python/boto3/boto3-1.35.22.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 + +DESCRIPTION="The AWS SDK for Python" +HOMEPAGE=" + https://github.com/boto/boto3/ + https://pypi.org/project/boto3/ +" +SRC_URI=" + https://github.com/boto/boto3/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + >=dev-python/botocore-${PV}[${PYTHON_USEDEP}] + >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.10.0[${PYTHON_USEDEP}] +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + # don't lock versions to narrow ranges + sed -e '/botocore/ d' \ + -e '/jmespath/ d' \ + -e '/s3transfer/ d' \ + -i setup.py || die + + # 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 + + distutils-r1_python_prepare_all +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest tests/{functional,unit} +} diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest index 0b4d11ec121f..dc5fd53ffa57 100644 --- a/dev-python/botocore/Manifest +++ b/dev-python/botocore/Manifest @@ -2,3 +2,5 @@ DIST botocore-1.35.10.gh.tar.gz 13328544 BLAKE2B cecad54696210597a09f4316a88b833 DIST botocore-1.35.14.gh.tar.gz 13340768 BLAKE2B 4ba023dbfc9e632d86028100910544e192a5b2d70ec76a21dfc5003c767a6043a144385561c35f4d7b4bfefbf4a1f3a38ef2845e323f93868e1f5ad86ae1f12b SHA512 c0dfdec80a45cf11796496bc2bef575a567368be3f29267b4d411d0615e6c8536036e47a5de11fb8f4626590dca051e891bb9430ed1ea80dfab2f43f070209d2 DIST botocore-1.35.19.gh.tar.gz 13376459 BLAKE2B ba64ff0dc221782ce23592a6d6a146a680e2b86aa734673d4b16d6fd83355958b32af0e86a6769d2237e6234d80fb7fb23d52e3bcd2187cfe7d3646307fdea38 SHA512 6988f442b573e951766f1978325937a29141436d976baedb9c29959d5ff64014520c1bee4a8ce9b0d4226f62a6efb081a0532b2a825811e8cb2de3217ed311ae DIST botocore-1.35.20.gh.tar.gz 13379086 BLAKE2B ea90039d3dd8848052e45e967d5a4598ca7eee3cfdad492660861b63eebba2fb1b012ac146a457d5ac4f299b5c3cbf81b5c002b6f9c88d8aa37eb32a4decfb8b SHA512 35e532c49a20a098d0694be93243eca285e311899d52eae9bbc99823d65464709ae7ad03f5a82e9dacba392b83be74fc84ede549d5dd33a875888346fff6d26f +DIST botocore-1.35.21.gh.tar.gz 13382479 BLAKE2B 6f63f736fd4bba93829dd4243bbc2ee46ee9e75f86c294cf8c2f0cb89f981f4b38146532fcb7a77184fb795d1d53d40791c6e7595b9db9ac340180cb18664dbd SHA512 c2341709b2b52fe9ee2512edab44721b00612b4f489f8dd67361c69ddc702a094aeb7dfd6fb6c15598a43c6ee4e6c530ead9525e4f5e4b59829b5ecfc18945cc +DIST botocore-1.35.22.gh.tar.gz 13397669 BLAKE2B 644cdd48d54a92fc8c2a1f024ee0e20662431f90f45340cf4ca50f2378c4cb8c0f322c2c86a1546ce0bac5b837295643a622816a2498fb643494a94b16f034c2 SHA512 5035a36bb8af933b871bb16ea617368058b3f4c6517f9bcc95291dcfe3cc479934aa70e5d746fc5fb7936d917f9e286cd5aefac271b27bbe25c49f267e87c9e6 diff --git a/dev-python/botocore/botocore-1.35.21.ebuild b/dev-python/botocore/botocore-1.35.21.ebuild new file mode 100644 index 000000000000..4f1ad852bdc1 --- /dev/null +++ b/dev-python/botocore/botocore-1.35.21.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 + +DESCRIPTION="Low-level, data-driven core of boto 3" +HOMEPAGE=" + https://github.com/boto/botocore/ + https://pypi.org/project/botocore/ +" +SRC_URI=" + https://github.com/boto/botocore/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + <dev-python/jmespath-2[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}] +" +# unbundled packages +RDEPEND+=" + dev-python/requests[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/jsonschema[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + # unpin deps + sed -i -e "s:>=.*':':" setup.py || die + + # unbundle deps + rm -r botocore/vendored || die + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=( + # rely on bundled six + tests/functional/test_six_imports.py::test_no_bare_six_imports + tests/functional/test_six_threading.py::test_six_thread_safety + ) + + case ${EPYTHON} in + python3.13) + EPYTEST_DESELECT+=( + # memory use tests, probably fragile + tests/functional/leak/test_resource_leaks.py::TestDoesNotLeakMemory + ) + ;; + esac + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest tests/{functional,unit} +} diff --git a/dev-python/botocore/botocore-1.35.22.ebuild b/dev-python/botocore/botocore-1.35.22.ebuild new file mode 100644 index 000000000000..4f1ad852bdc1 --- /dev/null +++ b/dev-python/botocore/botocore-1.35.22.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 + +DESCRIPTION="Low-level, data-driven core of boto 3" +HOMEPAGE=" + https://github.com/boto/botocore/ + https://pypi.org/project/botocore/ +" +SRC_URI=" + https://github.com/boto/botocore/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + <dev-python/jmespath-2[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}] +" +# unbundled packages +RDEPEND+=" + dev-python/requests[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/jsonschema[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + # unpin deps + sed -i -e "s:>=.*':':" setup.py || die + + # unbundle deps + rm -r botocore/vendored || die + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=( + # rely on bundled six + tests/functional/test_six_imports.py::test_no_bare_six_imports + tests/functional/test_six_threading.py::test_six_thread_safety + ) + + case ${EPYTHON} in + python3.13) + EPYTEST_DESELECT+=( + # memory use tests, probably fragile + tests/functional/leak/test_resource_leaks.py::TestDoesNotLeakMemory + ) + ;; + esac + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest tests/{functional,unit} +} diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest index c9577fac7229..a690ccef8c31 100644 --- a/dev-python/cfn-lint/Manifest +++ b/dev-python/cfn-lint/Manifest @@ -2,3 +2,4 @@ DIST cfn_lint-1.11.1.tar.gz 2415408 BLAKE2B c164f6cd520e4106ff9cfaaffdcb66860c3e DIST cfn_lint-1.12.4.tar.gz 2870663 BLAKE2B 90b1c2682a143108f077b1239171cb410657a33f1970e1f9fbc06774d1301ad0c28e364d7cf60163cb1d62a3c24221595e722db1fda5b79aebfd4fb321008396 SHA512 04092142a5de5da4cf2e94fe425c696cee3fd438fb569faa16bd390f3f3b8bfee63397a2aeedca99950eb656916b04456d59f2069c8479ce4c8acdffae01018a DIST cfn_lint-1.13.0.tar.gz 2378100 BLAKE2B a1fa12fe13df1f3f8c5e533c138036df7e2eae325641e7fd66a050a3bb81718caf353d867bf7bbc765942a93bb9025a97bd9691a5759f59118296c23daf7466e SHA512 eeec69657907cc145e533c390987f25374e9019a4c493d3a8ad98123f8db9445bac4890cbaef59b15af752d5a3437f75ea1687bc167198aec81ebb0a3c1ab097 DIST cfn_lint-1.14.0.tar.gz 2380297 BLAKE2B 27c72256f5ca353e40adb22c90754e37624962529a07e5f7b2af06a3c270d9a6b6e9721b1906de8992363dd42b66cba1b11f9e3c0f09e02cbd8c6f202f24eda8 SHA512 708d7776bc45bd5da722fda30b028f9ce403384ff584b0ea0aca47e1a002ddbb53845dc33db23ddb91e1b2984aee2a3c992c47357622c80a2954a9327c17ebae +DIST cfn_lint-1.14.1.tar.gz 2432006 BLAKE2B c59b5767dec67dd16a31878e2d9684b2aed77e20a7b6218c4fe4905667c2f031bfdd37e9a4e91090831bcf52891508d7b19bccc65cfdb3979e556f1a6b126408 SHA512 6277700dd6e7855bb555d920ce99085463495a8dae4d23d2310033ac3261edc7f134ef09ea170cbae7d6a1c321ab90e4fd397bdff3fadc5eef0ec3da065ad787 diff --git a/dev-python/cfn-lint/cfn-lint-1.14.1.ebuild b/dev-python/cfn-lint/cfn-lint-1.14.1.ebuild new file mode 100644 index 000000000000..086f03ea08df --- /dev/null +++ b/dev-python/cfn-lint/cfn-lint-1.14.1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="CloudFormation Linter" +HOMEPAGE=" + https://github.com/aws-cloudformation/cfn-lint/ + https://pypi.org/project/cfn-lint/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + +RDEPEND=" + >=dev-python/aws-sam-translator-1.91.0[${PYTHON_USEDEP}] + dev-python/jsonpatch[${PYTHON_USEDEP}] + >=dev-python/jschema-to-python-1.2.3[${PYTHON_USEDEP}] + <dev-python/jsonschema-5[${PYTHON_USEDEP}] + >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}] + dev-python/junit-xml[${PYTHON_USEDEP}] + <dev-python/networkx-4[${PYTHON_USEDEP}] + >dev-python/pyyaml-5.4[${PYTHON_USEDEP}] + >=dev-python/regex-2021.7.1[${PYTHON_USEDEP}] + >=dev-python/sarif-om-1.0.4[${PYTHON_USEDEP}] + >=dev-python/sympy-1.0.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/defusedxml[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_prepare() { + # unpin the deps + sed -e 's:~=[0-9.]*::' -i pyproject.toml || die + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=( + # TODO + test/unit/module/test_template.py::TestTemplate::test_build_graph + # requires git repo + test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs + # Internet + test/unit/module/formatters/test_formatters.py::TestFormatters::test_sarif_formatter + test/unit/module/maintenance/test_update_resource_specs.py::TestUpdateResourceSpecs::test_update_resource_specs_python_3 + # TODO: it looks as if AWS_DEFAULT_REGION didn't work + test/unit/module/core/test_run_cli.py::TestCli::test_bad_config + test/unit/module/core/test_run_cli.py::TestCli::test_override_parameters + test/unit/module/core/test_run_cli.py::TestCli::test_positional_template_parameters + test/unit/module/core/test_run_cli.py::TestCli::test_template_config + # different graphviz version? + test/unit/module/template/test_template.py::TestTemplate::test_build_graph + ) + + # from tox.ini + local -x AWS_DEFAULT_REGION=us-east-1 + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} diff --git a/dev-python/clang-python/Manifest b/dev-python/clang-python/Manifest index da671e73c02c..05cedfc4345b 100644 --- a/dev-python/clang-python/Manifest +++ b/dev-python/clang-python/Manifest @@ -8,6 +8,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/dev-python/clang-python/clang-python-19.1.0.ebuild b/dev-python/clang-python/clang-python-19.1.0.ebuild new file mode 100644 index 000000000000..9b3ee513e023 --- /dev/null +++ b/dev-python/clang-python/clang-python-19.1.0.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit llvm.org python-r1 + +DESCRIPTION="Python bindings for sys-devel/clang" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" +IUSE="test" +RESTRICT="!test? ( test )" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +# The module is opening libclang.so directly, and doing some blasphemy +# on top of it. +DEPEND=" + >=sys-devel/clang-${PV}:* + !sys-devel/llvm:0[clang(-),python(-)] + !sys-devel/clang:0[python(-)] +" +RDEPEND=" + ${DEPEND} + ${PYTHON_DEPS} +" +BDEPEND=" + ${PYTHON_DEPS} + test? ( + sys-devel/clang:${LLVM_MAJOR} + ) +" + +LLVM_COMPONENTS=( clang/bindings/python ) +llvm.org_set_globals + +python_test() { + # tests rely on results from a specific clang version, so override + # the search path + local -x CLANG_LIBRARY_PATH=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir) + local -x CLANG_NO_DEFAULT_CONFIG=1 + "${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}" +} + +src_test() { + python_foreach_impl python_test +} + +src_install() { + python_foreach_impl python_domodule clang +} diff --git a/dev-python/contourpy/contourpy-1.3.0.ebuild b/dev-python/contourpy/contourpy-1.3.0.ebuild index 1cbb8295cf6f..9b6198a6c433 100644 --- a/dev-python/contourpy/contourpy-1.3.0.ebuild +++ b/dev-python/contourpy/contourpy-1.3.0.ebuild @@ -21,13 +21,13 @@ SRC_URI=" LICENSE="BSD" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" RDEPEND=" >=dev-python/numpy-1.23[${PYTHON_USEDEP}] " BDEPEND=" - >=dev-python/pybind11-2.12.0[${PYTHON_USEDEP}] + >=dev-python/pybind11-2.13.1[${PYTHON_USEDEP}] test? ( dev-python/matplotlib[${PYTHON_USEDEP}] dev-python/pillow[${PYTHON_USEDEP}] diff --git a/dev-python/filelock/Manifest b/dev-python/filelock/Manifest index 869364d90493..70bb3897952e 100644 --- a/dev-python/filelock/Manifest +++ b/dev-python/filelock/Manifest @@ -1,2 +1,3 @@ DIST filelock-3.15.4.tar.gz 18007 BLAKE2B bf64d43b189453c8c1fcf258edefb2df340d20578d942d147197423c433cd6629d5e73615201d7ef84857450d7a4cf1375d0dfc69a422c4319a76f2dc157442f SHA512 d809df84f321ab9d99f46609cc664af2d9b73161906308e1a9f949c745694577901def228c40a860c606d652f9ecefe9014159eeea92266f94e981eecc4fe103 DIST filelock-3.16.0.tar.gz 18008 BLAKE2B 076880fb7c3db622b8391a89dd9bf85acaeec39abe7f189c65dfc72d6a6742727c9fd3cac727f397097e9688d9fc1c21a0e28334689db92091b66454c312464a SHA512 bda22692d3a6b034a825fff6917b0c12614ef2615ff52fd78072b1c76c1d1e6019d9d503faa0edf54efc39566279a941b19f34e9e87ccabb7fc8fadb1b3aa825 +DIST filelock-3.16.1.tar.gz 18037 BLAKE2B 29340ea0b5ade185a0d402a5cae304a2b3588d03ae543be26ed70b79bd1d0af67a30368ba43d87e16ac42d01b83ed1852316aaff87c11fe115ac35393a258231 SHA512 d935a01de58d219968795fa97a3ed9330285786fced2fde4474b3426cfc3da97c5b7a44a21c1f41185c1ce6a2a71514d259e990dce255be6b53e644449d575eb diff --git a/dev-python/filelock/filelock-3.16.1.ebuild b/dev-python/filelock/filelock-3.16.1.ebuild new file mode 100644 index 000000000000..8312a00e020a --- /dev/null +++ b/dev-python/filelock/filelock-3.16.1.ebuild @@ -0,0 +1,31 @@ +# Copyright 2018-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A platform independent file lock for Python" +HOMEPAGE=" + https://github.com/tox-dev/filelock/ + https://pypi.org/project/filelock/ +" + +LICENSE="Unlicense" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest diff --git a/dev-python/google-api-python-client/Manifest b/dev-python/google-api-python-client/Manifest index d20f2631fa42..a16c6961d2fa 100644 --- a/dev-python/google-api-python-client/Manifest +++ b/dev-python/google-api-python-client/Manifest @@ -1,3 +1,4 @@ DIST google_api_python_client-2.143.0.tar.gz 11695158 BLAKE2B bff768420c0303403268aff68059e81852da89e1a353bae23c86f17314842e17986b39d5c2410adc8991d3966b1c718e88a49a22ed0e222758928928c519077b SHA512 c977599521402fa3b63c432d8e058a4c5a2ac5cf15eadcba7d43200a2c5eb246bdd25a7fecb98ba3c2791d0d566a518d8274f9f77561d0fc7c78c7378a0b05c5 DIST google_api_python_client-2.144.0.tar.gz 11688778 BLAKE2B 98ca8b9d389876abf16c809f72a6ed907676ae6607acc82aa4656f8c05757459a478f820db6dc364eb7484a839f402c43c50136e254e5d0501eeeba1a1274a67 SHA512 3e6a9a59408f994dd8b5fa6ef5e49b069d907006a29c6631fdc25d6f2cc885cb919387b1cc385d6ecfccab450b4a4787787e401be9b2d7d97ba455595d72d297 DIST google_api_python_client-2.145.0.tar.gz 11714260 BLAKE2B eb672bdf74519f7dfd984412348ee0c62aa6a942acbb3182648bce2018af72ba6737924cb82c754a94c02f5b749c1bfdd07edb66bb2294b98e2b636cac7c2107 SHA512 33452e866798cd82f79e4d9a8708b4ca32a1e3118e37fbfe5b6e8b8b431167560c4175a5155499bca864fbdb59623368663e0025f71e8bd64b44e365ac889ad8 +DIST google_api_python_client-2.146.0.tar.gz 11690645 BLAKE2B 850f8b5b383ab8485b4b8aef77e94a18971498b51e1689aa707997931ba908e97e590681900beec42fc0f50adcbe8488657fbf0be0d8d5c6a55dc424a49ed86c SHA512 5789e69f1d279f8e53d40348af770aa03738853ebf19cfd4e50f23dca3412ca7d360993e4e00c4f0e654c65b3dbddfc2ffca069ebb26cc13b674bd622e90ae2a diff --git a/dev-python/google-api-python-client/google-api-python-client-2.146.0.ebuild b/dev-python/google-api-python-client/google-api-python-client-2.146.0.ebuild new file mode 100644 index 000000000000..58a0eb467bad --- /dev/null +++ b/dev-python/google-api-python-client/google-api-python-client-2.146.0.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Google API Client for Python" +HOMEPAGE=" + https://github.com/googleapis/google-api-python-client/ + https://pypi.org/project/google-api-python-client/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/httplib2-0.15[${PYTHON_USEDEP}] + <dev-python/httplib2-1[${PYTHON_USEDEP}] + >=dev-python/google-api-core-2.3.1[${PYTHON_USEDEP}] + >=dev-python/google-auth-1.35.0[${PYTHON_USEDEP}] + >=dev-python/google-auth-httplib2-0.1.0[${PYTHON_USEDEP}] + >=dev-python/uritemplate-3.0.0[${PYTHON_USEDEP}] + <dev-python/uritemplate-5[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/mock[${PYTHON_USEDEP}] + dev-python/pandas[${PYTHON_USEDEP}] + dev-python/parameterized[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # require Internet access (and credentials) + tests/test_discovery.py::DiscoveryErrors::test_credentials_and_credentials_file_mutually_exclusive + tests/test_discovery.py::DiscoveryFromDocument::test_api_endpoint_override_from_client_options_mapping_object + tests/test_discovery.py::Universe::test_client_options_universe_configured_with_mtls + tests/test_discovery.py::Universe::test_universe_env_var_configured_with_mtls + ) + + epytest tests +} diff --git a/dev-python/jaraco-collections/jaraco-collections-5.1.0.ebuild b/dev-python/jaraco-collections/jaraco-collections-5.1.0.ebuild index 6b2e5a0f229c..c83c120b90c0 100644 --- a/dev-python/jaraco-collections/jaraco-collections-5.1.0.ebuild +++ b/dev-python/jaraco-collections/jaraco-collections-5.1.0.ebuild @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" RDEPEND=" dev-python/jaraco-text[${PYTHON_USEDEP}] diff --git a/dev-python/jaraco-test/Manifest b/dev-python/jaraco-test/Manifest index 4bb20d6aab0f..a4d227779a21 100644 --- a/dev-python/jaraco-test/Manifest +++ b/dev-python/jaraco-test/Manifest @@ -1 +1,2 @@ DIST jaraco.test-5.4.0.tar.gz 8838 BLAKE2B 3abdff298a61015363bda3e52d3b5226993169128386dbb620487dcf8b29926c9be0415a2a263ad311db04a591d446b9e6efaece2ab2bfbe7b2781ee2e6dcdd6 SHA512 ab260c3c5ef16e83e8be0821cb735941764c06bb414c3f913bf337b62267b177f3102f7a87241b182ef20760fdcce98f4f9c705335b0744b69f9a296d5215b1b +DIST jaraco_test-5.5.1.tar.gz 10018 BLAKE2B 09562269a1fd14e099e8bca484f4def00986aa3999134f51f875a026fd5b2832979533e91fcff651d938cbe5c302377152e8bf2288b0afd61ef0a52644c65c92 SHA512 09b3303657ccd6882835e3c0c8e27a03f7c5cfc923318e7c4736eded0a0aa3461f043ab595af82a0bb0de33381924415fd382706ab0af6cea80554ca74873ee1 diff --git a/dev-python/jaraco-test/jaraco-test-5.5.1.ebuild b/dev-python/jaraco-test/jaraco-test-5.5.1.ebuild new file mode 100644 index 000000000000..d1ca70fa02ec --- /dev/null +++ b/dev-python/jaraco-test/jaraco-test-5.5.1.ebuild @@ -0,0 +1,47 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=${PN/-/.} +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Testing support by jaraco" +HOMEPAGE=" + https://github.com/jaraco/jaraco.test/ + https://pypi.org/project/jaraco.test/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/jaraco-collections[${PYTHON_USEDEP}] + dev-python/jaraco-context[${PYTHON_USEDEP}] + dev-python/jaraco-functools[${PYTHON_USEDEP}] + dev-python/test[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest + +src_test() { + # workaround namespaces blocking test.support import (sigh!) + mv jaraco/test jaraco_test || die + rmdir jaraco || die + distutils-r1_src_test +} + +python_test() { + # while technically these tests are skipped when Internet is + # not available (they test whether auto-skipping works), we don't + # want any Internet access whenever possible + local EPYTEST_DESELECT=( + tests/test_http.py::test_needs_internet + ) + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -m "not network" +} diff --git a/dev-python/jupyter-client/Manifest b/dev-python/jupyter-client/Manifest index 1e50bf347970..2869a7c4ba66 100644 --- a/dev-python/jupyter-client/Manifest +++ b/dev-python/jupyter-client/Manifest @@ -1 +1,2 @@ DIST jupyter_client-8.6.2.tar.gz 341102 BLAKE2B d9d04b6b965aa34f6b1dd228d1389a36509415e57cb66b4aede37963b6a48f5133c48e8343bbb54bd775b3faa59db8b248f515caca9dbbe594a9d4ba93a668d7 SHA512 ce0ae60b083ce0a37ddd0249d3caef0581ece61927ae685ee80b55d9431557352f1dce6cf81894d39343087b15cc6ac3449abe88cb4119a0d03824b3642f84ff +DIST jupyter_client-8.6.3.tar.gz 342019 BLAKE2B 5a478b62d64533e334f3a01ed820f9c41ffd3a8c6d9231d4822614b32c0898af32bf67fcafb5f26a62ab7fa172880bafdf2ff1169f06e1c483e8c3fe7d3f47e6 SHA512 10d7307335d07f383acbed30e44fe92284a6eab1dccdfe9107e5390c14350c2604a11ffd4a18ff811a5a93d9ce0492ac9a2fdc0402bd324c35ca12ad22405713 diff --git a/dev-python/jupyter-client/jupyter-client-8.6.3.ebuild b/dev-python/jupyter-client/jupyter-client-8.6.3.ebuild new file mode 100644 index 000000000000..1307e8cb8f8d --- /dev/null +++ b/dev-python/jupyter-client/jupyter-client-8.6.3.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( pypy3 python3_{10..13} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Jupyter protocol implementation and client libraries" +HOMEPAGE=" + https://jupyter.org/ + https://github.com/jupyter/jupyter_client/ + https://pypi.org/project/jupyter-client/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + +RDEPEND=" + >=dev-python/jupyter-core-5.1[${PYTHON_USEDEP}] + >=dev-python/python-dateutil-2.8.2[${PYTHON_USEDEP}] + >=dev-python/pyzmq-23.0[${PYTHON_USEDEP}] + >=dev-python/tornado-6.0[${PYTHON_USEDEP}] + dev-python/traitlets[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/importlib-metadata-4.8.3[${PYTHON_USEDEP}] + ' 3.{8,9}) +" +BDEPEND=" + test? ( + >=dev-python/ipykernel-6.14[${PYTHON_USEDEP}] + >=dev-python/pytest-asyncio-0.18[${PYTHON_USEDEP}] + >=dev-python/pytest-jupyter-0.4.1[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # TODO: times out + tests/test_client.py::TestAsyncKernelClient::test_input_request + # TODO + tests/test_multikernelmanager.py::TestKernelManager::test_tcp_cinfo + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -o tmp_path_retention_policy=all \ + -p asyncio -p rerunfailures --reruns=3 -p timeout +} diff --git a/dev-python/keyring/Manifest b/dev-python/keyring/Manifest index 9f4a627ce5d5..7e953ae1c0d1 100644 --- a/dev-python/keyring/Manifest +++ b/dev-python/keyring/Manifest @@ -1,2 +1,3 @@ DIST keyring-24.3.1.tar.gz 60454 BLAKE2B cb0a9b82163febbbd737f2f25353bf96cbb7b8a87c7db00523960b3fce5595c6af65bc02b7d070b0fa5a466fc53530975de8f7a44ab9a9f783d2db34b1a67901 SHA512 53f26763175c7f1de041d8805062696ef3ef6c79792cdc75ae72621da8e729ac4cbb6e76937db2a0a5ce4bc41ab92c164d62e4627f92edab8c0d0fc02ca4980e DIST keyring-25.3.0.tar.gz 61495 BLAKE2B 3286c2de8a2113ccdace88c44f40adfebcd42d08cdcc314a2067ea9911e63a193b68947ccce106a521cf4e54b96887db4ba06a76dece536f72af608473ec5f1a SHA512 80f3be5990f18aced25d6f75a8ca2b2033930a6bc622d44ab8732dfdf17343bfc9a19e5818dd170ce5c8a528b87f911522ed94c0237ce8fb2f39f97b6ad2ceda +DIST keyring-25.4.0.tar.gz 62307 BLAKE2B 0f1f6f72f7d844c5a45389b3c6d78459d8c308982c4e86bb7af8e524f758a1c26ad94886eb214f6318485022ee1c46df7060a2ba9d0d0163d68077efd0e2faba SHA512 ac971ab9317866cab85b9507f2b1016c6de6f8523a4c25e866ef2b06b31bd34cffd9f8dfe51c911a0ea791c80f3f40cb3493ae3d35f1ea46f74f1763ddf2f101 diff --git a/dev-python/keyring/keyring-25.4.0.ebuild b/dev-python/keyring/keyring-25.4.0.ebuild new file mode 100644 index 000000000000..6253b57dcaf9 --- /dev/null +++ b/dev-python/keyring/keyring-25.4.0.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Provides access to the system keyring service" +HOMEPAGE=" + https://github.com/jaraco/keyring/ + https://pypi.org/project/keyring/ +" + +LICENSE="PSF-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + +RDEPEND=" + >=dev-python/secretstorage-3.2[${PYTHON_USEDEP}] + dev-python/jaraco-classes[${PYTHON_USEDEP}] + dev-python/jaraco-context[${PYTHON_USEDEP}] + dev-python/jaraco-functools[${PYTHON_USEDEP}] + >=dev-python/jeepney-0.4.2[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/importlib-metadata-4.11.4[${PYTHON_USEDEP}] + ' 3.10 3.11) +" +BDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + test? ( + dev-python/pyfakefs[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # this test fails if importlib-metadata returns more than one + # entry, i.e. when keyring is installed already + tests/test_packaging.py::test_entry_point + ) + local EPYTEST_IGNORE=( + # apparently does not unlock the keyring properly + tests/backends/test_libsecret.py + # hangs + tests/backends/test_kwallet.py + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -o addopts= +} diff --git a/dev-python/lit/Manifest b/dev-python/lit/Manifest index da671e73c02c..05cedfc4345b 100644 --- a/dev-python/lit/Manifest +++ b/dev-python/lit/Manifest @@ -8,6 +8,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/dev-python/lit/lit-19.1.0.ebuild b/dev-python/lit/lit-19.1.0.ebuild new file mode 100644 index 000000000000..75b7c01e4ef3 --- /dev/null +++ b/dev-python/lit/lit-19.1.0.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 llvm.org + +DESCRIPTION="A stand-alone install of the LLVM suite testing tool" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +# Tests require 'FileCheck' and 'not' utilities (from llvm) +BDEPEND=" + test? ( + dev-python/psutil[${PYTHON_USEDEP}] + sys-devel/llvm + ) +" + +LLVM_COMPONENTS=( llvm/utils/lit ) +llvm.org_set_globals + +# TODO: move the manpage generation here (from sys-devel/llvm) + +src_prepare() { + # flaky test + # https://github.com/llvm/llvm-project/issues/72022 + rm tests/progress-bar.py || die + + cd "${WORKDIR}" || die + distutils-r1_src_prepare +} + +python_test() { + local -x LIT_PRESERVES_TMP=1 + local litflags=$(get_lit_flags) + ./lit.py ${litflags//;/ } tests || die +} diff --git a/dev-python/mkdocs-material/Manifest b/dev-python/mkdocs-material/Manifest index 9f76e7a05aad..5b14688789ee 100644 --- a/dev-python/mkdocs-material/Manifest +++ b/dev-python/mkdocs-material/Manifest @@ -1,2 +1,3 @@ DIST mkdocs-material-9.5.33.gh.tar.gz 14905512 BLAKE2B 474852be4b975a72a2429ab1b072eadea9b3e6549f0132e307da03aed657924d928391205b6953e445590bf53a79b8c405116b93eed099a9a9a174f9b66f5d3a SHA512 2a414c0e5c3160224ec445d7ed6b366ea18667a31110be1b310b5487abdf1b3d3a4b6f44b3d2ccae401f9d850a847a85ae3e3ef2a41ebe5f62f5c5a955a9713a DIST mkdocs-material-9.5.34.gh.tar.gz 14766308 BLAKE2B 62371c082fe6d1d42d01cc315f2e0e5a0de24ee3faff173d940b797ca7f43f20985e4025e90ba385dbf38ef7ff2b76bbae0831558d07dcafd5a5493597e223ed SHA512 ac6e2fcf96a0591513222a81046d66547cdf3a9b64acf29e7482aa93be3d7a2ceeb8ad779e9bcbd12ae9fc527414ae11cd70f07ae85b4c2b0104cade29ebe646 +DIST mkdocs-material-9.5.35.gh.tar.gz 14791440 BLAKE2B d6cd4826e4a9f57e7c1790063e1b6aaff3524b07f532bb6ca705186e633b345d3526a4ea8423c7456a342536f7a6253e5add0b9491fdfaa61a932039905d28c9 SHA512 d35ad9ee7140de4d22eee4a6cf75d2cd522dc13394ef8be4cc2360291ea4a78f7489f014917beae7d9484103f6c6642e9e71d556839c5f523921588a7b001d8a diff --git a/dev-python/mkdocs-material/mkdocs-material-9.5.35.ebuild b/dev-python/mkdocs-material/mkdocs-material-9.5.35.ebuild new file mode 100644 index 000000000000..0aabdac3ae43 --- /dev/null +++ b/dev-python/mkdocs-material/mkdocs-material-9.5.35.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{10..13} ) + +DOCS_BUILDER="mkdocs" +DOCS_DEPEND=" + dev-python/mkdocs-material-extensions + dev-python/mkdocs-minify-plugin + dev-python/mkdocs-redirects +" + +inherit distutils-r1 docs + +DESCRIPTION="A Material Design theme for MkDocs" +HOMEPAGE=" + https://github.com/squidfunk/mkdocs-material/ + https://pypi.org/project/mkdocs-material/ +" +SRC_URI=" + https://github.com/squidfunk/${PN}/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="social" + +RDEPEND=" + >=dev-python/Babel-2.10.3[${PYTHON_USEDEP}] + >=dev-python/colorama-0.4[${PYTHON_USEDEP}] + >=dev-python/jinja-3.0.2[${PYTHON_USEDEP}] + >=dev-python/lxml-4.6[${PYTHON_USEDEP}] + >=dev-python/markdown-3.2[${PYTHON_USEDEP}] + >=dev-python/mkdocs-1.5.3[${PYTHON_USEDEP}] + >=dev-python/paginate-0.5.6[${PYTHON_USEDEP}] + >=dev-python/pygments-2.16[${PYTHON_USEDEP}] + >=dev-python/pymdown-extensions-10.2[${PYTHON_USEDEP}] + >=dev-python/readtime-2.0[${PYTHON_USEDEP}] + >=dev-python/regex-2022.4.24[${PYTHON_USEDEP}] + >=dev-python/requests-2.26[${PYTHON_USEDEP}] + social? ( + >=dev-python/pillow-10.2[${PYTHON_USEDEP}] + >=media-gfx/cairosvg-2.5[${PYTHON_USEDEP}] + ) +" +BDEPEND=" + >=dev-python/trove-classifiers-2023.10.18[${PYTHON_USEDEP}] +" +# mkdocs-material-extensions depends on mkdocs-material creating a circular dep +PDEPEND=" + >=dev-python/mkdocs-material-extensions-1.2[${PYTHON_USEDEP}] +" + +PATCHES=( + # simplify pyproject to remove extra deps for metadata + "${FILESDIR}/${PN}-8.5.7-simplify-build.patch" +) + +src_prepare() { + echo "__version__ = '${PV}'" > gentoo_version.py || die + distutils-r1_src_prepare +} diff --git a/dev-python/pipdeptree/Manifest b/dev-python/pipdeptree/Manifest index ae24d0d4ee6c..f655de43c491 100644 --- a/dev-python/pipdeptree/Manifest +++ b/dev-python/pipdeptree/Manifest @@ -4,3 +4,4 @@ DIST pipdeptree-2.22.0.tar.gz 39555 BLAKE2B 6aae7c6a22176dbfcc5184086c37b0237629 DIST pipdeptree-2.23.0.tar.gz 39737 BLAKE2B 79fe45880f2942b2ded1d16e2767c4005aca52e0768a5723f37f764c7a60a8104a237ffe2a559f631bf760310143814b0e4afbaf1e5f3ef927828036c320da43 SHA512 9c5fdf7c6d3e519357d4aeb40f4aa2807dfec8fb387114cf40d99469becc68c5042af09f2cdebcca868dd78f3a3c1602b349dfe6cb581758c5c73efc3f6e52c6 DIST pipdeptree-2.23.1.tar.gz 39883 BLAKE2B 63b578cc466871dda284f66bacc7e262b18157e5fb98e3a884c5e3eddd6945ad3d41a95e2e24fc23d0917e902f0e9ead152259d5ddc919e77e2940c2e2933119 SHA512 bc62c9cf6ee01bb8167477a21c70a7dd4ae1141c1c0690a1e95aea49cd4cb7d7e18bf076a532b00b79014a23c069df8aa09ac1bfd2d328b57e444192f1b10e5d DIST pipdeptree-2.23.3.tar.gz 39804 BLAKE2B deabb55937cca02bad8040c6625cbe2e1688af9fa349d7e74923d73c484022818a28074921d5811f0d8e9189184185829ea4dc4e3004ed5456fcc9ed340de2f5 SHA512 26b5d08a24e297d6f30f3a479ae7f93a71b12cf4bc5ae25ff907f96bf7bef8e5403654b359d79e81aed79fec7961e2b8c4db984e5222f677a33839a125e59343 +DIST pipdeptree-2.23.4.tar.gz 39945 BLAKE2B 6f1aaf4652b872a28712cf23fb06c26c9e36baf2c5c734b542d418d78081c19f567c730944fba33b43cf6ad612ecd54f37f625a81e88fc8bb68e3e56d76d9088 SHA512 3beeeceb11f842e5f337167b724354b43b01f972f83b0bac5168504483a079e15758206a8e141dc88e4810954630bff1b1cdec3e69aa2f981b9ec2896e40428d diff --git a/dev-python/pipdeptree/pipdeptree-2.23.4.ebuild b/dev-python/pipdeptree/pipdeptree-2.23.4.ebuild new file mode 100644 index 000000000000..108d23b345f5 --- /dev/null +++ b/dev-python/pipdeptree/pipdeptree-2.23.4.ebuild @@ -0,0 +1,56 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit distutils-r1 pypi optfeature + +DESCRIPTION="Utility for displaying installed packages in a dependency tree" +HOMEPAGE=" + https://github.com/tox-dev/pipdeptree/ + https://pypi.org/project/pipdeptree/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv" + +RDEPEND=" + >=dev-python/packaging-23.1[${PYTHON_USEDEP}] + >=dev-python/pip-23.1.2[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + dev-python/graphviz[${PYTHON_USEDEP}] + >=dev-python/pytest-console-scripts-1.4.1[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # upstream lower bounds are meaningless + sed -i -e 's:>=[0-9.]*::' pyproject.toml || die + + find -name '*.py' -exec \ + sed -i -e 's:pip[.]_vendor[.]::' {} + || die +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -p pytest_mock -p console-scripts +} + +pkg_postinst() { + optfeature \ + "visualising the dependency graph with --graph-output" \ + dev-python/graphviz +} diff --git a/dev-python/platformdirs/Manifest b/dev-python/platformdirs/Manifest index 2bd6c6eb7eec..d67b6ee9566b 100644 --- a/dev-python/platformdirs/Manifest +++ b/dev-python/platformdirs/Manifest @@ -2,3 +2,4 @@ DIST platformdirs-4.2.2.tar.gz 20916 BLAKE2B d7c551a950118a127664b8210f33497760c DIST platformdirs-4.3.1.tar.gz 21236 BLAKE2B 852d402831ad6060c6efc3841dd56a8484aca547e820ad9b46cc838d92f560407a769a01942bf03c31949e4b37240d292358617afdfa0dd7ea03eeba6bc62086 SHA512 6d4cd808190808bab5a90f44d9fe2fda0d624c7a76faf9f4a4a6093cd098a28b79782dbf895dcd0eeb82778aa094deeb0959fcbe25bdd93818a47b9e197b6299 DIST platformdirs-4.3.2.tar.gz 21276 BLAKE2B 9bd9a2b3258e2fe411062895bbcc5036c77d95e092df81c9b9b113f64b4568ee44623a747048c9011e9465fb22600db9256e4900c7710a75fc27cf19c07732c7 SHA512 0bad11558f3d60f1476cdcd36a405c7218b9ce68342e3a78f95936356d91fcaaa869549503cc35055d9ce3b3eec219a980ba35e814dd3706fb4b7812aff04dd4 DIST platformdirs-4.3.3.tar.gz 21304 BLAKE2B 94248b49ab0b0ea7c43231c15c3f479c1ea0a82242a9d274b6e6b71559710f1d3bbd8ad89083c89f7627956a983ad2902cbf33b8b99a12a1481214a969fcc292 SHA512 0dc8b8585c4130660a779a1846a4d468a182dfcc0f03700001242f1eb78ba2bd9799777f6ac29367034ed23c66f1af4eda4f294201197d6444d6fdd92e7f93a1 +DIST platformdirs-4.3.6.tar.gz 21302 BLAKE2B 3488d33c70c420a7234fa773a7b61eaabc85e7aabfa75c9de308074ef653b534823a133038eb8098d41f987596d7fa6c70abd6cdde28234590261ecd6c8a9f56 SHA512 8a14126346f5472798074bd9ef73b39cd0c6517951556f7ab839d2c1993d8001a3359101fe3a7a00e803d8a5540cf33057d99e1a2e93b1bd5e20a948c89e4e44 diff --git a/dev-python/platformdirs/platformdirs-4.3.6.ebuild b/dev-python/platformdirs/platformdirs-4.3.6.ebuild new file mode 100644 index 000000000000..7b2b77a80661 --- /dev/null +++ b/dev-python/platformdirs/platformdirs-4.3.6.ebuild @@ -0,0 +1,54 @@ +# Copyright 2021-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A small Python module for determining appropriate platform-specific dirs" +HOMEPAGE=" + https://pypi.org/project/platformdirs/ + https://github.com/tox-dev/platformdirs/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +BDEPEND=" + test? ( + dev-python/appdirs[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "hatchling' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "${PN}" + version = "${PV}" + description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".' + EOF + # sigh + cat > src/platformdirs/version.py <<-EOF || die + __version__ = version = '${PV}' + __version_tuple__ = version_tuple = (${PV//./, }) + EOF +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -p pytest_mock +} diff --git a/dev-python/podman/Manifest b/dev-python/podman/Manifest index c1ce992c1b9b..2652166a275a 100644 --- a/dev-python/podman/Manifest +++ b/dev-python/podman/Manifest @@ -1 +1,2 @@ DIST podman-py-5.0.0.gh.tar.gz 183844 BLAKE2B c2c5511815d37321a843dfe028839592f6e9b4cc580263e743b6a2ee0917b3307b77bf4d08b327781c6d765c231d8bfcc4d1e0027351c4297509433405887552 SHA512 3abcc4c989843fb82a09e32359018cb9b3352f014253def4bec46a7336c95405b50fe774192d2f4625748351c57293b70d393eb85671719833c0a9f1311612ed +DIST podman-py-5.2.0.gh.tar.gz 186468 BLAKE2B d993e50817c6251dae4fcff8bdd9b4d125b5f96b2d5a690922ea5294cc739e2132edd4878b1dca26e1ffb7deef1e971f94a6e34c1b869dbe412c7965b49b2973 SHA512 6189415d644cf74868ccc5d560414fa876c1e0525ca028e7436a804ffe3a1219dead37223619e3d248da455856989407482638856b68cabeaf3ca4f02a9cf25c diff --git a/dev-python/podman/podman-5.2.0.ebuild b/dev-python/podman/podman-5.2.0.ebuild new file mode 100644 index 000000000000..1d7ad260600f --- /dev/null +++ b/dev-python/podman/podman-5.2.0.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 + +MY_P=podman-py-${PV/_p/.post} +DESCRIPTION="A library to interact with a Podman server" +HOMEPAGE=" + https://github.com/containers/podman-py/ + https://pypi.org/project/podman/ +" +SRC_URI=" + https://github.com/containers/podman-py/archive/v${PV/_p/.post}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND=" + >=dev-python/requests-2.24[${PYTHON_USEDEP}] + >=dev-python/rich-12.5.1[${PYTHON_USEDEP}] + dev-python/urllib3[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/tomli-1.2.3[${PYTHON_USEDEP}] + ' 3.10) +" +BDEPEND=" + test? ( + >=dev-python/requests-mock-1.11.0[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # TODO + podman/tests/unit/test_volumesmanager.py::VolumesManagerTestCase::test_get_404 + ) + + # integration tests require a workable podman server, + # and it doesn't seem to work in ebuild env + epytest podman/tests/unit +} diff --git a/dev-python/pydantic/Manifest b/dev-python/pydantic/Manifest index 448301d0989a..060af0873830 100644 --- a/dev-python/pydantic/Manifest +++ b/dev-python/pydantic/Manifest @@ -3,3 +3,4 @@ DIST pydantic-2.8.2.tar.gz 739834 BLAKE2B d0168db26e02ac9fcf01fe85cd70c982e74f18 DIST pydantic-2.9.0.tar.gz 768298 BLAKE2B f196274c37af4b14b0ee17a5274d784a56ad2b2721ca022f572209348edb7e342ace1744e980ac5a8df0d8d7f9642d3157297f3cad24073b133ebb328b589673 SHA512 e4e2b961e831c1461446c1914176a5fca4b573ed5df7a4e5f1fe956b94568bf982e0ed0ee3ab8e08b518817b40dc76a24aaff95453a25e736890e5f0b30549d9 DIST pydantic-2.9.0b2.tar.gz 767194 BLAKE2B 407bbadc4cb8f962cb331a9ccdfa70dd96729830a4c5532962105889536ac436f50552d3d6bac4e6840d44fc7c0ef2e94e1cab4b54be1565ac636436ca8a9b0a SHA512 a0d2491c14f58bbd376545551b128c0c396713a4a73786ac004ee4a0ff9b65a220c22f93aaa11239181bd87a600bc9b10c7d594b23286b909e8e6ea397eea81c DIST pydantic-2.9.1.tar.gz 768511 BLAKE2B 37d840042933a3fc3976ada31c2c1a26a127f64fd928ac8014c9e5047d5c30f29ab23a0f023c2d19c9daec7976c6f66c8dd1d0bd5f2507cff26f7aa0f103a30a SHA512 b35241a0956f41bfcb9f61f34a5fead2c88a266a721d0dea584068f58c72fceda1a70236ca1f3c242c9ef22ac8f7e444b48e212088a3e7e7754008652a028664 +DIST pydantic-2.9.2.tar.gz 769917 BLAKE2B 4e34fda6a9e8e8331278d0b7d0c2dfd61bde637c126fa6dabf78a09c6ef993f84dc8df6af421c8fb6d69c8e1c387a40e4bcd38cbe02f5ac521c6c70821735763 SHA512 2aace9e79a98bd94e5dc626736a245051912a11fdce36013d2ad2f96b266052386a3e12b259dca30ddc38b63c6b00b5bcc9cd5e80f7805de4d8701064f0982aa diff --git a/dev-python/pydantic/pydantic-2.9.2.ebuild b/dev-python/pydantic/pydantic-2.9.2.ebuild new file mode 100644 index 000000000000..55fae02778fc --- /dev/null +++ b/dev-python/pydantic/pydantic-2.9.2.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Data parsing and validation using Python type hints" +HOMEPAGE=" + https://github.com/pydantic/pydantic/ + https://pypi.org/project/pydantic/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/annotated-types-0.6.0[${PYTHON_USEDEP}] + ~dev-python/pydantic-core-2.23.4[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.12.2[${PYTHON_USEDEP}] + dev-python/tzdata[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/hatch-fancy-pypi-readme-22.5.0[${PYTHON_USEDEP}] + test? ( + dev-python/cloudpickle[${PYTHON_USEDEP}] + dev-python/dirty-equals[${PYTHON_USEDEP}] + >=dev-python/email-validator-2.0.0[${PYTHON_USEDEP}] + >=dev-python/Faker-18.13.0[${PYTHON_USEDEP}] + >=dev-python/jsonschema-4.23.0[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/pytz[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_prepare() { + sed -i -e '/benchmark/d' pyproject.toml || die + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=() + local EPYTEST_IGNORE=( + # require pytest-examples + tests/test_docs.py + # benchmarks + tests/benchmarks + ) + + if ! has_version "dev-python/cloudpickle[${PYTHON_USEDEP}]"; then + EPYTEST_IGNORE+=( + tests/test_pickle.py + ) + fi + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -p pytest_mock +} diff --git a/dev-python/pymongo/Manifest b/dev-python/pymongo/Manifest index b3dd01f0d787..f1db3916f207 100644 --- a/dev-python/pymongo/Manifest +++ b/dev-python/pymongo/Manifest @@ -1,2 +1,3 @@ DIST mongo-python-driver-4.7.2.gh.tar.gz 1548375 BLAKE2B a40dbe153f36cdf2836583aa0116f447d08376ce7980a09d0f21cea37a34ab318e5ff0b34b7fe1721cf7fc5d5443a1dbe0982d59cb941b0da8a4a99abdc7b19d SHA512 1de8bd14301e365eb53252dedaaaf8c9056dd534662543e2a500511e5f5f67a69e1f11a8a8575efdbd8852bb47b632d59762f66024d32973d20dc17c4448b9be DIST mongo-python-driver-4.8.0.gh.tar.gz 1550149 BLAKE2B 9462480b17f3da54918883fbcb28a4324e6a00a9c2c34b16267ebcd378170f7fd34ec7290f7a0e3c4c38a5f1f803428cb6a0c64a562d956b3a19c37130697012 SHA512 17513a278187424fea1876d288651e385be759f23eebceca8d04a15182b15ffd64956193bb53e4a90e8b2197c2ebbade274737091f5d2e5fb4398539674c41df +DIST mongo-python-driver-4.9.1.gh.tar.gz 1937311 BLAKE2B 9312c7df50f86dad7dd713b34aba0a87dd9f878b115b3c00ae9e0825c883c869f57e0d55d552b1b4bf9715930840a540572b451d296e185085c4c0c707855811 SHA512 e616418c90088bfc328505dea315a225bfcc942fa29dcc348d3b80d0fb329b7e8fe9d6164c0e13a0562e6126535cc7d04c2cf497a39a04071f6db8af3c8ed1f1 diff --git a/dev-python/pymongo/pymongo-4.9.1.ebuild b/dev-python/pymongo/pymongo-4.9.1.ebuild new file mode 100644 index 000000000000..45c60a630e6e --- /dev/null +++ b/dev-python/pymongo/pymongo-4.9.1.ebuild @@ -0,0 +1,228 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit check-reqs distutils-r1 + +MY_P=mongo-python-driver-${PV} +DESCRIPTION="Python driver for MongoDB" +HOMEPAGE=" + https://github.com/mongodb/mongo-python-driver/ + https://pypi.org/project/pymongo/ +" +SRC_URI=" + https://github.com/mongodb/mongo-python-driver/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc kerberos +native-extensions +test-full" + +RDEPEND=" + <dev-python/dnspython-3.0.0[${PYTHON_USEDEP}] + kerberos? ( dev-python/kerberos[${PYTHON_USEDEP}] ) +" +BDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + test-full? ( + >=dev-db/mongodb-2.6.0 + ) + ) +" + +distutils_enable_sphinx doc +distutils_enable_tests pytest + +reqcheck() { + if use test && use test-full; then + # During the tests, database size reaches 1.5G. + local CHECKREQS_DISK_BUILD=1536M + + check-reqs_${1} + fi +} + +pkg_pretend() { + reqcheck pkg_pretend +} + +pkg_setup() { + reqcheck pkg_setup +} + +src_prepare() { + distutils-r1_src_prepare + # we do not want hatch-requirements-txt and its ton of NIH deps + sed -i -e '/requirements/d' pyproject.toml || die +} + +python_compile() { + # causes build errors to be fatal + local -x TOX_ENV_NAME=whatever + local DISTUTILS_ARGS=() + # unconditionally implicitly disabled on pypy3 + if ! use native-extensions; then + export NO_EXT=1 + else + export PYMONGO_C_EXT_MUST_BUILD=1 + unset NO_EXT + fi + + distutils-r1_python_compile +} + +python_test() { + rm -rf bson pymongo || die + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local EPYTEST_DESELECT=( + # network-sandbox + test/asynchronous/test_client.py::AsyncClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver + test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_logging + test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_warning + test/asynchronous/test_client.py::TestClient::test_service_name_from_kwargs + test/asynchronous/test_client.py::TestClient::test_srv_max_hosts_kwarg + test/test_client.py::ClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver + test/test_client.py::ClientUnitTest::test_detected_environment_logging + test/test_client.py::ClientUnitTest::test_detected_environment_warning + test/test_client.py::TestClient::test_service_name_from_kwargs + test/test_client.py::TestClient::test_srv_max_hosts_kwarg + test/test_dns.py::TestCaseInsensitive::test_connect_case_insensitive + test/test_srv_polling.py + test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_custom_srvServiceName + test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_invalid_type_for_srvMaxHosts + test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_negative_integer_for_srvMaxHosts + test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_positive_srvMaxHosts_and_loadBalanced=fa + test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts + test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_loadBalanced=true + test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_replicaSet + + # broken regularly by changes in mypy + test/test_typing.py::TestMypyFails::test_mypy_failures + + # fragile to timing? fails because we're getting too many logs + test/test_connection_logging.py::TestConnectionLoggingConnectionPoolOptions::test_maxConnecting_should_be_included_in_connection_pool_created_message_when_specified + + # hangs? + test/asynchronous/test_grid_file.py::AsyncTestGridFile::test_small_chunks + ) + + local run_separately=( + # need to run some tests separately and then restart mongodb + # to prevent it from crashing + # https://bugs.gentoo.org/934389 + # note that this list must not overlap with EPYTEST_DESELECT + test/test_bulk.py + test/test_change_stream.py + test/test_collection.py + test/test_crud_unified.py + test/test_gridfs.py + test/test_gridfs_bucket.py + ) + local run_separately2=( + test/test_command_monitoring.py + test/test_connection_monitoring.py + test/test_cursor.py + test/test_database.py + test/test_grid_file.py + test/test_monitoring.py + ) + local run_separately_async=( + test/asynchronous/test_database.py + test/asynchronous/test_grid_file.py + ) + + if ! use test-full; then + # .invalid is guaranteed to return NXDOMAIN per RFC 6761 + local -x DB_IP=mongodb.invalid + epytest + return + fi + + # Yes, we need TCP/IP for that... + local -x DB_IP=127.0.0.1 + local -x DB_PORT=27000 + + local dbpath=${TMPDIR}/mongo.db + local logpath=${TMPDIR}/mongod.log + + local stage failed= + for stage in {1..5}; do + # Now, the hard part: we need to find a free port for mongod. + # We're just trying to run it random port numbers and check the log + # for bind errors. It shall be noted that 'mongod --fork' does not + # return failure when it fails to bind. + + mkdir -p "${dbpath}" || die + while true; do + ebegin "Trying to start mongod on port ${DB_PORT}" + + LC_ALL=C \ + mongod --dbpath "${dbpath}" --nojournal \ + --bind_ip ${DB_IP} --port ${DB_PORT} \ + --unixSocketPrefix "${TMPDIR}" \ + --logpath "${logpath}" --fork \ + && sleep 2 + + # Now we need to check if the server actually started... + if [[ ${?} -eq 0 && -S "${TMPDIR}"/mongodb-${DB_PORT}.sock ]]; then + # yay! + eend 0 + break + elif grep -q 'Address already in use' "${logpath}"; then + # ay, someone took our port! + eend 1 + : $(( DB_PORT += 1 )) + continue + else + eend 1 + eerror "Unable to start mongod for tests. See the server log:" + eerror " ${logpath}" + die "Unable to start mongod for tests." + fi + done + + local async=( -p asyncio -m default_async ) + local def=( -p asyncio -m "default or encryption" ) + case ${stage} in + 1) + nonfatal epytest "${def[@]}" "${run_separately[@]}" || failed=1 + ;; + 2) + nonfatal epytest "${def[@]}" "${run_separately2[@]}" || failed=1 + ;; + 3) + EPYTEST_DESELECT+=( + "${run_separately[@]}" + "${run_separately2[@]}" + ) + nonfatal epytest "${def[@]}" || failed=1 + ;; + 4) + nonfatal epytest "${async[@]}" "${run_separately_async[@]}" || failed=1 + ;; + 5) + EPYTEST_DESELECT+=( + "${run_separately_async[@]}" + ) + nonfatal epytest "${async[@]}" || failed=1 + ;; + esac + + mongod --dbpath "${dbpath}" --shutdown || die + done + + [[ ${failed} ]] && die "Tests fail with ${EPYTHON}" + + rm -rf "${dbpath}" || die +} diff --git a/dev-python/pyopengl/Manifest b/dev-python/pyopengl/Manifest index 819e62cac925..a5d4d4e20cc4 100644 --- a/dev-python/pyopengl/Manifest +++ b/dev-python/pyopengl/Manifest @@ -1 +1,2 @@ DIST PyOpenGL-3.1.7.tar.gz 1896446 BLAKE2B 3fd4c84bb59157b4a6ee09c2a5ecd0e4f548bf03a84d735acfd92453eafb92102677a2b9c98831a92be33e873630c815dee453745d630a4d6b044771a13c945c SHA512 add1b4d02e7297f00f82a9c9249d6665029073fe620a1650491af9102a76a16e9320b5f227275b0c273ff5a616c284fd9f25f0f425848676c37cab9f3c22ae2e +DIST pyopengl-3.1.8.gh.tar.gz 3599436 BLAKE2B 7f33345d68d66d3cc81278eaa5f54298694f41f40583ee08a1f9f677705fb4414b6b2afbcd7b9345199b5f573478bfeba050e185b6534cbb19b45cb25c241b47 SHA512 d95014a36bd889fa014043e4640ba7f319bb996cb56e5f7086ee05d39c53d3928512d52b0ce181d7c144775a4da7eff7403cada0f91f23f56a699a1b023e00e6 diff --git a/dev-python/pyopengl/files/pyopengl-3.1.8-fix-version.patch b/dev-python/pyopengl/files/pyopengl-3.1.8-fix-version.patch new file mode 100644 index 000000000000..7017dd79a451 --- /dev/null +++ b/dev-python/pyopengl/files/pyopengl-3.1.8-fix-version.patch @@ -0,0 +1,17 @@ +https://github.com/mcfletch/pyopengl/issues/123 +--- a/OpenGL/version.py ++++ b/OpenGL/version.py +@@ -1,2 +1,2 @@ + """Declares the current version for use in setuptools and the like""" +-__version__ = "3.1.7" ++__version__ = "3.1.8" +--- a/accelerate/OpenGL_accelerate/__init__.py ++++ b/accelerate/OpenGL_accelerate/__init__.py +@@ -6,5 +6,5 @@ wrapper mechanism. The source code is part of the + PyOpenGL package and is built via the setupaccel.py + script in the top level of the PyOpenGL source package. + """ +-__version__ = "3.1.7" +-__version_tuple__ = (3, 1, 7) ++__version__ = "3.1.8" ++__version_tuple__ = (3, 1, 8) diff --git a/dev-python/pyopengl/pyopengl-3.1.8.ebuild b/dev-python/pyopengl/pyopengl-3.1.8.ebuild new file mode 100644 index 000000000000..955bd7218309 --- /dev/null +++ b/dev-python/pyopengl/pyopengl-3.1.8.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYPI_PN=PyOpenGL +PYTHON_REQ_USE="tk?" +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit distutils-r1 virtualx + +DESCRIPTION="Python OpenGL bindings" +HOMEPAGE=" + https://pyopengl.sourceforge.net/ + https://github.com/mcfletch/pyopengl/ + https://pypi.org/project/PyOpenGL/ +" +# 3.1.8 is missing from pypi: https://github.com/mcfletch/pyopengl/issues/123 +SRC_URI="https://github.com/mcfletch/pyopengl/archive/refs/tags/release-${PV}.tar.gz -> ${P}.gh.tar.gz" +S="${WORKDIR}"/${PN}-release-${PV} + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux" +IUSE="tk" + +RDEPEND=" + media-libs/freeglut + virtual/opengl + x11-libs/libXi + x11-libs/libXmu + tk? ( dev-tcltk/togl ) +" +DEPEND=" + ${RDEPEND} +" + +# The tests need an X server with the GLX extension. Software rendering +# under Xvfb works but only with llvmpipe, not softpipe or swr. +BDEPEND=" + test? ( + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/pygame[${PYTHON_USEDEP},opengl,X] + !prefix? ( + media-libs/mesa[llvm] + x11-base/xorg-server[-minimal,xorg] + ) + ) +" + +distutils_enable_tests pytest + +PATCHES=( + # https://github.com/mcfletch/pyopengl/pull/109 + "${FILESDIR}/${PN}-3.1.7-pypy3.patch" + # https://github.com/mcfletch/pyopengl/issues/123 + "${FILESDIR}/${P}-fix-version.patch" +) + +python_test() { + local EPYTEST_DESELECT=( + # unreliable memory counting test + tests/test_vbo_memusage.py::test_sf_2980896 + ) + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + + nonfatal epytest tests || die "Tests failed with ${EPYTHON}" +} + +src_test() { + virtx distutils-r1_src_test +} diff --git a/dev-python/pyopengl_accelerate/Manifest b/dev-python/pyopengl_accelerate/Manifest index ffaefcbf0395..2d9c91367cba 100644 --- a/dev-python/pyopengl_accelerate/Manifest +++ b/dev-python/pyopengl_accelerate/Manifest @@ -1 +1,2 @@ DIST pyopengl-release-3.1.7.gh.tar.gz 3310131 BLAKE2B 37d64a0e0f3ced1965a7285ac7a0afb774b1e5ef630e42d86e40bb65176af7f0aa44accee50d3b32eb87a13c76535a3239359ea2c5bea385e20f1b1ec1a8b636 SHA512 a6cd28b15964e55e8a808477138ad03eb212501d9f4723603c405932963aedca83b91ff19e510ca181cc9800f2a22968b2913b70a975b7797f3bcad112c6c0b4 +DIST pyopengl-release-3.1.8.gh.tar.gz 3599436 BLAKE2B 7f33345d68d66d3cc81278eaa5f54298694f41f40583ee08a1f9f677705fb4414b6b2afbcd7b9345199b5f573478bfeba050e185b6534cbb19b45cb25c241b47 SHA512 d95014a36bd889fa014043e4640ba7f319bb996cb56e5f7086ee05d39c53d3928512d52b0ce181d7c144775a4da7eff7403cada0f91f23f56a699a1b023e00e6 diff --git a/dev-python/pyopengl_accelerate/pyopengl_accelerate-3.1.8.ebuild b/dev-python/pyopengl_accelerate/pyopengl_accelerate-3.1.8.ebuild new file mode 100644 index 000000000000..ae2f3ee96966 --- /dev/null +++ b/dev-python/pyopengl_accelerate/pyopengl_accelerate-3.1.8.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 + +MY_P=pyopengl-release-${PV} +DESCRIPTION="Accelerate module for PyOpenGL" +HOMEPAGE=" + https://pyopengl.sourceforge.net/ + https://github.com/mcfletch/pyopengl/ + https://pypi.org/project/PyOpenGL-accelerate/ +" +SRC_URI=" + https://github.com/mcfletch/pyopengl/archive/release-${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P}/accelerate + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="numpy" + +DEPEND=" + numpy? ( + dev-python/numpy[${PYTHON_USEDEP}] + ) +" +RDEPEND=" + ${DEPEND} + dev-python/pyopengl[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/cython[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest + +src_configure() { + rm src/*.c || die + + if ! use numpy; then + cat > "${T}"/numpy.py <<-EOF || die + raise ImportError("building numpy extension disabled") + EOF + fi +} + +python_compile() { + local -x PYTHONPATH=${T}:${PYTHONPATH} + distutils-r1_python_compile +} + +python_test() { + cd "${T}" || die + epytest "${S}"/tests +} diff --git a/dev-python/pypdf/Manifest b/dev-python/pypdf/Manifest index fcc9008a135d..3fbcac15c7ec 100644 --- a/dev-python/pypdf/Manifest +++ b/dev-python/pypdf/Manifest @@ -1,2 +1,3 @@ DIST pypdf-4.3.1.gh.tar.gz 8016393 BLAKE2B 1ff64b79dda008c92670188e174940137da5af721e169e3a45f4784aa5fdd41f9b679701009f9fa59ac31a401786cece8315d72bd7942ca5af8b05e4ed4564be SHA512 17e1b127efe744a0ff2e9733295effcbab8e497d65cae3cb821646df1c0178991771910f0ef0b4f72525d980d840bfdc4290a05ea191669887f2122ec3521825 +DIST pypdf-5.0.0.gh.tar.gz 8020126 BLAKE2B 81f1eab322365c52fde063908f474d3a4ae75f888b3e3adcbc083bb189fb0e0046ea8399da101d2725ddb2c2b605766a3a84f236619d290cb592c375dcff30c0 SHA512 f346414b232150c527b623f883f85e2c9010ff189cc41da3bcf7ce8718f529f5285a4a3af6d480115e68baf7a8b12a05bf6ec78c9ca9f346eff9ffba0b9785bd DIST pypdf-sample-files-8c405ece5eff12396a34a1fae3276132002e1753.gh.tar.gz 11748093 BLAKE2B c5989200893b28a3c2062bb024a5cfc6f3389dc259ec129857979fa43469e1274559612b4d555499e2c7e16cf34be07825229932bf4d147fa6d7324d043e97d5 SHA512 c9771129b7668a2fd1fa79bb859ae9213f3d60341cf1b9937ff0eaab0de9bf4c35adcb7b896e93329038dc0f3809a0c697c523f8fe41b43030b0b029a88058e3 diff --git a/dev-python/pypdf/pypdf-5.0.0.ebuild b/dev-python/pypdf/pypdf-5.0.0.ebuild new file mode 100644 index 000000000000..86a783051785 --- /dev/null +++ b/dev-python/pypdf/pypdf-5.0.0.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 + +SAMPLE_COMMIT=8c405ece5eff12396a34a1fae3276132002e1753 +DESCRIPTION="Python library to work with PDF files" +HOMEPAGE=" + https://pypi.org/project/pypdf/ + https://github.com/py-pdf/pypdf/ +" +SRC_URI=" + https://github.com/py-pdf/pypdf/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + test? ( + https://github.com/py-pdf/sample-files/archive/${SAMPLE_COMMIT}.tar.gz + -> ${PN}-sample-files-${SAMPLE_COMMIT}.gh.tar.gz + ) +" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +RDEPEND=" + $(python_gen_cond_dep ' + >=dev-python/typing-extensions-4.0[${PYTHON_USEDEP}] + ' 3.10) +" +BDEPEND=" + test? ( + dev-python/cryptography[${PYTHON_USEDEP}] + >=dev-python/pillow-8.0.0[jpeg,jpeg2k,tiff,zlib,${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_unpack() { + default + if use test; then + mv "sample-files-${SAMPLE_COMMIT}"/* "${S}"/sample-files/ || die + fi +} + +python_test() { + local EPYTEST_DESELECT=( + tests/test_reader.py::test_decode_permissions + tests/test_workflows.py::test_text_extraction_layout_mode + # rely on -Werror + tests/test_utils.py::test_deprecate_no_replacement + tests/test_workflows.py::test_orientations + tests/test_writer.py::test_remove_image_per_type + tests/test_generic.py::test_name_object + # Internet + tests/test_generic.py::test_calling_indirect_objects + tests/test_writer.py::test_increment_writer + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -o addopts= -m "not enable_socket" +} diff --git a/dev-python/pyproject-api/Manifest b/dev-python/pyproject-api/Manifest index 5e56a747aa86..559eb8fd6b19 100644 --- a/dev-python/pyproject-api/Manifest +++ b/dev-python/pyproject-api/Manifest @@ -1 +1,3 @@ DIST pyproject_api-1.7.1.tar.gz 22271 BLAKE2B 833001e4638594e61ba8dd97e2e62dffd25650cc30cbcdb9367f09605e128733d7c8945afeadc5ba16d15e932da0cc60eee2715eeef21290c04a73f74165e748 SHA512 e016d612578f46dbb5ab9d406d01513d8e1528524dcb58c4ebe76c5d7518289da187bed0e500d382b37aaac0e38236d54a88e7cc1f3a2a6876088b26d17337a8 +DIST pyproject_api-1.7.2.tar.gz 22353 BLAKE2B 483400bd8c79da5e3eb54ee42bcb74e6507824f3f7bfcbf5a9172c942af7488dd9896e55eba8b4153e250ddc549df8e0f56576e63b6ce472c1bbc2e0ea8ae344 SHA512 4e331249e0a6e38bcf0baa4143c0fef455e91e3b1c422233b813aa3fcbe81a7f67ce3c6f969a313e636ae19dbc4192e59add946fb57dc43907d27538116573d8 +DIST pyproject_api-1.8.0.tar.gz 22340 BLAKE2B 7087b04045870ab6ec62dbd93ca59fbab6a9200f1eb20140ac28355b6f88a719961949f06c1cb888b4ef2d9ad61c2f533cf4e361c64e34c04faf6d0db7762090 SHA512 9a598179cb31694c862a91040c453d767ecbddd7aed4156f044d6684316294e962bdaaff646cd8c9cf15af204efc9a03dbc781058610c334c7ea2f2df54f1883 diff --git a/dev-python/pyproject-api/pyproject-api-1.7.2.ebuild b/dev-python/pyproject-api/pyproject-api-1.7.2.ebuild new file mode 100644 index 000000000000..7ebc016f7130 --- /dev/null +++ b/dev-python/pyproject-api/pyproject-api-1.7.2.ebuild @@ -0,0 +1,43 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="API to interact with the python pyproject.toml based projects" +HOMEPAGE=" + https://github.com/tox-dev/pyproject-api/ + https://pypi.org/project/pyproject-api/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/packaging-24.1[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] + ' 3.{9..10}) +" +BDEPEND=" + >=dev-python/hatch-vcs-0.3.0[${PYTHON_USEDEP}] + test? ( + >=dev-python/pytest-mock-3.11.1[${PYTHON_USEDEP}] + >=dev-python/setuptools-68.1.2[${PYTHON_USEDEP}] + >=dev-python/wheel-0.40.2[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # hardcodes assumptions specific to setuptools-70.1.0 + tests/test_frontend_setuptools.py::test_setuptools_get_requires_for_build_wheel + # some minor formatting mismatch + tests/test_frontend_setuptools.py::test_setuptools_prepare_metadata_for_build_wheel +) diff --git a/dev-python/pyproject-api/pyproject-api-1.8.0.ebuild b/dev-python/pyproject-api/pyproject-api-1.8.0.ebuild new file mode 100644 index 000000000000..7ebc016f7130 --- /dev/null +++ b/dev-python/pyproject-api/pyproject-api-1.8.0.ebuild @@ -0,0 +1,43 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="API to interact with the python pyproject.toml based projects" +HOMEPAGE=" + https://github.com/tox-dev/pyproject-api/ + https://pypi.org/project/pyproject-api/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/packaging-24.1[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] + ' 3.{9..10}) +" +BDEPEND=" + >=dev-python/hatch-vcs-0.3.0[${PYTHON_USEDEP}] + test? ( + >=dev-python/pytest-mock-3.11.1[${PYTHON_USEDEP}] + >=dev-python/setuptools-68.1.2[${PYTHON_USEDEP}] + >=dev-python/wheel-0.40.2[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # hardcodes assumptions specific to setuptools-70.1.0 + tests/test_frontend_setuptools.py::test_setuptools_get_requires_for_build_wheel + # some minor formatting mismatch + tests/test_frontend_setuptools.py::test_setuptools_prepare_metadata_for_build_wheel +) diff --git a/dev-python/pyproject-fmt/Manifest b/dev-python/pyproject-fmt/Manifest index c2d3df247513..a0388098d533 100644 --- a/dev-python/pyproject-fmt/Manifest +++ b/dev-python/pyproject-fmt/Manifest @@ -3,3 +3,4 @@ DIST pyproject_fmt-2.1.4.tar.gz 9023 BLAKE2B 1a44332ea829efb22d7b561abef1f362f7e DIST pyproject_fmt-2.2.0.tar.gz 9135 BLAKE2B e4ea7a11168257978fb607a7c1dcb6e9450d139c7db5f2e45fe065ddbd5e6edfca97b4f7dd80bd7cd632068ae86cca7ef7efbd2850cac4237065319f554c5366 SHA512 97d4e8e881b39fd47f0b2b96b413e6f4462bf35e4a9797811487931188bbfcb971e744012ebee545ede0ff94d7ebf2abee0b97b965ed452628c49c69fd47070e DIST pyproject_fmt-2.2.1.tar.gz 9175 BLAKE2B 8968163f175c22a7532a8f582d522708a4c5740a682a617fd8539009a5409d0d6f6f5679c754ac6023047923837675191c35906d0876b4e728d00e135cfd3c5a SHA512 ac2dea741cff18e0a12daf6e0076b1fc42bdb097f10a8f49a8d131fc37e4c16f811b95fb537e0c0a852eaa6fcc8c6efd9331be3087748720fc436daee0c7285d DIST pyproject_fmt-2.2.3.tar.gz 9157 BLAKE2B a9cc1771c05d504fa0e7321f1c97cfd09f44a39ec7bdadbbba31f0fbe62b955a1689aa2ff8edb0274e5f352cca872591babd7f6c62189cf5bee1567ffb1f306d SHA512 404b038aa7d189d17e2c1df873e4bc50a199dcb193c064e19eb54a5f671fdcdc2c51ce9b19dff10e6c0dda089aee7070f7408892b6ca393abc2ed5b5ff666812 +DIST pyproject_fmt-2.2.4.tar.gz 9140 BLAKE2B 19397db0f7e2a51391f99824645c73361eaa60e2430fe22f9aec85b7273d232ae8aab8d96e1276f93c7fa8612a768fa7bf66f207c4bf73e92e69d3f0f62c8b22 SHA512 54dd02060c93040ef09f23751e0ef6c853a892df077ca012717b4586dede5081365ee4df1daaf98095af364a0e9406e9a5afde74158d5dc6715425bed58db254 diff --git a/dev-python/pyproject-fmt/pyproject-fmt-2.2.4.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-2.2.4.ebuild new file mode 100644 index 000000000000..6596694032a6 --- /dev/null +++ b/dev-python/pyproject-fmt/pyproject-fmt-2.2.4.ebuild @@ -0,0 +1,36 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Format your pyproject.toml file" +HOMEPAGE=" + https://github.com/tox-dev/pyproject-fmt/ + https://pypi.org/project/pyproject-fmt/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + ~dev-python/pyproject-fmt-rust-1.1.6[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] + ' 3.10) +" +# tox is called as a subprocess, to get targets from tox.ini +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + >=dev-python/pytest-mock-3.10[${PYTHON_USEDEP}] + dev-python/tox + ) +" + +distutils_enable_tests pytest diff --git a/dev-python/pytest-env/Manifest b/dev-python/pytest-env/Manifest index a69c5d927b62..0c18df4cac45 100644 --- a/dev-python/pytest-env/Manifest +++ b/dev-python/pytest-env/Manifest @@ -1,2 +1,3 @@ DIST pytest_env-1.1.3.tar.gz 8627 BLAKE2B 04aee8a84b2224ce1f0bb018d0d5a8f8542d32aa3e3da0ed03afdace2562b1643f712152128f7d673e118a4db9ab10c7440f44728ba774519ceb989b4c9be7f2 SHA512 c38371a272987757774bed6b566b55ba2304ca37e69f3f5671fb03735bbdfe5e51c3b03cd885d6bdbd73496daa95a57d79e03bf5d9171f0e9c5c0ae38492b304 DIST pytest_env-1.1.4.tar.gz 8898 BLAKE2B 8e6d9af2de86af47b5429e64112f7bbd4824fa54a7ffd2a7deb63da2032f6104587594a9efcddfc56a4dd7ef969b1a6cb4150906c029437c960ad02b0e215513 SHA512 9cde819b4f68f1a19de58c86651427c608b160bdfb6b6e12c6f4b90f195a759573e442d92df08f70b807282d4b47a7c078fa0b4674433d8778a9b8fb5552209e +DIST pytest_env-1.1.5.tar.gz 8911 BLAKE2B 77195479f0a7bfe7b82b164f30c73e37f05002b33b19b605a056f476d02dedf8ed7eb0e116fe88c00dff2732f31d271539389eb790bcd4602c62f93e732530e9 SHA512 8f7df6d823067f55b3e761acee76744dc64e2e0f0c1e19ef5ab4db3215e92843279742782e654e652af025126f6c31ba86a54e3ef9e2223ca6057fbdc136ddd1 diff --git a/dev-python/pytest-env/pytest-env-1.1.5.ebuild b/dev-python/pytest-env/pytest-env-1.1.5.ebuild new file mode 100644 index 000000000000..bfda9aab1b32 --- /dev/null +++ b/dev-python/pytest-env/pytest-env-1.1.5.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="pytest plugin that allows you to add environment variables" +HOMEPAGE=" + https://github.com/pytest-dev/pytest-env/ + https://pypi.org/project/pytest-env/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~x86" + +RDEPEND=" + >=dev-python/pytest-7.4.2[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] + ' 3.10) +" +BDEPEND=" + >=dev-python/hatch-vcs-0.3[${PYTHON_USEDEP}] + test? ( + >=dev-python/pytest-mock-3.10.0[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # upstream lower bounds are meaningless + sed -i -e 's:>=[0-9.]*::' pyproject.toml || die +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} diff --git a/dev-python/pytest-httpbin/Manifest b/dev-python/pytest-httpbin/Manifest index d7f45743003d..3d0dfa08d053 100644 --- a/dev-python/pytest-httpbin/Manifest +++ b/dev-python/pytest-httpbin/Manifest @@ -1 +1,2 @@ DIST pytest-httpbin-2.0.0.gh.tar.gz 19799 BLAKE2B 7725bc958417c076ee920abce83bdad8295bc4c9551500040867650d54c306e79a1ea92b013124b793058103fc9685dbb2202be5f1b2da935509f68457d63d68 SHA512 62876590bacae6601739f5cc2eccb087024e16731afc9613b5e6928c2a2f64b73418ddcb3c4f13a4bfe1f074510f922d85411d05ebf66f123a4a09d535771b64 +DIST pytest-httpbin-2.1.0.gh.tar.gz 13140 BLAKE2B d1108b8464dbc1075007b4695810afe46fed17b51a785f12dfa184ba27efcfe88818ab8073c050334398eecfd647cd9169ef2d053e3fb424a02ece8a8d8c1518 SHA512 849985f170318ea3ad1d2af8811f3e3fef0e62bd6bdc611f061a8cd7d84a2d85d0ba9caf8c97298e1c99b979b08f1a28476927fa7abc1fa57334732ecfbdf2db diff --git a/dev-python/pytest-httpbin/pytest-httpbin-2.1.0.ebuild b/dev-python/pytest-httpbin/pytest-httpbin-2.1.0.ebuild new file mode 100644 index 000000000000..302d6d0a6faf --- /dev/null +++ b/dev-python/pytest-httpbin/pytest-httpbin-2.1.0.ebuild @@ -0,0 +1,34 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="Easily test your HTTP library against a local copy of httpbin" +HOMEPAGE=" + https://github.com/kevin1024/pytest-httpbin/ + https://pypi.org/project/pytest-httpbin/ +" +SRC_URI=" + https://github.com/kevin1024/pytest-httpbin/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" + +RDEPEND=" + dev-python/httpbin[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/requests[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest diff --git a/dev-python/python-tests/Manifest b/dev-python/python-tests/Manifest index f6af53db9fce..bddd9d4c83b6 100644 --- a/dev-python/python-tests/Manifest +++ b/dev-python/python-tests/Manifest @@ -16,9 +16,13 @@ DIST Python-3.13.0rc2.tar.xz 21055084 BLAKE2B 017ac82c1938d1fea0a501efb9d1848115 DIST Python-3.13.0rc2.tar.xz.asc 963 BLAKE2B bb75db12c424b7a05c8c0082f79c1ab6e2ad04440a27d2c964edc073fbdc1c0ac442b0b2a0719a33f8058bc7bc9097eb22e031299f8de5b6d88b74e4e5ece8a8 SHA512 6d80d089b55910628744d21b0382b6441d0550c139dbee71d68a7cd9e494bff1c8235a2a894f3c7a52f9af312480a4001f333e04c9054f32db7eefd2a7d39263 DIST python-gentoo-patches-3.10.14_p3.tar.xz 22080 BLAKE2B f45ebe4df3dc39a842c93d741ef66fd0f9f7d1c6453d499d59b62eda41f01bc17e109205fedc506963d1f21eb3fbf9478564ff5e1a11c10336f855069a642ceb SHA512 db268f1482e5c46a71ce3aef2c2ab6d458cc5263aec360e61c6aff97f119f4f100becefbb575156b1b0239e591a496cb62a136597fadae8a5b630c7233c0040a DIST python-gentoo-patches-3.10.15.tar.xz 15896 BLAKE2B f908b409dbcedeb4e2fa7255d9dedfb8f86f39b9b12612d45662d2305012692753874befa5377e1bcb2e8fc04b54bf206948e12eb7bc357a764c1b1e496e5997 SHA512 a647882ede8d7b97e301e472e91f4573dce9f8bf4e408449444625fdf79859a54fd828daa60c7960721f34c3d6d82e2e45db2c55f2fc093097a0db42f7363b8c +DIST python-gentoo-patches-3.10.15_p1.tar.xz 24048 BLAKE2B 191c28ad9bc781d6f3077870e8d40ff98a47a64009ecfbbd10fe2b3c5330692181837fd3e9b336fd01f936a39160fc12761b2ef9bc00843248ab978cda2e2767 SHA512 4461e351c991694415e2812e558d6c3d3f79295358623dc955bc0839691a170d95a3efd31c0bf9f0d6191e4184d7b55fdb485b948d591782fef5b060d7660cce DIST python-gentoo-patches-3.11.10.tar.xz 8484 BLAKE2B 844aa7a855e3ab5a6307c6bfac9d58faad249ce550d21e8526125dc56b9665dc6fa00530a60efe8f851397d368057400851906e59fec10f6325bd83a51e39317 SHA512 bb602b80eed62ca8477b05665267ec3729fd9a85d9b709f844ad729f496d008a529d05d2ebfe8acb5db5ccb99005260bfe458f6ce0d9d358530670e0970e415e +DIST python-gentoo-patches-3.11.10_p1.tar.xz 10592 BLAKE2B 1cc02d22b55cb76beba133c37e6db3b9ba12b11cd8776acb064f14431842405cbc9efb5a06319cff1c73d9178ddbbe2e340829d4628c88a9589aa2fc1d308f80 SHA512 7ddb08e4d8a9173a26fa18de687a4c85c3d460e2bc595da6f4b15cfe3be264ccdc7d61d5fed1e7a82f256d21caf3ea7de87f774fde61a9d37bed15f86f546adb DIST python-gentoo-patches-3.11.9_p2.tar.xz 14916 BLAKE2B a910eae412fc1ce3657272c3c2ea9ef95b8d5711ed4c85b93a35f4ab757b1134bff0f8c8a0071e8e06aac784d0b51e36cd9271f892098cba272da4a4e73317d1 SHA512 5c055186b3a8376f4f602ec5d1f8e7bf0f067bc67295c1cdaa68ce1fb6fb21cda75e22705b8a5a2a6525af67f3b36a82fde5ba6ae9b097a5914ab79a2f1a0fad DIST python-gentoo-patches-3.12.5_p1.tar.xz 8632 BLAKE2B 13570bb465002cea3590b06d055b936ac0fcc68f6f258aca99a67f02f0b1cd28396424b686c5e080f593a74a744ff449e7220f51f167a858b2313be4c8b64b19 SHA512 eb9fb2d48236a9f7941fb8938310cc32d216eb01e19277175223b8b1fe1bfd606bde9a3c8bc66ad2e494fb87ce23b0d1acd359c375e4a11a5caae25450c11360 DIST python-gentoo-patches-3.12.6.tar.xz 6048 BLAKE2B 577032d7aa4bab423781bffad8e64f56b492dc31fbd20acd91f3d28356bd697603dfd47a3a9051538dde2af942ae513727ecea415d82f5082a992bd22b8cb2dd SHA512 6f1037e97bb362a3d04c3ec080dc062c5de6e4b779cda0d88f684422d757acd6fc6f971c7004a3f50bbc0161dd28c3146672f74e0e598066f9a8ba4e0eb2627e +DIST python-gentoo-patches-3.12.6_p2.tar.xz 8144 BLAKE2B 2f36ce972e0b3e2884c9df629e3aeb1af05e4c77dffb866ff28e08a0a7df3c7cf36a9de250d148d909c07fd5bad483c95b3267818657c04e7d0d6fe512e21f9a SHA512 caa86c6cf693f9293b3aa8944452d117b78c1c3f8d6a6aa658cb5c2d2ffb0cecc6cf14b293872bd2101766ee7167ba88183904b2814090f8cbc64c1fa3b771be DIST python-gentoo-patches-3.13.0rc1_p3.tar.xz 15148 BLAKE2B 668060644372e8ddf2d9686796ec304ae7689f5c10ecbc6862f054f96504c418b0e4df28675e4fbb610889f9a665a7a54f23633036b0df35f19f40ef8e6bab32 SHA512 c0cbdf9e0fe2ad29175302e548ebfda1d2af42af0ffeb363eb8b0dc53e1059f5abd7dcd02fd8e9eb9ba7bef2b34b7693633f0a62dc1ab933f43077feacf00fbc DIST python-gentoo-patches-3.13.0rc2.tar.xz 5696 BLAKE2B 4e716d1d6225e811b598d029ef1dbdc413df614ef00ab8051ea697e633477a0114a3660cae037bdf4142f76c9f2efdefc25b604af11c31eb77d6d98d8f932cff SHA512 c20b53772bd7d305562657722aec70de78fffbf8ab7939f59d496e06c21b31fcd7b4a92573b1000d3bee4d90fd8b7422543f9cfdad15d60bc9a7ecf2a2259599 +DIST python-gentoo-patches-3.13.0rc2_p1.tar.xz 7360 BLAKE2B be41dfc96c333ca19a4a21f0931287503094676d1eba1e9e5ae86bf07be571fb7ddaf75eab87dc2ce9364ea1861ca5307ae1b8cdbe2c6f9a1a0e351f42f0fb97 SHA512 38b8b5f5ec21d3cf02a4db43929f4dd870200bde655b9b3acd0f398ed0468f9e43996821510cebb5e01b5633afc7e6fc254b0c80062bb577a044d85e25d28ff2 diff --git a/dev-python/python-tests/python-tests-3.10.15_p1.ebuild b/dev-python/python-tests/python-tests-3.10.15_p1.ebuild new file mode 100644 index 000000000000..56e7dde80a4c --- /dev/null +++ b/dev-python/python-tests/python-tests-3.10.15_p1.ebuild @@ -0,0 +1,74 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_10 ) + +inherit python-r1 verify-sig + +MY_PV=${PV} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="Test modules from dev-lang/python" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}/Lib" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + ~dev-lang/python-${PV}:${PYVER} + !<dev-lang/python-3.10.14_p3-r1:${PYVER} +" +BDEPEND=" + ${RDEPEND} + verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + cd .. || die + default +} + +src_install() { + python_setup + # keep in sync with TESTSUBDIRS in Makefile.pre.in + local dirs=( + ctypes/test distutils/tests idlelib/idle_test lib2to3/tests + sqlite3/test ./test tkinter/test unittest/test + ) + local dir + for dir in "${dirs[@]}"; do + python_moduleinto "/usr/lib/python${PYVER}/${dir%/*}" + python_domodule "${dir}" + done +} diff --git a/dev-python/python-tests/python-tests-3.11.10_p1.ebuild b/dev-python/python-tests/python-tests-3.11.10_p1.ebuild new file mode 100644 index 000000000000..8e3bf062dff3 --- /dev/null +++ b/dev-python/python-tests/python-tests-3.11.10_p1.ebuild @@ -0,0 +1,74 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_11 ) + +inherit python-r1 verify-sig + +MY_PV=${PV} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="Test modules from dev-lang/python" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}/Lib" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + ~dev-lang/python-${PV}:${PYVER} + !<dev-lang/python-3.11.9_p2-r1:${PYVER} +" +BDEPEND=" + ${RDEPEND} + verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + cd .. || die + default +} + +src_install() { + python_setup + # keep in sync with TESTSUBDIRS in Makefile.pre.in + local dirs=( + ctypes/test distutils/tests idlelib/idle_test lib2to3/tests + ./test tkinter/test unittest/test + ) + local dir + for dir in "${dirs[@]}"; do + python_moduleinto "/usr/lib/python${PYVER}/${dir%/*}" + python_domodule "${dir}" + done +} diff --git a/dev-python/python-tests/python-tests-3.12.6_p2.ebuild b/dev-python/python-tests/python-tests-3.12.6_p2.ebuild new file mode 100644 index 000000000000..b2a3254a3e50 --- /dev/null +++ b/dev-python/python-tests/python-tests-3.12.6_p2.ebuild @@ -0,0 +1,69 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_12 ) + +inherit python-r1 verify-sig + +MY_PV=${PV} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="Test modules from dev-lang/python" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}/Lib" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + ~dev-lang/python-${PV}:${PYVER} + !<dev-lang/python-3.12.5_p1-r1:${PYVER} +" +BDEPEND=" + ${RDEPEND} + verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + cd .. || die + default +} + +src_install() { + python_setup + # keep in sync with TESTSUBDIRS in Makefile.pre.in + python_moduleinto "/usr/lib/python${PYVER}" + python_domodule test + python_moduleinto "/usr/lib/python${PYVER}/idlelib" + python_domodule idlelib/idle_test +} diff --git a/dev-python/python-tests/python-tests-3.13.0_rc2_p1.ebuild b/dev-python/python-tests/python-tests-3.13.0_rc2_p1.ebuild new file mode 100644 index 000000000000..34d84eddd7b6 --- /dev/null +++ b/dev-python/python-tests/python-tests-3.13.0_rc2_p1.ebuild @@ -0,0 +1,69 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_13 ) + +inherit python-r1 verify-sig + +MY_PV=${PV/_} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="Test modules from dev-lang/python" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}/Lib" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + ~dev-lang/python-${PV}:${PYVER} + !<dev-lang/python-3.13.0_rc1_p3-r1:${PYVER} +" +BDEPEND=" + ${RDEPEND} + verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + cd .. || die + default +} + +src_install() { + python_setup + # keep in sync with TESTSUBDIRS in Makefile.pre.in + python_moduleinto "/usr/lib/python${PYVER}" + python_domodule test + python_moduleinto "/usr/lib/python${PYVER}/idlelib" + python_domodule idlelib/idle_test +} diff --git a/dev-python/simsimd/Manifest b/dev-python/simsimd/Manifest index ba7b6491785c..aaf5bfcd25d5 100644 --- a/dev-python/simsimd/Manifest +++ b/dev-python/simsimd/Manifest @@ -1,3 +1,2 @@ -DIST SimSIMD-5.1.4.gh.tar.gz 149847 BLAKE2B 49aa9cfcee079b415d504989345be48c0b055e34dabd69240fdc02a35f51da81f25ab78fa27831e411d3853bca8b586314eae6840068715ec6a9c76c874162d6 SHA512 a656a71076d35c62cebe3d0cb2fc5eae87d9f13cb7a4427d74cb2959e813b4ff387ec30fe9a68e72e529fd0a76de468178652da1bba3b164eeb9f34df7d5d410 -DIST SimSIMD-5.2.1.gh.tar.gz 153081 BLAKE2B 2454d2266ca6d1b3302f4bf347dcc85d5c0750561e7d34906d5e7e2303e4cd0a7279d10f3065a63eeb14aedc6cd584510d29f29e60f7f57cd178a3066a4e28b8 SHA512 8263aada695ce68a1eb671c46a294fd317f9bb5d3a3ec5b4a8ab27b8b8ea5801c639b6bac3ba889bd6153444c76b7fa6d2982c25003af4cdfd0d8bc007b783f8 DIST SimSIMD-5.3.0.gh.tar.gz 158052 BLAKE2B 31ef8c66812a53ddeac612dc990ae2181a339369522eb459c9e792641aef3484521352c514fa90795608595ce73b3f7bfe160cf86f318d6910e9544b75d94df4 SHA512 2e8e3e3f00897b3866bc9ee649c060ac3c891365a76be22d6f4c2a9e40755f37be93d713598d18019acf0f5129fab6dadfa68b7b1cbef90c77a9cd60ec18ec4d +DIST SimSIMD-5.4.0.gh.tar.gz 160232 BLAKE2B 06b3af449a6992d5203f15be1a3edf67e1d6299012d399a09a5e2e3cdf82a4e20706f5d5eebfc2450eb415f9d1bf20550fe2c6a54da1bac33e7d5e22f199893d SHA512 cb1d190218dc86cc39f6343ebd7d396006d5d97eeba3f6eabac8c17bbbe9903e8e215d9968e9c3be35af475dc14579e746183216e56fa94118dc4d6e6adc17a1 diff --git a/dev-python/simsimd/simsimd-5.1.4.ebuild b/dev-python/simsimd/simsimd-5.1.4.ebuild deleted file mode 100644 index 57068eba549d..000000000000 --- a/dev-python/simsimd/simsimd-5.1.4.ebuild +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright 2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( pypy3 python3_{10..13} ) - -inherit distutils-r1 toolchain-funcs - -MY_P=SimSIMD-${PV} -DESCRIPTION="Fastest SIMD-Accelerated Vector Similarity Functions for x86 and Arm" -HOMEPAGE=" - https://github.com/ashvardanian/SimSIMD/ - https://pypi.org/project/simsimd/ -" -# no sdist, as of 4.3.1 -# https://github.com/ashvardanian/SimSIMD/issues/113 -SRC_URI=" - https://github.com/ashvardanian/SimSIMD/archive/v${PV}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~amd64" -IUSE="openmp" - -BDEPEND=" - test? ( - dev-python/pytest-repeat[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi -} - -src_prepare() { - sed -i -e '/-O3/d' setup.py || die - if ! use openmp; then - sed -i -e '/-fopenmp/d' setup.py || die - fi - - distutils-r1_src_prepare -} - -python_test() { - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -p repeat python/test.py -} diff --git a/dev-python/simsimd/simsimd-5.2.1.ebuild b/dev-python/simsimd/simsimd-5.4.0.ebuild index 633192d3f2c5..633192d3f2c5 100644 --- a/dev-python/simsimd/simsimd-5.2.1.ebuild +++ b/dev-python/simsimd/simsimd-5.4.0.ebuild diff --git a/dev-python/sphinx-autodoc-typehints/Manifest b/dev-python/sphinx-autodoc-typehints/Manifest index 9534bbb0d989..625da3312fba 100644 --- a/dev-python/sphinx-autodoc-typehints/Manifest +++ b/dev-python/sphinx-autodoc-typehints/Manifest @@ -1,4 +1,4 @@ DIST sphinx_autodoc_typehints-2.2.3.tar.gz 40394 BLAKE2B eece3fd99898bf6c93561b0269a7cae2d9b5bd7868ef3d9cd61868b57b9435ef255731db7fdbde2cf05b1f1ed1c8864060fd15ad5b44bbd122f2c2d4fd264aeb SHA512 8a39129ae3e90703c7de8d25c7616256b4d203f6e3c6971f382265361236e7606fa16169e189ca47cd4f1dfdf27a98a16c7b92ce409e2431886e4dacd0159fcf DIST sphinx_autodoc_typehints-2.3.0.tar.gz 40709 BLAKE2B ef1b606cf6a643f87271fb033bac4d06f83b2be9f73b765064757ff0c1dceb2124841b2f6bb674deb20e39a4d19386fea8c85f0cdb417eeb3d84da19e2bf609e SHA512 f4ee3e0eb51fd63d4cf31f2eed9b9d06cc2dc48a3f3427763e86dba8910ea02c9e31bd8d30e8d0b3494e71fb104d51904400ce96d71270e1e422f44a317de80a -DIST sphinx_autodoc_typehints-2.4.0.tar.gz 40568 BLAKE2B 7b56f034db042d027cb7ccfa3d1ef4f13fa22b22c536cebe42ec3f6da648c2d0578021b89fe4058326254a5900b6e6c9f5455cfcb9ea05cb1e7f6ec6adb0033d SHA512 eb3b11c4fcb1e12048662eec8179d877598f0ec2f34c15efcb4989a905c53442223f7265251f2be8afe5de151f09c342ccbc04f8392eb03bef41c98f1467ea30 -DIST sphinx_autodoc_typehints-2.4.1.tar.gz 40796 BLAKE2B ea49531017abd27ae8ff8066c49334047370b27d5c8f972518bf566f1d26b965534317da4bdda2a0f5ebaf4af80ccc4e4befa561fe1bb36e9e92d82cc3175b9c SHA512 fd1bceab209c0d4b65eaec96fbb4a061690fafaeb032c54274676c434fedb8dcfd6adbac0e43de8953578c4955520cc6aac2c4c135a98efe0d46c5ebf2d40a9c +DIST sphinx_autodoc_typehints-2.4.3.tar.gz 40572 BLAKE2B 25d9f35a6b697cf99264bb48394034a546b48374edfecdd877f3b43ce00deb6b9e6581a8a9cd1b4b9342840dd702bc52c24554f39a6f828e27bb576eb3812996 SHA512 eb809df1ed8658bfb33c437417b16888636e89062ba56738dd6f0330bbf090b2ea8f98f6f5611f0c5545e024df66b7739f23aab8bbad2ee70a923ac16393310c +DIST sphinx_autodoc_typehints-2.4.4.tar.gz 40572 BLAKE2B 2981d3adb45c7c0bc8ec81d67e26aca302ed5e6a142c36a49fe73197a4aadb91c901f185102757953a1f95ca523cf3a44d7d1a4be2c79651e8f6f8b7a882d0fa SHA512 770145187db71775833a403ebff1ed05e9db81ac0af0c0507f40fdbde5b8d5a4bd298b882ba7c8f45c083d270e82d4a6a3e27c70514dbbd3d2045ec9ba0d20fb diff --git a/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-2.4.0.ebuild b/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-2.4.3.ebuild index e938bae4f916..e938bae4f916 100644 --- a/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-2.4.0.ebuild +++ b/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-2.4.3.ebuild diff --git a/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-2.4.1.ebuild b/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-2.4.4.ebuild index e938bae4f916..e938bae4f916 100644 --- a/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-2.4.1.ebuild +++ b/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-2.4.4.ebuild diff --git a/dev-python/statsmodels/statsmodels-0.14.3.ebuild b/dev-python/statsmodels/statsmodels-0.14.3.ebuild index c17f1ee501b8..3b129f1595f7 100644 --- a/dev-python/statsmodels/statsmodels-0.14.3.ebuild +++ b/dev-python/statsmodels/statsmodels-0.14.3.ebuild @@ -21,15 +21,18 @@ SLOT="0" KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~amd64-linux" IUSE="examples" +# NB: upstream requires building with numpy-2 but supports 1.x +# at runtime DEPEND=" - >=dev-python/numpy-1.22.3[${PYTHON_USEDEP}] + >=dev-python/numpy-2.0.0[${PYTHON_USEDEP}] >=dev-python/scipy-1.8[${PYTHON_USEDEP}] " RDEPEND=" - ${DEPEND} + >=dev-python/numpy-1.22.3[${PYTHON_USEDEP}] >=dev-python/packaging-21.3[${PYTHON_USEDEP}] >=dev-python/pandas-1.4[${PYTHON_USEDEP}] >=dev-python/patsy-0.5.6[${PYTHON_USEDEP}] + >=dev-python/scipy-1.8[${PYTHON_USEDEP}] " BDEPEND=" ${DEPEND} diff --git a/dev-python/stripe/Manifest b/dev-python/stripe/Manifest index 5d0733a76bfa..8d649226b2e9 100644 --- a/dev-python/stripe/Manifest +++ b/dev-python/stripe/Manifest @@ -1,3 +1,4 @@ DIST stripe-10.10.0.tar.gz 1313050 BLAKE2B 6a37c70d8faab0a23a52505edf722cbdb8b40f89fc2bfd9d73ce94c3c40877ca6080ac4f8973d9ac01fd7a1d67f8e62366b3dd498673fadbd29e8dbd3a0c1d8d SHA512 1049a27f07c0fb870735786cf8e971cf91095f3799e094cf81e3529839f1710f10133ccd20d2cfe249c460ee7753cb255e876e864e56ac1bea7f280771df197c DIST stripe-10.11.0.tar.gz 1317883 BLAKE2B fa533f6a3ab66a844ff16513ad8cb8b6a8d87677fa01ea93c406cb229577456ccc567b63196c3616878a1cb78c5b91e56ac9fff8d53e0b961702cbd65ab9024f SHA512 64b6adaf3eabe77ab863fe3ef2e0d20d6cfa0e266bb58cde0b0d2edd87dd240a0a8fedf11c35252f3cc6cd517cc767b2c4714facc29475597270e7a143e091dc +DIST stripe-10.12.0.tar.gz 1318680 BLAKE2B 0de2d108c6813d4ed0493b0e2b906a5d41f6b39b0f60fb2730fc3737b9f641d732e22c5ddf5e4e856b6bc5a1b312c10c9304467f29b5474bf8d6a9ca219f876d SHA512 0843cae0e1dd9a54604938a3ae5a28bb681e5166c2e800478c543b22b103626ac138ee999e468e909e3b5865754ed131af5a01287044603082f1f05329da45d3 DIST stripe-10.9.0.tar.gz 1312738 BLAKE2B 6be3b40695842c164620a8abab4a8753c44cb68dcd39b7e8f62e5a359ae5ffa0faa6a8890a1b0965dd1b1f32c95fa857abe44003c94043d2e76c59a9d52fc152 SHA512 39946c7efcf7597347835495f80810987f6812be337b2f9d84bebe029b2f6d326c9a73ef0c06f3c86786f59a1fb7d227e6a0cb800b8101216df6d0fb05709ea8 diff --git a/dev-python/stripe/stripe-10.12.0.ebuild b/dev-python/stripe/stripe-10.12.0.ebuild new file mode 100644 index 000000000000..dce53ce91aee --- /dev/null +++ b/dev-python/stripe/stripe-10.12.0.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Stripe Python bindings" +HOMEPAGE=" + https://github.com/stripe/stripe-python/ + https://pypi.org/project/stripe/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="telemetry" + +RDEPEND=" + >=dev-python/requests-2.20[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.5.0[${PYTHON_USEDEP}] +" +# please bump dev-util/stripe-mock dep to the latest version on every bump +BDEPEND=" + test? ( + >=dev-util/stripe-mock-0.188.0 + dev-python/aiohttp[${PYTHON_USEDEP}] + dev-python/anyio[${PYTHON_USEDEP}] + dev-python/httpx[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/trio[${PYTHON_USEDEP}] + net-misc/curl + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +DOCS=( LONG_DESCRIPTION.rst CHANGELOG.md README.md ) + +src_prepare() { + distutils-r1_src_prepare + + if ! use telemetry; then + sed -i -e '/enable_telemetry/s:True:False:' stripe/__init__.py || die + fi +} + +python_test() { + local EPYTEST_DESELECT=( + # exception message mismatch with aiohttp-3.10.0 + "tests/test_integration.py::TestIntegration::test_async_timeout[asyncio-aiohttp]" + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest tests -p anyio -p pytest_mock +} + +src_test() { + local stripe_mock_port=12111 + local stripe_mock_max_port=12121 + local stripe_mock_logfile="${T}/stripe_mock_${EPYTHON}.log" + # Try to start stripe-mock until we find a free port + while [[ ${stripe_mock_port} -le ${stripe_mock_max_port} ]]; do + ebegin "Trying to start stripe-mock on port ${stripe_mock_port}" + stripe-mock --http-port "${stripe_mock_port}" &> "${stripe_mock_logfile}" & + local stripe_mock_pid=${!} + sleep 2 + # Did stripe-mock start? + curl --fail -u "sk_test_123:" \ + "http://127.0.0.1:${stripe_mock_port}/v1/customers" &> /dev/null + eend ${?} "Port ${stripe_mock_port} unavailable" + if [[ ${?} -eq 0 ]]; then + einfo "stripe-mock running on port ${stripe_mock_port}" + break + fi + (( stripe_mock_port++ )) + done + if [[ ${stripe_mock_port} -gt ${stripe_mock_max_port} ]]; then + eerror "Unable to start stripe-mock for tests" + die "Please see the logfile located at: ${stripe_mock_logfile}" + fi + + local -x STRIPE_MOCK_PORT=${stripe_mock_port} + distutils-r1_src_test + + # Tear down stripe-mock + kill "${stripe_mock_pid}" || die "Unable to stop stripe-mock" +} diff --git a/dev-python/sympy/Manifest b/dev-python/sympy/Manifest index 9b42f9be6868..2ddd57caa73f 100644 --- a/dev-python/sympy/Manifest +++ b/dev-python/sympy/Manifest @@ -1 +1,2 @@ DIST sympy-1.13.2.gh.tar.gz 8141028 BLAKE2B 7a51fa75f1733364d467b79174b71ba866751399d311212144fdc3abdc8cea99618baf0b0fe3f2fe4cb9ab7153ecae4fe4bf00716e97ea4466637633f5618089 SHA512 87f7da425ed577e78392671cb635c99a11f3d6431b8c49a41611f4d2be5da1cadd8d07e0e684f2674792a2ee750b4031baec53156e7192d4c47714d4537c3222 +DIST sympy-1.13.3.gh.tar.gz 7919933 BLAKE2B 94c601e79caf87eb0f08e15ca4cb79e16bcd97d347e1fd948b6ea98b044133ea99f52032f09e290668e4485393425254ff4062ccfd3a3ac0b8afba080da6ba19 SHA512 2ae7a400d4a2d9c826cfaa165e3e1f5d9ba210c25647984d997775d4ec3d7c8f3ad3c5468d9adf141a1dceec864ca988b4f3a01fd934b923c4486ddd458670a3 diff --git a/dev-python/sympy/sympy-1.13.3.ebuild b/dev-python/sympy/sympy-1.13.3.ebuild new file mode 100644 index 000000000000..b86ea4f35e26 --- /dev/null +++ b/dev-python/sympy/sympy-1.13.3.ebuild @@ -0,0 +1,105 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit distutils-r1 virtualx + +DESCRIPTION="Computer Algebra System in pure Python" +HOMEPAGE=" + https://www.sympy.org/ + https://github.com/sympy/sympy/ + https://pypi.org/project/sympy/ +" +# pypi sdist misses some files, notably top-level conftest.py, as of 1.12.1_rc1 +SRC_URI=" + https://github.com/sympy/sympy/archive/${PV/_/}.tar.gz + -> ${P/_/}.gh.tar.gz +" +S=${WORKDIR}/${P/_/} + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" +IUSE="imaging ipython latex mathml opengl pdf png pyglet symengine texmacs" + +RDEPEND=" + >=dev-python/mpmath-1.1.0[${PYTHON_USEDEP}] + dev-python/pexpect[${PYTHON_USEDEP}] + imaging? ( dev-python/pillow[${PYTHON_USEDEP}] ) + ipython? ( + dev-python/ipython[${PYTHON_USEDEP}] + ) + latex? ( + virtual/latex-base + dev-texlive/texlive-fontsextra + png? ( app-text/dvipng ) + pdf? ( app-text/ghostscript-gpl ) + ) + mathml? ( dev-python/lxml[${PYTHON_USEDEP}] ) + opengl? ( dev-python/pyopengl[${PYTHON_USEDEP}] ) + pyglet? ( dev-python/pyglet[${PYTHON_USEDEP}] ) + symengine? ( dev-python/symengine[${PYTHON_USEDEP}] ) + texmacs? ( app-office/texmacs ) +" +BDEPEND=" + test? ( + dev-python/hypothesis[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_test() { + virtx distutils-r1_src_test +} + +python_test() { + local EPYTEST_IGNORE=( + # TODO; virtx? + sympy/plotting/pygletplot + ) + local EPYTEST_DESELECT=( + # require old version of antlr4 + sympy/parsing/tests/test_autolev.py + sympy/parsing/tests/test_latex.py + # crash due to assertions in sys-devel/llvm[debug] + sympy/parsing/tests/test_c_parser.py + + # TODO: pytest? + sympy/solvers/ode/tests/test_systems.py::test_linear_3eq_order1_type4_long_check + sympy/solvers/ode/tests/test_systems.py::test_linear_3eq_order1_type4_long_dsolve_dotprodsimp + + # either very slow or hanging + sympy/solvers/ode/tests/test_systems.py::test_linear_new_order1_type2_de_lorentz_slow_check + sympy/integrals/tests/test_failing_integrals.py::test_issue_15227 + sympy/matrices/tests/test_matrices.py::test_pinv_rank_deficient_when_diagonalization_fails + sympy/solvers/ode/tests/test_systems.py::test_nonlinear_3eq_order1_type1 + sympy/solvers/ode/tests/test_systems.py::test_nonlinear_3eq_order1_type3 + + # known broken + # https://github.com/sympy/sympy/issues/26321 + sympy/solvers/tests/test_simplex.py::test_lp + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + nonfatal epytest --veryquickcheck || + die -n "Tests failed with ${EPYTHON}" +} + +python_install_all() { + local DOCS=( AUTHORS README.md ) + + distutils-r1_python_install_all + + if use texmacs; then + exeinto /usr/libexec/TeXmacs/bin/ + doexe data/TeXmacs/bin/tm_sympy + insinto /usr/share/TeXmacs/plugins/sympy/ + doins -r data/TeXmacs/progs + fi +} diff --git a/dev-python/tox/Manifest b/dev-python/tox/Manifest index 2aa3132907a5..f9d32f5bb355 100644 --- a/dev-python/tox/Manifest +++ b/dev-python/tox/Manifest @@ -1,2 +1,3 @@ DIST tox-4.18.0.tar.gz 180782 BLAKE2B dc9832ad75c3e8564317bd618fa644ff2f393e507d7ff03292f65f0b10884d010708820768b6acd403783fd78868eddedb1ce931280d1e06e8d83214d85d4879 SHA512 4934b6d9406cc4500e75da76157ceb2dd9d7d0fd5e803fcd2c2bc9b5d2837678eead5af21dd6eb82ae7fe04c90aef78cc3db445daeed194a444ad88687ec1eeb DIST tox-4.18.1.tar.gz 181159 BLAKE2B db9b2233363b6214b1c0bae2c0319b72a7ef4a7f833628833fecb7a8d04eef0594f1a93e17f8273d45873c2130e96b7adad8afe69662cb8fe37251028ba1581f SHA512 289ee3e8b7c941dbeb94adea24442169b33cfe3ae2c4d6eadd12974ee01488325d05beb92cc3b3d5aa1f795f9d3ffe65ed3da81bc62b0527edf56f5ddb9ceb32 +DIST tox-4.19.0.tar.gz 181219 BLAKE2B fd20fcce2b0cf59b572feb1c206b1d8188dcd8eafcb2c31b6c48d982badddb20bd4afa7eb0647e2dc4f2fec47da95e27b1cd870ec14e12e513da0202755ae722 SHA512 46b34524c48ac4e1d906633c8f1fb6da81d26a110638b24e95b97973ef7a17a0412dad584f4e8e9dbd01c5fde3ebd48053caad9bdbc07c1a5a4d17a0c16a34be diff --git a/dev-python/tox/tox-4.19.0.ebuild b/dev-python/tox/tox-4.19.0.ebuild new file mode 100644 index 000000000000..9c69f24759e4 --- /dev/null +++ b/dev-python/tox/tox-4.19.0.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="virtualenv-based automation of test activities" +HOMEPAGE=" + https://tox.readthedocs.io/ + https://github.com/tox-dev/tox/ + https://pypi.org/project/tox/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/cachetools[${PYTHON_USEDEP}] + dev-python/chardet[${PYTHON_USEDEP}] + dev-python/colorama[${PYTHON_USEDEP}] + dev-python/filelock[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/platformdirs[${PYTHON_USEDEP}] + dev-python/pluggy[${PYTHON_USEDEP}] + dev-python/pyproject-api[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/tomli[${PYTHON_USEDEP}] + ' 3.{9..10}) + dev-python/virtualenv[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + dev-python/build[${PYTHON_USEDEP}] + dev-python/distlib[${PYTHON_USEDEP}] + dev-python/flaky[${PYTHON_USEDEP}] + dev-python/psutil[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + dev-python/re-assert[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/time-machine[${PYTHON_USEDEP}] + ' 'python*') + ) +" + +distutils_enable_tests pytest + +src_prepare() { + # upstream lower bounds are meaningless + sed -i -e 's:>=[0-9.]*::' pyproject.toml || die + distutils-r1_src_prepare +} + +python_test() { + # devpi_process is not packaged, and has lots of dependencies + cat > "${T}"/devpi_process.py <<-EOF || die + def IndexServer(*args, **kwargs): raise NotImplementedError() + EOF + + local -x PYTHONPATH=${T}:${PYTHONPATH} + local EPYTEST_DESELECT=( + # Internet + tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_build_wheel_external + tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_run_installpkg_targz + ) + local EPYTEST_IGNORE=( + # requires devpi* + tests/test_provision.py + ) + + case ${EPYTHON} in + pypy3) + EPYTEST_DESELECT+=( + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[constraints-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit+requirements-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_indirect-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_constraints_indirect-True-True]' + ) + ;; + python3.13) + EPYTEST_DESELECT+=( + # https://github.com/tox-dev/tox/issues/3290 + 'tests/config/loader/test_str_convert.py::test_str_convert_ok_py39[1,2-value1-Optional]' + ) + ;; + esac + + epytest +} diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest index 3bef1428a9a4..e1e6e9b7498f 100644 --- a/dev-python/uv/Manifest +++ b/dev-python/uv/Manifest @@ -3,5 +3,6 @@ DIST reqwest-middleware-5e3eaf254b5bd481c75d2710eed055f95b756913.gh.tar.gz 40049 DIST rs-async-zip-011b24604fa7bc223daaad7712c0694bac8f0a87.gh.tar.gz 51706 BLAKE2B 354eb52c95ea355521e1e6a7c841102424c47c156fdb0efb62e3cac666ecf289806aeefab8a0273a7c3283429ac81502283bdb5424d5f925621e5c2b1430fd4d SHA512 6650eef354e84daf41a8572b98b29f2873b7f071dd1d6983292c70b2f580fdc50cd26762d2228a70c2b200eae2f40476e6604702aa62cc97558301195bf19eb8 DIST tl-6e25b2ee2513d75385101a8ff9f591ef51f314ec.gh.tar.gz 37106 BLAKE2B c30d1c33f6f52e2bc83823eb6319f8a3e462b7c7408fb6a08f995747857ef234f81db4135a04f9d183095fe473a4087f8f0cb89d8f87ef4400285d2ce034ec22 SHA512 4abbc4240ed129c92da8d616e27a6df0f24cdc85a0803acfdae588ca91f9e5b8d482e3ac88b2e657ff68917b1b43cef1e7ef3c887f624659b231fa5a13fcae68 DIST uv-0.4.10.gh.tar.gz 2585899 BLAKE2B f941068e58877cc859b2eb52f3b35ea79cdf23aa33f746dc1e7e954a77d5a3f08fbbed8a8312f750143cef6a0eb812eb783750750eccf6144ef869f1f69732b3 SHA512 9582d8f97515bc182d699f9994a21f7c883203dabb338848c751d97737c864272e5efbaf3a81d08545caac6643ba9cbde2fe11769ec6b98062416d7501d022f8 +DIST uv-0.4.11-crates.tar.xz 46271540 BLAKE2B e0add4875653581f022ba72ee9c8167368901a507febe07f7fca2931f0952359b9529da56c0c1d7cb78bc618fb49f672b020eecd76be458f7d840c74263ec922 SHA512 5fb617bf63114b27131dd09354ff52faf7d055b73ac6ca83363d6bdae87e73dccb8d61193fee9570ac2209d8600c3229d903be826746b97dbcf4602212d46d6f +DIST uv-0.4.11.gh.tar.gz 2598363 BLAKE2B 44b04001ca796e59aec6b17984d89324de6cbf72c3e32c20e16c65b8dd1eee930f2a6358de6bbcc4b6bf01720786cc032c76ca6cdee64a21f91ee656aedd3f41 SHA512 23d79e4c485dde92958ef4a93cab184eda9aabe12441f0c88f752e98b8f24c177d6d08c6ae520490b841c1f3d9571a2c75ee324557b390ce8e716191abaf2b2f DIST uv-0.4.9-crates.tar.xz 46250584 BLAKE2B 6beb0a00885b674f3d8e35c67372d4ba04c6512306f78522fac2ff170d7cc6cb6c0702546da1d1de3dc84397f04258c56558c666b8f935130a0fea1debce01d0 SHA512 676f6a197af92bc9f6716c0e1df1f87d81b1b07dc81c591b94b34b985bbe4a49fb0b319fe8fba7f83d158124af84f64ebefe1ce0119e6238f9ae837e4652c5c0 -DIST uv-0.4.9.gh.tar.gz 2580667 BLAKE2B baadc0d950d57e224d7d4980424ab58c4e278c2d67a06e9d83d778ac5a6b561cdadfc514c5068ce365dbdb4da3b5165e4180567f7abe90f46d5597fce144b91d SHA512 d7746d71f1429df7d39c3f03c02934792124318f92d2eda03b68a255586567d053349e6d294da0910351d976844aee564334540563435d0e60f6a3792088f416 diff --git a/dev-python/uv/uv-0.4.9.ebuild b/dev-python/uv/uv-0.4.11.ebuild index ae16e664c50f..36dafe2b1cc5 100644 --- a/dev-python/uv/uv-0.4.9.ebuild +++ b/dev-python/uv/uv-0.4.11.ebuild @@ -16,7 +16,7 @@ declare -A GIT_CRATES=( inherit cargo check-reqs -CRATE_PV=0.4.9 +CRATE_PV=0.4.11 DESCRIPTION="A Python package installer and resolver, written in Rust" HOMEPAGE=" https://github.com/astral-sh/uv/ diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest index e6393305798c..09e6921809e0 100644 --- a/dev-python/virtualenv/Manifest +++ b/dev-python/virtualenv/Manifest @@ -1,2 +1,3 @@ DIST virtualenv-20.26.3.tar.gz 9057588 BLAKE2B 74268cab291e7f1e3db6a4c56f0ede1d7995069cb5594341d9af0609196a8154e9153f920043b48100c2263b7020c819135e29532483b233f3c37bf3b780592f SHA512 0cd3b4dc082d071305b44dd2aba2b28527e630b6b4bf28b7b6c59f3e061b01c1dfcfb64293f2b1904109e9e27b70a873cc8c3f1a3cde73bfee114943cef92ca7 DIST virtualenv-20.26.4.tar.gz 9385017 BLAKE2B a9b7f2dd105e6d7e5c85456351fc85fd6b4daa697574b6c1c8d51139d0b64f06fff024d721c4182cadb7c207c03b5f8877917dc79eb6102373503479a9f70215 SHA512 afce31d4bea624c98893d2ab5d7ea02e87e1ea18ae25195864b32c8d127d44fe7e1d07c24949138496f571b71d745d2f571c0b2a895d2282bef04dfe496fcd93 +DIST virtualenv-20.26.5.tar.gz 9371932 BLAKE2B 3b85da76f00e44b4e9fd33ef159e06cad06e4b0663aff9433712db8dcc0abb0bad7b94f260e374687f81b09a12bb3438f533267035370efbdeef20e8f9371461 SHA512 616d6565731d8b1f4ddf90eea9c7018eb1bc553c9ad6feee5f9e6669a996205afbedd900bf8d74cbcca7113fddc985ae279454274a7ec8902ac068e5e4b1b5ba diff --git a/dev-python/virtualenv/virtualenv-20.26.5.ebuild b/dev-python/virtualenv/virtualenv-20.26.5.ebuild new file mode 100644 index 000000000000..acc7255ef749 --- /dev/null +++ b/dev-python/virtualenv/virtualenv-20.26.5.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 multiprocessing pypi + +DESCRIPTION="Virtual Python Environment builder" +HOMEPAGE=" + https://virtualenv.pypa.io/en/stable/ + https://pypi.org/project/virtualenv/ + https://github.com/pypa/virtualenv/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/distlib-0.3.7[${PYTHON_USEDEP}] + >=dev-python/filelock-3.12.2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}] + + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + dev-python/ensurepip-wheel +" +# coverage is used somehow magically in virtualenv, maybe it actually +# tests something useful +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + dev-python/coverage[${PYTHON_USEDEP}] + dev-python/flaky[${PYTHON_USEDEP}] + >=dev-python/pip-22.2.1[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/pytest-freezer-0.4.6[${PYTHON_USEDEP}] + ' pypy3) + >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + >=dev-python/setuptools-67.8[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/time-machine[${PYTHON_USEDEP}] + ' 'python3*') + dev-python/wheel[${PYTHON_USEDEP}] + >=dev-python/packaging-20.0[${PYTHON_USEDEP}] + ) +" + +EPYTEST_TIMEOUT=180 +distutils_enable_tests pytest + +src_prepare() { + local PATCHES=( + # use wheels from ensurepip bundle + "${FILESDIR}/${PN}-20.26.3-ensurepip.patch" + ) + + distutils-r1_src_prepare + + # workaround test failures due to warnings from setuptools-scm, sigh + echo '[tool.setuptools_scm]' >> pyproject.toml || die + + # remove useless pins + sed -i -e 's:<[0-9.]*,::' pyproject.toml || die + + # remove bundled wheels + rm src/virtualenv/seed/wheels/embed/*.whl || die +} + +python_test() { + local EPYTEST_DESELECT=( + tests/unit/seed/embed/test_bootstrap_link_via_app_data.py::test_seed_link_via_app_data + # tests for old wheels with py3.7 support + tests/unit/seed/embed/test_pip_invoke.py::test_base_bootstrap_via_pip_invoke + tests/unit/seed/wheels/test_wheels_util.py::test_wheel_not_support + # broken by different wheel versions in ensurepip + tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_string + tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_exact + tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_none + tests/unit/seed/wheels/test_acquire.py::test_download_wheel_bad_output + # hangs on a busy system, sigh + tests/unit/test_util.py::test_reentrant_file_lock_is_thread_safe + ) + case ${EPYTHON} in + python3.1[23]) + EPYTEST_DESELECT+=( + tests/unit/create/via_global_ref/test_build_c_ext.py + ) + ;& + python3.11) + EPYTEST_DESELECT+=( + # TODO + tests/unit/discovery/py_info/test_py_info.py::test_fallback_existent_system_executable + ) + ;; + esac + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x TZ=UTC + local plugins=( -p flaky -p pytest_mock ) + if [[ ${EPYTHON} == pypy3 ]]; then + plugins+=( -p freezer ) + else + plugins+=( -p time_machine ) + fi + epytest "${plugins[@]}" -p xdist -n "$(makeopts_jobs)" --dist=worksteal +} + +src_install() { + distutils-r1_src_install + + # remove bundled wheels, we're using ensurepip bundle instead + find "${ED}" -name '*.whl' -delete || die +} diff --git a/dev-python/xmlschema/Manifest b/dev-python/xmlschema/Manifest index 70166d1b73df..bc1a8b4fd2ca 100644 --- a/dev-python/xmlschema/Manifest +++ b/dev-python/xmlschema/Manifest @@ -1 +1,2 @@ DIST xmlschema-3.3.2.tar.gz 575004 BLAKE2B 4d92be6ec8933201198b38f741e06354c98ef9b2d02ecd20fefbf502d29ab82e705038ef966ad1e90e3fcfe6aae01e3c757b61e9d9acb506a0ab36074fbcc6c6 SHA512 6216373f8d8ebc2244267f2659a887b937fb5c529909b5afeb99dc7d0aed22080870b5d35543e32f16dc8e8c6fc1e0859a99fd9364c03e01aa69e71dd18078e6 +DIST xmlschema-3.4.2.tar.gz 584249 BLAKE2B 82c01c295932e0e0a503d89b878cd7972550b531edc2aa162b9e6139cf3657890d3b5fe15a8bd667e5adc24ab29b6458f095ad55f9a88b7cd9bca93eed200200 SHA512 fd8c3df89f1768a8670e8bfdb34eaf93b80e191afe6ee15904269f0e3ab728aaeca5c56e046893708aba0c7763421a50b085bd03ec8aba1326f6608b39871b03 diff --git a/dev-python/xmlschema/xmlschema-3.4.2.ebuild b/dev-python/xmlschema/xmlschema-3.4.2.ebuild new file mode 100644 index 000000000000..ffac0df6b109 --- /dev/null +++ b/dev-python/xmlschema/xmlschema-3.4.2.ebuild @@ -0,0 +1,37 @@ +# Copyright 2019-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="An XML Schema validator and decoder" +HOMEPAGE=" + https://github.com/sissaschool/xmlschema/ + https://pypi.org/project/xmlschema/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + <dev-python/elementpath-5[${PYTHON_USEDEP}] + >=dev-python/elementpath-4.4.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + ${RDEPEND} + dev-python/jinja[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + ) +" + +python_test() { + "${EPYTHON}" tests/test_all.py -v || die "Tests fail with ${EPYTHON}" +} diff --git a/dev-python/zope-hookable/Manifest b/dev-python/zope-hookable/Manifest index 6f399c4e3460..c04aa7de129d 100644 --- a/dev-python/zope-hookable/Manifest +++ b/dev-python/zope-hookable/Manifest @@ -1 +1,2 @@ DIST zope.hookable-6.0.tar.gz 24013 BLAKE2B 808005d0993e22967bc7a73a7b8a26f2263dfc9f3f33d840495a233ea8686a5e700ee46cf0dad8e37aeebb0383ec51b15a4f98323daf4d6bb606fc1ab149f39e SHA512 33d1200a24fc664ed9c7942f71b003704fda21ac42f5acc24611838aa4e8096a27a5da01956ec824105d454a0580480ce8a262c8f5c4f24782ab11416d9fdafd +DIST zope_hookable-7.0.tar.gz 21392 BLAKE2B e6b2921f68be1f5156fede45db2a71e6394785bd5e0a4aff86a5cf943b790e0d26163391bd448739ad074e8b792b37334e48c05086268509d980035bac260066 SHA512 f927a0e15aef9adca72f25c21f2c374d6235d8e3abca9d5d9832e9c8d9b70accebfec2cac339ae360d142e69f69f920c7b2bdbbf230c975fe2c362887380a34d diff --git a/dev-python/zope-hookable/zope-hookable-7.0.ebuild b/dev-python/zope-hookable/zope-hookable-7.0.ebuild new file mode 100644 index 000000000000..3704c02ccd78 --- /dev/null +++ b/dev-python/zope-hookable/zope-hookable-7.0.ebuild @@ -0,0 +1,44 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=${PN/-/.} +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Efficient creation of 'hookable' objects" +HOMEPAGE=" + https://pypi.org/project/zope.hookable/ + https://github.com/zopefoundation/zope.hookable/ +" + +LICENSE="ZPL" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" + +BDEPEND=" + test? ( + dev-python/zope-testing[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests unittest + +src_prepare() { + # strip rdep specific to namespaces + sed -i -e "/'setuptools'/d" setup.py || die + distutils-r1_src_prepare +} + +python_compile() { + distutils-r1_python_compile + find "${BUILD_DIR}" -name '*.pth' -delete || die +} + +python_test() { + eunittest -s "${BUILD_DIR}/install$(python_get_sitedir)/zope/hookable/tests" +} diff --git a/dev-python/zope-i18nmessageid/Manifest b/dev-python/zope-i18nmessageid/Manifest index 7c7ace7a5729..80cd9dde429c 100644 --- a/dev-python/zope-i18nmessageid/Manifest +++ b/dev-python/zope-i18nmessageid/Manifest @@ -1 +1,2 @@ DIST zope.i18nmessageid-6.1.0.tar.gz 31187 BLAKE2B 1e616fe67d42e686928af298507afd1c5e962b4fcf89269fc69c00726814e51dd49c5a602d9da2153d3c11cb8e80fd4a9dfea354ee413d69a2022fb5479858c3 SHA512 13ca8d6c145ac48217d0f4fae4ae7fa2129a8d37ceeea640dcedca8815587cc9507935f0cc070bf37307cc21269b1a9decd2d18ae1bc79fdb0128f59f7e4b43b +DIST zope_i18nmessageid-7.0.tar.gz 27929 BLAKE2B fbe19aec71001b4779a390cf0fc596e86667e149900cf04eebb4d2b50a3cdad8f1bbd0f81c88e8841534540dacf4fed3ef91a1519d3364b32132c7c5f833f8c1 SHA512 91256e68fab4db59b6220f67ef42e09896f3643bea472218fbeefdea248a52fa018a7e6bef4777b5a02aa878195cc3e51d0408e96fcaef02747de4cb0fc0add6 diff --git a/dev-python/zope-i18nmessageid/zope-i18nmessageid-7.0.ebuild b/dev-python/zope-i18nmessageid/zope-i18nmessageid-7.0.ebuild new file mode 100644 index 000000000000..8660dd75daec --- /dev/null +++ b/dev-python/zope-i18nmessageid/zope-i18nmessageid-7.0.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=${PN/-/.} +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Zope support for i18nmessageid (tagging source of i18n strings)" +HOMEPAGE=" + https://pypi.org/project/zope.i18nmessageid/ + https://github.com/zopefoundation/zope.i18nmessageid/ +" + +LICENSE="ZPL" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" + +RDEPEND=" + !dev-python/namespace-zope +" + +distutils_enable_tests unittest + +src_prepare() { + # strip rdep specific to namespaces + sed -i -e "s:'setuptools'::" setup.py || die + distutils-r1_src_prepare +} + +python_compile() { + distutils-r1_python_compile + find "${BUILD_DIR}" -name '*.pth' -delete || die +} + +python_test() { + cd "${BUILD_DIR}/install$(python_get_sitedir)" || die + distutils_write_namespace zope + eunittest +} diff --git a/dev-ruby/fiber-storage/fiber-storage-0.1.2.ebuild b/dev-ruby/fiber-storage/fiber-storage-0.1.2.ebuild index 494051f194ac..ec61628a3e79 100644 --- a/dev-ruby/fiber-storage/fiber-storage-0.1.2.ebuild +++ b/dev-ruby/fiber-storage/fiber-storage-0.1.2.ebuild @@ -17,7 +17,7 @@ SRC_URI="https://github.com/ioquatix/fiber-storage/archive/refs/tags/v${PV}.tar. LICENSE="MIT" SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" all_ruby_prepare() { sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die diff --git a/dev-ruby/i18n/Manifest b/dev-ruby/i18n/Manifest index c9fcd571833b..61acc5bdc31b 100644 --- a/dev-ruby/i18n/Manifest +++ b/dev-ruby/i18n/Manifest @@ -1,5 +1,3 @@ -DIST i18n-1.13.0.tar.gz 74591 BLAKE2B e8b2a624c6ea02f030eacbbdf1ca9722d23785e51f31f5dd4a640f8ab74dfafc99131773619a5e2af724c7bcdbc0e63989b1552c148137bf15cf436f340c3c96 SHA512 4c2dc75ccb09ace90a5845f4c1325f0cb144c69b06b72a35728674deea5d869ed94fa5b18cf6b56d434cbad7e528150dedbb10ed91a6d15b7e05758117cf427e DIST i18n-1.14.1.tar.gz 74855 BLAKE2B b01b5fefd5033352455110e4fda3d567a5033c6bb732dd11519a3859a3cc4d57bd4229ea3346f2e680575f6ac4d7038d4bcbfd0ea314d2e8b08f26858ffd22f6 SHA512 89a293c00c7e62e802823d8011142a0786268b4c8341a9e389182988f1372655b4c5410ee10d6632af2fee645fbbf2feda2ccc4669d59d44640d3fa2c34b9e86 -DIST i18n-1.14.3.tar.gz 74899 BLAKE2B aaf2041763a5c089972384bc6b5fa139cda05dfaf8ed48c4552ff83f3f114ae53dec2bf1564e8ea5e345f45cf37145eb1eb05c0f4c9fb3cbb3631d55c4c15396 SHA512 8b730dccb3584d55509be4cb0bda3fd9ffb0d2c943eb22ee592e408748bf2e3c0a98fce6ceb002093a6774d073b9a762d95589e89518e4a023f35b51d5db2ad2 -DIST i18n-1.14.4.tar.gz 74949 BLAKE2B 5b55c0d6434eec11ac2b7bc39c896381bf9f274f98a1012264a96dc2432a7ad7bababc5bb0c0980b8aeb9b644a933814a48eeef5a53825aeee553ed9631d3778 SHA512 929117b02babbc51c1dcf1643429cdef35d64d54fac7fd5d5603b85305b6e84f3cecfb4f28cf16fc708eb6252a25a22e05ac50d9a9c6def0f0ac6996b9ace7fa DIST i18n-1.14.5.tar.gz 75739 BLAKE2B 10af6c88e5ab4d50dee156b944795525f4d79035f3c2369b379f70d7fa48b84cc26fe0855017b378b7c94f8b4ecdc37dd122f536d2b54c595d70c5c731ba5c64 SHA512 b6c6e333fff38228136ce55a75f466b4885542973e96eea0cbfb5c2ea1dd4780847e59b10090f8ecbc4aeb0de67258dcdbfc1812369b8d9f1d7597468f756677 +DIST i18n-1.14.6.tar.gz 75978 BLAKE2B e2c56a8600b94b91a32481c4f24bd8b47aee118aee87da0012ddd95e9d01a6c0db489fa0528ca0a9a37ec49124d41f4322eb09f0828f0a53c268d02da1c3b7d5 SHA512 5713e6e2576c16698333058bae3f1758ab71bc040c7feab2d3b51dfc6faa7a76539c6916dd3807e429e53b1a3bf22064cea7eb7b9dd731ddb9a04f06615803a6 diff --git a/dev-ruby/i18n/i18n-1.13.0.ebuild b/dev-ruby/i18n/i18n-1.13.0.ebuild deleted file mode 100644 index 403d191f1a34..000000000000 --- a/dev-ruby/i18n/i18n-1.13.0.ebuild +++ /dev/null @@ -1,62 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby30 ruby31 ruby32" - -RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" - -RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Add Internationalization support to your Ruby application" -HOMEPAGE="http://rails-i18n.org/" -SRC_URI="https://github.com/ruby-i18n/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="" - -ruby_add_rdepend "dev-ruby/concurrent-ruby:1" - -# We need mocha:1.0 which corresponds to the Gemfiles used in each_ruby_test -ruby_add_bdepend "test? ( - >=dev-ruby/activesupport-5.1 - dev-ruby/bundler - >=dev-ruby/minitest-5.14:5 - >=dev-ruby/mocha-1.7.0:1.0 - dev-ruby/test_declarative )" - -all_ruby_prepare() { - rm -f gemfiles/*.lock || die - - # Remove optional unpackaged oj gem - sed -i -e '/oj/ s:^:#:' gemfiles/* || die - - # Update old test dependencies - sed -i -e '/rake/ s/~>/>=/' -e 's/1.7.0/1.7/' -e '3igem "json"' gemfiles/* || die -} - -each_ruby_test() { - case ${RUBY} in - *ruby32) - versions="6.1 7.0" - ;; - *ruby31) - versions="6.1 7.0" - ;; - *ruby30) - versions="6.0 6.1 7.0" - ;; - esac - - for version in ${versions} ; do - if has_version "dev-ruby/activesupport:${version}" ; then - einfo "Running tests with activesupport ${version}" - BUNDLE_GEMFILE="${S}/gemfiles/Gemfile.rails-${version}.x" ${RUBY} -S bundle exec ${RUBY} -S rake test || die - fi - done -} diff --git a/dev-ruby/i18n/i18n-1.14.3.ebuild b/dev-ruby/i18n/i18n-1.14.3.ebuild deleted file mode 100644 index c0da1cda43e5..000000000000 --- a/dev-ruby/i18n/i18n-1.14.3.ebuild +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby31 ruby32 ruby33" -RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" -RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Add Internationalization support to your Ruby application" -HOMEPAGE="http://rails-i18n.org/" -SRC_URI="https://github.com/ruby-i18n/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" - -ruby_add_rdepend " - dev-ruby/concurrent-ruby:1 - >=dev-ruby/racc-1.7:0 -" - -ruby_add_bdepend " - test? ( - >=dev-ruby/activesupport-5.1 - dev-ruby/bundler - >=dev-ruby/minitest-5.14:5 - dev-ruby/mocha:2 - dev-ruby/test_declarative - ) -" - -all_ruby_prepare() { - rm -f gemfiles/*.lock || die - - # Remove optional unpackaged oj gem - sed -i -e '/oj/ s:^:#:' gemfiles/* || die - - # Update old test dependencies - sed -i -e '3igem "json"' -e '4igem "racc"' gemfiles/* || die - - # Use mocha 2 to avoid minitest deprecation issues. - sed -i -e 's:mocha/setup:mocha/minitest:' test/test_helper.rb || die -} - -each_ruby_test() { - case ${RUBY} in - *ruby33) - versions="7.0 7.1" - ;; - *ruby32) - versions="6.1 7.0 7.1" - ;; - *ruby31) - versions="6.1 7.0 7.1" - ;; - esac - - for version in ${versions} ; do - if has_version "dev-ruby/activesupport:${version}" ; then - einfo "Running tests with activesupport ${version}" - BUNDLE_GEMFILE="${S}/gemfiles/Gemfile.rails-${version}.x" ${RUBY} -S bundle exec ${RUBY} -S rake test || die - fi - done -} diff --git a/dev-ruby/i18n/i18n-1.14.4.ebuild b/dev-ruby/i18n/i18n-1.14.6.ebuild index c0da1cda43e5..3daace5d00e6 100644 --- a/dev-ruby/i18n/i18n-1.14.4.ebuild +++ b/dev-ruby/i18n/i18n-1.14.6.ebuild @@ -35,14 +35,11 @@ ruby_add_bdepend " all_ruby_prepare() { rm -f gemfiles/*.lock || die - # Remove optional unpackaged oj gem - sed -i -e '/oj/ s:^:#:' gemfiles/* || die - - # Update old test dependencies - sed -i -e '3igem "json"' -e '4igem "racc"' gemfiles/* || die - - # Use mocha 2 to avoid minitest deprecation issues. - sed -i -e 's:mocha/setup:mocha/minitest:' test/test_helper.rb || die + # Remove optional unpackaged oj gem. + # Make mocha dependency more lenient. + sed -e '/oj/ s:^:#:' \ + -e '/mocha/ s/2.1.0/2.1/' \ + -i gemfiles/* || die } each_ruby_test() { diff --git a/dev-ruby/jbuilder/Manifest b/dev-ruby/jbuilder/Manifest index 76ea2b89c129..88bdebc38095 100644 --- a/dev-ruby/jbuilder/Manifest +++ b/dev-ruby/jbuilder/Manifest @@ -1 +1,2 @@ DIST jbuilder-2.12.0.gem 28160 BLAKE2B e4e32c7d6b71b0daecd0148d74179115b14bb8450c00315518fa31c30c1b510534329804f8050da07edb338d642df9067b28e6b14b7627231518732d7e1f2d3c SHA512 6c5a9bf4bc7c60c8c4f12d94265eee7e1888d5a4aa8653f294ef58aeb936c70e207d559d9b3dd5ce5eaea1847c73b1bf2e4e2d22de3d7a5e66dfb95fa60bc4a7 +DIST jbuilder-2.13.0.gem 28672 BLAKE2B 44f2c93524fc6263407d6851835dada03dca285fe7b71795b9fd0aaab27786044418e59102f0a046b0cf7dfcd6040128edebe1a53db16bdad67637e1f0aa24aa SHA512 0738879152e1b54df2ccb37f39ec8d9dc82eb5838c6af297ec15dbbb38a4781053f1022e864fbc080b4f1de7c9c356869c44f096e771175b887967e89258639a diff --git a/dev-ruby/jbuilder/jbuilder-2.13.0-r1.ebuild b/dev-ruby/jbuilder/jbuilder-2.13.0-r1.ebuild new file mode 100644 index 000000000000..789373cb79f1 --- /dev/null +++ b/dev-ruby/jbuilder/jbuilder-2.13.0-r1.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +USE_RUBY="ruby31 ruby32 ruby33" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_TASK_TEST="CI=true test" + +RUBY_FAKEGEM_EXTRADOC="README.md" + +inherit ruby-fakegem + +DESCRIPTION="Create JSON structures via a Builder-style DSL" +HOMEPAGE="https://github.com/rails/jbuilder" + +LICENSE="MIT" +SLOT="2" +KEYWORDS="~amd64" +IUSE="test" + +ruby_add_rdepend " + || ( dev-ruby/activesupport:7.2 dev-ruby/activesupport:7.1 dev-ruby/activesupport:7.0 dev-ruby/activesupport:6.1 ) + || ( dev-ruby/actionview:7.2 dev-ruby/actionview:7.1 dev-ruby/actionview:7.0 dev-ruby/actionview:6.1 ) +" + +ruby_add_bdepend "test? ( + >=dev-ruby/activemodel-5.0.0 + >=dev-ruby/railties-5.0.0 + dev-ruby/mocha:2 +)" + +all_ruby_prepare() { + sed -i -e '/bundler/ s:^:#:' Rakefile test/test_helper.rb || die +} diff --git a/dev-ruby/jwt/Manifest b/dev-ruby/jwt/Manifest index 16e088a422e2..d9da9b1f9055 100644 --- a/dev-ruby/jwt/Manifest +++ b/dev-ruby/jwt/Manifest @@ -1,3 +1,4 @@ DIST jwt-2.7.1.tar.gz 75003 BLAKE2B 5c43fd78cf22960749358cbfcbfb5c47dce935ef8fd83235137a963572b95b19583399e142136663d113df472ebfb5dd976ce60156b75cceeff387950b6190b0 SHA512 efcdd81bc472a18764e0033f1040e9e2506952cbfb691acfc1ad90a5b34ebac864911e0cfeb28b82ac2ce1da7e3578a6677c0b113d1e45a81a3f4c4f8fed1047 DIST jwt-2.8.1.tar.gz 71939 BLAKE2B 07eb3df24165c72f13a77dfff658a94574e4fc5b5aed3b56041c58cf9bfb8eba663e76de7eb91e2870bbb8dcdeb79b9c2a7888d29f41feee06e2f07a825b90b9 SHA512 df4ad49f223bba0ace69a37d229868c2deabed5c09fd84e5e4ce4021242cef9e30c07a592b5bf54af6bdcfec552487d808620cf020d242757fc4310d201469c2 DIST jwt-2.8.2.tar.gz 72273 BLAKE2B 808c6144b31a4d042a161c2e9fe3008995e45ed2cf1df9f454a84e04a613f23a0394e87644dbbdd7c94272ea57c2568defe63c9d71bfcf3c02caa81b345d4240 SHA512 d92cfe8c5196c3efd4cc42751cef956cf35758e980a959f554b61e148dfcaddfd9fc3d05bb57a043eca4c03f8240086951ad24bc676fb7d0f29a677dab4b270e +DIST jwt-2.9.0.tar.gz 74870 BLAKE2B f7b697294e1f79924ea76d8712b85c22a7c60baf34bc12bc8cd1d606fe6b94dbc13087eecafcdf5fbaf3684cf4bd55d46b0c6f58c6c4fa26a671063a79293529 SHA512 5ef5a58e884498357ee1783e1c7a93fcfe90cae4a3a75d5700e08c068601215c3fcd83e3b6d52c55cb5f0a06a9dd2dfae8c81aa7fd5f08314c5fd8234acb97b7 diff --git a/dev-ruby/jwt/jwt-2.9.0.ebuild b/dev-ruby/jwt/jwt-2.9.0.ebuild new file mode 100644 index 000000000000..8b4de2060122 --- /dev/null +++ b/dev-ruby/jwt/jwt-2.9.0.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +USE_RUBY="ruby31 ruby32 ruby33" + +RUBY_FAKEGEM_RECIPE_TEST="rspec3" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_GEMSPEC="ruby-jwt.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="A Ruby implementation of JSON Web Token draft 06" +HOMEPAGE="https://github.com/jwt/ruby-jwt" +SRC_URI="https://github.com/jwt/ruby-jwt/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="2" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86" +IUSE="eddsa test" + +RUBY_S="ruby-jwt-${PV}" + +ruby_add_rdepend "dev-ruby/base64 eddsa? ( dev-ruby/rbnacl )" + +ruby_add_bdepend "test? ( dev-ruby/rbnacl )" + +all_ruby_prepare() { + sed -i -e "/simplecov/ s:^:#:" \ + -e '/^SimpleCov.start/,/^end/ s:^:#:' \ + spec/spec_helper.rb || die + + sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die +} diff --git a/dev-ruby/jwt/metadata.xml b/dev-ruby/jwt/metadata.xml index e7fe56f5d26f..4d2cbcfc1555 100644 --- a/dev-ruby/jwt/metadata.xml +++ b/dev-ruby/jwt/metadata.xml @@ -8,4 +8,7 @@ <upstream> <remote-id type="github">jwt/ruby-jwt</remote-id> </upstream> + <use> + <flag name="eddsa">Support EdDSA algorithm using dev-ruby/rbnacl</flag> + </use> </pkgmetadata> diff --git a/dev-ruby/memo_wise/Manifest b/dev-ruby/memo_wise/Manifest index 54a79f3ecda8..7966d965397a 100644 --- a/dev-ruby/memo_wise/Manifest +++ b/dev-ruby/memo_wise/Manifest @@ -1,2 +1,2 @@ -DIST memo_wise-1.8.0.tar.gz 186795 BLAKE2B afb1a027c6c981601d51262f13508fb8cd0074f6283bdb953537e300cc4970856765db60a92afa8331139ff98e50ba97529366f9adcd4d1ab93c93f52dcd2e48 SHA512 173dbab6fe93f21ad1ead34f4fbe8b0425747e1f2640472b9a1e4b79b935260cc0163d907d8ec423152d91165f32f2e8f1691dcdbd15830f375473415089ce6e +DIST memo_wise-1.10.0.tar.gz 104716 BLAKE2B 57a2dfc9303bf579c7571c35ac182deea7efeaf2685f2986c5104131619aab2b3a7b8f5cd72294078a73eb2082463a3c1a0e6d4e87c5d5941b69dcdeac0368ec SHA512 970cab6e63bbfa08c09ce5bf6aa56ba2f0a89023cb02b9b8d5d88a36a95ea7b3f6bef19ec8f145f905ad3c1c8087ff8bcbfef3cdea66d4e98f07b2c9f5ed5d1c DIST memo_wise-1.9.0.tar.gz 187663 BLAKE2B 02028a5f9ceae77702f3e536bbd33e17232ea1f443da70101e87ef0bb449eb387602fe710d20b44ffa39d112aaf8f2f8cd2897ed0e941c56ba8a6792c2f6cd14 SHA512 bdab3eca584c68055e806f825cc9d29c09f3798f0b5bffb634823021dc26227cbb85ae562193f1ed288275583e9939cd0eb4cd611da23d0c0c305bd283eea618 diff --git a/dev-ruby/memo_wise/memo_wise-1.8.0.ebuild b/dev-ruby/memo_wise/memo_wise-1.10.0.ebuild index 32095482d139..1c45be13eb68 100644 --- a/dev-ruby/memo_wise/memo_wise-1.8.0.ebuild +++ b/dev-ruby/memo_wise/memo_wise-1.10.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -19,7 +19,6 @@ SRC_URI="https://github.com/panorama-ed/memo_wise/archive/v${PV}.tar.gz -> ${P}. LICENSE="MIT" SLOT="$(ver_cut 1)" KEYWORDS="~amd64 ~riscv" -IUSE="" all_ruby_prepare() { sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die diff --git a/dev-ruby/moneta/moneta-1.6.0-r1.ebuild b/dev-ruby/moneta/moneta-1.6.0-r1.ebuild new file mode 100644 index 000000000000..2152c96fc62e --- /dev/null +++ b/dev-ruby/moneta/moneta-1.6.0-r1.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +USE_RUBY="ruby31 ruby32" + +RUBY_FAKEGEM_TASK_DOC="" +RUBY_FAKEGEM_RECIPE_TEST="rspec3" +# test is disabled for now. It requires many packages. Test suite also +# takes very long run time and has high memory consumption. + +RUBY_FAKEGEM_EXTRADOC="CHANGES README.md SPEC.md" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="A unified interface to key/value stores" +HOMEPAGE="https://github.com/moneta-rb/moneta" +SRC_URI="https://github.com/moneta-rb/moneta/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="test" + +ruby_add_depend "test? ( dev-ruby/bson dev-ruby/ox dev-ruby/rantly dev-ruby/sqlite3 dev-ruby/tokyocabinet )" + +all_ruby_prepare() { + sed -e "s/__dir__/'.'/" \ + -e "s/_relative//" \ + -i ${RUBY_FAKEGEM_GEMSPEC} || die + + # Remove specs for unpackaged or difficult to set up dependencies. + rm -f spec/active_support/cache_moneta_store_spec.rb \ + spec/moneta/adapters/memcached/adapter_memcached_spec.rb \ + spec/moneta/adapters/memcached/standard_memcached_spec.rb \ + spec/moneta/adapters/memcached/native/adapter_memcached_native_spec.rb \ + spec/moneta/adapters/memcached/native/standard_memcached_native_spec.rb \ + spec/moneta/adapters/memory/standard_memory_with_snappy_compress_spec.rb \ + spec/moneta/proxies/shared/shared_{tcp,unix}_spec.rb \ + spec/moneta/proxies/transformer/transformer_{bencode,bert,bzip2,lz4,lzma,lzo,marshal_city*,php,snappy,tnet}_spec.rb \ + spec/moneta/proxies/weak_create/weak_create_spec.rb \ + spec/moneta/proxies/weak_each_key/weak_each_key_spec.rb \ + spec/moneta/proxies/weak_increment/weak_increment_spec.rb \ + spec/rack/session_moneta_spec.rb || die + rm -rf spec/moneta/adapters/{couch,daybreak,dbm,fog,gdbm,hbase,leveldb,lmdb,localmemcache,mongo,riak,sdbm,sequel,tdb,tokyotyrant} || die + + # Fails for other reasons (probably fixable in the future) + rm -rf spec/moneta/adapters/activesupportcache/standard_activesupportcache_spec.rb \ + spec/moneta/adapters/activesupportcache/adapter_activesupportcache_spec.rb \ + spec/moneta/adapters/activesupportcache/adapter_activesupportcache_with_default_expires_spec.rb \ + spec/moneta/adapters/memcached/dalli/standard_memcached_dalli_spec.rb \ + spec/moneta/adapters/restclient || die + + # Requires a live server to be present + rm -rf spec/moneta/adapters/activerecord/adapter_activerecord_existing_connection_spec.rb \ + spec/moneta/adapters/activerecord/standard_activerecord_spec.rb \ + spec/moneta/adapters/activerecord/adapter_activerecord_spec.rb \ + spec/moneta/adapters/activerecord/standard_activerecord_with_expires_spec.rb \ + spec/moneta/adapters/redis || die +} diff --git a/dev-ruby/rubyntlm/Manifest b/dev-ruby/rubyntlm/Manifest index 76008a6e8464..026e05398fa3 100644 --- a/dev-ruby/rubyntlm/Manifest +++ b/dev-ruby/rubyntlm/Manifest @@ -1,3 +1,2 @@ -DIST rubyntlm-0.6.3.gem 32768 BLAKE2B f9e21068e684620e2e54c685132d034a805fefa4eb90261babac9d58e38167412e0257f0d9b018603772dbd6f152eb9478340d7a390174bc908d1ac8640fcff4 SHA512 7e50c1bf63477fead9189a5ade06db65a3fad04d82bccfbffb513517ab97766053c800af9551e027dedc3aee6fb35288c234d98b1a02815299bcbc463e0edd87 DIST rubyntlm-0.6.4.gem 35840 BLAKE2B 99f9f8ac253ba604a3d3821b09a49308812b40a8398fc797d0e1d20884f91255a67f7ece691b1290a35d547757477e3238f27b36362355f13b8a051a6797f8d0 SHA512 04e0ffd6e34e2eeefcee065ccd15269a43a4c6ead743f5280106cdb9caad422604f7a39d81096d76ff98d28394e8f47cc85c7efae0b4b7d80c835e8291f52156 DIST rubyntlm-0.6.5.gem 36352 BLAKE2B 3b03d50d09ff70261301526a8727dffa49e510a8e94d75382160e0eb8634ba82066e57c35bb2511e859867a952d9d4b2eb466404e1f0174264ac4feb22e78260 SHA512 6b55d06db1ce91600b858ace4304dc7b4d94158fb4389b4244aaf8857b9e32d16ac92a2052f6e235b1e47579e180959a257e0716892faa4a4c51b89e060193c0 diff --git a/dev-ruby/rubyntlm/rubyntlm-0.6.3-r1.ebuild b/dev-ruby/rubyntlm/rubyntlm-0.6.3-r1.ebuild deleted file mode 100644 index fcb483e3a3ce..000000000000 --- a/dev-ruby/rubyntlm/rubyntlm-0.6.3-r1.ebuild +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -USE_RUBY="ruby27 ruby30 ruby31 ruby32" - -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" - -inherit ruby-fakegem - -DESCRIPTION="Ruby/NTLM provides message creator and parser for the NTLM authentication" -HOMEPAGE="https://github.com/winrb/rubyntlm" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 ~arm ~ppc64 ~x86" - -all_ruby_prepare() { - sed -i -e '/simplecov/ s:^:#:' spec/spec_helper.rb || die -} diff --git a/dev-ruby/rubyntlm/rubyntlm-0.6.5.ebuild b/dev-ruby/rubyntlm/rubyntlm-0.6.5.ebuild index 5800060c0f88..7441bf434fb5 100644 --- a/dev-ruby/rubyntlm/rubyntlm-0.6.5.ebuild +++ b/dev-ruby/rubyntlm/rubyntlm-0.6.5.ebuild @@ -15,7 +15,7 @@ HOMEPAGE="https://github.com/winrb/rubyntlm" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~arm ~ppc64 ~x86" +KEYWORDS="amd64 ~arm ~ppc64 ~x86" ruby_add_depend "dev-ruby/base64" diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0.ebuild deleted file mode 100644 index e76c9e2a9822..000000000000 --- a/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby27 ruby30 ruby31 ruby32" - -# NOTE: this package contains precompiled code. It appears that all -# source code can be found at https://code.google.com/p/selenium/ but the -# repository is not organized in a way so that we can easily rebuild the -# suited shared object. We'll just try our luck with the precompiled -# objects for now. - -RUBY_FAKEGEM_RECIPE_DOC="none" -RUBY_FAKEGEM_EXTRADOC="CHANGES README.md" - -RUBY_FAKEGEM_TASK_TEST="" - -RUBY_FAKEGEM_GEMSPEC="selenium-webdriver.gemspec" - -RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so" -QA_PREBUILT="*/x_ignore_nofocus.so" - -inherit ruby-fakegem - -DESCRIPTION="This gem provides Ruby bindings for WebDriver" -HOMEPAGE="https://github.com/seleniumhq/selenium" - -LICENSE="Apache-2.0" -SLOT="$(ver_cut 1)" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" -IUSE="" - -ruby_add_rdepend ">=dev-ruby/childprocess-0.5:2 - >=dev-ruby/rexml-3.2.5:3 - >=dev-ruby/rubyzip-1.2.2:*" diff --git a/dev-ruby/sus-fixtures-async/Manifest b/dev-ruby/sus-fixtures-async/Manifest index b55b701b10b0..2eafbf5dba4c 100644 --- a/dev-ruby/sus-fixtures-async/Manifest +++ b/dev-ruby/sus-fixtures-async/Manifest @@ -1,5 +1,3 @@ -DIST sus-fixtures-async-0.1.1.tar.gz 5017 BLAKE2B f293d9fe336b05e510a82c4337250f48b871eab8c38b7d9587a6402d19689197eb6a2b1f7f14e7b5823246b6f14d104e7e49f14f84a980392dd545543ffcd733 SHA512 cca073491d143b0ceaff34ada08d416ea43a035bc887c6dec02f62372724d891f47e9dfa8d749f6e485e7d14da8c395dc67185ed0a91d9ea0eb5466d3164c378 -DIST sus-fixtures-async-0.1.2.tar.gz 4988 BLAKE2B da9bfec59489ad1a2fdf0e86a75083e36826d0bb73d6fd482bdae0e842421c59db943669eb101ed4488f963130c387e4b5eed88b4388b4b4ea19cefd2ab1b9db SHA512 effc602b6ea4b3ed56fe9c578a621195ef19cc6e7e858fa06b4a9ecfbc1d27db6b302a7f6567d8b711165eff3ab0f750971eef0c02262855ee35b9eaf4448c1e DIST sus-fixtures-async-0.1.3.tar.gz 4991 BLAKE2B a2e8d5ff1974e0f69d7f821194fa1386efc8fc1e4592c97da99863f32d0d6002c9659ec2e8341d64e13a388807c16b0b816170c60d4f1efa985a58cf7baa58bb SHA512 1361de64829f242bcef47fc152e7a18e4b261ad5ed54be7a83111781b6f9ed196385303387f155a02a7628a91c7560654dc0c1c214419a7256133ce559627dbc DIST sus-fixtures-async-0.1.4.tar.gz 6622 BLAKE2B 8dad4dbc634c1b41f10197146bbf59e491333b0dcbb095feba82cbc2bdfc648822dc0e4ffe7d08fbf26e9e113ee4e039680ae96e6178ad32ad13afbd08b24b92 SHA512 bd3741ce31a48f578f0eba6af172f4d870cb6f8f2f0ac2a42e41fb6c95bacbbfa89322b8f9442722e7ba91fab879609262c0a775bc9a7ea72c454b847f46ef5f DIST sus-fixtures-async-0.2.0.tar.gz 6898 BLAKE2B 38612be4c645628179fbcc95c9fdbac6b3f5bf97e9ba43e7b8e69d45b00d029d91241ca482c014ed03f8f077aeff35b132d39f58bac47ded5520757b62133aa9 SHA512 0ef78b4f8edb1d48ac0e4af81d91c287b7752bc8c5b92db94227f5d0937f40ea4c84b57ca0b1bfeba77c7bda114e4387c490dc4ce67f23daa4afe13ae9994fb6 diff --git a/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.1.ebuild b/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.1.ebuild deleted file mode 100644 index cee9eac085d1..000000000000 --- a/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.1.ebuild +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright 2022-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby27 ruby30 ruby31 ruby32" - -RUBY_FAKEGEM_EXTRADOC="readme.md" -RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" -RUBY_FAKEGEM_RECIPE_TEST="sus" - -inherit ruby-fakegem - -DESCRIPTION="Convenient fixture for testing async components in a reactor" -HOMEPAGE="https://github.com/socketry/sus-fixtures-async" -SRC_URI="https://github.com/socketry/sus-fixtures-async/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86" - -ruby_add_rdepend " - dev-ruby/async - dev-ruby/sus -" - -PATCHES=( - "${FILESDIR}"/${PN}-0.1.1-tests-require.patch -) - -all_ruby_prepare() { - sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die - - # Remove the sus configuration which enabled coverage checks. - # Its dependency is not packaged. - rm -f config/sus.rb || die -} diff --git a/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.2.ebuild b/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.2.ebuild deleted file mode 100644 index 1e28b846551a..000000000000 --- a/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.2.ebuild +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright 2022-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby31 ruby32" - -RUBY_FAKEGEM_EXTRADOC="readme.md" -RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" -RUBY_FAKEGEM_RECIPE_TEST="sus" - -inherit ruby-fakegem - -DESCRIPTION="Convenient fixture for testing async components in a reactor" -HOMEPAGE="https://github.com/socketry/sus-fixtures-async" -SRC_URI="https://github.com/socketry/sus-fixtures-async/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" - -ruby_add_rdepend " - dev-ruby/async - >=dev-ruby/sus-0.10:0 -" - -PATCHES=( - "${FILESDIR}"/${PN}-0.1.1-tests-require.patch -) - -all_ruby_prepare() { - sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die - - # Remove the sus configuration which enabled coverage checks. - # Its dependency is not packaged. - rm -f config/sus.rb || die -} diff --git a/dev-ruby/timecop/Manifest b/dev-ruby/timecop/Manifest index 4f332b255f86..f07869614f41 100644 --- a/dev-ruby/timecop/Manifest +++ b/dev-ruby/timecop/Manifest @@ -1,4 +1,2 @@ DIST timecop-0.9.10.tar.gz 20101 BLAKE2B 05fa8fae57700c4d18f3fea51e35be5fa425ac8487333edfecde5a417e0d192d4d03047909c7e8b2e32c885786159fa1be36de466f9920cde989a8d55d248026 SHA512 17a10e5aa951cccd561ebb098eb2078e35b4bd4860bf9bfe865471eee6def4e724560905b133bfec840445eaac8b12ae8eeae01e460f25a9415c3c2748dcf8fd DIST timecop-0.9.6.gem 17408 BLAKE2B 53afa8313be94fb8774812b014f11d9a134b51b7dafcc0fd8d91d10756e042bfd6d56b10f8072c1d606519e532beb2e02032bd4e3f6d45b4cf41dd968ba86224 SHA512 a5cbdf38caa5bccb9887a6abb5d99bdd1470c9ff8d52d19f0c46f116dc73b62512f76021adc1ec98ca4abe85ca61a4ab1e821d80980fa7ab3c821abd13b9695a -DIST timecop-0.9.7.tar.gz 17818 BLAKE2B c978a3765864963b4dbbb8a9cf2172208fa7b66afd68417a057bba44b6d35141bab5182bef3404d6233f394e9d874026886dc85b2e400908bdbf2f3af273b6bf SHA512 4db43b655225b8017769497b5ffc88d7b6d728677439ade09d8e0b8e8ef01c0307e49575ed9e1d2ac379cd222a5a0d34feae018d15ee34b70934e93a019a76e6 -DIST timecop-0.9.8.tar.gz 17936 BLAKE2B bb66dac74df498b6a5c284805c2c8a486523d43c2923c2e11f65d24bc2e9ad59c3bdd356bf3e93946859ed9e95ac9924e48747afb17ec81a5378e0370d7dff20 SHA512 cbf74e8d4e459f17cb841fee14353feccfa26e401d999521abb5653639a3d6b8e0dbd73d4317cb18b185d33d23e20e7603992cd6e2752ac74cbf0c0c927263b3 diff --git a/dev-ruby/timecop/timecop-0.9.7.ebuild b/dev-ruby/timecop/timecop-0.9.7.ebuild deleted file mode 100644 index 5c78acdec7fd..000000000000 --- a/dev-ruby/timecop/timecop-0.9.7.ebuild +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby30 ruby31 ruby32" - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_TASK_TEST="test" - -RUBY_FAKEGEM_TASK_DOC="rdoc" -RUBY_FAKEGEM_DOCDIR="rdoc" -RUBY_FAKEGEM_EXTRADOC="README.markdown" -RUBY_FAKEGEM_GEMSPEC="timecop.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="A gem providing 'time travel' and 'time freezing' capabilities" -HOMEPAGE="https://github.com/travisjeffery/timecop" -SRC_URI="https://github.com/travisjeffery/timecop/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="" - -ruby_add_bdepend "test? ( dev-ruby/activesupport dev-ruby/mocha )" - -all_ruby_prepare() { - sed -e '/bundler/ s:^:#:' -e '/History.rdoc/d' \ - -i Rakefile test/test_helper.rb test/timecop_with_active_support_test.rb || die - sed -i -e '/rubygems/ a\gem "test-unit"' \ - -e '/minitest\/rg/ s:^:#:' -e '/pry/ s:^:#:' test/test_helper.rb || die -} - -each_ruby_test() { - for f in test/*_test.rb ; do - ${RUBY} -Ilib $f || die - done -} diff --git a/dev-ruby/timecop/timecop-0.9.8.ebuild b/dev-ruby/timecop/timecop-0.9.8.ebuild deleted file mode 100644 index c8a8081ee674..000000000000 --- a/dev-ruby/timecop/timecop-0.9.8.ebuild +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby31 ruby32 ruby33" - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_TASK_TEST="test" - -RUBY_FAKEGEM_TASK_DOC="rdoc" -RUBY_FAKEGEM_DOCDIR="rdoc" -RUBY_FAKEGEM_EXTRADOC="README.markdown" -RUBY_FAKEGEM_GEMSPEC="timecop.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="A gem providing 'time travel' and 'time freezing' capabilities" -HOMEPAGE="https://github.com/travisjeffery/timecop" -SRC_URI="https://github.com/travisjeffery/timecop/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="" - -ruby_add_bdepend "test? ( dev-ruby/activesupport dev-ruby/mocha )" - -all_ruby_prepare() { - sed -e '/bundler/ s:^:#:' -e '/History.rdoc/d' \ - -i Rakefile test/test_helper.rb test/timecop_with_active_support_test.rb || die - sed -i -e '/rubygems/ a\gem "test-unit"' \ - -e '/minitest\/rg/ s:^:#:' -e '/pry/ s:^:#:' test/test_helper.rb || die -} - -each_ruby_test() { - for f in test/*_test.rb ; do - ${RUBY} -Ilib $f || die - done -} diff --git a/dev-scheme/akku/Manifest b/dev-scheme/akku/Manifest index f2de041e47b6..f92298f6e8f6 100644 --- a/dev-scheme/akku/Manifest +++ b/dev-scheme/akku/Manifest @@ -1 +1,2 @@ +DIST akku-v1.1.0.tar.bz2 415934 BLAKE2B 71bed28261307e0bff9f0c277795c8b6b4621d13385dc21290408ee189467b15a6e9cd607522b5881328ab8c9e99331e76846d7cf1e2c655b7591dc06294de22 SHA512 8eb61db9196ba95aa6f45acab609e2daf31d52245907ce49c2d2e2d34ee9b2da91baefd3bb2600d0e215bbcefc5e08a0f51555e362d726d7b1fc988215df6ad6 DIST akku-v1.1.0.tar.gz 492996 BLAKE2B 7e3d549ed7f7fc0b6e84a41ff03d66398d2a464d6aa65dc92780a2b657d4476fef592543fba0fefe0da8ee429d97d4dcc0cf13ecd53c7be425b3f292b7b1c93d SHA512 e728bd80aaa21ca896e054e71a17ee519608b7c436f9613c688dba666f0120562174b7dca3156299528c1063a74e8faa8b8a77d1b7166d7506dec6b51d555825 diff --git a/dev-scheme/akku/akku-1.1.0-r100.ebuild b/dev-scheme/akku/akku-1.1.0-r100.ebuild new file mode 100644 index 000000000000..e0757d0bb958 --- /dev/null +++ b/dev-scheme/akku/akku-1.1.0-r100.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="Language package manager for Scheme" +HOMEPAGE="https://akkuscm.org/" + +if [[ "${PV}" == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.com/akkuscm/${PN}.git" +else + SRC_URI="https://gitlab.com/akkuscm/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2" + KEYWORDS="~amd64" + S="${WORKDIR}/${PN}-v${PV}" +fi + +LICENSE="GPL-3+" +SLOT="0" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +# tests require network access +RESTRICT="test" + +RDEPEND=" + ${GUILE_DEPS} + net-misc/curl[ssl] +" +DEPEND="${RDEPEND}" + +# Installs into its own path +# https://gitlab.com/akkuscm/akku/-/commit/d25da297fec2a2b16427359a2cbb0ec745dd8c58 +QA_PREBUILT="usr/*/${PN}/guile/*/site-ccache/*" + +src_prepare() { + guile_src_prepare + + eautoreconf +} + +src_compile() { + touch bootstrap.db || die + + guile_src_compile +} diff --git a/dev-scheme/bytestructures/bytestructures-2.0.2-r100.ebuild b/dev-scheme/bytestructures/bytestructures-2.0.2-r100.ebuild new file mode 100644 index 000000000000..1739ac8b7c62 --- /dev/null +++ b/dev-scheme/bytestructures/bytestructures-2.0.2-r100.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="Structured access to bytevector contents" +HOMEPAGE="https://github.com/TaylanUB/scheme-bytestructures/" +SRC_URI="https://github.com/TaylanUB/scheme-${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/scheme-${P}" + +LICENSE="LGPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND="${GUILE_DEPS}" +DEPEND="${RDEPEND}" + +src_prepare() { + guile_src_prepare + eautoreconf +} diff --git a/dev-scheme/fibers/fibers-1.2.0_p20230522-r100.ebuild b/dev-scheme/fibers/fibers-1.2.0_p20230522-r100.ebuild new file mode 100644 index 000000000000..c27f6e424d58 --- /dev/null +++ b/dev-scheme/fibers/fibers-1.2.0_p20230522-r100.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +[[ ${PV} == *_p20230522 ]] && COMMIT=83712f630a976e3084329c9917c40bde19fcc7e5 + +DESCRIPTION="Lightweight concurrency facility for Guile Scheme" +HOMEPAGE="https://github.com/wingo/fibers/ + https://github.com/wingo/fibers/wiki/Manual/" +SRC_URI="https://github.com/wingo/${PN}/archive/${COMMIT}.tar.gz + -> ${P}.tar.gz" +S="${WORKDIR}"/${PN}-${COMMIT} + +LICENSE="LGPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND="${GUILE_DEPS}" +DEPEND="${RDEPEND}" + +src_prepare() { + guile_src_prepare + + eautoreconf +} + +src_configure() { + guile_foreach_impl econf --disable-Werror +} + +src_install() { + guile_src_install + + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/dev-scheme/goosh/goosh-1.3-r100.ebuild b/dev-scheme/goosh/goosh-1.3-r100.ebuild new file mode 100644 index 000000000000..a5bff0f6faef --- /dev/null +++ b/dev-scheme/goosh/goosh-1.3-r100.ebuild @@ -0,0 +1,20 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit guile + +DESCRIPTION="Small process-control library for Guile" +HOMEPAGE="http://arglist.com/guile/" +SRC_URI="http://arglist.com/guile/${P}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~riscv ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND="${GUILE_DEPS}" +BDEPEND="${RDEPEND}" diff --git a/dev-scheme/guile-colorized/guile-colorized-0.1_p20191205-r100.ebuild b/dev-scheme/guile-colorized/guile-colorized-0.1_p20191205-r100.ebuild new file mode 100644 index 000000000000..d8f4c69f42d0 --- /dev/null +++ b/dev-scheme/guile-colorized/guile-colorized-0.1_p20191205-r100.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit guile + +DESCRIPTION="Colorized REPL for GNU Guile" +HOMEPAGE="https://gitlab.com/NalaGinrut/guile-colorized/" + +if [[ "${PV}" == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.com/NalaGinrut/${PN}.git" +else + # Latest release (before this commit from 2019) was in 2015 + COMMIT_SHA="1625a79f0e31849ebd537e2a58793fb45678c58f" + SRC_URI="https://gitlab.com/NalaGinrut/${PN}/-/archive/${COMMIT_SHA}.tar.bz2 -> ${P}.tar.bz2" + KEYWORDS="~amd64" + S="${WORKDIR}/${PN}-${COMMIT_SHA}" +fi + +LICENSE="GPL-3" +SLOT="0" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND="${GUILE_DEPS}" +DEPEND="${RDEPEND}" + +src_install() { + my_install() { + local loadpath=$(${GUILE} -c '(display (string-append (car %load-path) "/ice-9"))') + mkdir -p "${SLOTTED_D}${loadpath}" || die + emake -C "${S}" TARGET="${SLOTTED_D}${loadpath}" install + } + guile_foreach_impl my_install + guile_merge_roots + guile_unstrip_ccache + + einstalldocs +} diff --git a/dev-scheme/guile-colorized/guile-colorized-9999.ebuild b/dev-scheme/guile-colorized/guile-colorized-9999.ebuild index 79eef16351ba..d8f4c69f42d0 100644 --- a/dev-scheme/guile-colorized/guile-colorized-9999.ebuild +++ b/dev-scheme/guile-colorized/guile-colorized-9999.ebuild @@ -1,8 +1,11 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 +GUILE_COMPAT=( 2-2 3-0 ) +inherit guile + DESCRIPTION="Colorized REPL for GNU Guile" HOMEPAGE="https://gitlab.com/NalaGinrut/guile-colorized/" @@ -20,20 +23,20 @@ fi LICENSE="GPL-3" SLOT="0" -RDEPEND=">=dev-scheme/guile-2.0.9:=" -DEPEND="${RDEPEND}" - -src_prepare() { - default +REQUIRED_USE="${GUILE_REQUIRED_USE}" - # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38112 - find "${S}" -name "*.scm" -exec touch {} + || die -} +RDEPEND="${GUILE_DEPS}" +DEPEND="${RDEPEND}" src_install() { - einstalldocs + my_install() { + local loadpath=$(${GUILE} -c '(display (string-append (car %load-path) "/ice-9"))') + mkdir -p "${SLOTTED_D}${loadpath}" || die + emake -C "${S}" TARGET="${SLOTTED_D}${loadpath}" install + } + guile_foreach_impl my_install + guile_merge_roots + guile_unstrip_ccache - local loadpath=$(guile -c '(display (string-append (car %load-path) "/ice-9"))') - mkdir -p "${D}${loadpath}" - emake TARGET="${D}${loadpath}" install + einstalldocs } diff --git a/dev-scheme/guile-config/guile-config-0.5.1-r100.ebuild b/dev-scheme/guile-config/guile-config-0.5.1-r100.ebuild new file mode 100644 index 000000000000..3b2f6ea9a42a --- /dev/null +++ b/dev-scheme/guile-config/guile-config-0.5.1-r100.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="Guile application configuration parsing library" +HOMEPAGE="https://gitlab.com/a-sassmannshausen/guile-config/" +SRC_URI="https://gitlab.com/a-sassmannshausen/${PN}/-/archive/${PV}/${P}.tar.bz2" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND="${GUILE_DEPS}" +DEPEND="${RDEPEND}" + +src_prepare() { + guile_src_prepare + eautoreconf +} diff --git a/dev-scheme/guile-dbd-postgresql/Manifest b/dev-scheme/guile-dbd-postgresql/Manifest index c65f56f71ecb..3a9066697cb9 100644 --- a/dev-scheme/guile-dbd-postgresql/Manifest +++ b/dev-scheme/guile-dbd-postgresql/Manifest @@ -1 +1,2 @@ DIST guile-dbi-2.1.8.tar.gz 85842 BLAKE2B 6be2f559bd0b194153d3b6659a6f794227c7b0d5c4f9f9f927398fa5af59913a4a56ef12b6e69756c66275b5dbad6861eea7a92adf4e247ca14ad017aa1daa30 SHA512 f3bb94feebe472fc23e891634c5281bc7e7597574ab7acb4b9cdfa59ee6510723550b2cfb1df3f0d9adc919ce0000478e78a6c2f227ca5dc8b50f2804ec0e37a +DIST guile-dbi-2.1.9.tar.gz 90514 BLAKE2B f4adeb33636972c33f5bdb40c906713b35bec4b1d3afc9fbcd55d74d1d5a957b524bbefeb04e9e5ff1cd17e6a40e218d84220f8eaeeaee09bf67604fa1e87e18 SHA512 2f6ec4c792b487b2552eda06b3ee3e470ae0e603e30abafacfb597281a44c53838d7b16d447cf1ee35f9b994c5b0ed1bbf3497eb1e64e783017898e30d82d427 diff --git a/dev-scheme/guile-dbd-postgresql/guile-dbd-postgresql-2.1.9.ebuild b/dev-scheme/guile-dbd-postgresql/guile-dbd-postgresql-2.1.9.ebuild new file mode 100644 index 000000000000..917fa0737728 --- /dev/null +++ b/dev-scheme/guile-dbd-postgresql/guile-dbd-postgresql-2.1.9.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 3-0 ) +inherit autotools guile + +DESCRIPTION="Guile DBI driver for PostgreSQL" +HOMEPAGE="https://github.com/opencog/guile-dbi/" +SRC_URI="https://github.com/opencog/guile-dbi/archive/guile-dbi-${PV}.tar.gz" +S="${WORKDIR}"/guile-dbi-guile-dbi-${PV}/${PN} + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + dev-db/postgresql:* + >=dev-scheme/guile-dbi-2.1.9[${GUILE_USEDEP}] +" +DEPEND="${RDEPEND}" + +src_prepare() { + guile_src_prepare + + eautoreconf +} + +src_install() { + guile_src_install + + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/dev-scheme/guile-dbd-sqlite3/Manifest b/dev-scheme/guile-dbd-sqlite3/Manifest index c65f56f71ecb..3a9066697cb9 100644 --- a/dev-scheme/guile-dbd-sqlite3/Manifest +++ b/dev-scheme/guile-dbd-sqlite3/Manifest @@ -1 +1,2 @@ DIST guile-dbi-2.1.8.tar.gz 85842 BLAKE2B 6be2f559bd0b194153d3b6659a6f794227c7b0d5c4f9f9f927398fa5af59913a4a56ef12b6e69756c66275b5dbad6861eea7a92adf4e247ca14ad017aa1daa30 SHA512 f3bb94feebe472fc23e891634c5281bc7e7597574ab7acb4b9cdfa59ee6510723550b2cfb1df3f0d9adc919ce0000478e78a6c2f227ca5dc8b50f2804ec0e37a +DIST guile-dbi-2.1.9.tar.gz 90514 BLAKE2B f4adeb33636972c33f5bdb40c906713b35bec4b1d3afc9fbcd55d74d1d5a957b524bbefeb04e9e5ff1cd17e6a40e218d84220f8eaeeaee09bf67604fa1e87e18 SHA512 2f6ec4c792b487b2552eda06b3ee3e470ae0e603e30abafacfb597281a44c53838d7b16d447cf1ee35f9b994c5b0ed1bbf3497eb1e64e783017898e30d82d427 diff --git a/dev-scheme/guile-dbd-sqlite3/guile-dbd-sqlite3-2.1.9.ebuild b/dev-scheme/guile-dbd-sqlite3/guile-dbd-sqlite3-2.1.9.ebuild new file mode 100644 index 000000000000..34b6f8998c55 --- /dev/null +++ b/dev-scheme/guile-dbd-sqlite3/guile-dbd-sqlite3-2.1.9.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 3-0 ) +inherit autotools guile + +DESCRIPTION="Guile DBI driver for SQLite" +HOMEPAGE="https://github.com/opencog/guile-dbi/" +SRC_URI="https://github.com/opencog/guile-dbi/archive/guile-dbi-${PV}.tar.gz" +S="${WORKDIR}"/guile-dbi-guile-dbi-${PV}/${PN} + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + dev-db/sqlite:3= + >=dev-scheme/guile-dbi-2.1.9[${GUILE_USEDEP}] +" +DEPEND="${RDEPEND}" + +src_prepare() { + guile_src_prepare + + eautoreconf +} + +src_install() { + guile_src_install + + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/dev-scheme/guile-dbi/Manifest b/dev-scheme/guile-dbi/Manifest index c65f56f71ecb..3a9066697cb9 100644 --- a/dev-scheme/guile-dbi/Manifest +++ b/dev-scheme/guile-dbi/Manifest @@ -1 +1,2 @@ DIST guile-dbi-2.1.8.tar.gz 85842 BLAKE2B 6be2f559bd0b194153d3b6659a6f794227c7b0d5c4f9f9f927398fa5af59913a4a56ef12b6e69756c66275b5dbad6861eea7a92adf4e247ca14ad017aa1daa30 SHA512 f3bb94feebe472fc23e891634c5281bc7e7597574ab7acb4b9cdfa59ee6510723550b2cfb1df3f0d9adc919ce0000478e78a6c2f227ca5dc8b50f2804ec0e37a +DIST guile-dbi-2.1.9.tar.gz 90514 BLAKE2B f4adeb33636972c33f5bdb40c906713b35bec4b1d3afc9fbcd55d74d1d5a957b524bbefeb04e9e5ff1cd17e6a40e218d84220f8eaeeaee09bf67604fa1e87e18 SHA512 2f6ec4c792b487b2552eda06b3ee3e470ae0e603e30abafacfb597281a44c53838d7b16d447cf1ee35f9b994c5b0ed1bbf3497eb1e64e783017898e30d82d427 diff --git a/dev-scheme/guile-dbi/files/guile-dbi-2.1.9-find-correct-site-dir.patch b/dev-scheme/guile-dbi/files/guile-dbi-2.1.9-find-correct-site-dir.patch new file mode 100644 index 000000000000..c188465575b3 --- /dev/null +++ b/dev-scheme/guile-dbi/files/guile-dbi-2.1.9-find-correct-site-dir.patch @@ -0,0 +1,32 @@ +https://github.com/opencog/guile-dbi/commit/56e12dcab139c373dafccdd72fa2a140d82f3910 +https://github.com/opencog/guile-dbi/issues/6 +https://github.com/opencog/guile-dbi/issues/7 + +From 56e12dcab139c373dafccdd72fa2a140d82f3910 Mon Sep 17 00:00:00 2001 +From: Linas Vepstas <linas@linas.org> +Date: Mon, 17 Jul 2023 19:42:45 +0300 +Subject: [PATCH] Bug-fix for issues #6 and #7 + +Seems to work for me... +--- a/configure.ac ++++ b/configure.ac +@@ -53,13 +53,13 @@ LTDL_INIT + + # Checks for libraries. + PKG_CHECK_MODULES([GUILE], [guile-3.0]) +-#GUILE_PKG([3.0]) +-#GUILE_FLAGS +-#GUILE_SITE_DIR ++GUILE_PKG([3.0]) ++GUILE_FLAGS ++GUILE_SITE_DIR + #-- +-#CFLAGS="${CFLAGS} ${LTDLINCL} `$GUILECONFIG compile`" +-#LIBS="$LIBLTDL `$GUILECONFIG link`" +-#GUILE_SITE=`$GUILECONFIG info sitedir` ++CFLAGS="${CFLAGS} ${LTDLINCL} `$GUILE_CONFIG compile`" ++LIBS="$LIBLTDL `$GUILE_CONFIG link`" ++GUILE_SITE=`$GUILE_CONFIG info sitedir` + + # Check for makeinfo; avoid ugliness if not installed. + AC_CHECK_PROG(have_makeinfo,makeinfo,yes,no) diff --git a/dev-scheme/guile-dbi/guile-dbi-2.1.9.ebuild b/dev-scheme/guile-dbi/guile-dbi-2.1.9.ebuild new file mode 100644 index 000000000000..0356148ea666 --- /dev/null +++ b/dev-scheme/guile-dbi/guile-dbi-2.1.9.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 3-0 ) +inherit autotools guile + +DESCRIPTION="An SQL database interface for Guile" +HOMEPAGE="https://github.com/opencog/guile-dbi/" +SRC_URI="https://github.com/opencog/${PN}/archive/${P}.tar.gz" +S="${WORKDIR}"/${PN}-${P}/${PN} + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + dev-libs/libltdl +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/guile-dbi-2.1.9-find-correct-site-dir.patch +) + +src_prepare() { + guile_src_prepare + + eautoreconf +} + +src_install() { + guile_src_install + + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/dev-scheme/guile-gcrypt/guile-gcrypt-0.4.0-r100.ebuild b/dev-scheme/guile-gcrypt/guile-gcrypt-0.4.0-r100.ebuild new file mode 100644 index 000000000000..bfe2d620c882 --- /dev/null +++ b/dev-scheme/guile-gcrypt/guile-gcrypt-0.4.0-r100.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="Guile bindings of libgcrypt" +HOMEPAGE="https://notabug.org/cwebber/guile-gcrypt" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://notabug.org/cwebber/${PN}.git" +else + SRC_URI="https://notabug.org/cwebber/guile-gcrypt/archive/v${PV}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}/${PN}" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-3" +SLOT="0" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + dev-libs/libgcrypt:0= +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + virtual/pkgconfig +" + +src_prepare() { + guile_src_prepare + eautoreconf +} diff --git a/dev-scheme/guile-gi/files/guile-gi-0.3.2-function-cast.patch b/dev-scheme/guile-gi/files/guile-gi-0.3.2-function-cast.patch new file mode 100644 index 000000000000..74d325bf7c20 --- /dev/null +++ b/dev-scheme/guile-gi/files/guile-gi-0.3.2-function-cast.patch @@ -0,0 +1,89 @@ +https://bugs.gentoo.org/880955 + +Based on https://github.com/spk121/guile-gi/commit/94144d0beffa96bf62c03bc71b498b94dafacc46 + +--- a/src/gig_callback.c ++++ b/src/gig_callback.c +@@ -296,6 +296,12 @@ callback_binding_inner(struct callback_binding_args *args) + return (void *)1; + } + ++inline static void * ++callback_binding_inner_v(void *args) ++{ ++ return callback_binding_inner(args); ++} ++ + void + callback_binding(ffi_cif *cif, gpointer ret, gpointer *ffi_args, gpointer user_data) + { +@@ -314,7 +320,7 @@ callback_binding(ffi_cif *cif, gpointer ret, gpointer *ffi_args, gpointer user_d + if (scm_is_true(scm_fluid_ref(gig_callback_thread_fluid))) + callback_binding_inner(&args); + else { +- if (NULL == scm_with_guile(callback_binding_inner, &args)) ++ if (NULL == scm_with_guile(callback_binding_inner_v, &args)) + scm_c_eval_string("(quit EXIT_FAILURE)"); + } + } +@@ -365,6 +371,12 @@ c_callback_binding_inner(struct callback_binding_args *args) + return (void *)1; + } + ++inline static void * ++c_callback_binding_inner_v(void *args) ++{ ++ return c_callback_binding_inner(args); ++} ++ + void + c_callback_binding(ffi_cif *cif, gpointer ret, gpointer *ffi_args, gpointer user_data) + { +@@ -383,7 +395,7 @@ c_callback_binding(ffi_cif *cif, gpointer ret, gpointer *ffi_args, gpointer user + if (scm_is_true(scm_fluid_ref(gig_callback_thread_fluid))) + c_callback_binding_inner(&args); + else { +- if (NULL == scm_with_guile(c_callback_binding_inner, &args)) ++ if (NULL == scm_with_guile(c_callback_binding_inner_v, &args)) + scm_c_eval_string("(quit EXIT_FAILURE)"); + } + } +@@ -692,10 +704,16 @@ callback_free(GigCallback *gcb) + g_free(gcb); + } + ++inline static void ++callback_free_v(void *gcb) ++{ ++ callback_free(gcb); ++} ++ + static void + gig_fini_callback(void) + { + g_debug("Freeing callbacks"); +- g_slist_free_full(callback_list, (GDestroyNotify)callback_free); ++ g_slist_free_full(callback_list, (GDestroyNotify)callback_free_v); + callback_list = NULL; + } +--- a/src/gig_type_private.c ++++ b/src/gig_type_private.c +@@ -59,8 +59,14 @@ _boxed_funcs_free(GigBoxedFuncs *funcs) + g_free(funcs); + } + ++inline static void ++_boxed_funcs_free_v(void *funcs) ++{ ++ _boxed_funcs_free(funcs); ++} ++ + void + _free_boxed_funcs() + { +- g_slist_free_full(_boxed_funcs, (GDestroyNotify)_boxed_funcs_free); ++ g_slist_free_full(_boxed_funcs, (GDestroyNotify)_boxed_funcs_free_v); + } +-- +2.46.0 + diff --git a/dev-scheme/guile-gi/guile-gi-0.3.2-r100.ebuild b/dev-scheme/guile-gi/guile-gi-0.3.2-r100.ebuild new file mode 100644 index 000000000000..1d232ddf9d51 --- /dev/null +++ b/dev-scheme/guile-gi/guile-gi-0.3.2-r100.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit virtualx autotools guile + +DESCRIPTION="Bindings for GObject Introspection and libgirepository for Guile" +HOMEPAGE="https://spk121.github.io/guile-gi/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/spk121/${PN}.git" +else + SRC_URI="https://github.com/spk121/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" +fi + +LICENSE="GPL-3" +SLOT="0" + +REQUIRED_USED="${GUILE_REQUIRED_USE}" + +DEPEND=" + ${GUILE_DEPS} + dev-libs/gobject-introspection + x11-libs/gtk+:3[introspection] +" +RDEPEND="${DEPEND}" +BDEPEND="sys-apps/texinfo" + +PATCHES=( + "${FILESDIR}"/guile-gi-0.3.2-function-cast.patch +) + +src_prepare() { + guile_src_prepare + + eautoreconf +} + +src_configure() { + guile_foreach_impl econf --enable-introspection=yes +} + +src_compile() { + my_compile() { + mkdir test || die + default + } + guile_foreach_impl my_compile +} + +src_test() { + guile_foreach_impl virtx default +} + +src_install() { + guile_src_install + + mv "${ED}"/usr/share/doc/${PN} "${ED}"/usr/share/doc/${PF} || die + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/dev-scheme/guile-gi/guile-gi-9999.ebuild b/dev-scheme/guile-gi/guile-gi-9999.ebuild index 75b8c4278d3a..1d232ddf9d51 100644 --- a/dev-scheme/guile-gi/guile-gi-9999.ebuild +++ b/dev-scheme/guile-gi/guile-gi-9999.ebuild @@ -1,9 +1,10 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit virtualx autotools +GUILE_COMPAT=( 2-2 3-0 ) +inherit virtualx autotools guile DESCRIPTION="Bindings for GObject Introspection and libgirepository for Guile" HOMEPAGE="https://spk121.github.io/guile-gi/" @@ -19,42 +20,45 @@ fi LICENSE="GPL-3" SLOT="0" +REQUIRED_USED="${GUILE_REQUIRED_USE}" + DEPEND=" - >=dev-scheme/guile-2.0.9:= + ${GUILE_DEPS} dev-libs/gobject-introspection x11-libs/gtk+:3[introspection] " RDEPEND="${DEPEND}" BDEPEND="sys-apps/texinfo" -# guile generates ELF files without use of C or machine code -# It's a portage's false positive. bug #677600 -QA_PREBUILT='*[.]go' +PATCHES=( + "${FILESDIR}"/guile-gi-0.3.2-function-cast.patch +) src_prepare() { - default - - # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38112 - find "${S}" -name "*.scm" -exec touch {} + || die + guile_src_prepare eautoreconf } src_configure() { - econf --disable-static --enable-introspection=yes + guile_foreach_impl econf --enable-introspection=yes +} + +src_compile() { + my_compile() { + mkdir test || die + default + } + guile_foreach_impl my_compile } src_test() { - virtx default + guile_foreach_impl virtx default } src_install() { - default + guile_src_install - mv "${D}"/usr/share/doc/${PN} "${D}"/usr/share/doc/${PF} || die + mv "${ED}"/usr/share/doc/${PN} "${ED}"/usr/share/doc/${PF} || die find "${ED}" -type f -name '*.la' -delete || die - - # Workaround llvm-strip problem of mangling guile ELF debug - # sections. Bug https://bugs.gentoo.org/905898 - dostrip -x /usr/$(get_libdir)/guile } diff --git a/dev-scheme/guile-git/guile-git-0.7.0-r100.ebuild b/dev-scheme/guile-git/guile-git-0.7.0-r100.ebuild new file mode 100644 index 000000000000..54a0136abb80 --- /dev/null +++ b/dev-scheme/guile-git/guile-git-0.7.0-r100.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="Guile bindings of git" +HOMEPAGE="https://gitlab.com/guile-git/guile-git/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://gitlab.com/${PN}/${PN}.git" +else + SRC_URI="https://gitlab.com/${PN}/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2" + S="${WORKDIR}/${PN}-v${PV}" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="LGPL-3+" +SLOT="0" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +# <libgit2-1.8.0: https://gitlab.com/guile-git/guile-git/-/issues/30 +RDEPEND=" + ${GUILE_DEPS} + <dev-libs/libgit2-1.8.0:= + >=dev-libs/libgit2-1.3.0:= + >=dev-scheme/bytestructures-2.0.2-r100[${GUILE_USEDEP}] +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + virtual/pkgconfig +" + +src_prepare() { + guile_src_prepare + + # network sandbox + ssh configuration + sed -i -e '/tests\/clone.scm/d' Makefile.am || die + + eautoreconf +} + +src_test() { + guile_foreach_impl emake VERBOSE="1" check +} diff --git a/dev-scheme/guile-gnutls/guile-gnutls-4.0.0-r100.ebuild b/dev-scheme/guile-gnutls/guile-gnutls-4.0.0-r100.ebuild new file mode 100644 index 000000000000..c9746c80710e --- /dev/null +++ b/dev-scheme/guile-gnutls/guile-gnutls-4.0.0-r100.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="Guile-GnuTLS provides Guile bindings for the GnuTLS library" +HOMEPAGE="https://gnutls.gitlab.io/guile/manual/ + https://gitlab.com/gnutls/guile/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://gitlab.com/gnutls/guile.git" +else + SRC_URI="https://gitlab.com/gnutls/guile/-/archive/v${PV}/guile-v${PV}.tar.bz2 + -> ${P}.tar.bz2" + S="${WORKDIR}/guile-v${PV}" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="LGPL-2.1+" +SLOT="0" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +# <gnutls-3.8.4: https://bugs.gentoo.org/930665 https://gitlab.com/gnutls/guile/-/issues/25 +RDEPEND=" + ${GUILE_DEPS} + <net-libs/gnutls-3.8.4:=[-guile(-)] +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + virtual/pkgconfig +" + +src_prepare() { + guile_src_prepare + eautoreconf +} + +src_configure() { + my_configure() { + # --disable-srp-authentication: bug #894050 + econf --disable-srp-authentication guile_snarf=${GUILESNARF} + } + guile_foreach_impl my_configure +} + +src_install() { + guile_src_install + + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/dev-scheme/guile-hall/guile-hall-0.4.1-r100.ebuild b/dev-scheme/guile-hall/guile-hall-0.4.1-r100.ebuild new file mode 100644 index 000000000000..eb5fc54a0b5a --- /dev/null +++ b/dev-scheme/guile-hall/guile-hall-0.4.1-r100.ebuild @@ -0,0 +1,31 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="Guile tooling to create and publish projects" +HOMEPAGE="https://gitlab.com/a-sassmannshausen/guile-hall/" +SRC_URI="https://gitlab.com/a-sassmannshausen/${PN}/-/archive/${PV}/${P}.tar.bz2" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + >=dev-scheme/guile-config-0.5.1-r100[${GUILE_USEDEP}] +" +DEPEND="${RDEPEND}" + +src_prepare() { + guile_src_prepare + + sed -i -e "s|@verbatiminclude |@verbatiminclude ${S}/|" doc/hall.texi || die + + eautoreconf +} diff --git a/dev-scheme/guile-json/guile-json-4.7.3-r100.ebuild b/dev-scheme/guile-json/guile-json-4.7.3-r100.ebuild new file mode 100644 index 000000000000..545f1819973f --- /dev/null +++ b/dev-scheme/guile-json/guile-json-4.7.3-r100.ebuild @@ -0,0 +1,20 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit guile + +DESCRIPTION="JSON module for Guile" +HOMEPAGE="https://savannah.nongnu.org/projects/guile-json/" +SRC_URI="http://download.savannah.nongnu.org/releases/guile-json/${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND="${GUILE_DEPS}" +DEPEND="${RDEPEND}" diff --git a/dev-scheme/guile-lib/guile-lib-0.2.7-r100.ebuild b/dev-scheme/guile-lib/guile-lib-0.2.7-r100.ebuild new file mode 100644 index 000000000000..ad310a603dfe --- /dev/null +++ b/dev-scheme/guile-lib/guile-lib-0.2.7-r100.ebuild @@ -0,0 +1,30 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit guile + +DESCRIPTION="An accumulation place for pure-scheme Guile modules" +HOMEPAGE="http://www.nongnu.org/guile-lib/" +SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRES_USE}" + +RDEPEND="${GUILE_DEPS}" +DEPEND="${RDEPEND}" + +src_prepare() { + guile_src_prepare + + sed -i -e 's/"guile"/(getenv "GUILE")/' unit-tests/os.process.scm || die +} + +src_configure() { + guile_foreach_impl econf --with-guile-site=yes +} diff --git a/dev-scheme/guile-libyaml/guile-libyaml-20211124-r100.ebuild b/dev-scheme/guile-libyaml/guile-libyaml-20211124-r100.ebuild new file mode 100644 index 000000000000..8b6169d5bf4f --- /dev/null +++ b/dev-scheme/guile-libyaml/guile-libyaml-20211124-r100.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit edo guile + +[[ ${PV} == 20211124 ]] && COMMIT=2bdacb72a65ab63264b2edc9dac9692df7ec9b3e + +DESCRIPTION="Simple yaml module for Guile using the ffi-helper from nyacc" +HOMEPAGE="https://github.com/mwette/guile-libyaml/" +SRC_URI="https://github.com/mwette/${PN}/archive/${COMMIT}.tar.gz + -> ${P}.tar.gz" +S="${WORKDIR}"/${PN}-${COMMIT} + +LICENSE="LGPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + dev-libs/libyaml +" +DEPEND="${RDEPEND}" +BDEPEND="dev-scheme/guile-nyacc" + +src_compile() { + my_compile() { + guild() { + GUILE_LOAD_COMPILED_PATH="${BUILD_DIR}" GUILE_LOAD_PATH="${S}" edo "${GUILD}" "${@}" || die + } + # Generate bindings using NYACC + guild compile-ffi --no-exec "${S}"/yaml/libyaml.ffi + + # Compile modules + mkdir -p "${BUILD_DIR}"/ccache || die + guild compile -o "${BUILD_DIR}"/ccache/libyaml.go "${S}"/yaml/libyaml.scm + guild compile -o "${BUILD_DIR}"/ccache/yaml.go "${S}"/yaml.scm + } + + guile_foreach_impl my_compile +} + +src_install() { + my_install() { + local site_dir="$(${GUILE} -c '(display (%site-dir))')" + mkdir -p "${SLOTTED_D}/${site_dir}/yaml" || die + cp "${S}/yaml/libyaml.scm" "${SLOTTED_D}/${site_dir}/yaml/" || die + cp "${S}/yaml.scm" "${SLOTTED_D}/${site_dir}/" || die + + local site_ccache_dir="$(${GUILE} -c '(display (%site-ccache-dir))')" + mkdir -p "${SLOTTED_D}/${site_ccache_dir}/yaml" || die + cp "${BUILD_DIR}/ccache/libyaml.go" "${SLOTTED_D}/${site_ccache_dir}/yaml/" || die + cp "${BUILD_DIR}/ccache/yaml.go" "${SLOTTED_D}/${site_ccache_dir}/" || die + } + + guile_foreach_impl my_install + guile_merge_roots + guile_unstrip_ccache + + einstalldocs +} diff --git a/dev-scheme/guile-lzlib/guile-lzlib-0.0.2-r100.ebuild b/dev-scheme/guile-lzlib/guile-lzlib-0.0.2-r100.ebuild new file mode 100644 index 000000000000..8d4f27a9c2c6 --- /dev/null +++ b/dev-scheme/guile-lzlib/guile-lzlib-0.0.2-r100.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="GNU Guile library providing bindings to lzlib" +HOMEPAGE="https://notabug.org/guile-lzlib/guile-lzlib/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://notabug.org/${PN}/${PN}.git" +else + SRC_URI="https://notabug.org/${PN}/${PN}/archive/${PV}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}/${PN}" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + app-arch/lzlib +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + virtual/pkgconfig +" + +DOCS=( AUTHORS ChangeLog HACKING NEWS README.org ) + +src_prepare() { + guile_src_prepare + eautoreconf +} diff --git a/dev-scheme/guile-ncurses/guile-ncurses-3.1-r100.ebuild b/dev-scheme/guile-ncurses/guile-ncurses-3.1-r100.ebuild new file mode 100644 index 000000000000..fb877bf6f978 --- /dev/null +++ b/dev-scheme/guile-ncurses/guile-ncurses-3.1-r100.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="Guile FFI to ncurses library for text-based console UI" +HOMEPAGE="https://www.gnu.org/software/guile-ncurses/" +SRC_URI="mirror://gnu/guile-ncurses/${P}.tar.gz" + +LICENSE="LGPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + dev-libs/boehm-gc + dev-libs/libatomic_ops + dev-libs/libunistring + sys-libs/ncurses:= +" +DEPEND="${RDEPEND}" +BDEPEND="sys-apps/texinfo" + +PATCHES=( + "${FILESDIR}"/${PN}-3.0-slibtool.patch # bug #843416 +) + +src_prepare() { + guile_src_prepare + + # Remove bad tests + # > In procedure list-ref: Wrong type argument in position 1: #f + local -a bad_tests=( + curs_attr_attr_off_underline + curs_attr_attr_on_blink + curs_attr_attr_on_bold + curs_attr_attr_on_dim + curs_attr_attr_on_invis + curs_attr_attr_on_protect + curs_attr_attr_on_reverse + curs_attr_attr_on_standout + curs_attr_attr_on_underline + curs_attr_attr_set + curs_attr_attr_set_normal + curs_attr_standend + curs_attr_standout + curs_bkgd_bkgd + curs_bkgd_bkgdset + termios_speed + ) + local bad_test + for bad_test in "${bad_tests[@]}" ; do + echo "#t" > test/${bad_test}.scm || die + done + + eautoreconf # 843560 +} + +src_test() { + guile_foreach_impl emake check +} + +src_install() { + guile_src_install + + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/dev-scheme/guile-nyacc/guile-nyacc-1.06.7-r100.ebuild b/dev-scheme/guile-nyacc/guile-nyacc-1.06.7-r100.ebuild new file mode 100644 index 000000000000..e00a69aa3bd5 --- /dev/null +++ b/dev-scheme/guile-nyacc/guile-nyacc-1.06.7-r100.ebuild @@ -0,0 +1,29 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit guile + +DESCRIPTION="Guile modules for generating parsers and lexical analyzers" +HOMEPAGE="http://www.nongnu.org/nyacc/" +SRC_URI="mirror://nongnu/nyacc/nyacc-${PV}.tar.gz" +S="${WORKDIR}/nyacc-${PV}" + +LICENSE="LGPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + ${GUILE_DEPS} + >=dev-scheme/bytestructures-2.0.2-r100[${GUILE_USEDEP}] +" +DEPEND="${RDEPEND}" + +src_install() { + guile_src_install + + # Fix docs location + mv "${ED}"/usr/share/doc/nyacc "${ED}"/usr/share/doc/${PF} || die +} diff --git a/dev-scheme/guile-sqlite3/guile-sqlite3-0.1.3-r100.ebuild b/dev-scheme/guile-sqlite3/guile-sqlite3-0.1.3-r100.ebuild new file mode 100644 index 000000000000..1346542b5b64 --- /dev/null +++ b/dev-scheme/guile-sqlite3/guile-sqlite3-0.1.3-r100.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="Guile bindings of sqlite3" +HOMEPAGE="https://notabug.org/guile-sqlite3/guile-sqlite3" +SRC_URI="https://notabug.org/guile-sqlite3/guile-sqlite3/archive/v${PV}.tar.gz + -> ${P}.tar.gz" +S="${WORKDIR}/${PN}" + +LICENSE="LGPL-3+ GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + dev-db/sqlite:3= +" +DEPEND="${RDEPEND}" + +src_prepare() { + guile_src_prepare + + # upstream tag on top of source tree. has no autogenerated files + eautoreconf +} diff --git a/dev-scheme/guile-ssh/guile-ssh-0.16.4-r100.ebuild b/dev-scheme/guile-ssh/guile-ssh-0.16.4-r100.ebuild new file mode 100644 index 000000000000..2de52a2e3291 --- /dev/null +++ b/dev-scheme/guile-ssh/guile-ssh-0.16.4-r100.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="Library providing access to the SSH protocol for GNU Guile" +HOMEPAGE="https://memory-heap.org/~avp/projects/guile-ssh/ + https://github.com/artyom-poptsov/guile-ssh/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/artyom-poptsov/${PN}.git" +else + SRC_URI="https://github.com/artyom-poptsov/${PN}/archive/v${PV}.tar.gz + -> ${P}.tar.gz" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + dev-libs/boehm-gc + dev-libs/libatomic_ops + net-libs/libssh:0=[server,sftp] +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + virtual/pkgconfig +" + +DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO ) + +PATCHES=( + "${FILESDIR}/${PN}-0.16.2-tests.patch" +) + +src_prepare() { + guile_src_prepare + eautoreconf +} + +src_configure() { + my_configure() { + econf guile_snarf=${GUILESNARF} + } + guile_foreach_impl my_configure +} + +src_install() { + guile_src_install + + find "${ED}" -name "*.la" -delete || die +} diff --git a/dev-scheme/guile-zlib/guile-zlib-0.1.0-r100.ebuild b/dev-scheme/guile-zlib/guile-zlib-0.1.0-r100.ebuild new file mode 100644 index 000000000000..f5d29da5871a --- /dev/null +++ b/dev-scheme/guile-zlib/guile-zlib-0.1.0-r100.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 3-0 ) +inherit autotools guile + +DESCRIPTION="GNU Guile library providing bindings to zlib" +HOMEPAGE="https://notabug.org/guile-zlib/guile-zlib/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://notabug.org/${PN}/${PN}.git" +else + SRC_URI="https://notabug.org/${PN}/${PN}/archive/v${PV}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}/${PN}" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + >=sys-libs/zlib-1.3-r4 +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + virtual/pkgconfig +" + +DOCS=( AUTHORS ChangeLog HACKING NEWS README.org ) + +PATCHES=( "${FILESDIR}/${PN}-0.1.0-gentoo.patch" ) + +src_prepare() { + guile_src_prepare + + eautoreconf +} diff --git a/dev-scheme/guile-zstd/guile-zstd-0.1.1-r100.ebuild b/dev-scheme/guile-zstd/guile-zstd-0.1.1-r100.ebuild new file mode 100644 index 000000000000..093c50da4eda --- /dev/null +++ b/dev-scheme/guile-zstd/guile-zstd-0.1.1-r100.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile + +DESCRIPTION="GNU Guile bindings to the zstd compression library" +HOMEPAGE="https://notabug.org/guile-zstd/guile-zstd/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://notabug.org/${PN}/${PN}.git" +else + SRC_URI="https://notabug.org/${PN}/${PN}/archive/v${PV}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}/${PN}" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" + +REQUIRED_USED="${GUILE_REQUIRED_USE}" + +# In zstd-1.5.5-r1 library was moved back from "/lib" to "/usr/lib". +RDEPEND=" + ${GUILE_DEPS} + >=app-arch/zstd-1.5.5-r1 +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + virtual/pkgconfig +" + +DOCS=( AUTHORS ChangeLog NEWS README ) + +src_prepare() { + guile_src_prepare + eautoreconf +} diff --git a/dev-scheme/guile/guile-3.0.10-r100.ebuild b/dev-scheme/guile/guile-3.0.10-r100.ebuild index 6e77a662ec8e..534e4389494a 100644 --- a/dev-scheme/guile/guile-3.0.10-r100.ebuild +++ b/dev-scheme/guile/guile-3.0.10-r100.ebuild @@ -42,8 +42,8 @@ DOCS=( ABOUT-NLS AUTHORS ChangeLog GUILE-VERSION HACKING NEWS README THANKS ) PATCHES=( "${FILESDIR}"/${PN}-2.2.3-gentoo-sandbox.patch ) # Where to install data files. -GUILE_DATA="${PREFIX}/usr/share/guile-data/${SLOT}" -GUILE_PCDIR="/usr/share/guile-data/${SLOT}/pkgconfig" +GUILE_DATA="${EPREFIX}/usr/share/guile-data/${SLOT}" +GUILE_PCDIR="${EPREFIX}/usr/share/guile-data/${SLOT}/pkgconfig" src_configure() { # see bug #676468 diff --git a/dev-scheme/skribilo/skribilo-0.10.0-r100.ebuild b/dev-scheme/skribilo/skribilo-0.10.0-r100.ebuild new file mode 100644 index 000000000000..abed80bb9b8d --- /dev/null +++ b/dev-scheme/skribilo/skribilo-0.10.0-r100.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit elisp-common guile + +DESCRIPTION="Document production tool written in Guile Scheme" +HOMEPAGE="https://www.nongnu.org/skribilo/" +SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="emacs" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + app-text/ghostscript-gpl + media-gfx/imagemagick + + ${GUILE_DEPS} + >=dev-scheme/guile-lib-0.2.7-r100[${GUILE_USEDEP}] + >=dev-scheme/guile-reader-0.6.3-r100[${GUILE_USEDEP}] +" +DEPEND="${RDEPEND}" +BDEPEND="emacs? ( >=app-editors/emacs-23.1:* )" + +SITEFILE="50${PN}-gentoo.el" + +src_prepare() { + default + + # gnustep-base/gnustep-base installs /usr/bin/pl that isnt the unpackaged ploticus. + sed -i -e 's/for ac_prog in ploticus pl/for ac_prog in ploticus/' configure || die +} + +src_configure() { + if ! use emacs ; then + export EMACS="no" + export EMACSLOADPATH="/dev/null" + fi + + guile_foreach_impl econf +} + +src_compile() { + guile_src_compile + + use emacs && elisp-compile ./emacs/*.el +} + +src_install() { + guile_src_install + + # Link includes DESTDIR + for file in "${ED}"/usr/share/info/*.png; do + rm "${file}" || die + dosym ../doc/${PF}/html/$(basename ${file}) ${file##${ED}} + done + + if use emacs ; then + elisp-install ${PN} ./emacs/*.el{,c} + elisp-site-file-install "${FILESDIR}/${SITEFILE}" + else + local emacsd="${D}"/usr/share/emacs + if [[ -d "${emacsd}" ]] ; then + einfo "Building without Emacs support but ${emacsd} found! Removing." + rm -r "${emacsd}" || die + fi + fi +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-scheme/xdgdirs/xdgdirs-2.2-r100.ebuild b/dev-scheme/xdgdirs/xdgdirs-2.2-r100.ebuild new file mode 100644 index 000000000000..0dc3e304acd4 --- /dev/null +++ b/dev-scheme/xdgdirs/xdgdirs-2.2-r100.ebuild @@ -0,0 +1,34 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit guile-single + +DESCRIPTION="Displays names/values of XDG Basedir variables" +HOMEPAGE="https://www.gnuvola.org/software/xdgdirs/" +SRC_URI="https://www.gnuvola.org/software/xdgdirs/${P}.tar.xz" + +LICENSE="GPL-3+ FDL-1.3" +SLOT="0" +KEYWORDS="~amd64 ~hppa ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND="${GUILE_DEPS}" +DEPEND="${RDEPEND}" + +src_prepare() { + guile-single_src_prepare + + # fix shebang + sed -i -e "/exec/ s|guile|${GUILE}|" xdgdirs.in || die +} + +src_test() { + # breaks diffs for tests if not disabled + local -x GUILE_AUTO_COMPILE=0 + + emake check +} diff --git a/dev-util/azuredatastudio/Manifest b/dev-util/azuredatastudio/Manifest index 6a677fc0c80c..ef6b414d2c63 100644 --- a/dev-util/azuredatastudio/Manifest +++ b/dev-util/azuredatastudio/Manifest @@ -1,2 +1 @@ -DIST azuredatastudio-1.49.0-amd64.deb 135147824 BLAKE2B 91beda52e72ec24c40d7502756396145117d17f7d4c7fa440c1ea03b84e782a6d966189b4db946b710400624d3bd91a9a30158b3fb59f3043c82062bd326c492 SHA512 dd76c9d670a09c440805f3bf5a66b424fb7e1f1e32643ed65852dd47771c0c310881df98a37801012e85deed82a34c42c69105a055306c6f33eb764ec1da88d4 DIST azuredatastudio-1.49.1-amd64.deb 135026616 BLAKE2B 0ad8652e7c6752cbd2f4187a9da4437175f3aa06a9b186786217f14bda91d4caf675110d582eaf03f627c59803c9dbc8fe2b6e1d75af1fccd01d2f776c2f9991 SHA512 2b8c8316a1761ea3b4e9475189058cc63b9c562dbc24f8d9a74194e18a65e4d16a5b07f01b0637eea277f2ba8b0f79ebf80143d52edb87cb6a6ee2564fbcd59a diff --git a/dev-util/azuredatastudio/azuredatastudio-1.49.0.ebuild b/dev-util/azuredatastudio/azuredatastudio-1.49.0.ebuild deleted file mode 100644 index d8d032ceea34..000000000000 --- a/dev-util/azuredatastudio/azuredatastudio-1.49.0.ebuild +++ /dev/null @@ -1,105 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit unpacker xdg - -DESCRIPTION="Data management and development tool from Microsoft" -HOMEPAGE="https://learn.microsoft.com/sql/azure-data-studio/ - https://github.com/microsoft/azuredatastudio/" -SRC_URI=" - amd64? ( - https://azuredatastudio-update.azurewebsites.net/${PV}/linux-deb-x64/stable - -> ${P}-amd64.deb - ) -" -S="${WORKDIR}" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="-* ~amd64" -IUSE="kerberos" -RESTRICT="bindist" - -# This is based on VSCode/VSCodium, so just copy their "RDEPEND". -RDEPEND=" - >=app-accessibility/at-spi2-core-2.46.0:2 - app-crypt/libsecret[crypt] - app-misc/ca-certificates - dev-libs/expat - dev-libs/glib:2 - dev-libs/nspr - dev-libs/nss - dev-util/lttng-ust:0/2.12 - media-libs/alsa-lib - media-libs/libcanberra[gtk3] - media-libs/libglvnd - media-libs/mesa - net-misc/curl - net-print/cups - sys-apps/dbus - sys-libs/zlib - sys-process/lsof - x11-libs/cairo - x11-libs/gtk+:3 - x11-libs/libdrm - x11-libs/libnotify - x11-libs/libX11 - x11-libs/libxcb - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libxkbcommon - x11-libs/libxkbfile - x11-libs/libXrandr - x11-libs/libXScrnSaver - x11-libs/pango - x11-misc/xdg-utils - kerberos? ( app-crypt/mit-krb5 ) -" -DEPEND=" - dev-libs/openssl-compat:1.0.0 -" -BDEPEND=" - dev-util/patchelf -" - -QA_PREBUILT="*" - -src_unpack() { - unpack_deb "${A}" -} - -src_prepare() { - default - - cd "${S}/usr/share" || die - - mv appdata metainfo || die - mv zsh/vendor-completions zsh/site-functions || die - - cd "${PN}" || die - - # Kerberos libs, same issue as VSCode/VSCodium. - if ! use kerberos ; then - rm -r resources/app/node_modules.asar.unpacked/kerberos || die - fi - - # Patch "System.Security.Cryptography.Native.OpenSsl.so": *.so.10 -> *.so.1.0.0 - local mssql_ext_version=4.11.1.1 - local mssql_ext_lib=System.Security.Cryptography.Native.OpenSsl.so - cd "resources/app/extensions/mssql/sqltoolsservice/Linux/${mssql_ext_version}" || die - patchelf --add-needed libcrypto.so.1.0.0 "${mssql_ext_lib}" || die - patchelf --add-needed libssl.so.1.0.0 "${mssql_ext_lib}" || die - patchelf --remove-needed libcrypto.so.10 "${mssql_ext_lib}" || die - patchelf --remove-needed libssl.so.10 "${mssql_ext_lib}" || die - rm System.Native.a || die -} - -src_install() { - cp -r . "${ED}" || die - - dosym -r "/usr/share/${PN}/${PN}" "/usr/bin/${PN}" -} diff --git a/dev-util/bcpp/Manifest b/dev-util/bcpp/Manifest index e8f30f98a742..4d1040b0d58c 100644 --- a/dev-util/bcpp/Manifest +++ b/dev-util/bcpp/Manifest @@ -2,3 +2,5 @@ DIST bcpp-20230130.tgz 155972 BLAKE2B f51ae04ef75125d2040f9ef2ab9fb5513ad83fc609 DIST bcpp-20230130.tgz.asc 729 BLAKE2B ffd6266919c8598067b09ac9f855c3b1d93dbd4d6536dbd68a12ccbc5f8cc62e10315e44376fc72d40881e43dfa51676a1af46400aed66bf4c2ac1d4a17b499c SHA512 b52cfa95115726ec7b9575ef8a813fc5d1eb8dc7083b19508d5058b80d41203e70d3cd61a18eea4f35755f77e92ce15c2a1f24db0befb3b62dab3b71065a3955 DIST bcpp-20240111.tgz 156659 BLAKE2B 9bcb986bd434e8c574a25d5e6a4dab08f5aec342bd60e46110902e7f5d924fff4295fc23ee5fc9190ef10c36fa89b19d9f2baff79150899f7618c06df543ae88 SHA512 e5211f484de3de4b6172d01fa9af50e2ed060cfb81d366575581480c1903dccb13b1e247809e17ae9a3cebc49d52b180b928a6abcad5f5b67b2af745b035e249 DIST bcpp-20240111.tgz.asc 729 BLAKE2B c9933393c10b77bbeefcef315b6ae8d3df75fc3ee1d1880a661775ca11cd2965864191beae23a51b78be2db995d75f3e9cd0ac44b465905a19a21c7eb8463722 SHA512 50e28e55e533ce9641b2b6c95ae937a546f32ebc41a4c77a336cfb1c3528ba0c9e193fd0320cb145c31e31c941661c9c4dfae5eb1c5aa964af11f891907493a6 +DIST bcpp-20240917.tgz 158130 BLAKE2B f07998d42fd65c4b8f57b2d0873caca26bf8d63909ee3c5830a6e20d32235915f3090aac4b5f09e7f4694de9650bcad04c4aed3dc1b49e2e6db0d252ea7a09b0 SHA512 f18c36da9d6f94c887df6b9fc47fa704d6f3ea02c613056111deafe629e63196ce1c4e316ea67c14bb1561d35ef7e895fae5d10905a1241c7c53599f0d0e893b +DIST bcpp-20240917.tgz.asc 729 BLAKE2B c02339ac449bef2f69509697b87239c944bd9055f51dd31563e1b8589daf4c3dc4aa67cca6525ee792bc022c427dd42d858b038ddbd0b09eb258a2d887b19a20 SHA512 9148f262bda8a55b23f6813b1b40d66eebd02dc2183f9aa4104ef2eae42d90eb42a48b94a06c56ef795630869a1c0833cae51e84380cfb996568fcdc2f5a9e08 diff --git a/dev-util/bcpp/bcpp-20240917.ebuild b/dev-util/bcpp/bcpp-20240917.ebuild new file mode 100644 index 000000000000..4d86a984f6b4 --- /dev/null +++ b/dev-util/bcpp/bcpp-20240917.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc +inherit verify-sig + +DESCRIPTION="Indents C/C++ source code" +HOMEPAGE="https://invisible-island.net/bcpp/" +SRC_URI="https://invisible-island.net/archives/${PN}/${P}.tgz" +SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${P}.tgz.asc )" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" + +BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-thomasdickey-20240114 )" + +src_compile() { + emake CPPFLAGS='-DBCPP_CONFIG_DIR=\"/etc/bcpp/\"' +} + +src_install() { + default + dodoc CHANGES MANIFEST README VERSION txtdocs/hirachy.txt \ + txtdocs/manual.txt + + insinto /etc/bcpp + doins bcpp.cfg indent.cfg +} + +pkg_postinst() { + elog "Check the documentation for more information on how to" + elog "Run bcpp. Please note that in order to get help for" + elog "bcpp, please run bcpp -h and not the command by itself." + elog "" + elog "Configuration files are at ${EPREFIX}/etc/bcpp." + elog "To use them, use the -c option followed by the filename." +} diff --git a/dev-util/idea-community/Manifest b/dev-util/idea-community/Manifest index f0516efbcb76..40d4b85b1cbd 100644 --- a/dev-util/idea-community/Manifest +++ b/dev-util/idea-community/Manifest @@ -1,2 +1,2 @@ -DIST idea-community-2024.2.1-aarch64.tar.gz 880188596 BLAKE2B c688414140ca48921e952590b040c7bf1193b4154fdd5a6e99d867de3f547d8c212c7342c37482bf1d60e5eda3953a3d31b245872d4cfa46361eabc687102af2 SHA512 9beac9d5ec3f5a691de14588dd3c55575c2ec5535964f0e5ff3e7fb494d41b2a76268d13cd527c0c1b894eca3214437214ac805518325b85384955575e4082d5 -DIST idea-community-2024.2.1-amd64.tar.gz 880814955 BLAKE2B b644d1f955b5e7ef26c76aee20044fceb50955f7c5ad83d063f24aca4f38289e3885ae722e360e7f053a46591b8ea6d783fda9314e39e291fd542c1ef5a6647c SHA512 393bcdab1d5738822b8433a6b0c54d4da7ea47f3e48b9fe39057e0ef779031eda5fe290e4fb3f03fdd1a5b136041b7e2a08cbfa4b9a24efa41ef05a8cd079edc +DIST idea-community-2024.2.2-aarch64.tar.gz 880446157 BLAKE2B 918c25046e61b59298f28bf8d290f9c50b74a89c59377023028019401fcce5b00f5cf21edccb84ed1d57ec63b9594dcf64b81aed59060422ee27ac970b47adf6 SHA512 41741760874ff2399f875c9ff148c5b88e6911df6118d002922fc7cde4290e93799cf510ec5f5f4cb6a3ea1e774d67a4f5e18b952c14fa93934a52c5888ccc49 +DIST idea-community-2024.2.2-amd64.tar.gz 881086769 BLAKE2B b95d3dcc6fa631b089215842d286ae2f2414c4f684d1d7a94c95bb2c94942fbdef563962ad3079dba62909f45a3182a64eec34c928f40f784c468920089b9261 SHA512 a57e5f58b2e65d0f421ded334696fa28d1ee748d7cf8ceb0ad10781a68cd4d9350e83d46376b17c15d312294f6155026e83209e678adf7f507874f455a68bbdc diff --git a/dev-util/idea-community/idea-community-2024.2.1.ebuild b/dev-util/idea-community/idea-community-2024.2.2.ebuild index b61f2c92242b..b61f2c92242b 100644 --- a/dev-util/idea-community/idea-community-2024.2.1.ebuild +++ b/dev-util/idea-community/idea-community-2024.2.2.ebuild diff --git a/dev-util/intel_clc/Manifest b/dev-util/intel_clc/Manifest index 5c32dcabd6a2..4515aa66c5b3 100644 --- a/dev-util/intel_clc/Manifest +++ b/dev-util/intel_clc/Manifest @@ -1,10 +1,2 @@ -DIST mesa-24.0.9.tar.xz 20197892 BLAKE2B 3c68e544898031fe76a57ea754f46ede5b105c259d13dd484eaa63fe51b7d52cf76a4084529b11a586c4d8d06f4cb32f993fd1ea4e6ccc4cbc91e78fe755743a SHA512 de2ee6c9df1fc106ee10befe0a76be1e9cfe83d65dbdb83bad6d8d7cfaa085232fb115293a1a790b37b50b1fe14bd58aafbcfe5a15e953b5901a7105d57569a5 -DIST mesa-24.1.3.tar.xz 29086488 BLAKE2B 2e8e4ee98f904aa02f304a6c3cbbb81d04802203e270e6b8ad2b7a62b334ac28f5e91687d7a92501f66b0043255a533d024537ff5ef3f2f03d986e46a7272eeb SHA512 db4071ac80747397023762d6e0355b001f4e942cdc706c67f8aced80e162058667c02a0dc0804a45afc2656cb65d8b16e17148bc03f0a1692067ec170f193c1a -DIST mesa-24.1.4.tar.xz 29106920 BLAKE2B 2109fc604858a0927271d7b1edb76a24514acac6117e564c6999c99f068624964f5cf0b7d022cac5726e432353a32a5278b3aa00b64dd4118bb2f0b7123c3b41 SHA512 0293f1493685888e5d2f0e616645c937e5a9c348fcb654b050b7c42bfdade1518c508920e456cf8be0033dceab4570a916db87dbb454174e425d91e9c05d0748 -DIST mesa-24.1.5.tar.xz 29140156 BLAKE2B ea29b3b8b6f178dd21d7ee3042ea829755e398f8876dfac6c744de77c08d85abb2736add2141204e6d3343de46040f49d96e1ad455714880b4be46d7b36581f1 SHA512 5916cc38c4a17161b012310c473077177887c5fff1bc5cb1f6efdf5da44878c18c99fe0c62318d897798cd4edb0f7206a989198ba085c2d402d49cdd0ee25288 -DIST mesa-24.1.6.tar.xz 29172600 BLAKE2B 295634438e1a2ae64bd1c5b0309a253e72a4d95e559cabad72f94aa2b91e5b05179c69cce5e371b69707419399dae0bfe808cb16b2e9ee112277e18b8f0f31f9 SHA512 2df0c78126f34a9ab7ce4946ed9fcd58d828717ecfd93681d9e136e605e9a8e01428dd632c0125e06d805498ffd75250f0e617f47fbb7e6368e6c8a48f4c4dfc DIST mesa-24.1.7.tar.xz 29206724 BLAKE2B b3102fcf96c032d07826186c2d60dc93e5c17b26f725c20cf1e402d1cfbaaba9809bff7a04d3df0179d2ec8606bc9fb391761d17a148671b9270cf2aaca0324d SHA512 890f6387963bbb86a85305ea963cca326a3b3f8f8758ae2082fd62c52df77c2883a359341e91f36614fea59219394ef78f799a334080699a0bb71d984a68cb01 -DIST mesa-24.2.0-rc4.tar.xz 29324360 BLAKE2B da26f43fa3e940a406e4987ed311fd22fc7608d4e09fc6cfd6584fe8873b8c5fdbf51d5f32042c46a883739cd22204a3dde2a0a1d6283c3453bc635bfba24ed5 SHA512 5a0b9043e8c3222faeaad31f435f3ea440d670ffa5497340c5809666a857fa4c77288745d52372a2267e9f9be97fc04e0d20b81bc027c1b7a33176a3bfa6b3c6 -DIST mesa-24.2.0.tar.xz 29342732 BLAKE2B dfbd0e5b8de3db475f40a8313ee3013bb513d505541e056efd84aad50d5043414dd2c0b95e6c7336a1b4d29037274dae2fa1fdb9697187bf239a5adb54dd3721 SHA512 a585c788801b5a341d356e44d958b148e6e14f6b3d7224e99a92faa2f004bf0cfc90103c5fdc651afb22f805c6f9dc594f9f3f5ecebcea36f6305b3a6ccb9294 -DIST mesa-24.2.1.tar.xz 29431192 BLAKE2B f4ef9fd08bbf16551498a8edce1e19e594a0b85ee1f05f8f7c80fcf12ec7ac4cb5947b713791f5202201f8cfc48773507d869dbd239e6fc3dcf2c3a621892327 SHA512 3b77e5faec51b67583131123b0cc010b52325ea308e4075323102aa999d9c9fbb65b873eb537ed4f577b5a0811e7f096e7e101510cb50326ea5c439b4b468380 -DIST mesa-24.2.2.tar.xz 29441876 BLAKE2B 14b29989b056c3bc76cb64babef6e93dd31af37ea72674adaad3f7ef7373c004996e375941662b1c3bbacfd707a21e2e3631a116a841130edfa1bfe3450ae5ab SHA512 d9979f7a1ae7bfeb0658d1b6c9021b7d0043c3ca71db9deaa2fc8a3d4c07cd58497b9233737a31fb66ef711a369a859757a63fb86c2aadd859867f9a4eaf16a9 +DIST mesa-24.2.3.tar.xz 29465732 BLAKE2B 3c480bd9f5948ae4d66a833cfc059b1b872fca989296a070deaa46aeb72298eaca6a3fa9d13574859623cec4a6af978f44d2c9562b9757be2257364c27600be6 SHA512 7a1ace23568d1907b778a2859f97c8988a414ba74e02e1fb5af6f95f768e1b1a2dfdaf412b0d655678ed915d28273953fd1236ebcd87553a1880f1a7f3ea4d44 diff --git a/dev-util/intel_clc/intel_clc-24.0.9.ebuild b/dev-util/intel_clc/intel_clc-24.0.9.ebuild deleted file mode 100644 index 922614294c85..000000000000 --- a/dev-util/intel_clc/intel_clc-24.0.9.ebuild +++ /dev/null @@ -1,86 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( 16 17 ) -PYTHON_COMPAT=( python3_{10..12} ) - -inherit llvm-r1 meson python-any-r1 - -MY_PV="${PV/_/-}" - -DESCRIPTION="intel_clc tool used for building OpenCL C to SPIR-V" -HOMEPAGE="https://mesa3d.org/" - -if [[ ${PV} == 9999 ]]; then - S="${WORKDIR}/intel_clc-${MY_PV}" - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - S="${WORKDIR}/mesa-${MY_PV}" - SRC_URI="https://archive.mesa3d.org/mesa-${MY_PV}.tar.xz" - KEYWORDS="amd64" -fi - -LICENSE="MIT SGI-B-2.0" -SLOT="0" -IUSE="debug" - -RDEPEND=" - dev-libs/libclc - dev-util/spirv-tools - >=sys-libs/zlib-1.2.8:= - x11-libs/libdrm - $(llvm_gen_dep ' - dev-util/spirv-llvm-translator:${LLVM_SLOT} - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - ') -" -DEPEND="${RDEPEND} - dev-libs/expat -" -BDEPEND=" - ${PYTHON_DEPS} - $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]") - virtual/pkgconfig -" - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" -} - -pkg_setup() { - llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - - local emesonargs=( - -Dllvm=enabled - -Dshared-llvm=enabled - -Dintel-clc=enabled - - -Dgallium-drivers='' - -Dvulkan-drivers='' - - # Set platforms empty to avoid the default "auto" setting. If - # platforms is empty meson.build will add surfaceless. - -Dplatforms='' - - -Dglx=disabled - -Dlibunwind=disabled - -Dzstd=disabled - - -Dbuildtype=$(usex debug debug plain) - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure -} - -src_install() { - dobin "${BUILD_DIR}"/src/intel/compiler/intel_clc -} diff --git a/dev-util/intel_clc/intel_clc-24.1.3.ebuild b/dev-util/intel_clc/intel_clc-24.1.3.ebuild deleted file mode 100644 index 4ff279ed0893..000000000000 --- a/dev-util/intel_clc/intel_clc-24.1.3.ebuild +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {16..18} ) -PYTHON_COMPAT=( python3_{10..12} ) - -inherit llvm-r1 meson python-any-r1 - -MY_PV="${PV/_/-}" - -DESCRIPTION="intel_clc tool used for building OpenCL C to SPIR-V" -HOMEPAGE="https://mesa3d.org/" - -if [[ ${PV} == 9999 ]]; then - S="${WORKDIR}/intel_clc-${MY_PV}" - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - S="${WORKDIR}/mesa-${MY_PV}" - SRC_URI="https://archive.mesa3d.org/mesa-${MY_PV}.tar.xz" - KEYWORDS="amd64 x86" -fi - -LICENSE="MIT SGI-B-2.0" -SLOT="0" -IUSE="debug" - -RDEPEND=" - dev-libs/libclc - dev-util/spirv-tools - >=sys-libs/zlib-1.2.8:= - x11-libs/libdrm - $(llvm_gen_dep ' - dev-util/spirv-llvm-translator:${LLVM_SLOT} - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - ') -" -DEPEND="${RDEPEND} - dev-libs/expat -" -BDEPEND=" - ${PYTHON_DEPS} - $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]") - virtual/pkgconfig -" - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" -} - -pkg_setup() { - llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - - use debug && EMESON_BUILDTYPE=debug - - local emesonargs=( - -Dllvm=enabled - -Dshared-llvm=enabled - -Dintel-clc=enabled - - -Dgallium-drivers='' - -Dvulkan-drivers='' - - # Set platforms empty to avoid the default "auto" setting. If - # platforms is empty meson.build will add surfaceless. - -Dplatforms='' - - -Dglx=disabled - -Dlibunwind=disabled - -Dzstd=disabled - - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure -} - -src_install() { - dobin "${BUILD_DIR}"/src/intel/compiler/intel_clc -} diff --git a/dev-util/intel_clc/intel_clc-24.1.4.ebuild b/dev-util/intel_clc/intel_clc-24.1.4.ebuild deleted file mode 100644 index df38191345d0..000000000000 --- a/dev-util/intel_clc/intel_clc-24.1.4.ebuild +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {16..18} ) -PYTHON_COMPAT=( python3_{10..12} ) - -inherit llvm-r1 meson python-any-r1 - -MY_PV="${PV/_/-}" - -DESCRIPTION="intel_clc tool used for building OpenCL C to SPIR-V" -HOMEPAGE="https://mesa3d.org/" - -if [[ ${PV} == 9999 ]]; then - S="${WORKDIR}/intel_clc-${MY_PV}" - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - S="${WORKDIR}/mesa-${MY_PV}" - SRC_URI="https://archive.mesa3d.org/mesa-${MY_PV}.tar.xz" - KEYWORDS="~amd64 ~x86" -fi - -LICENSE="MIT SGI-B-2.0" -SLOT="0" -IUSE="debug" - -RDEPEND=" - dev-libs/libclc - dev-util/spirv-tools - >=sys-libs/zlib-1.2.8:= - x11-libs/libdrm - $(llvm_gen_dep ' - dev-util/spirv-llvm-translator:${LLVM_SLOT} - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - ') -" -DEPEND="${RDEPEND} - dev-libs/expat -" -BDEPEND=" - ${PYTHON_DEPS} - $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]") - virtual/pkgconfig -" - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" -} - -pkg_setup() { - llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - - use debug && EMESON_BUILDTYPE=debug - - local emesonargs=( - -Dllvm=enabled - -Dshared-llvm=enabled - -Dintel-clc=enabled - - -Dgallium-drivers='' - -Dvulkan-drivers='' - - # Set platforms empty to avoid the default "auto" setting. If - # platforms is empty meson.build will add surfaceless. - -Dplatforms='' - - -Dglx=disabled - -Dlibunwind=disabled - -Dzstd=disabled - - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure -} - -src_install() { - dobin "${BUILD_DIR}"/src/intel/compiler/intel_clc -} diff --git a/dev-util/intel_clc/intel_clc-24.1.5.ebuild b/dev-util/intel_clc/intel_clc-24.1.5.ebuild deleted file mode 100644 index df38191345d0..000000000000 --- a/dev-util/intel_clc/intel_clc-24.1.5.ebuild +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {16..18} ) -PYTHON_COMPAT=( python3_{10..12} ) - -inherit llvm-r1 meson python-any-r1 - -MY_PV="${PV/_/-}" - -DESCRIPTION="intel_clc tool used for building OpenCL C to SPIR-V" -HOMEPAGE="https://mesa3d.org/" - -if [[ ${PV} == 9999 ]]; then - S="${WORKDIR}/intel_clc-${MY_PV}" - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - S="${WORKDIR}/mesa-${MY_PV}" - SRC_URI="https://archive.mesa3d.org/mesa-${MY_PV}.tar.xz" - KEYWORDS="~amd64 ~x86" -fi - -LICENSE="MIT SGI-B-2.0" -SLOT="0" -IUSE="debug" - -RDEPEND=" - dev-libs/libclc - dev-util/spirv-tools - >=sys-libs/zlib-1.2.8:= - x11-libs/libdrm - $(llvm_gen_dep ' - dev-util/spirv-llvm-translator:${LLVM_SLOT} - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - ') -" -DEPEND="${RDEPEND} - dev-libs/expat -" -BDEPEND=" - ${PYTHON_DEPS} - $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]") - virtual/pkgconfig -" - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" -} - -pkg_setup() { - llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - - use debug && EMESON_BUILDTYPE=debug - - local emesonargs=( - -Dllvm=enabled - -Dshared-llvm=enabled - -Dintel-clc=enabled - - -Dgallium-drivers='' - -Dvulkan-drivers='' - - # Set platforms empty to avoid the default "auto" setting. If - # platforms is empty meson.build will add surfaceless. - -Dplatforms='' - - -Dglx=disabled - -Dlibunwind=disabled - -Dzstd=disabled - - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure -} - -src_install() { - dobin "${BUILD_DIR}"/src/intel/compiler/intel_clc -} diff --git a/dev-util/intel_clc/intel_clc-24.1.6.ebuild b/dev-util/intel_clc/intel_clc-24.1.6.ebuild deleted file mode 100644 index 4ff279ed0893..000000000000 --- a/dev-util/intel_clc/intel_clc-24.1.6.ebuild +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {16..18} ) -PYTHON_COMPAT=( python3_{10..12} ) - -inherit llvm-r1 meson python-any-r1 - -MY_PV="${PV/_/-}" - -DESCRIPTION="intel_clc tool used for building OpenCL C to SPIR-V" -HOMEPAGE="https://mesa3d.org/" - -if [[ ${PV} == 9999 ]]; then - S="${WORKDIR}/intel_clc-${MY_PV}" - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - S="${WORKDIR}/mesa-${MY_PV}" - SRC_URI="https://archive.mesa3d.org/mesa-${MY_PV}.tar.xz" - KEYWORDS="amd64 x86" -fi - -LICENSE="MIT SGI-B-2.0" -SLOT="0" -IUSE="debug" - -RDEPEND=" - dev-libs/libclc - dev-util/spirv-tools - >=sys-libs/zlib-1.2.8:= - x11-libs/libdrm - $(llvm_gen_dep ' - dev-util/spirv-llvm-translator:${LLVM_SLOT} - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - ') -" -DEPEND="${RDEPEND} - dev-libs/expat -" -BDEPEND=" - ${PYTHON_DEPS} - $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]") - virtual/pkgconfig -" - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" -} - -pkg_setup() { - llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - - use debug && EMESON_BUILDTYPE=debug - - local emesonargs=( - -Dllvm=enabled - -Dshared-llvm=enabled - -Dintel-clc=enabled - - -Dgallium-drivers='' - -Dvulkan-drivers='' - - # Set platforms empty to avoid the default "auto" setting. If - # platforms is empty meson.build will add surfaceless. - -Dplatforms='' - - -Dglx=disabled - -Dlibunwind=disabled - -Dzstd=disabled - - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure -} - -src_install() { - dobin "${BUILD_DIR}"/src/intel/compiler/intel_clc -} diff --git a/dev-util/intel_clc/intel_clc-24.1.7.ebuild b/dev-util/intel_clc/intel_clc-24.1.7.ebuild index df38191345d0..4ff279ed0893 100644 --- a/dev-util/intel_clc/intel_clc-24.1.7.ebuild +++ b/dev-util/intel_clc/intel_clc-24.1.7.ebuild @@ -20,7 +20,7 @@ if [[ ${PV} == 9999 ]]; then else S="${WORKDIR}/mesa-${MY_PV}" SRC_URI="https://archive.mesa3d.org/mesa-${MY_PV}.tar.xz" - KEYWORDS="~amd64 ~x86" + KEYWORDS="amd64 x86" fi LICENSE="MIT SGI-B-2.0" diff --git a/dev-util/intel_clc/intel_clc-24.2.0_rc4.ebuild b/dev-util/intel_clc/intel_clc-24.2.0_rc4.ebuild deleted file mode 100644 index a413a9047a73..000000000000 --- a/dev-util/intel_clc/intel_clc-24.2.0_rc4.ebuild +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {16..18} ) -PYTHON_COMPAT=( python3_{10..12} ) - -inherit llvm-r1 meson python-any-r1 - -MY_PV="${PV/_/-}" - -DESCRIPTION="intel_clc tool used for building OpenCL C to SPIR-V" -HOMEPAGE="https://mesa3d.org/" - -if [[ ${PV} == 9999 ]]; then - S="${WORKDIR}/intel_clc-${MY_PV}" - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - S="${WORKDIR}/mesa-${MY_PV}" - SRC_URI="https://archive.mesa3d.org/mesa-${MY_PV}.tar.xz" - KEYWORDS="~amd64 ~x86" -fi - -LICENSE="MIT SGI-B-2.0" -SLOT="0" -IUSE="debug" - -RDEPEND=" - dev-libs/libclc - dev-util/spirv-tools - >=sys-libs/zlib-1.2.8:= - x11-libs/libdrm - $(llvm_gen_dep ' - dev-util/spirv-llvm-translator:${LLVM_SLOT} - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - ') -" -DEPEND="${RDEPEND} - dev-libs/expat -" -BDEPEND=" - ${PYTHON_DEPS} - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - dev-python/pyyaml[\${PYTHON_USEDEP}] - ") - virtual/pkgconfig -" - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1 -} - -pkg_setup() { - llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - - use debug && EMESON_BUILDTYPE=debug - - local emesonargs=( - -Dllvm=enabled - -Dshared-llvm=enabled - -Dintel-clc=enabled - - -Dgallium-drivers='' - -Dvulkan-drivers='' - - # Set platforms empty to avoid the default "auto" setting. If - # platforms is empty meson.build will add surfaceless. - -Dplatforms='' - - -Dglx=disabled - -Dlibunwind=disabled - -Dzstd=disabled - - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure -} - -src_install() { - dobin "${BUILD_DIR}"/src/intel/compiler/intel_clc -} diff --git a/dev-util/intel_clc/intel_clc-24.2.1.ebuild b/dev-util/intel_clc/intel_clc-24.2.1.ebuild deleted file mode 100644 index 4acbe36c77e0..000000000000 --- a/dev-util/intel_clc/intel_clc-24.2.1.ebuild +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {16..18} ) -PYTHON_COMPAT=( python3_{10..13} ) - -inherit llvm-r1 meson python-any-r1 - -MY_PV="${PV/_/-}" - -DESCRIPTION="intel_clc tool used for building OpenCL C to SPIR-V" -HOMEPAGE="https://mesa3d.org/" - -if [[ ${PV} == 9999 ]]; then - S="${WORKDIR}/intel_clc-${MY_PV}" - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - S="${WORKDIR}/mesa-${MY_PV}" - SRC_URI="https://archive.mesa3d.org/mesa-${MY_PV}.tar.xz" - KEYWORDS="~amd64 ~x86" -fi - -LICENSE="MIT SGI-B-2.0" -SLOT="0" -IUSE="debug" - -RDEPEND=" - dev-libs/libclc - dev-util/spirv-tools - >=sys-libs/zlib-1.2.8:= - x11-libs/libdrm - $(llvm_gen_dep ' - dev-util/spirv-llvm-translator:${LLVM_SLOT} - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - ') -" -DEPEND="${RDEPEND} - dev-libs/expat -" -BDEPEND=" - ${PYTHON_DEPS} - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - dev-python/pyyaml[\${PYTHON_USEDEP}] - ") - virtual/pkgconfig -" - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1 -} - -pkg_setup() { - llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - - use debug && EMESON_BUILDTYPE=debug - - local emesonargs=( - -Dllvm=enabled - -Dshared-llvm=enabled - -Dintel-clc=enabled - - -Dgallium-drivers='' - -Dvulkan-drivers='' - - # Set platforms empty to avoid the default "auto" setting. If - # platforms is empty meson.build will add surfaceless. - -Dplatforms='' - - -Dglx=disabled - -Dlibunwind=disabled - -Dzstd=disabled - - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure -} - -src_install() { - dobin "${BUILD_DIR}"/src/intel/compiler/intel_clc -} diff --git a/dev-util/intel_clc/intel_clc-24.2.2.ebuild b/dev-util/intel_clc/intel_clc-24.2.2.ebuild deleted file mode 100644 index 4acbe36c77e0..000000000000 --- a/dev-util/intel_clc/intel_clc-24.2.2.ebuild +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {16..18} ) -PYTHON_COMPAT=( python3_{10..13} ) - -inherit llvm-r1 meson python-any-r1 - -MY_PV="${PV/_/-}" - -DESCRIPTION="intel_clc tool used for building OpenCL C to SPIR-V" -HOMEPAGE="https://mesa3d.org/" - -if [[ ${PV} == 9999 ]]; then - S="${WORKDIR}/intel_clc-${MY_PV}" - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - S="${WORKDIR}/mesa-${MY_PV}" - SRC_URI="https://archive.mesa3d.org/mesa-${MY_PV}.tar.xz" - KEYWORDS="~amd64 ~x86" -fi - -LICENSE="MIT SGI-B-2.0" -SLOT="0" -IUSE="debug" - -RDEPEND=" - dev-libs/libclc - dev-util/spirv-tools - >=sys-libs/zlib-1.2.8:= - x11-libs/libdrm - $(llvm_gen_dep ' - dev-util/spirv-llvm-translator:${LLVM_SLOT} - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - ') -" -DEPEND="${RDEPEND} - dev-libs/expat -" -BDEPEND=" - ${PYTHON_DEPS} - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - dev-python/pyyaml[\${PYTHON_USEDEP}] - ") - virtual/pkgconfig -" - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1 -} - -pkg_setup() { - llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - - use debug && EMESON_BUILDTYPE=debug - - local emesonargs=( - -Dllvm=enabled - -Dshared-llvm=enabled - -Dintel-clc=enabled - - -Dgallium-drivers='' - -Dvulkan-drivers='' - - # Set platforms empty to avoid the default "auto" setting. If - # platforms is empty meson.build will add surfaceless. - -Dplatforms='' - - -Dglx=disabled - -Dlibunwind=disabled - -Dzstd=disabled - - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure -} - -src_install() { - dobin "${BUILD_DIR}"/src/intel/compiler/intel_clc -} diff --git a/dev-util/intel_clc/intel_clc-24.2.0.ebuild b/dev-util/intel_clc/intel_clc-24.2.3.ebuild index 4acbe36c77e0..4acbe36c77e0 100644 --- a/dev-util/intel_clc/intel_clc-24.2.0.ebuild +++ b/dev-util/intel_clc/intel_clc-24.2.3.ebuild diff --git a/dev-util/kdevelop-php/kdevelop-php-24.08.1.ebuild b/dev-util/kdevelop-php/kdevelop-php-24.08.1.ebuild index dd445596a575..7c7d13560729 100644 --- a/dev-util/kdevelop-php/kdevelop-php-24.08.1.ebuild +++ b/dev-util/kdevelop-php/kdevelop-php-24.08.1.ebuild @@ -17,7 +17,7 @@ HOMEPAGE="https://kdevelop.org/" LICENSE="GPL-2 LGPL-2" SLOT="6" -KEYWORDS="~amd64 ~arm64" +KEYWORDS="amd64 ~arm64" IUSE="" # remaining tests fail for some, bug 668530 diff --git a/dev-util/kdevelop-python/kdevelop-python-24.08.1.ebuild b/dev-util/kdevelop-python/kdevelop-python-24.08.1.ebuild index e283a3d10c12..366e3f7f8ade 100644 --- a/dev-util/kdevelop-python/kdevelop-python-24.08.1.ebuild +++ b/dev-util/kdevelop-python/kdevelop-python-24.08.1.ebuild @@ -16,7 +16,7 @@ HOMEPAGE="https://kdevelop.org/" LICENSE="GPL-2" # TODO: CHECK SLOT="6" -KEYWORDS="~amd64 ~arm64" +KEYWORDS="amd64 ~arm64" IUSE="" REQUIRED_USE="${PYTHON_REQUIRED_USE}" diff --git a/dev-util/kdevelop/kdevelop-24.08.1.ebuild b/dev-util/kdevelop/kdevelop-24.08.1.ebuild index e8180d9e7333..4bc5241fab4f 100644 --- a/dev-util/kdevelop/kdevelop-24.08.1.ebuild +++ b/dev-util/kdevelop/kdevelop-24.08.1.ebuild @@ -16,7 +16,7 @@ HOMEPAGE="https://kdevelop.org/" LICENSE="GPL-2 LGPL-2" SLOT="6/$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm64" +KEYWORDS="amd64 ~arm64" IUSE="gdbui plasma +qmake +share subversion" # see bug 366471 diff --git a/dev-util/kio-perldoc/kio-perldoc-24.08.1.ebuild b/dev-util/kio-perldoc/kio-perldoc-24.08.1.ebuild index a50ec345e017..7a8193555d08 100644 --- a/dev-util/kio-perldoc/kio-perldoc-24.08.1.ebuild +++ b/dev-util/kio-perldoc/kio-perldoc-24.08.1.ebuild @@ -11,7 +11,7 @@ DESCRIPTION="KIO worker interface to browse Perl documentation" LICENSE="GPL-2+ || ( Artistic GPL-1+ )" SLOT="6" -KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +KEYWORDS="amd64 ~arm64 ~riscv ~x86" IUSE="" DEPEND=" diff --git a/dev-util/visualvm/Manifest b/dev-util/visualvm/Manifest index 15af8e7a56b3..cb321ae2a671 100644 --- a/dev-util/visualvm/Manifest +++ b/dev-util/visualvm/Manifest @@ -1,3 +1,4 @@ DIST nashorn-core-15.4.jar 2167292 BLAKE2B f40349e9f369eed1bb3795622ffe9353c98f35df1d5c2f5f3845d8f1fd5ecea553e11da15d17b9083f6ae2efa4485df131a9a9216499f1c7d440ca4b1d772a2b SHA512 3b560e1ae67d5d5d19250849dee3f813d2c801e56ba85d90439a067378a47f95020910da85b7c8afb6675ea2e25cd274953483efd07e89097656aadc804c8020 DIST nb190_platform_20231030.zip 26056691 BLAKE2B 7815c08ad60515e8018336452e24c2fb0743d1ef48c58ffd80d371000fa664f8f0053a4c1d56a012b9e50f6714a44c300a915061afebd586f9438abae7867447 SHA512 779256d678c9a13dde4314a5771480c450ae86c49e80ac99eb90a4e9e32e3bc5759128f60a610aecc3ce9e7dbce56b0076b528c8f18a682ebac2dd74cb5a6eea +DIST visualvm-2.1.10.tar.gz 11782775 BLAKE2B 6c25293fc456cd5add37aa11d623e7a329f31f2608eaf5217a64f014d26a0ab439569edac6367a79102c3d89fe88182bd9ac56edf96aac515b6b6146eaf70a25 SHA512 dd8da529b766c97e8dfc392eafeafb672cd5f74d8a86cb5c4c4385769c5cb1376e7757601d5254de46d7bc5ff705aef0d839692426ffd1a3a10304c3fa90d440 DIST visualvm-2.1.9.tar.gz 11781212 BLAKE2B e924134e211a7f0a95d299f21dab2fff35fb0c0f646ea25adc0eb1204628fbec752075380dc6f717ff902f566040cf9ed8186b1470f9277d39742e288142de67 SHA512 ed950c6216185b9d09ed0605729cd02b649df32fef0f204066419bf96f61f63887b7bad082e5434e740f23856270be2b5c0bd35aa825511cb35486059592b3e7 diff --git a/dev-util/visualvm/visualvm-2.1.10.ebuild b/dev-util/visualvm/visualvm-2.1.10.ebuild new file mode 100644 index 000000000000..d71b0bc917f6 --- /dev/null +++ b/dev-util/visualvm/visualvm-2.1.10.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +NBV=190 +NBT=20231030 +NBZ=nb${NBV}_platform_${NBT}.zip +ASM_UTIL_VERSION="9.5" +ASM_UTIL_FILE="asm-util-${ASM_UTIL_VERSION}.jar" +FLIGHT_RECORDER_VERSION="8.3.1" +FLIGHT_RECORDER_FILE="flightrecorder-${FLIGHT_RECORDER_VERSION}.jar" +COMMON_VERSION="8.3.1" +COMMON_FILE="common-${COMMON_VERSION}.jar" +ENCODER_VERSION="1.2.3" +ENCODER_FILE="encoder-${ENCODER_VERSION}.jar" +LZ4_JAVA_VERSION="1.8.0" +LZ4_JAVA_FILE="lz4-java-${LZ4_JAVA_VERSION}.jar" +NASHORN_CORE_VERSION="15.4" +NASHORN_CORE_FILE="nashorn-core-${NASHORN_CORE_VERSION}.jar" + +inherit java-pkg-2 desktop + +DESCRIPTION="Integrates commandline JDK tools and profiling capabilities" +HOMEPAGE="https://visualvm.github.io" + +SRC_URI="https://github.com/oracle/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz + https://github.com/oracle/${PN}/releases/download/2.1.8/${NBZ} + https://repo1.maven.org/maven2/org/openjdk/nashorn/nashorn-core/${NASHORN_CORE_VERSION}/${NASHORN_CORE_FILE}" +S="${WORKDIR}/${P}/${PN}" + +LICENSE="GPL-2-with-linking-exception" +SLOT="0" +KEYWORDS="~amd64" + +BDEPEND=" + app-arch/unzip + >=dev-java/ant-1.10.14-r3:0 +" + +COMMON_DEPEND=" + dev-java/jmc:0 + dev-java/lz4-java:0 + dev-java/owasp-java-encoder:0 +" + +# it does not compile with java 11 +# not even after removing hardcoded -source and -target values +DEPEND=" + ${COMMON_DEPEND} + virtual/jdk:1.8 +" + +RDEPEND=" + ${COMMON_DEPEND} + !dev-util/visualvm:7 + dev-java/asm:9 + dev-java/hamcrest-core:1.3 + dev-java/jcommander:0 + dev-java/jna:4 + dev-java/junit:4 + dev-java/junit:5 + dev-java/testng:0 + >=virtual/jre-1.8:* +" + +QA_PREBUILT=" + /usr/share/visualvm/cluster/lib/deployed/jdk15/linux-amd64/libprofilerinterface.so + /usr/share/visualvm/cluster/lib/deployed/jdk16/linux-amd64/libprofilerinterface.so + /usr/share/visualvm/platform/modules/lib/libflatlaf-linux-x86_64.so + /usr/share/visualvm/platform/modules/lib/aarch64/linux/libjnidispatch-nb.so + /usr/share/visualvm/platform/modules/lib/amd64/linux/libjnidispatch-nb.so + /usr/share/visualvm/platform/modules/lib/riscv64/linux/libjnidispatch-nb.so +" + +INSTALL_DIR=/usr/share/${PN} + +src_unpack() { + unpack ${P}.tar.gz + cd "${S}" || die + unpack ${NBZ} +} + +src_prepare() { + java-pkg-2_src_prepare + + # Remove unneeded binaries + rm -rv netbeans/platform/lib/*.{dll,exe} \ + netbeans/platform/modules/lib/{amd64/*.dll,i386,x86} || die + find libs.profiler/lib.profiler/release/lib/deployed/jdk1? -mindepth 1 \ + -maxdepth 1 ! -name linux-amd64 -exec rm -rv {} + || die + + # link in external libraries + ln -s "${DISTDIR}/${NASHORN_CORE_FILE}" nashorn.jdk15/external || die "Failed to link nashorn core jar" + java-pkg_jar-from --into nashorn.jdk15/external asm-9 asm-util.jar ${ASM_UTIL_FILE} \ + || die "Failed to link asm util jar" + java-pkg_jar-from --into jfr.generic/external jmc jmc-common.jar ${COMMON_FILE} \ + || die "Failed to link jmc common jar" + java-pkg_jar-from --into jfr.generic/external jmc jmc-flightrecorder.jar ${FLIGHT_RECORDER_FILE} \ + || die "Failed to link jmc flightrecorder jar" + java-pkg_jar-from --into jfr.generic/external lz4-java lz4-java.jar ${LZ4_JAVA_FILE} \ + || die "Failed to link lz4 java jar" + java-pkg_jar-from --into jfr.generic/external owasp-java-encoder owasp-java-encoder.jar ${ENCODER_FILE} \ + || die "Failed to link owasp-java-encoder jar" + + # remove hardcoded javac's source & target settings + cd .. || die + find -name build.xml \ + -exec sed -Ei 's,(source|target)="1.5",,g' {} + || + die "remove javac's source & target in build.xml files" + + cd .. || die + find -name build.xml \ + -exec sed -Ei 's,(source|target)="1.4",,g' {} + || + die "remove javac's source & target in build.xml files" + + for prop in $(find -name project.properties); do + sed -e '/javac.source=/d' -e '/javac.target/d' -i ${prop} + done + + for impl in $(find -name build-impl.xml); do + sed -e '/default.javac.source=/d' -e '/default.javac.target/d' -i ${mpl} + done +} + +src_compile() { + eant -v \ + -Dext.binaries.downloaded=true \ + -Djavac.source="$(java-pkg_get-source)" \ + -Djavac.target="$(java-pkg_get-target)" \ + build +} + +src_install() { + # this is the visualvm cluster + insinto ${INSTALL_DIR} + doins -r build/cluster netbeans/{harness,platform} + + # configuration file that can be used to tweak visualvm startup parameters + insinto /etc/${PN} + newins launcher/visualvm.conf ${PN}.conf + sed -i "s%visualvm_default_userdir=.*%visualvm_default_userdir=\"\${HOME}/.visualvm\"%g" \ + "${ED}/etc/${PN}/visualvm.conf" || die "Failed to update userdir" + sed -i "s%visualvm_default_cachedir=.*%visualvm_default_cachedir=\"\${HOME}/.cache/visualvm\"%g" \ + "${ED}/etc/${PN}/visualvm.conf" || die "Failed to update cachedir" + echo -e "\nvisualvm_jdkhome=\"\$(java-config -O)\"" >> "${ED}/etc/${PN}/visualvm.conf" \ + || die "Failed to set jdk detection" + + # replace bundled stuff + pushd "${ED}/${INSTALL_DIR}/platform/core" > /dev/null || die + for name in asm{,-commons,-tree}; do + rm ${name}-9.5.jar && java-pkg_jar-from asm-9 ${name}.jar ${name}-9.2.jar || die + done + popd > /dev/null + + pushd "${ED}/${INSTALL_DIR}/platform/modules/ext" > /dev/null || die + rm hamcrest-core-1.3.jar && java-pkg_jar-from hamcrest-core-1.3 hamcrest-core.jar hamcrest-core-1.3.jar || die + rm jcommander-1.78.jar && java-pkg_jar-from jcommander jcommander.jar jcommander-1.78.jar || die + for name in jna{,-platform}; do + rm ${name}-5.12.1.jar && java-pkg_jar-from jna-4 ${name}.jar ${name}-5.12.1.jar || die + done + rm junit-4.13.2.jar && java-pkg_jar-from junit-4 junit.jar junit-4.13.2.jar || die + for name in junit-jupiter-{api,engine,params}; do + rm ${name}-5.6.0.jar && java-pkg_jar-from junit-5 ${name}.jar ${name}-5.6.0.jar || die + done + rm testng-6.14.3.jar && java-pkg_jar-from testng testng.jar testng-6.14.3.jar || die + popd > /dev/null + + pushd "${ED}/${INSTALL_DIR}/cluster/modules/ext" > /dev/null || die + rm ${ASM_UTIL_FILE} && java-pkg_jar-from asm-9 asm-util.jar ${ASM_UTIL_FILE} || die + rm ${COMMON_FILE} && java-pkg_jar-from jmc jmc-common.jar ${COMMON_FILE} || die + rm ${FLIGHT_RECORDER_FILE} && java-pkg_jar-from jmc jmc-flightrecorder.jar ${FLIGHT_RECORDER_FILE} || die + rm ${LZ4_JAVA_FILE} && java-pkg_jar-from lz4-java lz4-java.jar ${LZ4_JAVA_FILE} || die + rm ${ENCODER_FILE} && java-pkg_jar-from owasp-java-encoder owasp-java-encoder.jar ${ENCODER_FILE} || die + popd > /dev/null + + # visualvm runtime script + newbin "${FILESDIR}"/${PN}-r2.sh ${PN} + + # makes visualvm entry + make_desktop_entry ${PN} VisualVM java "Development;Java;" +} diff --git a/eclass/guile.eclass b/eclass/guile.eclass index 9310cd060da9..323d04ef1152 100644 --- a/eclass/guile.eclass +++ b/eclass/guile.eclass @@ -190,8 +190,9 @@ _guile_multibuild_wrapper() { local -x SLOTTED_ED="${SLOTTED_D}${EPREFIX}/" local -x GUILE_EFFECTIVE_VERSION="${GUILE_CURRENT_VERSION}" mkdir -p "${BUILD_DIR}" || die - cd "${BUILD_DIR}" || die + pushd "${BUILD_DIR}" >/dev/null || die "$@" + popd >/dev/null || die } # @VARIABLE: SLOTTED_D diff --git a/eclass/tests/toolchain.sh b/eclass/tests/toolchain.sh index 6f8df5b4fc4a..1ba2e6b1f29d 100755 --- a/eclass/tests/toolchain.sh +++ b/eclass/tests/toolchain.sh @@ -49,10 +49,6 @@ test_downgrade_arch_flags 4.5 "-march=core2" "-march=haswell" test_downgrade_arch_flags 4.4 "-march=core2" "-march=haswell" test_downgrade_arch_flags 4.3 "-march=core2" "-march=haswell" test_downgrade_arch_flags 4.2 "-march=nocona" "-march=haswell" -test_downgrade_arch_flags 4.1 "-march=nocona" "-march=haswell" -test_downgrade_arch_flags 4.0 "-march=nocona" "-march=haswell" -test_downgrade_arch_flags 3.4 "-march=nocona" "-march=haswell" -test_downgrade_arch_flags 3.3 "-march=nocona" "-march=haswell" test_downgrade_arch_flags 4.9 "-march=bdver4" "-march=bdver4" test_downgrade_arch_flags 4.8 "-march=bdver3" "-march=bdver4" @@ -62,31 +58,18 @@ test_downgrade_arch_flags 4.5 "-march=amdfam10" "-march=bdver4" test_downgrade_arch_flags 4.4 "-march=amdfam10" "-march=bdver4" test_downgrade_arch_flags 4.3 "-march=amdfam10" "-march=bdver4" test_downgrade_arch_flags 4.2 "-march=k8" "-march=bdver4" -test_downgrade_arch_flags 4.1 "-march=k8" "-march=bdver4" -test_downgrade_arch_flags 4.0 "-march=k8" "-march=bdver4" -test_downgrade_arch_flags 3.4 "-march=k8" "-march=bdver4" -test_downgrade_arch_flags 3.3 "-march=x86-64" "-march=bdver4" - -test_downgrade_arch_flags 3.4 "-march=c3-2" "-march=c3-2" -test_downgrade_arch_flags 3.3 "-march=c3" "-march=c3-2" test_downgrade_arch_flags 4.5 "-march=garbage" "-march=garbage" test_downgrade_arch_flags 10 "-mtune=intel" "-mtune=intel" test_downgrade_arch_flags 4.9 "-mtune=intel" "-mtune=intel" test_downgrade_arch_flags 4.8 "-mtune=generic" "-mtune=intel" -test_downgrade_arch_flags 3.4 "" "-mtune=generic" -test_downgrade_arch_flags 3.4 "" "-mtune=x86-64" -test_downgrade_arch_flags 3.3 "" "-mtune=anything" test_downgrade_arch_flags 4.5 "-march=amdfam10 -mtune=generic" "-march=btver2 -mtune=generic" -test_downgrade_arch_flags 3.3 "-march=k6-2" "-march=geode -mtune=barcelona" -test_downgrade_arch_flags 3.4 "-march=k8" "-march=btver2 -mtune=generic" test_downgrade_arch_flags 10 "-march=native" "-march=native" test_downgrade_arch_flags 8 "-march=znver1" "-march=znver2" test_downgrade_arch_flags 4.2 "-march=native" "-march=native" -test_downgrade_arch_flags 4.1 "-march=nocona" "-march=native" test_downgrade_arch_flags 9 "-march=znver2" "-march=znver3" test_downgrade_arch_flags 10 "-march=foo -mno-sha -mno-rtm -mno-avx2 -mno-avx -mno-sse4.1" "-march=foo -mno-sha -mno-rtm -mno-avx2 -mno-avx -mno-sse4.1" diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass index c03312be43ad..a545f730ada7 100644 --- a/eclass/toolchain.eclass +++ b/eclass/toolchain.eclass @@ -22,7 +22,9 @@ _TOOLCHAIN_ECLASS=1 DESCRIPTION="The GNU Compiler Collection" HOMEPAGE="https://gcc.gnu.org/" -inherit edo flag-o-matic gnuconfig libtool multilib pax-utils python-any-r1 toolchain-funcs prefix +inherit edo flag-o-matic gnuconfig libtool multilib pax-utils toolchain-funcs prefix + +[[ -n ${TOOLCHAIN_HAS_TESTS} ]] && inherit python-any-r1 tc_is_live() { [[ ${PV} == *9999* ]] @@ -143,6 +145,12 @@ tc_version_is_between() { # @DESCRIPTION: # Indicate the developer who hosts the patchset for an ebuild. +# @ECLASS_VARIABLE: TOOLCHAIN_HAS_TESTS +# @DEFAULT_UNSET +# @DESCRIPTION: +# Controls whether python-any-r1 is inherited and validate_failures.py +# is used. + # @ECLASS_VARIABLE: GCC_PV # @INTERNAL # @DESCRIPTION: @@ -273,6 +281,7 @@ STDCXX_INCDIR=${TOOLCHAIN_STDCXX_INCDIR:-${LIBPATH}/include/g++-v${GCC_BRANCH_VE LICENSE="GPL-3+ LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 ) FDL-1.3+" IUSE="test vanilla +nls" RESTRICT="!test? ( test )" +[[ -z ${TOOLCHAIN_HAS_TESTS} ]] && RESTRICT+=" test" TC_FEATURES=() @@ -537,7 +546,8 @@ get_gcc_src_uri() { [[ -n ${MUSL_VER} ]] && \ GCC_SRC_URI+=" $(gentoo_urls gcc-${MUSL_GCC_VER}-musl-patches-${MUSL_VER}.tar.${TOOLCHAIN_PATCH_SUFFIX})" - GCC_SRC_URI+=" test? ( https://gitweb.gentoo.org/proj/gcc-patches.git/plain/scripts/testsuite-management/validate_failures.py?id=${GCC_VALIDATE_FAILURES_VERSION} -> gcc-validate-failures-${GCC_VALIDATE_FAILURES_VERSION}.py )" + [[ -n ${TOOLCHAIN_HAS_TESTS} ]] && \ + GCC_SRC_URI+=" test? ( https://gitweb.gentoo.org/proj/gcc-patches.git/plain/scripts/testsuite-management/validate_failures.py?id=${GCC_VALIDATE_FAILURES_VERSION} -> gcc-validate-failures-${GCC_VALIDATE_FAILURES_VERSION}.py )" echo "${GCC_SRC_URI}" } @@ -569,7 +579,7 @@ toolchain_pkg_setup() { # more legible. MAKEOPTS="--output-sync=line ${MAKEOPTS}" - use test && python-any-r1_pkg_setup + [[ -n ${TOOLCHAIN_HAS_TESTS} ]] && use test && python-any-r1_pkg_setup } #---->> src_unpack <<---- @@ -633,7 +643,7 @@ toolchain_src_prepare() { tc_enable_hardened_gcc fi - if use test ; then + if [[ -n ${TOOLCHAIN_HAS_TESTS} ]] && use test ; then cp "${DISTDIR}"/gcc-validate-failures-${GCC_VALIDATE_FAILURES_VERSION}.py "${T}"/validate_failures.py || die chmod +x "${T}"/validate_failures.py || die fi @@ -2275,7 +2285,7 @@ toolchain_src_install() { pax-mark -r "${ED}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1" pax-mark -r "${ED}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1plus" - if use test ; then + if [[ -n ${TOOLCHAIN_HAS_TESTS} ]] && use test ; then mkdir "${T}"/test-results || die cd "${WORKDIR}"/build || die find . -name \*.sum -exec cp --parents -v {} "${T}"/test-results \; || die @@ -2434,7 +2444,7 @@ create_revdep_rebuild_entry() { #---->> pkg_pre* <<---- toolchain_pkg_preinst() { - if [[ ${MERGE_TYPE} != binary ]] && use test ; then + if [[ -n ${TOOLCHAIN_HAS_TESTS} && ${MERGE_TYPE} != binary ]] && use test ; then # Install as orphaned to allow comparison across more versions even # after unmerged. Also useful for historical records and tracking # down regressions a while after they first appeared, but were only diff --git a/games-arcade/jazz2-data/jazz2-data-0-r20200327.ebuild b/games-arcade/jazz2-data/jazz2-data-0-r20200327.ebuild index 10ac074109cf..ecb870298485 100644 --- a/games-arcade/jazz2-data/jazz2-data-0-r20200327.ebuild +++ b/games-arcade/jazz2-data/jazz2-data-0-r20200327.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -27,7 +27,8 @@ KEYWORDS="~amd64" IUSE="+cc demo gles2-only" RESTRICT="!demo? ( bindist fetch )" -RDEPEND="games-arcade/jazz2:=[gles2-only=]" +# jazz2-import is available only before version 1.0.0 +RDEPEND="<games-arcade/jazz2-1:=[gles2-only=]" BDEPEND=" ${RDEPEND} diff --git a/games-arcade/jazz2/Manifest b/games-arcade/jazz2/Manifest index 412f67c80f37..f339610dfc4d 100644 --- a/games-arcade/jazz2/Manifest +++ b/games-arcade/jazz2/Manifest @@ -1 +1,2 @@ DIST jazz2-0.6.7.tar.gz 11031735 BLAKE2B 014ff24c6f5a834a727aaed3760a1e228d9f7d9653dd293e98030c9105cbf15a3b420c2d515605e36187cc833ae892ed30589f1bf821c0b674b883cea216f3f5 SHA512 7172a3ccb367122d1c9bfbd36b76cc3d365024affba9aea5cfa595fd11a9b4dc980e57c1cfdb0d32bc28bb7ecb5f6f5225909697c4c93c43117596f44d80ff8f +DIST jazz2-2.8.0.tar.gz 3656018 BLAKE2B c023e722871304754e45a1329cfff9e0e713413a6a05b5265dd000bab8a057ac5dbdb1a263b29f562df0221b97eb326fbd15f3c6b6f316b756630c2521413bec SHA512 1a6b61cb654c5afee7d615cca912b75ef4f1e90929d7808800467bd13a1ebd9096430d1c1fa969cfacf8c10ff1e696c74371c1809a0ffbda90c5db31c686ae05 diff --git a/games-arcade/jazz2/files/jazz2-2.8.0-about-section.patch b/games-arcade/jazz2/files/jazz2-2.8.0-about-section.patch new file mode 100644 index 000000000000..349ec40fd180 --- /dev/null +++ b/games-arcade/jazz2/files/jazz2-2.8.0-about-section.patch @@ -0,0 +1,20 @@ +From 04d43f938c8b656bf5fb0dbed464566af4c0062c Mon Sep 17 00:00:00 2001 +From: Death Killer <884052+deathkiller@users.noreply.github.com> +Date: Sun, 4 Aug 2024 16:49:59 +0200 +Subject: [PATCH] Fixed about screen + +https://github.com/deathkiller/jazz2-native/commit/04d43f938c8b656bf5fb0dbed464566af4c0062c + +diff --git a/Sources/Jazz2/UI/Menu/AboutSection.cpp b/Sources/Jazz2/UI/Menu/AboutSection.cpp +index 9c3afd59..ea7723e9 100644 +--- a/Sources/Jazz2/UI/Menu/AboutSection.cpp ++++ b/Sources/Jazz2/UI/Menu/AboutSection.cpp +@@ -62,7 +62,7 @@ + # define _i7 "\nOpenAL \f[c:#707070]· \f[h:80]https://github.com/kcat/openal-soft\f[/h]\f[/c]" + # endif + #else +-# define _i6 "" ++# define _i7 "" + #endif + + #if defined(WITH_VORBIS) diff --git a/games-arcade/jazz2/jazz2-2.8.0.ebuild b/games-arcade/jazz2/jazz2-2.8.0.ebuild new file mode 100644 index 000000000000..bcc62ab10108 --- /dev/null +++ b/games-arcade/jazz2/jazz2-2.8.0.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake xdg-utils + +DESCRIPTION="Open source reimplementation of Jazz Jackrabbit 2" +HOMEPAGE=" + https://deat.tk/jazz2/ + https://github.com/deathkiller/jazz2-native +" +SRC_URI=" + https://github.com/deathkiller/jazz2-native/archive/refs/tags/${PV}.tar.gz + -> ${P}.tar.gz +" +S="${WORKDIR}/${PN}-native-${PV}" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+openal sdl" + +DEPEND=" + sys-libs/zlib:= + openal? ( + media-libs/libopenmpt + media-libs/openal + ) + !sdl? ( media-libs/glfw:= ) + sdl? ( media-libs/libsdl2:= ) +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}/${P}-about-section.patch" +) + +src_prepare() { + # We need to install README.md to a different directory, default + # src_install will handle that. + sed -i '/README_INSTALL_DESTINATION/d' cmake/ncine_installation.cmake || die + cmake_src_prepare +} + +src_configure() { + local backend=GLFW + use sdl && backend=SDL2 + local mycmakeargs=( + -DNCINE_LINUX_PACKAGE="${PN}" + + -DNCINE_DOWNLOAD_DEPENDENCIES=OFF + -DNCINE_LINKTIME_OPTIMIZATION=OFF + -DNCINE_STRIP_BINARIES=OFF + -DNCINE_VERSION_FROM_GIT=OFF + -DNCINE_WITH_BACKWARD=OFF + + -DNCINE_WITH_GLEW=OFF + + -DNCINE_PREFERRED_BACKEND=${backend} + + -DNCINE_WITH_AUDIO=$(usex openal) + ) + cmake_src_configure +} + +pkg_postinst() { + xdg_icon_cache_update +} + +pkg_postrm() { + xdg_icon_cache_update +} diff --git a/games-arcade/jazz2/metadata.xml b/games-arcade/jazz2/metadata.xml index dff951fa6b7f..39f3565c770c 100644 --- a/games-arcade/jazz2/metadata.xml +++ b/games-arcade/jazz2/metadata.xml @@ -7,8 +7,10 @@ </maintainer> <upstream> <remote-id type="github">deathkiller/jazz2</remote-id> + <remote-id type="github">deathkiller/jazz2-native</remote-id> </upstream> <use> <flag name="server">Build the multiplayer game server</flag> + <flag name="sdl">Prefer SDL2 over GLFW backend</flag> </use> </pkgmetadata> diff --git a/games-emulation/ryujinx/Manifest b/games-emulation/ryujinx/Manifest index 92d4711521eb..78cb44cd4c3a 100644 --- a/games-emulation/ryujinx/Manifest +++ b/games-emulation/ryujinx/Manifest @@ -1,29 +1,46 @@ +DIST avalonia.11.0.10.nupkg 14418163 BLAKE2B 867d732e22d794dce0f2142b02df1dbcb06156d5a3de27ed7be5f5d7995d4278ffa8087bc8350ce8e51d5f330fdba697795d758a2eed464cbaab6d6e5b8e3adb SHA512 0b413cd082d38842389f22d96f83cb233e44ad7a77992b13eee35f7866279e46c9419b1c07bc38f9a29da6b7e434943b8ac424194d76ccb07fd9767eb9313af8 DIST avalonia.11.0.7.nupkg 14364728 BLAKE2B 48ba41b306f924c73f5c382e056f354a06e742da49db001b10c311ec0c856d91164209982bbce9ec4365f6afce87b06a157192fec308bf75e972f69c30af90ab SHA512 04ec6399c36c5b6dd1b6406557637330c16c82b38322687a865cd5dc474b13aac7ba3e6f12dbab8568d2f9f4bef205f02c8c6f55f1beb2634ff123bfc6fabb46 DIST avalonia.angle.windows.natives.2.1.0.2023020321.nupkg 4391179 BLAKE2B 36fd6dd6d9af3d9210b687d1407c61ffa938621137ee53960e04ca2eca44c655e566fd834664b1667d92d0031e62593a593b17c798de8e808665a3f7f1af6393 SHA512 4ec227f1c4da9cffbcccf2273171b51792c52f3e83f2a808904c559563a73f0ad63e6199c5fd82474101e03ac10718aab1877c1b4b051cf80d3ed88d41de7d06 DIST avalonia.buildservices.0.0.29.nupkg 37078 BLAKE2B 3d23f0050f6112c89ce100c3c1b88c04414c095ab6fadc1de74ec4b059e1edd3d7930a715e53c19dd4285ebb634e40f13965fddf81143465a5d056965b4e8d22 SHA512 9485e64c84b087beaf0803c049e9c057216b889bb8d452f0339149dbde65b2c9f1cca2f2b119c3d1eb8c6eb135f582edc72516095bb6be9a2d3b530d3aa3d639 +DIST avalonia.controls.colorpicker.11.0.10.nupkg 239815 BLAKE2B c96d3967d04daa2eeadceff3d02e89e54ef3275b33f7ed9c29f68b4178a99ddf6480b31169ca58d61780ca0f8385db483a391997b35e010fc56edcf49dbd038a SHA512 a35ec570c5c82524f90fa2c2113946df922fd091ee1a4f572695d1978a82fc0d370e9780d986502c0cdc0ff920e9a96fc766ebd03a7cdfb05579d9c6407aec36 DIST avalonia.controls.colorpicker.11.0.4.nupkg 244571 BLAKE2B f5dd96b6688d581f0a89265d2346f7ea11f0b543bc4b166905a0b11d6ff21dc99086909441cf83e126c8f9deb940286a32aa711f73db345af7ecbd6f2d290363 SHA512 bbdb79b7e6ef08b09549467127a7bb931a9df8ece03898a601b7e5975925312e958933374fbfcc4a7584ad8593d92adadb593c559a74298df0c372b47e22b9ed DIST avalonia.controls.colorpicker.11.0.7.nupkg 242124 BLAKE2B 02f835c2923227a76ca8c0ac92bb1b0dfaa7418f79a8c62f01b446bdc14c75ddd871daf516794276a73e493f55403e2987ac66092d183a7609ff6361ee262dac SHA512 9ddb0771d26c0b3b57957a6f53dac2971af4012ce1fd36718869040c19bbed467a333cc81ae6a02d0ac831fa1d07dfd80bb036e36028153f1cd294e66edd5176 +DIST avalonia.controls.datagrid.11.0.10.nupkg 387551 BLAKE2B d57a9512844c22cdb03d30901b9d430d7f57344f67157aa959a3b94c2b02de8def390771203860039b515874703bca035440b39522312102b62f2acac466f2c6 SHA512 a17aa994a3c56c5f82d131df33cb0de00b0212549f89a44976c0686ce635062f58f1ec64e06a0138791268893fc47761234df1cbfe406a4898c33121e44b799c DIST avalonia.controls.datagrid.11.0.7.nupkg 387475 BLAKE2B 15e02fa9b5392e53584e24baea6d6dfaf4ff478c82b669a723cea9e82a28c3eda838c38b3411121336e52b623b9cb1da711dbd1ab7391b55ae42d04a467be88e SHA512 2ed03668b6aa1fd389157a41a21a274d030435205165124913f5a14d96d0fcf8ead9fcce80d5171828c3a1e633764c5af4e92764457a3c4226c7d1f1cbadbebd DIST avalonia.controls.itemsrepeater.11.0.4.nupkg 123427 BLAKE2B d928cfe26039741da4ce79a42a0a57642294bf9d9047791d44771ac19c3d9cb2e0aac2a829ab38fe25afcddf9addfd869b8c88b927a8eec3de01588abddec8d2 SHA512 c22ad89d17e20f02db3d54bbeed57dbc316db5378848ccfd5ea4035ad03a15b4ad8961dddffef2ca7db843455379930223d14fe99ae4e2e2c050f928024e6994 +DIST avalonia.desktop.11.0.10.nupkg 37191 BLAKE2B f0898f4a4e0a28386aaaeb4dee51e5d169f08a69a62c022fbf25b340ba15a568ef712f8701d93e512dd47f2fe336df019b722fe9fb2bcb69762a5b6286a8b039 SHA512 47804a493667905f8d3cf690e352a3cf465991d3e851c7c7b1aef8dcc2c33a63cc803e13d586a9eec0b98aa8e88c01ef2dc2b90d4ae62f11850af0ceee8c91e1 DIST avalonia.desktop.11.0.7.nupkg 37184 BLAKE2B d52e45a3e0d22018a343eaeea8541a68069e5032820d22cf3512bd217be3e4cb6b4ecff659230a0ce34f66da1ba8bb79b72991a76b5c0d0a57c2421933e8094f SHA512 cd7be6154a2fc71df8900aee7c46c960b0f23ff7b5dfee6082aa84b8c12f001ebdd5be5ceacffaa9e429060089a84fd4051b45a6e64077913f7724d60540727e +DIST avalonia.diagnostics.11.0.10.nupkg 230109 BLAKE2B da80bc6fcaa1b8ed38247ba22a5d0736cb930f7c622f5926d346a950eaa8e9911979eee23cfe06adb7b400d98b3ae08fb32b4e7169b74d5f82e0f3032bfc251e SHA512 3e7a2d4cc1ce8adaba87ca925f669fcbd5baa362b4be7dd1309648fcb49dfd865ed443cfc0f443a61f1efd19475ba5a3f66ac1b5b9df340f240e9a87b06c631d DIST avalonia.diagnostics.11.0.7.nupkg 230083 BLAKE2B 8bfbf209b76491f88eb400a5c9b61b3638037ec51ebb8f53d1bf70011bed076c6a97aee8def867fc52a2aa870f4f7ac0caeb452fe9f2db08c01a71b54310f331 SHA512 8c41eb2f3204e0b5f878ec06f7452ebd59c2304b7fdbcecd059e9f03375d1c7bcb15e9ce219179eaa4c977fad4e3a3af4f222c43cb5ab84b6f9e148ced3f687a +DIST avalonia.freedesktop.11.0.10.nupkg 178321 BLAKE2B 091df67f2a17de5e0e655e59e5e9c2732223f93897795389ee7be2ae7bab8b8bad291277f01774de114dddfab50af8a59aef75115455e0f80b949fb3d581d437 SHA512 53c5415fcde87516e2c5917d6a956bea47904770d8fa5d36eeffd0c294d15ea194ae6c453fd17143ba92bb2ab6501fcc6780bb4720bcc0000176bd574dbc0fda DIST avalonia.freedesktop.11.0.7.nupkg 178281 BLAKE2B df76b56e6b91064a141f3881cdf7d4e4d96303eaed9f7a2c3ccb125774811fcf3124510aa05f0cb9f0c8cf27c597901d7a1f17b06e1e4c8f8bf460895169fa35 SHA512 776976c6d7572792a8b75c27d1bb13a4e834a9639b59647d297b11b0385cc29e282764547876dc8bd11412dc5c23c9f503b8a4e20432f2627563768e24fb7746 +DIST avalonia.markup.xaml.loader.11.0.10.nupkg 372292 BLAKE2B c9f72366a55c39313634580249d1a70d190abda252e14e117ad788136da789b31837374ade341123e0279608fb9c9c3b76efe5a73a3fb0d952e97f2d42cab9e5 SHA512 d6b7b0c9577e9078d259c26be3b75072f9bd2a652ba376f6f5ab90ae5e9d9b1ffe4e41d3eb9c9e73495362fa9b1857bc64edef10e85ba2e6e4de869a030d1b15 DIST avalonia.markup.xaml.loader.11.0.7.nupkg 372221 BLAKE2B 31c7176c275b2bba15589e4f46970eced968c2b35947fe24347bab3728aabfc327131073ef7ac0e3265394a3e0a0806fabd6bfb31235b602f2459684adcc85cf SHA512 ee9350af80220461484715df6b1b03ffec72d017ebb24094e46488f9c4e1b83bae9913d980f67e4ec2664965f585cdbfcb188c67565a1dc537c082b03cc8dba3 +DIST avalonia.native.11.0.10.nupkg 547680 BLAKE2B 7735979fd5c22429b777ea271cf47a90db5f7f084078826deaf05dbe6ea9a65c979047d25fcb14ca0682a87a2ef9660ea4f7df24118f117755bab50c7ec25286 SHA512 a06da387b69dc192eb1d4759d3a34fab60f4f1e52e98b3c2bdb4a4c755813a9731f78486a06e6c3b909ebe6dbb0f373142d6d92f7f6037dd1977861126024d99 DIST avalonia.native.11.0.7.nupkg 546223 BLAKE2B b8d983a4fba8f0f68f2c1c6389943b21ce4790e2af93a4aeb51a43e6e65d479e4ac467a7475fc4b50bc47659912462ccaa56b0bbb89273e5b7a775e3c33e6bd3 SHA512 ad4dc6ca0baccec4f1bf5cc9cd032eed8a9a36d19d1649ce45e8f18d3d7625c3e4afd86d4da1b51e24f4fbe83cb879645f8efec9c3e77248543caa7c83ce8ea2 +DIST avalonia.remote.protocol.11.0.10.nupkg 102597 BLAKE2B 3c6cea608b6bb8f58c704c8bb72a70e714c6eacdb61a87336582aba55c39d97f572bb94612a361070fe7d078f6e8a2505b826115ceb1e9319541dc3b82080568 SHA512 cc6a48cdadc218502086aa6cfadb3a06227cd28c34da79da3380743bbf42605f28ab0b7f887c82a8a26154c6047f208e4f2ce67a9e44d5c07389e1f79c059683 DIST avalonia.remote.protocol.11.0.4.nupkg 93173 BLAKE2B 363dd140cacb874714a0bbf7f12126fdc5a5a083b6a19c4f9fa1f2ed315f479a91b440c174484c1d0a99cd47c0bc3408d562eb3684e442f46c2b505f0522395c SHA512 99164d4808d71c090441cc39ae14a6d13e9d76e0d10f682feccbad7fb4b059aa48fa92666b07b3e950400afcfe7069c238f56295fe9ad03a8ddc02dccefd98c6 DIST avalonia.remote.protocol.11.0.7.nupkg 102570 BLAKE2B 7a04ca3ecbe41bafb9ef99c0e51f52e9934e3e6982821f03bb7b4eb80edc305453a467d6c40f6479d8547698a72fa4b298f12f1287ddc467cfad99c950963c81 SHA512 af65ca3197c6dff1d877e6e2b3615f605fc9cabe59b7463047e5fa3e2a467fac4d9fdc1912e3ad48ba295f664b66eb6551c11c78ad68547841452ce6dc1361eb DIST avalonia.skia.11.0.0.nupkg 187203 BLAKE2B 4cec64d8de662e4fb724b4b94d51a2a0bb88637cf4aaefb90ccf837b7e2650794758ec17e0daefbb78bfd92cf411dd496c50d083660ba62428f12f6ad305c06c SHA512 6fe1db10ed9422decd24fb60801d9b63651f0bd3f046a9e9d566d0816e7f3fb70eb4cf23db173537a5d5d8e1b75c2999793e5503648fa200a31806c6591b2723 +DIST avalonia.skia.11.0.10.nupkg 139558 BLAKE2B 4d7fd9127e84c8342651519464cc7a035038da4dbdf6739815d408c1ece534f01f0f2a56994eebedaf7adb9375e5989852a957c66b90f637464ed08e70d9cec6 SHA512 b4eaaa73b6b03f0b615f4cbe64d5ed5d7f6fb4ab953157116b3b7862b189e24f704cecb70e55f32eb0c991f47f253878a41a2fce01690acdf42f616996d45319 DIST avalonia.skia.11.0.4.nupkg 137829 BLAKE2B c0d0446ad88d128527f94010f1198e42cb3a5e8f9838b8502bc022c24eae1fab4b51250758d4b338d524c5335a22627966e4868c7a7cee3d6a083510232f9d45 SHA512 4299c6f49bb1a1c250fd69ed89e9ddaf47505a64fe40e90d2a59af06eb7847ed97d19fe42ab13709b1e922c660d5ec30dfbc9f72622239174dde8c76fd1a9071 DIST avalonia.skia.11.0.7.nupkg 138658 BLAKE2B bf2ff0f20f3c3b4f26f1003766efe6aefaf74dad194d6f6c2fe49f968dfa9ed83f2c315113ed2436457d93fdb81a2c96fd5e24b26120b8456d9cd2863a7213cd SHA512 e42663df7f1c3f13f6d983a9110da6bbf44df42d17a6830b2e156000b1027144d99a5da655a9062e0f094e1605895ce07ce2a0aa3621c4c79696bc1419340320 DIST avalonia.svg.11.0.0.13.nupkg 107627 BLAKE2B 962b51afd5e08c727f42600f235980964e1c59f4efb9d615758e65e0075e61d9f3f8e630e98bb601f79953e3fa2ad242b8c16616db86d2c8005e509f8eeeff8c SHA512 14df3ee5297d127ad23751ad28aefc8b27cef2ad08d1794b3c6396aff1de3a15fcf547ad55f587407c977e8d0cc6ccfce5b20fef991f42d70aed83eba850a9ad +DIST avalonia.svg.11.0.0.18.nupkg 140657 BLAKE2B c090c3f0ca116a90f243fdfbee4a45699e5fb1065d5070a6da8cc52a9e206f867891a568efbebbef62793a2093e44cc1f1ee55f3f83170c125296f5bb25371c2 SHA512 42bcbf8aeb44ab7387478ebe73510207a9690f942c46240faf6b78f2e40d160ad0916afa357b771c9e62efd6a19c0b27bba0eeb9c459634137c9edf1978a3df3 DIST avalonia.svg.skia.11.0.0.13.nupkg 74442 BLAKE2B 3cba5da950935bc90a6fd4331eed8873ecd0ba58068b16a0f70f39cbff1fc5d50c38862a68529809f0d8b17272723b564d5fedd96a6003104af2cbd312f18d27 SHA512 e6888dc587451a2fdb7bf708d7924fac5c121479cc9754958d96f6e4036c752b56a1e231b35b66519b5a6942993943f63611638e46986f33a3c9a9f436f913e9 +DIST avalonia.svg.skia.11.0.0.18.nupkg 100745 BLAKE2B 80ce920f0deb6c3d722a2ec6b596676bc7076b85c8ca31c0b54de9088931bac2b0e0adc126f13c2565ce6cb322657ff3fc23b1a53442175629375c7289340f5b SHA512 353cf22e8b9b2d750861703843af211f883eec1996750df7b841c537e0dbc66f3cd3ab188ca22153053b8f4bc93e3aeef99bf575a398534553eec17b435e66de +DIST avalonia.themes.simple.11.0.10.nupkg 148697 BLAKE2B 352ab5006df3f919472292af06ce4936e48f2cd7330555cf08389f2535ee1d41ae3a8edfbfd7ef5edd4053775307b75a0e0d7a2aa89d33dd6c9c9cf227921e3d SHA512 edd2586b7ccb3ab6e29ab08879966c95e646ac39e9908ccb9905f59829c1b55ee41b91bc1f92878e09b24f0faf7ea8782593291aee2b6b00006e2b211a3c6e1a DIST avalonia.themes.simple.11.0.7.nupkg 148589 BLAKE2B 0e99ff8a1f90dddb784af5270fc2b6e5e59ccce8223beb954632fd4727ff599077359f61de536f1215421f1f575e7a2250f1fb3776dbd1c5572debe5994349ac SHA512 9af2514c8052b6786e90bb8b7a49493808122b6459b83aab169932243e98777f3a265fc87d3b6efe57e544b58e0983d2891240a468ee3eb29ca06d7f76761cb3 +DIST avalonia.win32.11.0.10.nupkg 476114 BLAKE2B 5d1379c1564864be7ab149257e2bf6d840be801fa4acca8a81168b29e15e0c293eef48cc3afd95f7159f72e4cf054dd5f147fcb8244283bbdc41b35759a78d73 SHA512 b6db518fcce1ba56a5cf6692dfc88424a9bace33534c5a3abe7899c9c2412e451e2c8c5bb83cdc6b5fbfbc38cdbef8242e34322edee4621b11d60780f2b45eea DIST avalonia.win32.11.0.7.nupkg 472764 BLAKE2B 1a8de06bb67aa2a11ca9cdd108b6dc434f35c9395a39eeee59c31dc59c42afb592e6b88b5294bd71f6efd769fbe0a016a45383791ec090a5d192f1394411cbac SHA512 2a6b45c82023c66bfdf59cc07d2b5a6db865c1db66d3ece6103394133604e0a625936c5f88232ee047c1ed60ae91c3800fafb1de801f109ebbea0f6cb4ff6527 +DIST avalonia.x11.11.0.10.nupkg 285086 BLAKE2B 90b5be3a153a25ca74e73c65e4d0fd78d78acecf5d42f101db125a90dc018b2577ce4eba83da38961a9ce0c2990761fa561042f287f3ffa744f494702c8b0fe4 SHA512 8f68b2b5b2bc985719e4c030688bcd5a3ea29f0781b0176b69c33a41a5ab11db25b5b92fd8b9aa751f2faebbdee0f04032415fab8e5bffd7a2f2efef33c94a25 DIST avalonia.x11.11.0.7.nupkg 285005 BLAKE2B c639d4d7628199aca061e3a4fd620487142206f849ff009211084726cfff2684b34f3aa5077c1e4a779a7653c6942b51d970d520a3f5a9507196932f973be932 SHA512 c1eb86572e30a016eb692fccffb9f3db8ebe85d705e6b6f8f79578a08ea3a2613ea622bba23722089835d86494ed3eae4acc8ac0e51685ef3d94613d7df59a72 DIST commandlineparser.2.9.1.nupkg 496069 BLAKE2B e2c4b38841f83d6bc10432b8055af90369f1fe0a10105a58b51b44cd48e5d84cb0b5e4b19f444d8c81b38646a62c7c4d11cbd710e92fea68be3ebea6ab98e3f1 SHA512 4f364e45c9668c7e7cc6a922b488f3fa523033c20d7a432694f0a6af05ce528ea0481d8375e2f4f1032c6990347b4803ce9a0e48068c6fe15ec46fb1254f085d DIST concentus.1.1.7.nupkg 797108 BLAKE2B da3fbb82f283201803cec6e22f2f4f1dbfaa425a2c43d354eb4d9dc5278dedf14842bb61d3c666c348e7c866eaf0685b09873f24644ba4cf5f5eafedcfe7731b SHA512 ac1cbf5172bbceaf9961ee591fbf39f774720b1c5e841d9829068bf13af6a3519ce957b62c2695954a0cb6ce8bce5d4773941b17810b6c7c3e57a0821e7c0922 +DIST concentus.2.2.0.nupkg 867331 BLAKE2B 57e8ad4afd6c7c1d95ee9ce4a46fe5becc07fad10f8f0802d4aca12e6729dbf4fe206f57c0251c01bdb7f04e07ce83bca17f800233914e2881a34466761740ea SHA512 0617c93353247d361b085d07aea4c0b90c53881fb977b08a7c70aae66e86294ef558d9679044a9020b080cc2e9b3c3d09fb7a94f9710cfe0b5dc029dca1c5abd DIST discordrichpresence.1.2.1.24.nupkg 145124 BLAKE2B 583f3bdc9235448ca110841f9e12e149c30e4c28e1ae1004e3b0bfeff9ee884bed18da6186f488d5c7e10981ae0702ec1c22c5ae4d8f29bb2fab3c814c3e1096 SHA512 6aaa67d7a7ff242cb4ad2660ff983fe7da4e48f4e4372dde26f5f24983752b123d1d8bb2baa881ed3dd26bdc52f50f756140ab8a7c0260d9320bd2f2bc3c68ae DIST dynamicdata.8.3.27.nupkg 2133956 BLAKE2B ec9ec52bd955ba26ab3be0897f4e4546520a9861d66781dccd32249e259e4347904d1b2240909601b24c4162fbc816770935707ccea2a4ea2de186a4ba93d5a0 SHA512 068ca0705a887571fb4bff38b3e1def43d4b5bd0b15cea5e2d84a96f2b25215538a0eb4ddf0e209fcf70aca5896697d82e3ff7347e7fecd91fc95eef52b9b326 +DIST dynamicdata.9.0.4.nupkg 2398114 BLAKE2B b03fa545e51335c07f4f2eba53c2816c06c472de114a928350b5ddb3a47767b4cde4d425e6919206a7398b668179c18bb8561611e37044ff6218ae28b4087ebd SHA512 bdfa49e44545e06f6435a29423a05c67f9b004f51a3c2dff376e9de49099da068add76f9496f95171a35b24323de31e7ab2abde8e748d5fa770d6fd01bff7ed0 DIST excss.4.2.3.nupkg 820188 BLAKE2B 040aaabfcd5810436fc64b96b7f6f2b86157b182ed7ff33d39828815248f329d86b3d6fb43cf471e11c79dbc886ae19f60bfd92f21b8d884ebb5f3f2b41f30bc SHA512 fcb06d04937a6bd864060e8bdf4a65970c7450cdbdd3279465851310ac8bf12b645cac54ce8b7a8039c7ca9309ba3d9ee4e23827599479c4140f7755e119caa9 DIST fluentavaloniaui.2.0.5.nupkg 3203576 BLAKE2B c5701a84ac310f375e6b5af404adc967a91ef95b5256071f2c9555d64d1ecb8b88d4c518fc3e968f364e9c0554afffc2f8ba7da3b251a2523c9c90b6440cef03 SHA512 7c5c90d6cfcea56268d4dfaf090b0d0ac33ef9160cdc8482cab89cc45d94caa411e8ed03abe0f52fb79abc23e01240832d69c95bd3a82c606fddc2012d602abf DIST fsharp.core.7.0.200.nupkg 2777817 BLAKE2B b3266436b0ffc4b71759adf69ccc08ea4c61abf4c00cf7a6dc32700596ebbbbeeabfb71db1286534bca34cb1dddae901700aad8a2ea8b81fdbb108f13004ee7d SHA512 78367c201c0a714cd2b286737c2da08c9c188f126aaee609d9d19e7cc7512ecf09af211e259159bba5688c45487cde29fd7a3dea65222292f6b7d89aac73817a @@ -54,11 +71,17 @@ DIST microsoft.csharp.4.3.0.nupkg 462324 BLAKE2B c6cbdfc136e3895429e8d941ff1fd40 DIST microsoft.csharp.4.7.0.nupkg 627100 BLAKE2B 114a5af7151feb80785619d54caf5f928558a034254b5c2e185820a441f017705c933b0d66a31d395ce516a81f97655cfeca46e37397082b1b5d6ac6f507301a SHA512 2c96988515f95714d4b83f5650f183dc6a564e0b3cf5255fa0e3ef48476debab4bde542f9f2f6c47f6620b7a71d6a515e4415e6d2e388b60817a29621d5690df DIST microsoft.dotnet.platformabstractions.3.1.6.nupkg 72146 BLAKE2B 08d852b5e6558b499f2d780284aa747e5cf39886d86fa378128fae9f71741bd57c5bc75c0077948f193b7e8ea03a520d8ef3bd3b4fc80779adb4a84a4b44fe8c SHA512 55b87f544874686bed96889953b7e99e43426b79b0fac31cc452e0f4a27ca5cc08522c0ac967bf9df649f7c04137a5e2553d134ad79d5c1e69578367c2b4b4c6 DIST microsoft.extensions.dependencymodel.6.0.0.nupkg 111550 BLAKE2B 4cfeb02ef997979211430e5fce97bc47f4542c42049de8726d3bd882c6f2b94be638a7456e79bfa5960a696eb871c64e18914d83df1964ef7b8e2139caba79df SHA512 4222e75931c6e471e40966d3cb47ed73987b1bf9082d6753ef41a0ec6c6011df654847b540bc67accfe24b258fa2ea188be5c4e4458849afe7bff1d376e78789 +DIST microsoft.extensions.dependencymodel.8.0.0.nupkg 260512 BLAKE2B 9adefb89f67e0005d87ede2dcf6e2f07c42e6f59db5dda66177f0267c873cd918886b7c67fc7bac59211fbc665f9ce737bbc555a4901be5b74a4e783e263cca4 SHA512 4aa0b36bca0fe3ccea6e1ff4cfb3b6cf9287ba0e1da6f5e6e40ff64adb7df2c09aaad3ffbb1fcc3331b3c295591e3e1713b0dfbc6216ab07b78e22edc3ba46f6 DIST microsoft.identitymodel.abstractions.7.3.0.nupkg 111216 BLAKE2B 6de90f3263a866285a3783d267fc744103dd042ccd8657b72fc6949011f552d686e2bd72f47f113760857e5144ee1bd6ce0c2de216b147c895db38f2b0e624ca SHA512 1f135af6382b383a453e889e6b3bba8e764cc79cbaf746414e132ab4183d18e67abbd21410d2fdfb54ee628b3cd0cbb7a712d28a37fa85afe45b038673215748 +DIST microsoft.identitymodel.abstractions.8.0.1.nupkg 111940 BLAKE2B a167c10a36fc031d4fa478be20857e12124b730c55fdd7d688e7d1fcb2396758fcb03ab1cdc630842285b66ec4446545ed0a5f9ba715a08044583f19dcb054ee SHA512 8481e53cca2fa621044797759f19a28f200b7949651ff19d09d58d2acaa2fe2bb8341ae90938c6df0d3c307f094ea913d8d3a8c43ca5e394d6493fcab8822d6b DIST microsoft.identitymodel.jsonwebtokens.7.3.0.nupkg 379487 BLAKE2B 178798c7e2b5b5b6102d2fc880043fcd02c6de766acfb6c1710526c05d0b273945cc16ab07d80291be4b964c4bfeac55a3779ba9bd61cc5b94427153e1cf3729 SHA512 733a97d4684d8582c884764800d800c97be851ffe69faa37e23e1aeb56734fbf90c5bac590555e8f21a55eb06f50240d915cbc532ac9a32c54b37f6848ab1736 +DIST microsoft.identitymodel.jsonwebtokens.8.0.1.nupkg 411141 BLAKE2B 2bdd4127d27beedd95b9cfb334ce455d60d7b24a3d5b1d73b346e57046163bfde7f032d84069a7be8fc04df28cecc3a5fdfe9a2eb3a24a64f780eca06114bfef SHA512 30042d22f2865eee2de7357c4bb53cc4c97583dd9fa5ebdeb6d9a3830bb3a74e180cfd542873c866fe1ef31faf3c45d9ae3fdca2f97941768b8c906c1961b451 DIST microsoft.identitymodel.logging.7.3.0.nupkg 168809 BLAKE2B 401e2378aedde1965dd3f9bcd3e9faf165999a7a567f3ad96bfa4da42755205d9f0d5e6f91d35057abd2dab5907cf8a41f608644cd259e15d09d850b60448eb3 SHA512 db9d6caa2e318bcc4b59bd180ee45c80741ae12348e6042cfba51bd1ca6b50ca692d8318a7eee6fd08b8190a7c6b42c8808f53db60caed9bda384c2e5c2cee02 +DIST microsoft.identitymodel.logging.8.0.1.nupkg 167172 BLAKE2B 8baab654d274ee7abaca8c1695daa6d75a9b119553d854d67d19b352003d5bf050a0ae4f242ef85bd025ff3aa64a0a633a7fe76444df9dd62f044da576bbe745 SHA512 ad7de5a04dd1d353b795bf595c85424d6d12db07c9df35abf7fedc5d299fae43d1249a3b5755f511949a4302062ab2af20a881b19a4cac80a75675dc4339fbb9 DIST microsoft.identitymodel.tokens.7.3.0.nupkg 847285 BLAKE2B 34a9a580f103763a02e71b3b919076204fe7f5bab2d815e9346b9ce049f371f366a255c0f1e2a9e71397be33e95c3e70b7a76067da83466a2de9ce4eda88e29b SHA512 185467e99df1c629ddd0ae0a88fff27574f9f9b5255049544c1c8df58680715bad271ab0100bda9a8164635612b78169473b4b0b1696a0ba42da56877452cb6a +DIST microsoft.identitymodel.tokens.8.0.1.nupkg 973200 BLAKE2B b7063bdc962d50cad8536ca9eca74d9308f255bbafa303ff6e502b2292eb321424e6ce28998329c40cb8cfc34134f849b13eedda8b65a5fb1f1bfb82fe504b26 SHA512 45f859e29a1c3ab33c58882d5a9bf04be1e74d789c4a6fa9213585a94c1c3024700a9c9337406ead43ad3b2d0caa4dc921059db06da773a8acd130173edc601e DIST microsoft.io.recyclablememorystream.3.0.0.nupkg 175299 BLAKE2B b62b17517bdef389f56b7700aaede24dba4651498cc3db84b146ed35f1c3913dfd203d63486a4146e9150fb11c6a2b9e8f82154e61948da9c236f29c8ea41628 SHA512 ef1548eb301d88e00a72190f50b8f2df7591a7730fc70a18201de4c7441655d17d7e56f70e1a221ad487adeedcff547d0c87b7b2142bae261e8b05d63a4037ca +DIST microsoft.io.recyclablememorystream.3.0.1.nupkg 177094 BLAKE2B eed4635e61f0b5f07391a19db3e30bb4d6cc05fc12068867f434c22f3a36464824671292022cbc25c371324549c1fbce93d6964003949778c1e04ec2a8c6cc7d SHA512 c5794ea27c908b5fb2442faa441e9f3f81ffa3dc29d41a313b542643923ae61070905b1c15c2ecad98092c6b9b2a3b423aca979e71ed979728bd572b69f20a46 DIST microsoft.net.test.sdk.17.9.0.nupkg 33666 BLAKE2B 083013cb17263a5bd06a5f21a371390d52aa62d79650649ee0367d9c9f06854e7be9d526f935b956022aa7bbcf0962c90797ec4d69dc85b2bb02286776a8d379 SHA512 d56b077911a15540e89e7eee4febc01a4626245e7b41347ed0f0e9a08bc33eafaf26d68dceb50725b3c5ad4dda57ecbaf03fb4c258f8411a29e5fcefc4504990 DIST microsoft.netcore.platforms.1.0.1.nupkg 17876 BLAKE2B 13250226ef4869ad62b8acbe8b8f791f9bca1932562cb7a7e8162c3fa502c02200673cc9839f79953cb2d3a75f64f92d43ed1dcd9081732e4917197483188163 SHA512 5f3622dafd8fe8f3406c7a7ee506a7363c9955b28819ae1f2b067c38eae7ab6e620eb63442929b967c94fc511e47a2b7547ab62b6f1aafe37daa222499c9bb19 DIST microsoft.netcore.platforms.1.1.0.nupkg 17960 BLAKE2B 6a9fa22d75f5a1c65746dd71a63c3d4e37c393e99c23007c10f5ecce248a04863bf26e7562c7751177a6985eaac266c29cc6a5443a4a853e773f88994ad2a3fd SHA512 6bf892c274596fe2c7164e3d8503b24e187f64d0b7bec6d9b05eb95f04086fceb7a85ea6b2685d42dc465c52f6f0e6f636c0b3fddac48f6f0125dfd83e92d106 @@ -135,6 +158,7 @@ DIST runtime.win.system.net.primitives.4.3.0.nupkg 229724 BLAKE2B 070f7846a7c9a2 DIST runtime.win.system.net.sockets.4.3.0.nupkg 182568 BLAKE2B 5a5e6a9e909955b44b3ec7bc47924ac164685ab49f5c4f3932e29a2176d7959de4ad7e449b8226d7a52ef8ff06fdb8050609f0d70b2a57f63627c25bb18bc239 SHA512 d70b564d53be12665bd4ddb4ce64e60fef42d17c68368a6c7877e059f41f3218bbb72867162b740bf3bd363304397eacbda8c48ea4f83d2d3ec958c11d23493d DIST runtime.win.system.runtime.extensions.4.3.0.nupkg 125023 BLAKE2B b49fe00fd21a6fda42c642b69546989d9da187d7b1056b0c771a5069e29ddf10ff2ecb6172bc762e2c70847d6f992c7788446650ef4ef868f3e3ed84748b6f05 SHA512 f8ddce885541079b78ad27c1d4d53df5b78c976d6395a52cca6777606f0b8327dae6caa617e269034fb8100ab8964f60117708a25def4191e5c6c7c18e043b25 DIST ryujinx-1.1.1221.tar.gz 4488183 BLAKE2B ba6bea94109e8323e780f511bf20caf513ebdf7c52edadb9b749d11324c572316798b1b39b3199f5754bfe93e25ffd1b5c12849e010d4da9f5229ec62f6b5586 SHA512 ca9aa2ca6e2baf2b67b366defc82a1906139f84af595d1a06d61faeb2028bf0a32b85181a0c6f5d04b46df5cd127fcedc34f7b5e30b089d4cf2fabba6972907f +DIST ryujinx-1.1.1388.tar.gz 4698167 BLAKE2B f0502e75e22657c7264a09a7ffd735ff78020a4fd6f28001247eae3d2e68cde8605a101d4612ef5b8589ea621842e6cf6a36c7435365e5ed34234c93140485b4 SHA512 a2f0a973ff58df6055d57dd9903fb535b3a3b482a8fad76dc6d2a9b497695a77ce8bd92d6d93a66db513001794b7ebb2169036d1bac6317f7acba7774a7299a9 DIST ryujinx.atksharp.3.24.24.59-ryujinx.nupkg 195681 BLAKE2B 40f173fa9a550ef13c267cd2faee63ca9434423931613aa62344d5023972a7e2be30bb3df8bf2ab212b4fe59b552026a2f1a12fd92481c0e121b3853ebcb08c7 SHA512 6237bbfcd7f80517c9eb40d8b2ceea7586f34cc7e0aaf8e550ba6c1364d0b4bc3560a497bc7ecfb71d6e4cb08a0aabf97568cd38be6153ad74a8504cb59e9c3b DIST ryujinx.audio.openal.dependencies.1.21.0.1.nupkg 750288 BLAKE2B 5cd26add050945e556cc6fca0f8fb6770b5daeb705d6a5ca2265ab24474c7423f76d219a2712170e9e623a38c74faa418e4cd82227f1c5b7af57e514d77513c7 SHA512 4b6b99d943db72eac80779e2bbae15e9bac11ff1a30365f5363990f49f0c605fff5ce0b57bbb54e33cd73eed6e588e28598cfc0fe5bea7b56c2a3dda2d031194 DIST ryujinx.cairosharp.3.24.24.59-ryujinx.nupkg 91970 BLAKE2B 193a901e86e67280dfc7d7e90cca41ce1abf66b3bdeed873f169922b083b3432301447d3f3df9c0a0a464b2fc9cbb73374e0df77a9413d81e5f2abb3efe65e11 SHA512 441db2af76714be2fa020488537f4ad9cd99c6910e9df70c4876a828e776ffa8cd910d06c9a0f5bdf26827be0a6b2c0217eac3c060f0a46be5557083ed263a75 @@ -151,10 +175,15 @@ DIST securifybv.shelllink.0.1.0.nupkg 41278 BLAKE2B 57f356e042f56a9ec17326f077ac DIST shaderc.net.0.1.0.nupkg 25024 BLAKE2B 5278362621890a9b24c449c40cbc39e743983e1e181ee18e2e4b02f847a7b9733017651933a8c911562cda55a6d4771ba8fd43a7b30f7e3715b1a303bd49bf60 SHA512 04ae2e3da77b5ae29e795291372ca63dcb90534043cbc432f25b72383832a0f010f0e346e7d022a1fb42068c7ec300e37c3592389607c36219847bbb060e2fc5 DIST sharpziplib.1.4.2.nupkg 741182 BLAKE2B 3d22a281cf9afed622be8a4134f0ce143df11a94c6950bd14d35cf5a39700c4a1bb706c718561b06f8698ae804254bb1d38552a5f1bcce316d85a9394ee359f3 SHA512 4e080196e9b20427d1b5abe23943d647c365611247cf571d3cf2575808be7294b9957050aed57fa34326ef8965bbb314e03944693216502d0eb990253dfc94f4 DIST shimskiasharp.1.0.0.13.nupkg 214149 BLAKE2B b111b4fec586f193ab976e82d307cfcd07b67ceabe7c8400af9f17c7d4634a69ac0119576548840f559b533624b08fe01a5f976034eca0d5920bf5b9de369769 SHA512 705bfd34f50270bdc3f6fabca07f7860887cd2da9f3a65bfa29a76bf51773d00110f0f4e953e0eed3fcef63073b5430ef92a90ea0d3d33573853811c333ee466 +DIST shimskiasharp.1.0.0.18.nupkg 277939 BLAKE2B 1761193168c4d7067a99cb5d929b62f9a934a0ab6dff22e08887ba545b699dfaff752dc323147734c9b6bf0ef11b73120a065233e60498e1ef737c90c3bcf503 SHA512 b026f6a56ff5b331982c48a8b44b1b0d4926206d7db3e74d634ad961a4d4107c36b0274f4dd304c207e727ef1d61645dbe3caa114b405769e23db4544e417377 DIST silk.net.core.2.16.0.nupkg 356306 BLAKE2B 91f6b55354cae8c7c57c29422cf7ba3e193e9cc0a152b342a5a6d9cd1c6ce338439af11a8550edd202232998d56906d5c48f63e8c658247b6497d70090daa34a SHA512 9cea9e04ab772b40da0f48e5f7fede810ee7380bdec00fe98fa59bd2234664adec38ef63e7e0d6fa4cf83e0ecd6054901a814a28b9c804fbac33ff045cb9f3df +DIST silk.net.core.2.21.0.nupkg 412098 BLAKE2B 7154f03db448069e9d0526a8a3b2bf819e686d42b30b3eb89a6b56a37854442721e5cfe17dd4df53e56199d5ea66e4e4e5087e8394ea7e3be1847316e7724ebd SHA512 0f2603dcffe9bdc818f5b9f7ac30af771591afbc2014ef959e3c91a09245f5d89619a546c1d3d6f1811f62191d754aa868da1cd6326a3bac8d058efc3965da20 DIST silk.net.vulkan.2.16.0.nupkg 2652999 BLAKE2B 8fe40cfd674ff0075e707941c0bd99d57e8ad7551dcbfaa980fe2634fa6ee89c2b0a51b495d1db6b49945a42df94192ae74483e21873f7b95f5c3d687ea04aae SHA512 b6f53b3d4d2cd4e8eed14a5d567de5195ff595d2649f441b09920d7bbaec48563a95554cf7289901f8bb394339a92b428a05ae913b4d2a45a7af61ad38e44fc8 +DIST silk.net.vulkan.2.21.0.nupkg 4813505 BLAKE2B 11bde61d873b99fb2fd986ad77ebd11490a22ceb7b810520c8307268d6443ebb15a29844d76c4bf9d19299616dc10ee2efc5adc1f238372012ebff4cba63b368 SHA512 7af0bab44d4f7661db4153d2590fe461ebe6995f7487a6517fe506b2138bb6e60a81d1c036848d69193e5b6752019407cfbeb805aaafcd4215cd98955a198bc4 DIST silk.net.vulkan.extensions.ext.2.16.0.nupkg 294573 BLAKE2B b2778ac65f8c7807bec384e87d67e7b6458e35c96275abbb066bdb1947db19586956a7ec3f88f9255e44cfa432c7c1930e1d03004fd40e61f3b8bc763a3fc9a1 SHA512 1efe3177b98eec2457c6ee7ade30012580cf6077f6985ed76a9fb5ad358a9934cc9dd621bc1fdedcca90219f321e952344b898fdb5b23a59a6445e870d8d6a00 +DIST silk.net.vulkan.extensions.ext.2.21.0.nupkg 461071 BLAKE2B ca4ce31ed82206b0283be2ae318ede33ad18c3986d498259a5916ac6344c0179184e886703c8fef277fb9749b70a1b8d7207b3d0aa7b1f2c5e1c9fa2264abba6 SHA512 338c27a7bd2f0fe21830b90e2fe362e6567add337c610f4dc96538a70737b0e512658b0b87a962c67f0b78313044b2968acfbd48be039ff8b077cdccc55d58f0 DIST silk.net.vulkan.extensions.khr.2.16.0.nupkg 487175 BLAKE2B 86ba9c72f1acc9b96a34554879940746e47920844d221a0eb9e94aeba12c4a6550ce38978de85bb677bfa3f5ca3bd00add8800510179b288fd2a2f55d7f78003 SHA512 6b6365aa6246013c62408dcbc6c51818eae841a84c900f30ce4d163201386518b7f01ae10e003ae6a92e97cec9da287ca73c8665ab475666a503dc49f0790778 +DIST silk.net.vulkan.extensions.khr.2.21.0.nupkg 557089 BLAKE2B 1516d763c9e43d257facd377871b3eed12fabde3bf766bba9517bc07f6a147f2e624c06c35a755d048dd4d97db94a0bd8193587c799a851eb1ca3a6dcee3056c SHA512 0f315c517cd8bebf84c32af3c4e68c31b6c889f112b7d5dc4049f8f8d728f1b6b313b64a9237286548f4d0939e71a511004b22d58fbe205c865a8fc5bf779e41 DIST sixlabors.fonts.1.0.0.nupkg 1018176 BLAKE2B 8c8f31d68eb893018f09c3a9205a78ac93c3fbbd716a0c4643b7c00cd6b6f3891d78c6c7e4a83130084140e2541c52c053c155a352c477166199d4d3803c4ada SHA512 cbd960c1bb91bde6b20068b4b269bc7a11710bb0975884e157ef2cbddda6a9ade5a6c44232e01203b49a09fec669f72dac01baf12fe507f7fbb58ded8ae613b2 DIST sixlabors.imagesharp.2.1.7.nupkg 4517893 BLAKE2B b8a35a5237d11bb74214ba90c674b03d7e465086c01c9da8ca3f0355076d216acfa8588462fa4b6de39e4e226b5ad4996b2bff990747606957d49598835dba48 SHA512 7d48846d24a2442708aabfe3c20e7a3066df286840ffd36953988417b3a52030b571102d28b6a0507a979d604fcf36b3e7d1b801c00ec5720895a12da7ba1774 DIST sixlabors.imagesharp.drawing.1.0.0.nupkg 534688 BLAKE2B a116fbab8393394728bbd8fef53e83a798f0c643fc639a755d6258792a26b51673636d9d448cc8baadee3fadc9b2c46ed116f05e054c7c362967a66017dc576b SHA512 aaa93e7fce031cd969e6cda4ded839da7aa27508f168837c08e7324d23f31be0543485209114b3ca129852194bb20a1e7564497822f28fe1f200459ee51acc36 @@ -174,8 +203,11 @@ DIST skiasharp.nativeassets.win32.2.88.6.nupkg 11067547 BLAKE2B 27e223d732c0184c DIST skiasharp.nativeassets.win32.2.88.7.nupkg 10916239 BLAKE2B b3790e274d0e763152a8ad8d61754eca0c84908b3414979e0a7b7c55e59c953f4158b592e8687ca12fac9b7a0f3092afc2a4a03731c7e3680d90075076c86f79 SHA512 3476a2b19745b1ece35858a8534a02f7196ea0b30971d96b4d6219d2e8de4068f9ad83b5e0527519facd88fc64b46c69ac43b45a0f26c01e36885c3c54872324 DIST spb.0.0.4-build32.nupkg 42558 BLAKE2B 6cf06cfa1bab3f1a9e3dfad733c1fc884f2a9586f190451752cb7bc436e31400f1056ab203bca72391fa2979a277e4feec16a8a5267e2ad5217b9c739a8c9a49 SHA512 de220d44f6deadde8a73f3a1784762fb4f5240dea0a681cd5a6ac18c01c5ae2645baab960ba54652b8837b5b0e775c8ee0f3cd7df7d8c18adf0d16a39f7abcec DIST svg.custom.1.0.0.13.nupkg 915164 BLAKE2B 83456dda070df4ae3a59a3a42412d2e7d25c08ecdc0678b36b4bcc1d1ee341c059e6fd1d03f0a01f872ccb683e58edd0ea6146a692caa862b321d240ddb6ecd3 SHA512 45343585e56c4d72c3be8219184f5cdd13ec5b79fdecd3ba2bd3850d131e9adacf4de798d5782fadf88b468e98635e4bcb7f7a0320092a10d1d46698a51793f3 +DIST svg.custom.1.0.0.18.nupkg 914299 BLAKE2B 2bc6515007840aba0822720670da76b31b1dc78bc145d12365863ca3830984232969d085677b92a7e4d9246617228ef436c71266f6b84ef5a8111cf3df2ecf44 SHA512 2fc6f4bb4c16cb5e878335f8dcdf661cca8b69d2304d9a121922a6898ef7a5abea425bc1c80a87f8f150ab1b0f09b1a4c7dc89784df522f21aab0313d414721e DIST svg.model.1.0.0.13.nupkg 257208 BLAKE2B b530abd5748001795f87ecb1fbe8b02b1bbda2f9a8d20732ef5ace87817e8eea5bdff361ab0bcb6c806bfbc1cf314e52f18e8732057ebd3b82d22afd5ed93651 SHA512 680a4103bc1763c59b0095d80b3171628746d1b7eee9baec16345d80af863750852532b24e0c410dbaa2a68a3402dfc5fcca766c5980786e66b646a7358f0877 +DIST svg.model.1.0.0.18.nupkg 338934 BLAKE2B 63a8aa1ab9c165039a7acc94ff606567ff282eb58a43ce9b3bae1ee220a69a3c2821f4e4c1d32ea07f1b65e5328add8fd5127cb59ae429d0cc1aeff72e5e3952 SHA512 e6a6024b744c8ed1f0a97d79e193c15068b411fdaf605336e6127343b5604eab4f122c52741dae2bdf814cdc1c8c33e6870fdc61cfb716d8bb1207c7b6858458 DIST svg.skia.1.0.0.13.nupkg 109368 BLAKE2B 6e51d54ad1e3bef82cba221e7475fe3b494f6ac43855e098f61c0f08200fa32cf5be62c3ba10387efc43a346406775205345bc18e92925446fc11544271369ab SHA512 da109cb14d434aced99957b207c9adca01a7b91eab43a109ddf1690df273e848e34d289e7a96d6e5f5bfcb1ae694709b27a4fa99da0ecf1fb649a5ef1e7428bf +DIST svg.skia.1.0.0.18.nupkg 142489 BLAKE2B bae713cd5e973fd0d6adaa568e6b673a7b507e88d94c908b0d4c2c0f02f788e8c6f128496851484a76f9c94eaf371ea9908bfe9dabdd2da6e4ee77b2df189eb9 SHA512 a8b13fd29d71f5acd0ce6738e40a090d3dd9a4066c99136bff7eac0293d8856562729b996f4c1f39873b434bed801d39ad2cb95ceae48cb1bad10b2eb3226dcc DIST system.appcontext.4.1.0.nupkg 146990 BLAKE2B 7881a5a903a358e19b0de72fe800c70ac9233e7c5e1e4115d69be6f8dbc4fbe86debb79bcd453295730e803ff1da974075c999f52e4c721e085676746c2f9b58 SHA512 f724af13eb14aa57255f82841683a93b427de172b8d31b9fe2c6bc8c21a795e60ecf211b4e49e1c2e285fe1ad498e6bd9c843e109a60a3dc27b49df560106e96 DIST system.buffers.4.0.0.nupkg 35190 BLAKE2B fee35456dd7fde57a978d20526e4136f50764307ab2db6edf2c9d990992f4d2520531687885764ba2fb54f2a26640da699abb8ee538cda2015d65382d01128d5 SHA512 0663f4639c4e37c9dff12717cdeaebf30e38d91e986d6a99f9f16ba88189873e0399e418659e732a18c674d8875f8f41a1cf60319604173ca8430960759fddf2 DIST system.buffers.4.3.0.nupkg 35171 BLAKE2B 3b274a048ce14845ca957019b3670db00338972f6e11279e47f59ca6b4326aaecab1d11317694ed98e8a27f3de7ef6f90de94d4711ab224f805388d468728392 SHA512 3dcbf66f6edf7e9bb4f698cddcf81b9d059811d84e05c7ac618b2640efed642f089b0ef84c927c5f58feffe43bb96a6bcf4fec422529b82998b18d70e4648cbe @@ -187,6 +219,7 @@ DIST system.collections.4.3.0.nupkg 810001 BLAKE2B 0079d5834bb3857c002cc68631364 DIST system.collections.concurrent.4.0.12.nupkg 502657 BLAKE2B 39d39b111bb1dbf282a42d0b7cf0cfc64509d1805beec3a10c216946b21f090e2d1f94227035de2c17442b463a1985a65ce4de203356381e88eec036b26e893a SHA512 a46bd40b8cc7afeaea14c80ee6ab99a5ef6d27e9e897cfe842e9ab5ca04b9de8d7192a310225b1040d57d4870921487acf5df993ab81301d49994048e1341e85 DIST system.collections.immutable.5.0.0.nupkg 623075 BLAKE2B 14724fcb8654455184f8f16f8ac56b7b3c995e632af36e91f307331620b4e9f515a13bc4625d898fbb4b57ff9f017b43cb91ab40b0cebcd7d5eefe32979afa4a SHA512 726f8db7d179714cf0efeb0fc02fcebe7b4755762902e391e77cf78671dd5d5f364c7cf4ce3545b51cc7f37327d12d1500ba19f4b934f0e8bb69a6a347c0bbfd DIST system.collections.immutable.7.0.0.nupkg 538962 BLAKE2B 865b39a568c4c1643efbeba07b37a9b43adab688cee8174b4875b575c8e02f3a6ebd90ebc20ffcfc096c6a2017089b8e029345cf4eb24f3ccf9b911e57df0be6 SHA512 f084afc9395d74b4f252c47b7d0e378e676d6b8b6033a68636b648b58805e3772dd22ff1ded05d3c8c8553d2e7685b29b753fe1cbb5a333f018abe6422a3ebfa +DIST system.collections.immutable.8.0.0.nupkg 787241 BLAKE2B c46f56d995ac2cb0e4eb7b6bd2b62e80f522af8b7c1e59e4b52dbd9aa3113f3653913c9aa77c9d72655588807dbc6d17322833c768d8b8626ad231f49fba09f8 SHA512 057a9591c22b8629afbde9baab60a15a4b96e976188abbdbe85961beec1a32806a05da5caf89de84904a3fae53c38d14a9c50cea80e8383b1e70cd328d9e8053 DIST system.componentmodel.annotations.4.5.0.nupkg 691299 BLAKE2B 38a889831cef09c372c64fbb244dbe7e7f44d4a8b136516bc1d7a02b97d02f62f897b820ed16e67445c7168465ef77d62206d6d1123e52571cb92d57727fd63e SHA512 7f5029507196abf9490bc3d913b26a6c0ded898ed99e06503b699b61f086d0995055552aaa654c032d1f32f03012e1badfd338ec42dd3fa3d0c5ce4e228ea2e8 DIST system.console.4.0.0.nupkg 102388 BLAKE2B 9cadd0e2a0256da6c777eed3550c399df1bb936daab99dce3025d5781334b4583acddde3a0f8edf617ccb3e2b9f72158c791d63ccce7cbb2645882fb7d8efbe9 SHA512 44937dfe632127d3a7c89ca77502eeb6f66201ef135384e04b570a90a3eee3d72497869344c759c35295d6a4b46afd561ba19562dfff9896ecf2d4b07e96fb9b DIST system.diagnostics.debug.4.0.11.nupkg 149779 BLAKE2B 337beed5f06441a09fb704ffdcc3c277e2f99d7b4931e86419e4d4d0925ad44c86276aae0ee1e29f94ecd37257953731e9607bd00de716d3195dc994dbe189c2 SHA512 02f4d0bf969eb1a876def21c1ffd75f8ed5f979aed9a1169f409e60a6e07016854e2154da5c0164fabaeaf6527a18d8e67282db1b69327a1b3581e9c0c742f58 @@ -226,6 +259,7 @@ DIST system.objectmodel.4.0.12.nupkg 321648 BLAKE2B 7a008caf5f7f38f34d62037e5e35 DIST system.objectmodel.4.3.0.nupkg 321655 BLAKE2B bd1110665321034ec27635077ba7f9f1a18cf2f813d7a99f511a91fb6c95827b3b10108bf8a5b4a9e32685a8754e1eeca7d1afb2dcd02ad5ce3ef9db61fcc114 SHA512 409bca3d2139bd1d003c711400ba2db5e576bb54d593aa541ec3576e7b2029b60159ab1c5b2c4e7389267b1b95ebcd8c2f064dc6e1f53e693aacb1737f066123 DIST system.private.uri.4.3.0.nupkg 16869 BLAKE2B 7a407e16b35e4a5f405029e80749f7ae1c907707d9f72657016667ccf1255463011497b09b7d9e23fb3ccfd4de508dea48b33b13267775619f63134897e54c61 SHA512 5989a57ef273b689a663e961a0fe09d9b1d88438e5478358efc4b165de3b2674fa9579c301ce12d2d2fa5f33295f2acb42eceea2ebebf70c733da6364ceaf94d DIST system.reactive.6.0.0.nupkg 2716934 BLAKE2B 9a3886ed7ef59205f53f2c6a2e5f16262942b3ee969583cc20807ab63cbe53207f1bd91deb3e06031d2e947d5c6550e6d2cd93ae6d919c6e9a1141b51d5e7daa SHA512 9303ea0efe2b4b1782bbeb87ce88469e7dbde14ad441f153d2d79a518f7fe8aec76f6407d69b726a0383f1f272232c833fd79421f7ba56dfda110f45deb48b72 +DIST system.reactive.6.0.1.nupkg 2721369 BLAKE2B 5bf499b849e5d474beb09d961f235bc1705732d0fac6999a116d796487f2bb9c036a1ba70ef3a9bbf487f127001a5a38b0067316d5447a1b516dbaaa4b38efc9 SHA512 5b7af637b4a167f66a29cb96f3339bc8bb1f1cd279b5cb5ff9579d8a56e8e6747c6231580a83e8c905999e82586c01fde00f2f4f3826cb0c11d2933a074977f4 DIST system.reflection.4.1.0.nupkg 700819 BLAKE2B 7d98a07245ceb46e777b904b66ebd5d85067ed9a5e7ca10bc0838f115cfd5f7da1b6420b2126e56310b47b533fcd22ce020e046d03423ccdeb9392609783ce56 SHA512 67143ef8f6fb1044830c70c66e9a2b4f1850f50df5dadfaa5177338362ea7b9e9fe4b0ba59cd4eac6e1c8db4e0c285c239e4c2b3ce61391618b411aaff45f7c2 DIST system.reflection.4.3.0.nupkg 700821 BLAKE2B a6aaf054f27be81f1a8251241deaddd6d35aa9ff1cd1b35a65c75201c3305ca0481d8f7a6de52a85736b0477332c404573db300f324e6301365f14fd59784225 SHA512 2325b67ed60dce0302807064f25422cbe1b7fb275b539b44fba3c4a8ce4926f21d78529a5c34b31c03d80d110f7bace9af9589d457266beac014220057af8333 DIST system.reflection.emit.4.0.1.nupkg 219037 BLAKE2B 032654f464c65df895878e3e726c7f14c8c380fdb29a092b3ab99b57cd5b4c2a094df9a579b6a0b8ab416244a98b7bb2efe4a3e56792bd62f35d7077eeae33dc SHA512 ff7766886b945148ea65a49e4ddc648336340def2c2e94b8277b584444ec9126d96918f0bcbeb62016a530623a89ccd9eae749d62065b01058387b5d09fc7dd1 @@ -239,6 +273,7 @@ DIST system.reflection.extensions.4.3.0.nupkg 99740 BLAKE2B 15554874193bbddbb2a7 DIST system.reflection.metadata.1.6.0.nupkg 852113 BLAKE2B 4d15704a1fe00501c1bd8c945d02cd2e2d77c12ce86aa628edd18383838c9dbbfc449b8026707bb1ac570e55369e988aa6068f57acdea28f519bd3bdfd5b9304 SHA512 f5227666edc6bb1da78b8a8e86a68e9bd647caa2ec6a1580c14a4a5e1fe5cfde3bdaf0d8c23dc210c405a55f83ceb6add1a9adab149dc065b38cfddc9b01ba20 DIST system.reflection.metadata.5.0.0.nupkg 1006081 BLAKE2B 2b10bc13e07d904270e3661435d372008ab9aee0c0dfd409251867273c3e9541392413018306900b0d9c114843756828c946801f65912e27f7a3d351c9061c52 SHA512 3b74e3e491eee87a8410f5b9a2e556233d9919267f6a054da7a4c9c34b6916b07c77ea9ef8cceb5b7c3361e7394e502cc3c9a09247c6a06bb58509e82554e527 DIST system.reflection.metadata.7.0.0.nupkg 1029794 BLAKE2B c4eb7069819ae7d6ee8fcf156fcf5fbb5d57022eb2c8e4677f1e64508c69853410da7985a08c936c38eb43201bf5cdcaa8c3c091531238ae78f4037b286b60a8 SHA512 2d93c8ba1a78ceb90d25b7a3b82ae7c7f2452ad29f49ee8e1c60b2bcda19f8f6edf68689d42a586aef5faf9f1049fe5e8095ec9a4ab48a2cd2a950a8b7ec2c85 +DIST system.reflection.metadata.8.0.0.nupkg 1307788 BLAKE2B 45e8712d7cb14ce712722aa4871c6ee6a346ff05f7269f96858a47fb53e4e977473d47f20097f349f3ad1aae517f372006a172654df433aa7d309a4ddec172c5 SHA512 fbab0c76426379ed01ea79b702504197b710688d283e788bbef92b90586610dddfa3f84638d685770a4068ef8645395b65ee24459cc5c14ee4497416d11c89c6 DIST system.reflection.primitives.4.0.1.nupkg 281678 BLAKE2B 3aba0904b106e846cc9ff3fec98a6cc4acba2d2dd3296248303bb02b2e32bdafa7fa095f1c29636fd1c85ca5ef4d972a7b6218834e458ec9f41f275eb195cb4d SHA512 08ad6f78c5f68af95a47b0854b4ee4360c4bad6e83946c2e45eaa88b48d27d06618c6b7479bd813eb5f30a2db486590d17645e9c0e06a72dbe12ffd37730707e DIST system.reflection.primitives.4.3.0.nupkg 281679 BLAKE2B 36dc0fb5e7a6927ab2f54bc9ccb2e032cce0284c3aa9b83cf2ded8bab5fc7918553b06b16bef69161a7d9a0548b3e9159ab582533578cd28a661225559bd2b1d SHA512 d4b9cc905f5a5cab900206338e889068bf66c18ee863a29d68eff3cde2ccca734112a2a851f2e2e5388a21ec28005fa19317c64d9b23923b05d6344be2e49eaa DIST system.reflection.typeextensions.4.1.0.nupkg 187836 BLAKE2B d9cf37002f9c37bd11c43df97fd2e8234993f34c97e9a0606ef28164f1c587cc55ad2f2d66dc62de304ccae90f4d5636d163bbbc86fc00b4bb258a5dc91f4068 SHA512 5b1875ae86f76f60307fbe261c7471e996d4d4eade0c4783cb35a5aad7fec4f01be01cb1f1f78af22d483ecce12096f6ed431d69c4a66c7bf235008bcac30cb7 @@ -275,9 +310,12 @@ DIST system.text.encoding.4.3.0.nupkg 327281 BLAKE2B e153609b257919932499a013337 DIST system.text.encoding.codepages.4.5.1.nupkg 4234891 BLAKE2B d06be022d76a5793999248baa82db37adc262da2e74531d75f5f5e1a6c29b0ca702694b19c3254ab2e955f5b70959ff22f35d43593a2072af6ba5b7952155dc2 SHA512 12edddc9452a0c592eb24aeb2b9e152d60b8d44540349368e6fce3a239c6029847f8557adcd260df3b39c744ef45a6034d9db2fbce9e20e2b8dc78363578b0ef DIST system.text.encoding.codepages.5.0.0.nupkg 4244436 BLAKE2B 85bf22ce5389b87be3c7bef61ed2e16a38e7170bf778c03157b71da30a1396d721599afad71c9865ce9c3b8d4357aff62a268c5e75e51e2c969558f56cb29391 SHA512 4f32c801b3dc8b3d287c17310e8eaecbb7d3d0e311e39e1c428439fea7276860febc38422a61abc93d3cbbcd97bf511835b316553e931e04f6333a80629dc746 DIST system.text.encoding.codepages.7.0.0.nupkg 3198933 BLAKE2B 077972f69636114b3d9db09398f6d9322a681665fcf280a15fb0506d45da644e07c2e3aee91d76c908e1ab1762411bc970978bc8823a5b45aa994b172a7d95bc SHA512 485abfaeb1f9dac307249b2d84375a7d63c4bb175109107ba59e3ab6b476c52a62d677ca3c06f0e9a999afd5bf2f21d396a4b4d534563bb9da8d1b8ed6fc458a +DIST system.text.encoding.codepages.8.0.0.nupkg 4260927 BLAKE2B a31aecd7246d821bec0b0f793c7076210132c2f9433265ec2059b8059d574a89e6167dc1154c645559ab0115e4abc43305518e0d62868640d8651009c84fec24 SHA512 77dadf6b1a73eeefb50507a6d76f5e3a20e0ae7d3f550c349265ae4e0d55f0ae4f0ef1b41be08dd810798a8e01dbba74e2caac746b5158b8e23d722523d473ed DIST system.text.encoding.extensions.4.0.11.nupkg 244203 BLAKE2B 957201548c8629ab5111cbbcae3518b7c07bef93ac972b557e4f9f729dfd2519ef4523d5f6ea23b22eb19f93a3b17dbf7f1b6bed105f89b9219d53d8ed1534f7 SHA512 b2ba1f2a96bf14466fb31e4ac1fad25e7032688357340ad8976b8aafe7cbe39c061835a4e17d7cf6ae291d3155f07d3371f6b65ffc1c15474c3c86dbb7735e82 DIST system.text.encodings.web.6.0.0.nupkg 235525 BLAKE2B 1a9c6233292c8d9186c92fea63b918a3a97ec23588f06a3170d0f085359acf77eea7b10867ee81602837818f25968f7cd91e193f83a081fbe6ae4467ec92d32f SHA512 0f26afeeaa709ea1f05ef87058408dd9df640c869d7398b2c9c270268ddf21a9208cd7d2bfa1f7fbd8a5ceab735dd22d470a3689627c9c4fadc0ea5fe76237fa +DIST system.text.encodings.web.8.0.0.nupkg 374440 BLAKE2B 97211e710df3dcd17932f168e254806d7c8692ac01d667a2e89a5ddc956b24fba8467fbc2d451057757b5c502442d2c91bcaf0f867da7e95456b2aa18136b354 SHA512 ba0822c38c3b658aba9495642d269e882b827e3be4ad2dc1426d8a97d3cbc5a2277c5f80847d0cb9381078af01523328c4992caa058146d5d8ee6b8a08609c32 DIST system.text.json.6.0.0.nupkg 1228529 BLAKE2B 3285c14fda2abeabd40a2f76cbe8c6b6d9dde0cdbdf0ed2429fb83e473bbf510dc85af89d69e29b959f49e67432cc6c4ae639685dfd303a09e6262d37f7e9d15 SHA512 167b4ee8d1277a5d8bd6b4fbe0a3b3a708519235fb005ea98cafdd5b30e17758efeb0a87dcd068af289400d841f4d2cd24550df882d1927c47ec6ff4fb8781ff +DIST system.text.json.8.0.0.nupkg 1983421 BLAKE2B 053f3200d5920a5a31b4e4e6d13f0a81490a518ed68363a1a04c1edbbc125f90b9fa8f469614127bde714df352052a0dc56d70c9595277686799d33a16df351b SHA512 59243516d9de8ce90be60d6c5d271ff4c5fc6b2a4b723443022a72bd1b8f98adac3d17439df5543fedead81a8e3b018fd9a89c40a2459d3cb2d1dd935d17b426 DIST system.text.regularexpressions.4.1.0.nupkg 514882 BLAKE2B 864d70cdb65bf87b684561f98d2d5193e2d66015e4cd770ab823a6ba966b3813d75f0ed6aaec82012a3d5f66ef9be182e7773b4c3b94407ab10c9e5dcd9e9f2e SHA512 9b612027e43c33cc256e016e0b400547c5923e93ab6ed1a40d2b97292cb18a1195fa79aba2b0166a6b11842a0fef6685d31b848375daffdf6d2acf297af40bbe DIST system.threading.4.0.11.nupkg 708036 BLAKE2B 6b85f9c80dfddd5faa9799fdd64379c4c066b076596cd0008c46114b91025a20e00cb8b626b6fa5d139af6aeb8a3f6781ca7e55c4f7d147eae2f38e14d7a63c2 SHA512 05c0dd1bbcfcedb6fc6c5f311c41920a4775f8a28a61ca246b6c65ad8afd9b04881d3357880af000ac056fd121fc5c3ec0b56d6fd607e0c27e7a639157c85e3e DIST system.threading.4.3.0.nupkg 708088 BLAKE2B 004d01762fad35a4607522d974a0cdc3d0049c82fe704f2f86fb98ee81059ebb56d13c290fcd273d1067a1a7c7f17bf3259d4d7e802c1d09a95e3c5fa29ef3f3 SHA512 97a2751bdce69faaf9c54f834a9fd5c60c7a786faa52f420769828dbc9b5804c1f3721ba1ea945ea1d844835d909810f9e782c9a44d0faaecccb230c4cd95a88 diff --git a/games-emulation/ryujinx/ryujinx-1.1.1388.ebuild b/games-emulation/ryujinx/ryujinx-1.1.1388.ebuild new file mode 100644 index 000000000000..4cda1feaf498 --- /dev/null +++ b/games-emulation/ryujinx/ryujinx-1.1.1388.ebuild @@ -0,0 +1,315 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DOTNET_PKG_COMPAT=8.0 +NUGETS=" +avalonia@11.0.10 +avalonia.angle.windows.natives@2.1.0.2023020321 +avalonia.buildservices@0.0.29 +avalonia.controls.colorpicker@11.0.10 +avalonia.controls.colorpicker@11.0.4 +avalonia.controls.datagrid@11.0.10 +avalonia.controls.itemsrepeater@11.0.4 +avalonia.desktop@11.0.10 +avalonia.diagnostics@11.0.10 +avalonia.freedesktop@11.0.10 +avalonia.markup.xaml.loader@11.0.10 +avalonia.native@11.0.10 +avalonia.remote.protocol@11.0.10 +avalonia.remote.protocol@11.0.4 +avalonia.skia@11.0.0 +avalonia.skia@11.0.10 +avalonia.skia@11.0.4 +avalonia.svg@11.0.0.18 +avalonia.svg.skia@11.0.0.18 +avalonia.themes.simple@11.0.10 +avalonia.win32@11.0.10 +avalonia.x11@11.0.10 +commandlineparser@2.9.1 +concentus@2.2.0 +discordrichpresence@1.2.1.24 +dynamicdata@9.0.4 +excss@4.2.3 +fluentavaloniaui@2.0.5 +fsharp.core@7.0.200 +gtksharp.dependencies@1.1.1 +harfbuzzsharp@2.8.2.3 +harfbuzzsharp@7.3.0 +harfbuzzsharp.nativeassets.linux@2.8.2.3 +harfbuzzsharp.nativeassets.linux@7.3.0 +harfbuzzsharp.nativeassets.macos@2.8.2.3 +harfbuzzsharp.nativeassets.macos@7.3.0 +harfbuzzsharp.nativeassets.webassembly@2.8.2.3 +harfbuzzsharp.nativeassets.webassembly@7.3.0 +harfbuzzsharp.nativeassets.win32@2.8.2.3 +harfbuzzsharp.nativeassets.win32@7.3.0 +libhac@0.19.0 +microcom.codegenerator.msbuild@0.11.0 +microcom.runtime@0.11.0 +microsoft.codeanalysis.analyzers@3.0.0 +microsoft.codeanalysis.analyzers@3.3.4 +microsoft.codeanalysis.common@3.8.0 +microsoft.codeanalysis.common@4.8.0 +microsoft.codeanalysis.csharp@3.8.0 +microsoft.codeanalysis.csharp@4.8.0 +microsoft.codeanalysis.csharp.scripting@3.8.0 +microsoft.codeanalysis.scripting.common@3.8.0 +microsoft.codecoverage@17.9.0 +microsoft.csharp@4.3.0 +microsoft.csharp@4.7.0 +microsoft.dotnet.platformabstractions@3.1.6 +microsoft.extensions.dependencymodel@8.0.0 +microsoft.identitymodel.abstractions@8.0.1 +microsoft.identitymodel.jsonwebtokens@8.0.1 +microsoft.identitymodel.logging@8.0.1 +microsoft.identitymodel.tokens@8.0.1 +microsoft.io.recyclablememorystream@3.0.1 +microsoft.netcore.platforms@1.1.0 +microsoft.netcore.platforms@2.0.0 +microsoft.netcore.platforms@2.1.2 +microsoft.netcore.targets@1.1.0 +microsoft.net.test.sdk@17.9.0 +microsoft.testplatform.objectmodel@17.9.0 +microsoft.testplatform.testhost@17.9.0 +microsoft.win32.registry@4.5.0 +msgpack.cli@1.0.1 +netcoreserver@8.0.7 +netstandard.library@2.0.0 +netstandard.library@2.0.3 +newtonsoft.json@13.0.1 +nunit@3.13.3 +nunit3testadapter@4.1.0 +opentk.audio.openal@4.8.2 +opentk.core@4.8.2 +opentk.graphics@4.8.2 +opentk.mathematics@4.8.2 +opentk.redist.glfw@3.3.8.39 +opentk.windowing.graphicslibraryframework@4.8.2 +runtime.any.system.collections@4.3.0 +runtime.any.system.globalization@4.3.0 +runtime.any.system.io@4.3.0 +runtime.any.system.reflection@4.3.0 +runtime.any.system.reflection.extensions@4.3.0 +runtime.any.system.reflection.primitives@4.3.0 +runtime.any.system.resources.resourcemanager@4.3.0 +runtime.any.system.runtime@4.3.0 +runtime.any.system.runtime.handles@4.3.0 +runtime.any.system.runtime.interopservices@4.3.0 +runtime.any.system.text.encoding@4.3.0 +runtime.any.system.threading.tasks@4.3.0 +runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.native.system@4.3.0 +runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl@4.3.0 +runtime.unix.system.diagnostics.debug@4.3.0 +runtime.unix.system.private.uri@4.3.0 +runtime.unix.system.runtime.extensions@4.3.0 +runtime.win.system.diagnostics.debug@4.3.0 +runtime.win.system.runtime.extensions@4.3.0 +ryujinx.atksharp@3.24.24.59-ryujinx +ryujinx.audio.openal.dependencies@1.21.0.1 +ryujinx.cairosharp@3.24.24.59-ryujinx +ryujinx.gdksharp@3.24.24.59-ryujinx +ryujinx.giosharp@3.24.24.59-ryujinx +ryujinx.glibsharp@3.24.24.59-ryujinx +ryujinx.graphics.nvdec.dependencies@5.0.3-build14 +ryujinx.graphics.vulkan.dependencies.moltenvk@1.2.0 +ryujinx.gtksharp@3.24.24.59-ryujinx +ryujinx.pangosharp@3.24.24.59-ryujinx +ryujinx.sdl2-cs@2.30.0-build32 +securifybv.propertystore@0.1.0 +securifybv.shelllink@0.1.0 +shaderc.net@0.1.0 +sharpziplib@1.4.2 +shimskiasharp@1.0.0.18 +silk.net.core@2.21.0 +silk.net.vulkan@2.21.0 +silk.net.vulkan.extensions.ext@2.21.0 +silk.net.vulkan.extensions.khr@2.21.0 +skiasharp@2.88.3 +skiasharp@2.88.6 +skiasharp@2.88.7 +skiasharp.harfbuzz@2.88.6 +skiasharp.nativeassets.linux@2.88.3 +skiasharp.nativeassets.linux@2.88.7 +skiasharp.nativeassets.macos@2.88.3 +skiasharp.nativeassets.macos@2.88.6 +skiasharp.nativeassets.macos@2.88.7 +skiasharp.nativeassets.webassembly@2.88.3 +skiasharp.nativeassets.webassembly@2.88.7 +skiasharp.nativeassets.win32@2.88.3 +skiasharp.nativeassets.win32@2.88.6 +skiasharp.nativeassets.win32@2.88.7 +spb@0.0.4-build32 +svg.custom@1.0.0.18 +svg.model@1.0.0.18 +svg.skia@1.0.0.18 +system.buffers@4.5.1 +system.codedom@4.4.0 +system.codedom@8.0.0 +system.collections@4.3.0 +system.collections.immutable@5.0.0 +system.collections.immutable@8.0.0 +system.componentmodel.annotations@4.5.0 +system.diagnostics.debug@4.3.0 +system.dynamic.runtime@4.3.0 +system.globalization@4.3.0 +system.io@4.3.0 +system.io.hashing@8.0.0 +system.io.pipelines@6.0.0 +system.linq@4.3.0 +system.linq.expressions@4.3.0 +system.management@8.0.0 +system.memory@4.5.4 +system.memory@4.5.5 +system.numerics.vectors@4.3.0 +system.numerics.vectors@4.4.0 +system.numerics.vectors@4.5.0 +system.objectmodel@4.3.0 +system.private.uri@4.3.0 +system.reactive@6.0.1 +system.reflection@4.3.0 +system.reflection.emit@4.3.0 +system.reflection.emit.ilgeneration@4.3.0 +system.reflection.emit.lightweight@4.3.0 +system.reflection.extensions@4.3.0 +system.reflection.metadata@1.6.0 +system.reflection.metadata@5.0.0 +system.reflection.metadata@8.0.0 +system.reflection.primitives@4.3.0 +system.reflection.typeextensions@4.3.0 +system.resources.resourcemanager@4.3.0 +system.runtime@4.3.0 +system.runtime.compilerservices.unsafe@4.7.1 +system.runtime.compilerservices.unsafe@5.0.0 +system.runtime.compilerservices.unsafe@6.0.0 +system.runtime.extensions@4.3.0 +system.runtime.handles@4.3.0 +system.runtime.interopservices@4.3.0 +system.security.accesscontrol@4.5.0 +system.security.principal.windows@4.5.0 +system.text.encoding@4.3.0 +system.text.encoding.codepages@4.5.1 +system.text.encoding.codepages@8.0.0 +system.text.encodings.web@8.0.0 +system.text.json@8.0.0 +system.threading@4.3.0 +system.threading.tasks@4.3.0 +system.threading.tasks.extensions@4.5.4 +tmds.dbus.protocol@0.15.0 +unicornengine.unicorn@2.0.2-rc1-fb78016 +" + +inherit check-reqs desktop dotnet-pkg xdg + +DESCRIPTION="Experimental Nintendo Switch Emulator written in C#" +HOMEPAGE="https://www.ryujinx.org/ + https://github.com/Ryujinx/Ryujinx/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/${PN^}/${PN^}.git" +else + SRC_URI="https://github.com/${PN^}/${PN^}/archive/${PV}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}/${PN^}-${PV}" + + KEYWORDS="~amd64" +fi + +SRC_URI+=" ${NUGET_URIS} " + +LICENSE="MIT" +SLOT="0" + +RDEPEND=" + app-arch/brotli + dev-libs/expat + dev-libs/icu + dev-libs/libxml2 + dev-libs/openssl + dev-libs/wayland + media-gfx/graphite2 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + media-libs/harfbuzz + media-libs/libglvnd[X] + media-libs/libpng + media-libs/libpulse + media-libs/libsdl2 + media-video/pipewire + x11-libs/gtk+:3 + x11-libs/libX11 +" + +CHECKREQS_DISK_BUILD="3G" +DOTNET_PKG_PROJECTS=( + "src/${PN^}/${PN^}.csproj" +) +PATCHES=( + "${FILESDIR}/${PN}-1.1.1221-better-defaults.patch" + "${FILESDIR}/${PN}-1.1.1221-disable-updates.patch" +) + +DOCS=( README.md distribution/legal/THIRDPARTY.md ) + +pkg_setup() { + check-reqs_pkg_setup + dotnet-pkg_pkg_setup +} + +src_unpack() { + dotnet-pkg_src_unpack + + if [[ -n "${EGIT_REPO_URI}" ]] ; then + git-r3_src_unpack + fi +} + +src_prepare() { + sed "s|1.0.0-dirty|${PV}|g" -i src/*/*.csproj || die + + # The patch below can be removed once >=dotnet-sdk-8.0.401 is generally available. + sed 's|Include="Microsoft.CodeAnalysis.CSharp" Version="4.9.2"|Include="Microsoft.CodeAnalysis.CSharp" Version="4.8.0"|' \ + -i Directory.Packages.props + + dotnet-pkg_src_prepare +} + +src_test() { + dotnet-pkg-base_test src/Ryujinx.Tests.Memory +} + +src_install() { + # Bug https://bugs.gentoo.org/933075 + # and bug https://github.com/Ryujinx/Ryujinx/issues/5566 + dotnet-pkg-base_append-launchervar "GDK_BACKEND=x11" + + dotnet-pkg-base_install + + # "Ryujinx.sh" launcher script is only copied for "linux-x64" RID, + # let's copy it unconditionally. Bug: https://bugs.gentoo.org/923817 + exeinto "/usr/share/${P}" + doexe "distribution/linux/${PN^}.sh" + dotnet-pkg-base_dolauncher "/usr/share/${P}/${PN^}.sh" + + newicon distribution/misc/Logo.svg "${PN^}.svg" + domenu "distribution/linux/${PN^}.desktop" + + insinto /usr/share/mime/packages + doins "distribution/linux/mime/${PN^}.xml" + + einstalldocs +} diff --git a/gnome-base/gnome-flashback/Manifest b/gnome-base/gnome-flashback/Manifest index ad0cc9b811e2..86da16ea7bb9 100644 --- a/gnome-base/gnome-flashback/Manifest +++ b/gnome-base/gnome-flashback/Manifest @@ -1,3 +1 @@ -DIST gnome-flashback-3.46.0.tar.xz 892424 BLAKE2B f752687a07d8b5205aebed47e0ece8b77edc32aa9fa934b9e14234119d3bf074b528eb1af8ea5841ca20c2f91511eac40e6a708835542bbdc8ea4e1d364984e8 SHA512 845d9cf3551295bc6dcaeeb141875ddb875e8cf885a2a3b17c4234dd40b37b8ed5279f07414c4cc7590369b394a7270c48d34d767bd0d1ef0189f4b73e73da10 -DIST gnome-flashback-3.50.0.tar.xz 907036 BLAKE2B a995ab42fad19b566ff07c9f745a6a8ba3efab3e9201b72a813a4bc91976d2b5150b84cd1cbeb62e22ccead3d9bb17143ce793a699a0699d5223e021598c0fbc SHA512 1c6b5569f01870f9e55f22b5ba34dd7ba54d5d61fa3a1096e906ea0e0919e0af2f3a6e2dd95c8e0952aead80e207f1319faa4f657a5d3350fd73caddb55c7062 DIST gnome-flashback-3.52.1.tar.xz 917764 BLAKE2B 1191261a2e3627b44a2ca1e52641be860126baa0b7133a9ea51cd35b6a36e6d3390f69e07b6ac1244ac112e7561d73bdb6a404978358b066b01f093d60fa1a09 SHA512 30291be06e18188e20288ee2ac62d9e67a7a079fab1d2169f91d1b7555f663c1381def72220fd13182d7b68af5bd3ebb4c9bd9605f45f92f87783edcb0deba85 diff --git a/gnome-base/gnome-flashback/gnome-flashback-3.46.0.ebuild b/gnome-base/gnome-flashback/gnome-flashback-3.46.0.ebuild deleted file mode 100644 index 27afadfa314c..000000000000 --- a/gnome-base/gnome-flashback/gnome-flashback-3.46.0.ebuild +++ /dev/null @@ -1,88 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -inherit gnome2 toolchain-funcs - -DESCRIPTION="GNOME Flashback session" -HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-flashback/" - -LICENSE="GPL-3+" -SLOT="0" -IUSE="elogind systemd" -REQUIRED_USE="^^ ( elogind systemd )" -KEYWORDS="amd64 ~riscv" - -RDEPEND=" - >=x11-libs/gdk-pixbuf-2.32.2:2 - >=x11-libs/gtk+-3.22.0:3[X] - >=gnome-base/gnome-desktop-43:3= - >=gnome-base/gnome-panel-3.35.2 - >=media-libs/libcanberra-0.13[gtk3] - >=dev-libs/glib-2.67.3:2 - >=gnome-base/gsettings-desktop-schemas-3.31.0 - >=sys-auth/polkit-0.97 - >=app-i18n/ibus-1.5.2 - >=sys-power/upower-0.99.0:= - >=x11-libs/libXrandr-1.5.0 - >=x11-libs/libXxf86vm-1.1.4 - - x11-libs/libxcb:= - x11-libs/libX11 - gnome-base/gdm - elogind? ( >=sys-auth/elogind-230 ) - systemd? ( >=sys-apps/systemd-230:= ) - net-wireless/gnome-bluetooth:3= - x11-libs/libXext - >=x11-libs/libXi-1.6.0 - x11-libs/pango - x11-libs/libxkbfile - x11-misc/xkeyboard-config - x11-libs/libXfixes - media-libs/libpulse[glib] - media-libs/alsa-lib - sys-libs/pam -" -DEPEND="${RDEPEND} - x11-base/xorg-proto -" -BDEPEND=" - dev-util/gdbus-codegen - dev-util/glib-utils - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig -" # autoconf-archive for eautoreconf -RDEPEND="${RDEPEND} - x11-wm/metacity - gnome-base/gnome-panel - gnome-base/gnome-settings-daemon -" - -src_configure() { - local myconf=( - --disable-static - --without-compiz-session - $(use_enable systemd systemd-session) - ) - - # Below elogind DESKTOP_* and SCREENSAVER_* pkg-config calls need to match up with - # what upstream has each version (libsystemd replaced with libelogind). Explicit - # per-version die to force a manual recheck. Only update the explicit version if the - # "PKG_CHECK_MODULES([DESKTOP/SCREENSAVER], ...)" blocks did not change; otherwise adjust - # elogind conditional block below accordingly first. - if ver_test ${PV} -ne 3.46.0; then - die "Maintainer has not checked over packages MENU pkg-config deps for elogind support" - fi - - if use elogind; then - local pkgconfig="$(tc-getPKG_CONFIG)" - myconf+=( - DESKTOP_CFLAGS="$(${pkgconfig} --cflags glib-2.0 gio-2.0 gio-unix-2.0 gnome-desktop-3.0 gtk+-3.0 libelogind x11)" - DESKTOP_LIBS="$(${pkgconfig} --libs glib-2.0 gio-2.0 gio-unix-2.0 gnome-desktop-3.0 gtk+-3.0 libelogind x11)" - SCREENSAVER_CFLAGS="$(${pkgconfig} --cflags gdm gio-unix-2.0 glib-2.0 gnome-desktop-3.0 gtk+-3.0 libelogind xxf86vm)" - SCREENSAVER_LIBS="$(${pkgconfig} --libs gdm gio-unix-2.0 glib-2.0 gnome-desktop-3.0 gtk+-3.0 libelogind xxf86vm)" - ) - fi - - gnome2_src_configure "${myconf[@]}" -} diff --git a/gnome-base/gnome-flashback/gnome-flashback-3.50.0.ebuild b/gnome-base/gnome-flashback/gnome-flashback-3.50.0.ebuild deleted file mode 100644 index b648245ada77..000000000000 --- a/gnome-base/gnome-flashback/gnome-flashback-3.50.0.ebuild +++ /dev/null @@ -1,88 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -inherit gnome2 toolchain-funcs - -DESCRIPTION="GNOME Flashback session" -HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-flashback/" - -LICENSE="GPL-3+" -SLOT="0" -IUSE="elogind systemd" -REQUIRED_USE="^^ ( elogind systemd )" -KEYWORDS="amd64 ~riscv" - -RDEPEND=" - >=x11-libs/gdk-pixbuf-2.32.2:2 - >=x11-libs/gtk+-3.22.0:3[X] - >=gnome-base/gnome-desktop-43:3= - >=gnome-base/gnome-panel-3.35.2 - >=media-libs/libcanberra-0.13[gtk3] - >=dev-libs/glib-2.67.3:2 - >=gnome-base/gsettings-desktop-schemas-3.31.0 - >=sys-auth/polkit-0.97 - >=app-i18n/ibus-1.5.2 - >=sys-power/upower-0.99.0:= - >=x11-libs/libXrandr-1.5.0 - >=x11-libs/libXxf86vm-1.1.4 - - x11-libs/libxcb:= - x11-libs/libX11 - gnome-base/gdm - elogind? ( >=sys-auth/elogind-230 ) - systemd? ( >=sys-apps/systemd-230:= ) - net-wireless/gnome-bluetooth:3= - x11-libs/libXext - >=x11-libs/libXi-1.6.0 - x11-libs/pango - x11-libs/libxkbfile - x11-misc/xkeyboard-config - x11-libs/libXfixes - media-libs/libpulse[glib] - media-libs/alsa-lib - sys-libs/pam -" -DEPEND="${RDEPEND} - x11-base/xorg-proto -" -BDEPEND=" - dev-util/gdbus-codegen - dev-util/glib-utils - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig -" # autoconf-archive for eautoreconf -RDEPEND="${RDEPEND} - x11-wm/metacity - gnome-base/gnome-panel - gnome-base/gnome-settings-daemon -" - -src_configure() { - local myconf=( - --disable-static - --without-compiz-session - $(use_enable systemd systemd-session) - ) - - # Below elogind DESKTOP_* and SCREENSAVER_* pkg-config calls need to match up with - # what upstream has each version (libsystemd replaced with libelogind). Explicit - # per-version die to force a manual recheck. Only update the explicit version if the - # "PKG_CHECK_MODULES([DESKTOP/SCREENSAVER], ...)" blocks did not change; otherwise adjust - # elogind conditional block below accordingly first. - if ver_test ${PV} -ne 3.50.0; then - die "Maintainer has not checked over packages MENU pkg-config deps for elogind support" - fi - - if use elogind; then - local pkgconfig="$(tc-getPKG_CONFIG)" - myconf+=( - DESKTOP_CFLAGS="$(${pkgconfig} --cflags glib-2.0 gio-2.0 gio-unix-2.0 gnome-desktop-3.0 gtk+-3.0 libelogind x11)" - DESKTOP_LIBS="$(${pkgconfig} --libs glib-2.0 gio-2.0 gio-unix-2.0 gnome-desktop-3.0 gtk+-3.0 libelogind x11)" - SCREENSAVER_CFLAGS="$(${pkgconfig} --cflags gdm gio-unix-2.0 glib-2.0 gnome-desktop-3.0 gtk+-3.0 libelogind xxf86vm)" - SCREENSAVER_LIBS="$(${pkgconfig} --libs gdm gio-unix-2.0 glib-2.0 gnome-desktop-3.0 gtk+-3.0 libelogind xxf86vm)" - ) - fi - - gnome2_src_configure "${myconf[@]}" -} diff --git a/gnome-extra/evolution-data-server/evolution-data-server-3.50.2-r1.ebuild b/gnome-extra/evolution-data-server/evolution-data-server-3.50.2-r1.ebuild index 641888ecc6e9..f066b4c3f06f 100644 --- a/gnome-extra/evolution-data-server/evolution-data-server-3.50.2-r1.ebuild +++ b/gnome-extra/evolution-data-server/evolution-data-server-3.50.2-r1.ebuild @@ -146,7 +146,8 @@ src_compile() { } src_test() { - virtx cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + virtx cmake_src_test -j1 } src_install() { diff --git a/gnome-extra/evolution-data-server/evolution-data-server-3.50.4.ebuild b/gnome-extra/evolution-data-server/evolution-data-server-3.50.4.ebuild index fc2d5296f008..b20947255e52 100644 --- a/gnome-extra/evolution-data-server/evolution-data-server-3.50.4.ebuild +++ b/gnome-extra/evolution-data-server/evolution-data-server-3.50.4.ebuild @@ -146,7 +146,8 @@ src_compile() { } src_test() { - virtx cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + virtx cmake_src_test -j1 } src_install() { diff --git a/gnome-extra/evolution-data-server/evolution-data-server-3.52.2.ebuild b/gnome-extra/evolution-data-server/evolution-data-server-3.52.2.ebuild index 738c9a6e2f38..f77aac0a3a6c 100644 --- a/gnome-extra/evolution-data-server/evolution-data-server-3.52.2.ebuild +++ b/gnome-extra/evolution-data-server/evolution-data-server-3.52.2.ebuild @@ -145,7 +145,8 @@ src_compile() { } src_test() { - virtx cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + virtx cmake_src_test -j1 } src_install() { diff --git a/gnome-extra/evolution-data-server/evolution-data-server-3.52.4.ebuild b/gnome-extra/evolution-data-server/evolution-data-server-3.52.4.ebuild index ec3f65f0138d..bf476cbae0e7 100644 --- a/gnome-extra/evolution-data-server/evolution-data-server-3.52.4.ebuild +++ b/gnome-extra/evolution-data-server/evolution-data-server-3.52.4.ebuild @@ -145,7 +145,8 @@ src_compile() { } src_test() { - virtx cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + virtx cmake_src_test -j1 } src_install() { diff --git a/gnome-extra/evolution-ews/evolution-ews-3.50.2.ebuild b/gnome-extra/evolution-ews/evolution-ews-3.50.2.ebuild index be5af4aa8b97..d5b71171bddc 100644 --- a/gnome-extra/evolution-ews/evolution-ews-3.50.2.ebuild +++ b/gnome-extra/evolution-ews/evolution-ews-3.50.2.ebuild @@ -60,7 +60,8 @@ src_compile() { } src_test() { - cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + cmake_src_test -j1 } src_install() { diff --git a/gnome-extra/evolution-ews/evolution-ews-3.50.3-r1.ebuild b/gnome-extra/evolution-ews/evolution-ews-3.50.3-r1.ebuild index f1289dd7ac96..3fee01d4d062 100644 --- a/gnome-extra/evolution-ews/evolution-ews-3.50.3-r1.ebuild +++ b/gnome-extra/evolution-ews/evolution-ews-3.50.3-r1.ebuild @@ -63,7 +63,8 @@ src_compile() { } src_test() { - cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + cmake_src_test -j1 } src_install() { diff --git a/gnome-extra/evolution-ews/evolution-ews-3.52.2.ebuild b/gnome-extra/evolution-ews/evolution-ews-3.52.2.ebuild index b8536add3667..aa6c1306dab2 100644 --- a/gnome-extra/evolution-ews/evolution-ews-3.52.2.ebuild +++ b/gnome-extra/evolution-ews/evolution-ews-3.52.2.ebuild @@ -59,7 +59,8 @@ src_compile() { } src_test() { - cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + cmake_src_test -j1 } src_install() { diff --git a/gnome-extra/evolution-ews/evolution-ews-3.52.4.ebuild b/gnome-extra/evolution-ews/evolution-ews-3.52.4.ebuild index b8536add3667..aa6c1306dab2 100644 --- a/gnome-extra/evolution-ews/evolution-ews-3.52.4.ebuild +++ b/gnome-extra/evolution-ews/evolution-ews-3.52.4.ebuild @@ -59,7 +59,8 @@ src_compile() { } src_test() { - cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + cmake_src_test -j1 } src_install() { diff --git a/gui-apps/wmenu/wmenu-0.1.9.ebuild b/gui-apps/wmenu/wmenu-0.1.9.ebuild index fd44b1acaba1..c51b8d399abb 100644 --- a/gui-apps/wmenu/wmenu-0.1.9.ebuild +++ b/gui-apps/wmenu/wmenu-0.1.9.ebuild @@ -14,7 +14,7 @@ if [[ "${PV}" == *9999* ]]; then else SRC_URI="https://codeberg.org/adnano/wmenu/archive/${PV}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/${PN}" - KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86" + KEYWORDS="amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86" fi LICENSE="MIT" diff --git a/kde-apps/kapptemplate/kapptemplate-24.08.1.ebuild b/kde-apps/kapptemplate/kapptemplate-24.08.1.ebuild index 22d7f98b6017..88f4886dafb2 100644 --- a/kde-apps/kapptemplate/kapptemplate-24.08.1.ebuild +++ b/kde-apps/kapptemplate/kapptemplate-24.08.1.ebuild @@ -14,7 +14,7 @@ HOMEPAGE="https://apps.kde.org/kapptemplate/" LICENSE="GPL-2" # TODO: CHECK SLOT="6" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv ~x86" IUSE="" DEPEND=" diff --git a/kde-apps/kde-dev-scripts/kde-dev-scripts-24.08.1.ebuild b/kde-apps/kde-dev-scripts/kde-dev-scripts-24.08.1.ebuild index 8c5f0c4f1edb..4d4a8e7ea2a5 100644 --- a/kde-apps/kde-dev-scripts/kde-dev-scripts-24.08.1.ebuild +++ b/kde-apps/kde-dev-scripts/kde-dev-scripts-24.08.1.ebuild @@ -11,7 +11,7 @@ DESCRIPTION="KDE Development Scripts" LICENSE="GPL-2" # TODO: CHECK SLOT="6" -KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +KEYWORDS="amd64 ~arm64 ~riscv ~x86" IUSE="" RDEPEND=" diff --git a/kde-apps/kde-dev-utils/kde-dev-utils-24.08.1.ebuild b/kde-apps/kde-dev-utils/kde-dev-utils-24.08.1.ebuild index 60c3d150729d..b7ed413d3710 100644 --- a/kde-apps/kde-dev-utils/kde-dev-utils-24.08.1.ebuild +++ b/kde-apps/kde-dev-utils/kde-dev-utils-24.08.1.ebuild @@ -11,7 +11,7 @@ DESCRIPTION="KDE Development Utilities" LICENSE="GPL-2+" SLOT="6" -KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +KEYWORDS="amd64 ~arm64 ~riscv ~x86" IUSE="" DEPEND=" diff --git a/kde-apps/kompare/kompare-24.08.1.ebuild b/kde-apps/kompare/kompare-24.08.1.ebuild index 459ee19bca8f..8f8193978656 100644 --- a/kde-apps/kompare/kompare-24.08.1.ebuild +++ b/kde-apps/kompare/kompare-24.08.1.ebuild @@ -14,7 +14,7 @@ HOMEPAGE="https://apps.kde.org/kompare/" LICENSE="GPL-2" # TODO: CHECK SLOT="6" -KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +KEYWORDS="amd64 ~arm64 ~riscv ~x86" IUSE="" DEPEND=" diff --git a/kde-apps/libkomparediff2/libkomparediff2-24.08.1.ebuild b/kde-apps/libkomparediff2/libkomparediff2-24.08.1.ebuild index c3777d97ef92..bf37eddbd5df 100644 --- a/kde-apps/libkomparediff2/libkomparediff2-24.08.1.ebuild +++ b/kde-apps/libkomparediff2/libkomparediff2-24.08.1.ebuild @@ -12,7 +12,7 @@ DESCRIPTION="Library to compare files and strings" LICENSE="GPL-2" # TODO: CHECK SLOT="6" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv ~x86" IUSE="" DEPEND=" diff --git a/kde-apps/poxml/poxml-24.08.1-r1.ebuild b/kde-apps/poxml/poxml-24.08.1-r1.ebuild index 84b513673108..aea25ee2b6d3 100644 --- a/kde-apps/poxml/poxml-24.08.1-r1.ebuild +++ b/kde-apps/poxml/poxml-24.08.1-r1.ebuild @@ -12,7 +12,7 @@ DESCRIPTION="KDE utility to translate DocBook XML files using gettext po files" LICENSE="GPL-2" # TODO: CHECK SLOT="6" -KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +KEYWORDS="amd64 ~arm64 ~riscv ~x86" IUSE="" DEPEND=" diff --git a/kde-frameworks/kwallet/kwallet-6.6.0.ebuild b/kde-frameworks/kwallet/kwallet-6.6.0-r1.ebuild index 88398dda0fe5..9d620498544a 100644 --- a/kde-frameworks/kwallet/kwallet-6.6.0.ebuild +++ b/kde-frameworks/kwallet/kwallet-6.6.0-r1.ebuild @@ -20,6 +20,7 @@ DEPEND=" =kde-frameworks/kcolorscheme-${PVCUT}*:6 =kde-frameworks/kconfig-${PVCUT}*:6 =kde-frameworks/kcoreaddons-${PVCUT}*:6 + =kde-frameworks/kcrash-${PVCUT}*:6 =kde-frameworks/kdbusaddons-${PVCUT}*:6 =kde-frameworks/ki18n-${PVCUT}*:6 =kde-frameworks/knotifications-${PVCUT}*:6 diff --git a/kde-plasma/kdesu-gui/files/kdesu-gui-6.1.5-fix-without-x11.patch b/kde-plasma/kdesu-gui/files/kdesu-gui-6.1.5-fix-without-x11.patch new file mode 100644 index 000000000000..bb5317cb1cc5 --- /dev/null +++ b/kde-plasma/kdesu-gui/files/kdesu-gui-6.1.5-fix-without-x11.patch @@ -0,0 +1,28 @@ +From bcaa74b9c7d896f5578e1f681dfa1a1f0bf2756d Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner <asturm@gentoo.org> +Date: Wed, 18 Sep 2024 19:34:20 +0000 +Subject: [PATCH] Fix build w/ WITH_X11=OFF when KWindowSystem was built w/ + KWINDOWSYSTEM_X11=OFF + +Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org> +--- + kdesu/kdesu.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/kdesu/kdesu.cpp b/kdesu/kdesu.cpp +index 887df083..a5e4a945 100644 +--- a/kdesu/kdesu.cpp ++++ b/kdesu/kdesu.cpp +@@ -40,7 +40,9 @@ + #include <klocalizedstring.h> + #include <kmessagebox.h> + #include <kshell.h> ++#if WITH_X11 + #include <kstartupinfo.h> ++#endif + #include <kuser.h> + #include <kwindowsystem.h> + +-- +2.46.0 + diff --git a/kde-plasma/kdesu-gui/kdesu-gui-6.1.5.ebuild b/kde-plasma/kdesu-gui/kdesu-gui-6.1.5.ebuild index 99081e35a177..7c67dbaca947 100644 --- a/kde-plasma/kdesu-gui/kdesu-gui-6.1.5.ebuild +++ b/kde-plasma/kdesu-gui/kdesu-gui-6.1.5.ebuild @@ -35,7 +35,8 @@ RDEPEND="${DEPEND} PATCHES=( "${FILESDIR}/${PN}-6.1.5-build-only-kdesu.patch" # downstream split - "${FILESDIR}/${PN}-5.27.11-cmake.patch" # bug 939081, pending upstream MR + "${FILESDIR}/${PN}-5.27.11-cmake.patch" # bug 939081 + "${FILESDIR}/${P}-fix-without-x11.patch" # bug 939735, pending upstream MR ) src_prepare() { diff --git a/mail-client/evolution/evolution-3.50.2.ebuild b/mail-client/evolution/evolution-3.50.2.ebuild index 74293119e3ca..d2ea0aa53be8 100644 --- a/mail-client/evolution/evolution-3.50.2.ebuild +++ b/mail-client/evolution/evolution-3.50.2.ebuild @@ -138,7 +138,8 @@ src_compile() { } src_test() { - cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + cmake_src_test -j1 } src_install() { diff --git a/mail-client/evolution/evolution-3.50.4-r1.ebuild b/mail-client/evolution/evolution-3.50.4-r1.ebuild index 6695759493a3..82f499b4d1c5 100644 --- a/mail-client/evolution/evolution-3.50.4-r1.ebuild +++ b/mail-client/evolution/evolution-3.50.4-r1.ebuild @@ -140,7 +140,8 @@ src_compile() { } src_test() { - cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + cmake_src_test -j1 } src_install() { diff --git a/mail-client/evolution/evolution-3.50.4.ebuild b/mail-client/evolution/evolution-3.50.4.ebuild index 8f920528f44d..3ef4b2f97780 100644 --- a/mail-client/evolution/evolution-3.50.4.ebuild +++ b/mail-client/evolution/evolution-3.50.4.ebuild @@ -138,7 +138,8 @@ src_compile() { } src_test() { - cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + cmake_src_test -j1 } src_install() { diff --git a/mail-client/evolution/evolution-3.52.2.ebuild b/mail-client/evolution/evolution-3.52.2.ebuild index b38c7fda6a5a..5e3c21998ec5 100644 --- a/mail-client/evolution/evolution-3.52.2.ebuild +++ b/mail-client/evolution/evolution-3.52.2.ebuild @@ -136,7 +136,8 @@ src_compile() { } src_test() { - cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + cmake_src_test -j1 } src_install() { diff --git a/mail-client/evolution/evolution-3.52.4.ebuild b/mail-client/evolution/evolution-3.52.4.ebuild index 20a459401c3e..bd2df262d68d 100644 --- a/mail-client/evolution/evolution-3.52.4.ebuild +++ b/mail-client/evolution/evolution-3.52.4.ebuild @@ -136,7 +136,8 @@ src_compile() { } src_test() { - cmake_src_test + # -j1: https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/522 + cmake_src_test -j1 } src_install() { diff --git a/mail-client/thunderbird-bin/Manifest b/mail-client/thunderbird-bin/Manifest index 0998e44d2ee3..24cfa78955ac 100644 --- a/mail-client/thunderbird-bin/Manifest +++ b/mail-client/thunderbird-bin/Manifest @@ -62,71 +62,71 @@ DIST thunderbird-115.15.0-uz.xpi 616842 BLAKE2B e91646bc269836c830f0515a82ce0edb DIST thunderbird-115.15.0-vi.xpi 815663 BLAKE2B 7cf6b7a580bedbcdb8d1d6ce969ed6a475db3301e1ed72f50ca0be7672c5932af64cc44346a4011694edfb17c4d2a461604be23140285756061f7a97588a8bb2 SHA512 29502cfa4e379d46603f3aae3dcc4f6f1d3371f69a821dec466f5febee8cd9fb80dc68de65198290d84b2ccb4ca333d85a1e9bcdeb8ccea6a19ca8961a2dc9d6 DIST thunderbird-115.15.0-zh-CN.xpi 816082 BLAKE2B 6327323e3cb30dbed637dbd82175ba0f1eb68c6b228c735db585a8050358739bffcc2ed3d0f86b84a0f5dfed16cab9d4b4bd1882459903fc5741dc2ea63c5a31 SHA512 9861cac106263f3928a0cfc70f4760f35053a8dd4c207ed788922328fff5d297ddc9c81768d461fd04b0b3266ce1150022eb73405c3fa5876f9c479fc7655b10 DIST thunderbird-115.15.0-zh-TW.xpi 819843 BLAKE2B 1f5854be3f2cdd4f680b0d649d6ee144f0d2ffc0cfaff094ad2f569a7c3a3245c8c460309b352de87e884e484486d9c3b84cbe56b07408706580528b9f65402f SHA512 3e7fffbdbe5b4435a29a420496e341a9b9d04568cfb46e0f73a8bbff4640d85266d105ca39789261db80e44834e7813a62723f5f3d190fbe585c293cfe03f39d -DIST thunderbird-128.2.1-af.xpi 530350 BLAKE2B 029e36e76659b7ba83108dc975b456f57c088271d8f423574222ea3074861e7c8828a2e1949ed3b5f0119c5a141a17292a8a8deda0a97e484e9ebdd293701a9f SHA512 b4df011d615580de03296452a21012ca656b45889522bf80884a98bc3fac51f6913f34b525fc42953ee3e7ff2750c2bf6db4c0ae87c1af93f7fde709fc64b58c -DIST thunderbird-128.2.1-ar.xpi 679867 BLAKE2B 8bda4bb4bc068343bfbe89a59a24feb30c8205563031e549d0caa0fb30e89651dedd48ae0505bbf0c15bf56d2b568d7545d71808e78329ccccce038401f54206 SHA512 6d419a49791e9fee211fb3856390009326e86f99b45af0622f93a8f345abe15aba24b9c4504b905e11c96ceb267ffcbfe3e8eea9b010b55397a7ceff1156661d -DIST thunderbird-128.2.1-ast.xpi 561054 BLAKE2B 21f75810f09dc385b2932d2561044b12d38c04b70b06243b7b500142eb4c1acd82d079e07ea2d4acbf142aa836b9d1b48b8e24ab45733692a98b1250f107108a SHA512 a57f06c1053fc94d4ad860312411008aae42fe71599aeb75f7f619e8049d8f3c872b741524c86dfcfa8c7984450086c5778aa73f62a7ef76967bbc3467aba51a -DIST thunderbird-128.2.1-be.xpi 755106 BLAKE2B 4c19d5e5c913bda45b91dadab5156f6c0590eaf687bd7f016164a4f1c4c0ca386dba7f3b30edcf3077c5097c3fcd0e56d8d3be73d0140b41fdda9000b8ba5ac6 SHA512 e68ef72706ace40ec52e0f0961f96c7878bb5021e710bb820538beff2afd8582fa5b251c937346488a5d53f25a54e843993d45d1ccbb1de204b4abc7aec76831 -DIST thunderbird-128.2.1-bg.xpi 807861 BLAKE2B f11eaecb49b7a4de63e2e0cf38726936384545f8313ecd4647b19f8a2f71acae5e897b2000e44bdb3a44875e1264aaf4f88dc2c1bd5926dbabedae3068dff70a SHA512 d5f963301783d61f79a3a89d87f4e36f2d5e44de05937c895a1495a7d045565839efa884a75ba0de1e59e3a5b2006248ac0b02fedbbc6d8f0f9dc820da496006 -DIST thunderbird-128.2.1-br.xpi 652477 BLAKE2B 4983dc599fa782e1138813b998205f136cf6946c0e10343ead4b4ae59046bad38e88bdb45f8ab776bf09e3524e8cb64bd9c87e5c3c9fb6d2a46d975e62bd76db SHA512 789e9e2960548e30e11b48578d6f3fd9333e8cb6a8447519cfe40e931bc79d4d5edd25f2a1084b62276cfe1997d4089a71a03480a7ed0d770811f0c406843596 -DIST thunderbird-128.2.1-ca.xpi 708967 BLAKE2B d31dede8764c4703f7e1cb3a99f7060965fe826b9f2628aff1ae699eeeeca1b2091f5407f694d753a5dfc0f0472e293559644d11ee690c8e03bd9187631b5b23 SHA512 e78857f22081990ec3fb23cd99734d00d6df2242723fa6e5002a27bcb4540adea4c7a164587a3b5622f8fe6ac3e27d4ddf8bc1f3c519ba256be08a3a0169e1a7 -DIST thunderbird-128.2.1-cak.xpi 671704 BLAKE2B 91652a7f2e314077a4ea1d5121daf18f01ca157aba0295b1fbea77782acc20414311286c5c69fb4ae7bf6b75ac101fb67aa7704bf55c90d83b39987256a35d77 SHA512 d141352ec32e5a22bae9054e0a1609f87454f6199f45bda581ec85d7b3208071e2edb009a96db63f4504773a0bca2948d592731d4362cc4964b23bb97aaa7dec -DIST thunderbird-128.2.1-cs.xpi 785043 BLAKE2B 614f7487f91c2008cc929a1fe9ef65dec6c1279dee8db443c0a17e6a5c20d674aadf3e21e9a10d9aed1a4f69decae46501bf07d0dfa22e7da7a0c409bbc8936d SHA512 07a416b0c33b1dcfc95b0e7086c8a44aa1424b7fbff5e9bb08c0bc23ccbc13ba4a8cb6c7d7566a12a26c78bbb670c5d2539717a5bcb6c83d9376e1f936b4038a -DIST thunderbird-128.2.1-cy.xpi 749052 BLAKE2B de84446f54c6c875f90daad0cf5f77dab164dcf2e4525592354307397af51bf825dba73e65299614880e5be8d44b08404a78281043b05767d2b1fbc1f6595b97 SHA512 2da1b3a314d1072c029ac00b6ef4f8bd4f23d34e69ed94255b01ba0b7932e8ec19c169efa65b730d822e4804d9419eb0aacd4ec4645f14b59b3f98a796892780 -DIST thunderbird-128.2.1-da.xpi 734116 BLAKE2B ed0e00f99e9af82fe622f11dd114848d654fc10268c6f7c2d488d1c40a18ad48e803a0a7c952a990fb3a4ccdea60109705bb36f6b24837f95875981f57066c76 SHA512 bea309acb790dd4e605d9fd83018d3436a76942f3a04adb546fc004a1ac30704670d69f8397cc32666a59b4180dc1320f49f945f96e17718a0f1a967a326747e -DIST thunderbird-128.2.1-de.xpi 766250 BLAKE2B 7befc0bd55804848152a38882b28b3179103b750e5ba03aca0d25ee8993b15c72ed8f913aa1204d093608ef8e7bc6292cb965ab7b34e4e568701135989dd755e SHA512 8209b99caeb1807f6769efe8ac52780f25832179d6db98945c9b0cc5761ff5d7ec2c511afa359ba3bcb27ccc5f176bf761f639a8e68df8082a8615511a5cebc5 -DIST thunderbird-128.2.1-dsb.xpi 782740 BLAKE2B 2efbe071cb3526babafb7d2eb67da841c558da46b5f5d9b0bf823a57f36f75fa55f12eb14834d83f04e5308c6450316148430d264540d541ae407bfe86254985 SHA512 665d1803cab339390b6713e9628a31008c62aec62dab9a14e77d380a507a427d51fed7969d17982ac77d2bf10621aa4dda72c1709d96415dd8d9f0793fb0e0d9 -DIST thunderbird-128.2.1-el.xpi 889269 BLAKE2B 30fb03354dafd7fafe65ee852c24e639f577603db2d507aad0f4c4abfcb3adbe8d0bb3ac3eef5dce3905846f34acc25a8adb29a63d86fa7e99da9630629fa9cc SHA512 9c890d99c9e56ad592860a5cc8254fc8e685f93e5e77950842aa9fceb475ad61508884ad9ee9fad83b502b5de5723f7d3d4581b93b7910b7e34af7b9c0a073f4 -DIST thunderbird-128.2.1-en-CA.xpi 702143 BLAKE2B caf415b29be838a19680ccbe85d9e5d79672544b11d9b6ee13c69c3643b9f6a64e6a148d5bdf833899c01fa69e9e2cd59a99dace7743c6786e0758d46c3ff179 SHA512 5b536083b37a40e8aa189485dbd4163eec28c12a1ef859c4d2187d4ff54eb0761dceebada0c5dfb797a5c47adaa39bcad655587a74b5dc3a70a4fe49b9dc1e6f -DIST thunderbird-128.2.1-en-GB.xpi 702699 BLAKE2B d6daa753116c8f594628ab3eb444ddf89a3aa625835fecf3f06558de9c00d3fb7aae563785f227df866b008bde68eb448817d5ada60e67a11483a09ee0cc4fcb SHA512 8df247357f8275d36455f5566856c1687bb45ad36b7211111b2bb9df639cbdc7d3ad32ef32fdbe5178ec7ffdebfcc6fb73854bd26892119adea09221f977b5e0 -DIST thunderbird-128.2.1-es-AR.xpi 758349 BLAKE2B 8147f1d2cfc69e47f8438cdf231421b4e01b1b9e013a56755fe917ecfc835b04c06bb0e163b0898e7509e92f9cf0b9506c15ccbda54ecb16324491cce9695e68 SHA512 1d8c48570c62db60961308c401baced3f7a4b533c3cfd482760c33a736b647144bd674ec56ff0ab68eccf0144924218fcdb4b1169b0bbf68f46e059a748d242d -DIST thunderbird-128.2.1-es-ES.xpi 723515 BLAKE2B 8b01aa7bd41aab8f9b28688565ccbb91c69456ceea8cec9556b45ecb987e2a57139d021cfcc449553ca9e8487f818bbd3d16421dcdda57af81f06a96fc19bc50 SHA512 f81ba9665788c67cdf607b1d381fd5e55306e8796e4879c9a8ac86a1fc252ae8f574706cc59b86547d30db38a7e3c3c73fb1d2165170dea11507ce052815cf8f -DIST thunderbird-128.2.1-es-MX.xpi 737708 BLAKE2B 8c469daa61ec503df621fe7a4b1b2003495fadef96ea914507adeda2e4c6fc9378b553f351d9fdf5d3118b45251ebef3ac5f1d7b7a882f9c54c5f158f8955c06 SHA512 7797764b28d2b63e6741a4bb81b6841472fe0a49c29448edbe1f37fc5d7ea986c6e8c9eba2d47e0a73dc08c5985f9af406123ccb2ba7d853a11e528220c9d8e4 -DIST thunderbird-128.2.1-et.xpi 696281 BLAKE2B 30a5b741615a7e8059e4e7eff46f13246fb4893a7487a2154d3aa4fb67d1fe9cf976db8de5fe3388284a669f21e5994b7b69bca622db842b621d38ee0f1232ad SHA512 766771bd0036b80c201d8a4bf2328f14eb3f78f5e9cc128d82d48463803dd1e1bc91d74a92a98b0f9b37bdabee921d412b4844e75974c187f6ee8dd3ff78b4a7 -DIST thunderbird-128.2.1-eu.xpi 726802 BLAKE2B 3302a687f6899ca2a02aab958d1a3d568245b67a8e2c8d7800cefc5c4e1235237cc446c34c130065d7a0c8cbc532fc8a732517fede5a138121f9a4a090b8e99f SHA512 5b6f0770ac7d190aeff30bc177379aa5a7bdab682d9ce3944aec5215eec3b67bb807f0fb3d534c531619b7e81a494d16632be7b01e50dfbad862c82164da3364 -DIST thunderbird-128.2.1-fi.xpi 733651 BLAKE2B 840f69360c340ec1bda7031530ca67448750f87d10dfe14601b4e43e261b4e531c08b030c3d4e2890731343cc6a84ff2baf7807b59f2968d7b94f6a436d91b3d SHA512 15cacb9af1a626a7fdeefbe78c68fd9296a8743651f2a4a9c9b7e3fd9daab72166cf6f596835a9372dd5240789badce0ea46e4d4f657598660f25576c6f15ae4 -DIST thunderbird-128.2.1-fr.xpi 770186 BLAKE2B d8ef58005b2b3946dd6f5153308d937d54ff3ecdf0a7786c0e4ac673e01016753dcc8a5488a8f72b17a7bafec1f52c0f38e38a481122f543082b60c6f500c734 SHA512 bf338e98d6a1ca32f835e45d4557f4d9eb4d9de7ac7e5d73d241d5b24dd385427df4a37d0df518e4406f2d1badf93ccfbf0590b35ce1a9990d06deaa34ef70d2 -DIST thunderbird-128.2.1-fy-NL.xpi 752849 BLAKE2B 96b36322f9fa2c27353d66d3e35c6117b3ad85b153417645bd715c631adb67486dae62ae8f85081563980634b96e4c8afe612f21eb1d6e6d21933f3b193d74ac SHA512 0a29b05cdc6e282ab945007370cd56bd96f8f5e78c24b327ddf41e4abbf981ba595b06b1da81c63cb3b34478138f7a9abb83352e5bd1f098fb505a93bed2ec8f -DIST thunderbird-128.2.1-ga-IE.xpi 615199 BLAKE2B 3003eaa9db402e8794395bc0b6d17c7ed21844e4a9fdfe87222d7a3c2831900704ddc6302088034ae2aa3d99d6bd1ef8a991481513ca48f9df9e73b702fa0594 SHA512 fe2336002759657610d0afacf53eb4b071da742a0db53c511ad45721eb2616377012ba1376994980752209aa984d466db6322cb143d28223b2f076308dd4a910 -DIST thunderbird-128.2.1-gd.xpi 727803 BLAKE2B 14f142e6a163013e32b6b636edd64980798adf0d4210d1d933a2e6a1f66846b817b3353ee64ffaae0cbe5aae19292875917dafbd9eafd3f2306e8e373261a8b3 SHA512 5e95eb3ae53a81e9577bf0018e37e3c48208683bde3731b823207b5ccc9bb28445d2cac05104a14c8c99105918d70baa9470e59bdd3cb13aa13f04f5e481dbc7 -DIST thunderbird-128.2.1-gl.xpi 736573 BLAKE2B e9dd27f657ba949ed0f9c1487d2c8a7e06786951a05993af2600d73c89c5766753436f1c78f18239f93cc6e277af86b50366247ac76b202697772f3f53f347f1 SHA512 4f5d2abaf85d9beb3688f6765ccf46de53de76b26cf538ab598070a6614976cb3e2ddc98ee12972cbc84fa20bd71e7906938bb92717a8b4221ec4331b7390a26 -DIST thunderbird-128.2.1-he.xpi 700302 BLAKE2B 19ed0bd4d55435c88326450d0886e1fa482846f2f95ef4530bacf2b4955dbefb88960ba4f977451fd206a6f6f3b54f78a9b875ab67ccae6d12b4822ff08d7189 SHA512 609064139d4c03fa59eb3a5879f40fabfcf49cfcac3a5f0d6445116b625e255b8e000a008803dbb859d2613525f20a30383233979c1fa50d4a1d6fd6831c9c07 -DIST thunderbird-128.2.1-hr.xpi 715018 BLAKE2B 9db282369838be56c22daf034c72276595bc49f0ad85f2a91d9b180e97b0efbbec5cfe71d676520ad3f3ea615298d677cf8accfb7c94dcb67a5f2675885bd61b SHA512 2ccdda7f559a9ae2b36fd8b6b307ec058f8e657ba8261034f0c1c94f24641b7abd5184a088b858ee2ace635ac71f319b24bec237965209fbee0fc969b0b27b6d -DIST thunderbird-128.2.1-hsb.xpi 780138 BLAKE2B 73c1c8f8103bc5206d04cefee77b0f6b0d85ac4616b7587897ca2edd33e582e6290b06545168ae04386886b088f65474bc630ce6a705c6b7a2b2526c547d03fd SHA512 b9d9e057eec2c2d7987e5bf23ee73c1091f15373ffd405b1fef3bf0b403a0018f8496bccf599283b67fb9f7e896b120746c574a2033e544e54b97716ff6794d6 -DIST thunderbird-128.2.1-hu.xpi 782933 BLAKE2B b6caedfeb71766bd61b097014b88534b2d57066b2f6f60ef12241052bc1ca2b90885f3368b145f6f03e4749d4df85788b789a90790f164dc5c0c0580b7a60a96 SHA512 1934e9090abaf8e2ab0c6d0f9dc328e04a6643908f8c15422115d9408f7915e30bb300813ae49abfa800fd765b126fca44b9e082a5e5fe39c0019d15dfda3a2e -DIST thunderbird-128.2.1-id.xpi 666012 BLAKE2B b959625f7bcdb640cfc31bd4092ed67f4a9527562273ad5da8bf3afc63908481fa8ce4d6f481ea53c5f2b210d04bfbd5d5b9afb7960b786191e12cece7da850d SHA512 8ca188e30c781b0bacf564ebc76d60360102152ad9c53128136fe09f8d4feef395a4c05ab5a8851ef011a9650c3aaa80e2e97f99341e72c3bf016299f7475dfb -DIST thunderbird-128.2.1-is.xpi 743887 BLAKE2B 5a84e49807f9a58d59b82adee236000bb4ebafbd693f2a86959846e112eb6f61ac02622cb1a5ca9cfef2bbb8623912d18424661f87ed83197f796781928381da SHA512 bc59bc564522d4a1d6603114d66744762369c011c735a71959f80c5c568491ee5c6e81f30a655defe59b3f4ff21efad1dc6dda7b92487615c51a41078fe9126e -DIST thunderbird-128.2.1-it.xpi 690399 BLAKE2B 3fa933f6983bf5b1644de8181c59e9637e889e5ac772a61c739cfa186cb8acd3ba9196a07555c9cc49186b9fc2d15731aedf95024072ae7a763619a2b0f10f1f SHA512 6345b513959a45f9963eddcc716ebc22b02545d565a283bf6e48ae19a98f67ea6403abd1e9154e319145761b3e88f97a5bb682fc01bbc11e1f527e013b65dc6e -DIST thunderbird-128.2.1-ja.xpi 819903 BLAKE2B 9ab5d6463167e0e7fd818a4d74ad1191b87b35073d9bab2b34732f3dbc3272210d1353e80d7b42a969af05119b57d80b8a23ba3ae9d6f55210f8edb673322274 SHA512 8f96304191f9f3f0780a184950bf4ee031fc7e768beadccd114a4e4a24fdee9353e7c3e134e139acf129c59d317abf544dee325f087cf0c5462b9ec5cc418e6b -DIST thunderbird-128.2.1-ka.xpi 796046 BLAKE2B 8ac49290a772133c51c2ee6a23ec81cdc5856571ba299ff7c6254222fa48189ed14bc2059a6213f221ce1ad985c2684a593f60f5159426dedfc09d9f7d998ea0 SHA512 5be26bdd75362aae33a9f77bd772caf34f67fbc98a90dcf3a17d215d6f40d382ac04fb0a5af99aff16d7d207e45e5b4fe9e53f368ce578e696adeaeb7564a44a -DIST thunderbird-128.2.1-kab.xpi 731858 BLAKE2B 0c669becc31864983bf1717b9dd2725b0f1df72a26ca976aae5db8ef21fac2b54596630b858fdf110b95747a7a4f9aa5771666cedfe1f40da0c2e27101b004aa SHA512 1d79709a7a8c7171129a64093bde5263e2c35c17a4c99d0efa8e7e0f4f8d65d525d45e17ed51e7633ece13b46a0283c3b81a14d6ec72af046cfd311be6ea8614 -DIST thunderbird-128.2.1-kk.xpi 857290 BLAKE2B f5d67baa0271251c71c6d78e86e2763fbc6e223c14f8d2b388abd8d9a55d354eda30c99f2eb1b8fb9e1425b8bd74c0099895258e4e06ba025379a181a8020230 SHA512 582527b1aa96a9bffb00fc8b5b09de677268405b074a9f43aa47c29513c0110c22fc6b5f528e739d447b2556065c5e338635cb71bcb6c504be29d86adc8a3bc5 -DIST thunderbird-128.2.1-ko.xpi 755164 BLAKE2B 2e8e5bdafb6cd287003e68552573434fad16a5269360c0c07a43d8f4193ba70d1dfac79e9a47fe038fceb8b21947d591352038612023e3a8ac8029f19991bab1 SHA512 2d95d891f8b99ba68eba67e3b54c2bdc440de4c8c5aa27d745cfdf96c1ab843b1cb24db736e85aef3c82d6b18ae1c339a0e0aa7617031314f3f934f25f5ff07b -DIST thunderbird-128.2.1-lt.xpi 700919 BLAKE2B 9279a164acdfa298ce75107669a3c38b3d661e3e882cddd8e63f90fadbd7c6eb46160f514282b241ee97c2ee7dbdcd1030e59e102c2e96a716a8575f6491a2e5 SHA512 fdc8943bcfc112676fb4211853eb2a33ff8a33488e55b01473214b75e33c18ffea7e3340cc291653260101eb2c3cfa1dcb45487b5f8406595d7d948b8852632d -DIST thunderbird-128.2.1-lv.xpi 623625 BLAKE2B fadb3eef3480df834da8242ee71a21ca52084a5ada7664fa4dcb52284fcae079fa6bc075eae764192551d8908a1a7311cfc36543f9dcc2ebf94b2a5b2da8af22 SHA512 d1218de16de091b469e45bd1836dad34fdd1f4978b351aafa4712d2abc29db3400c6adb5b802625e6d104d45d20c2eb4e68a50375ad0075f9bd82bb95f2833f2 -DIST thunderbird-128.2.1-ms.xpi 581083 BLAKE2B dbe1ad18fecc692990d6d0bbf9b33f7ff34b8fd5854ec8ba8fb123f1f5f2b5d69bc186096dee9dde0798fee63171f4f768456fd02b536b54c01d792e5ae28bdc SHA512 c6eaddc26b9ce6a8f71959878c43c59816cc8141c188859d1286a5656aed0c0f13fd73aa6e33996fe9e5f63d998cd04b40af6145c88f8f2d9ccff31e43cabce7 -DIST thunderbird-128.2.1-nb-NO.xpi 703765 BLAKE2B e5918468de4d57f17a4184f9de0c6f7fe3fc570845e4baeae2db4a5817d91f8d958668db357ce0cb73aa2029d270a69d14b91df020a33dc2f275c2c61d7b1eb6 SHA512 c72fdfb6b96929f978f4bf21f025a69e84ac9b1ca88b6aff8e1a5bc8d78a8dd3e680686133ba017f63b527e3b3e184a6612ec977ed94f65e478c04b30a1dfc44 -DIST thunderbird-128.2.1-nl.xpi 744107 BLAKE2B 731d30bc43f2e8de96efff278d4c9d6fbff849be8c8e3d5a78f3ac70251ee9cd5057a96e08b0947aab762566317b1bc43b1bbba0b851eba8112a5f59e295c070 SHA512 a47fb34784617bb904a58dd521c6c994489ddc2f1352f56f40f8a4d787ecc3e3e085e5d85fb74b49a3d769f21b20d9cf82e24cbb48dc84c7e74c4fa10a8bd2fe -DIST thunderbird-128.2.1-nn-NO.xpi 723768 BLAKE2B 09756d7e04b5f25815a53dcee5393f4807eb229d8cf6b34c3c625c75dd3ad19559d7c45f9f5a27ea4d88178ee04a5fc8a353da9e3f6577142eba85f82687dce2 SHA512 6a78180385a8589a732f154d59114db64e50abdcf3a30c227861d1352f6a70cf3b899ea38d3a2f1a777ee551a17a41db9852055dd9debe79649ba6843f58a679 -DIST thunderbird-128.2.1-pa-IN.xpi 683076 BLAKE2B eedf1fd929ee7aa504d42918426403b2dafd98bd2b954d4db73a29e058b05510b37bd5e6ea803689791f4f13d78a15d07470f22a79506093fa4a219168cdca39 SHA512 ff3b7f2c167f4712020f4ee36dbbd25c26549ca2a0a7889bbf5f8815028233183ef87bf6080ed89010fcf6ca3944b5d964dcde74de85045dac85c9152b1e537f -DIST thunderbird-128.2.1-pl.xpi 762952 BLAKE2B 8a2c196b864f7f42a38533bdc13729107d1037d69ea6005311099d6cd44ef481635d9c0544529566b9a0783f3c5cdd1276954d3c7b4df1ceb9c6651ff99760fd SHA512 92aa91dc7c2dcd8f340992e0abfa8089495dd6e4108be22b5bb2972e3a9a0f034f39502048f0b5c5568b6db01fa0360dde8a844ac315e7e66ac08754fa14aa4b -DIST thunderbird-128.2.1-pt-BR.xpi 751314 BLAKE2B a575610d534e6845fafcc5d0839c309b553017d5badf0d843372ec40d4f8ea38676b0c34e82607f66e3a645d866b9fca74eaa02eae7a68fd35c10faff269e032 SHA512 b1b5812baa54eae0362676d4c5b3c25197c85d3822461fc40b46646d706a194fa73e5730f993f1978e9de7258e684bee09201530b70341b9a1be89dd02cd5d54 -DIST thunderbird-128.2.1-pt-PT.xpi 746870 BLAKE2B 3edfd1060c9f6132984089b3fa24e267b51c60167c271cfd447ba76934a028bd3f243b9c271230594e6159d4f58c9b37b7afcdb18d5061093b311a4e9bf995c0 SHA512 9165ba22ec09aa949a442a3d6b8275dbebe67674b1c930267d9cc12c2270f345488bdbae7f32a9098182650112bab32a9cf4ae7c22accb6b358f8b9e2f06aab6 -DIST thunderbird-128.2.1-rm.xpi 746779 BLAKE2B 4c56b2caf8f23df94b95db14b3887644a837d250e441085f8bb57966b0a7084a277986ece0d2a40e58dacae4c8f048d3c6c0b3aa8f64afd94db9115416bd8623 SHA512 b72e65bc157dcefba8577998dc916f334226d98e8d7bb1897d48fccc571c807797d6f675742459c586d18575290e68ac924c765f49b45bbb59cdd6a17782373e -DIST thunderbird-128.2.1-ro.xpi 669742 BLAKE2B 7269f94c345ab6f839dcfe10fb9c316240c23c814051b287376d0a939e37b8b9340be849d4959250cda057894445a5415d17ad6b2d12745403c48234cdefe208 SHA512 993952740d99f2f1f896d856c738a926d8320d05b33f514f25e5bbf879c24317c0f51dc979f06078ec8fb68624fc125835792f1a6246f78045de7bda08d1448b -DIST thunderbird-128.2.1-ru.xpi 872247 BLAKE2B 8f71476a0e71509f3448d1cff42b3f3d92b06c6d882ff8482f8f7ca529ab636762c526c74cfc02757955b8ccee69185b41b7b2e3722c25c86e28e469ce655a7c SHA512 a132dd16295f4880009db20d56d1cd785a8c018969969b207dc1771bbc111ce1b8abfdb23dc7e3f6319690bda5b1f9707d07885a4d6bda3353ce574de02c562a -DIST thunderbird-128.2.1-sk.xpi 784171 BLAKE2B 65d26edd887434de33f21b43525062a6df131111ca40e66016ff40f72acdfb9f74b02e5628d95a8e5c05079c0d342f247191e511c7f144554494f6d2622c2a52 SHA512 0240b86e82d5ad761a006131b033ab40c836ffa0cb95b30f8301972c8a4a48ada0bf495571151f74a93f2d433b86c63c69ed436c826d994d9d599c45d4521931 -DIST thunderbird-128.2.1-sl.xpi 743550 BLAKE2B f79390d189d8997b39a88220e90407555cd1b41c7041f1fb6c31d04df029c3d32697f11ea56184f267fe76856385558ab2ed269c174aed2d1833b548b9342dda SHA512 7236c4ccc161ff6551b14bf83efa218936ff9a59053db317f48477f509537bdb78777d5dac4a72a84670cb3015795327116acbe9a8ead2689c852762a5054b32 -DIST thunderbird-128.2.1-sq.xpi 765888 BLAKE2B 4215519862d0a1e0e9b6962f30adc5d5fd5d215ef821f882e5b45aec1167a9809b6d98896d1b4a1595e8fb5e56824057ab83b99f747f3fa99688cc3eb83ee8e0 SHA512 5401ff6040bd50e1f53fc02621471aec876c5a54798c96a1088e416057a0112e23420dd0997e74e21c7961471b82ed0c6153090632724160aa3745e56ec8bf47 -DIST thunderbird-128.2.1-sr.xpi 771007 BLAKE2B 83ed4a49c137b9983c8ba45b919b60fa723734c914e1c272b701242c78a93d3748183c34a37dbd3eae6268d6e5a3b6e13fc1f514300504835f9c3d5316824709 SHA512 87eaa384d0aab2de44157ec239bf87a5b5f2ae1a5d9036311dc887e97b63803621420a66a6be9a569084511593f570eb1019db83743357628fa2fb0726b83a22 -DIST thunderbird-128.2.1-sv-SE.xpi 747521 BLAKE2B 84e07a98cf96cc87fcc410ddfd9889f23bb36abd7e8f2c13091faf039faf6d30e044ea4598dc127655dd57c3c3d66bbd8b9e11cbd08d17f30d71f15b5ddee1dd SHA512 3412d1bee9bfc153be5c8c6c0c015d6fa3fa6d4d4c901ca914b0aee75aacb3648a1eb7dc77916d521d038f9220c80924859997f3bf9226e0726d330c7f91f5a5 -DIST thunderbird-128.2.1-th.xpi 813955 BLAKE2B 7abdacbfeaf7692642e5e90f7c3009f48d2071989d7247ce1dbdc57c16b028250c8f286c7f178d0e4b83f2f2120d66d1474d9baf85337f7d0727d8975796e27c SHA512 6f4ca7656ecf67a137f618e8bb6ab2a817968b1844a41d109d98bc665125ec68e5e007fbe7b76a28db8082b9c13659d82b3e31b82bbe27b0e6596fb799f95000 -DIST thunderbird-128.2.1-tr.xpi 758166 BLAKE2B eb4118bfce198810949f1b2fb399a405e80ce678d9ac35b3a0c9449fe222b23d49586ffb0bd0ec0c7a5b1425036d7162c2f81a832d0bb3a86a220d50d2032712 SHA512 98b5514915baba99cd2e060d3d91ac423147925aa6469a619b11f6a044e9ebeec8f57d7cdb220e034730cc496cda74664e0c5f07d9f326747c04a52f3eb82590 -DIST thunderbird-128.2.1-uk.xpi 856055 BLAKE2B 9b92c639a835c7a089a71ce7d56f322cb1c1b98a4aa89c291b96051de729a6cb3790e58e08445c60d0ca91490ae0d596fe2fff9945a26bc6a47a3a547a59feca SHA512 c33087e527575533563fd154808c364701c7b0dfbe512597206b6cbf086b6fc62b0757f7c0efe191edd7178609444c39a5626f39851d118205570eaf8bb9ef94 -DIST thunderbird-128.2.1-uz.xpi 592134 BLAKE2B 30ace0cfffae65aabdb6613470ab7a71f36f9cf81077a1f86807cea47c652e7f62b4426150d09da56b7f626c914361cf61c16b9f31c58dc20aa3e4d0880919e1 SHA512 c5df80c44f719964e00143b5fb6347c447907b936b0d4e8900d01127ed13d86be4367aa63b688666028a9908706677b7e89fb239f61110195382f3623477791c -DIST thunderbird-128.2.1-vi.xpi 787028 BLAKE2B b8855d3fe3afd29cf88252458cf5d298cc8ad531dd6470e1c21fc4c4cfdcb487692c5b12efd6bb1e57270ff16218a38fc503b676a7398dc5b0d5fff1342dbc98 SHA512 1caf0e8bd087531c373225bb54f30a49b3274a30a3e220e81bb2746b6fbf71ad18c50a36f644c90c02045eeaa14c54213429fb69c87b6bc2ec7fd91353e43b31 -DIST thunderbird-128.2.1-zh-CN.xpi 785328 BLAKE2B c0074053890028a8888e04fbc803337888715f9004b44823af4d6dcecfe6de70b8e8c5d45ca234d7ce4276bdd6e68d38e74866b9bc8da345b490b1dcbb870e28 SHA512 641c7296e86a859061116e7b5c9f0077d6dc02e1c81212c21ce0247e9e92a88f3d7fa2be307f717e6f95077c29c236487dc8fd93d7f9795aba569e36f9f5f1dc -DIST thunderbird-128.2.1-zh-TW.xpi 789780 BLAKE2B 26dd81ab3b1066b0e4e1fb94d7d1f0a6241a94420fdd34fcea42f841c6f86109a7d53e422ada0378b865998d7946bea315051e1df47f04e278840db4d94a752b SHA512 6e8c435ed7f07b1dd1b201730049aeb924a7b1b44ae2fa9ed1a209e7862abd0316845c929fea24f73e43262f147b7e092bfe26ed7f3d2914c09bc60f160ccd98 +DIST thunderbird-128.2.2-af.xpi 530349 BLAKE2B 5eaa31b141d9a52ba51a4571520d6a83540f036dabfa5178c3a7106d0d22980ebd27c607437ef6dd795912504e32ecef8b1acca0b80d540fe1d2bccbe91b1178 SHA512 b7fa16adc69576b42119dcf65c4e45e31e00e98987e260df7e728be4e9fad5db7e3ee7704a3893ee85ecabad9cfcd05d81f6e7dc6278764fc0ad80ac97c530b6 +DIST thunderbird-128.2.2-ar.xpi 679867 BLAKE2B 27dc65b70f05954af61e2b47bbc6ec28288a8c2f44b32c616144b87e02c60f236d6ff2a8fe29e217afa322dd7e138f075e6d9726d95415628c3dccb6a030c008 SHA512 0faaca4ec5ba7867bbe4d3f57ec9cbbe66b1bdf7ebbe4dc5519a49aaba776eb0d1c4374c9b8136b416d61471805ca9dae7a2e5a12b6d3b7eedaf5d953fab2c95 +DIST thunderbird-128.2.2-ast.xpi 561054 BLAKE2B 6d6fe7db3bfa5f6ffb9e3bc93cbef8b49eeb13ea2332d4026712e1ec5d85a8571e9c191dd42250d92d31dc87d60c59c341452cca9867688b242664d3146e8e25 SHA512 a4b6a92b2bd2b2926e06ba8c43ec7803b5b3ff82ad240c6a90de65a25671f6dff686beb32f0f21f253564dd5403f2e225d1339989b43aa4d80bf3a9c6a3fbd90 +DIST thunderbird-128.2.2-be.xpi 755103 BLAKE2B 45e203ce7e29a7cc67e1f18fac1407f4c81d67b79e3ae02c754cf180d6c1a46ada7b468cb9a0a3e9d4045841e6fd10531d48b41bf3ed6ce94712285d6865b67d SHA512 3263422945063667f62824134f9b1aa0f4aae3780caba3306c0df60220f6aa2b0f1e666b58fed90e0c83a8b3d4e3ade2e0b4b9e719f0768ec07a2602380e683c +DIST thunderbird-128.2.2-bg.xpi 807860 BLAKE2B b6b61e6814b858c55aee5b42963424d2e1f53dd17c75e4245806a207257973203de93e012776c2c92d680c3335967b2924064e28038e1b9e88cdd620a1ae730b SHA512 5fef536a4b59667343c0b480776d88b0d389eea2f75a78996d40659a3960b84e3aec498357da7e8df0b9b1457e4926d314d30fc97f7d838fce4f2fa65c872cbd +DIST thunderbird-128.2.2-br.xpi 652476 BLAKE2B 83b6fb3638774a6a1b8b041c9346b550da5a63cf62255ab2463b8278d58220773b8292f615babeecc1f1a15d75606a57c128ead33c2b6a26b04df623483515c9 SHA512 05a442876965d6f70654f27499bb89e4314369c2dbae34a3e3769c4b43ff25e6816993fcebf5ca65d0f81c27c6cbd8afc0d7c4ae59297d84fa677065582480a9 +DIST thunderbird-128.2.2-ca.xpi 708965 BLAKE2B ab1a9d953816b8a19b30eab974802ee86219f75e0e7e2fc3346ce130c06ec216cee822d68edb9e238d78688ecbee6b55bb3818724a7eecd86ca541b53d5e83c2 SHA512 97e30e2ff485f83ba1612fb205d0542ee8c14307630985823f6dee5bab91a67fdc3d92da806d93efd57dd78487e8c6063ca0e2034f8126d22b1242c05ac560bf +DIST thunderbird-128.2.2-cak.xpi 671704 BLAKE2B 4aab96d35224b5722f1e9ba230abcfff9b990dee52dc8221537521e64b42d93b6a6e2946370f83a0259eed8df48d01b96ccb3c24780f3bd522a4e4b8c5e17487 SHA512 70abfe9ddba026194866f7ee3580e749b0a6fcdc3d9a574b80c3007acbc37eecded23efc69f0db31e17166825509faec8cbf24479e3be8304aebfb3aa3f58abc +DIST thunderbird-128.2.2-cs.xpi 785044 BLAKE2B 436909104d905eb197af8f1d1f36e5560a1efe836b4b4916090b2bad3e7199d5639f56f2c995d6bec209546fde475ae4e52d9fc63b33939b9770519935ea0d3b SHA512 df01acbe01daa0100a300b57ed933ec31dd671c9b7ea7cb19fc76f07aeb010b7362b640312f511860d2285d057cb3da08091bf7a8f7574f72ef3310a9511a99b +DIST thunderbird-128.2.2-cy.xpi 749050 BLAKE2B 194c5d39cf68ea157e36bed4e95ddb87dd807e3258ffe39aa7e7064c40b5b33ba5b8579026d7ff2f1e60f0d74dbd5ab9d4a3fbe1f783075a62bdc2b0d5729a09 SHA512 9a822522fcc3a18193f3a5046f7a52dd3d467dc2855a9238f33473272aba4c6fbe59e5873c98a1d50b82ec10dd58285e5bcdeaf58b1040889b3b9e5d3094207c +DIST thunderbird-128.2.2-da.xpi 734115 BLAKE2B d67c877852a541c18cf913e7920f0e34a981bd13c5d5879b5de5ef0922df308453f8d10115085d6869cf69770e2aef1e258e57bc313f23cb28a2d4fd368c5a0e SHA512 8b470f007dfa79d11f3fa55cf6f36fbd4ccd0ad7dd436a53d9761d20a04e7e199555f04f765e6e9221e3079ecd96792b3cb1c51e826596aff147b6b728313be7 +DIST thunderbird-128.2.2-de.xpi 766250 BLAKE2B 817a18baebbff78c08f7f28ddb7563fc0f8002fda98c264d344a5623eacd4fcc6487285d567bce7c9ed0a3d92a147b71507b847d884a58400add9af8f77555ef SHA512 f1cbd3ec218d41eca12e8fcde90319ba3acc3d7ccdd0fd8d0d535daefef5e344428684b544cafe24d23d31cdd8e2397d44d03a65dbddb2d679decccda12e21bb +DIST thunderbird-128.2.2-dsb.xpi 782741 BLAKE2B 57d30baa8a7c74b7e211e21c70e6bbd7a52979747c24e3d496cba1322ea3d1a88c44d151040bb2f12109383e0ae0a08823e3a73a2a18f82b93f703849b69993a SHA512 8c8aa85a43ab884069061eb09b9227a7604da7826ead0313d754aa6842f02f237f466e502c979d000fb69addc0a6bc8812a8d650bf90e002aff863dfb924cf59 +DIST thunderbird-128.2.2-el.xpi 889267 BLAKE2B fb1febb9726de7356330015ca659436a1b961bc4d368b49498fe86cb410c7fe707ab7e7fd6ae8f7be9617f74a0aafbff8970e93fcfc7dd3db03903ae1ead28d7 SHA512 7f0132917a7472a2351a7d6c508455a9783a1c947eaef910147e64ab98a812876b6bf7e1039e7c5f57a46153aadc2a31a67c004857e0ebcae288eb9726c5995b +DIST thunderbird-128.2.2-en-CA.xpi 702143 BLAKE2B eb53739465510736eac8d5edde33e3188960861270c7fc169bc5a0db72b31dd04d7de5ddb59570dab5fc396d3d7c1d5ccbce4ecaedef111dc6710ad314f5648e SHA512 49ddb0731c27aab5ecd9c35269439866835454723304c49491d1034585a6c6e7e7e052f0331c09ce3a218c79ec23919255bb6d60e9a194e453b572ec0c9e9696 +DIST thunderbird-128.2.2-en-GB.xpi 702698 BLAKE2B effca0c4ce13366f7f52bb7e9d1b6649a6c266747da06537a9be4df80407acdd7ce44b3251354fbbfafa1fb05da77054aa207f8efc829084be0388a34fde7533 SHA512 2c39705e01179244373facd5de6c0122187d4e7d4476e8571bcadd2725d9a78431c19c53b091abfec0ab3e4b2b22aae868c95a3886e2bf4598cb00235a37613c +DIST thunderbird-128.2.2-es-AR.xpi 758350 BLAKE2B 29ac3165963c6d2f6ff12fba8d6423b6c023ede2a0395fa815d28325a7b544f8cf72dfffdc607ede7c2006844011bb645109aec2592df02c85be111e1a650807 SHA512 dea206ebc27ac17f68cd11c488843109cb512e6bf4f40eabb076c9568517d3ab3d43e9a0335ff9497c00b2906c9f28840f05c85c9f3adce060b34ca132a37d7f +DIST thunderbird-128.2.2-es-ES.xpi 723514 BLAKE2B ab795afb266dc446f3b99bce6975053b9ba11e1cd8bb039e6dd72fbc3bf8f7084504fbb91af46cbb770f9d81946a7082b0e1f30c8661c8abd6d99cb1981d711d SHA512 b75040158484dffeaae54b0bbe4f3943531e46ebe9e4bea2df8d57a824bfd163fdf4136ad8104847893e8dbd9ebfa86d6dc2a2dd5391d10652833030c9dd9253 +DIST thunderbird-128.2.2-es-MX.xpi 737707 BLAKE2B f7d5120d9c1b21967a5b7e880e5d9d72542897e7468c8d83da780ab3d723d1a248bec8022a0ef6ac0c87d4dd6286f682275eb782f98fca00c19273bc3c2dd022 SHA512 6fd973a1a351ca80b961ec99e60936beb98ef50fffa80a47cd6703732363c8a25d27679336ef353f35362cf831dd0947b4ce77bff7d6f7f4f9dffcb66129979c +DIST thunderbird-128.2.2-et.xpi 696279 BLAKE2B f0ebe0f02d09630b3f5c33606a46bb07a916aee95bc5343a7fb988e9adb318d776fead30d0e6877d3b426307bb394502b4cf61cf8d2baeaef296b21def49e5a8 SHA512 8dec1a219b4ea2b4e186d8120129176defbc317830198e2211f1aa8cc89ef16987294e9444aa250748798eb748ce8e5cbaed209cdfbae4615b69b683b3d20b26 +DIST thunderbird-128.2.2-eu.xpi 726801 BLAKE2B 1827c2d6c2142e52cb08fe4f17dee71da7b80f91264afa06bf89f401b02660f05730967631378ec544ee70cb29ab6efaf15faf462a6602c3a0d275fa187cb500 SHA512 c52309755ba065f666c4f66c0fba2782c593a6a7d2c85c6ef072948914cbc820e7aa726418e4ba6e56310e7704c5dca127c04eabf4f02598edb70fc171520431 +DIST thunderbird-128.2.2-fi.xpi 733649 BLAKE2B 462f2bfbcdc12aa7560f9092659a68fbb5bf37295a04474ef080416afb56213d9da562efc039f6bbe4eeab750c04c1b268a54bab442244b4b58b4228792b3ac9 SHA512 20c0d9f1d85e0ebfac38f1bd3d45e86fd9784d02fbea3b003f57acc85f0e1e5500ee4db7a065ef442679f5710bc5bc7e2dd55bc5b53d6e82fbd1a5e1ae9f328f +DIST thunderbird-128.2.2-fr.xpi 770186 BLAKE2B bef36af72a56ab5965217501d20181ea75eae47dc9c1f67ae5c7ebea46d6cbba91a73832cb60876121372ef8568c8553cda2061a93debf86303170659ce3c99d SHA512 1d47991f193b992b133b391e1ef973ff6dc186c0e363d0ef1c83e288f56214384482c3562c4a45dcc375a23c43c75e9aca6702acab2201b93331d0b438213783 +DIST thunderbird-128.2.2-fy-NL.xpi 752848 BLAKE2B a292e6823319c2f91767bd22f9a595a8b61b24b69abb0e059c56f2ba58c6ce716edfcf89ddc2287500e1c4970b9e2d0c7203743111b5f8397d18c2078a82eec6 SHA512 7ad1aa764b030b00b114fc6f0a16265de1fee327303fed96ab4adead7b7c14941c2f8ea4703d1ae8a1956969db3b54215dc44f579c053d9ae7f86f189e91e671 +DIST thunderbird-128.2.2-ga-IE.xpi 615197 BLAKE2B 080b9cb464049731acf64c73ead986d884daf6dd7275cfa00a23df16285aa92bb48588702bba255ee79191dfb178360ff5dd4c2afe8eab533e67be96ff67e134 SHA512 22d06a3ed77ec8346ce994d765bb7997015c66c63644cf7840b4efea64c60907a5c32a1d506d97be8350412ea1b9a7cedb6e9610140799a4fe963a3e85b91936 +DIST thunderbird-128.2.2-gd.xpi 727803 BLAKE2B 9f9c41a1631b3f637991317f8a3773dadbb99dd2643ccbc80aac524aa8d8207fe676a03013de086fc0addf5dc5141d6099791bd4c7aade8aaceddb99da73f994 SHA512 4e10a62b3275ecc5ba2eeb3f81b880da33e90363ccb84e6a19e0bcd4d950a6efb1714b9048d7a7abb73ed09306af7c9108dca28ac3267ffbf53f5c2cc516fa3f +DIST thunderbird-128.2.2-gl.xpi 736571 BLAKE2B d2cc440ee4e3722e1c36a4da68753fb69b7abac394eec5c61212dabba6b633319cba0b1862cc18cdfd76c8de0c9bb97b95f08187573bff5518d0cc4ea2def846 SHA512 e275162e37cd1d3f43c3e33af5bfefe42ca875c58f26a5478ccfc9be73575f5643b25107cb6569192cdcef460fbfa428811c1a2cdf43ca03ae7379f26ae8909b +DIST thunderbird-128.2.2-he.xpi 700301 BLAKE2B 12f2bc196456da04d4549fdee2596b51148acd01f3371e776911a370937c6ba052d694a5b1a5459face5d8e19ccdf0c7ded30c010c32d99242693017c1e4e93f SHA512 e6b22bde8ce7470b88fb0ff3ba57ab3dfeecd616411cbccefd27106281c2e60a8337b69ebde2d286ebd1e84cba32fbd0b2c2dc4094ea9263294ed5f2571da26e +DIST thunderbird-128.2.2-hr.xpi 715017 BLAKE2B cd35408eab5bf605e0e9e55d15a6dfd6be3d6c6a0ef1fd1335ddbd0ddff9878177d7ea298b43ebdd9074049a4085432e1953d69ed9641f954db73f2c07531522 SHA512 4bdf8cf2cace5f41c53b19c4b8aa2aca0532369fb1d777acbeb9fceb3b5a8e18934091d4ed3b358bf4d61345976e2c72124adc57fed8b73485a2cbca31ecb9aa +DIST thunderbird-128.2.2-hsb.xpi 780137 BLAKE2B f9c38da2ba17c44c22553bee202da03cf37ffdd2ba9b594cb887cc2357743df4832dbd0bd0860e213156adacb61e3e76cabc9ab87e89bf4d17afb110f13b3167 SHA512 60e38453a6bcebab8ff3b58df8a771e92fb750260b0e9db21b0dd162b75b38694204d35fa50000a1bad57b9a52f583514c322b28385a205e903fe37dd6d22159 +DIST thunderbird-128.2.2-hu.xpi 782932 BLAKE2B ada66a9f56dbfea99864fb021e8bea226f255d54ce9f95ea7cbede9a34bcde4ff44c85c3b040ef22514a1078cf6658d1e0492059b14f36967f2f31bf0ec2646b SHA512 ae6775bc5fa417ada71054c4f09b50037bf5fada2e155dff71446256b3cedfe28cc66cf0280e78d399b9d988aeab296abec02e34946695cd789885cc231482bf +DIST thunderbird-128.2.2-id.xpi 666011 BLAKE2B e7ffab246eabc957fabad9f1a44b281a5f922e4786955169d5452527226de602ef174249ea5b4fc8191c1aeefe9ef3969cbc280b96d5137557ad4ed9765e272e SHA512 0df571d988ae5d36013d93f86cb5dc2942c8b04885288932fafd269216eb45a638261719532d9ab5640052c2f3af9ffb72235de99ae93697d4fc932867a69332 +DIST thunderbird-128.2.2-is.xpi 743886 BLAKE2B 1194a26ecb666dbc1675c1a6546b65b9132748ff9ca3cef03635a6c8ab014cf82483f816d9fab214cc8e9b5ceffbdea093219184e635e19460702824b59de29a SHA512 934375a444a0c97a9559d6e625bac69477e04129ed8b1ee084ce2be100e0422411a1b6cd439318c31e708720f3cc8d7e4fb57afb95489b91577bc4d2c3a92bd0 +DIST thunderbird-128.2.2-it.xpi 690397 BLAKE2B d3c81362ef8acce58ac9bd8e5cc86845fa7afc7aa817c5bf1976dd716aa76eae856bae25ae6c8e910718f09c28c0e14d183de94e1848fc84b40e5bf1cde9de92 SHA512 e912e81e16c6d594de1db3fa1e31f6a809d9b5cd630076d5c6346f956d4f4f7b40d8a12943c993a5181823aa0704a9c121c5b13a13cd74ab9322608ae6a3da70 +DIST thunderbird-128.2.2-ja.xpi 819902 BLAKE2B 0118c465fced58ba8782557776e767b6474c36b635e8b380045f7ff639aca3fdae5be5222429782fc7075c8afc2c1a63247d18546a1e8bf2ecd605e6ee57144f SHA512 b2082cbcdc4b7d888a7b2949d20e284048c56582aa365d47d505db2ab2951bb94ebdc48769ea7614d4cc856a1d326e0c28cb2d799e8fbfa9d107037197590c45 +DIST thunderbird-128.2.2-ka.xpi 796045 BLAKE2B 60d3c3f1d20d75d91014e738f0f04842d8580abb9fc21173fc66f61df45b0da61228fb402f45aa3566ad4605e9e9fc019cfb4a2b6767d90210588c920cc01283 SHA512 325ce0d81111f7adb5aea2ab2941629d21c041d3440398757d8d761cd7285a2c38e5e6d992859821d2869479b4146047f48e0c7ab9aa3cdd9f17e38e9d307002 +DIST thunderbird-128.2.2-kab.xpi 731859 BLAKE2B feccb64e54a2d0e3d4230971572445ba58d9efce7183085385a014619c199dc6de26b802cc4c2723a2166eed21cf1e26dbe6feb579b69eb59b472c8e41ec6c34 SHA512 177d4df8a2f0a09f7c48aba46fe7e07705467482ba82cf8b9031ace3375c24d70376fc3d067a6702999db3e093c78e08942f6d9e1f2226e5d32387fc3b744c75 +DIST thunderbird-128.2.2-kk.xpi 857288 BLAKE2B 1985ca4f666353a697d668053bf7b2c14d1d807babf09f5a78db6bf19afd26c50709c17ab5ba580a74510ba35636281c3f7542ca5d085ad69bd6473b481b1ec7 SHA512 94e132fa08c1dece0e3c2b47be24b063bb0f4155d4318534143ae4606fc409e5cd82034de6a93423726ca96a89969d94833551423ee02d041d644cb3507becbe +DIST thunderbird-128.2.2-ko.xpi 755165 BLAKE2B 1206f17fa9cd4c900f024272d93a5db8c2a3e2c1c8a1901bcd6bf962e55203e2bf03cc4f10243f2329de7f77549fe26e650d71be29d6e37e34e7388e4cede228 SHA512 470fc5bfdc0d139d19a236cd1abaa72d9da2a3e87ed8c7bd2f23282217241d5611537033cd28e5938b8d19d64ba0d3d75b200d4073db747d60482c838fa9b63d +DIST thunderbird-128.2.2-lt.xpi 700917 BLAKE2B 82ee9103889b2e7b8625b7646f8436a8c5b12a45237c7203d8d3a33b0d205bdad0e992e58582c0ee43570f4a601f69a3def5149e4f6443e72159b1e267cf3f3b SHA512 fca2e33a1fbe684efbd96b6f74b2d811c329fabc7ebff26fa9152b36bf316851e8390537d05255dee0e1c5e47ad2336036b76526573791d7ece6c127e2feb538 +DIST thunderbird-128.2.2-lv.xpi 623624 BLAKE2B b537c537dfdcc03d68737aeaa2fc13482b9f57ce5646a444bff7e788abbb02d5f4c7c399b467d83b2684de28b597a1b4223c8889a3b6906bfd32ce0a2fe5e538 SHA512 4b9f301ba9ede84aafc5518a8650d48469ad79826ddb5303a0df433f4b10d268f47ccde0492fc0ac9aac9e03f10ba3524962841ddabf7ff304398fdf309fd154 +DIST thunderbird-128.2.2-ms.xpi 581083 BLAKE2B 6906fa8c3abf7539eb3569139bf615f9f6bfc2933a82bc15f31c73dd85c689b35f0fe1f6f02d8894541733ff69072fcb7b4701c67b0b395dff6bf02e71419d6c SHA512 3e1807a9f3b0396ac79981f4104bba73d0b1357c8e8dedd67b06703144f419059c5c104a2d0030b16fce15aa55923e2f0efedcad5f080375a7713f362301a184 +DIST thunderbird-128.2.2-nb-NO.xpi 703762 BLAKE2B 5dc2fdbe2368cb1481e470b347abe248d968f0dd7bf4374ef2b4f719e746619b49f721f0c03f5d01341db8d8d72e48511b58b693c0438f80603d1f7ddd4dbbdd SHA512 a6732fceea73299362855bd4fca683f0944b3955f9668aa369932ec8e8bb39cf1f8e8a011ee103c5f642e0e22310ee3a7b422d773b705bec04fe1f81fe71131b +DIST thunderbird-128.2.2-nl.xpi 744105 BLAKE2B de180ebeaa93a970e4e2caa315531dd3a33bbd2868ed0281c084f4a369cf8f7e5aea0e3bf34e3a5283bfad4f904fee0db9d0bce91b5230e96bc209dbbd4a388b SHA512 fb978ad3fc6e70b117fac9aacb0377d7e488d8a8891ccebaae6fe845edb1c87bf05a6286a764343707bf44bbbb29b6b62cfaebc18d90308838eee3c5cfeeef91 +DIST thunderbird-128.2.2-nn-NO.xpi 723767 BLAKE2B ea5f20c8e761796d18e0e08c1a7c3b8ffd04afca6b08445c98faae9cb37c0f53819cfa43ae264d31ebdcc02cc658a3e8163c2096c6a3aec4b64d04c96cb73eee SHA512 d0d5f91c1d3563cf61f86bb0f58c9dd91ffa9809db112fa2114ed8b938c64cab76c14be04b94b794bd07e07b91755bb6e8cbd8efc089dab52bcb1d0720b1acce +DIST thunderbird-128.2.2-pa-IN.xpi 683077 BLAKE2B fdffb7bded96a4a2b156392bb72f0dca89bd8c3835b5bbcb9a811a311a4dfb0df0274ba0ce99f3427d8744b3734f0f4c53dd74bd4d1416a4bf085cfc495dcfcc SHA512 a536b95560e84affb3d67173773a0b0a69053dcebe2abc9dc4c05469f7895fe31977a4bd3e3c22870d191882546e1168518c7444c1baf2153e7556b6f88815ca +DIST thunderbird-128.2.2-pl.xpi 762951 BLAKE2B b130f1fb22fd05fe58cee3ee470d40358e490767df5ec3ce278fe91edfb5775b7170d2ea11525389f6fc141961bca3256408b0fadf222a59ffcd779ad05acae3 SHA512 8d008eb7b0723c6d8fea007a926e2b5b929d65fcac5c4009ec4cb7e7927af79eb5f5e62c14b4e0d9ce3b310a67155857c0c36649842b0ff259bfb9ea7dae43d4 +DIST thunderbird-128.2.2-pt-BR.xpi 751312 BLAKE2B 532ab4de97a86d7ef08457af3a6254db0c13b35739c3dc43d439d8dbe66ab0496447b4ea2bb90216c73451f716cf3bdcd70639b2a179f65ab6693a99f55f5c7e SHA512 5b9ccc6efffe4d096fe8a011ccf0ed0d75801ba6fbde7448d61d86c67445a81fde037332f962b7a8718f07f15c540ae11584911f007a335f37dd6c370a16b8bf +DIST thunderbird-128.2.2-pt-PT.xpi 746870 BLAKE2B f17c0e3065d028b7c9798d4b0a1f2915817bd51c20780e4884156c6464f3fb3fb26bb44e59285a403287055a4cb8689d08d0d46c363207c4998c1b79f2ca091f SHA512 5d212f4ad1829206c99c269e440142274288470e997b362ffb8a2f22081858d44be8432ea2bedca5f6ca31c02bbd31e0559e8e562bfe83ac4b69eeaa23a4019d +DIST thunderbird-128.2.2-rm.xpi 746779 BLAKE2B 57ed03115b45eeeca524d359915e604766ec1fc6a572cdddf792c81f5683c5211c97cef4466aeb70fdbec11b8b64b163d4b11c0db9e4eba40deb9c512e06407b SHA512 44f8ab9bcf893ef4f6fbfa9c549b7c0dd84e87bb6c8c35fc8257a04b449c19e55c38a3d0e3321e938aaf29dd61d0636384390c8ec20b276755b0a83b70875bfa +DIST thunderbird-128.2.2-ro.xpi 669742 BLAKE2B c8a3351698503cd460a94147ab145eca308a598ce151bfc19d696f5d0b8bf59f91a54c26a338d0c1db88cac673071bad71814d99a583d6d1a0575148b22da410 SHA512 affab7161952ef70aa8f6147e048b9209ab9996de1416e8c645726ceda9ec694a46a95e91fb4da3de7bef95ef9d7f9a2fb5c0e0cc1c20cf440b1b09e4eae8582 +DIST thunderbird-128.2.2-ru.xpi 872245 BLAKE2B 97afe1df85d1f3870ff50af4a2c8756a6ae00b0e21990fe80e0ef3df7d6c65106eb317a5faa8b97c496e7a7230c8d021dd677e957e00caf1de644e8571fa207b SHA512 5fa1e5810cd442a8a95b29c4e1f6e0a5c447d4ac43ca8b3de3cd21aa3ff215e281a7c73ab85309b261274578b99f52b95e60abbda876f434adf91be3860ab2bf +DIST thunderbird-128.2.2-sk.xpi 784168 BLAKE2B 0604012ee5bd5101cad8cac6727c61680993ca307ff49af10fc162d760095453a7c642aa8bb77a13c34fcf28c7e290d286efe4e4104e9d9d83a5aa0f05099ce3 SHA512 028d4c99b393bcd245d02cd0e97c98dcc20bdd153a08afd623de06579d9ff71108997840a757c84c6abab322ed20cc5c87a5dc273823ddc6610d74f268b08241 +DIST thunderbird-128.2.2-sl.xpi 743551 BLAKE2B da17cc1ce9d00f3ed713f0fed9a5825848b008eb359b905b894d2e0d9398c4d678bf329094ba98b0348962bdf87315b3f35917f5c136a1f6b99a53f19f7b1a51 SHA512 c505cc60ea3fe60ef1a0a252e99ef3aec14eed535b181c2f2ba21e607a7c41ec7dd37f9afeae7d7ca2e7ed0486908ee019b7397c3eb1d1ab0ba69a2132950ef1 +DIST thunderbird-128.2.2-sq.xpi 765885 BLAKE2B 0cfa9eb328f260dcad69784cd2d6502d01b5fee740a73022363e770fd1bc06572a1ddeaf308b5381a39d7b391746c8dcd4019d763df6d001a13dbf45d720b9de SHA512 956daefdf678b71adb87fe64e8004382a47e2fcfbebc9552bb0c3d83871347fe77e13bc9dc1a4220c124357bb6121392b58168f12f178c88c0c40009218e6ba5 +DIST thunderbird-128.2.2-sr.xpi 771005 BLAKE2B f7ba13aafe1e6042494650d2b5172bf788e04f3919491d5f19e542f5d4fc6090bc89ea1b89e4cc7fd1370b9194c2799544b3bfabbb88df03ed03782075788d6f SHA512 6813b47cb79ceed6f376238480488f3ef2c388775bcf2cebe77dba4b9af4cfa6205219a3850635eddc9f3a363df65f63435b42e6a3afebe33b1816bdb5b21c15 +DIST thunderbird-128.2.2-sv-SE.xpi 747521 BLAKE2B f6ea783938e5c2cfbf6d0b1c1020b1ed45df1a55655a6886c70b9d24250cf920bf9e95233878ff3e832b9ccdbcb6ec69f7a7a59737de7b908dea21579aa10a4c SHA512 9f93d3180d2b64ab5dc6682a74a9a2d38acc0274733940e51a257a87903e0375093b25e3189673786473f1553047cdfededdf3728266cbb2dfaf52a2dfe6e76e +DIST thunderbird-128.2.2-th.xpi 813953 BLAKE2B 2eca50868dd09e7d8576da9cc5f204fc816a7ef3fd459ea6260e429905e7d6c9768cbd8f7b26817a23d6b64699164c6c604d5d06939c01a9ed743015d83f38bd SHA512 490ece4ddb5ed2155084ee3d2fe54a2d216f5622eb55088b399e92da55ff598836e787a1dffc638122f3c80de0c35214121bd84884d25c51a3b83b3288f77893 +DIST thunderbird-128.2.2-tr.xpi 758165 BLAKE2B 9e502939d4ed61372e0e16df5ee1a30d0c89caccc1edf8a0778baf8f01f1a37dca4408d081332cf74b2c74c683273de070675fc85044704e69fae6991502bb70 SHA512 232e52755661a339650a76b701610cc136c7a7e5b11788afdf470e18ebd13a3befa7464ab073579bf7a7b7b340a82ceb9328df93e8995b2356c87a55b8110a1e +DIST thunderbird-128.2.2-uk.xpi 856053 BLAKE2B 7530213593db5e282dd54e2f5f1f26b982f1a3d01d206676f9f8641c7ecfa54f126e5b095ef6c528482eedb1e949aab5696a67b4883d760c9393d079076a9a45 SHA512 02072a6eeb9f03a71cae1f7ef4de4272aa677657b1cc8ed1c28badc713510c9d53c6029e3647817769fdd79caed735373263d0150c4c5ae6997479cd0291c64e +DIST thunderbird-128.2.2-uz.xpi 592131 BLAKE2B 569538d472409a3ac52a4891c07446220d2d9795c1e2a51afc15604814b19ad3833fb16a7f46958bebd89fb8f47958647f56321105612954216b8c0caa3f7f1b SHA512 415f903c63ffc47a9d6463ac41a2b842164497377fe9ac225875b8f3babb3c798b988ee40b5cd609cc2559eee96c2b19d91e51d8df36381cbdd2a1ecf892ccbb +DIST thunderbird-128.2.2-vi.xpi 787028 BLAKE2B c9fb95cbd3055b58f38d8e166eb64899ac3cfda96fb223dcecf70123b21781d607c5ba552b177f91edcc9af9e378ce799b9497e740b19d5a9e8f4e7b6daec995 SHA512 4cb791209a31f87a481085fe8925b470f51ae4ba357a415bbfb01f974bad4080c61edeaf3805c5544636376ccd85470e26e24c7477a1a6436944b4a2072fd28b +DIST thunderbird-128.2.2-zh-CN.xpi 785327 BLAKE2B 095094bc0b01974406837e776d263b96c85699123f7c5bb6cd9126e5da03c5320eaafac24344205b49a463a8b1729121f73882734aedd723ad43178ba24f0bf8 SHA512 345bba000b277941423af0f3f47763208a565a408c99a6a8ff5619d3d5a91a8c5c18d867d667f6ecdc2f56dad4007ccd2f75cff113bb7eb294f3ee2d9b8d1def +DIST thunderbird-128.2.2-zh-TW.xpi 789780 BLAKE2B 1e1d95617c86fbcc00804dd18dcad0cc1b876ba09a2162696d14075e4814810aadc24e2124b25df935f380171a6dd1a95ec679b28ea509aeeb27d99b3a1e5950 SHA512 0b650d6c00a0dc05119e20b4d072124c98e70f70a7b98f05644e344fe952b8992d9aa5ea0f320e0f13c3c80e07e8a23f3160e4443510c139ebeedf2eb7778d1f DIST thunderbird-bin_i686-115.15.0.tar.bz2 83141923 BLAKE2B 65ab94671fecf4f315c790ee4525041363f1f05796f6c0ca2c73948b478d37b299104fa61c425e2f0d5cc8e291119590a9f60491f126ade931e2634c866e050f SHA512 c63ba5fac74c89583af6e7beceec7e027463f1511522c8245fc80b1f55e3a87de97a54e2c599b87d5ab3bc928bcdfd9533e54d0fa7415a8af2618133aaa4a90f -DIST thunderbird-bin_i686-128.2.1.tar.bz2 89460512 BLAKE2B 0d43117d42979d4f2e071b2701c4939902034961323da2a3e528db721f08cfdfd750dc9f7cf941df1dacea5a508066d8dd4718a0de643b56052d6cbf9d3f2daf SHA512 ad4e56ebcf11665f2cbc6814e1c85c8b75fe679c6b85ccde6376f8a4d687b8602d7df0bccab54ad07c5cfe17142341a692029c36621d1f26d4f062a57804f130 +DIST thunderbird-bin_i686-128.2.2.tar.bz2 89436816 BLAKE2B 9b8046651ab6640341f1bd1226e6d74d4e2fbf72f428f9e3aded1c1b299be0bc0b5c34d8b3627a04be4cf0dea3224ff24eae42af81a95cc12588efd6dcaf3866 SHA512 2c616a6ffa4ed7cdc00f4d26067f9b2d7c624384eeb8c202dae551286bce6471966655d9fb22b4473926d90ee5352836662c375db8071c86935744ec4920d20c DIST thunderbird-bin_x86_64-115.15.0.tar.bz2 80669183 BLAKE2B e288a1ee07234ac3ab5749f2c18f1f342b440353b66a7c6d5c80b1aa1e6f46dc2dd1e5c81124b0393fa61141ad4c6c14939f2fdf9f15547e4160df5bdba7d2ec SHA512 311df005e79ba20d6e4e61b934f0c1e450e15b6622ec741c1ead98a111c7679f01cc9b4bc2c713be470385ed8fe9f87a8c3a2d0adf6198623fbbc092134a9f06 -DIST thunderbird-bin_x86_64-128.2.1.tar.bz2 87162359 BLAKE2B a540e6a7b70f6553a0203a325c85a5c8af4f9e728e7905290bd522e4d1f467301ac42462a4cdb6a787aed14e59ade3e717c8a4eb83785df2826c3b8d7d644bd1 SHA512 a4ae85e5f73fe72e470a39cbe40218c881cdfd010f068c0ea4961ba8d5df1ff6cd739a546335640ce6ce9c48ff6c5b3315a93ca64654da422b7a2a9f37f5a0ff +DIST thunderbird-bin_x86_64-128.2.2.tar.bz2 87105848 BLAKE2B 48cd8302e2c5059f0776cca72abf4d74d53b75c2479571c96b1e11a52964f3dc774e6ac65f0b8245c0580647b7d7eda693f4ca112c0fcba1bd2e3c565551eb48 SHA512 cc85b2686b03fed538043d0908a62ebd80d1a563eccbe2548f54115270db36d1dbdcf3b840039a4875abc8efb276a81c4d9fd4cd92310960bba0cce9b566a540 diff --git a/mail-client/thunderbird-bin/thunderbird-bin-128.2.1.ebuild b/mail-client/thunderbird-bin/thunderbird-bin-128.2.2.ebuild index 1df793b39ec9..1df793b39ec9 100644 --- a/mail-client/thunderbird-bin/thunderbird-bin-128.2.1.ebuild +++ b/mail-client/thunderbird-bin/thunderbird-bin-128.2.2.ebuild diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest index 8bae87e7b3c0..5a2121fc146f 100644 --- a/mail-client/thunderbird/Manifest +++ b/mail-client/thunderbird/Manifest @@ -130,3 +130,68 @@ DIST thunderbird-128.2.1-vi.xpi 787028 BLAKE2B b8855d3fe3afd29cf88252458cf5d298c DIST thunderbird-128.2.1-zh-CN.xpi 785328 BLAKE2B c0074053890028a8888e04fbc803337888715f9004b44823af4d6dcecfe6de70b8e8c5d45ca234d7ce4276bdd6e68d38e74866b9bc8da345b490b1dcbb870e28 SHA512 641c7296e86a859061116e7b5c9f0077d6dc02e1c81212c21ce0247e9e92a88f3d7fa2be307f717e6f95077c29c236487dc8fd93d7f9795aba569e36f9f5f1dc DIST thunderbird-128.2.1-zh-TW.xpi 789780 BLAKE2B 26dd81ab3b1066b0e4e1fb94d7d1f0a6241a94420fdd34fcea42f841c6f86109a7d53e422ada0378b865998d7946bea315051e1df47f04e278840db4d94a752b SHA512 6e8c435ed7f07b1dd1b201730049aeb924a7b1b44ae2fa9ed1a209e7862abd0316845c929fea24f73e43262f147b7e092bfe26ed7f3d2914c09bc60f160ccd98 DIST thunderbird-128.2.1esr.source.tar.xz 672402456 BLAKE2B 0a082fc46148162979c55da1e43d4592b1f012c01d227444f3157824a66dc7035cf81d9f200c834f62226415f52c550888bfee70eabea8c4765addef6409d3d3 SHA512 8a04c57f7c4c8f19ca3aa5f62a65fe05944a8425e074ff49ff087c542bb64091666078ed0b887528d2662d92e65f7a00a5fad98e7897d2f1e1def963923523f0 +DIST thunderbird-128.2.2-af.xpi 530349 BLAKE2B 5eaa31b141d9a52ba51a4571520d6a83540f036dabfa5178c3a7106d0d22980ebd27c607437ef6dd795912504e32ecef8b1acca0b80d540fe1d2bccbe91b1178 SHA512 b7fa16adc69576b42119dcf65c4e45e31e00e98987e260df7e728be4e9fad5db7e3ee7704a3893ee85ecabad9cfcd05d81f6e7dc6278764fc0ad80ac97c530b6 +DIST thunderbird-128.2.2-ar.xpi 679867 BLAKE2B 27dc65b70f05954af61e2b47bbc6ec28288a8c2f44b32c616144b87e02c60f236d6ff2a8fe29e217afa322dd7e138f075e6d9726d95415628c3dccb6a030c008 SHA512 0faaca4ec5ba7867bbe4d3f57ec9cbbe66b1bdf7ebbe4dc5519a49aaba776eb0d1c4374c9b8136b416d61471805ca9dae7a2e5a12b6d3b7eedaf5d953fab2c95 +DIST thunderbird-128.2.2-ast.xpi 561054 BLAKE2B 6d6fe7db3bfa5f6ffb9e3bc93cbef8b49eeb13ea2332d4026712e1ec5d85a8571e9c191dd42250d92d31dc87d60c59c341452cca9867688b242664d3146e8e25 SHA512 a4b6a92b2bd2b2926e06ba8c43ec7803b5b3ff82ad240c6a90de65a25671f6dff686beb32f0f21f253564dd5403f2e225d1339989b43aa4d80bf3a9c6a3fbd90 +DIST thunderbird-128.2.2-be.xpi 755103 BLAKE2B 45e203ce7e29a7cc67e1f18fac1407f4c81d67b79e3ae02c754cf180d6c1a46ada7b468cb9a0a3e9d4045841e6fd10531d48b41bf3ed6ce94712285d6865b67d SHA512 3263422945063667f62824134f9b1aa0f4aae3780caba3306c0df60220f6aa2b0f1e666b58fed90e0c83a8b3d4e3ade2e0b4b9e719f0768ec07a2602380e683c +DIST thunderbird-128.2.2-bg.xpi 807860 BLAKE2B b6b61e6814b858c55aee5b42963424d2e1f53dd17c75e4245806a207257973203de93e012776c2c92d680c3335967b2924064e28038e1b9e88cdd620a1ae730b SHA512 5fef536a4b59667343c0b480776d88b0d389eea2f75a78996d40659a3960b84e3aec498357da7e8df0b9b1457e4926d314d30fc97f7d838fce4f2fa65c872cbd +DIST thunderbird-128.2.2-br.xpi 652476 BLAKE2B 83b6fb3638774a6a1b8b041c9346b550da5a63cf62255ab2463b8278d58220773b8292f615babeecc1f1a15d75606a57c128ead33c2b6a26b04df623483515c9 SHA512 05a442876965d6f70654f27499bb89e4314369c2dbae34a3e3769c4b43ff25e6816993fcebf5ca65d0f81c27c6cbd8afc0d7c4ae59297d84fa677065582480a9 +DIST thunderbird-128.2.2-ca.xpi 708965 BLAKE2B ab1a9d953816b8a19b30eab974802ee86219f75e0e7e2fc3346ce130c06ec216cee822d68edb9e238d78688ecbee6b55bb3818724a7eecd86ca541b53d5e83c2 SHA512 97e30e2ff485f83ba1612fb205d0542ee8c14307630985823f6dee5bab91a67fdc3d92da806d93efd57dd78487e8c6063ca0e2034f8126d22b1242c05ac560bf +DIST thunderbird-128.2.2-cak.xpi 671704 BLAKE2B 4aab96d35224b5722f1e9ba230abcfff9b990dee52dc8221537521e64b42d93b6a6e2946370f83a0259eed8df48d01b96ccb3c24780f3bd522a4e4b8c5e17487 SHA512 70abfe9ddba026194866f7ee3580e749b0a6fcdc3d9a574b80c3007acbc37eecded23efc69f0db31e17166825509faec8cbf24479e3be8304aebfb3aa3f58abc +DIST thunderbird-128.2.2-cs.xpi 785044 BLAKE2B 436909104d905eb197af8f1d1f36e5560a1efe836b4b4916090b2bad3e7199d5639f56f2c995d6bec209546fde475ae4e52d9fc63b33939b9770519935ea0d3b SHA512 df01acbe01daa0100a300b57ed933ec31dd671c9b7ea7cb19fc76f07aeb010b7362b640312f511860d2285d057cb3da08091bf7a8f7574f72ef3310a9511a99b +DIST thunderbird-128.2.2-cy.xpi 749050 BLAKE2B 194c5d39cf68ea157e36bed4e95ddb87dd807e3258ffe39aa7e7064c40b5b33ba5b8579026d7ff2f1e60f0d74dbd5ab9d4a3fbe1f783075a62bdc2b0d5729a09 SHA512 9a822522fcc3a18193f3a5046f7a52dd3d467dc2855a9238f33473272aba4c6fbe59e5873c98a1d50b82ec10dd58285e5bcdeaf58b1040889b3b9e5d3094207c +DIST thunderbird-128.2.2-da.xpi 734115 BLAKE2B d67c877852a541c18cf913e7920f0e34a981bd13c5d5879b5de5ef0922df308453f8d10115085d6869cf69770e2aef1e258e57bc313f23cb28a2d4fd368c5a0e SHA512 8b470f007dfa79d11f3fa55cf6f36fbd4ccd0ad7dd436a53d9761d20a04e7e199555f04f765e6e9221e3079ecd96792b3cb1c51e826596aff147b6b728313be7 +DIST thunderbird-128.2.2-de.xpi 766250 BLAKE2B 817a18baebbff78c08f7f28ddb7563fc0f8002fda98c264d344a5623eacd4fcc6487285d567bce7c9ed0a3d92a147b71507b847d884a58400add9af8f77555ef SHA512 f1cbd3ec218d41eca12e8fcde90319ba3acc3d7ccdd0fd8d0d535daefef5e344428684b544cafe24d23d31cdd8e2397d44d03a65dbddb2d679decccda12e21bb +DIST thunderbird-128.2.2-dsb.xpi 782741 BLAKE2B 57d30baa8a7c74b7e211e21c70e6bbd7a52979747c24e3d496cba1322ea3d1a88c44d151040bb2f12109383e0ae0a08823e3a73a2a18f82b93f703849b69993a SHA512 8c8aa85a43ab884069061eb09b9227a7604da7826ead0313d754aa6842f02f237f466e502c979d000fb69addc0a6bc8812a8d650bf90e002aff863dfb924cf59 +DIST thunderbird-128.2.2-el.xpi 889267 BLAKE2B fb1febb9726de7356330015ca659436a1b961bc4d368b49498fe86cb410c7fe707ab7e7fd6ae8f7be9617f74a0aafbff8970e93fcfc7dd3db03903ae1ead28d7 SHA512 7f0132917a7472a2351a7d6c508455a9783a1c947eaef910147e64ab98a812876b6bf7e1039e7c5f57a46153aadc2a31a67c004857e0ebcae288eb9726c5995b +DIST thunderbird-128.2.2-en-CA.xpi 702143 BLAKE2B eb53739465510736eac8d5edde33e3188960861270c7fc169bc5a0db72b31dd04d7de5ddb59570dab5fc396d3d7c1d5ccbce4ecaedef111dc6710ad314f5648e SHA512 49ddb0731c27aab5ecd9c35269439866835454723304c49491d1034585a6c6e7e7e052f0331c09ce3a218c79ec23919255bb6d60e9a194e453b572ec0c9e9696 +DIST thunderbird-128.2.2-en-GB.xpi 702698 BLAKE2B effca0c4ce13366f7f52bb7e9d1b6649a6c266747da06537a9be4df80407acdd7ce44b3251354fbbfafa1fb05da77054aa207f8efc829084be0388a34fde7533 SHA512 2c39705e01179244373facd5de6c0122187d4e7d4476e8571bcadd2725d9a78431c19c53b091abfec0ab3e4b2b22aae868c95a3886e2bf4598cb00235a37613c +DIST thunderbird-128.2.2-es-AR.xpi 758350 BLAKE2B 29ac3165963c6d2f6ff12fba8d6423b6c023ede2a0395fa815d28325a7b544f8cf72dfffdc607ede7c2006844011bb645109aec2592df02c85be111e1a650807 SHA512 dea206ebc27ac17f68cd11c488843109cb512e6bf4f40eabb076c9568517d3ab3d43e9a0335ff9497c00b2906c9f28840f05c85c9f3adce060b34ca132a37d7f +DIST thunderbird-128.2.2-es-ES.xpi 723514 BLAKE2B ab795afb266dc446f3b99bce6975053b9ba11e1cd8bb039e6dd72fbc3bf8f7084504fbb91af46cbb770f9d81946a7082b0e1f30c8661c8abd6d99cb1981d711d SHA512 b75040158484dffeaae54b0bbe4f3943531e46ebe9e4bea2df8d57a824bfd163fdf4136ad8104847893e8dbd9ebfa86d6dc2a2dd5391d10652833030c9dd9253 +DIST thunderbird-128.2.2-es-MX.xpi 737707 BLAKE2B f7d5120d9c1b21967a5b7e880e5d9d72542897e7468c8d83da780ab3d723d1a248bec8022a0ef6ac0c87d4dd6286f682275eb782f98fca00c19273bc3c2dd022 SHA512 6fd973a1a351ca80b961ec99e60936beb98ef50fffa80a47cd6703732363c8a25d27679336ef353f35362cf831dd0947b4ce77bff7d6f7f4f9dffcb66129979c +DIST thunderbird-128.2.2-et.xpi 696279 BLAKE2B f0ebe0f02d09630b3f5c33606a46bb07a916aee95bc5343a7fb988e9adb318d776fead30d0e6877d3b426307bb394502b4cf61cf8d2baeaef296b21def49e5a8 SHA512 8dec1a219b4ea2b4e186d8120129176defbc317830198e2211f1aa8cc89ef16987294e9444aa250748798eb748ce8e5cbaed209cdfbae4615b69b683b3d20b26 +DIST thunderbird-128.2.2-eu.xpi 726801 BLAKE2B 1827c2d6c2142e52cb08fe4f17dee71da7b80f91264afa06bf89f401b02660f05730967631378ec544ee70cb29ab6efaf15faf462a6602c3a0d275fa187cb500 SHA512 c52309755ba065f666c4f66c0fba2782c593a6a7d2c85c6ef072948914cbc820e7aa726418e4ba6e56310e7704c5dca127c04eabf4f02598edb70fc171520431 +DIST thunderbird-128.2.2-fi.xpi 733649 BLAKE2B 462f2bfbcdc12aa7560f9092659a68fbb5bf37295a04474ef080416afb56213d9da562efc039f6bbe4eeab750c04c1b268a54bab442244b4b58b4228792b3ac9 SHA512 20c0d9f1d85e0ebfac38f1bd3d45e86fd9784d02fbea3b003f57acc85f0e1e5500ee4db7a065ef442679f5710bc5bc7e2dd55bc5b53d6e82fbd1a5e1ae9f328f +DIST thunderbird-128.2.2-fr.xpi 770186 BLAKE2B bef36af72a56ab5965217501d20181ea75eae47dc9c1f67ae5c7ebea46d6cbba91a73832cb60876121372ef8568c8553cda2061a93debf86303170659ce3c99d SHA512 1d47991f193b992b133b391e1ef973ff6dc186c0e363d0ef1c83e288f56214384482c3562c4a45dcc375a23c43c75e9aca6702acab2201b93331d0b438213783 +DIST thunderbird-128.2.2-fy-NL.xpi 752848 BLAKE2B a292e6823319c2f91767bd22f9a595a8b61b24b69abb0e059c56f2ba58c6ce716edfcf89ddc2287500e1c4970b9e2d0c7203743111b5f8397d18c2078a82eec6 SHA512 7ad1aa764b030b00b114fc6f0a16265de1fee327303fed96ab4adead7b7c14941c2f8ea4703d1ae8a1956969db3b54215dc44f579c053d9ae7f86f189e91e671 +DIST thunderbird-128.2.2-ga-IE.xpi 615197 BLAKE2B 080b9cb464049731acf64c73ead986d884daf6dd7275cfa00a23df16285aa92bb48588702bba255ee79191dfb178360ff5dd4c2afe8eab533e67be96ff67e134 SHA512 22d06a3ed77ec8346ce994d765bb7997015c66c63644cf7840b4efea64c60907a5c32a1d506d97be8350412ea1b9a7cedb6e9610140799a4fe963a3e85b91936 +DIST thunderbird-128.2.2-gd.xpi 727803 BLAKE2B 9f9c41a1631b3f637991317f8a3773dadbb99dd2643ccbc80aac524aa8d8207fe676a03013de086fc0addf5dc5141d6099791bd4c7aade8aaceddb99da73f994 SHA512 4e10a62b3275ecc5ba2eeb3f81b880da33e90363ccb84e6a19e0bcd4d950a6efb1714b9048d7a7abb73ed09306af7c9108dca28ac3267ffbf53f5c2cc516fa3f +DIST thunderbird-128.2.2-gl.xpi 736571 BLAKE2B d2cc440ee4e3722e1c36a4da68753fb69b7abac394eec5c61212dabba6b633319cba0b1862cc18cdfd76c8de0c9bb97b95f08187573bff5518d0cc4ea2def846 SHA512 e275162e37cd1d3f43c3e33af5bfefe42ca875c58f26a5478ccfc9be73575f5643b25107cb6569192cdcef460fbfa428811c1a2cdf43ca03ae7379f26ae8909b +DIST thunderbird-128.2.2-he.xpi 700301 BLAKE2B 12f2bc196456da04d4549fdee2596b51148acd01f3371e776911a370937c6ba052d694a5b1a5459face5d8e19ccdf0c7ded30c010c32d99242693017c1e4e93f SHA512 e6b22bde8ce7470b88fb0ff3ba57ab3dfeecd616411cbccefd27106281c2e60a8337b69ebde2d286ebd1e84cba32fbd0b2c2dc4094ea9263294ed5f2571da26e +DIST thunderbird-128.2.2-hr.xpi 715017 BLAKE2B cd35408eab5bf605e0e9e55d15a6dfd6be3d6c6a0ef1fd1335ddbd0ddff9878177d7ea298b43ebdd9074049a4085432e1953d69ed9641f954db73f2c07531522 SHA512 4bdf8cf2cace5f41c53b19c4b8aa2aca0532369fb1d777acbeb9fceb3b5a8e18934091d4ed3b358bf4d61345976e2c72124adc57fed8b73485a2cbca31ecb9aa +DIST thunderbird-128.2.2-hsb.xpi 780137 BLAKE2B f9c38da2ba17c44c22553bee202da03cf37ffdd2ba9b594cb887cc2357743df4832dbd0bd0860e213156adacb61e3e76cabc9ab87e89bf4d17afb110f13b3167 SHA512 60e38453a6bcebab8ff3b58df8a771e92fb750260b0e9db21b0dd162b75b38694204d35fa50000a1bad57b9a52f583514c322b28385a205e903fe37dd6d22159 +DIST thunderbird-128.2.2-hu.xpi 782932 BLAKE2B ada66a9f56dbfea99864fb021e8bea226f255d54ce9f95ea7cbede9a34bcde4ff44c85c3b040ef22514a1078cf6658d1e0492059b14f36967f2f31bf0ec2646b SHA512 ae6775bc5fa417ada71054c4f09b50037bf5fada2e155dff71446256b3cedfe28cc66cf0280e78d399b9d988aeab296abec02e34946695cd789885cc231482bf +DIST thunderbird-128.2.2-id.xpi 666011 BLAKE2B e7ffab246eabc957fabad9f1a44b281a5f922e4786955169d5452527226de602ef174249ea5b4fc8191c1aeefe9ef3969cbc280b96d5137557ad4ed9765e272e SHA512 0df571d988ae5d36013d93f86cb5dc2942c8b04885288932fafd269216eb45a638261719532d9ab5640052c2f3af9ffb72235de99ae93697d4fc932867a69332 +DIST thunderbird-128.2.2-is.xpi 743886 BLAKE2B 1194a26ecb666dbc1675c1a6546b65b9132748ff9ca3cef03635a6c8ab014cf82483f816d9fab214cc8e9b5ceffbdea093219184e635e19460702824b59de29a SHA512 934375a444a0c97a9559d6e625bac69477e04129ed8b1ee084ce2be100e0422411a1b6cd439318c31e708720f3cc8d7e4fb57afb95489b91577bc4d2c3a92bd0 +DIST thunderbird-128.2.2-it.xpi 690397 BLAKE2B d3c81362ef8acce58ac9bd8e5cc86845fa7afc7aa817c5bf1976dd716aa76eae856bae25ae6c8e910718f09c28c0e14d183de94e1848fc84b40e5bf1cde9de92 SHA512 e912e81e16c6d594de1db3fa1e31f6a809d9b5cd630076d5c6346f956d4f4f7b40d8a12943c993a5181823aa0704a9c121c5b13a13cd74ab9322608ae6a3da70 +DIST thunderbird-128.2.2-ja.xpi 819902 BLAKE2B 0118c465fced58ba8782557776e767b6474c36b635e8b380045f7ff639aca3fdae5be5222429782fc7075c8afc2c1a63247d18546a1e8bf2ecd605e6ee57144f SHA512 b2082cbcdc4b7d888a7b2949d20e284048c56582aa365d47d505db2ab2951bb94ebdc48769ea7614d4cc856a1d326e0c28cb2d799e8fbfa9d107037197590c45 +DIST thunderbird-128.2.2-ka.xpi 796045 BLAKE2B 60d3c3f1d20d75d91014e738f0f04842d8580abb9fc21173fc66f61df45b0da61228fb402f45aa3566ad4605e9e9fc019cfb4a2b6767d90210588c920cc01283 SHA512 325ce0d81111f7adb5aea2ab2941629d21c041d3440398757d8d761cd7285a2c38e5e6d992859821d2869479b4146047f48e0c7ab9aa3cdd9f17e38e9d307002 +DIST thunderbird-128.2.2-kab.xpi 731859 BLAKE2B feccb64e54a2d0e3d4230971572445ba58d9efce7183085385a014619c199dc6de26b802cc4c2723a2166eed21cf1e26dbe6feb579b69eb59b472c8e41ec6c34 SHA512 177d4df8a2f0a09f7c48aba46fe7e07705467482ba82cf8b9031ace3375c24d70376fc3d067a6702999db3e093c78e08942f6d9e1f2226e5d32387fc3b744c75 +DIST thunderbird-128.2.2-kk.xpi 857288 BLAKE2B 1985ca4f666353a697d668053bf7b2c14d1d807babf09f5a78db6bf19afd26c50709c17ab5ba580a74510ba35636281c3f7542ca5d085ad69bd6473b481b1ec7 SHA512 94e132fa08c1dece0e3c2b47be24b063bb0f4155d4318534143ae4606fc409e5cd82034de6a93423726ca96a89969d94833551423ee02d041d644cb3507becbe +DIST thunderbird-128.2.2-ko.xpi 755165 BLAKE2B 1206f17fa9cd4c900f024272d93a5db8c2a3e2c1c8a1901bcd6bf962e55203e2bf03cc4f10243f2329de7f77549fe26e650d71be29d6e37e34e7388e4cede228 SHA512 470fc5bfdc0d139d19a236cd1abaa72d9da2a3e87ed8c7bd2f23282217241d5611537033cd28e5938b8d19d64ba0d3d75b200d4073db747d60482c838fa9b63d +DIST thunderbird-128.2.2-lt.xpi 700917 BLAKE2B 82ee9103889b2e7b8625b7646f8436a8c5b12a45237c7203d8d3a33b0d205bdad0e992e58582c0ee43570f4a601f69a3def5149e4f6443e72159b1e267cf3f3b SHA512 fca2e33a1fbe684efbd96b6f74b2d811c329fabc7ebff26fa9152b36bf316851e8390537d05255dee0e1c5e47ad2336036b76526573791d7ece6c127e2feb538 +DIST thunderbird-128.2.2-lv.xpi 623624 BLAKE2B b537c537dfdcc03d68737aeaa2fc13482b9f57ce5646a444bff7e788abbb02d5f4c7c399b467d83b2684de28b597a1b4223c8889a3b6906bfd32ce0a2fe5e538 SHA512 4b9f301ba9ede84aafc5518a8650d48469ad79826ddb5303a0df433f4b10d268f47ccde0492fc0ac9aac9e03f10ba3524962841ddabf7ff304398fdf309fd154 +DIST thunderbird-128.2.2-ms.xpi 581083 BLAKE2B 6906fa8c3abf7539eb3569139bf615f9f6bfc2933a82bc15f31c73dd85c689b35f0fe1f6f02d8894541733ff69072fcb7b4701c67b0b395dff6bf02e71419d6c SHA512 3e1807a9f3b0396ac79981f4104bba73d0b1357c8e8dedd67b06703144f419059c5c104a2d0030b16fce15aa55923e2f0efedcad5f080375a7713f362301a184 +DIST thunderbird-128.2.2-nb-NO.xpi 703762 BLAKE2B 5dc2fdbe2368cb1481e470b347abe248d968f0dd7bf4374ef2b4f719e746619b49f721f0c03f5d01341db8d8d72e48511b58b693c0438f80603d1f7ddd4dbbdd SHA512 a6732fceea73299362855bd4fca683f0944b3955f9668aa369932ec8e8bb39cf1f8e8a011ee103c5f642e0e22310ee3a7b422d773b705bec04fe1f81fe71131b +DIST thunderbird-128.2.2-nl.xpi 744105 BLAKE2B de180ebeaa93a970e4e2caa315531dd3a33bbd2868ed0281c084f4a369cf8f7e5aea0e3bf34e3a5283bfad4f904fee0db9d0bce91b5230e96bc209dbbd4a388b SHA512 fb978ad3fc6e70b117fac9aacb0377d7e488d8a8891ccebaae6fe845edb1c87bf05a6286a764343707bf44bbbb29b6b62cfaebc18d90308838eee3c5cfeeef91 +DIST thunderbird-128.2.2-nn-NO.xpi 723767 BLAKE2B ea5f20c8e761796d18e0e08c1a7c3b8ffd04afca6b08445c98faae9cb37c0f53819cfa43ae264d31ebdcc02cc658a3e8163c2096c6a3aec4b64d04c96cb73eee SHA512 d0d5f91c1d3563cf61f86bb0f58c9dd91ffa9809db112fa2114ed8b938c64cab76c14be04b94b794bd07e07b91755bb6e8cbd8efc089dab52bcb1d0720b1acce +DIST thunderbird-128.2.2-pa-IN.xpi 683077 BLAKE2B fdffb7bded96a4a2b156392bb72f0dca89bd8c3835b5bbcb9a811a311a4dfb0df0274ba0ce99f3427d8744b3734f0f4c53dd74bd4d1416a4bf085cfc495dcfcc SHA512 a536b95560e84affb3d67173773a0b0a69053dcebe2abc9dc4c05469f7895fe31977a4bd3e3c22870d191882546e1168518c7444c1baf2153e7556b6f88815ca +DIST thunderbird-128.2.2-pl.xpi 762951 BLAKE2B b130f1fb22fd05fe58cee3ee470d40358e490767df5ec3ce278fe91edfb5775b7170d2ea11525389f6fc141961bca3256408b0fadf222a59ffcd779ad05acae3 SHA512 8d008eb7b0723c6d8fea007a926e2b5b929d65fcac5c4009ec4cb7e7927af79eb5f5e62c14b4e0d9ce3b310a67155857c0c36649842b0ff259bfb9ea7dae43d4 +DIST thunderbird-128.2.2-pt-BR.xpi 751312 BLAKE2B 532ab4de97a86d7ef08457af3a6254db0c13b35739c3dc43d439d8dbe66ab0496447b4ea2bb90216c73451f716cf3bdcd70639b2a179f65ab6693a99f55f5c7e SHA512 5b9ccc6efffe4d096fe8a011ccf0ed0d75801ba6fbde7448d61d86c67445a81fde037332f962b7a8718f07f15c540ae11584911f007a335f37dd6c370a16b8bf +DIST thunderbird-128.2.2-pt-PT.xpi 746870 BLAKE2B f17c0e3065d028b7c9798d4b0a1f2915817bd51c20780e4884156c6464f3fb3fb26bb44e59285a403287055a4cb8689d08d0d46c363207c4998c1b79f2ca091f SHA512 5d212f4ad1829206c99c269e440142274288470e997b362ffb8a2f22081858d44be8432ea2bedca5f6ca31c02bbd31e0559e8e562bfe83ac4b69eeaa23a4019d +DIST thunderbird-128.2.2-rm.xpi 746779 BLAKE2B 57ed03115b45eeeca524d359915e604766ec1fc6a572cdddf792c81f5683c5211c97cef4466aeb70fdbec11b8b64b163d4b11c0db9e4eba40deb9c512e06407b SHA512 44f8ab9bcf893ef4f6fbfa9c549b7c0dd84e87bb6c8c35fc8257a04b449c19e55c38a3d0e3321e938aaf29dd61d0636384390c8ec20b276755b0a83b70875bfa +DIST thunderbird-128.2.2-ro.xpi 669742 BLAKE2B c8a3351698503cd460a94147ab145eca308a598ce151bfc19d696f5d0b8bf59f91a54c26a338d0c1db88cac673071bad71814d99a583d6d1a0575148b22da410 SHA512 affab7161952ef70aa8f6147e048b9209ab9996de1416e8c645726ceda9ec694a46a95e91fb4da3de7bef95ef9d7f9a2fb5c0e0cc1c20cf440b1b09e4eae8582 +DIST thunderbird-128.2.2-ru.xpi 872245 BLAKE2B 97afe1df85d1f3870ff50af4a2c8756a6ae00b0e21990fe80e0ef3df7d6c65106eb317a5faa8b97c496e7a7230c8d021dd677e957e00caf1de644e8571fa207b SHA512 5fa1e5810cd442a8a95b29c4e1f6e0a5c447d4ac43ca8b3de3cd21aa3ff215e281a7c73ab85309b261274578b99f52b95e60abbda876f434adf91be3860ab2bf +DIST thunderbird-128.2.2-sk.xpi 784168 BLAKE2B 0604012ee5bd5101cad8cac6727c61680993ca307ff49af10fc162d760095453a7c642aa8bb77a13c34fcf28c7e290d286efe4e4104e9d9d83a5aa0f05099ce3 SHA512 028d4c99b393bcd245d02cd0e97c98dcc20bdd153a08afd623de06579d9ff71108997840a757c84c6abab322ed20cc5c87a5dc273823ddc6610d74f268b08241 +DIST thunderbird-128.2.2-sl.xpi 743551 BLAKE2B da17cc1ce9d00f3ed713f0fed9a5825848b008eb359b905b894d2e0d9398c4d678bf329094ba98b0348962bdf87315b3f35917f5c136a1f6b99a53f19f7b1a51 SHA512 c505cc60ea3fe60ef1a0a252e99ef3aec14eed535b181c2f2ba21e607a7c41ec7dd37f9afeae7d7ca2e7ed0486908ee019b7397c3eb1d1ab0ba69a2132950ef1 +DIST thunderbird-128.2.2-sq.xpi 765885 BLAKE2B 0cfa9eb328f260dcad69784cd2d6502d01b5fee740a73022363e770fd1bc06572a1ddeaf308b5381a39d7b391746c8dcd4019d763df6d001a13dbf45d720b9de SHA512 956daefdf678b71adb87fe64e8004382a47e2fcfbebc9552bb0c3d83871347fe77e13bc9dc1a4220c124357bb6121392b58168f12f178c88c0c40009218e6ba5 +DIST thunderbird-128.2.2-sr.xpi 771005 BLAKE2B f7ba13aafe1e6042494650d2b5172bf788e04f3919491d5f19e542f5d4fc6090bc89ea1b89e4cc7fd1370b9194c2799544b3bfabbb88df03ed03782075788d6f SHA512 6813b47cb79ceed6f376238480488f3ef2c388775bcf2cebe77dba4b9af4cfa6205219a3850635eddc9f3a363df65f63435b42e6a3afebe33b1816bdb5b21c15 +DIST thunderbird-128.2.2-sv-SE.xpi 747521 BLAKE2B f6ea783938e5c2cfbf6d0b1c1020b1ed45df1a55655a6886c70b9d24250cf920bf9e95233878ff3e832b9ccdbcb6ec69f7a7a59737de7b908dea21579aa10a4c SHA512 9f93d3180d2b64ab5dc6682a74a9a2d38acc0274733940e51a257a87903e0375093b25e3189673786473f1553047cdfededdf3728266cbb2dfaf52a2dfe6e76e +DIST thunderbird-128.2.2-th.xpi 813953 BLAKE2B 2eca50868dd09e7d8576da9cc5f204fc816a7ef3fd459ea6260e429905e7d6c9768cbd8f7b26817a23d6b64699164c6c604d5d06939c01a9ed743015d83f38bd SHA512 490ece4ddb5ed2155084ee3d2fe54a2d216f5622eb55088b399e92da55ff598836e787a1dffc638122f3c80de0c35214121bd84884d25c51a3b83b3288f77893 +DIST thunderbird-128.2.2-tr.xpi 758165 BLAKE2B 9e502939d4ed61372e0e16df5ee1a30d0c89caccc1edf8a0778baf8f01f1a37dca4408d081332cf74b2c74c683273de070675fc85044704e69fae6991502bb70 SHA512 232e52755661a339650a76b701610cc136c7a7e5b11788afdf470e18ebd13a3befa7464ab073579bf7a7b7b340a82ceb9328df93e8995b2356c87a55b8110a1e +DIST thunderbird-128.2.2-uk.xpi 856053 BLAKE2B 7530213593db5e282dd54e2f5f1f26b982f1a3d01d206676f9f8641c7ecfa54f126e5b095ef6c528482eedb1e949aab5696a67b4883d760c9393d079076a9a45 SHA512 02072a6eeb9f03a71cae1f7ef4de4272aa677657b1cc8ed1c28badc713510c9d53c6029e3647817769fdd79caed735373263d0150c4c5ae6997479cd0291c64e +DIST thunderbird-128.2.2-uz.xpi 592131 BLAKE2B 569538d472409a3ac52a4891c07446220d2d9795c1e2a51afc15604814b19ad3833fb16a7f46958bebd89fb8f47958647f56321105612954216b8c0caa3f7f1b SHA512 415f903c63ffc47a9d6463ac41a2b842164497377fe9ac225875b8f3babb3c798b988ee40b5cd609cc2559eee96c2b19d91e51d8df36381cbdd2a1ecf892ccbb +DIST thunderbird-128.2.2-vi.xpi 787028 BLAKE2B c9fb95cbd3055b58f38d8e166eb64899ac3cfda96fb223dcecf70123b21781d607c5ba552b177f91edcc9af9e378ce799b9497e740b19d5a9e8f4e7b6daec995 SHA512 4cb791209a31f87a481085fe8925b470f51ae4ba357a415bbfb01f974bad4080c61edeaf3805c5544636376ccd85470e26e24c7477a1a6436944b4a2072fd28b +DIST thunderbird-128.2.2-zh-CN.xpi 785327 BLAKE2B 095094bc0b01974406837e776d263b96c85699123f7c5bb6cd9126e5da03c5320eaafac24344205b49a463a8b1729121f73882734aedd723ad43178ba24f0bf8 SHA512 345bba000b277941423af0f3f47763208a565a408c99a6a8ff5619d3d5a91a8c5c18d867d667f6ecdc2f56dad4007ccd2f75cff113bb7eb294f3ee2d9b8d1def +DIST thunderbird-128.2.2-zh-TW.xpi 789780 BLAKE2B 1e1d95617c86fbcc00804dd18dcad0cc1b876ba09a2162696d14075e4814810aadc24e2124b25df935f380171a6dd1a95ec679b28ea509aeeb27d99b3a1e5950 SHA512 0b650d6c00a0dc05119e20b4d072124c98e70f70a7b98f05644e344fe952b8992d9aa5ea0f320e0f13c3c80e07e8a23f3160e4443510c139ebeedf2eb7778d1f +DIST thunderbird-128.2.2esr.source.tar.xz 676994144 BLAKE2B e3eec7d15b4d855376ef1aa9ae2de490134a156f8ca817fbb88d6a942a567692656235ed3bf3cd11e6846b033a4ae56cdfaacde8365ac1d1facb2f41f4abf30b SHA512 6300f3f6d3a907e849a6acf06101d7441680a4eab965955887ac829886d4f2152e49a0ca97255e3cd9de579fea9ff5c03f75c70a361116a66c735face885ab89 diff --git a/mail-client/thunderbird/metadata.xml b/mail-client/thunderbird/metadata.xml index 51a24c64cf6b..27ca960df2ea 100644 --- a/mail-client/thunderbird/metadata.xml +++ b/mail-client/thunderbird/metadata.xml @@ -16,6 +16,8 @@ for faster binaries. This option will double the compile time.</flag> <flag name="pulseaudio">Add sound server support via media-libs/libpulse (may be PulseAudio or Pipewire, or apulse if installed)</flag> + <flag name="rust-extensions">Compile and install experimental rust extensions, that may become + part of Thunderbird some day.</flag> <flag name="sndio">Enable support for the <pkg>media-sound/sndio</pkg> backend</flag> <flag name="system-av1">Use the system-wide <pkg>media-libs/dav1d</pkg> and <pkg>media-libs/libaom</pkg> library instead of bundled.</flag> diff --git a/mail-client/thunderbird/thunderbird-128.2.2.ebuild b/mail-client/thunderbird/thunderbird-128.2.2.ebuild new file mode 100644 index 000000000000..1599513d8ece --- /dev/null +++ b/mail-client/thunderbird/thunderbird-128.2.2.ebuild @@ -0,0 +1,1192 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FIREFOX_PATCHSET="firefox-128esr-patches-03.tar.xz" + +LLVM_COMPAT=( 17 18 ) + +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="ncurses,sqlite,ssl" + +WANT_AUTOCONF="2.1" + +VIRTUALX_REQUIRED="manual" + +MOZ_ESR= + +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="${PN%-bin}" +MOZ_P="${MOZ_PN}-${MOZ_PV}" +MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" +MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" + +inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info llvm-r1 multiprocessing \ + optfeature pax-utils python-any-r1 toolchain-funcs virtualx xdg + +MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}esr" + +if [[ ${PV} == *_rc* ]] ; then + MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}esr-candidates/build${PV##*_rc}" +fi + +PATCH_URIS=( + https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET} +) + +SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}esr.source.tar.xz -> ${MOZ_P_DISTFILES}esr.source.tar.xz + ${PATCH_URIS[@]}" + +DESCRIPTION="Thunderbird Mail Client" +HOMEPAGE="https://www.thunderbird.net/" + +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +SLOT="0" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" + +IUSE="+clang +dbus debug eme-free hardened hwaccel jack libproxy lto +openh264 pgo pulseaudio sndio" +IUSE+=" selinux +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent" +IUSE+=" +system-libvpx system-png +system-webp wayland wifi +X" + +# Thunderbird-only USE flags. +IUSE+=" +rust-extensions +system-librnp" + +REQUIRED_USE="|| ( X wayland ) + debug? ( !system-av1 ) + pgo? ( lto ) + rust-extensions? ( dbus ) + wayland? ( dbus ) + wifi? ( dbus )" + +TB_ONLY_DEPEND="selinux? ( sec-policy/selinux-thunderbird ) + !system-librnp? ( dev-libs/jsoncpp ) + system-librnp? ( >=dev-util/librnp-0.17.1 )" +BDEPEND="${PYTHON_DEPS} + $(llvm_gen_dep ' + sys-devel/clang:${LLVM_SLOT} + sys-devel/llvm:${LLVM_SLOT} + clang? ( + sys-devel/lld:${LLVM_SLOT} + virtual/rust:0/llvm-${LLVM_SLOT} + pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] ) + ) + ') + app-alternatives/awk + app-arch/unzip + app-arch/zip + >=dev-util/cbindgen-0.26.0 + net-libs/nodejs + virtual/pkgconfig + !clang? ( >=virtual/rust-1.76 ) + !elibc_glibc? ( dev-lang/rust ) + amd64? ( >=dev-lang/nasm-2.14 ) + x86? ( >=dev-lang/nasm-2.14 ) + pgo? ( + X? ( + sys-devel/gettext + x11-base/xorg-server[xvfb] + x11-apps/xhost + ) + !X? ( + || ( + gui-wm/tinywl + <gui-libs/wlroots-0.17.3[tinywl(-)] + ) + x11-misc/xkeyboard-config + ) + )" +COMMON_DEPEND="${TB_ONLY_DEPEND} + >=app-accessibility/at-spi2-core-2.46.0:2 + dev-libs/expat + dev-libs/glib:2 + dev-libs/libffi:= + >=dev-libs/nss-3.101 + >=dev-libs/nspr-4.35 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + media-libs/mesa + media-video/ffmpeg + sys-libs/zlib + virtual/freedesktop-icon-theme + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + x11-libs/pango + x11-libs/pixman + dbus? ( sys-apps/dbus ) + jack? ( virtual/jack ) + pulseaudio? ( + || ( + media-libs/libpulse + >=media-sound/apulse-0.1.12-r4[sdk] + ) + ) + libproxy? ( net-libs/libproxy ) + selinux? ( sec-policy/selinux-mozilla ) + sndio? ( >=media-sound/sndio-1.8.0-r1 ) + system-av1? ( + >=media-libs/dav1d-1.0.0:= + >=media-libs/libaom-1.0.0:= + ) + system-harfbuzz? ( + >=media-gfx/graphite2-1.3.13 + >=media-libs/harfbuzz-2.8.1:0= + ) + system-icu? ( >=dev-libs/icu-74.1:= ) + system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= ) + system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] ) + system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) + system-png? ( >=media-libs/libpng-1.6.35:0=[apng] ) + system-webp? ( >=media-libs/libwebp-1.1.0:0= ) + wayland? ( + >=media-libs/libepoxy-1.5.10-r1 + x11-libs/gtk+:3[wayland] + ) + wifi? ( + kernel_linux? ( + || ( + net-misc/networkmanager + net-misc/connman[networkmanager] + ) + sys-apps/dbus + ) + ) + X? ( + virtual/opengl + x11-libs/cairo[X] + x11-libs/gtk+:3[X] + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrandr + x11-libs/libxcb:= + )" +RDEPEND="${COMMON_DEPEND} + jack? ( virtual/jack ) + openh264? ( media-libs/openh264:*[plugin] )" +DEPEND="${COMMON_DEPEND} + X? ( + x11-base/xorg-proto + x11-libs/libICE + x11-libs/libSM + )" + +S="${WORKDIR}/${PN}-${PV%_*}" + +llvm_check_deps() { + 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 use clang && ! tc-ld-is-mold ; 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 + + 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 pgo ; then + if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then + einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing!" >&2 + einfo "Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + fi + fi + + einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 +} + +MOZ_LANGS=( + af ar ast be bg br ca cak cs cy da de dsb + el en-CA en-GB en-US es-AR es-ES es-MX et eu + fi fr fy-NL ga-IE gd gl he hr hsb hu + id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO + pa-IN pl pt-BR pt-PT rm ro ru + sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW +) + +mozilla_set_globals() { + # https://bugs.gentoo.org/587334 + local MOZ_TOO_REGIONALIZED_FOR_L10N=( + fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE + ) + + local lang xflag + for lang in "${MOZ_LANGS[@]}" ; do + # en and en_US are handled internally + if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then + continue + fi + + # strip region subtag if $lang is in the list + if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then + xflag=${lang%%-*} + else + xflag=${lang} + fi + + SRC_URI+=" l10n_${xflag/[_@]/-}? (" + SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" + SRC_URI+=" )" + IUSE+=" l10n_${xflag/[_@]/-}" + done +} +mozilla_set_globals + +moz_clear_vendor_checksums() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -ne 1 ]] ; then + die "${FUNCNAME} requires exact one argument" + fi + + einfo "Clearing cargo checksums for ${1} ..." + + sed -i \ + -e 's/\("files":{\)[^}]*/\1/' \ + "${S}"/third_party/rust/${1}/.cargo-checksum.json || die +} + +moz_install_xpi() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local DESTDIR=${1} + shift + + insinto "${DESTDIR}" + + local emid xpi_file xpi_tmp_dir + for xpi_file in "${@}" ; do + emid= + xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") + + # Unpack XPI + unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die + + # Determine extension ID + if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then + emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") + [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" + elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then + emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") + [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" + else + die "failed to determine extension id" + fi + + einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." + newins "${xpi_file}" "${emid}.xpi" + done +} + +mozconfig_add_options_ac() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local reason=${1} + shift + + local option + for option in ${@} ; do + echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} + done +} + +mozconfig_add_options_mk() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local reason=${1} + shift + + local option + for option in ${@} ; do + echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} + done +} + +mozconfig_use_enable() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 1 ]] ; then + die "${FUNCNAME} requires at least one arguments" + fi + + local flag=$(use_enable "${@}") + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" +} + +mozconfig_use_with() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 1 ]] ; then + die "${FUNCNAME} requires at least one arguments" + fi + + local flag=$(use_with "${@}") + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" +} + +virtwl() { + debug-print-function ${FUNCNAME} "$@" + + [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" + [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" + tinywl -h >/dev/null || die 'tinywl -h failed' + + local VIRTWL VIRTWL_PID + coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } + local -x WAYLAND_DISPLAY + read WAYLAND_DISPLAY <&${VIRTWL[0]} + + debug-print "${FUNCNAME}: $@" + "$@" + local r=$? + + [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" + exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- + return $r +} + +pkg_pretend() { + if [[ ${MERGE_TYPE} != binary ]] ; then + if use pgo ; then + if ! has usersandbox $FEATURES ; then + die "You must enable usersandbox as X server can not run as root!" + fi + fi + + # Ensure we have enough disk space to compile + if use pgo || use lto || use debug ; then + CHECKREQS_DISK_BUILD="13500M" + else + CHECKREQS_DISK_BUILD="6600M" + fi + + check-reqs_pkg_pretend + fi +} + +pkg_setup() { + if [[ ${MERGE_TYPE} != binary ]] ; then + if use pgo ; then + if ! has userpriv ${FEATURES} ; then + eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" + fi + fi + + # Ensure we have enough disk space to compile + if use pgo || use lto || use debug ; then + CHECKREQS_DISK_BUILD="13500M" + else + CHECKREQS_DISK_BUILD="6400M" + fi + + check-reqs_pkg_setup + + llvm-r1_pkg_setup + + if use clang && use lto && tc-ld-is-lld ; 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 + + # Avoid PGO profiling problems due to enviroment leakage + # These should *always* be cleaned up anyway + unset \ + DBUS_SESSION_BUS_ADDRESS \ + DISPLAY \ + ORBIT_SOCKETDIR \ + SESSION_MANAGER \ + XAUTHORITY \ + XDG_CACHE_HOME \ + XDG_SESSION_COOKIE + + # Build system is using /proc/self/oom_score_adj, bug #604394 + addpredict /proc/self/oom_score_adj + + if use pgo ; then + # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure + # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage + # (PORTAGE_SCHEDULING_POLICY) update... + addpredict /proc + + # Clear tons of conditions, since PGO is hardware-dependant. + addpredict /dev + fi + + 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 + + # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then + MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" + fi + + if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then + MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" + fi + + # Mozilla API keys (see https://location.services.mozilla.com/api) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then + MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" + fi + + # Ensure we use C locale when building, bug #746215 + export LC_ALL=C + fi +} + +src_unpack() { + local _lp_dir="${WORKDIR}/language_packs" + local _src_file + + if [[ ! -d "${_lp_dir}" ]] ; then + mkdir "${_lp_dir}" || die + fi + + for _src_file in ${A} ; do + if [[ ${_src_file} == *.xpi ]]; then + cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" + else + unpack ${_src_file} + fi + done +} + +src_prepare() { + if use lto; then + rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die + fi + + # Workaround for bgo#917599 + if has_version ">=dev-libs/icu-74.1" && use system-icu ; then + eapply "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch + fi + rm -v "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch || die + + # Workaround for bgo#915651 on musl + if use elibc_glibc ; then + rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.patch || die + fi + + eapply "${WORKDIR}/firefox-patches" + + # Allow user to apply any additional patches without modifing ebuild + eapply_user + + # Make cargo respect MAKEOPTS + export CARGO_BUILD_JOBS="$(makeopts_jobs)" + + # Workaround for bgo#915651 + if ! use elibc_glibc ; then + if use amd64 ; then + export RUST_TARGET="x86_64-unknown-linux-musl" + elif use x86 ; then + export RUST_TARGET="i686-unknown-linux-musl" + else + die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651" + fi + fi + + # Make LTO respect MAKEOPTS + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/build/moz.configure/lto-pgo.configure || die "Failed sedding multiprocessing.cpu_count" + + # Make ICU respect MAKEOPTS + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/intl/icu_sources_data.py || die "Failed sedding multiprocessing.cpu_count" + + # Respect MAKEOPTS all around (maybe some find+sed is better) + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/python/mozbuild/mozbuild/base.py || die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/third_party/libwebrtc/build/toolchain/get_cpu_count.py || die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/third_party/libwebrtc/build/toolchain/get_concurrent_links.py || + die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/third_party/python/gyp/pylib/gyp/input.py || die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/python/mozbuild/mozbuild/code_analysis/mach_commands.py || die "Failed sedding multiprocessing.cpu_count" + + # sed-in toolchain prefix + sed -i \ + -e "s/objdump/${CHOST}-objdump/" \ + "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py || die "sed failed to set toolchain prefix" + + sed -i \ + -e 's/ccache_stats = None/return None/' \ + "${S}"/python/mozbuild/mozbuild/controller/building.py || die "sed failed to disable ccache stats call" + + einfo "Removing pre-built binaries ..." + + find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die + + # Clear checksums from cargo crates we've manually patched. + # moz_clear_vendor_checksums xyz + + # Create build dir + BUILD_DIR="${WORKDIR}/${PN}_build" + mkdir -p "${BUILD_DIR}" || die + + # Write API keys to disk + echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die + echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die + echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die + + xdg_environment_reset +} + +src_configure() { + # Show flags set at the beginning + einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" + einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" + einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" + einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" + einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" + + local have_switched_compiler= + if use clang; then + # Force clang + einfo "Enforcing the use of clang due to USE=clang ..." + + local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') + [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") + [[ -z ${version_clang} ]] && die "Failed to read clang version!" + + if tc-is-gcc; then + have_switched_compiler=yes + fi + AR=llvm-ar + CC=${CHOST}-clang-${version_clang} + CXX=${CHOST}-clang++-${version_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, + # AS is used in a non-standard way by upstream, #bmo1654031 + export HOST_CC="$(tc-getBUILD_CC)" + export HOST_CXX="$(tc-getBUILD_CXX)" + export AS="$(tc-getCC) -c" + + # Configuration tests expect llvm-readelf output, bug 913130 + READELF="llvm-readelf" + + tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF PKG_CONFIG + + # Pass the correct toolchain paths through cbindgen + if tc-is-cross-compiler ; then + export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" + fi + + # Set MOZILLA_FIVE_HOME + export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + + # python/mach/mach/mixin/process.py fails to detect SHELL + export SHELL="${EPREFIX}/bin/bash" + + # Set state path + export MOZBUILD_STATE_PATH="${BUILD_DIR}" + + # Set MOZCONFIG + export MOZCONFIG="${S}/.mozconfig" + + # Initialize MOZCONFIG + mozconfig_add_options_ac '' --enable-application=comm/mail + mozconfig_add_options_ac '' --enable-project=comm/mail + + # Set Gentoo defaults + mozconfig_add_options_ac 'Gentoo default' \ + --allow-addon-sideload \ + --disable-cargo-incremental \ + --disable-crashreporter \ + --disable-disk-remnant-avoidance \ + --disable-geckodriver \ + --disable-gpsd \ + --disable-install-strip \ + --disable-legacy-profile-creation \ + --disable-parental-controls \ + --disable-strip \ + --disable-tests \ + --disable-updater \ + --disable-valgrind \ + --disable-wmf \ + --enable-js-shell \ + --enable-negotiateauth \ + --enable-new-pass-manager \ + --enable-official-branding \ + --enable-release \ + --enable-system-ffi \ + --enable-system-pixman \ + --enable-system-policies \ + --host="${CBUILD:-${CHOST}}" \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + --prefix="${EPREFIX}/usr" \ + --target="${CHOST}" \ + --without-ccache \ + --without-wasm-sandboxed-libraries \ + --with-intl-api \ + --with-libclang-path="$(llvm-config --libdir)" \ + --with-system-nspr \ + --with-system-nss \ + --with-system-zlib \ + --with-toolchain-prefix="${CHOST}-" \ + --with-unsigned-addon-scopes=app,system \ + --x-includes="${ESYSROOT}/usr/include" \ + --x-libraries="${ESYSROOT}/usr/$(get_libdir)" + + # Set update channel + local update_channel=release + [[ -n ${MOZ_ESR} ]] && update_channel=esr + mozconfig_add_options_ac '' --update-channel=${update_channel} + + if ! use x86 ; then + mozconfig_add_options_ac '' --enable-rust-simd + fi + + # For future keywording: This is currently (97.0) only supported on: + # amd64, arm, arm64 & x86. + # Might want to flip the logic around if Firefox is to support more arches. + # bug 833001, bug 903411#c8 + if use ppc64 || use riscv; then + mozconfig_add_options_ac '' --disable-sandbox + else + mozconfig_add_options_ac '' --enable-sandbox + fi + + # Enable JIT on riscv64 explicitly + # Can be removed once upstream enable it by default in the future. + use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit + + if [[ -s "${S}/api-google.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-safebrowsing-api-keyfile="${S}/api-google.key" + else + einfo "Building without Google API key ..." + fi + + if [[ -s "${S}/api-location.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-location-service-api-keyfile="${S}/api-location.key" + else + einfo "Building without Location API key ..." + fi + + if [[ -s "${S}/api-mozilla.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-mozilla-api-keyfile="${S}/api-mozilla.key" + else + einfo "Building without Mozilla API key ..." + fi + + mozconfig_use_enable rust-extensions thunderbird-rust + + mozconfig_use_with system-av1 + mozconfig_use_with system-harfbuzz + mozconfig_use_with system-harfbuzz system-graphite2 + mozconfig_use_with system-icu + mozconfig_use_with system-jpeg + mozconfig_use_with system-libevent + mozconfig_use_with system-libvpx + mozconfig_use_with system-png + mozconfig_use_with system-webp + + if use system-librnp; then + mozconfig_add_options_ac "+system-librnp" --enable-compile-environment + mozconfig_use_with system-librnp + else + # This controls the backend of the bundled librnp. Choices are "botan" and "openssl". + # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp. + mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan" + fi + + mozconfig_use_enable dbus + mozconfig_use_enable libproxy + + use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme + + if use hardened ; then + mozconfig_add_options_ac "+hardened" --enable-hardening + append-ldflags "-Wl,-z,relro -Wl,-z,now" + + # Increase the FORTIFY_SOURCE value, #910071. + sed -i -e '/-D_FORTIFY_SOURCE=/s:2:3:' "${S}"/build/moz.configure/toolchain.configure || die + fi + + local myaudiobackends="" + use jack && myaudiobackends+="jack," + use sndio && myaudiobackends+="sndio," + use pulseaudio && myaudiobackends+="pulseaudio," + ! use pulseaudio && myaudiobackends+="alsa," + + mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" + + mozconfig_use_enable wifi necko-wifi + + if use X && use wayland ; then + mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland + elif ! use X && use wayland ; then + mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only + else + mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3-x11-only + fi + + # LTO is handled via configure + filter-lto + + if use lto ; then + if use clang ; then + # Upstream only supports lld or mold when using clang. + if tc-ld-is-mold ; then + # mold expects the -flto line from *FLAGS configuration, bgo#923119 + append-ldflags "-flto=thin" + mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold + else + mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld + fi + + mozconfig_add_options_ac '+lto' --enable-lto=cross + + else + # ThinLTO is currently broken, see bmo#1644409. + # mold does not support gcc+lto combination. + mozconfig_add_options_ac '+lto' --enable-lto=full + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd + fi + + if use pgo ; then + mozconfig_add_options_ac '+pgo' MOZ_PGO=1 + + if use clang ; then + # Used in build/pgo/profileserver.py + export LLVM_PROFDATA="llvm-profdata" + fi + fi + else + # Avoid auto-magic on linker + if use clang ; then + # lld is upstream's default + if tc-ld-is-mold ; then + mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold + else + mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld + fi + + else + if tc-ld-is-mold ; then + mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold + else + mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd + fi + fi + fi + + mozconfig_use_enable debug + if use debug ; then + mozconfig_add_options_ac '+debug' --disable-optimize + mozconfig_add_options_ac '+debug' --enable-jemalloc + mozconfig_add_options_ac '+debug' --enable-real-time-tracing + else + mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing + + if is-flag '-g*' ; then + if use clang ; then + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') + else + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols + fi + else + mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols + fi + + if is-flag '-O0' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 + elif is-flag '-O4' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 + elif is-flag '-O3' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 + elif is-flag '-O1' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 + elif is-flag '-Os' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os + else + mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 + fi + fi + + # Debug flag was handled via configure + filter-flags '-g*' + + # Optimization flag was handled via configure + filter-flags '-O*' + + # elf-hack + # Filter "-z,pack-relative-relocs" and let the build system handle it instead. + if use amd64 || use x86 ; then + filter-flags "-z,pack-relative-relocs" + + if tc-ld-is-mold ; then + # relr-elf-hack is currently broken with mold, bgo#916259 + mozconfig_add_options_ac 'disable elf-hack with mold linker' --disable-elf-hack + else + mozconfig_add_options_ac 'relr elf-hack' --enable-elf-hack=relr + fi + elif use ppc64 || use riscv ; then + # '--disable-elf-hack' is not recognized on ppc64/riscv, + # see bgo #917049, #930046 + :; + else + mozconfig_add_options_ac 'disable elf-hack on non-supported arches' --disable-elf-hack + fi + + if ! use elibc_glibc; then + mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc + fi + + # System-av1 fix + use system-av1 && append-ldflags "-Wl,--undefined-version" + + # Allow elfhack to work in combination with unstripped binaries + # when they would normally be larger than 2GiB. + append-ldflags "-Wl,--compress-debug-sections=zlib" + + # Make revdep-rebuild.sh happy; Also required for musl + append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags + + # Pass $MAKEOPTS to build system + export MOZ_MAKE_FLAGS="${MAKEOPTS}" + + # Use system's Python environment + export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach + + export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" + + # Disable notification when build system has finished + export MOZ_NOSPAM=1 + + # Portage sets XARGS environment variable to "xargs -r" by default which + # breaks build system's check_prog() function which doesn't support arguments + mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" + + # Set build dir + mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" + + # Show flags we will use + einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" + einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" + einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" + einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" + einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" + + # Handle EXTRA_CONF and show summary + local ac opt hash reason + + # Apply EXTRA_ECONF entries to $MOZCONFIG + if [[ -n ${EXTRA_ECONF} ]] ; then + IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} + for opt in "${ac[@]}"; do + mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} + done + fi + + echo + echo "==========================================================" + echo "Building ${PF} with the following configuration" + grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do + [[ -z ${hash} || ${hash} == \# ]] \ + || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" + printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" + done + echo "==========================================================" + echo + + ./mach configure || die +} + +src_compile() { + local virtx_cmd= + + if tc-ld-is-mold && use lto; then + # increase ulimit with mold+lto, bugs #892641, #907485 + if ! ulimit -n 16384 1>/dev/null 2>&1 ; then + ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." + ewarn "Please see bugs #892641 & #907485." + else + ulimit -n 16384 + fi + fi + + if use pgo; then + # Reset and cleanup environment variables used by GNOME/XDG + gnome2_environment_reset + + addpredict /root + + if ! use X; then + virtx_cmd=virtwl + else + virtx_cmd=virtx + fi + fi + + if ! use X; then + local -x GDK_BACKEND=wayland + else + local -x GDK_BACKEND=x11 + fi + + ${virtx_cmd} ./mach build --verbose || die +} + +src_install() { + # xpcshell is getting called during install + pax-mark m \ + "${BUILD_DIR}"/dist/bin/xpcshell \ + "${BUILD_DIR}"/dist/bin/${PN} \ + "${BUILD_DIR}"/dist/bin/plugin-container + + DESTDIR="${D}" ./mach install || die + + # Upstream cannot ship symlink but we can (bmo#658850) + rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die + dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin + + # Don't install llvm-symbolizer from sys-devel/llvm package + if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then + rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die + fi + + # Install policy (currently only used to disable application updates) + insinto "${MOZILLA_FIVE_HOME}/distribution" + newins "${FILESDIR}"/distribution.ini distribution.ini + newins "${FILESDIR}"/disable-auto-update.policy.json policies.json + + # Install system-wide preferences + local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref" + insinto "${PREFS_DIR}" + newins "${FILESDIR}"/gentoo-default-prefs-r1.js gentoo-prefs.js + + local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" + + # Force hwaccel prefs if USE=hwaccel is enabled + if use hwaccel ; then + cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ + >>"${GENTOO_PREFS}" \ + || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" + + if use wayland; then + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs" + pref("gfx.x11-egl.force-enabled", false); + EOF + else + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs" + pref("gfx.x11-egl.force-enabled", true); + EOF + fi + fi + + # Set dictionary path to use system hunspell + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" + pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); + EOF + + # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it + if use system-harfbuzz ; then + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" + sticky_pref("gfx.font_rendering.graphite.enabled", true); + EOF + fi + + # Install language packs + local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) + if [[ -n "${langpacks}" ]] ; then + moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" + fi + + # Install icons + local icon_srcdir="${S}/comm/mail/branding/thunderbird" + local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg" + + insinto /usr/share/icons/hicolor/symbolic/apps + newins "${icon_symbolic_file}" ${PN}-symbolic.svg + + local icon size + for icon in "${icon_srcdir}"/default*.png ; do + size=${icon%.png} + size=${size##*/default} + + if [[ ${size} -eq 48 ]] ; then + newicon "${icon}" ${PN}.png + fi + + newicon -s ${size} "${icon}" ${PN}.png + done + + # Install menu + local app_name="Mozilla ${MOZ_PN^}" + local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" + local desktop_filename="${PN}.desktop" + local exec_command="${PN}" + local icon="${PN}" + local use_wayland="false" + + if use wayland ; then + use_wayland="true" + fi + + cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die + + sed -i \ + -e "s:@NAME@:${app_name}:" \ + -e "s:@EXEC@:${exec_command}:" \ + -e "s:@ICON@:${icon}:" \ + "${WORKDIR}/${PN}.desktop-template" || die + + newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" + + rm "${WORKDIR}/${PN}.desktop-template" || die + + # Install wrapper script + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" + newbin "${FILESDIR}/${PN}-r1.sh" ${PN} + + # Update wrapper + sed -i \ + -e "s:@PREFIX@:${EPREFIX}/usr:" \ + -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ + -e "s:@APULSELIB_DIR@:${apulselib}:" \ + -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ + "${ED}/usr/bin/${PN}" || die +} + +pkg_preinst() { + xdg_pkg_preinst + + # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse + # does not need to be forced into the LD_LIBRARY_PATH + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then + einfo "APULSE found; Generating library symlinks for sound support ..." + local lib + pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die + for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do + # A quickpkg rolled by hand will grab symlinks as part of the package, + # so we need to avoid creating them if they already exist. + if [[ ! -L ${lib##*/} ]] ; then + ln -s "${lib}" ${lib##*/} || die + fi + done + popd &>/dev/null || die + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then + elog "Apulse was detected at merge time on this system and so it will always be" + elog "used for sound. If you wish to use pulseaudio instead please unmerge" + elog "media-sound/apulse." + elog + fi + + optfeature_header "Optional programs for extra features:" + optfeature "desktop notifications" x11-libs/libnotify + optfeature "encrypted chat support" net-libs/libotr + optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas +} diff --git a/mail-mta/postfix/Manifest b/mail-mta/postfix/Manifest index b3142fdb9f1c..f633436fa520 100644 --- a/mail-mta/postfix/Manifest +++ b/mail-mta/postfix/Manifest @@ -1,4 +1,4 @@ -DIST postfix-3.10-20240902.tar.gz 4963467 BLAKE2B 283d1d5e5148878c73b9eb94e527760680d06c3fde3c07c26f2181ad329e7e10d7fa031caed783488d099725e8d08fb8fa9336579cb7c3494d504b4932fa5b88 SHA512 7fd7e5926e6ac2cc47c625fe0bb8611cfa3ee051d6748991dde9d86f1a2e1e9c6e7bb18c934fffa0ab785172bd831f0fc016ebbe627dc30a691e60602cab9568 +DIST postfix-3.10-20240917.tar.gz 4960629 BLAKE2B e89dbfb0a2e535c176d2e1f5961988113b9bd4f2269d4b21e11aa05c2db96555a4bd51d31ba81083db220abc3c92c8b2527a29b4aa799c891a895042577b06a1 SHA512 6cb3ed2bc964858df04bc022f46c7d5ad767c745c73e6ab8a5459152e52313204c7fe58090769c5cf301d48ce31af18b725afa426a7fd2c22d122b6772c825c2 DIST postfix-3.8.5.tar.gz 4871284 BLAKE2B 0de999c47a4130eb3418ec60b23c10be405b9bc4b2a6022671f9dc4713256d2b81d3b43f01d89e02d2593f87109dcde366b0265eb0cb13cb3118d0e60e36b48b SHA512 26005da5750e7af742f4fc7596ae8320467176e069546c3487418c663b54f56734b4a6541665b8d72d94df2e0fd4f68a2bcc44c50a6d950334d5a5fb2293dff4 DIST postfix-3.8.6.tar.gz 4873054 BLAKE2B eda349dbf7fe45636fbd68991dba9f099a41dd402f7d58eb71ae881b5889889e5fd29e42e2492ab2af4d7febae1922cb3513b740b21e97f12deb44b5927a3c3d SHA512 2b227bb6b57e4cf2d727a23762b161f2328959faa4683d63b35543701c3e954be552537eaa14a899c65ec4856d9f91b0398337088a6e2b48c0446fd406be8de4 DIST postfix-3.9.0.tar.gz 4953133 BLAKE2B e07a525d9cbea43d3ed11f3d672452cf94f88ca7bbaf3c3254bf5be4ef675a1797a5fff2444c0db60c6eb53e43734a388a91faed72bb2fb4e3e5a353535602b0 SHA512 46faaf529a6d2edc5ea747ee0d73a028f7061a923da0ea4b1e1828d935b15f5782d83f7a8472e7c74b45ea0e96666c871efd352934bead28a88ddd3561ade324 diff --git a/mail-mta/postfix/postfix-3.10_pre20240902.ebuild b/mail-mta/postfix/postfix-3.10_pre20240917.ebuild index 7636e785ebfc..f9aa172eb2af 100644 --- a/mail-mta/postfix/postfix-3.10_pre20240902.ebuild +++ b/mail-mta/postfix/postfix-3.10_pre20240917.ebuild @@ -32,7 +32,7 @@ DEPEND=" ldap? ( net-nds/openldap:= ) ldap-bind? ( net-nds/openldap:=[sasl] ) lmdb? ( >=dev-db/lmdb-0.9.11:= ) - mongodb? ( dev-libs/mongo-c-driver dev-libs/libbson ) + mongodb? ( >=dev-libs/mongo-c-driver-1.23.0 >=dev-libs/libbson-1.23.0 ) mysql? ( dev-db/mysql-connector-c:0= ) nis? ( net-libs/libnsl:= ) pam? ( sys-libs/pam ) diff --git a/mate-extra/mate-utils/Manifest b/mate-extra/mate-utils/Manifest index e5fe81a79e58..9e34ebccc993 100644 --- a/mate-extra/mate-utils/Manifest +++ b/mate-extra/mate-utils/Manifest @@ -1,3 +1 @@ -DIST mate-utils-1.26.0.tar.xz 7984892 BLAKE2B 9785ecc232f06241bfc389550226d0a099a543c91b9c131e1f2b8998dccd4152c4c056070b10dcd3b98f4d59be87304b999998a10192257aaa682834f6d544e5 SHA512 c8752f6b43a836adc647ec8a9eef4fcea782914994d27ee8491406188da584aa98244d0ba402005beecc293d1b6e50a9ed5339467011e05f301a6b98c2374b91 -DIST mate-utils-1.26.1.tar.xz 8022244 BLAKE2B 73bcaae2fae9c9eafa8a9236d6ce73b46f7d013bad02dd6a9925acd4a698277b20044d45a884108bbdd71093589c090a8293e52e354de0a1c167f71845b2d10c SHA512 b8ec7b510ff872a0427e074ee09824e90ad62fe76ab1dac038ecbe86fd361b15acf57769e58df2c8c9c6acb57d9f1cd0718d178a2a2d1262de1476956d446dd3 DIST mate-utils-1.28.0.tar.xz 7986440 BLAKE2B dadcbeffb35cb31629fdc1f142c5734cd5f3c72eb38b37d699a99ab1d4cc13a0d018ba85a6de743a40fef2ef75fa5f6aad88893d3958e5a894dae9926ab13459 SHA512 bf64e0458bc60ebcda219201bb552239503cfddf576ebfba957d4d73ed69766d003fa7af8df9a271a795c6eb2db268a58a97b4251f9528d261edb98a4e94c72a diff --git a/mate-extra/mate-utils/mate-utils-1.26.0.ebuild b/mate-extra/mate-utils/mate-utils-1.26.0.ebuild deleted file mode 100644 index c13a05662b68..000000000000 --- a/mate-extra/mate-utils/mate-utils-1.26.0.ebuild +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -MATE_LA_PUNT="yes" - -inherit mate - -if [[ ${PV} != 9999 ]]; then - KEYWORDS="amd64 ~arm ~arm64 ~loong ~riscv x86" -fi - -DESCRIPTION="Utilities for the MATE desktop" -LICENSE="FDL-1.1+ GPL-2+ GPL-3+ LGPL-2+" -SLOT="0" - -IUSE="X applet debug ipv6 nls test udisks" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - >=app-accessibility/at-spi2-core-2.46.0 - >=dev-libs/glib-2.50:2 - >=gnome-base/libgtop-2.12:2= - >=media-libs/libcanberra-0.4[gtk3] - sys-libs/zlib - x11-libs/cairo - x11-libs/gdk-pixbuf:2 - >=x11-libs/gtk+-3.22:3 - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXext - x11-libs/pango - applet? ( >=mate-base/mate-panel-1.17.0 ) - udisks? ( >=sys-fs/udisks-1.90.0:2 ) -" - -RDEPEND="${COMMON_DEPEND} - mate-base/mate-desktop - virtual/libintl -" - -BDEPEND="${COMMON_DEPEND} - app-text/rarian - >=app-text/scrollkeeper-dtd-1:1.0 - app-text/yelp-tools - dev-libs/libxml2 - dev-util/glib-utils - dev-util/gtk-doc - dev-build/gtk-doc-am - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - x11-base/xorg-proto -" - -src_prepare() { - # Make apps visible in all DEs. - LC_ALL=C find . -iname '*.desktop.in*' -exec \ - sed -e '/OnlyShowIn/d' -i {} + || die - - mate_src_prepare -} - -src_configure() { - mate_src_configure \ - --enable-zlib \ - --enable-debug=$(usex debug yes minimum) \ - $(use_with X x) \ - $(use_enable applet gdict-applet) \ - $(use_enable ipv6) \ - $(use_enable nls) \ - $(use_enable udisks disk_image_mounter) -} diff --git a/mate-extra/mate-utils/mate-utils-1.26.1.ebuild b/mate-extra/mate-utils/mate-utils-1.26.1.ebuild deleted file mode 100644 index 1325b07f8579..000000000000 --- a/mate-extra/mate-utils/mate-utils-1.26.1.ebuild +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -MATE_LA_PUNT="yes" - -inherit mate - -if [[ ${PV} != 9999 ]]; then - KEYWORDS="amd64 ~arm ~arm64 ~loong ~riscv x86" -fi - -DESCRIPTION="Utilities for the MATE desktop" -LICENSE="FDL-1.1+ GPL-2+ GPL-3+ LGPL-2+" -SLOT="0" - -IUSE="X applet debug ipv6 nls test udisks" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - >=app-accessibility/at-spi2-core-2.46.0 - >=dev-libs/glib-2.50:2 - >=gnome-base/libgtop-2.12:2= - >=media-libs/libcanberra-0.4[gtk3] - sys-libs/zlib - x11-libs/cairo - x11-libs/gdk-pixbuf:2 - >=x11-libs/gtk+-3.22:3 - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXext - x11-libs/pango - applet? ( >=mate-base/mate-panel-1.17.0 ) - udisks? ( >=sys-fs/udisks-1.90.0:2 ) -" - -RDEPEND="${COMMON_DEPEND} - mate-base/mate-desktop - virtual/libintl -" - -BDEPEND="${COMMON_DEPEND} - app-text/rarian - >=app-text/scrollkeeper-dtd-1:1.0 - app-text/yelp-tools - dev-libs/libxml2 - dev-util/glib-utils - dev-util/gtk-doc - dev-build/gtk-doc-am - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - x11-base/xorg-proto -" - -src_prepare() { - # Make apps visible in all DEs. - LC_ALL=C find . -iname '*.desktop.in*' -exec \ - sed -e '/OnlyShowIn/d' -i {} + || die - - mate_src_prepare -} - -src_configure() { - mate_src_configure \ - --enable-zlib \ - --enable-debug=$(usex debug yes minimum) \ - $(use_with X x) \ - $(use_enable applet gdict-applet) \ - $(use_enable ipv6) \ - $(use_enable nls) \ - $(use_enable udisks disk_image_mounter) -} diff --git a/media-gfx/graphviz/graphviz-12.0.0-r100.ebuild b/media-gfx/graphviz/graphviz-12.0.0-r100.ebuild new file mode 100644 index 000000000000..d66128a9fbcf --- /dev/null +++ b/media-gfx/graphviz/graphviz-12.0.0-r100.ebuild @@ -0,0 +1,230 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +PYTHON_COMPAT=( python3_{10..13} ) +inherit guile-single libtool python-single-r1 + +DESCRIPTION="Open Source Graph Visualization Software" +HOMEPAGE="https://www.graphviz.org/ https://gitlab.com/graphviz/graphviz/" +# Unfortunately upstream uses an "artifact" store for the pre-generated +# tarball now, which makes predictable URLs impossible. +SRC_URI="https://gitlab.com/api/v4/projects/4207231/packages/generic/graphviz-releases/${PV}/${P}.tar.xz" + +LICENSE="CPL-1.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="+cairo devil doc examples gtk2 gts guile lasi nls pdf perl postscript python qt5 ruby svg tcl webp X" + +REQUIRED_USE=" + !cairo? ( !X !gtk2 !postscript !lasi ) + guile? ( ${GUILE_REQUIRED_USE} ) + pdf? ( cairo ) + python? ( ${PYTHON_REQUIRED_USE} )" + +# Requires ksh, tests against installed package, missing files and directory +RESTRICT="test" + +RDEPEND=" + >=dev-libs/expat-2 + >=dev-libs/glib-2.11.1:2 + dev-libs/libltdl + >=media-libs/freetype-2.1.10 + >=media-libs/gd-2.0.34:=[fontconfig,jpeg,png,truetype,zlib] + media-libs/libjpeg-turbo:= + >=media-libs/libpng-1.2:= + sys-libs/zlib + virtual/libiconv + cairo? ( + >=x11-libs/cairo-1.1.10[svg(+)] + >=x11-libs/pango-1.12 + ) + devil? ( media-libs/devil[png,jpeg] ) + gtk2? ( + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:2 + ) + gts? ( sci-libs/gts ) + guile? ( ${GUILE_DEPS} ) + lasi? ( media-libs/lasi ) + pdf? ( app-text/poppler ) + perl? ( dev-lang/perl:= ) + postscript? ( app-text/ghostscript-gpl ) + python? ( ${PYTHON_DEPS} ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtprintsupport:5 + dev-qt/qtwidgets:5 + ) + ruby? ( dev-lang/ruby:* ) + svg? ( gnome-base/librsvg ) + tcl? ( >=dev-lang/tcl-8.3:= ) + webp? ( media-libs/libwebp:= ) + X? ( x11-libs/libX11 )" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto )" +BDEPEND=" + app-alternatives/lex + dev-build/libtool + virtual/pkgconfig + doc? ( + app-text/ghostscript-gpl + sys-apps/groff + ) + guile? ( + dev-lang/swig + ${GUILE_DEPS} + ) + nls? ( >=sys-devel/gettext-0.14.5 ) + perl? ( dev-lang/swig ) + python? ( dev-lang/swig ) + ruby? ( dev-lang/swig ) + tcl? ( dev-lang/swig )" + +# Dependency description / Maintainer info: + +# Rendering is done via the following plugins (/plugins): +# - core, dot_layout, neato_layout, gd , dot +# the ones which are always compiled in, depend on zlib, gd +# - gtk +# Directly depends on gtk-2. +# needs 'pangocairo' enabled in graphviz configuration +# gtk-2 depends on pango, cairo and libX11 directly. +# - gdk-pixbuf +# Directly depends on gtk-2 and gdk-pixbuf. +# needs 'pangocairo' enabled in graphviz configuration +# - ming +# flash plugin via -Tswf requires media-libs/ming-0.4. Disabled as it's +# incomplete. +# - cairo/pango: +# Needs pango for text layout, uses cairo methods to draw stuff +# - xlib: +# needs cairo+pango, +# can make use of gnomeui and inotify support (??? unsure), +# needs libXaw for UI +# UI also links directly against libX11, libXmu, and libXt +# and uses libXpm if available so we make sure it always is + +# There can be swig-generated bindings for the following languages (/tclpkg/gv): +# - c-sharp (disabled) +# - scheme (enabled via guile) ... no longer broken on ~x86 +# - go (disabled) +# - io (disabled) +# - lua (enabled via lua) +# - ocaml (enabled via ocaml) +# - perl (enabled via perl) *1 +# - php (enabled via php) *2 +# - python (enabled via python) *1 +# - ruby (enabled via ruby) *1 +# - tcl (enabled via tcl) +# *1 = The ${P}-bindings.patch takes care that those bindings are installed to the right location +# *2 = Those bindings don't build because the paths for the headers/libs aren't +# detected correctly and/or the options passed to swig are wrong (-php instead of -php4/5) + +# There are several other tools in /tclpkg: +# gdtclft, tcldot, tclhandle, tclpathplan, tclstubs ; enabled with: --with-tcl +# tkspline, tkstubs ; enabled with: --with-tk + +# And the commands (/cmd): +# - dot, gvedit, gvpr, smyrna, tools/* :) +# sci-libs/gts can be used for some of these +# - gvedit (via 'qt5'): +# based on ./configure it needs qt-core and qt-gui only +# - smyrna : experimental opengl front-end (via 'smyrna') +# currently disabled -- it segfaults a lot +# needs x11-libs/gtkglext, gnome-base/libglade, media-libs/freeglut +# sci-libs/gts, x11-libs/gtk. Also needs 'gtk','glade','glut','gts' and 'png' +# with flags enabled at configure time + +pkg_setup() { + use guile && guile-single_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + if use guile; then + guile-single_src_prepare + else + default + fi + elibtoolize +} + +src_configure() { + local myconf=( + # Speeds up the libltdl configure + --cache-file="${S}"/config.cache + --enable-ltdl + $(use_enable doc man-pdfs) + $(use_with cairo pangocairo) + $(use_with examples demos '$(docdir)/examples') + $(use_with devil) + $(use_with gtk2 gdk) + $(use_with gtk2 gdk-pixbuf) + $(use_with gtk2) + $(use_with gts) + $(use_with qt5 qt) + $(use_with lasi) + $(use_with pdf poppler) + $(use_with postscript ghostscript) + $(use_with svg rsvg) + $(use_with webp) + $(use_with X x) + --with-digcola + --with-freetype2 + --with-ipsepcola + --with-libgd + --with-sfdp + --without-ming + # New/experimental features, to be tested, disable for now + --without-ipsepcola + --without-smyrna + # Bindings + $(use_enable guile) + $(use_enable perl) + $(use_enable python python3) + $(use_enable ruby) + $(use_enable tcl) + --disable-go + --disable-lua + --disable-java + --disable-ocaml + --disable-php + --disable-python + --disable-r + --disable-sharp + # libtool file collision, bug #276609 + --without-included-ltdl + --disable-ltdl-install + QMAKE=$(usev qt5 qmake5) + ) + # XXX: Temporary bash for bug #926600. It's been reverted upstream + # on master already: + # https://gitlab.com/graphviz/graphviz/-/merge_requests/3636 + CONFIG_SHELL="${BROOT}"/bin/bash econf "${myconf[@]}" +} + +src_install() { + default + + find "${ED}" -name '*.la' -delete || die + + use guile && guile_unstrip_ccache + + use python && python_optimize \ + "${D}"$(python_get_sitedir) \ + "${ED}"/usr/$(get_libdir)/graphviz/python3 +} + +pkg_postinst() { + # We need to register all plugins before they become usable + dot -c || die +} + +pkg_postrm() { + # Remove cruft, bug #547344 + rm -rf "${EROOT}"/usr/$(get_libdir)/graphviz/config{,6} || die +} diff --git a/media-gfx/hugin/hugin-9999.ebuild b/media-gfx/hugin/hugin-9999.ebuild index aec868af9672..db8dffa1c308 100644 --- a/media-gfx/hugin/hugin-9999.ebuild +++ b/media-gfx/hugin/hugin-9999.ebuild @@ -1,10 +1,10 @@ # Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 WX_GTK_VER="3.2-gtk3" -PYTHON_COMPAT=( python3_{9..12} ) +PYTHON_COMPAT=( python3_{10..13} ) inherit mercurial python-single-r1 wxwidgets cmake xdg @@ -14,6 +14,8 @@ SRC_URI="" EHG_REPO_URI="http://hg.code.sf.net/p/hugin/hugin" EHG_PROJECT="${PN}-${PN}" +S=${WORKDIR}/${PN}-$(ver_cut 1-2).0 + LICENSE="GPL-2+ BSD BSD-2 MIT wxWinLL-3 ZLIB FDL-1.2" SLOT="0" KEYWORDS="" @@ -56,8 +58,6 @@ REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" DOCS=( authors.txt README TODO ) -S=${WORKDIR}/${PN}-$(ver_cut 1-2).0 - pkg_setup() { use python && python-single-r1_pkg_setup setup-wxwidgets @@ -71,10 +71,6 @@ src_configure() { local mycmakeargs=( -DBUILD_HSI=$(usex python) -DENABLE_LAPACK=$(usex lapack) - # Temporary workaround for bug #833443. Can be dropped when - # we switch to wxgtk-3.2, but complications for that remain - # w/ egl+wayland. - -DUSE_GDKBACKEND_X11=on ) cmake_src_configure } diff --git a/media-gfx/kgraphviewer/kgraphviewer-24.08.1.ebuild b/media-gfx/kgraphviewer/kgraphviewer-24.08.1.ebuild index 4f98c56730e6..93e003b07367 100644 --- a/media-gfx/kgraphviewer/kgraphviewer-24.08.1.ebuild +++ b/media-gfx/kgraphviewer/kgraphviewer-24.08.1.ebuild @@ -13,7 +13,7 @@ HOMEPAGE="https://apps.kde.org/kgraphviewer/" LICENSE="GPL-2 GPL-2+ LGPL-2+ LGPL-2.1+ handbook? ( FDL-1.2 )" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +KEYWORDS="amd64 ~arm64 ~riscv ~x86" IUSE="" RDEPEND=" diff --git a/media-gfx/prusaslicer/Manifest b/media-gfx/prusaslicer/Manifest index 1d0a10b8a015..a1d14e59d466 100644 --- a/media-gfx/prusaslicer/Manifest +++ b/media-gfx/prusaslicer/Manifest @@ -1 +1,2 @@ DIST prusaslicer-2.8.0.tar.gz 69806919 BLAKE2B b87c63ae411814dbffc8ae96c243bf06018d600db732ef32f7c766ce6bdf156b0aca6da90868482f39b9c6421c6a386bccc9f69e23218dadc07f1bcdb21b9793 SHA512 d98b43e9e1a6da9cbab46b2564da02fc0f8521d84a4df915d0ffd0878ee1a25afebe7078e38b124ec8565782379c51a7f9564462652ef1a7d9819d29297c1937 +DIST prusaslicer-2.8.1.tar.gz 69409077 BLAKE2B dd3ee810ea00d03f1790386d1fe1fd044c038429700cd33f21299abdf5def12902f7a07c23aa3d2a6cfc5e18d1e2534080889d4a33beefb493a504978a742453 SHA512 0471fa579a494d66e6b49c0bc1a9fa91f3a5f9147d8b7fa8133c6f03391f8daddddb19ed222d1be44f6f22e2de3021f3fb839331e3c3ccdf5643caa8a61d6912 diff --git a/media-gfx/prusaslicer/files/prusaslicer-2.8.1-fstream.patch b/media-gfx/prusaslicer/files/prusaslicer-2.8.1-fstream.patch index b4a92de67ab6..f550c53d3f42 100644 --- a/media-gfx/prusaslicer/files/prusaslicer-2.8.1-fstream.patch +++ b/media-gfx/prusaslicer/files/prusaslicer-2.8.1-fstream.patch @@ -11,7 +11,7 @@ --- a/src/slic3r/GUI/PresetArchiveDatabase.cpp +++ b/src/slic3r/GUI/PresetArchiveDatabase.cpp -@@ -514,7 +514,7 @@ void PresetArchiveDatabase::load_app_manifest_json() +@@ -515,7 +515,7 @@ void PresetArchiveDatabase::load_app_manifest_json() if (!fs::exists(path, ec) || ec) { copy_initial_manifest(); } @@ -20,7 +20,7 @@ std::string data; if (file.is_open()) { std::string line; -@@ -681,7 +681,7 @@ void PresetArchiveDatabase::save_app_manifest_json() const +@@ -682,7 +682,7 @@ void PresetArchiveDatabase::save_app_manifest_json() const data += "]"; std::string path = get_stored_manifest_path().string(); @@ -29,16 +29,9 @@ if (file.is_open()) { file << data; file.close(); -@@ -916,4 +916,4 @@ void PresetArchiveDatabase::sync_blocking() - read_server_manifest(std::move(manifest)); - } - --}} // Slic3r::GUI -\ No newline at end of file -+}} // Slic3r::GUI --- a/src/slic3r/Utils/Http.cpp +++ b/src/slic3r/Utils/Http.cpp -@@ -301,7 +301,7 @@ void Http::priv::form_add_file(const char *name, const fs::path &path, const cha +@@ -302,7 +302,7 @@ void Http::priv::form_add_file(const char *name, const fs::path &path, const cha //FIXME may throw! Is the caller aware of it? void Http::priv::set_post_body(const fs::path &path) { diff --git a/media-gfx/prusaslicer/prusaslicer-2.8.1.ebuild b/media-gfx/prusaslicer/prusaslicer-2.8.1.ebuild new file mode 100644 index 000000000000..fbf13e9d7d66 --- /dev/null +++ b/media-gfx/prusaslicer/prusaslicer-2.8.1.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +WX_GTK_VER="3.2-gtk3" +MY_PN="PrusaSlicer" +MY_PV="$(ver_rs 3 -)" + +inherit cmake wxwidgets xdg + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/prusa3d/prusaslicer.git" +else + SRC_URI="https://github.com/prusa3d/PrusaSlicer/archive/refs/tags/version_${MY_PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm64 ~x86" + S="${WORKDIR}/${MY_PN}-version_${MY_PV}" +fi + +DESCRIPTION="A mesh slicer to generate G-code for fused-filament-fabrication (3D printers)" +HOMEPAGE="https://www.prusa3d.com/prusaslicer/" + +LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT" +SLOT="0" +IUSE="test" + +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-cpp/eigen:3 + dev-cpp/tbb:= + dev-libs/boost:=[nls] + dev-libs/cereal + dev-libs/expat + dev-libs/glib:2 + dev-libs/gmp:= + dev-libs/mpfr:= + media-gfx/openvdb:= + media-gfx/libbgcode + net-misc/curl[adns] + media-libs/glew:0= + media-libs/libjpeg-turbo:= + media-libs/libpng:0= + media-libs/qhull:= + sci-libs/libigl + sci-libs/nlopt + sci-libs/opencascade:= + sci-mathematics/cgal:= + sys-apps/dbus + sys-libs/zlib:= + virtual/opengl + x11-libs/gtk+:3 + >=x11-libs/wxGTK-3.2.2.1-r3:${WX_GTK_VER}[X,opengl,webkit] + media-libs/nanosvg:= +" +DEPEND="${RDEPEND} + media-libs/qhull[static-libs] + test? ( =dev-cpp/catch-2* ) +" + +PATCHES=( + "${FILESDIR}/${PN}-2.6.0-dont-force-link-to-wayland-and-x11.patch" + "${FILESDIR}/${PN}-2.8.0-missing-includes.patch" + "${FILESDIR}/${PN}-2.8.0-wxwidgets-3.2.4.patch" + "${FILESDIR}/${PN}-2.8.1-fixed-linking.patch" + "${FILESDIR}/${PN}-2.8.1-cgal-6.0.patch" + "${FILESDIR}/${PN}-2.8.1-fstream.patch" +) + +src_prepare() { + if has_version ">=sci-libs/opencascade-7.8.0"; then + eapply "${FILESDIR}/prusaslicer-2.8.1-opencascade-7.8.0.patch" + fi + + sed -i -e 's/PrusaSlicer-${SLIC3R_VERSION}+UNKNOWN/PrusaSlicer-${SLIC3R_VERSION}+Gentoo/g' version.inc || die + + sed -i -e 's/find_package(OpenCASCADE 7.6.[0-9] REQUIRED)/find_package(OpenCASCADE REQUIRED)/g' \ + src/occt_wrapper/CMakeLists.txt || die + + find . -type f \( -name '*.cpp' -o -name '*.h' -o -name '*.hpp' \) -exec \ + sed -i 's|#include <Eigen/|#include <eigen3/Eigen/|g; s|#include <unsupported/Eigen/|#include <eigen3/unsupported/Eigen/|g' {} + || die + + cmake_src_prepare +} + +src_configure() { + CMAKE_BUILD_TYPE="Release" + + setup-wxwidgets + + local mycmakeargs=( + -DOPENVDB_FIND_MODULE_PATH="/usr/$(get_libdir)/cmake/OpenVDB" + + -DSLIC3R_BUILD_TESTS=$(usex test) + -DSLIC3R_FHS=ON + -DSLIC3R_GTK=3 + -DSLIC3R_GUI=ON + -DSLIC3R_PCH=OFF + -DSLIC3R_STATIC=OFF + -DSLIC3R_WX_STABLE=ON + -Wno-dev + ) + + cmake_src_configure +} + +src_test() { + CMAKE_SKIP_TESTS=( + "^libslic3r_tests$" + ) + cmake_src_test +} diff --git a/media-libs/harfbuzz/harfbuzz-9.0.0.ebuild b/media-libs/harfbuzz/harfbuzz-9.0.0.ebuild index 93db0a4e76b5..70070d39e784 100644 --- a/media-libs/harfbuzz/harfbuzz-9.0.0.ebuild +++ b/media-libs/harfbuzz/harfbuzz-9.0.0.ebuild @@ -15,7 +15,7 @@ if [[ ${PV} == 9999 ]] ; then inherit git-r3 else SRC_URI="https://github.com/harfbuzz/harfbuzz/releases/download/${PV}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" fi LICENSE="Old-MIT ISC icu" diff --git a/media-libs/imlib2/imlib2-1.12.3.ebuild b/media-libs/imlib2/imlib2-1.12.3.ebuild index 1426103e8d53..9519e8e06cee 100644 --- a/media-libs/imlib2/imlib2-1.12.3.ebuild +++ b/media-libs/imlib2/imlib2-1.12.3.ebuild @@ -14,7 +14,7 @@ SRC_URI="https://downloads.sourceforge.net/enlightenment/${P}.tar.xz" LICENSE="BSD" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" IUSE="+X apidoc bzip2 cpu_flags_x86_mmx cpu_flags_x86_sse2 debug eps +filters +gif +jpeg jpeg2k jpegxl heif lzma mp3 packing +png raw +shm static-libs svg +text +tiff +webp zlib" diff --git a/media-libs/libpng/Manifest b/media-libs/libpng/Manifest index 94f9732bfc63..17ef60db1f6d 100644 --- a/media-libs/libpng/Manifest +++ b/media-libs/libpng/Manifest @@ -4,3 +4,5 @@ DIST libpng-1.6.40.tar.xz 1021332 BLAKE2B 4dd2df57791ca68cc31ba966b9176ecb374585 DIST libpng-1.6.42.tar.xz 1035484 BLAKE2B 8a8895b673ff90416a00c9ff775d7bdc38ab1ab0d83fd6e70cfffea2ed78bd42896950a64bf48ad9a00ea50d8c5d5702975b0bae7bb3300d4de4c82b334e513e SHA512 a9e8641f79ebc811e8e1e94c4966737f8d0f3aef33c86834c419ca76050567891c065899c3bc0c945c59b5d50c5ff7d693cc51089d06efe92e71ae8014fa157c DIST libpng-1.6.43-apng-apng.patch.gz 10333 BLAKE2B 11bc92064e52f8a045b9d2a7158808471faf3e94b08dceae6aa5cfef635731ef3740e69b27118b9a5b2f2d3b810f108b8c30192388c569de1371f34a5f49f592 SHA512 3a3320c682fe8a575e76e9ede0a2d2d62533cbb206b428bfdf2729c649aaf3061b21e55c1d8848d474e40615b4e9870d49927b14de237777135524f904bac36c DIST libpng-1.6.43.tar.xz 1044076 BLAKE2B e8781001f001e6f514ca01ceafc51557e6cdedcbed3aa64df213d02635eec937cac4ccc0f34b636f582a7d141b67ec6c8d90a6ffb15c679ab0c3f4f8798be791 SHA512 c95d661fed548708ce7de5d80621a432272bdfe991f0d4db3695036e5fafb8a717b4e4314991bdd3227d7aa07f8c6afb6037c57fa0fe3349334a0b6c58268487 +DIST libpng-1.6.44-apng-apng.patch.gz 10336 BLAKE2B 3c78cadd08b48466eee7c271ec82649dab55f28977622128c78764257a3f53e3255ddb1d728f10cb457b4db314566fe54b7edc88ab68b3dd1a8310bda500ab4f SHA512 5b8502abd3fad84772136a9eea53a918f806ef7035fe6df5d2b631a5279f298b9f125922d5aab7306e7c7aa1445ac9e36072e22fab4005d20662232078187f3c +DIST libpng-1.6.44.tar.xz 1045640 BLAKE2B 61064dd83f40a7e2e60ff723a568b7d0cda95aa80621a211aee7127b9783fbfc20cd82a2fe2d03584cbf9ab77c5444e3e008ac5ccc7f64af6e858ebcbcb78822 SHA512 bbd3e5e68d8b6fe3d85e59ca0babe8b522c19cac4b6ce0fcf21516cda7120b642be611eb1eaa565b7eabbacd22606593619aabd227b43a36f1efc707e7e11851 diff --git a/media-libs/libpng/libpng-1.6.44.ebuild b/media-libs/libpng/libpng-1.6.44.ebuild new file mode 100644 index 000000000000..2cf06113dcc7 --- /dev/null +++ b/media-libs/libpng/libpng-1.6.44.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit libtool multilib-minimal + +APNG_REPO=apng # sometimes libpng-apng is more up to date +APNG_VERSION="1.6.44" +DESCRIPTION="Portable Network Graphics library" +HOMEPAGE="http://www.libpng.org/" +SRC_URI=" + https://downloads.sourceforge.net/${PN}/${P}.tar.xz + apng? ( + https://downloads.sourceforge.net/${APNG_REPO}/${PN}$(ver_rs 1-2 '' $(ver_cut 1-2 ${APNG_VERSION}))/${PV}/${PN}-${APNG_VERSION}-apng.patch.gz -> ${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch.gz + https://downloads.sourceforge.net/${APNG_REPO}/${PN}$(ver_rs 1-2 '' $(ver_cut 1-2 ${APNG_VERSION}))/${PN}-${APNG_VERSION}-apng.patch.gz -> ${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch.gz + ) +" + +LICENSE="libpng2" +SLOT="0/16" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="apng cpu_flags_arm_neon cpu_flags_x86_sse static-libs test" +RESTRICT="!test? ( test )" + +RDEPEND=">=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND}" + +DOCS=( ANNOUNCE CHANGES libpng-manual.txt README TODO ) + +src_prepare() { + default + + if use apng; then + case ${APNG_REPO} in + apng) + eapply -p0 "${WORKDIR}"/${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch + ;; + libpng-apng) + eapply "${WORKDIR}"/${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch + ;; + *) + die "Unknown APNG_REPO!" + ;; + esac + + # Don't execute symbols check with apng patch, bug #378111 + sed -i -e '/^check/s:scripts/symbols.chk::' Makefile.in || die + fi + + elibtoolize +} + +multilib_src_configure() { + local myeconfargs=( + $(multilib_native_enable tools) + $(use_enable test tests) + $(use_enable cpu_flags_arm_neon arm-neon) + $(use_enable cpu_flags_x86_sse intel-sse) + $(use_enable static-libs static) + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + default + + find "${ED}" \( -type f -o -type l \) -name '*.la' -delete || die +} diff --git a/media-libs/mesa/Manifest b/media-libs/mesa/Manifest index 260a93bec71f..fae3ee3c13a8 100644 --- a/media-libs/mesa/Manifest +++ b/media-libs/mesa/Manifest @@ -1,13 +1,5 @@ -DIST mesa-24.0.9.tar.xz 20197892 BLAKE2B 3c68e544898031fe76a57ea754f46ede5b105c259d13dd484eaa63fe51b7d52cf76a4084529b11a586c4d8d06f4cb32f993fd1ea4e6ccc4cbc91e78fe755743a SHA512 de2ee6c9df1fc106ee10befe0a76be1e9cfe83d65dbdb83bad6d8d7cfaa085232fb115293a1a790b37b50b1fe14bd58aafbcfe5a15e953b5901a7105d57569a5 -DIST mesa-24.1.3.tar.xz 29086488 BLAKE2B 2e8e4ee98f904aa02f304a6c3cbbb81d04802203e270e6b8ad2b7a62b334ac28f5e91687d7a92501f66b0043255a533d024537ff5ef3f2f03d986e46a7272eeb SHA512 db4071ac80747397023762d6e0355b001f4e942cdc706c67f8aced80e162058667c02a0dc0804a45afc2656cb65d8b16e17148bc03f0a1692067ec170f193c1a -DIST mesa-24.1.4.tar.xz 29106920 BLAKE2B 2109fc604858a0927271d7b1edb76a24514acac6117e564c6999c99f068624964f5cf0b7d022cac5726e432353a32a5278b3aa00b64dd4118bb2f0b7123c3b41 SHA512 0293f1493685888e5d2f0e616645c937e5a9c348fcb654b050b7c42bfdade1518c508920e456cf8be0033dceab4570a916db87dbb454174e425d91e9c05d0748 -DIST mesa-24.1.5.tar.xz 29140156 BLAKE2B ea29b3b8b6f178dd21d7ee3042ea829755e398f8876dfac6c744de77c08d85abb2736add2141204e6d3343de46040f49d96e1ad455714880b4be46d7b36581f1 SHA512 5916cc38c4a17161b012310c473077177887c5fff1bc5cb1f6efdf5da44878c18c99fe0c62318d897798cd4edb0f7206a989198ba085c2d402d49cdd0ee25288 -DIST mesa-24.1.6.tar.xz 29172600 BLAKE2B 295634438e1a2ae64bd1c5b0309a253e72a4d95e559cabad72f94aa2b91e5b05179c69cce5e371b69707419399dae0bfe808cb16b2e9ee112277e18b8f0f31f9 SHA512 2df0c78126f34a9ab7ce4946ed9fcd58d828717ecfd93681d9e136e605e9a8e01428dd632c0125e06d805498ffd75250f0e617f47fbb7e6368e6c8a48f4c4dfc DIST mesa-24.1.7.tar.xz 29206724 BLAKE2B b3102fcf96c032d07826186c2d60dc93e5c17b26f725c20cf1e402d1cfbaaba9809bff7a04d3df0179d2ec8606bc9fb391761d17a148671b9270cf2aaca0324d SHA512 890f6387963bbb86a85305ea963cca326a3b3f8f8758ae2082fd62c52df77c2883a359341e91f36614fea59219394ef78f799a334080699a0bb71d984a68cb01 -DIST mesa-24.2.0-rc4.tar.xz 29324360 BLAKE2B da26f43fa3e940a406e4987ed311fd22fc7608d4e09fc6cfd6584fe8873b8c5fdbf51d5f32042c46a883739cd22204a3dde2a0a1d6283c3453bc635bfba24ed5 SHA512 5a0b9043e8c3222faeaad31f435f3ea440d670ffa5497340c5809666a857fa4c77288745d52372a2267e9f9be97fc04e0d20b81bc027c1b7a33176a3bfa6b3c6 -DIST mesa-24.2.0.tar.xz 29342732 BLAKE2B dfbd0e5b8de3db475f40a8313ee3013bb513d505541e056efd84aad50d5043414dd2c0b95e6c7336a1b4d29037274dae2fa1fdb9697187bf239a5adb54dd3721 SHA512 a585c788801b5a341d356e44d958b148e6e14f6b3d7224e99a92faa2f004bf0cfc90103c5fdc651afb22f805c6f9dc594f9f3f5ecebcea36f6305b3a6ccb9294 -DIST mesa-24.2.1.tar.xz 29431192 BLAKE2B f4ef9fd08bbf16551498a8edce1e19e594a0b85ee1f05f8f7c80fcf12ec7ac4cb5947b713791f5202201f8cfc48773507d869dbd239e6fc3dcf2c3a621892327 SHA512 3b77e5faec51b67583131123b0cc010b52325ea308e4075323102aa999d9c9fbb65b873eb537ed4f577b5a0811e7f096e7e101510cb50326ea5c439b4b468380 -DIST mesa-24.2.2.tar.xz 29441876 BLAKE2B 14b29989b056c3bc76cb64babef6e93dd31af37ea72674adaad3f7ef7373c004996e375941662b1c3bbacfd707a21e2e3631a116a841130edfa1bfe3450ae5ab SHA512 d9979f7a1ae7bfeb0658d1b6c9021b7d0043c3ca71db9deaa2fc8a3d4c07cd58497b9233737a31fb66ef711a369a859757a63fb86c2aadd859867f9a4eaf16a9 +DIST mesa-24.2.3.tar.xz 29465732 BLAKE2B 3c480bd9f5948ae4d66a833cfc059b1b872fca989296a070deaa46aeb72298eaca6a3fa9d13574859623cec4a6af978f44d2c9562b9757be2257364c27600be6 SHA512 7a1ace23568d1907b778a2859f97c8988a414ba74e02e1fb5af6f95f768e1b1a2dfdaf412b0d655678ed915d28273953fd1236ebcd87553a1880f1a7f3ea4d44 DIST paste-1.0.14.crate 18157 BLAKE2B 35e8548611c51ee75f4d04926149e5e54870d7073d9b635d550a6fa0f85891f57f326bdbcff3dd8618cf40f8e08cf903ef87d9c034d5921d8b91e1db842cdd7c SHA512 3a793f0e5e773a7f7defc798a4c17ae9a40d715144632ea6cb0a8c785e14c4212046491df016bb9838281f8eaf327a79f01c1e2ac5f26785c028bc880faff9ee DIST proc-macro2-1.0.70.crate 44343 BLAKE2B fff0dec06b21e391783cc136790238acb783780eaedcf14875a350e7ceb46fdc100c8b9e3f09fb7f4c2196c25d4c6b61e574c0dad762d94533b628faab68cf5c SHA512 ae9366856853f7d96caf7a7581843d36bfc7843f8683897b19ffc666c03b0b1eff502ddb18ca4c1c1a239a368f03f6cc258b0e2795f64b61c6a31404462eec5f DIST proc-macro2-1.0.86.crate 48958 BLAKE2B 4b89e07f23af8328dbb34fe2b3f1b202f1e6a3885a6269740a23359b41bb4099ac2484565d3b2b0936261689ca525785ac620c766997234fd8d0f409e80e5ea3 SHA512 1cdb7e22a35ae231d880c9420784c9acf97bda2db258b3d34aae5061dc1858449defe19a49e12c6a4173906aa72a4115059ac2db0fc760205fd2ab8b5b414434 diff --git a/media-libs/mesa/files/24.0.4-dzn-Include-vulkan_core.h-instead-of-vulkan.h-in-the.patch b/media-libs/mesa/files/24.0.4-dzn-Include-vulkan_core.h-instead-of-vulkan.h-in-the.patch deleted file mode 100644 index 437954a0960d..000000000000 --- a/media-libs/mesa/files/24.0.4-dzn-Include-vulkan_core.h-instead-of-vulkan.h-in-the.patch +++ /dev/null @@ -1,31 +0,0 @@ -https://bugs.gentoo.org/927636 - -From 5957778c164bbe95411837f2fd80ad0001b6b7ec Mon Sep 17 00:00:00 2001 -From: Jesse Natalie <jenatali@microsoft.com> -Date: Fri, 22 Mar 2024 09:15:23 -0700 -Subject: [PATCH] dzn: Include vulkan_core.h instead of vulkan.h in the device - enum header - -Prevents pulling in X11 "None" define into the DXCore implementation, -which conflicts with updated DXCore headers. - -Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10803 -Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28339> ---- - src/microsoft/vulkan/dzn_physical_device_enum.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/microsoft/vulkan/dzn_physical_device_enum.h b/src/microsoft/vulkan/dzn_physical_device_enum.h -index 7ecc5d34630..4aec1c2b7c1 100644 ---- a/src/microsoft/vulkan/dzn_physical_device_enum.h -+++ b/src/microsoft/vulkan/dzn_physical_device_enum.h -@@ -24,7 +24,7 @@ - #ifndef DZN_PHYSICAL_DEVICE_ENUM_H - #define DZN_PHYSICAL_DEVICE_ENUM_H - --#include <vulkan/vulkan.h> -+#include <vulkan/vulkan_core.h> - - #include <wsl/winadapter.h> - --- diff --git a/media-libs/mesa/mesa-24.0.9.ebuild b/media-libs/mesa/mesa-24.0.9.ebuild deleted file mode 100644 index 8862c9e68d83..000000000000 --- a/media-libs/mesa/mesa-24.0.9.ebuild +++ /dev/null @@ -1,438 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {15..17} ) -LLVM_OPTIONAL=1 -PYTHON_COMPAT=( python3_{10..12} ) - -inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info toolchain-funcs - -MY_P="${P/_/-}" - -DESCRIPTION="OpenGL-like graphic library for Linux" -HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris" -fi -S="${WORKDIR}/${MY_P}" -EGIT_CHECKOUT_DIR=${S} - -LICENSE="MIT SGI-B-2.0" -SLOT="0" - -RADEON_CARDS="r300 r600 radeon radeonsi" -VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lavapipe lima nouveau panfrost v3d vc4 virgl vivante vmware" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - cpu_flags_x86_sse2 d3d9 debug gles1 +gles2 +llvm - lm-sensors opencl +opengl osmesa +proprietary-codecs selinux - test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa zink +zstd" -RESTRICT="!test? ( test )" -REQUIRED_USE=" - d3d9? ( - || ( - video_cards_intel - video_cards_r300 - video_cards_r600 - video_cards_radeonsi - video_cards_nouveau - video_cards_vmware - ) - ) - llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) - video_cards_lavapipe? ( llvm vulkan ) - video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) - vdpau? ( X ) - xa? ( X ) - X? ( gles1? ( opengl ) gles2? ( opengl ) ) - zink? ( vulkan || ( opengl gles1 gles2 ) ) -" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.119" -RDEPEND=" - >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] - >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] - >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}] - unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) - llvm? ( - $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - opencl? ( - dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - ) - ") - video_cards_r600? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - video_cards_radeon? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - ) - lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) - opencl? ( - >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 - virtual/libelf:0= - ) - vaapi? ( - >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] - ) - vdpau? ( >=x11-libs/libvdpau-1.4:=[${MULTILIB_USEDEP}] ) - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) - selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) - wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}] - X? ( - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}] - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] - >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] - >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}] - x11-libs/libXfixes[${MULTILIB_USEDEP}] - x11-libs/xcb-util-keysyms[${MULTILIB_USEDEP}] - ) - zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -for card in ${RADEON_CARDS}; do - RDEPEND="${RDEPEND} - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] ) - " -done -RDEPEND="${RDEPEND} - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] ) -" - -DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.611.0[${MULTILIB_USEDEP}] ) - valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.30 ) - X? ( - x11-libs/libXrandr[${MULTILIB_USEDEP}] - x11-base/xorg-proto - ) -" -BDEPEND=" - ${PYTHON_DEPS} - opencl? ( - >=virtual/rust-1.62.0 - >=dev-util/bindgen-0.58.0 - >=dev-build/meson-1.3.1 - ) - app-alternatives/yacc - app-alternatives/lex - virtual/pkgconfig - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - ") - vulkan? ( - dev-util/glslang - llvm? ( - video_cards_intel? ( - amd64? ( - $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") - ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] - ) - ) - ) - ) - wayland? ( dev-util/wayland-scanner ) -" - -QA_WX_LOAD=" -x86? ( - usr/lib/libglapi.so.0.0.0 - usr/lib/libOSMesa.so.8.0.0 - usr/lib/libGLX_mesa.so.0.0.0 -)" - -PATCHES=( - "${FILESDIR}"/24.0.4-dzn-Include-vulkan_core.h-instead-of-vulkan.h-in-the.patch -) - -pkg_pretend() { - if use vulkan; then - if ! use video_cards_d3d12 && - ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_radeonsi && - ! use video_cards_v3d; then - ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, radeonsi, or v3d" - fi - fi - - if use vaapi; then - if ! use video_cards_d3d12 && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_nouveau; then - ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, r600, radeonsi, or nouveau" - fi - fi - - if use vdpau; then - if ! use video_cards_d3d12 && - ! use video_cards_r300 && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_nouveau; then - ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, r300, r600, radeonsi, or nouveau" - fi - fi - - if use xa; then - if ! use video_cards_freedreno && - ! use video_cards_nouveau && - ! use video_cards_vmware; then - ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware" - fi - fi - - if ! use llvm; then - use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm" - fi - - if use osmesa && ! use llvm; then - ewarn "OSMesa will be slow without enabling USE=llvm" - fi -} - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" || return 1 - if use llvm && use vulkan && use video_cards_intel && use amd64; then - python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 - fi -} - -pkg_setup() { - # warning message for bug 459306 - if use llvm && has_version sys-devel/llvm[!debug=]; then - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm" - ewarn "detected! This can cause problems. For details, see bug 459306." - fi - - if use video_cards_intel || - use video_cards_radeonsi; then - if kernel_is -ge 5 11 3; then - CONFIG_CHECK="~KCMP" - elif kernel_is -ge 5 11; then - CONFIG_CHECK="~CHECKPOINT_RESTORE" - elif kernel_is -ge 5 10 20; then - CONFIG_CHECK="~KCMP" - else - CONFIG_CHECK="~CHECKPOINT_RESTORE" - fi - linux-info_pkg_setup - fi - - use llvm && llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - default - sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ - bin/symbols-check.py || die # bug #830728 -} - -multilib_src_configure() { - local emesonargs=() - - # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 - tc-is-gcc && [[ $(gcc-major-version) -ge 14 ]] && filter-lto - - local platforms - use X && platforms+="x11" - use wayland && platforms+=",wayland" - emesonargs+=(-Dplatforms=${platforms#,}) - - if use video_cards_intel || - use video_cards_r300 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_nouveau || - use video_cards_vmware; then - emesonargs+=($(meson_use d3d9 gallium-nine)) - else - emesonargs+=(-Dgallium-nine=false) - fi - - if use video_cards_d3d12 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_nouveau; then - emesonargs+=($(meson_feature vaapi gallium-va)) - use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers ) - else - emesonargs+=(-Dgallium-va=disabled) - fi - - if use video_cards_d3d12; then - emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) - fi - - if use video_cards_d3d12 || - use video_cards_r300 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_nouveau; then - emesonargs+=($(meson_feature vdpau gallium-vdpau)) - else - emesonargs+=(-Dgallium-vdpau=disabled) - fi - - if use video_cards_freedreno || - use video_cards_nouveau || - use video_cards_vmware; then - emesonargs+=($(meson_feature xa gallium-xa)) - else - emesonargs+=(-Dgallium-xa=disabled) - fi - - if use video_cards_freedreno || - use video_cards_lima || - use video_cards_panfrost || - use video_cards_v3d || - use video_cards_vc4 || - use video_cards_vivante; then - gallium_enable -- kmsro - fi - - gallium_enable -- swrast - gallium_enable video_cards_freedreno freedreno - gallium_enable video_cards_intel crocus i915 iris - gallium_enable video_cards_lima lima - gallium_enable video_cards_d3d12 d3d12 - gallium_enable video_cards_nouveau nouveau - gallium_enable video_cards_panfrost panfrost - gallium_enable video_cards_v3d v3d - gallium_enable video_cards_vc4 vc4 - gallium_enable video_cards_virgl virgl - gallium_enable video_cards_vivante etnaviv - gallium_enable video_cards_vmware svga - gallium_enable zink zink - - gallium_enable video_cards_r300 r300 - gallium_enable video_cards_r600 r600 - gallium_enable video_cards_radeonsi radeonsi - if ! use video_cards_r300 && \ - ! use video_cards_r600; then - gallium_enable video_cards_radeon r300 r600 - fi - - if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst - emesonargs+=( - $(meson_native_true gallium-rusticl) - -Drust_std=2021 - ) - fi - - if use vulkan; then - vulkan_enable video_cards_lavapipe swrast - vulkan_enable video_cards_freedreno freedreno - vulkan_enable video_cards_intel intel intel_hasvk - vulkan_enable video_cards_d3d12 microsoft-experimental - vulkan_enable video_cards_radeonsi amd - vulkan_enable video_cards_v3d broadcom - fi - - driver_list() { - local drivers="$(sort -u <<< "${1// /$'\n'}")" - echo "${drivers//$'\n'/,}" - } - - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - - if use llvm && use vulkan && use video_cards_intel && use amd64; then - emesonargs+=(-Dintel-clc=system) - else - emesonargs+=(-Dintel-clc=disabled) - fi - - if use opengl || use gles1 || use gles2; then - emesonargs+=( - -Degl=enabled - -Dgbm=enabled - -Dglvnd=true - ) - else - emesonargs+=( - -Degl=disabled - -Dgbm=disabled - -Dglvnd=false - ) - fi - - if use opengl && use X; then - emesonargs+=(-Dglx=dri) - else - emesonargs+=(-Dglx=disabled) - fi - - emesonargs+=( - $(meson_use test build-tests) - -Dshared-glapi=enabled - -Ddri3=enabled - -Dexpat=enabled - $(meson_use opengl) - $(meson_feature gles1) - $(meson_feature gles2) - $(meson_feature llvm) - $(meson_feature lm-sensors lmsensors) - $(meson_use osmesa) - $(meson_use selinux) - $(meson_feature unwind libunwind) - $(meson_feature zstd) - $(meson_use cpu_flags_x86_sse2 sse2) - -Dvalgrind=$(usex valgrind auto disabled) - -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") - -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") - -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") - -Dbuildtype=$(usex debug debug plain) - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure -} - -multilib_src_test() { - meson_src_test -t 100 -} - -# $1 - VIDEO_CARDS flag (check skipped for "--") -# other args - names of DRI drivers to enable -gallium_enable() { - if [[ $1 == -- ]] || use $1; then - shift - GALLIUM_DRIVERS+=("$@") - fi -} - -vulkan_enable() { - if [[ $1 == -- ]] || use $1; then - shift - VULKAN_DRIVERS+=("$@") - fi -} diff --git a/media-libs/mesa/mesa-24.1.3.ebuild b/media-libs/mesa/mesa-24.1.3.ebuild deleted file mode 100644 index 21a8ac3b80e2..000000000000 --- a/media-libs/mesa/mesa-24.1.3.ebuild +++ /dev/null @@ -1,494 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {15..18} ) -LLVM_OPTIONAL=1 -CARGO_OPTIONAL=1 -PYTHON_COMPAT=( python3_{10..12} ) - -inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain toolchain-funcs - -MY_P="${P/_/-}" - -CRATES=" - syn@2.0.39 - proc-macro2@1.0.70 - quote@1.0.33 - unicode-ident@1.0.12 - paste@1.0.14 -" - -inherit cargo - -DESCRIPTION="OpenGL-like graphic library for Linux" -HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - SRC_URI=" - https://archive.mesa3d.org/${MY_P}.tar.xz - " - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris" -fi - -# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, -# but there are "stale" distfiles on the mirrors with the wrong names. -# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" -SRC_URI+=" - ${CARGO_CRATE_URIS} -" - -S="${WORKDIR}/${MY_P}" -EGIT_CHECKOUT_DIR=${S} - -LICENSE="MIT SGI-B-2.0" -SLOT="0" - -RADEON_CARDS="r300 r600 radeon radeonsi" -VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl vivante vmware zink" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - cpu_flags_x86_sse2 d3d9 debug +llvm - lm-sensors opencl +opengl osmesa +proprietary-codecs selinux - test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" -RESTRICT="!test? ( test )" -REQUIRED_USE=" - d3d9? ( - || ( - video_cards_freedreno - video_cards_intel - video_cards_nouveau - video_cards_panfrost - video_cards_r300 - video_cards_r600 - video_cards_radeonsi - video_cards_vmware - video_cards_zink - ) - ) - llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) - video_cards_lavapipe? ( llvm vulkan ) - video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_zink? ( vulkan opengl ) - video_cards_nvk? ( vulkan video_cards_nouveau ) - vdpau? ( X ) - xa? ( X ) -" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.119" -RDEPEND=" - >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] - >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] - >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] - unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) - llvm? ( - $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - opencl? ( - dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - ) - ") - video_cards_r600? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - video_cards_radeon? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - ) - lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) - opencl? ( - >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 - virtual/libelf:0= - ) - vaapi? ( - >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] - ) - vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) - video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) - selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) - wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}] - X? ( - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}] - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] - >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] - >=x11-libs/libxcb-1.17:=[${MULTILIB_USEDEP}] - x11-libs/libXfixes[${MULTILIB_USEDEP}] - x11-libs/xcb-util-keysyms[${MULTILIB_USEDEP}] - ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -for card in ${RADEON_CARDS}; do - RDEPEND="${RDEPEND} - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] ) - " -done -RDEPEND="${RDEPEND} - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] ) -" - -DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) - valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) - X? ( - x11-libs/libXrandr[${MULTILIB_USEDEP}] - x11-base/xorg-proto - ) -" -BDEPEND=" - ${PYTHON_DEPS} - opencl? ( - >=virtual/rust-1.62.0 - >=dev-util/bindgen-0.58.0 - ) - >=dev-build/meson-1.4.1 - app-alternatives/yacc - app-alternatives/lex - virtual/pkgconfig - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - ") - video_cards_intel? ( - ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] - $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") - ) - vulkan? ( - dev-util/glslang - video_cards_nvk? ( - >=dev-util/bindgen-0.68.1 - >=dev-util/cbindgen-0.26.0 - >=virtual/rust-1.74.1 - ) - ) - wayland? ( dev-util/wayland-scanner ) -" - -QA_WX_LOAD=" -x86? ( - usr/lib/libglapi.so.0.0.0 - usr/lib/libOSMesa.so.8.0.0 - usr/lib/libGLX_mesa.so.0.0.0 -)" - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack ${MY_P}.tar.xz - fi - - # We need this because we cannot tell meson to use DISTDIR yet - pushd "${DISTDIR}" >/dev/null || die - mkdir -p "${S}"/subprojects/packagecache || die - local i - for i in *.crate; do - ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die - done - popd >/dev/null || die -} - -pkg_pretend() { - if use vulkan; then - if ! use video_cards_d3d12 && - ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_lavapipe && - ! use video_cards_nouveau && - ! use video_cards_nvk && - ! use video_cards_panfrost && - ! use video_cards_radeonsi && - ! use video_cards_v3d && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" - fi - fi - - # VA - if use vaapi; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use vdpau; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use xa; then - if ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_nouveau && - ! use video_cards_vmware; then - ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" - fi - fi - - if ! use llvm; then - use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm" - fi - - if use osmesa && ! use llvm; then - ewarn "OSMesa will be slow without enabling USE=llvm" - fi -} - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" || return 1 - if use llvm && use vulkan && use video_cards_intel && use amd64; then - python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 - fi -} - -pkg_setup() { - # warning message for bug 459306 - if use llvm && has_version sys-devel/llvm[!debug=]; then - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm" - ewarn "detected! This can cause problems. For details, see bug 459306." - fi - - if use video_cards_intel || - use video_cards_radeonsi; then - if kernel_is -ge 5 11 3; then - CONFIG_CHECK="~KCMP" - elif kernel_is -ge 5 11; then - CONFIG_CHECK="~CHECKPOINT_RESTORE" - elif kernel_is -ge 5 10 20; then - CONFIG_CHECK="~KCMP" - else - CONFIG_CHECK="~CHECKPOINT_RESTORE" - fi - linux-info_pkg_setup - fi - - use llvm && llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - default - sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ - bin/symbols-check.py || die # bug #830728 -} - -multilib_src_configure() { - local emesonargs=() - - # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 - tc-is-gcc && [[ $(gcc-major-version) -ge 14 ]] && filter-lto - - local platforms - use X && platforms+="x11" - use wayland && platforms+=",wayland" - emesonargs+=(-Dplatforms=${platforms#,}) - - if use video_cards_freedreno || - use video_cards_intel || # crocus i915 iris - use video_cards_nouveau || - use video_cards_panfrost || - use video_cards_r300 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_vmware || # swrast - use video_cards_zink; then - emesonargs+=($(meson_use d3d9 gallium-nine)) - else - emesonargs+=(-Dgallium-nine=false) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vaapi gallium-va)) - use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers ) - else - emesonargs+=(-Dgallium-va=disabled) - fi - - if use video_cards_d3d12; then - emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vdpau gallium-vdpau)) - else - emesonargs+=(-Dgallium-vdpau=disabled) - fi - - if use video_cards_freedreno || - use video_cards_intel || - use video_cards_nouveau || - use video_cards_vmware; then - emesonargs+=($(meson_feature xa gallium-xa)) - else - emesonargs+=(-Dgallium-xa=disabled) - fi - - if use video_cards_freedreno || - use video_cards_lima || - use video_cards_panfrost || - use video_cards_v3d || - use video_cards_vc4 || - use video_cards_vivante; then - gallium_enable -- kmsro - fi - - gallium_enable -- swrast - gallium_enable video_cards_d3d12 d3d12 - gallium_enable video_cards_freedreno freedreno - gallium_enable video_cards_intel crocus i915 iris - gallium_enable video_cards_lima lima - gallium_enable video_cards_nouveau nouveau - gallium_enable video_cards_panfrost panfrost - gallium_enable video_cards_v3d v3d - gallium_enable video_cards_vc4 vc4 - gallium_enable video_cards_virgl virgl - gallium_enable video_cards_vivante etnaviv - gallium_enable video_cards_vmware svga - gallium_enable video_cards_zink zink - - gallium_enable video_cards_r300 r300 - gallium_enable video_cards_r600 r600 - gallium_enable video_cards_radeonsi radeonsi - if ! use video_cards_r300 && - ! use video_cards_r600; then - gallium_enable video_cards_radeon r300 r600 - fi - - if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst - emesonargs+=( - $(meson_native_true gallium-rusticl) - -Drust_std=2021 - ) - fi - - if use vulkan; then - vulkan_enable video_cards_d3d12 microsoft-experimental - vulkan_enable video_cards_freedreno freedreno - vulkan_enable video_cards_intel intel intel_hasvk - vulkan_enable video_cards_lavapipe swrast - vulkan_enable video_cards_panfrost panfrost - vulkan_enable video_cards_radeonsi amd - vulkan_enable video_cards_v3d broadcom - vulkan_enable video_cards_vc4 broadcom - vulkan_enable video_cards_virgl virtio - if use video_cards_nvk; then - vulkan_enable video_cards_nvk nouveau - if ! multilib_is_native_abi; then - echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" - emesonargs+=( - --native-file "${T}"/rust_fix.ini - ) - fi - fi - fi - - driver_list() { - local drivers="$(sort -u <<< "${1// /$'\n'}")" - echo "${drivers//$'\n'/,}" - } - - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - - if use opengl && use X; then - emesonargs+=(-Dglx=dri) - else - emesonargs+=(-Dglx=disabled) - fi - - if [[ "${ABI}" == amd64 ]]; then - emesonargs+=($(meson_feature video_cards_intel intel-rt)) - fi - - use debug && EMESON_BUILDTYPE=debug - - emesonargs+=( - $(meson_use test build-tests) - -Dshared-glapi=enabled - -Ddri3=enabled - -Dexpat=enabled - $(meson_use opengl) - $(meson_feature opengl gbm) - $(meson_feature opengl gles1) - $(meson_feature opengl gles2) - $(meson_feature opengl glvnd) - $(meson_feature opengl egl) - $(meson_feature llvm) - $(meson_feature lm-sensors lmsensors) - $(meson_use osmesa) - $(meson_use selinux) - $(meson_feature unwind libunwind) - $(meson_feature zstd) - $(meson_use cpu_flags_x86_sse2 sse2) - -Dintel-clc=$(usex video_cards_intel system auto) - -Dvalgrind=$(usex valgrind auto disabled) - -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") - -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") - -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure - - if ! multilib_is_native_abi && use video_cards_nvk; then - sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die - fi -} - -multilib_src_test() { - meson_src_test -t 100 -} - -# $1 - VIDEO_CARDS flag (check skipped for "--") -# other args - names of DRI drivers to enable -gallium_enable() { - if [[ $1 == -- ]] || use $1; then - shift - GALLIUM_DRIVERS+=("$@") - fi -} - -vulkan_enable() { - if [[ $1 == -- ]] || use $1; then - shift - VULKAN_DRIVERS+=("$@") - fi -} diff --git a/media-libs/mesa/mesa-24.1.4.ebuild b/media-libs/mesa/mesa-24.1.4.ebuild deleted file mode 100644 index ecfc5c2c1b39..000000000000 --- a/media-libs/mesa/mesa-24.1.4.ebuild +++ /dev/null @@ -1,494 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {15..18} ) -LLVM_OPTIONAL=1 -CARGO_OPTIONAL=1 -PYTHON_COMPAT=( python3_{10..12} ) - -inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain toolchain-funcs - -MY_P="${P/_/-}" - -CRATES=" - syn@2.0.39 - proc-macro2@1.0.70 - quote@1.0.33 - unicode-ident@1.0.12 - paste@1.0.14 -" - -inherit cargo - -DESCRIPTION="OpenGL-like graphic library for Linux" -HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - SRC_URI=" - https://archive.mesa3d.org/${MY_P}.tar.xz - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" -fi - -# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, -# but there are "stale" distfiles on the mirrors with the wrong names. -# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" -SRC_URI+=" - ${CARGO_CRATE_URIS} -" - -S="${WORKDIR}/${MY_P}" -EGIT_CHECKOUT_DIR=${S} - -LICENSE="MIT SGI-B-2.0" -SLOT="0" - -RADEON_CARDS="r300 r600 radeon radeonsi" -VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl vivante vmware zink" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - cpu_flags_x86_sse2 d3d9 debug +llvm - lm-sensors opencl +opengl osmesa +proprietary-codecs selinux - test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" -RESTRICT="!test? ( test )" -REQUIRED_USE=" - d3d9? ( - || ( - video_cards_freedreno - video_cards_intel - video_cards_nouveau - video_cards_panfrost - video_cards_r300 - video_cards_r600 - video_cards_radeonsi - video_cards_vmware - video_cards_zink - ) - ) - llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) - video_cards_lavapipe? ( llvm vulkan ) - video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_zink? ( vulkan opengl ) - video_cards_nvk? ( vulkan video_cards_nouveau ) - vdpau? ( X ) - xa? ( X ) -" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.119" -RDEPEND=" - >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] - >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] - >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] - unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) - llvm? ( - $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - opencl? ( - dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - ) - ") - video_cards_r600? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - video_cards_radeon? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - ) - lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) - opencl? ( - >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 - virtual/libelf:0= - ) - vaapi? ( - >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] - ) - vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) - video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) - selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) - wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}] - X? ( - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}] - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] - >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] - >=x11-libs/libxcb-1.17:=[${MULTILIB_USEDEP}] - x11-libs/libXfixes[${MULTILIB_USEDEP}] - x11-libs/xcb-util-keysyms[${MULTILIB_USEDEP}] - ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -for card in ${RADEON_CARDS}; do - RDEPEND="${RDEPEND} - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] ) - " -done -RDEPEND="${RDEPEND} - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] ) -" - -DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) - valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) - X? ( - x11-libs/libXrandr[${MULTILIB_USEDEP}] - x11-base/xorg-proto - ) -" -BDEPEND=" - ${PYTHON_DEPS} - opencl? ( - >=virtual/rust-1.62.0 - >=dev-util/bindgen-0.58.0 - ) - >=dev-build/meson-1.4.1 - app-alternatives/yacc - app-alternatives/lex - virtual/pkgconfig - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - ") - video_cards_intel? ( - ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] - $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") - ) - vulkan? ( - dev-util/glslang - video_cards_nvk? ( - >=dev-util/bindgen-0.68.1 - >=dev-util/cbindgen-0.26.0 - >=virtual/rust-1.74.1 - ) - ) - wayland? ( dev-util/wayland-scanner ) -" - -QA_WX_LOAD=" -x86? ( - usr/lib/libglapi.so.0.0.0 - usr/lib/libOSMesa.so.8.0.0 - usr/lib/libGLX_mesa.so.0.0.0 -)" - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack ${MY_P}.tar.xz - fi - - # We need this because we cannot tell meson to use DISTDIR yet - pushd "${DISTDIR}" >/dev/null || die - mkdir -p "${S}"/subprojects/packagecache || die - local i - for i in *.crate; do - ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die - done - popd >/dev/null || die -} - -pkg_pretend() { - if use vulkan; then - if ! use video_cards_d3d12 && - ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_lavapipe && - ! use video_cards_nouveau && - ! use video_cards_nvk && - ! use video_cards_panfrost && - ! use video_cards_radeonsi && - ! use video_cards_v3d && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" - fi - fi - - # VA - if use vaapi; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use vdpau; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use xa; then - if ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_nouveau && - ! use video_cards_vmware; then - ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" - fi - fi - - if ! use llvm; then - use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm" - fi - - if use osmesa && ! use llvm; then - ewarn "OSMesa will be slow without enabling USE=llvm" - fi -} - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" || return 1 - if use llvm && use vulkan && use video_cards_intel && use amd64; then - python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 - fi -} - -pkg_setup() { - # warning message for bug 459306 - if use llvm && has_version sys-devel/llvm[!debug=]; then - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm" - ewarn "detected! This can cause problems. For details, see bug 459306." - fi - - if use video_cards_intel || - use video_cards_radeonsi; then - if kernel_is -ge 5 11 3; then - CONFIG_CHECK="~KCMP" - elif kernel_is -ge 5 11; then - CONFIG_CHECK="~CHECKPOINT_RESTORE" - elif kernel_is -ge 5 10 20; then - CONFIG_CHECK="~KCMP" - else - CONFIG_CHECK="~CHECKPOINT_RESTORE" - fi - linux-info_pkg_setup - fi - - use llvm && llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - default - sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ - bin/symbols-check.py || die # bug #830728 -} - -multilib_src_configure() { - local emesonargs=() - - # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 - tc-is-gcc && [[ $(gcc-major-version) -ge 14 ]] && filter-lto - - local platforms - use X && platforms+="x11" - use wayland && platforms+=",wayland" - emesonargs+=(-Dplatforms=${platforms#,}) - - if use video_cards_freedreno || - use video_cards_intel || # crocus i915 iris - use video_cards_nouveau || - use video_cards_panfrost || - use video_cards_r300 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_vmware || # swrast - use video_cards_zink; then - emesonargs+=($(meson_use d3d9 gallium-nine)) - else - emesonargs+=(-Dgallium-nine=false) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vaapi gallium-va)) - use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers ) - else - emesonargs+=(-Dgallium-va=disabled) - fi - - if use video_cards_d3d12; then - emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vdpau gallium-vdpau)) - else - emesonargs+=(-Dgallium-vdpau=disabled) - fi - - if use video_cards_freedreno || - use video_cards_intel || - use video_cards_nouveau || - use video_cards_vmware; then - emesonargs+=($(meson_feature xa gallium-xa)) - else - emesonargs+=(-Dgallium-xa=disabled) - fi - - if use video_cards_freedreno || - use video_cards_lima || - use video_cards_panfrost || - use video_cards_v3d || - use video_cards_vc4 || - use video_cards_vivante; then - gallium_enable -- kmsro - fi - - gallium_enable -- swrast - gallium_enable video_cards_d3d12 d3d12 - gallium_enable video_cards_freedreno freedreno - gallium_enable video_cards_intel crocus i915 iris - gallium_enable video_cards_lima lima - gallium_enable video_cards_nouveau nouveau - gallium_enable video_cards_panfrost panfrost - gallium_enable video_cards_v3d v3d - gallium_enable video_cards_vc4 vc4 - gallium_enable video_cards_virgl virgl - gallium_enable video_cards_vivante etnaviv - gallium_enable video_cards_vmware svga - gallium_enable video_cards_zink zink - - gallium_enable video_cards_r300 r300 - gallium_enable video_cards_r600 r600 - gallium_enable video_cards_radeonsi radeonsi - if ! use video_cards_r300 && - ! use video_cards_r600; then - gallium_enable video_cards_radeon r300 r600 - fi - - if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst - emesonargs+=( - $(meson_native_true gallium-rusticl) - -Drust_std=2021 - ) - fi - - if use vulkan; then - vulkan_enable video_cards_d3d12 microsoft-experimental - vulkan_enable video_cards_freedreno freedreno - vulkan_enable video_cards_intel intel intel_hasvk - vulkan_enable video_cards_lavapipe swrast - vulkan_enable video_cards_panfrost panfrost - vulkan_enable video_cards_radeonsi amd - vulkan_enable video_cards_v3d broadcom - vulkan_enable video_cards_vc4 broadcom - vulkan_enable video_cards_virgl virtio - if use video_cards_nvk; then - vulkan_enable video_cards_nvk nouveau - if ! multilib_is_native_abi; then - echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" - emesonargs+=( - --native-file "${T}"/rust_fix.ini - ) - fi - fi - fi - - driver_list() { - local drivers="$(sort -u <<< "${1// /$'\n'}")" - echo "${drivers//$'\n'/,}" - } - - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - - if use opengl && use X; then - emesonargs+=(-Dglx=dri) - else - emesonargs+=(-Dglx=disabled) - fi - - if [[ "${ABI}" == amd64 ]]; then - emesonargs+=($(meson_feature video_cards_intel intel-rt)) - fi - - use debug && EMESON_BUILDTYPE=debug - - emesonargs+=( - $(meson_use test build-tests) - -Dshared-glapi=enabled - -Ddri3=enabled - -Dexpat=enabled - $(meson_use opengl) - $(meson_feature opengl gbm) - $(meson_feature opengl gles1) - $(meson_feature opengl gles2) - $(meson_feature opengl glvnd) - $(meson_feature opengl egl) - $(meson_feature llvm) - $(meson_feature lm-sensors lmsensors) - $(meson_use osmesa) - $(meson_use selinux) - $(meson_feature unwind libunwind) - $(meson_feature zstd) - $(meson_use cpu_flags_x86_sse2 sse2) - -Dintel-clc=$(usex video_cards_intel system auto) - -Dvalgrind=$(usex valgrind auto disabled) - -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") - -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") - -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure - - if ! multilib_is_native_abi && use video_cards_nvk; then - sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die - fi -} - -multilib_src_test() { - meson_src_test -t 100 -} - -# $1 - VIDEO_CARDS flag (check skipped for "--") -# other args - names of DRI drivers to enable -gallium_enable() { - if [[ $1 == -- ]] || use $1; then - shift - GALLIUM_DRIVERS+=("$@") - fi -} - -vulkan_enable() { - if [[ $1 == -- ]] || use $1; then - shift - VULKAN_DRIVERS+=("$@") - fi -} diff --git a/media-libs/mesa/mesa-24.1.5.ebuild b/media-libs/mesa/mesa-24.1.5.ebuild deleted file mode 100644 index ecfc5c2c1b39..000000000000 --- a/media-libs/mesa/mesa-24.1.5.ebuild +++ /dev/null @@ -1,494 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {15..18} ) -LLVM_OPTIONAL=1 -CARGO_OPTIONAL=1 -PYTHON_COMPAT=( python3_{10..12} ) - -inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain toolchain-funcs - -MY_P="${P/_/-}" - -CRATES=" - syn@2.0.39 - proc-macro2@1.0.70 - quote@1.0.33 - unicode-ident@1.0.12 - paste@1.0.14 -" - -inherit cargo - -DESCRIPTION="OpenGL-like graphic library for Linux" -HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - SRC_URI=" - https://archive.mesa3d.org/${MY_P}.tar.xz - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" -fi - -# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, -# but there are "stale" distfiles on the mirrors with the wrong names. -# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" -SRC_URI+=" - ${CARGO_CRATE_URIS} -" - -S="${WORKDIR}/${MY_P}" -EGIT_CHECKOUT_DIR=${S} - -LICENSE="MIT SGI-B-2.0" -SLOT="0" - -RADEON_CARDS="r300 r600 radeon radeonsi" -VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl vivante vmware zink" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - cpu_flags_x86_sse2 d3d9 debug +llvm - lm-sensors opencl +opengl osmesa +proprietary-codecs selinux - test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" -RESTRICT="!test? ( test )" -REQUIRED_USE=" - d3d9? ( - || ( - video_cards_freedreno - video_cards_intel - video_cards_nouveau - video_cards_panfrost - video_cards_r300 - video_cards_r600 - video_cards_radeonsi - video_cards_vmware - video_cards_zink - ) - ) - llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) - video_cards_lavapipe? ( llvm vulkan ) - video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_zink? ( vulkan opengl ) - video_cards_nvk? ( vulkan video_cards_nouveau ) - vdpau? ( X ) - xa? ( X ) -" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.119" -RDEPEND=" - >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] - >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] - >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] - unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) - llvm? ( - $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - opencl? ( - dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - ) - ") - video_cards_r600? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - video_cards_radeon? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - ) - lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) - opencl? ( - >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 - virtual/libelf:0= - ) - vaapi? ( - >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] - ) - vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) - video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) - selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) - wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}] - X? ( - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}] - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] - >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] - >=x11-libs/libxcb-1.17:=[${MULTILIB_USEDEP}] - x11-libs/libXfixes[${MULTILIB_USEDEP}] - x11-libs/xcb-util-keysyms[${MULTILIB_USEDEP}] - ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -for card in ${RADEON_CARDS}; do - RDEPEND="${RDEPEND} - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] ) - " -done -RDEPEND="${RDEPEND} - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] ) -" - -DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) - valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) - X? ( - x11-libs/libXrandr[${MULTILIB_USEDEP}] - x11-base/xorg-proto - ) -" -BDEPEND=" - ${PYTHON_DEPS} - opencl? ( - >=virtual/rust-1.62.0 - >=dev-util/bindgen-0.58.0 - ) - >=dev-build/meson-1.4.1 - app-alternatives/yacc - app-alternatives/lex - virtual/pkgconfig - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - ") - video_cards_intel? ( - ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] - $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") - ) - vulkan? ( - dev-util/glslang - video_cards_nvk? ( - >=dev-util/bindgen-0.68.1 - >=dev-util/cbindgen-0.26.0 - >=virtual/rust-1.74.1 - ) - ) - wayland? ( dev-util/wayland-scanner ) -" - -QA_WX_LOAD=" -x86? ( - usr/lib/libglapi.so.0.0.0 - usr/lib/libOSMesa.so.8.0.0 - usr/lib/libGLX_mesa.so.0.0.0 -)" - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack ${MY_P}.tar.xz - fi - - # We need this because we cannot tell meson to use DISTDIR yet - pushd "${DISTDIR}" >/dev/null || die - mkdir -p "${S}"/subprojects/packagecache || die - local i - for i in *.crate; do - ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die - done - popd >/dev/null || die -} - -pkg_pretend() { - if use vulkan; then - if ! use video_cards_d3d12 && - ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_lavapipe && - ! use video_cards_nouveau && - ! use video_cards_nvk && - ! use video_cards_panfrost && - ! use video_cards_radeonsi && - ! use video_cards_v3d && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" - fi - fi - - # VA - if use vaapi; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use vdpau; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use xa; then - if ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_nouveau && - ! use video_cards_vmware; then - ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" - fi - fi - - if ! use llvm; then - use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm" - fi - - if use osmesa && ! use llvm; then - ewarn "OSMesa will be slow without enabling USE=llvm" - fi -} - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" || return 1 - if use llvm && use vulkan && use video_cards_intel && use amd64; then - python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 - fi -} - -pkg_setup() { - # warning message for bug 459306 - if use llvm && has_version sys-devel/llvm[!debug=]; then - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm" - ewarn "detected! This can cause problems. For details, see bug 459306." - fi - - if use video_cards_intel || - use video_cards_radeonsi; then - if kernel_is -ge 5 11 3; then - CONFIG_CHECK="~KCMP" - elif kernel_is -ge 5 11; then - CONFIG_CHECK="~CHECKPOINT_RESTORE" - elif kernel_is -ge 5 10 20; then - CONFIG_CHECK="~KCMP" - else - CONFIG_CHECK="~CHECKPOINT_RESTORE" - fi - linux-info_pkg_setup - fi - - use llvm && llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - default - sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ - bin/symbols-check.py || die # bug #830728 -} - -multilib_src_configure() { - local emesonargs=() - - # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 - tc-is-gcc && [[ $(gcc-major-version) -ge 14 ]] && filter-lto - - local platforms - use X && platforms+="x11" - use wayland && platforms+=",wayland" - emesonargs+=(-Dplatforms=${platforms#,}) - - if use video_cards_freedreno || - use video_cards_intel || # crocus i915 iris - use video_cards_nouveau || - use video_cards_panfrost || - use video_cards_r300 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_vmware || # swrast - use video_cards_zink; then - emesonargs+=($(meson_use d3d9 gallium-nine)) - else - emesonargs+=(-Dgallium-nine=false) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vaapi gallium-va)) - use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers ) - else - emesonargs+=(-Dgallium-va=disabled) - fi - - if use video_cards_d3d12; then - emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vdpau gallium-vdpau)) - else - emesonargs+=(-Dgallium-vdpau=disabled) - fi - - if use video_cards_freedreno || - use video_cards_intel || - use video_cards_nouveau || - use video_cards_vmware; then - emesonargs+=($(meson_feature xa gallium-xa)) - else - emesonargs+=(-Dgallium-xa=disabled) - fi - - if use video_cards_freedreno || - use video_cards_lima || - use video_cards_panfrost || - use video_cards_v3d || - use video_cards_vc4 || - use video_cards_vivante; then - gallium_enable -- kmsro - fi - - gallium_enable -- swrast - gallium_enable video_cards_d3d12 d3d12 - gallium_enable video_cards_freedreno freedreno - gallium_enable video_cards_intel crocus i915 iris - gallium_enable video_cards_lima lima - gallium_enable video_cards_nouveau nouveau - gallium_enable video_cards_panfrost panfrost - gallium_enable video_cards_v3d v3d - gallium_enable video_cards_vc4 vc4 - gallium_enable video_cards_virgl virgl - gallium_enable video_cards_vivante etnaviv - gallium_enable video_cards_vmware svga - gallium_enable video_cards_zink zink - - gallium_enable video_cards_r300 r300 - gallium_enable video_cards_r600 r600 - gallium_enable video_cards_radeonsi radeonsi - if ! use video_cards_r300 && - ! use video_cards_r600; then - gallium_enable video_cards_radeon r300 r600 - fi - - if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst - emesonargs+=( - $(meson_native_true gallium-rusticl) - -Drust_std=2021 - ) - fi - - if use vulkan; then - vulkan_enable video_cards_d3d12 microsoft-experimental - vulkan_enable video_cards_freedreno freedreno - vulkan_enable video_cards_intel intel intel_hasvk - vulkan_enable video_cards_lavapipe swrast - vulkan_enable video_cards_panfrost panfrost - vulkan_enable video_cards_radeonsi amd - vulkan_enable video_cards_v3d broadcom - vulkan_enable video_cards_vc4 broadcom - vulkan_enable video_cards_virgl virtio - if use video_cards_nvk; then - vulkan_enable video_cards_nvk nouveau - if ! multilib_is_native_abi; then - echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" - emesonargs+=( - --native-file "${T}"/rust_fix.ini - ) - fi - fi - fi - - driver_list() { - local drivers="$(sort -u <<< "${1// /$'\n'}")" - echo "${drivers//$'\n'/,}" - } - - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - - if use opengl && use X; then - emesonargs+=(-Dglx=dri) - else - emesonargs+=(-Dglx=disabled) - fi - - if [[ "${ABI}" == amd64 ]]; then - emesonargs+=($(meson_feature video_cards_intel intel-rt)) - fi - - use debug && EMESON_BUILDTYPE=debug - - emesonargs+=( - $(meson_use test build-tests) - -Dshared-glapi=enabled - -Ddri3=enabled - -Dexpat=enabled - $(meson_use opengl) - $(meson_feature opengl gbm) - $(meson_feature opengl gles1) - $(meson_feature opengl gles2) - $(meson_feature opengl glvnd) - $(meson_feature opengl egl) - $(meson_feature llvm) - $(meson_feature lm-sensors lmsensors) - $(meson_use osmesa) - $(meson_use selinux) - $(meson_feature unwind libunwind) - $(meson_feature zstd) - $(meson_use cpu_flags_x86_sse2 sse2) - -Dintel-clc=$(usex video_cards_intel system auto) - -Dvalgrind=$(usex valgrind auto disabled) - -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") - -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") - -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure - - if ! multilib_is_native_abi && use video_cards_nvk; then - sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die - fi -} - -multilib_src_test() { - meson_src_test -t 100 -} - -# $1 - VIDEO_CARDS flag (check skipped for "--") -# other args - names of DRI drivers to enable -gallium_enable() { - if [[ $1 == -- ]] || use $1; then - shift - GALLIUM_DRIVERS+=("$@") - fi -} - -vulkan_enable() { - if [[ $1 == -- ]] || use $1; then - shift - VULKAN_DRIVERS+=("$@") - fi -} diff --git a/media-libs/mesa/mesa-24.1.6.ebuild b/media-libs/mesa/mesa-24.1.6.ebuild deleted file mode 100644 index 1c30c12f9f74..000000000000 --- a/media-libs/mesa/mesa-24.1.6.ebuild +++ /dev/null @@ -1,494 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {15..18} ) -LLVM_OPTIONAL=1 -CARGO_OPTIONAL=1 -PYTHON_COMPAT=( python3_{10..12} ) - -inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain toolchain-funcs - -MY_P="${P/_/-}" - -CRATES=" - syn@2.0.39 - proc-macro2@1.0.70 - quote@1.0.33 - unicode-ident@1.0.12 - paste@1.0.14 -" - -inherit cargo - -DESCRIPTION="OpenGL-like graphic library for Linux" -HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - SRC_URI=" - https://archive.mesa3d.org/${MY_P}.tar.xz - " - KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris" -fi - -# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, -# but there are "stale" distfiles on the mirrors with the wrong names. -# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" -SRC_URI+=" - ${CARGO_CRATE_URIS} -" - -S="${WORKDIR}/${MY_P}" -EGIT_CHECKOUT_DIR=${S} - -LICENSE="MIT SGI-B-2.0" -SLOT="0" - -RADEON_CARDS="r300 r600 radeon radeonsi" -VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl vivante vmware zink" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - cpu_flags_x86_sse2 d3d9 debug +llvm - lm-sensors opencl +opengl osmesa +proprietary-codecs selinux - test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" -RESTRICT="!test? ( test )" -REQUIRED_USE=" - d3d9? ( - || ( - video_cards_freedreno - video_cards_intel - video_cards_nouveau - video_cards_panfrost - video_cards_r300 - video_cards_r600 - video_cards_radeonsi - video_cards_vmware - video_cards_zink - ) - ) - llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) - video_cards_lavapipe? ( llvm vulkan ) - video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_zink? ( vulkan opengl ) - video_cards_nvk? ( vulkan video_cards_nouveau ) - vdpau? ( X ) - xa? ( X ) -" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.119" -RDEPEND=" - >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] - >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] - >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] - unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) - llvm? ( - $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - opencl? ( - dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - ) - ") - video_cards_r600? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - video_cards_radeon? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - ) - lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) - opencl? ( - >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 - virtual/libelf:0= - ) - vaapi? ( - >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] - ) - vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) - video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) - selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) - wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}] - X? ( - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}] - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] - >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] - >=x11-libs/libxcb-1.17:=[${MULTILIB_USEDEP}] - x11-libs/libXfixes[${MULTILIB_USEDEP}] - x11-libs/xcb-util-keysyms[${MULTILIB_USEDEP}] - ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -for card in ${RADEON_CARDS}; do - RDEPEND="${RDEPEND} - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] ) - " -done -RDEPEND="${RDEPEND} - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] ) -" - -DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) - valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) - X? ( - x11-libs/libXrandr[${MULTILIB_USEDEP}] - x11-base/xorg-proto - ) -" -BDEPEND=" - ${PYTHON_DEPS} - opencl? ( - >=virtual/rust-1.62.0 - >=dev-util/bindgen-0.58.0 - ) - >=dev-build/meson-1.4.1 - app-alternatives/yacc - app-alternatives/lex - virtual/pkgconfig - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - ") - video_cards_intel? ( - ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] - $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") - ) - vulkan? ( - dev-util/glslang - video_cards_nvk? ( - >=dev-util/bindgen-0.68.1 - >=dev-util/cbindgen-0.26.0 - >=virtual/rust-1.74.1 - ) - ) - wayland? ( dev-util/wayland-scanner ) -" - -QA_WX_LOAD=" -x86? ( - usr/lib/libglapi.so.0.0.0 - usr/lib/libOSMesa.so.8.0.0 - usr/lib/libGLX_mesa.so.0.0.0 -)" - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack ${MY_P}.tar.xz - fi - - # We need this because we cannot tell meson to use DISTDIR yet - pushd "${DISTDIR}" >/dev/null || die - mkdir -p "${S}"/subprojects/packagecache || die - local i - for i in *.crate; do - ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die - done - popd >/dev/null || die -} - -pkg_pretend() { - if use vulkan; then - if ! use video_cards_d3d12 && - ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_lavapipe && - ! use video_cards_nouveau && - ! use video_cards_nvk && - ! use video_cards_panfrost && - ! use video_cards_radeonsi && - ! use video_cards_v3d && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" - fi - fi - - # VA - if use vaapi; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use vdpau; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use xa; then - if ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_nouveau && - ! use video_cards_vmware; then - ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" - fi - fi - - if ! use llvm; then - use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm" - fi - - if use osmesa && ! use llvm; then - ewarn "OSMesa will be slow without enabling USE=llvm" - fi -} - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" || return 1 - if use llvm && use vulkan && use video_cards_intel && use amd64; then - python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 - fi -} - -pkg_setup() { - # warning message for bug 459306 - if use llvm && has_version sys-devel/llvm[!debug=]; then - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm" - ewarn "detected! This can cause problems. For details, see bug 459306." - fi - - if use video_cards_intel || - use video_cards_radeonsi; then - if kernel_is -ge 5 11 3; then - CONFIG_CHECK="~KCMP" - elif kernel_is -ge 5 11; then - CONFIG_CHECK="~CHECKPOINT_RESTORE" - elif kernel_is -ge 5 10 20; then - CONFIG_CHECK="~KCMP" - else - CONFIG_CHECK="~CHECKPOINT_RESTORE" - fi - linux-info_pkg_setup - fi - - use llvm && llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - default - sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ - bin/symbols-check.py || die # bug #830728 -} - -multilib_src_configure() { - local emesonargs=() - - # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 - tc-is-gcc && [[ $(gcc-major-version) -ge 14 ]] && filter-lto - - local platforms - use X && platforms+="x11" - use wayland && platforms+=",wayland" - emesonargs+=(-Dplatforms=${platforms#,}) - - if use video_cards_freedreno || - use video_cards_intel || # crocus i915 iris - use video_cards_nouveau || - use video_cards_panfrost || - use video_cards_r300 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_vmware || # swrast - use video_cards_zink; then - emesonargs+=($(meson_use d3d9 gallium-nine)) - else - emesonargs+=(-Dgallium-nine=false) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vaapi gallium-va)) - use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers ) - else - emesonargs+=(-Dgallium-va=disabled) - fi - - if use video_cards_d3d12; then - emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vdpau gallium-vdpau)) - else - emesonargs+=(-Dgallium-vdpau=disabled) - fi - - if use video_cards_freedreno || - use video_cards_intel || - use video_cards_nouveau || - use video_cards_vmware; then - emesonargs+=($(meson_feature xa gallium-xa)) - else - emesonargs+=(-Dgallium-xa=disabled) - fi - - if use video_cards_freedreno || - use video_cards_lima || - use video_cards_panfrost || - use video_cards_v3d || - use video_cards_vc4 || - use video_cards_vivante; then - gallium_enable -- kmsro - fi - - gallium_enable -- swrast - gallium_enable video_cards_d3d12 d3d12 - gallium_enable video_cards_freedreno freedreno - gallium_enable video_cards_intel crocus i915 iris - gallium_enable video_cards_lima lima - gallium_enable video_cards_nouveau nouveau - gallium_enable video_cards_panfrost panfrost - gallium_enable video_cards_v3d v3d - gallium_enable video_cards_vc4 vc4 - gallium_enable video_cards_virgl virgl - gallium_enable video_cards_vivante etnaviv - gallium_enable video_cards_vmware svga - gallium_enable video_cards_zink zink - - gallium_enable video_cards_r300 r300 - gallium_enable video_cards_r600 r600 - gallium_enable video_cards_radeonsi radeonsi - if ! use video_cards_r300 && - ! use video_cards_r600; then - gallium_enable video_cards_radeon r300 r600 - fi - - if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst - emesonargs+=( - $(meson_native_true gallium-rusticl) - -Drust_std=2021 - ) - fi - - if use vulkan; then - vulkan_enable video_cards_d3d12 microsoft-experimental - vulkan_enable video_cards_freedreno freedreno - vulkan_enable video_cards_intel intel intel_hasvk - vulkan_enable video_cards_lavapipe swrast - vulkan_enable video_cards_panfrost panfrost - vulkan_enable video_cards_radeonsi amd - vulkan_enable video_cards_v3d broadcom - vulkan_enable video_cards_vc4 broadcom - vulkan_enable video_cards_virgl virtio - if use video_cards_nvk; then - vulkan_enable video_cards_nvk nouveau - if ! multilib_is_native_abi; then - echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" - emesonargs+=( - --native-file "${T}"/rust_fix.ini - ) - fi - fi - fi - - driver_list() { - local drivers="$(sort -u <<< "${1// /$'\n'}")" - echo "${drivers//$'\n'/,}" - } - - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - - if use opengl && use X; then - emesonargs+=(-Dglx=dri) - else - emesonargs+=(-Dglx=disabled) - fi - - if [[ "${ABI}" == amd64 ]]; then - emesonargs+=($(meson_feature video_cards_intel intel-rt)) - fi - - use debug && EMESON_BUILDTYPE=debug - - emesonargs+=( - $(meson_use test build-tests) - -Dshared-glapi=enabled - -Ddri3=enabled - -Dexpat=enabled - $(meson_use opengl) - $(meson_feature opengl gbm) - $(meson_feature opengl gles1) - $(meson_feature opengl gles2) - $(meson_feature opengl glvnd) - $(meson_feature opengl egl) - $(meson_feature llvm) - $(meson_feature lm-sensors lmsensors) - $(meson_use osmesa) - $(meson_use selinux) - $(meson_feature unwind libunwind) - $(meson_feature zstd) - $(meson_use cpu_flags_x86_sse2 sse2) - -Dintel-clc=$(usex video_cards_intel system auto) - -Dvalgrind=$(usex valgrind auto disabled) - -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") - -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") - -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure - - if ! multilib_is_native_abi && use video_cards_nvk; then - sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die - fi -} - -multilib_src_test() { - meson_src_test -t 100 -} - -# $1 - VIDEO_CARDS flag (check skipped for "--") -# other args - names of DRI drivers to enable -gallium_enable() { - if [[ $1 == -- ]] || use $1; then - shift - GALLIUM_DRIVERS+=("$@") - fi -} - -vulkan_enable() { - if [[ $1 == -- ]] || use $1; then - shift - VULKAN_DRIVERS+=("$@") - fi -} diff --git a/media-libs/mesa/mesa-24.1.7.ebuild b/media-libs/mesa/mesa-24.1.7.ebuild index ecfc5c2c1b39..21a8ac3b80e2 100644 --- a/media-libs/mesa/mesa-24.1.7.ebuild +++ b/media-libs/mesa/mesa-24.1.7.ebuild @@ -32,7 +32,7 @@ else SRC_URI=" https://archive.mesa3d.org/${MY_P}.tar.xz " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris" fi # This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, diff --git a/media-libs/mesa/mesa-24.2.0_rc4.ebuild b/media-libs/mesa/mesa-24.2.0_rc4.ebuild deleted file mode 100644 index 8e909b9f1bf8..000000000000 --- a/media-libs/mesa/mesa-24.2.0_rc4.ebuild +++ /dev/null @@ -1,490 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {15..18} ) -LLVM_OPTIONAL=1 -CARGO_OPTIONAL=1 -PYTHON_COMPAT=( python3_{10..12} ) - -inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain toolchain-funcs - -MY_P="${P/_/-}" - -CRATES=" - syn@2.0.39 - proc-macro2@1.0.70 - quote@1.0.33 - unicode-ident@1.0.12 - paste@1.0.14 -" - -inherit cargo - -DESCRIPTION="OpenGL-like graphic library for Linux" -HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - SRC_URI=" - https://archive.mesa3d.org/${MY_P}.tar.xz - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" -fi - -# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, -# but there are "stale" distfiles on the mirrors with the wrong names. -# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" -SRC_URI+=" - ${CARGO_CRATE_URIS} -" - -S="${WORKDIR}/${MY_P}" -EGIT_CHECKOUT_DIR=${S} - -LICENSE="MIT SGI-B-2.0" -SLOT="0" - -RADEON_CARDS="r300 r600 radeon radeonsi" -VIDEO_CARDS="${RADEON_CARDS} - d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl - vivante vmware zink" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - cpu_flags_x86_sse2 d3d9 debug +llvm - lm-sensors opencl +opengl osmesa +proprietary-codecs selinux - test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" -RESTRICT="!test? ( test )" -REQUIRED_USE=" - d3d9? ( - || ( - video_cards_freedreno - video_cards_intel - video_cards_nouveau - video_cards_panfrost - video_cards_r300 - video_cards_r600 - video_cards_radeonsi - video_cards_vmware - video_cards_zink - ) - ) - llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) - video_cards_lavapipe? ( llvm vulkan ) - video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_zink? ( vulkan opengl ) - video_cards_nvk? ( vulkan video_cards_nouveau ) - vdpau? ( X ) - xa? ( X ) -" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.121" -RDEPEND=" - >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] - >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] - >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] - unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) - llvm? ( - $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - opencl? ( - dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - ) - ") - video_cards_r600? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - video_cards_radeon? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - ) - lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) - opencl? ( - >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 - virtual/libelf:0= - ) - vaapi? ( - >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] - ) - vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) - video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) - selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) - wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}] - X? ( - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}] - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] - >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] - >=x11-libs/libxcb-1.17:=[${MULTILIB_USEDEP}] - x11-libs/libXfixes[${MULTILIB_USEDEP}] - x11-libs/xcb-util-keysyms[${MULTILIB_USEDEP}] - ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -for card in ${RADEON_CARDS}; do - RDEPEND="${RDEPEND} - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] ) - " -done -RDEPEND="${RDEPEND} - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] ) -" - -DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) - valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) - X? ( - x11-libs/libXrandr[${MULTILIB_USEDEP}] - x11-base/xorg-proto - ) -" -BDEPEND=" - ${PYTHON_DEPS} - opencl? ( - >=virtual/rust-1.62.0 - >=dev-util/bindgen-0.58.0 - ) - >=dev-build/meson-1.4.1 - app-alternatives/yacc - app-alternatives/lex - virtual/pkgconfig - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - dev-python/pyyaml[\${PYTHON_USEDEP}] - ") - video_cards_intel? ( - ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] - $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") - ) - vulkan? ( - dev-util/glslang - video_cards_nvk? ( - >=dev-util/bindgen-0.68.1 - >=dev-util/cbindgen-0.26.0 - >=virtual/rust-1.74.1 - ) - ) - wayland? ( dev-util/wayland-scanner ) -" - -QA_WX_LOAD=" -x86? ( - usr/lib/libglapi.so.0.0.0 - usr/lib/libOSMesa.so.8.0.0 - usr/lib/libGLX_mesa.so.0.0.0 -)" - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack ${MY_P}.tar.xz - fi - - # We need this because we cannot tell meson to use DISTDIR yet - pushd "${DISTDIR}" >/dev/null || die - mkdir -p "${S}"/subprojects/packagecache || die - local i - for i in *.crate; do - ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die - done - popd >/dev/null || die -} - -pkg_pretend() { - if use vulkan; then - if ! use video_cards_d3d12 && - ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_lavapipe && - ! use video_cards_nouveau && - ! use video_cards_nvk && - ! use video_cards_panfrost && - ! use video_cards_radeonsi && - ! use video_cards_v3d && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" - fi - fi - - # VA - if use vaapi; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use vdpau; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use xa; then - if ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_nouveau && - ! use video_cards_vmware; then - ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" - fi - fi - - if ! use llvm; then - use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm" - fi - - if use osmesa && ! use llvm; then - ewarn "OSMesa will be slow without enabling USE=llvm" - fi -} - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1 - if use llvm && use vulkan && use video_cards_intel && use amd64; then - python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 - fi -} - -pkg_setup() { - # warning message for bug 459306 - if use llvm && has_version sys-devel/llvm[!debug=]; then - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm" - ewarn "detected! This can cause problems. For details, see bug 459306." - fi - - if use video_cards_intel || - use video_cards_radeonsi; then - if kernel_is -ge 5 11 3; then - CONFIG_CHECK="~KCMP" - elif kernel_is -ge 5 11; then - CONFIG_CHECK="~CHECKPOINT_RESTORE" - elif kernel_is -ge 5 10 20; then - CONFIG_CHECK="~KCMP" - else - CONFIG_CHECK="~CHECKPOINT_RESTORE" - fi - linux-info_pkg_setup - fi - - use llvm && llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - default - sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ - bin/symbols-check.py || die # bug #830728 -} - -multilib_src_configure() { - local emesonargs=() - - # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 - tc-is-gcc && [[ $(gcc-major-version) -ge 14 ]] && filter-lto - - local platforms - use X && platforms+="x11" - use wayland && platforms+=",wayland" - emesonargs+=(-Dplatforms=${platforms#,}) - - if use video_cards_freedreno || - use video_cards_intel || # crocus i915 iris - use video_cards_nouveau || - use video_cards_panfrost || - use video_cards_r300 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_vmware || # svga - use video_cards_zink; then - emesonargs+=($(meson_use d3d9 gallium-nine)) - else - emesonargs+=(-Dgallium-nine=false) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vaapi gallium-va)) - use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers ) - else - emesonargs+=(-Dgallium-va=disabled) - fi - - if use video_cards_d3d12; then - emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vdpau gallium-vdpau)) - else - emesonargs+=(-Dgallium-vdpau=disabled) - fi - - if use video_cards_freedreno || - use video_cards_intel || - use video_cards_nouveau || - use video_cards_vmware; then - emesonargs+=($(meson_feature xa gallium-xa)) - else - emesonargs+=(-Dgallium-xa=disabled) - fi - - gallium_enable !llvm softpipe - gallium_enable llvm llvmpipe - gallium_enable video_cards_d3d12 d3d12 - gallium_enable video_cards_freedreno freedreno - gallium_enable video_cards_intel crocus i915 iris - gallium_enable video_cards_lima lima - gallium_enable video_cards_nouveau nouveau - gallium_enable video_cards_panfrost panfrost - gallium_enable video_cards_v3d v3d - gallium_enable video_cards_vc4 vc4 - gallium_enable video_cards_virgl virgl - gallium_enable video_cards_vivante etnaviv - gallium_enable video_cards_vmware svga - gallium_enable video_cards_zink zink - - gallium_enable video_cards_r300 r300 - gallium_enable video_cards_r600 r600 - gallium_enable video_cards_radeonsi radeonsi - if ! use video_cards_r300 && - ! use video_cards_r600; then - gallium_enable video_cards_radeon r300 r600 - fi - - if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst - emesonargs+=( - $(meson_native_true gallium-rusticl) - -Drust_std=2021 - ) - fi - - if use vulkan; then - vulkan_enable video_cards_d3d12 microsoft-experimental - vulkan_enable video_cards_freedreno freedreno - vulkan_enable video_cards_intel intel intel_hasvk - vulkan_enable video_cards_lavapipe swrast - vulkan_enable video_cards_panfrost panfrost - vulkan_enable video_cards_radeonsi amd - vulkan_enable video_cards_v3d broadcom - vulkan_enable video_cards_vc4 broadcom - vulkan_enable video_cards_virgl virtio - if use video_cards_nvk; then - vulkan_enable video_cards_nvk nouveau - if ! multilib_is_native_abi; then - echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" - emesonargs+=( - --native-file "${T}"/rust_fix.ini - ) - fi - fi - fi - - driver_list() { - local drivers="$(sort -u <<< "${1// /$'\n'}")" - echo "${drivers//$'\n'/,}" - } - - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - - if use opengl && use X; then - emesonargs+=(-Dglx=dri) - else - emesonargs+=(-Dglx=disabled) - fi - - if [[ "${ABI}" == amd64 ]]; then - emesonargs+=($(meson_feature video_cards_intel intel-rt)) - fi - - use debug && EMESON_BUILDTYPE=debug - - emesonargs+=( - $(meson_use test build-tests) - -Dshared-glapi=enabled - -Ddri3=enabled - -Dexpat=enabled - $(meson_use opengl) - $(meson_feature opengl gbm) - $(meson_feature opengl gles1) - $(meson_feature opengl gles2) - $(meson_feature opengl glvnd) - $(meson_feature opengl egl) - $(meson_feature llvm) - $(meson_feature lm-sensors lmsensors) - $(meson_use osmesa) - $(meson_use selinux) - $(meson_feature unwind libunwind) - $(meson_feature zstd) - $(meson_use cpu_flags_x86_sse2 sse2) - -Dintel-clc=$(usex video_cards_intel system auto) - -Dvalgrind=$(usex valgrind auto disabled) - -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") - -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") - -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure - - if ! multilib_is_native_abi && use video_cards_nvk; then - sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die - fi -} - -multilib_src_test() { - meson_src_test -t 100 -} - -# $1 - VIDEO_CARDS flag (check skipped for "--") -# other args - names of DRI drivers to enable -gallium_enable() { - if [[ $1 == -- ]] || use $1; then - shift - GALLIUM_DRIVERS+=("$@") - fi -} - -vulkan_enable() { - if [[ $1 == -- ]] || use $1; then - shift - VULKAN_DRIVERS+=("$@") - fi -} diff --git a/media-libs/mesa/mesa-24.2.1.ebuild b/media-libs/mesa/mesa-24.2.1.ebuild deleted file mode 100644 index f6e781d20e57..000000000000 --- a/media-libs/mesa/mesa-24.2.1.ebuild +++ /dev/null @@ -1,490 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {15..18} ) -LLVM_OPTIONAL=1 -CARGO_OPTIONAL=1 -PYTHON_COMPAT=( python3_{10..13} ) - -inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain toolchain-funcs - -MY_P="${P/_/-}" - -CRATES=" - syn@2.0.68 - proc-macro2@1.0.86 - quote@1.0.33 - unicode-ident@1.0.12 - paste@1.0.14 -" - -inherit cargo - -DESCRIPTION="OpenGL-like graphic library for Linux" -HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - SRC_URI=" - https://archive.mesa3d.org/${MY_P}.tar.xz - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" -fi - -# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, -# but there are "stale" distfiles on the mirrors with the wrong names. -# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" -SRC_URI+=" - ${CARGO_CRATE_URIS} -" - -S="${WORKDIR}/${MY_P}" -EGIT_CHECKOUT_DIR=${S} - -LICENSE="MIT SGI-B-2.0" -SLOT="0" - -RADEON_CARDS="r300 r600 radeon radeonsi" -VIDEO_CARDS="${RADEON_CARDS} - d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl - vivante vmware zink" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - cpu_flags_x86_sse2 d3d9 debug +llvm - lm-sensors opencl +opengl osmesa +proprietary-codecs selinux - test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" -RESTRICT="!test? ( test )" -REQUIRED_USE=" - d3d9? ( - || ( - video_cards_freedreno - video_cards_intel - video_cards_nouveau - video_cards_panfrost - video_cards_r300 - video_cards_r600 - video_cards_radeonsi - video_cards_vmware - video_cards_zink - ) - ) - llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) - video_cards_lavapipe? ( llvm vulkan ) - video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_zink? ( vulkan opengl ) - video_cards_nvk? ( vulkan video_cards_nouveau ) - vdpau? ( X ) - xa? ( X ) -" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.121" -RDEPEND=" - >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] - >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] - >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] - unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) - llvm? ( - $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - opencl? ( - dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - ) - ") - video_cards_r600? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - video_cards_radeon? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - ) - lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) - opencl? ( - >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 - virtual/libelf:0= - ) - vaapi? ( - >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] - ) - vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) - video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) - selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) - wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}] - X? ( - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}] - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] - >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] - >=x11-libs/libxcb-1.17:=[${MULTILIB_USEDEP}] - x11-libs/libXfixes[${MULTILIB_USEDEP}] - x11-libs/xcb-util-keysyms[${MULTILIB_USEDEP}] - ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -for card in ${RADEON_CARDS}; do - RDEPEND="${RDEPEND} - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] ) - " -done -RDEPEND="${RDEPEND} - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] ) -" - -DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) - valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) - X? ( - x11-libs/libXrandr[${MULTILIB_USEDEP}] - x11-base/xorg-proto - ) -" -BDEPEND=" - ${PYTHON_DEPS} - opencl? ( - >=virtual/rust-1.62.0 - >=dev-util/bindgen-0.58.0 - ) - >=dev-build/meson-1.4.1 - app-alternatives/yacc - app-alternatives/lex - virtual/pkgconfig - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - dev-python/pyyaml[\${PYTHON_USEDEP}] - ") - video_cards_intel? ( - ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] - $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") - ) - vulkan? ( - dev-util/glslang - video_cards_nvk? ( - >=dev-util/bindgen-0.68.1 - >=dev-util/cbindgen-0.26.0 - >=virtual/rust-1.74.1 - ) - ) - wayland? ( dev-util/wayland-scanner ) -" - -QA_WX_LOAD=" -x86? ( - usr/lib/libglapi.so.0.0.0 - usr/lib/libOSMesa.so.8.0.0 - usr/lib/libGLX_mesa.so.0.0.0 -)" - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack ${MY_P}.tar.xz - fi - - # We need this because we cannot tell meson to use DISTDIR yet - pushd "${DISTDIR}" >/dev/null || die - mkdir -p "${S}"/subprojects/packagecache || die - local i - for i in *.crate; do - ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die - done - popd >/dev/null || die -} - -pkg_pretend() { - if use vulkan; then - if ! use video_cards_d3d12 && - ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_lavapipe && - ! use video_cards_nouveau && - ! use video_cards_nvk && - ! use video_cards_panfrost && - ! use video_cards_radeonsi && - ! use video_cards_v3d && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" - fi - fi - - # VA - if use vaapi; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use vdpau; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use xa; then - if ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_nouveau && - ! use video_cards_vmware; then - ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" - fi - fi - - if ! use llvm; then - use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm" - fi - - if use osmesa && ! use llvm; then - ewarn "OSMesa will be slow without enabling USE=llvm" - fi -} - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1 - if use llvm && use vulkan && use video_cards_intel && use amd64; then - python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 - fi -} - -pkg_setup() { - # warning message for bug 459306 - if use llvm && has_version sys-devel/llvm[!debug=]; then - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm" - ewarn "detected! This can cause problems. For details, see bug 459306." - fi - - if use video_cards_intel || - use video_cards_radeonsi; then - if kernel_is -ge 5 11 3; then - CONFIG_CHECK="~KCMP" - elif kernel_is -ge 5 11; then - CONFIG_CHECK="~CHECKPOINT_RESTORE" - elif kernel_is -ge 5 10 20; then - CONFIG_CHECK="~KCMP" - else - CONFIG_CHECK="~CHECKPOINT_RESTORE" - fi - linux-info_pkg_setup - fi - - use llvm && llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - default - sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ - bin/symbols-check.py || die # bug #830728 -} - -multilib_src_configure() { - local emesonargs=() - - # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 - tc-is-gcc && [[ $(gcc-major-version) -ge 14 ]] && filter-lto - - local platforms - use X && platforms+="x11" - use wayland && platforms+=",wayland" - emesonargs+=(-Dplatforms=${platforms#,}) - - if use video_cards_freedreno || - use video_cards_intel || # crocus i915 iris - use video_cards_nouveau || - use video_cards_panfrost || - use video_cards_r300 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_vmware || # svga - use video_cards_zink; then - emesonargs+=($(meson_use d3d9 gallium-nine)) - else - emesonargs+=(-Dgallium-nine=false) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vaapi gallium-va)) - use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers ) - else - emesonargs+=(-Dgallium-va=disabled) - fi - - if use video_cards_d3d12; then - emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vdpau gallium-vdpau)) - else - emesonargs+=(-Dgallium-vdpau=disabled) - fi - - if use video_cards_freedreno || - use video_cards_intel || - use video_cards_nouveau || - use video_cards_vmware; then - emesonargs+=($(meson_feature xa gallium-xa)) - else - emesonargs+=(-Dgallium-xa=disabled) - fi - - gallium_enable !llvm softpipe - gallium_enable llvm llvmpipe - gallium_enable video_cards_d3d12 d3d12 - gallium_enable video_cards_freedreno freedreno - gallium_enable video_cards_intel crocus i915 iris - gallium_enable video_cards_lima lima - gallium_enable video_cards_nouveau nouveau - gallium_enable video_cards_panfrost panfrost - gallium_enable video_cards_v3d v3d - gallium_enable video_cards_vc4 vc4 - gallium_enable video_cards_virgl virgl - gallium_enable video_cards_vivante etnaviv - gallium_enable video_cards_vmware svga - gallium_enable video_cards_zink zink - - gallium_enable video_cards_r300 r300 - gallium_enable video_cards_r600 r600 - gallium_enable video_cards_radeonsi radeonsi - if ! use video_cards_r300 && - ! use video_cards_r600; then - gallium_enable video_cards_radeon r300 r600 - fi - - if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst - emesonargs+=( - $(meson_native_true gallium-rusticl) - -Drust_std=2021 - ) - fi - - if use vulkan; then - vulkan_enable video_cards_d3d12 microsoft-experimental - vulkan_enable video_cards_freedreno freedreno - vulkan_enable video_cards_intel intel intel_hasvk - vulkan_enable video_cards_lavapipe swrast - vulkan_enable video_cards_panfrost panfrost - vulkan_enable video_cards_radeonsi amd - vulkan_enable video_cards_v3d broadcom - vulkan_enable video_cards_vc4 broadcom - vulkan_enable video_cards_virgl virtio - if use video_cards_nvk; then - vulkan_enable video_cards_nvk nouveau - if ! multilib_is_native_abi; then - echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" - emesonargs+=( - --native-file "${T}"/rust_fix.ini - ) - fi - fi - fi - - driver_list() { - local drivers="$(sort -u <<< "${1// /$'\n'}")" - echo "${drivers//$'\n'/,}" - } - - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - - if use opengl && use X; then - emesonargs+=(-Dglx=dri) - else - emesonargs+=(-Dglx=disabled) - fi - - if [[ "${ABI}" == amd64 ]]; then - emesonargs+=($(meson_feature video_cards_intel intel-rt)) - fi - - use debug && EMESON_BUILDTYPE=debug - - emesonargs+=( - $(meson_use test build-tests) - -Dshared-glapi=enabled - -Ddri3=enabled - -Dexpat=enabled - $(meson_use opengl) - $(meson_feature opengl gbm) - $(meson_feature opengl gles1) - $(meson_feature opengl gles2) - $(meson_feature opengl glvnd) - $(meson_feature opengl egl) - $(meson_feature llvm) - $(meson_feature lm-sensors lmsensors) - $(meson_use osmesa) - $(meson_use selinux) - $(meson_feature unwind libunwind) - $(meson_feature zstd) - $(meson_use cpu_flags_x86_sse2 sse2) - -Dintel-clc=$(usex video_cards_intel system auto) - -Dvalgrind=$(usex valgrind auto disabled) - -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") - -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") - -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure - - if ! multilib_is_native_abi && use video_cards_nvk; then - sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die - fi -} - -multilib_src_test() { - meson_src_test -t 100 -} - -# $1 - VIDEO_CARDS flag (check skipped for "--") -# other args - names of DRI drivers to enable -gallium_enable() { - if [[ $1 == -- ]] || use $1; then - shift - GALLIUM_DRIVERS+=("$@") - fi -} - -vulkan_enable() { - if [[ $1 == -- ]] || use $1; then - shift - VULKAN_DRIVERS+=("$@") - fi -} diff --git a/media-libs/mesa/mesa-24.2.2.ebuild b/media-libs/mesa/mesa-24.2.2.ebuild deleted file mode 100644 index f6e781d20e57..000000000000 --- a/media-libs/mesa/mesa-24.2.2.ebuild +++ /dev/null @@ -1,490 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {15..18} ) -LLVM_OPTIONAL=1 -CARGO_OPTIONAL=1 -PYTHON_COMPAT=( python3_{10..13} ) - -inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain toolchain-funcs - -MY_P="${P/_/-}" - -CRATES=" - syn@2.0.68 - proc-macro2@1.0.86 - quote@1.0.33 - unicode-ident@1.0.12 - paste@1.0.14 -" - -inherit cargo - -DESCRIPTION="OpenGL-like graphic library for Linux" -HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" - inherit git-r3 -else - SRC_URI=" - https://archive.mesa3d.org/${MY_P}.tar.xz - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" -fi - -# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, -# but there are "stale" distfiles on the mirrors with the wrong names. -# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" -SRC_URI+=" - ${CARGO_CRATE_URIS} -" - -S="${WORKDIR}/${MY_P}" -EGIT_CHECKOUT_DIR=${S} - -LICENSE="MIT SGI-B-2.0" -SLOT="0" - -RADEON_CARDS="r300 r600 radeon radeonsi" -VIDEO_CARDS="${RADEON_CARDS} - d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl - vivante vmware zink" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - cpu_flags_x86_sse2 d3d9 debug +llvm - lm-sensors opencl +opengl osmesa +proprietary-codecs selinux - test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" -RESTRICT="!test? ( test )" -REQUIRED_USE=" - d3d9? ( - || ( - video_cards_freedreno - video_cards_intel - video_cards_nouveau - video_cards_panfrost - video_cards_r300 - video_cards_r600 - video_cards_radeonsi - video_cards_vmware - video_cards_zink - ) - ) - llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) - video_cards_lavapipe? ( llvm vulkan ) - video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_zink? ( vulkan opengl ) - video_cards_nvk? ( vulkan video_cards_nouveau ) - vdpau? ( X ) - xa? ( X ) -" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.121" -RDEPEND=" - >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] - >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] - >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] - unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) - llvm? ( - $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - opencl? ( - dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - ) - ") - video_cards_r600? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - video_cards_radeon? ( - virtual/libelf:0=[${MULTILIB_USEDEP}] - ) - ) - lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) - opencl? ( - >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 - virtual/libelf:0= - ) - vaapi? ( - >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] - ) - vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) - video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) - selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) - wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}] - X? ( - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}] - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] - >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] - >=x11-libs/libxcb-1.17:=[${MULTILIB_USEDEP}] - x11-libs/libXfixes[${MULTILIB_USEDEP}] - x11-libs/xcb-util-keysyms[${MULTILIB_USEDEP}] - ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -for card in ${RADEON_CARDS}; do - RDEPEND="${RDEPEND} - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] ) - " -done -RDEPEND="${RDEPEND} - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] ) -" - -DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) - valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) - X? ( - x11-libs/libXrandr[${MULTILIB_USEDEP}] - x11-base/xorg-proto - ) -" -BDEPEND=" - ${PYTHON_DEPS} - opencl? ( - >=virtual/rust-1.62.0 - >=dev-util/bindgen-0.58.0 - ) - >=dev-build/meson-1.4.1 - app-alternatives/yacc - app-alternatives/lex - virtual/pkgconfig - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - dev-python/pyyaml[\${PYTHON_USEDEP}] - ") - video_cards_intel? ( - ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] - $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") - ) - vulkan? ( - dev-util/glslang - video_cards_nvk? ( - >=dev-util/bindgen-0.68.1 - >=dev-util/cbindgen-0.26.0 - >=virtual/rust-1.74.1 - ) - ) - wayland? ( dev-util/wayland-scanner ) -" - -QA_WX_LOAD=" -x86? ( - usr/lib/libglapi.so.0.0.0 - usr/lib/libOSMesa.so.8.0.0 - usr/lib/libGLX_mesa.so.0.0.0 -)" - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack ${MY_P}.tar.xz - fi - - # We need this because we cannot tell meson to use DISTDIR yet - pushd "${DISTDIR}" >/dev/null || die - mkdir -p "${S}"/subprojects/packagecache || die - local i - for i in *.crate; do - ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die - done - popd >/dev/null || die -} - -pkg_pretend() { - if use vulkan; then - if ! use video_cards_d3d12 && - ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_lavapipe && - ! use video_cards_nouveau && - ! use video_cards_nvk && - ! use video_cards_panfrost && - ! use video_cards_radeonsi && - ! use video_cards_v3d && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" - fi - fi - - # VA - if use vaapi; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use vdpau; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use xa; then - if ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_nouveau && - ! use video_cards_vmware; then - ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" - fi - fi - - if ! use llvm; then - use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm" - fi - - if use osmesa && ! use llvm; then - ewarn "OSMesa will be slow without enabling USE=llvm" - fi -} - -python_check_deps() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1 - if use llvm && use vulkan && use video_cards_intel && use amd64; then - python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 - fi -} - -pkg_setup() { - # warning message for bug 459306 - if use llvm && has_version sys-devel/llvm[!debug=]; then - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm" - ewarn "detected! This can cause problems. For details, see bug 459306." - fi - - if use video_cards_intel || - use video_cards_radeonsi; then - if kernel_is -ge 5 11 3; then - CONFIG_CHECK="~KCMP" - elif kernel_is -ge 5 11; then - CONFIG_CHECK="~CHECKPOINT_RESTORE" - elif kernel_is -ge 5 10 20; then - CONFIG_CHECK="~KCMP" - else - CONFIG_CHECK="~CHECKPOINT_RESTORE" - fi - linux-info_pkg_setup - fi - - use llvm && llvm-r1_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - default - sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ - bin/symbols-check.py || die # bug #830728 -} - -multilib_src_configure() { - local emesonargs=() - - # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 - tc-is-gcc && [[ $(gcc-major-version) -ge 14 ]] && filter-lto - - local platforms - use X && platforms+="x11" - use wayland && platforms+=",wayland" - emesonargs+=(-Dplatforms=${platforms#,}) - - if use video_cards_freedreno || - use video_cards_intel || # crocus i915 iris - use video_cards_nouveau || - use video_cards_panfrost || - use video_cards_r300 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_vmware || # svga - use video_cards_zink; then - emesonargs+=($(meson_use d3d9 gallium-nine)) - else - emesonargs+=(-Dgallium-nine=false) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vaapi gallium-va)) - use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers ) - else - emesonargs+=(-Dgallium-va=disabled) - fi - - if use video_cards_d3d12; then - emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vdpau gallium-vdpau)) - else - emesonargs+=(-Dgallium-vdpau=disabled) - fi - - if use video_cards_freedreno || - use video_cards_intel || - use video_cards_nouveau || - use video_cards_vmware; then - emesonargs+=($(meson_feature xa gallium-xa)) - else - emesonargs+=(-Dgallium-xa=disabled) - fi - - gallium_enable !llvm softpipe - gallium_enable llvm llvmpipe - gallium_enable video_cards_d3d12 d3d12 - gallium_enable video_cards_freedreno freedreno - gallium_enable video_cards_intel crocus i915 iris - gallium_enable video_cards_lima lima - gallium_enable video_cards_nouveau nouveau - gallium_enable video_cards_panfrost panfrost - gallium_enable video_cards_v3d v3d - gallium_enable video_cards_vc4 vc4 - gallium_enable video_cards_virgl virgl - gallium_enable video_cards_vivante etnaviv - gallium_enable video_cards_vmware svga - gallium_enable video_cards_zink zink - - gallium_enable video_cards_r300 r300 - gallium_enable video_cards_r600 r600 - gallium_enable video_cards_radeonsi radeonsi - if ! use video_cards_r300 && - ! use video_cards_r600; then - gallium_enable video_cards_radeon r300 r600 - fi - - if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst - emesonargs+=( - $(meson_native_true gallium-rusticl) - -Drust_std=2021 - ) - fi - - if use vulkan; then - vulkan_enable video_cards_d3d12 microsoft-experimental - vulkan_enable video_cards_freedreno freedreno - vulkan_enable video_cards_intel intel intel_hasvk - vulkan_enable video_cards_lavapipe swrast - vulkan_enable video_cards_panfrost panfrost - vulkan_enable video_cards_radeonsi amd - vulkan_enable video_cards_v3d broadcom - vulkan_enable video_cards_vc4 broadcom - vulkan_enable video_cards_virgl virtio - if use video_cards_nvk; then - vulkan_enable video_cards_nvk nouveau - if ! multilib_is_native_abi; then - echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" - emesonargs+=( - --native-file "${T}"/rust_fix.ini - ) - fi - fi - fi - - driver_list() { - local drivers="$(sort -u <<< "${1// /$'\n'}")" - echo "${drivers//$'\n'/,}" - } - - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - - if use opengl && use X; then - emesonargs+=(-Dglx=dri) - else - emesonargs+=(-Dglx=disabled) - fi - - if [[ "${ABI}" == amd64 ]]; then - emesonargs+=($(meson_feature video_cards_intel intel-rt)) - fi - - use debug && EMESON_BUILDTYPE=debug - - emesonargs+=( - $(meson_use test build-tests) - -Dshared-glapi=enabled - -Ddri3=enabled - -Dexpat=enabled - $(meson_use opengl) - $(meson_feature opengl gbm) - $(meson_feature opengl gles1) - $(meson_feature opengl gles2) - $(meson_feature opengl glvnd) - $(meson_feature opengl egl) - $(meson_feature llvm) - $(meson_feature lm-sensors lmsensors) - $(meson_use osmesa) - $(meson_use selinux) - $(meson_feature unwind libunwind) - $(meson_feature zstd) - $(meson_use cpu_flags_x86_sse2 sse2) - -Dintel-clc=$(usex video_cards_intel system auto) - -Dvalgrind=$(usex valgrind auto disabled) - -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") - -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") - -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure - - if ! multilib_is_native_abi && use video_cards_nvk; then - sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die - fi -} - -multilib_src_test() { - meson_src_test -t 100 -} - -# $1 - VIDEO_CARDS flag (check skipped for "--") -# other args - names of DRI drivers to enable -gallium_enable() { - if [[ $1 == -- ]] || use $1; then - shift - GALLIUM_DRIVERS+=("$@") - fi -} - -vulkan_enable() { - if [[ $1 == -- ]] || use $1; then - shift - VULKAN_DRIVERS+=("$@") - fi -} diff --git a/media-libs/mesa/mesa-24.2.0.ebuild b/media-libs/mesa/mesa-24.2.3.ebuild index f6e781d20e57..f6e781d20e57 100644 --- a/media-libs/mesa/mesa-24.2.0.ebuild +++ b/media-libs/mesa/mesa-24.2.3.ebuild diff --git a/media-libs/mesa/metadata.xml b/media-libs/mesa/metadata.xml index 459ad451374c..7751dc5a1a80 100644 --- a/media-libs/mesa/metadata.xml +++ b/media-libs/mesa/metadata.xml @@ -7,7 +7,6 @@ </maintainer> <use> <flag name="d3d9">Enable Direct 3D9 API through Nine state tracker. Can be used together with patched wine.</flag> - <flag name="gles1">Enable GLESv1 support.</flag> <flag name="llvm">Enable LLVM backend for Gallium3D.</flag> <flag name="lm-sensors">Enable Gallium HUD lm-sensors support.</flag> <flag name="opencl">Enable the Rusticl Gallium OpenCL state tracker.</flag> @@ -17,7 +16,6 @@ <flag name="vulkan-overlay">Build vulkan-overlay-layer which displays Frames Per Second and other statistics</flag> <flag name="wayland">Enable support for <pkg>dev-libs/wayland</pkg></flag> <flag name="xa">Enable the XA (X Acceleration) API for Gallium3D.</flag> - <flag name="zink">Enable the Zink OpenGL-over-Vulkan Gallium driver</flag> </use> <upstream> <remote-id type="cpe">cpe:/a:mesa3d:mesa</remote-id> diff --git a/media-plugins/imlib2_loaders/imlib2_loaders-1.12.3.ebuild b/media-plugins/imlib2_loaders/imlib2_loaders-1.12.3.ebuild index d2f84bfedf65..f6322646e0e9 100644 --- a/media-plugins/imlib2_loaders/imlib2_loaders-1.12.3.ebuild +++ b/media-plugins/imlib2_loaders/imlib2_loaders-1.12.3.ebuild @@ -10,7 +10,7 @@ SRC_URI="https://downloads.sourceforge.net/enlightenment/${P}.tar.xz" LICENSE="|| ( BSD GPL-2 )" SLOT="0" -KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris" +KEYWORDS="amd64 arm ~hppa ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris" IUSE="xcf" RDEPEND=">=media-libs/imlib2-${PV}" diff --git a/media-sound/denemo/denemo-2.6.0-r100.ebuild b/media-sound/denemo/denemo-2.6.0-r100.ebuild new file mode 100644 index 000000000000..5b89d259294e --- /dev/null +++ b/media-sound/denemo/denemo-2.6.0-r100.ebuild @@ -0,0 +1,136 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 ) +inherit autotools font guile-single xdg + +DESCRIPTION="A music notation editor" +HOMEPAGE="http://www.denemo.org/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-3+ OFL-1.1" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +# configure options currently not used: +# --enable-mem(no) memory debugging: needs Electric fence (efence), which +# is not available in portage. See https://github.com/boundarydevices/efence +# --enable-gtk-doc-pdf(no) doesn't work +# fluidsynth currently broken. See https://savannah.gnu.org/bugs/index.php?62202 +IUSE="alsa +aubio debug jack gtk-doc nls +portaudio +portmidi + +rubberband test" + +RESTRICT="!test? ( test )" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + >=app-text/evince-3.22.1-r1:= + dev-libs/glib:2 + dev-libs/libxml2:2 + gnome-base/librsvg:2 + media-libs/fontconfig:1.0 + >=media-libs/libsmf-1.3 + >=media-libs/libsndfile-1.0.28-r1 + >=media-sound/fluidsynth-1.1.6-r1:= + >=media-sound/lilypond-2.24.4-r100 + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/gtksourceview:3.0= + x11-libs/pango + alsa? ( >=media-libs/alsa-lib-1.1.2 ) + aubio? ( >=media-libs/aubio-0.4.1-r1:= ) + jack? ( virtual/jack ) + portaudio? ( + >=media-libs/portaudio-19_pre20140130 + sci-libs/fftw:3.0= + ) + portmidi? ( media-libs/portmidi ) + rubberband? ( >=media-libs/rubberband-1.8.1-r1 ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + >=dev-build/gtk-doc-am-1.25-r1 + >=dev-util/intltool-0.51.0-r1 + app-alternatives/lex + virtual/pkgconfig + app-alternatives/yacc + gtk-doc? ( >=dev-util/gtk-doc-1.25-r1 ) + nls? ( >=sys-devel/gettext-0.19.8.1 ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.6.0-respect-user-CFLAGS.patch + "${FILESDIR}"/${PN}-2.6.0-fix-c99.patch + "${FILESDIR}"/${PN}-2.6.0-incompatible-pointers.patch +) +DOCS=( AUTHORS ChangeLog docs/{DESIGN{,.lilypond},GOALS,TODO} NEWS ) + +src_prepare() { + sed -e '/^Categories=/s/GNOME\;/GNOME\;GTK\;/' -i pixmaps/org.denemo.Denemo.desktop || die + sed -e 's|appdatadir = \$(datarootdir)/appdata|appdatadir = \$(datarootdir)/metainfo|' \ + -i Makefile.am || die + guile-single_src_prepare + eautoreconf +} + +src_configure() { + myeconfargs=( + --disable-gtk-doc-pdf + --disable-gtk2 + --disable-installed-tests + --disable-mem + --disable-rpath + --disable-static + --enable-evince + --enable-fluidsynth + --enable-gtk3 + --enable-x11 + $(use_enable alsa) + $(use_enable aubio) + $(use_enable debug) + # --enable-doc does nothing for itself + # basic html documentation is always being installed in the + # /usr/share/denemo/manual directory + $(use_enable gtk-doc doc) + $(use_enable gtk-doc gtk-doc) + $(use_enable gtk-doc gtk-doc-html) + $(use_enable jack) + $(use_enable nls) + $(use_enable portaudio) + $(use_enable portmidi) + $(use_enable rubberband) + $(use_enable test always-build-tests) + ) + econf "${myeconfargs[@]}" +} + +src_test() { + # make check fails if used with parallel builds + emake -j1 check +} + +src_install() { + guile-single_src_install + + # link html documentation installed in /usr/share/denemo/manual + dodir /usr/share/doc/${PF}/html + local f + for f in denemo-manual.html denemo.css images; do + dosym -r /usr/share/denemo/manual/"${f}" /usr/share/doc/${PF}/html/"${f}" + done +} + +pkg_postinst() { + font_pkg_postinst + xdg_desktop_database_update +} + +pkg_postrm() { + font_pkg_postrm + xdg_desktop_database_update +} diff --git a/media-sound/denemo/files/denemo-2.6.0-fix-c99.patch b/media-sound/denemo/files/denemo-2.6.0-fix-c99.patch new file mode 100644 index 000000000000..8d1c30c895f2 --- /dev/null +++ b/media-sound/denemo/files/denemo-2.6.0-fix-c99.patch @@ -0,0 +1,38 @@ +https://bugs.gentoo.org/927336 +https://savannah.gnu.org/bugs/?63720 + +From 509906e7cc4669b525cbcb05022e7e10c6663627 Mon Sep 17 00:00:00 2001 +From: Nikita Popov <npopov@redhat.com> +Date: Fri, 27 Jan 2023 12:13:10 +0100 +Subject: [PATCH] Fix C99 support in sffile.c + +This fixes one -Wimplicit-function-declaration and one +-Wimplicit-int warning, which will become errors in future +compiler versions. + +Related to: + + <https://fedoraproject.org/wiki/Changes/PortingToModernC> + <https://fedoraproject.org/wiki/Toolchain/PortingToModernC> +--- a/libs/libsffile/sffile.c ++++ b/libs/libsffile/sffile.c +@@ -20,6 +20,7 @@ + *================================================================*/ + //Interface to Denemo License: FSF GPL version 3 or later + ++#include <ctype.h> + #include <stdio.h> + #include <string.h> + #include <stdlib.h> +@@ -51,7 +52,7 @@ static void ConvertIllegalChar(char *name){ + int ParseSoundfont(char *soundfont, int index, char **name, int *preset, int *bank) { + FILE *fp; + static SFInfo sf; +- static initialized = FALSE; ++ static int initialized = FALSE; + int i; + int number = 0; + if(soundfont) { +-- +2.39.1 + diff --git a/media-sound/denemo/files/denemo-2.6.0-incompatible-pointers.patch b/media-sound/denemo/files/denemo-2.6.0-incompatible-pointers.patch new file mode 100644 index 000000000000..28274e810eb9 --- /dev/null +++ b/media-sound/denemo/files/denemo-2.6.0-incompatible-pointers.patch @@ -0,0 +1,36 @@ +diff --git a/src/source/proof.c b/src/source/proof.c +index f9a02bf0e..3b8f5fc82 100644 +--- a/src/source/proof.c ++++ b/src/source/proof.c +@@ -280,7 +280,7 @@ press (EvView * view, GdkEventButton *event, EvDocumentModel *model) + infodialog (help_text); + nearest_annotation_text = NULL; + extern EvMappingList * ev_document_annotations_get_annotations(); +- EvMappingList *mapping_list = ev_document_annotations_get_annotations (doc, ev_document_get_page(doc, i)); ++ EvMappingList *mapping_list = ev_document_annotations_get_annotations (EV_DOCUMENT_ANNOTATIONS (doc), ev_document_get_page(doc, i)); + if(mapping_list) + { + gdouble nearest = G_MAXDOUBLE; +@@ -313,7 +313,7 @@ find_annotated_pages (EvDocumentModel *model) + for (i=0; i< ev_document_get_n_pages(doc);i++) + { + extern EvMappingList * ev_document_annotations_get_annotations(); +- EvMappingList *mapping_list = ev_document_annotations_get_annotations (doc, ev_document_get_page(doc, i)); ++ EvMappingList *mapping_list = ev_document_annotations_get_annotations (EV_DOCUMENT_ANNOTATIONS (doc), ev_document_get_page(doc, i)); + if(mapping_list) + { + annotated_pages = g_list_append (annotated_pages, GINT_TO_POINTER(i)); +diff --git a/tests/integration.c b/tests/integration.c +index f3aad7a1f..5910425e6 100644 +--- a/tests/integration.c ++++ b/tests/integration.c +@@ -248,7 +248,7 @@ parse_dir_and_run_complex_test(gchar* path, const gchar* extension) + while(files){ + filename = g_build_filename(path, files->data, NULL); + gchar* test_case_path = g_strdup_printf("%s-%d", test_case_path_fragment, test_case_path_counter); +- g_test_add (test_case_path, gchar*, filename, setup, test_open_save_complex_file, teardown); ++ g_test_add (test_case_path, void, filename, setup, test_open_save_complex_file, teardown); + g_free(test_case_path); + test_case_path_counter ++; + files = g_list_next(files); + diff --git a/media-sound/easytag/easytag-2.4.3-r4.ebuild b/media-sound/easytag/easytag-2.4.3-r4.ebuild deleted file mode 100644 index c13294c50ecf..000000000000 --- a/media-sound/easytag/easytag-2.4.3-r4.ebuild +++ /dev/null @@ -1,72 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit gnome2 - -DESCRIPTION="GTK+ utility for editing MP2, MP3, MP4, FLAC, Ogg and other media tags" -HOMEPAGE="https://wiki.gnome.org/Apps/EasyTAG" - -LICENSE="GPL-2 GPL-2+ LGPL-2 LGPL-2+ LGPL-2.1+" -SLOT="0" -KEYWORDS="amd64 ~arm ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~ppc-macos" -IUSE="flac mp3 mp4 nautilus opus speex test vorbis wavpack" -RESTRICT="!test? ( test )" -REQUIRED_USE=" - opus? ( vorbis ) - speex? ( vorbis )" - -RDEPEND=" - >=dev-libs/glib-2.38:2 - media-libs/libcanberra[gtk3] - >=x11-libs/gtk+-3.10:3 - flac? ( >=media-libs/flac-1.3:= ) - mp3? ( - >=media-libs/id3lib-3.8.3-r8 - >=media-libs/libid3tag-0.15.1b-r4:= - ) - mp4? ( >=media-libs/taglib-1.9.1[mp4(+)] ) - nautilus? ( gnome-base/nautilus ) - opus? ( - >=media-libs/opus-1.1 - >=media-libs/opusfile-0.4 - ) - speex? ( >=media-libs/speex-1.2_rc1 ) - vorbis? ( - >=media-libs/libogg-1.3.1 - >=media-libs/libvorbis-1.3.4 - ) - wavpack? ( >=media-sound/wavpack-4.70 )" -DEPEND="${RDEPEND}" -BDEPEND=" - app-text/docbook-xml-dtd:4.4 - app-text/yelp-tools - dev-util/glib-utils - dev-libs/libxml2 - dev-libs/libxslt - >=dev-util/intltool-0.50 - >=sys-devel/gettext-0.18.3.2 - virtual/pkgconfig - test? ( - dev-libs/appstream-glib - >=dev-util/desktop-file-utils-0.22 - )" - -PATCHES=( "${FILESDIR}"/${P}-ogg-corruption.patch ) - -src_configure() { - gnome2_src_configure \ - --disable-Werror \ - $(use_enable test appdata-validate) \ - $(use_enable test tests) \ - $(use_enable mp3) \ - $(use_enable mp3 id3v23) \ - $(use_enable nautilus nautilus-actions) \ - $(use_enable vorbis ogg) \ - $(use_enable opus) \ - $(use_enable speex) \ - $(use_enable flac) \ - $(use_enable mp4) \ - $(use_enable wavpack) -} diff --git a/media-sound/easytag/metadata.xml b/media-sound/easytag/metadata.xml index d31fc8785b2d..2b47f46d2132 100644 --- a/media-sound/easytag/metadata.xml +++ b/media-sound/easytag/metadata.xml @@ -6,7 +6,4 @@ <name>Gentoo Sound project</name> </maintainer> <longdescription>Utility for viewing and editing tags for MP3, MP2, FLAC, AAC, MP4 and OGG files. It features a simple and attractive GTK+ interface</longdescription> - <use> - <flag name="nautilus">Build <pkg>gnome-base/nautilus</pkg> extension</flag> - </use> </pkgmetadata> diff --git a/media-sound/lilypond/lilypond-2.24.4-r100.ebuild b/media-sound/lilypond/lilypond-2.24.4-r100.ebuild new file mode 100644 index 000000000000..63d46dcb3e06 --- /dev/null +++ b/media-sound/lilypond/lilypond-2.24.4-r100.ebuild @@ -0,0 +1,145 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_REQ_USE="deprecated,regex" +GUILE_COMPAT=( 2-2 3-0 ) +PYTHON_COMPAT=( python3_{10..13} ) + +inherit elisp-common autotools guile-single python-single-r1 toolchain-funcs xdg-utils + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://git.savannah.gnu.org/git/lilypond.git" +else + MAIN_VER=$(ver_cut 1-2) + SRC_URI="https://lilypond.org/download/sources/v${MAIN_VER}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~riscv ~x86" +fi + +DESCRIPTION="GNU Music Typesetter" +HOMEPAGE="http://lilypond.org/" + +LICENSE="GPL-3 FDL-1.3" +SLOT="0" +LANG_USE="l10n_ca l10n_cs l10n_de l10n_en l10n_fr l10n_hu l10n_it l10n_ja l10n_nl l10n_pt l10n_zh" +IUSE="debug doc emacs profile ${LANG_USE}" +unset LANG_USE +REQUIRED_USE="${GUILE_REQUIRED_USE} ${PYTHON_REQUIRED_USE}" + +BDEPEND=" + dev-texlive/texlive-metapost + sys-apps/texinfo + app-alternatives/yacc + app-alternatives/lex + virtual/pkgconfig + doc? ( app-text/texi2html ) +" +RDEPEND="app-text/ghostscript-gpl + dev-libs/boehm-gc + dev-libs/glib:2 + dev-libs/libatomic_ops + media-fonts/tex-gyre + media-libs/fontconfig + media-libs/freetype:2 + media-libs/harfbuzz + >=x11-libs/pango-1.40 + emacs? ( >=app-editors/emacs-23.1:* ) + ${GUILE_DEPS} + ${PYTHON_DEPS}" +DEPEND="${RDEPEND} + app-text/t1utils + dev-lang/perl + dev-libs/kpathsea + media-gfx/fontforge[png,python] + sys-devel/gettext + doc? ( + dev-texlive/texlive-langcyrillic + l10n_cs? ( dev-texlive/texlive-xetex ) + l10n_ja? ( dev-texlive/texlive-langjapanese ) + l10n_zh? ( dev-texlive/texlive-langchinese ) + ) +" +# Correct output data for tests isn't bundled with releases +RESTRICT="test" + +DOCS=( DEDICATION README.md ROADMAP ) + +QA_PREBUILT="usr/*/${PN}/${PV}/ccache/*" + +pkg_setup() { + guile-single_pkg_setup + python-single-r1_pkg_setup +} + +src_prepare() { + guile-single_src_prepare + + # respect CFLAGS + sed -i 's/OPTIMIZE -g/OPTIMIZE/' aclocal.m4 || die + + eautoreconf + + xdg_environment_reset #586592 +} + +src_configure() { + # fix hardcoded `ar` + sed -i "s/AR=ar/AR=$(tc-getAR)/g" flower/GNUmakefile || die "Failed to fix ar command" + + local myeconfargs=( + --disable-optimising + --disable-pipe + $(use_enable debug debugging) + $(use_enable doc documentation) + $(use_enable profile profiling) + ) + + export VARTEXFONTS="${T}/fonts" # https://bugs.gentoo.org/692010 + + econf "${myeconfargs[@]}" AR="$(tc-getAR)" +} + +src_compile() { + default + + # http://lilypond.org/doc/v2.24/Documentation/changes/index#notes-for-source-compilation-and-packagers + emake bytecode + + use doc && emake LANGS="${L10N}" doc info + + if use emacs ; then + elisp-compile elisp/lilypond-{font-lock,indent,mode,what-beat}.el \ + || die "elisp-compile failed" + fi +} + +src_install() { + emake DESTDIR="${D}" vimdir=/usr/share/vim/vimfiles install install-bytecode + + use doc && emake DESTDIR="${D}" install-doc + + # remove elisp files since they are in the wrong directory + rm -r "${ED}"/usr/share/emacs || die + + if use emacs ; then + elisp-install ${PN} elisp/*.{el,elc} elisp/out/*.el \ + || die "elisp-install failed" + elisp-site-file-install "${FILESDIR}"/50${PN}-gentoo.el + fi + + guile_unstrip_ccache + + python_fix_shebang "${ED}" + + einstalldocs +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/media-sound/lilypond/lilypond-9999.ebuild b/media-sound/lilypond/lilypond-9999.ebuild index ae3457cd2655..63d46dcb3e06 100644 --- a/media-sound/lilypond/lilypond-9999.ebuild +++ b/media-sound/lilypond/lilypond-9999.ebuild @@ -3,9 +3,11 @@ EAPI=8 +GUILE_REQ_USE="deprecated,regex" +GUILE_COMPAT=( 2-2 3-0 ) PYTHON_COMPAT=( python3_{10..13} ) -inherit elisp-common autotools python-single-r1 toolchain-funcs xdg-utils +inherit elisp-common autotools guile-single python-single-r1 toolchain-funcs xdg-utils if [[ ${PV} == *9999* ]]; then inherit git-r3 @@ -24,7 +26,7 @@ SLOT="0" LANG_USE="l10n_ca l10n_cs l10n_de l10n_en l10n_fr l10n_hu l10n_it l10n_ja l10n_nl l10n_pt l10n_zh" IUSE="debug doc emacs profile ${LANG_USE}" unset LANG_USE -REQUIRED_USE="${PYTHON_REQUIRED_USE}" +REQUIRED_USE="${GUILE_REQUIRED_USE} ${PYTHON_REQUIRED_USE}" BDEPEND=" dev-texlive/texlive-metapost @@ -35,12 +37,16 @@ BDEPEND=" doc? ( app-text/texi2html ) " RDEPEND="app-text/ghostscript-gpl - >=dev-scheme/guile-3.0.7:12=[deprecated,regex] + dev-libs/boehm-gc + dev-libs/glib:2 + dev-libs/libatomic_ops media-fonts/tex-gyre media-libs/fontconfig media-libs/freetype:2 + media-libs/harfbuzz >=x11-libs/pango-1.40 emacs? ( >=app-editors/emacs-23.1:* ) + ${GUILE_DEPS} ${PYTHON_DEPS}" DEPEND="${RDEPEND} app-text/t1utils @@ -60,12 +66,15 @@ RESTRICT="test" DOCS=( DEDICATION README.md ROADMAP ) -# guile generates ELF files without use of C or machine code -# It's a portage's false positive. bug #677600 -QA_PREBUILT='*[.]go' +QA_PREBUILT="usr/*/${PN}/${PV}/ccache/*" + +pkg_setup() { + guile-single_pkg_setup + python-single-r1_pkg_setup +} src_prepare() { - default + guile-single_src_prepare # respect CFLAGS sed -i 's/OPTIMIZE -g/OPTIMIZE/' aclocal.m4 || die @@ -120,6 +129,8 @@ src_install() { elisp-site-file-install "${FILESDIR}"/50${PN}-gentoo.el fi + guile_unstrip_ccache + python_fix_shebang "${ED}" einstalldocs diff --git a/media-sound/qjackctl/Manifest b/media-sound/qjackctl/Manifest index a6736768432f..002b767a2a2a 100644 --- a/media-sound/qjackctl/Manifest +++ b/media-sound/qjackctl/Manifest @@ -1 +1,2 @@ DIST qjackctl-1.0.1.tar.gz 1318578 BLAKE2B c2741cfed5244e9c0b837b7bb7ac31dd6fad74226cad9401014565928e59c6fc448fda6e4e335e4acdc92d55b05f330a2101b1f9cbbce6918b7749c62f0e9379 SHA512 ac0442c0fe8f29ca27dfe149db3bc20a968ff7b2abb764bbb7b7cd1f57e26edac70b834c4f6fa6578fa07afad9de3e8f846d131517e9b5862333634715933b08 +DIST qjackctl-1.0.2.tar.gz 1319207 BLAKE2B f5af834b39d48dd5a10b970bc90cfd25470c91210b295727fb03bf6a277361bd67f54c3a841ee9aa7d419020500906ad41cbea490d6b223a7fc4c6357a523f0e SHA512 617760310eed763c813bf2ff95b72bd7c76bdc68bf2f997333eb9769e55eec6c02ff0e0813f576b5f06cdb856756cbf36017a6d1c578d493ceed7aa082470f25 diff --git a/media-sound/qjackctl/qjackctl-1.0.2.ebuild b/media-sound/qjackctl/qjackctl-1.0.2.ebuild new file mode 100644 index 000000000000..29b887562b75 --- /dev/null +++ b/media-sound/qjackctl/qjackctl-1.0.2.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit xdg cmake + +DESCRIPTION="Qt GUI to control the JACK Audio Connection Kit and ALSA sequencer connections" +HOMEPAGE="https://qjackctl.sourceforge.io/" +SRC_URI="https://downloads.sourceforge.net/qjackctl/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="alsa dbus debug portaudio" + +BDEPEND="dev-qt/linguist-tools:5" +DEPEND=" + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtwidgets:5 + dev-qt/qtx11extras:5 + dev-qt/qtxml:5 + virtual/jack + alsa? ( media-libs/alsa-lib ) + dbus? ( dev-qt/qtdbus:5 ) + portaudio? ( media-libs/portaudio ) +" +RDEPEND="${DEPEND} + dev-qt/qtsvg:5 +" + +PATCHES=( + "${FILESDIR}/${PN}-0.9.13-disable-git.patch" +) + +src_configure() { + local mycmakeargs=( + -DCONFIG_ALSA_SEQ=$(usex alsa 1 0) + -DCONFIG_DBUS=$(usex dbus 1 0) + -DCONFIG_DEBUG=$(usex debug 1 0) + -DCONFIG_PORTAUDIO=$(usex portaudio 1 0) + -DCONFIG_QT6=no + ) + cmake_src_configure +} diff --git a/media-video/pipewire/Manifest b/media-video/pipewire/Manifest index 9acb4f661c48..61d55c9782f0 100644 --- a/media-video/pipewire/Manifest +++ b/media-video/pipewire/Manifest @@ -1,9 +1,4 @@ DIST pipewire-1.0.0-docs.tar.xz 33632 BLAKE2B be06aa7242f7d2f8627b3bf2a2ae491dbda456a24811a767218eb89b1fd5961a461697e5d8ae2782323fdb927985fa4fd5dd40c21268b1c7939f4cd3c9e1a9ab SHA512 14f794c4152d7d9a4a7d9d4d5c2ff381c2a8262deaff034f993c4d28629fca8cc3d71d3a7c02982703e449fae5f58257fea0c20db02bf95b5aed88a4d99d2c58 -DIST pipewire-1.0.5.tar.bz2 1698291 BLAKE2B 0f919a01b5f84060fb2ce560a7790a0d59374671f52a941492930fe21ac39178688f27f00cad649d239901f88b392e16895648efae2ec2785c394c1f6d186ddf SHA512 18fbbe36c8752eb0f1df5ee3f3fffee279addcec9825281bd165ad8316f17af7e91bb5759f63c16139c074b03e5a77ef9d596a87f584d1580bbb754101b70a0f -DIST pipewire-1.0.6.tar.bz2 1698889 BLAKE2B f782efa2aa8fa0976fd3025f58041f450505c63acd9028c3d79368d0c41465a51b4472059a1c13092aa72dc6110fc12589b03de653d7eac3c93bc5498cc17154 SHA512 09e5c951c835dcc2654ec284aaaad6be4254744e943f95556c494cd22a4fc67bdc481982856f2aa439e33ec84e7fbdb6df45a1d4b9ced261b01cd91b0ee4d2ed DIST pipewire-1.0.7.tar.bz2 1698775 BLAKE2B be075eb82fe516116de0a6a4d390dd99d7ea3b41e53c9079219978649845df4e9c16cb8e2dcfe594c2ace65fe63976ec432e9ce97eb048df5103d17f3e8ff353 SHA512 3fb46376cdf061b3ea7be55249399d0036c2728bb4deeb6f5c6d708141234e75f563e6a3dc749fbd40dadba72ad2db5fda358b368a480479157731cc67f3303d DIST pipewire-1.2.0-docs.tar.xz 58528 BLAKE2B b7abdfecd46239050ab80695c8f3d1a4e6a2aded3f9d64c435c64c7dc54a4e6ae32c3526da0fb4f6e2a22a6dbc8c768450ac2c0824b685022284eb1e1990c038 SHA512 25792090f258acc6cd52231be3918f0edaefeeb6c757acc748710a2e6f40ff7861a44e376dc9651742173c40153d3f848c9532257036ab874940270559d9c7f3 -DIST pipewire-1.2.0.tar.bz2 1810104 BLAKE2B a20caae515d800f80f607aeba585609ce9f47d0a38c48cc2eb3534f64049f774c119e36d27a585b5f7537e4eef6b2a56881e7db1e2ca2eedd52248ee9f331209 SHA512 3b9ceb02d3ea9fcadd2e009750d0c5b2435c8648c79f2fa9dc8dc83c772759985b140a02381a6c7be819b23d2a5a7671e456e81cf9b5be3437e994ef610bda59 -DIST pipewire-1.2.1.tar.bz2 1812153 BLAKE2B a95d3ba69ef6ee8d001c9081fec4392ef0c219c154b0f78851dd15e5a60f6daccc33fdf80a9ea653bd32d14109c5e1a5885e0c5ce392747be8e08c37a239a2e2 SHA512 e5bf5b712e2d96c96dd907780cd4b1a3d153f01261977bd75a11823bcc2be17b6c858d2967821862660d97426c8ed5f8ebd7bfde27dafe9f30c5b459b17e587f -DIST pipewire-1.2.2.tar.bz2 1812524 BLAKE2B 4085ace98c38e718dd259f5ef864d8674e0c663bd486f5e8dfb2e79d63b471eb8686ab79841aa0e5689ef9d08ce0be66cb67cce2e9038cd5a81e823a816e8209 SHA512 8baf98bdb05f95acaf2f9a5189ad6da843181464cc21f31cc39604bfb2beb2a34327621348122e07436e39c5d0ad223a941674737848ac2e4e56e0d366d1b5f5 DIST pipewire-1.2.3.tar.bz2 1813639 BLAKE2B 42bd8a08125e79a67a4adec30541ae7fef3c1e8279d8f84365636f8691a237fc7d6b392ed2576b681a9b9418804978e5a8493d7062567ed89035286fb49977f5 SHA512 8a06ef3a9079b334b0d3248431fe6a09f330ad8078dc378ac465e253d3601c3e4552e2e07f7cf492ff6fbc218e686b30941ea153ccaaf826b5f0ff231f6b214e diff --git a/media-video/pipewire/files/pipewire-1.2.0-automagic-gsettings.patch b/media-video/pipewire/files/pipewire-1.2.0-automagic-gsettings.patch deleted file mode 100644 index ab102a606c82..000000000000 --- a/media-video/pipewire/files/pipewire-1.2.0-automagic-gsettings.patch +++ /dev/null @@ -1,79 +0,0 @@ -From b5f031bc15524bbfde577290ad9bbadeab77ae8b Mon Sep 17 00:00:00 2001 -From: Eli Schwartz <eschwartz93@gmail.com> -Date: Sun, 30 Jun 2024 13:44:06 -0400 -Subject: [PATCH] meson: fix conflicting use of feature-based dependency - lookups - -When spa-plugins is enabled, the gio-2.0 global dependency is -overwritten. - -When bluez support is enabled, OR when gsettings is enabled, the gio-2.0 -dependency is then detected as found. This means that -pipewire-module-protocol-pulse can end up enabling gsettings support -even if it has been forcibly turned off. - -Rename the meson variables to ensure they are looked up separately. ---- - meson.build | 6 +++--- - spa/meson.build | 6 +++--- - src/modules/meson.build | 4 ++-- - 3 files changed, 8 insertions(+), 8 deletions(-) - -diff --git a/meson.build b/meson.build -index 2607c5c8f4..38b6b59d00 100644 ---- a/meson.build -+++ b/meson.build -@@ -346,9 +346,9 @@ summary({'GLib-2.0 (Flatpak support)': glib2_dep.found()}, bool_yn: true, sectio - flatpak_support = glib2_dep.found() - cdata.set('HAVE_GLIB2', flatpak_support) - --gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings')) --summary({'GIO (GSettings)': gio_dep.found()}, bool_yn: true, section: 'Misc dependencies') --if not gio_dep.found() and get_option('gsettings-pulse-schema').enabled() -+gsettings_gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings')) -+summary({'GIO (GSettings)': gsettings_gio_dep.found()}, bool_yn: true, section: 'Misc dependencies') -+if not gsettings_gio_dep.found() and get_option('gsettings-pulse-schema').enabled() - error('`gsettings-pulse-schema` is enabled but `gio` was not found.') - endif - -diff --git a/spa/meson.build b/spa/meson.build -index 67e4b5c506..cf25609dab 100644 ---- a/spa/meson.build -+++ b/spa/meson.build -@@ -47,12 +47,12 @@ if get_option('spa-plugins').allowed() - summary({'ALSA': alsa_dep.found()}, bool_yn: true, section: 'Backend') - - bluez_dep = dependency('bluez', version : '>= 4.101', required: get_option('bluez5')) -- gio_dep = dependency('gio-2.0', required : get_option('bluez5')) -- gio_unix_dep = dependency('gio-unix-2.0', required : get_option('bluez5')) -+ bluez_gio_dep = dependency('gio-2.0', required : get_option('bluez5')) -+ bluez_gio_unix_dep = dependency('gio-unix-2.0', required : get_option('bluez5')) - bluez_glib2_dep = dependency('glib-2.0', required : get_option('bluez5')) - sbc_dep = dependency('sbc', required: get_option('bluez5')) - summary({'SBC': sbc_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs') -- bluez5_deps = [ mathlib, dbus_dep, sbc_dep, bluez_dep, bluez_glib2_dep, gio_dep, gio_unix_dep ] -+ bluez5_deps = [ mathlib, dbus_dep, sbc_dep, bluez_dep, bluez_glib2_dep, bluez_gio_dep, bluez_gio_unix_dep ] - bluez_deps_found = get_option('bluez5').allowed() - foreach dep: bluez5_deps - if get_option('bluez5').enabled() and not dep.found() -diff --git a/src/modules/meson.build b/src/modules/meson.build -index ceaa7013d9..3f400f0877 100644 ---- a/src/modules/meson.build -+++ b/src/modules/meson.build -@@ -433,11 +433,11 @@ if avahi_dep.found() - cdata.set('HAVE_AVAHI', true) - endif - --if gio_dep.found() -+if gsettings_gio_dep.found() - pipewire_module_protocol_pulse_sources += [ - 'module-protocol-pulse/modules/module-gsettings.c', - ] -- pipewire_module_protocol_pulse_deps += gio_dep -+ pipewire_module_protocol_pulse_deps += gsettings_gio_dep - cdata.set('HAVE_GIO', true) - if get_option('gsettings-pulse-schema').enabled() - install_data(['module-protocol-pulse/modules/org.freedesktop.pulseaudio.gschema.xml'], --- -GitLab - diff --git a/media-video/pipewire/pipewire-1.0.5-r1.ebuild b/media-video/pipewire/pipewire-1.0.5-r1.ebuild deleted file mode 100644 index 1373789d2b11..000000000000 --- a/media-video/pipewire/pipewire-1.0.5-r1.ebuild +++ /dev/null @@ -1,502 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# 1. Please regularly check (even at the point of bumping) Fedora's packaging -# for needed backports at https://src.fedoraproject.org/rpms/pipewire/tree/rawhide. -# -# 2. Upstream also sometimes amend release notes for the previous release to mention -# needed patches, e.g. https://gitlab.freedesktop.org/pipewire/pipewire/-/tags/0.3.55#distros -# -# 3. Keep an eye on git master (for both PipeWire and WirePlumber) as things -# continue to move quickly. It's not uncommon for fixes to be made shortly -# after releases. - -# TODO: Maybe get upstream to produce `meson dist` tarballs: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3663 -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1788 -# -# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-pipewire-docs -# Set to 1 if prebuilt, 0 if not -# (the construct below is to allow overriding from env for script) -: ${PIPEWIRE_DOCS_PREBUILT:=1} - -PIPEWIRE_DOCS_PREBUILT_DEV=sam -PIPEWIRE_DOCS_VERSION=$(ver_cut 1-2).0 -# Default to generating docs (inc. man pages) if no prebuilt; overridden later -PIPEWIRE_DOCS_USEFLAG="+man" -PYTHON_COMPAT=( python3_{10..12} ) -inherit meson-multilib optfeature prefix python-any-r1 systemd tmpfiles udev - -if [[ ${PV} == 9999 ]]; then - PIPEWIRE_DOCS_PREBUILT=0 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - if [[ ${PV} == *_p* ]] ; then - MY_COMMIT="" - SRC_URI="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${MY_COMMIT}/pipewire-${MY_COMMIT}.tar.bz2 -> ${P}.tar.bz2" - S="${WORKDIR}"/${PN}-${MY_COMMIT} - else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2" - fi - - if [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - SRC_URI+=" !man? ( https://dev.gentoo.org/~${PIPEWIRE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${PIPEWIRE_DOCS_VERSION}-docs.tar.xz )" - PIPEWIRE_DOCS_USEFLAG="man" - fi - - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -# ABI was broken in 0.3.42 for https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/49 -SLOT="0/0.4" -IUSE="${PIPEWIRE_DOCS_USEFLAG} bluetooth dbus doc echo-cancel extra ffmpeg flatpak gstreamer gsettings ieee1394 jack-client jack-sdk liblc3 lv2" -IUSE+=" modemmanager pipewire-alsa readline roc selinux sound-server ssl system-service systemd test v4l X zeroconf" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -# - TODO: There should be "sound-server? ( || ( alsa bluetooth ) )" here, but ALSA is always enabled -# - TODO: Pulseaudio alsa plugin performs runtime check that pulseaudio server connection will work -# which provides adequate guarantee that alsa-lib will be able to provide audio services. -# If that works, pulseaudio defaults are loaded into alsa-lib runtime replacing default PCM and CTL. -# When pipewire-alsa will be able to perform similar check, pipewire-alsa can be enabled unconditionally. -# - ffmpeg is only used for pw-cat. We don't build the spa plugin which receives barely any activity. -REQUIRED_USE=" - ffmpeg? ( extra ) - bluetooth? ( dbus ) - jack-sdk? ( !jack-client ) - modemmanager? ( bluetooth ) - system-service? ( systemd ) - !sound-server? ( !pipewire-alsa ) - jack-client? ( dbus ) -" - -RESTRICT="!test? ( test )" - -BDEPEND=" - >=dev-build/meson-0.59 - virtual/pkgconfig - dbus? ( dev-util/gdbus-codegen ) - doc? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - media-gfx/graphviz - ) - man? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - ) -" -# * While udev could technically be optional, it's needed for a number of options, -# and not really worth it, bug #877769. -# -# * Supports both legacy webrtc-audio-processing:0 and new webrtc-audio-processing:1. -# We depend on :1 as it prefers that, it's not legacy, and to avoid automagic. -# -# * Older Doxygen (<1.9.8) may work but inferior output is created: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1778 -# - https://github.com/doxygen/doxygen/issues/9254 -RDEPEND=" - acct-group/audio - acct-group/pipewire - media-libs/alsa-lib[${MULTILIB_USEDEP}] - sys-libs/ncurses:=[unicode(+)] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - dev-libs/glib - media-libs/fdk-aac - media-libs/libldac - media-libs/libfreeaptx - media-libs/opus - media-libs/sbc - >=net-wireless/bluez-4.101:= - virtual/libusb:1 - ) - dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) - echo-cancel? ( media-libs/webrtc-audio-processing:1 ) - extra? ( >=media-libs/libsndfile-1.0.20 ) - ffmpeg? ( media-video/ffmpeg:= ) - flatpak? ( dev-libs/glib ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - gsettings? ( >=dev-libs/glib-2.26.0:2 ) - ieee1394? ( media-libs/libffado[${MULTILIB_USEDEP}] ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - liblc3? ( media-sound/liblc3 ) - lv2? ( media-libs/lilv ) - modemmanager? ( >=net-misc/modemmanager-1.10.0 ) - pipewire-alsa? ( >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] ) - sound-server? ( !media-sound/pulseaudio-daemon ) - roc? ( >=media-libs/roc-toolkit-0.3.0:= ) - readline? ( sys-libs/readline:= ) - selinux? ( sys-libs/libselinux ) - ssl? ( dev-libs/openssl:= ) - systemd? ( sys-apps/systemd ) - system-service? ( acct-user/pipewire ) - v4l? ( media-libs/libv4l ) - X? ( - media-libs/libcanberra - x11-libs/libX11 - x11-libs/libXfixes - ) - zeroconf? ( net-dns/avahi ) -" - -DEPEND="${RDEPEND}" - -PDEPEND=">=media-video/wireplumber-0.5.2" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch -) - -pkg_setup() { - if use doc || use man ; then - python-any-r1_pkg_setup - fi -} - -src_prepare() { - default - - # Used for upstream backports - [[ -d "${FILESDIR}"/${PV} ]] && eapply "${FILESDIR}"/${PV} -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - - $(meson_feature dbus) - $(meson_native_use_feature zeroconf avahi) - $(meson_native_use_feature doc docs) - $(meson_native_use_feature man) - $(meson_native_enabled examples) # TODO: Figure out if this is still important now that media-session gone - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_feature ieee1394 libffado) - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature gsettings) - $(meson_native_use_feature systemd) - - $(meson_native_use_feature system-service systemd-system-service) - -Dsystemd-system-unit-dir="$(systemd_get_systemunitdir)" - -Dsystemd-user-unit-dir="$(systemd_get_userunitdir)" - - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - $(meson_feature selinux) - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (NOTE: media-session is gone so IUSE=alsa/spa_alsa/alsa-backend might be possible) - -Dcompress-offload=disabled # TODO: tinycompress unpackaged - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - # https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1379 - $(meson_native_use_feature modemmanager bluez5-backend-native-mm) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - $(meson_native_use_feature bluetooth opus) - $(meson_native_use_feature bluetooth bluez5-codec-opus) - $(meson_native_use_feature bluetooth libusb) # At least for now only used by bluez5 native (quirk detection of adapters) - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889 - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - $(meson_native_use_feature ffmpeg pw-cat-ffmpeg) - $(meson_native_use_feature flatpak) - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_use jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - -Dbluez5-codec-lc3plus=disabled # unpackaged - $(meson_native_use_feature liblc3 bluez5-codec-lc3) - $(meson_native_use_feature lv2) - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - $(meson_native_use_feature roc) - $(meson_native_use_feature readline) - $(meson_native_use_feature ssl raop) - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - -Dlibmysofa=disabled # libmysofa is unpackaged - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - -Dsession-managers="[]" # All available session managers are now their own projects, so there's nothing to build - - # We still have <5.16 kernels packaged in Gentoo and 6.1 (LTS) only - # just became stable, with 5.15 being the previous LTS. Many people - # are still on it. - -Dpam-defaults-install=true - - # Just for bell sounds in X11 right now. - $(meson_native_use_feature X x11) - $(meson_native_use_feature X x11-xfixes) - $(meson_native_use_feature X libcanberra) - ) - - meson_src_configure -} - -multilib_src_test() { - meson_src_test --timeout-multiplier 10 -} - -multilib_src_install() { - # Our custom DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - if ! use man && [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - doman "${WORKDIR}"/${PN}-${PIPEWIRE_DOCS_VERSION}-docs/man/*/*.[0-8] - fi - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - - # Install pipewire conf loader hook - insinto /usr/share/alsa/alsa.conf.d - doins "${FILESDIR}"/99-pipewire-default-hook.conf - eprefixify "${ED}"/usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf - - # These will break if someone has /etc that is a symbolic link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf /etc/alsa/conf.d/99-pipewire-default-hook.conf - fi - - # Enable required wireplumber alsa and bluez monitors - if use sound-server; then - # Install sound-server enabler for wireplumber 0.5.0+ conf syntax - insinto /etc/wireplumber/wireplumber.conf.d - doins "${FILESDIR}"/gentoo-sound-server-enable-audio-bluetooth.conf - fi - - if use system-service; then - newtmpfiles - pipewire.conf <<-EOF || die - d /run/pipewire 0755 pipewire pipewire - - - EOF - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop-r2 pipewire.desktop - - exeinto /usr/bin - newexe "${FILESDIR}"/gentoo-pipewire-launcher.in-r3 gentoo-pipewire-launcher - - doman "${FILESDIR}"/gentoo-pipewire-launcher.1 - - # Disable pipewire-pulse if sound-server is disabled. - if ! use sound-server ; then - sed -i -s '/pipewire -c pipewire-pulse.conf/s/^/#/' "${ED}"/usr/bin/gentoo-pipewire-launcher || die - fi - - eprefixify "${ED}"/usr/bin/gentoo-pipewire-launcher - fi -} - -pkg_postrm() { - udev_reload -} - -pkg_preinst() { - HAD_SOUND_SERVER=0 - HAD_SYSTEM_SERVICE=0 - - if has_version "media-video/pipewire[sound-server(-)]" ; then - HAD_SOUND_SERVER=1 - fi - - if has_version "media-video/pipewire[system-service(-)]" ; then - HAD_SYSTEM_SERVICE=1 - fi -} - -pkg_postinst() { - udev_reload - - use system-service && tmpfiles_process pipewire.conf - - local ver - for ver in ${REPLACING_VERSIONS} ; do - if has_version kde-plasma/kwin[screencast] || has_version x11-wm/mutter[screencast] ; then - # https://bugs.gentoo.org/908490 - # https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3243 - ewarn "Please restart KWin/Mutter after upgrading PipeWire." - ewarn "Screencasting may not work until you do." - fi - - if ver_test ${ver} -le 0.3.66-r1 ; then - elog ">=pipewire-0.3.66 uses the 'pipewire' group to manage permissions" - elog "and limits needed to function smoothly:" - elog - elog "1. Please make sure your user is in the 'pipewire' group for" - elog "the best experience with realtime scheduling (PAM limits behavior)!" - elog "You can add your account with:" - elog " usermod -aG pipewire <youruser>" - elog - elog "2. For the best experience with fast user switching, it is recommended" - elog "that you remove your user from the 'audio' group unless you rely on the" - elog "audio group for device access control or ACLs.:" - elog " usermod -rG audio <youruser>" - elog - - if ! use jack-sdk ; then - elog - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack <application> before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd ; then - ewarn - ewarn "PipeWire daemon startup has been moved to a launcher script!" - ewarn "Make sure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist or no" - ewarn "longer is set to start a session manager or PulseAudio compatibility daemon (all" - ewarn "lines similar to '{ path = /usr/bin/pipewire*' should be commented out)" - ewarn - ewarn "Those manually starting /usr/bin/pipewire via .xinitrc or similar _must_ from" - ewarn "now on start ${EROOT}/usr/bin/gentoo-pipewire-launcher instead! It is highly" - ewarn "advised that a D-Bus user session is set up before starting the script." - ewarn - fi - - if use sound-server && ( has_version 'media-sound/pulseaudio[daemon]' || has_version 'media-sound/pulseaudio-daemon' ) ; then - elog - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit pulseaudio client configuration files:" - elog "${EROOT}/etc/pulse/client.conf and ${EROOT}/etc/pulse/client.conf.d/enable-autospawn.conf" - elog "if it exists, and disable autospawning of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/usr/bin/gentoo-pipewire-launcher by commenting out the relevant" - elog "command:" - elog - elog "#${EROOT}/usr/bin/pipewire -c pipewire-pulse.conf &" - elog - fi - - if has_version 'net-misc/ofono' ; then - ewarn "Native backend has become default. Please disable oFono via:" - if systemd_is_booted ; then - ewarn "systemctl disable ofono" - else - ewarn "rc-update delete ofono" - fi - fi - fi - done - - if [[ ${HAD_SOUND_SERVER} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - # TODO: We could drop most of this if we set up systemd presets? - # They're worth looking into because right now, the out-of-the-box experience - # is automatic on OpenRC, while it needs manual intervention on systemd. - if use sound-server && use systemd ; then - elog - elog "When switching from PulseAudio, you may need to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "To use PipeWire, the user units must be manually enabled" - elog "by running this command as each user you use for desktop activities:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both new users and those upgrading need to enable WirePlumber" - elog "for relevant users:" - elog - elog " systemctl --user disable pipewire-media-session.service" - elog " systemctl --user --force enable wireplumber.service" - elog - elog "Root user may replace --user with --global to change system default" - elog "configuration for all of the above commands." - elog - fi - - if ! use sound-server ; then - ewarn - ewarn "USE=sound-server is disabled! If you want PipeWire to provide" - ewarn "your sound, please enable it. See the wiki at" - ewarn "https://wiki.gentoo.org/wiki/PipeWire#Replacing_PulseAudio" - ewarn "for more details." - ewarn - fi - fi - - if use system-service && [[ ${HAD_SYSTEM_SERVICE} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - ewarn - ewarn "You have enabled the system-service USE flag, which installs" - ewarn "the system-wide systemd units that enable PipeWire to run as a system" - ewarn "service. This is more than likely NOT what you want. You are strongly" - ewarn "advised not to enable this mode and instead stick with systemd user" - ewarn "units. The default configuration files will likely not work out of the" - ewarn "box, and you are on your own with configuration." - ewarn - fi - - elog "For latest tips and tricks, troubleshooting information, and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit - - if use sound-server && ! use pipewire-alsa; then - optfeature "ALSA plugin to use PulseAudio interface for output" "media-plugins/alsa-plugins[pulseaudio]" - fi -} diff --git a/media-video/pipewire/pipewire-1.0.5.ebuild b/media-video/pipewire/pipewire-1.0.5.ebuild deleted file mode 100644 index 0115d177525b..000000000000 --- a/media-video/pipewire/pipewire-1.0.5.ebuild +++ /dev/null @@ -1,512 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# 1. Please regularly check (even at the point of bumping) Fedora's packaging -# for needed backports at https://src.fedoraproject.org/rpms/pipewire/tree/rawhide. -# -# 2. Upstream also sometimes amend release notes for the previous release to mention -# needed patches, e.g. https://gitlab.freedesktop.org/pipewire/pipewire/-/tags/0.3.55#distros -# -# 3. Keep an eye on git master (for both PipeWire and WirePlumber) as things -# continue to move quickly. It's not uncommon for fixes to be made shortly -# after releases. - -# TODO: Maybe get upstream to produce `meson dist` tarballs: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3663 -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1788 -# -# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-pipewire-docs -# Set to 1 if prebuilt, 0 if not -# (the construct below is to allow overriding from env for script) -: ${PIPEWIRE_DOCS_PREBUILT:=1} - -PIPEWIRE_DOCS_PREBUILT_DEV=sam -PIPEWIRE_DOCS_VERSION=$(ver_cut 1-2).0 -# Default to generating docs (inc. man pages) if no prebuilt; overridden later -PIPEWIRE_DOCS_USEFLAG="+man" -PYTHON_COMPAT=( python3_{10..12} ) -inherit meson-multilib optfeature prefix python-any-r1 systemd tmpfiles udev - -if [[ ${PV} == 9999 ]]; then - PIPEWIRE_DOCS_PREBUILT=0 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - if [[ ${PV} == *_p* ]] ; then - MY_COMMIT="" - SRC_URI="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${MY_COMMIT}/pipewire-${MY_COMMIT}.tar.bz2 -> ${P}.tar.bz2" - S="${WORKDIR}"/${PN}-${MY_COMMIT} - else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2" - fi - - if [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - SRC_URI+=" !man? ( https://dev.gentoo.org/~${PIPEWIRE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${PIPEWIRE_DOCS_VERSION}-docs.tar.xz )" - PIPEWIRE_DOCS_USEFLAG="man" - fi - - KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -# ABI was broken in 0.3.42 for https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/49 -SLOT="0/0.4" -IUSE="${PIPEWIRE_DOCS_USEFLAG} bluetooth dbus doc echo-cancel extra ffmpeg flatpak gstreamer gsettings ieee1394 jack-client jack-sdk liblc3 lv2" -IUSE+=" modemmanager pipewire-alsa readline roc selinux sound-server ssl system-service systemd test v4l X zeroconf" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -# - TODO: There should be "sound-server? ( || ( alsa bluetooth ) )" here, but ALSA is always enabled -# - TODO: Pulseaudio alsa plugin performs runtime check that pulseaudio server connection will work -# which provides adequate guarantee that alsa-lib will be able to provide audio services. -# If that works, pulseaudio defaults are loaded into alsa-lib runtime replacing default PCM and CTL. -# When pipewire-alsa will be able to perform similar check, pipewire-alsa can be enabled unconditionally. -# - ffmpeg is only used for pw-cat. We don't build the spa plugin which receives barely any activity. -REQUIRED_USE=" - ffmpeg? ( extra ) - bluetooth? ( dbus ) - jack-sdk? ( !jack-client ) - modemmanager? ( bluetooth ) - system-service? ( systemd ) - !sound-server? ( !pipewire-alsa ) - jack-client? ( dbus ) -" - -RESTRICT="!test? ( test )" - -BDEPEND=" - >=dev-build/meson-0.59 - virtual/pkgconfig - dbus? ( dev-util/gdbus-codegen ) - doc? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - media-gfx/graphviz - ) - man? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - ) -" -# * While udev could technically be optional, it's needed for a number of options, -# and not really worth it, bug #877769. -# -# * Supports both legacy webrtc-audio-processing:0 and new webrtc-audio-processing:1. -# We depend on :1 as it prefers that, it's not legacy, and to avoid automagic. -# -# * Older Doxygen (<1.9.8) may work but inferior output is created: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1778 -# - https://github.com/doxygen/doxygen/issues/9254 -RDEPEND=" - acct-group/audio - acct-group/pipewire - media-libs/alsa-lib[${MULTILIB_USEDEP}] - sys-libs/ncurses:=[unicode(+)] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - dev-libs/glib - media-libs/fdk-aac - media-libs/libldac - media-libs/libfreeaptx - media-libs/opus - media-libs/sbc - >=net-wireless/bluez-4.101:= - virtual/libusb:1 - ) - dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) - echo-cancel? ( media-libs/webrtc-audio-processing:1 ) - extra? ( >=media-libs/libsndfile-1.0.20 ) - ffmpeg? ( media-video/ffmpeg:= ) - flatpak? ( dev-libs/glib ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - gsettings? ( >=dev-libs/glib-2.26.0:2 ) - ieee1394? ( media-libs/libffado[${MULTILIB_USEDEP}] ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - liblc3? ( media-sound/liblc3 ) - lv2? ( media-libs/lilv ) - modemmanager? ( >=net-misc/modemmanager-1.10.0 ) - pipewire-alsa? ( >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] ) - sound-server? ( !media-sound/pulseaudio-daemon ) - roc? ( >=media-libs/roc-toolkit-0.3.0:= ) - readline? ( sys-libs/readline:= ) - selinux? ( sys-libs/libselinux ) - ssl? ( dev-libs/openssl:= ) - systemd? ( sys-apps/systemd ) - system-service? ( acct-user/pipewire ) - v4l? ( media-libs/libv4l ) - X? ( - media-libs/libcanberra - x11-libs/libX11 - x11-libs/libXfixes - ) - zeroconf? ( net-dns/avahi ) -" - -DEPEND="${RDEPEND}" - -# TODO: Consider use cases where pipewire is not used for driving audio -# Doing so with WirePlumber currently involves editing Lua scripts -PDEPEND=">=media-video/wireplumber-0.4.8-r3" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch -) - -pkg_setup() { - if use doc || use man ; then - python-any-r1_pkg_setup - fi -} - -src_prepare() { - default - - # Used for upstream backports - [[ -d "${FILESDIR}"/${PV} ]] && eapply "${FILESDIR}"/${PV} -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - - $(meson_feature dbus) - $(meson_native_use_feature zeroconf avahi) - $(meson_native_use_feature doc docs) - $(meson_native_use_feature man) - $(meson_native_enabled examples) # TODO: Figure out if this is still important now that media-session gone - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_feature ieee1394 libffado) - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature gsettings) - $(meson_native_use_feature systemd) - - $(meson_native_use_feature system-service systemd-system-service) - -Dsystemd-system-unit-dir="$(systemd_get_systemunitdir)" - -Dsystemd-user-unit-dir="$(systemd_get_userunitdir)" - - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - $(meson_feature selinux) - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (NOTE: media-session is gone so IUSE=alsa/spa_alsa/alsa-backend might be possible) - -Dcompress-offload=disabled # TODO: tinycompress unpackaged - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - # https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1379 - $(meson_native_use_feature modemmanager bluez5-backend-native-mm) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - $(meson_native_use_feature bluetooth opus) - $(meson_native_use_feature bluetooth bluez5-codec-opus) - $(meson_native_use_feature bluetooth libusb) # At least for now only used by bluez5 native (quirk detection of adapters) - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889 - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - $(meson_native_use_feature ffmpeg pw-cat-ffmpeg) - $(meson_native_use_feature flatpak) - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_use jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - -Dbluez5-codec-lc3plus=disabled # unpackaged - $(meson_native_use_feature liblc3 bluez5-codec-lc3) - $(meson_native_use_feature lv2) - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - $(meson_native_use_feature roc) - $(meson_native_use_feature readline) - $(meson_native_use_feature ssl raop) - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - -Dlibmysofa=disabled # libmysofa is unpackaged - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - -Dsession-managers="[]" # All available session managers are now their own projects, so there's nothing to build - - # We still have <5.16 kernels packaged in Gentoo and 6.1 (LTS) only - # just became stable, with 5.15 being the previous LTS. Many people - # are still on it. - -Dpam-defaults-install=true - - # Just for bell sounds in X11 right now. - $(meson_native_use_feature X x11) - $(meson_native_use_feature X x11-xfixes) - $(meson_native_use_feature X libcanberra) - ) - - meson_src_configure -} - -multilib_src_test() { - meson_src_test --timeout-multiplier 10 -} - -multilib_src_install() { - # Our custom DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - if ! use man && [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - doman "${WORKDIR}"/${PN}-${PIPEWIRE_DOCS_VERSION}-docs/man/*/*.[0-8] - fi - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - - # Install pipewire conf loader hook - insinto /usr/share/alsa/alsa.conf.d - doins "${FILESDIR}"/99-pipewire-default-hook.conf - eprefixify "${ED}"/usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf - - # These will break if someone has /etc that is a symbolic link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf /etc/alsa/conf.d/99-pipewire-default-hook.conf - fi - - # Enable required wireplumber alsa and bluez monitors - if use sound-server; then - # Install sound-server enabler, alsa part, wireplumber 0.4.15 syntax, clean this up with wireplumber dep bump - dodir /etc/wireplumber/main.lua.d - echo "alsa_monitor.enabled = true" > "${ED}"/etc/wireplumber/main.lua.d/89-gentoo-sound-server-enable-alsa-monitor.lua || die - - # Install sound-server enabler, bluetooth part, wireplumber 0.4.15 syntax, clean this up with wireplumber dep bump - dodir /etc/wireplumber/bluetooth.lua.d - echo "bluez_monitor.enabled = true" > "${ED}"/etc/wireplumber/bluetooth.lua.d/89-gentoo-sound-server-enable-bluez-monitor.lua || die - - # Install sound-server enabler for wireplumber 0.4.81+ conf syntax - insinto /etc/pipewire/wireplumber.conf.d - doins "${FILESDIR}"/gentoo-sound-server-enable-audio-bluetooth.conf - fi - - if use system-service; then - newtmpfiles - pipewire.conf <<-EOF || die - d /run/pipewire 0755 pipewire pipewire - - - EOF - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop-r2 pipewire.desktop - - exeinto /usr/bin - newexe "${FILESDIR}"/gentoo-pipewire-launcher.in-r3 gentoo-pipewire-launcher - - doman "${FILESDIR}"/gentoo-pipewire-launcher.1 - - # Disable pipewire-pulse if sound-server is disabled. - if ! use sound-server ; then - sed -i -s '/pipewire -c pipewire-pulse.conf/s/^/#/' "${ED}"/usr/bin/gentoo-pipewire-launcher || die - fi - - eprefixify "${ED}"/usr/bin/gentoo-pipewire-launcher - fi -} - -pkg_postrm() { - udev_reload -} - -pkg_preinst() { - HAD_SOUND_SERVER=0 - HAD_SYSTEM_SERVICE=0 - - if has_version "media-video/pipewire[sound-server(-)]" ; then - HAD_SOUND_SERVER=1 - fi - - if has_version "media-video/pipewire[system-service(-)]" ; then - HAD_SYSTEM_SERVICE=1 - fi -} - -pkg_postinst() { - udev_reload - - use system-service && tmpfiles_process pipewire.conf - - local ver - for ver in ${REPLACING_VERSIONS} ; do - if has_version kde-plasma/kwin[screencast] || has_version x11-wm/mutter[screencast] ; then - # https://bugs.gentoo.org/908490 - # https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3243 - ewarn "Please restart KWin/Mutter after upgrading PipeWire." - ewarn "Screencasting may not work until you do." - fi - - if ver_test ${ver} -le 0.3.66-r1 ; then - elog ">=pipewire-0.3.66 uses the 'pipewire' group to manage permissions" - elog "and limits needed to function smoothly:" - elog - elog "1. Please make sure your user is in the 'pipewire' group for" - elog "the best experience with realtime scheduling (PAM limits behavior)!" - elog "You can add your account with:" - elog " usermod -aG pipewire <youruser>" - elog - elog "2. For the best experience with fast user switching, it is recommended" - elog "that you remove your user from the 'audio' group unless you rely on the" - elog "audio group for device access control or ACLs.:" - elog " usermod -rG audio <youruser>" - elog - - if ! use jack-sdk ; then - elog - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack <application> before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd ; then - ewarn - ewarn "PipeWire daemon startup has been moved to a launcher script!" - ewarn "Make sure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist or no" - ewarn "longer is set to start a session manager or PulseAudio compatibility daemon (all" - ewarn "lines similar to '{ path = /usr/bin/pipewire*' should be commented out)" - ewarn - ewarn "Those manually starting /usr/bin/pipewire via .xinitrc or similar _must_ from" - ewarn "now on start ${EROOT}/usr/bin/gentoo-pipewire-launcher instead! It is highly" - ewarn "advised that a D-Bus user session is set up before starting the script." - ewarn - fi - - if use sound-server && ( has_version 'media-sound/pulseaudio[daemon]' || has_version 'media-sound/pulseaudio-daemon' ) ; then - elog - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit pulseaudio client configuration files:" - elog "${EROOT}/etc/pulse/client.conf and ${EROOT}/etc/pulse/client.conf.d/enable-autospawn.conf" - elog "if it exists, and disable autospawning of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/usr/bin/gentoo-pipewire-launcher by commenting out the relevant" - elog "command:" - elog - elog "#${EROOT}/usr/bin/pipewire -c pipewire-pulse.conf &" - elog - fi - - if has_version 'net-misc/ofono' ; then - ewarn "Native backend has become default. Please disable oFono via:" - if systemd_is_booted ; then - ewarn "systemctl disable ofono" - else - ewarn "rc-update delete ofono" - fi - fi - fi - done - - if [[ ${HAD_SOUND_SERVER} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - # TODO: We could drop most of this if we set up systemd presets? - # They're worth looking into because right now, the out-of-the-box experience - # is automatic on OpenRC, while it needs manual intervention on systemd. - if use sound-server && use systemd ; then - elog - elog "When switching from PulseAudio, you may need to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "To use PipeWire, the user units must be manually enabled" - elog "by running this command as each user you use for desktop activities:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both new users and those upgrading need to enable WirePlumber" - elog "for relevant users:" - elog - elog " systemctl --user disable pipewire-media-session.service" - elog " systemctl --user --force enable wireplumber.service" - elog - elog "Root user may replace --user with --global to change system default" - elog "configuration for all of the above commands." - elog - fi - - if ! use sound-server ; then - ewarn - ewarn "USE=sound-server is disabled! If you want PipeWire to provide" - ewarn "your sound, please enable it. See the wiki at" - ewarn "https://wiki.gentoo.org/wiki/PipeWire#Replacing_PulseAudio" - ewarn "for more details." - ewarn - fi - fi - - if use system-service && [[ ${HAD_SYSTEM_SERVICE} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - ewarn - ewarn "You have enabled the system-service USE flag, which installs" - ewarn "the system-wide systemd units that enable PipeWire to run as a system" - ewarn "service. This is more than likely NOT what you want. You are strongly" - ewarn "advised not to enable this mode and instead stick with systemd user" - ewarn "units. The default configuration files will likely not work out of the" - ewarn "box, and you are on your own with configuration." - ewarn - fi - - elog "For latest tips and tricks, troubleshooting information, and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit - - if use sound-server && ! use pipewire-alsa; then - optfeature "ALSA plugin to use PulseAudio interface for output" "media-plugins/alsa-plugins[pulseaudio]" - fi -} diff --git a/media-video/pipewire/pipewire-1.0.6.ebuild b/media-video/pipewire/pipewire-1.0.6.ebuild deleted file mode 100644 index 1373789d2b11..000000000000 --- a/media-video/pipewire/pipewire-1.0.6.ebuild +++ /dev/null @@ -1,502 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# 1. Please regularly check (even at the point of bumping) Fedora's packaging -# for needed backports at https://src.fedoraproject.org/rpms/pipewire/tree/rawhide. -# -# 2. Upstream also sometimes amend release notes for the previous release to mention -# needed patches, e.g. https://gitlab.freedesktop.org/pipewire/pipewire/-/tags/0.3.55#distros -# -# 3. Keep an eye on git master (for both PipeWire and WirePlumber) as things -# continue to move quickly. It's not uncommon for fixes to be made shortly -# after releases. - -# TODO: Maybe get upstream to produce `meson dist` tarballs: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3663 -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1788 -# -# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-pipewire-docs -# Set to 1 if prebuilt, 0 if not -# (the construct below is to allow overriding from env for script) -: ${PIPEWIRE_DOCS_PREBUILT:=1} - -PIPEWIRE_DOCS_PREBUILT_DEV=sam -PIPEWIRE_DOCS_VERSION=$(ver_cut 1-2).0 -# Default to generating docs (inc. man pages) if no prebuilt; overridden later -PIPEWIRE_DOCS_USEFLAG="+man" -PYTHON_COMPAT=( python3_{10..12} ) -inherit meson-multilib optfeature prefix python-any-r1 systemd tmpfiles udev - -if [[ ${PV} == 9999 ]]; then - PIPEWIRE_DOCS_PREBUILT=0 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - if [[ ${PV} == *_p* ]] ; then - MY_COMMIT="" - SRC_URI="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${MY_COMMIT}/pipewire-${MY_COMMIT}.tar.bz2 -> ${P}.tar.bz2" - S="${WORKDIR}"/${PN}-${MY_COMMIT} - else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2" - fi - - if [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - SRC_URI+=" !man? ( https://dev.gentoo.org/~${PIPEWIRE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${PIPEWIRE_DOCS_VERSION}-docs.tar.xz )" - PIPEWIRE_DOCS_USEFLAG="man" - fi - - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -# ABI was broken in 0.3.42 for https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/49 -SLOT="0/0.4" -IUSE="${PIPEWIRE_DOCS_USEFLAG} bluetooth dbus doc echo-cancel extra ffmpeg flatpak gstreamer gsettings ieee1394 jack-client jack-sdk liblc3 lv2" -IUSE+=" modemmanager pipewire-alsa readline roc selinux sound-server ssl system-service systemd test v4l X zeroconf" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -# - TODO: There should be "sound-server? ( || ( alsa bluetooth ) )" here, but ALSA is always enabled -# - TODO: Pulseaudio alsa plugin performs runtime check that pulseaudio server connection will work -# which provides adequate guarantee that alsa-lib will be able to provide audio services. -# If that works, pulseaudio defaults are loaded into alsa-lib runtime replacing default PCM and CTL. -# When pipewire-alsa will be able to perform similar check, pipewire-alsa can be enabled unconditionally. -# - ffmpeg is only used for pw-cat. We don't build the spa plugin which receives barely any activity. -REQUIRED_USE=" - ffmpeg? ( extra ) - bluetooth? ( dbus ) - jack-sdk? ( !jack-client ) - modemmanager? ( bluetooth ) - system-service? ( systemd ) - !sound-server? ( !pipewire-alsa ) - jack-client? ( dbus ) -" - -RESTRICT="!test? ( test )" - -BDEPEND=" - >=dev-build/meson-0.59 - virtual/pkgconfig - dbus? ( dev-util/gdbus-codegen ) - doc? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - media-gfx/graphviz - ) - man? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - ) -" -# * While udev could technically be optional, it's needed for a number of options, -# and not really worth it, bug #877769. -# -# * Supports both legacy webrtc-audio-processing:0 and new webrtc-audio-processing:1. -# We depend on :1 as it prefers that, it's not legacy, and to avoid automagic. -# -# * Older Doxygen (<1.9.8) may work but inferior output is created: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1778 -# - https://github.com/doxygen/doxygen/issues/9254 -RDEPEND=" - acct-group/audio - acct-group/pipewire - media-libs/alsa-lib[${MULTILIB_USEDEP}] - sys-libs/ncurses:=[unicode(+)] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - dev-libs/glib - media-libs/fdk-aac - media-libs/libldac - media-libs/libfreeaptx - media-libs/opus - media-libs/sbc - >=net-wireless/bluez-4.101:= - virtual/libusb:1 - ) - dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) - echo-cancel? ( media-libs/webrtc-audio-processing:1 ) - extra? ( >=media-libs/libsndfile-1.0.20 ) - ffmpeg? ( media-video/ffmpeg:= ) - flatpak? ( dev-libs/glib ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - gsettings? ( >=dev-libs/glib-2.26.0:2 ) - ieee1394? ( media-libs/libffado[${MULTILIB_USEDEP}] ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - liblc3? ( media-sound/liblc3 ) - lv2? ( media-libs/lilv ) - modemmanager? ( >=net-misc/modemmanager-1.10.0 ) - pipewire-alsa? ( >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] ) - sound-server? ( !media-sound/pulseaudio-daemon ) - roc? ( >=media-libs/roc-toolkit-0.3.0:= ) - readline? ( sys-libs/readline:= ) - selinux? ( sys-libs/libselinux ) - ssl? ( dev-libs/openssl:= ) - systemd? ( sys-apps/systemd ) - system-service? ( acct-user/pipewire ) - v4l? ( media-libs/libv4l ) - X? ( - media-libs/libcanberra - x11-libs/libX11 - x11-libs/libXfixes - ) - zeroconf? ( net-dns/avahi ) -" - -DEPEND="${RDEPEND}" - -PDEPEND=">=media-video/wireplumber-0.5.2" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch -) - -pkg_setup() { - if use doc || use man ; then - python-any-r1_pkg_setup - fi -} - -src_prepare() { - default - - # Used for upstream backports - [[ -d "${FILESDIR}"/${PV} ]] && eapply "${FILESDIR}"/${PV} -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - - $(meson_feature dbus) - $(meson_native_use_feature zeroconf avahi) - $(meson_native_use_feature doc docs) - $(meson_native_use_feature man) - $(meson_native_enabled examples) # TODO: Figure out if this is still important now that media-session gone - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_feature ieee1394 libffado) - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature gsettings) - $(meson_native_use_feature systemd) - - $(meson_native_use_feature system-service systemd-system-service) - -Dsystemd-system-unit-dir="$(systemd_get_systemunitdir)" - -Dsystemd-user-unit-dir="$(systemd_get_userunitdir)" - - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - $(meson_feature selinux) - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (NOTE: media-session is gone so IUSE=alsa/spa_alsa/alsa-backend might be possible) - -Dcompress-offload=disabled # TODO: tinycompress unpackaged - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - # https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1379 - $(meson_native_use_feature modemmanager bluez5-backend-native-mm) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - $(meson_native_use_feature bluetooth opus) - $(meson_native_use_feature bluetooth bluez5-codec-opus) - $(meson_native_use_feature bluetooth libusb) # At least for now only used by bluez5 native (quirk detection of adapters) - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889 - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - $(meson_native_use_feature ffmpeg pw-cat-ffmpeg) - $(meson_native_use_feature flatpak) - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_use jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - -Dbluez5-codec-lc3plus=disabled # unpackaged - $(meson_native_use_feature liblc3 bluez5-codec-lc3) - $(meson_native_use_feature lv2) - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - $(meson_native_use_feature roc) - $(meson_native_use_feature readline) - $(meson_native_use_feature ssl raop) - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - -Dlibmysofa=disabled # libmysofa is unpackaged - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - -Dsession-managers="[]" # All available session managers are now their own projects, so there's nothing to build - - # We still have <5.16 kernels packaged in Gentoo and 6.1 (LTS) only - # just became stable, with 5.15 being the previous LTS. Many people - # are still on it. - -Dpam-defaults-install=true - - # Just for bell sounds in X11 right now. - $(meson_native_use_feature X x11) - $(meson_native_use_feature X x11-xfixes) - $(meson_native_use_feature X libcanberra) - ) - - meson_src_configure -} - -multilib_src_test() { - meson_src_test --timeout-multiplier 10 -} - -multilib_src_install() { - # Our custom DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - if ! use man && [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - doman "${WORKDIR}"/${PN}-${PIPEWIRE_DOCS_VERSION}-docs/man/*/*.[0-8] - fi - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - - # Install pipewire conf loader hook - insinto /usr/share/alsa/alsa.conf.d - doins "${FILESDIR}"/99-pipewire-default-hook.conf - eprefixify "${ED}"/usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf - - # These will break if someone has /etc that is a symbolic link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf /etc/alsa/conf.d/99-pipewire-default-hook.conf - fi - - # Enable required wireplumber alsa and bluez monitors - if use sound-server; then - # Install sound-server enabler for wireplumber 0.5.0+ conf syntax - insinto /etc/wireplumber/wireplumber.conf.d - doins "${FILESDIR}"/gentoo-sound-server-enable-audio-bluetooth.conf - fi - - if use system-service; then - newtmpfiles - pipewire.conf <<-EOF || die - d /run/pipewire 0755 pipewire pipewire - - - EOF - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop-r2 pipewire.desktop - - exeinto /usr/bin - newexe "${FILESDIR}"/gentoo-pipewire-launcher.in-r3 gentoo-pipewire-launcher - - doman "${FILESDIR}"/gentoo-pipewire-launcher.1 - - # Disable pipewire-pulse if sound-server is disabled. - if ! use sound-server ; then - sed -i -s '/pipewire -c pipewire-pulse.conf/s/^/#/' "${ED}"/usr/bin/gentoo-pipewire-launcher || die - fi - - eprefixify "${ED}"/usr/bin/gentoo-pipewire-launcher - fi -} - -pkg_postrm() { - udev_reload -} - -pkg_preinst() { - HAD_SOUND_SERVER=0 - HAD_SYSTEM_SERVICE=0 - - if has_version "media-video/pipewire[sound-server(-)]" ; then - HAD_SOUND_SERVER=1 - fi - - if has_version "media-video/pipewire[system-service(-)]" ; then - HAD_SYSTEM_SERVICE=1 - fi -} - -pkg_postinst() { - udev_reload - - use system-service && tmpfiles_process pipewire.conf - - local ver - for ver in ${REPLACING_VERSIONS} ; do - if has_version kde-plasma/kwin[screencast] || has_version x11-wm/mutter[screencast] ; then - # https://bugs.gentoo.org/908490 - # https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3243 - ewarn "Please restart KWin/Mutter after upgrading PipeWire." - ewarn "Screencasting may not work until you do." - fi - - if ver_test ${ver} -le 0.3.66-r1 ; then - elog ">=pipewire-0.3.66 uses the 'pipewire' group to manage permissions" - elog "and limits needed to function smoothly:" - elog - elog "1. Please make sure your user is in the 'pipewire' group for" - elog "the best experience with realtime scheduling (PAM limits behavior)!" - elog "You can add your account with:" - elog " usermod -aG pipewire <youruser>" - elog - elog "2. For the best experience with fast user switching, it is recommended" - elog "that you remove your user from the 'audio' group unless you rely on the" - elog "audio group for device access control or ACLs.:" - elog " usermod -rG audio <youruser>" - elog - - if ! use jack-sdk ; then - elog - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack <application> before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd ; then - ewarn - ewarn "PipeWire daemon startup has been moved to a launcher script!" - ewarn "Make sure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist or no" - ewarn "longer is set to start a session manager or PulseAudio compatibility daemon (all" - ewarn "lines similar to '{ path = /usr/bin/pipewire*' should be commented out)" - ewarn - ewarn "Those manually starting /usr/bin/pipewire via .xinitrc or similar _must_ from" - ewarn "now on start ${EROOT}/usr/bin/gentoo-pipewire-launcher instead! It is highly" - ewarn "advised that a D-Bus user session is set up before starting the script." - ewarn - fi - - if use sound-server && ( has_version 'media-sound/pulseaudio[daemon]' || has_version 'media-sound/pulseaudio-daemon' ) ; then - elog - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit pulseaudio client configuration files:" - elog "${EROOT}/etc/pulse/client.conf and ${EROOT}/etc/pulse/client.conf.d/enable-autospawn.conf" - elog "if it exists, and disable autospawning of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/usr/bin/gentoo-pipewire-launcher by commenting out the relevant" - elog "command:" - elog - elog "#${EROOT}/usr/bin/pipewire -c pipewire-pulse.conf &" - elog - fi - - if has_version 'net-misc/ofono' ; then - ewarn "Native backend has become default. Please disable oFono via:" - if systemd_is_booted ; then - ewarn "systemctl disable ofono" - else - ewarn "rc-update delete ofono" - fi - fi - fi - done - - if [[ ${HAD_SOUND_SERVER} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - # TODO: We could drop most of this if we set up systemd presets? - # They're worth looking into because right now, the out-of-the-box experience - # is automatic on OpenRC, while it needs manual intervention on systemd. - if use sound-server && use systemd ; then - elog - elog "When switching from PulseAudio, you may need to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "To use PipeWire, the user units must be manually enabled" - elog "by running this command as each user you use for desktop activities:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both new users and those upgrading need to enable WirePlumber" - elog "for relevant users:" - elog - elog " systemctl --user disable pipewire-media-session.service" - elog " systemctl --user --force enable wireplumber.service" - elog - elog "Root user may replace --user with --global to change system default" - elog "configuration for all of the above commands." - elog - fi - - if ! use sound-server ; then - ewarn - ewarn "USE=sound-server is disabled! If you want PipeWire to provide" - ewarn "your sound, please enable it. See the wiki at" - ewarn "https://wiki.gentoo.org/wiki/PipeWire#Replacing_PulseAudio" - ewarn "for more details." - ewarn - fi - fi - - if use system-service && [[ ${HAD_SYSTEM_SERVICE} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - ewarn - ewarn "You have enabled the system-service USE flag, which installs" - ewarn "the system-wide systemd units that enable PipeWire to run as a system" - ewarn "service. This is more than likely NOT what you want. You are strongly" - ewarn "advised not to enable this mode and instead stick with systemd user" - ewarn "units. The default configuration files will likely not work out of the" - ewarn "box, and you are on your own with configuration." - ewarn - fi - - elog "For latest tips and tricks, troubleshooting information, and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit - - if use sound-server && ! use pipewire-alsa; then - optfeature "ALSA plugin to use PulseAudio interface for output" "media-plugins/alsa-plugins[pulseaudio]" - fi -} diff --git a/media-video/pipewire/pipewire-1.2.0-r2.ebuild b/media-video/pipewire/pipewire-1.2.0-r2.ebuild deleted file mode 100644 index f4aeba1f7ea4..000000000000 --- a/media-video/pipewire/pipewire-1.2.0-r2.ebuild +++ /dev/null @@ -1,517 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# 1. Please regularly check (even at the point of bumping) Fedora's packaging -# for needed backports at https://src.fedoraproject.org/rpms/pipewire/tree/rawhide. -# -# 2. Upstream also sometimes amend release notes for the previous release to mention -# needed patches, e.g. https://gitlab.freedesktop.org/pipewire/pipewire/-/tags/0.3.55#distros -# -# 3. Keep an eye on git master (for both PipeWire and WirePlumber) as things -# continue to move quickly. It's not uncommon for fixes to be made shortly -# after releases. - -# TODO: Maybe get upstream to produce `meson dist` tarballs: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3663 -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1788 -# -# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-pipewire-docs -# Set to 1 if prebuilt, 0 if not -# (the construct below is to allow overriding from env for script) -: ${PIPEWIRE_DOCS_PREBUILT:=1} - -PIPEWIRE_DOCS_PREBUILT_DEV=sam -PIPEWIRE_DOCS_VERSION="${PV}" -# Default to generating docs (inc. man pages) if no prebuilt; overridden later -PIPEWIRE_DOCS_USEFLAG="+man" -PYTHON_COMPAT=( python3_{10..12} ) -inherit meson-multilib optfeature prefix python-any-r1 systemd tmpfiles udev - -if [[ ${PV} == 9999 ]]; then - PIPEWIRE_DOCS_PREBUILT=0 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - if [[ ${PV} == *_p* ]] ; then - MY_COMMIT="" - SRC_URI="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${MY_COMMIT}/pipewire-${MY_COMMIT}.tar.bz2 -> ${P}.tar.bz2" - S="${WORKDIR}"/${PN}-${MY_COMMIT} - else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2" - fi - - if [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - SRC_URI+=" !man? ( https://dev.gentoo.org/~${PIPEWIRE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${PIPEWIRE_DOCS_VERSION}-docs.tar.xz )" - PIPEWIRE_DOCS_USEFLAG="man" - fi - - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -# ABI was broken in 0.3.42 for https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/49 -SLOT="0/0.4" -IUSE="${PIPEWIRE_DOCS_USEFLAG} bluetooth dbus doc echo-cancel extra ffmpeg flatpak gstreamer gsettings ieee1394 jack-client jack-sdk liblc3 lv2" -IUSE+=" modemmanager pipewire-alsa readline roc selinux sound-server ssl system-service systemd test v4l X zeroconf" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -# - TODO: There should be "sound-server? ( || ( alsa bluetooth ) )" here, but ALSA is always enabled -# - TODO: Pulseaudio alsa plugin performs runtime check that pulseaudio server connection will work -# which provides adequate guarantee that alsa-lib will be able to provide audio services. -# If that works, pulseaudio defaults are loaded into alsa-lib runtime replacing default PCM and CTL. -# When pipewire-alsa will be able to perform similar check, pipewire-alsa can be enabled unconditionally. -# - ffmpeg is only used for pw-cat. We don't build the spa plugin which receives barely any activity. -REQUIRED_USE=" - ffmpeg? ( extra ) - bluetooth? ( dbus ) - jack-sdk? ( !jack-client ) - modemmanager? ( bluetooth ) - system-service? ( systemd ) - !sound-server? ( !pipewire-alsa ) - jack-client? ( dbus ) -" - -RESTRICT="!test? ( test )" - -BDEPEND=" - >=dev-build/meson-0.59 - virtual/pkgconfig - dbus? ( dev-util/gdbus-codegen ) - doc? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - media-gfx/graphviz - ) - man? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - ) -" -# * While udev could technically be optional, it's needed for a number of options, -# and not really worth it, bug #877769. -# -# * Supports both legacy webrtc-audio-processing:0 and new webrtc-audio-processing:1. -# We depend on :1 as it prefers that, it's not legacy, and to avoid automagic. -# -# * Older Doxygen (<1.9.8) may work but inferior output is created: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1778 -# - https://github.com/doxygen/doxygen/issues/9254 -RDEPEND=" - acct-group/audio - acct-group/pipewire - media-libs/alsa-lib[${MULTILIB_USEDEP}] - sys-libs/ncurses:=[unicode(+)] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - dev-libs/glib - media-libs/fdk-aac - media-libs/libldac - media-libs/libfreeaptx - media-libs/opus - media-libs/sbc - >=net-wireless/bluez-4.101:= - virtual/libusb:1 - ) - dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) - echo-cancel? ( >=media-libs/webrtc-audio-processing-1.2:1 ) - extra? ( >=media-libs/libsndfile-1.0.20 ) - ffmpeg? ( media-video/ffmpeg:= ) - flatpak? ( dev-libs/glib ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - gsettings? ( >=dev-libs/glib-2.26.0:2 ) - ieee1394? ( media-libs/libffado[${MULTILIB_USEDEP}] ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - liblc3? ( media-sound/liblc3 ) - lv2? ( media-libs/lilv ) - modemmanager? ( >=net-misc/modemmanager-1.10.0 ) - pipewire-alsa? ( >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] ) - sound-server? ( !media-sound/pulseaudio-daemon ) - roc? ( >=media-libs/roc-toolkit-0.3.0:= ) - readline? ( sys-libs/readline:= ) - selinux? ( sys-libs/libselinux ) - ssl? ( dev-libs/openssl:= ) - systemd? ( sys-apps/systemd ) - system-service? ( acct-user/pipewire ) - v4l? ( media-libs/libv4l ) - X? ( - media-libs/libcanberra - x11-libs/libX11 - x11-libs/libXfixes - ) - zeroconf? ( net-dns/avahi ) -" - -DEPEND="${RDEPEND}" - -PDEPEND=">=media-video/wireplumber-0.5.2" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch - # https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/2061 - "${FILESDIR}"/${P}-automagic-gsettings.patch -) - -pkg_setup() { - if use doc || use man ; then - python-any-r1_pkg_setup - fi -} - -src_prepare() { - default - - # Used for upstream backports - [[ -d "${FILESDIR}"/${PV} ]] && eapply "${FILESDIR}"/${PV} -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - - $(meson_feature dbus) - $(meson_native_use_feature zeroconf avahi) - $(meson_native_use_feature doc docs) - $(meson_native_use_feature man) - $(meson_native_enabled examples) # TODO: Figure out if this is still important now that media-session gone - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_feature ieee1394 libffado) - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature gsettings) - $(meson_native_use_feature systemd) - - $(meson_native_use_feature system-service systemd-system-service) - -Dsystemd-system-unit-dir="$(systemd_get_systemunitdir)" - -Dsystemd-user-unit-dir="$(systemd_get_userunitdir)" - - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - $(meson_feature selinux) - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (NOTE: media-session is gone so IUSE=alsa/spa_alsa/alsa-backend might be possible) - -Dcompress-offload=disabled # TODO: tinycompress unpackaged - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - # https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1379 - $(meson_native_use_feature modemmanager bluez5-backend-native-mm) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - $(meson_native_use_feature bluetooth opus) - $(meson_native_use_feature bluetooth bluez5-codec-opus) - $(meson_native_use_feature bluetooth libusb) # At least for now only used by bluez5 native (quirk detection of adapters) - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889 - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - $(meson_native_use_feature ffmpeg pw-cat-ffmpeg) - $(meson_native_use_feature flatpak) - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_use jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - -Dbluez5-codec-lc3plus=disabled # unpackaged - $(meson_native_use_feature liblc3 bluez5-codec-lc3) - $(meson_native_use_feature lv2) - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - $(meson_native_use_feature roc) - $(meson_native_use_feature readline) - $(meson_native_use_feature ssl raop) - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - -Dlibmysofa=disabled # libmysofa is unpackaged - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - -Dsession-managers="[]" # All available session managers are now their own projects, so there's nothing to build - - # We still have <5.16 kernels packaged in Gentoo and 6.1 (LTS) only - # just became stable, with 5.15 being the previous LTS. Many people - # are still on it. - -Dpam-defaults-install=true - - # Just for bell sounds in X11 right now. - $(meson_native_use_feature X x11) - $(meson_native_use_feature X x11-xfixes) - $(meson_native_use_feature X libcanberra) - - # TODO - -Dsnap=disabled - ) - - # This installs the schema file for pulseaudio-daemon, iff we are replacing - # the official sound-server - if use !sound-server; then - emesonargs+=( '-Dgsettings-pulse-schema=disabled' ) - else - emesonargs+=( - $(meson_native_use_feature gsettings gsettings-pulse-schema) - ) - fi - - meson_src_configure -} - -multilib_src_test() { - meson_src_test --timeout-multiplier 10 -} - -multilib_src_install() { - # Our custom DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - if ! use man && [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - doman "${WORKDIR}"/${PN}-${PIPEWIRE_DOCS_VERSION}-docs/man/*/*.[0-8] - fi - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - - # Install pipewire conf loader hook - insinto /usr/share/alsa/alsa.conf.d - doins "${FILESDIR}"/99-pipewire-default-hook.conf - eprefixify "${ED}"/usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf - - # These will break if someone has /etc that is a symbolic link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf /etc/alsa/conf.d/99-pipewire-default-hook.conf - fi - - # Enable required wireplumber alsa and bluez monitors - if use sound-server; then - # Install sound-server enabler for wireplumber 0.5.0+ conf syntax - insinto /etc/wireplumber/wireplumber.conf.d - doins "${FILESDIR}"/gentoo-sound-server-enable-audio-bluetooth.conf - fi - - if use system-service; then - newtmpfiles - pipewire.conf <<-EOF || die - d /run/pipewire 0755 pipewire pipewire - - - EOF - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop-r2 pipewire.desktop - - exeinto /usr/bin - newexe "${FILESDIR}"/gentoo-pipewire-launcher.in-r3 gentoo-pipewire-launcher - - doman "${FILESDIR}"/gentoo-pipewire-launcher.1 - - # Disable pipewire-pulse if sound-server is disabled. - if ! use sound-server ; then - sed -i -s '/pipewire -c pipewire-pulse.conf/s/^/#/' "${ED}"/usr/bin/gentoo-pipewire-launcher || die - fi - - eprefixify "${ED}"/usr/bin/gentoo-pipewire-launcher - fi -} - -pkg_postrm() { - udev_reload -} - -pkg_preinst() { - HAD_SOUND_SERVER=0 - HAD_SYSTEM_SERVICE=0 - - if has_version "media-video/pipewire[sound-server(-)]" ; then - HAD_SOUND_SERVER=1 - fi - - if has_version "media-video/pipewire[system-service(-)]" ; then - HAD_SYSTEM_SERVICE=1 - fi -} - -pkg_postinst() { - udev_reload - - use system-service && tmpfiles_process pipewire.conf - - local ver - for ver in ${REPLACING_VERSIONS} ; do - if has_version kde-plasma/kwin[screencast] || has_version x11-wm/mutter[screencast] ; then - # https://bugs.gentoo.org/908490 - # https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3243 - ewarn "Please restart KWin/Mutter after upgrading PipeWire." - ewarn "Screencasting may not work until you do." - fi - - if ver_test ${ver} -le 0.3.66-r1 ; then - elog ">=pipewire-0.3.66 uses the 'pipewire' group to manage permissions" - elog "and limits needed to function smoothly:" - elog - elog "1. Please make sure your user is in the 'pipewire' group for" - elog "the best experience with realtime scheduling (PAM limits behavior)!" - elog "You can add your account with:" - elog " usermod -aG pipewire <youruser>" - elog - elog "2. For the best experience with fast user switching, it is recommended" - elog "that you remove your user from the 'audio' group unless you rely on the" - elog "audio group for device access control or ACLs.:" - elog " usermod -rG audio <youruser>" - elog - - if ! use jack-sdk ; then - elog - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack <application> before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd ; then - ewarn - ewarn "PipeWire daemon startup has been moved to a launcher script!" - ewarn "Make sure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist or no" - ewarn "longer is set to start a session manager or PulseAudio compatibility daemon (all" - ewarn "lines similar to '{ path = /usr/bin/pipewire*' should be commented out)" - ewarn - ewarn "Those manually starting /usr/bin/pipewire via .xinitrc or similar _must_ from" - ewarn "now on start ${EROOT}/usr/bin/gentoo-pipewire-launcher instead! It is highly" - ewarn "advised that a D-Bus user session is set up before starting the script." - ewarn - fi - - if use sound-server && ( has_version 'media-sound/pulseaudio[daemon]' || has_version 'media-sound/pulseaudio-daemon' ) ; then - elog - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit pulseaudio client configuration files:" - elog "${EROOT}/etc/pulse/client.conf and ${EROOT}/etc/pulse/client.conf.d/enable-autospawn.conf" - elog "if it exists, and disable autospawning of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/usr/bin/gentoo-pipewire-launcher by commenting out the relevant" - elog "command:" - elog - elog "#${EROOT}/usr/bin/pipewire -c pipewire-pulse.conf &" - elog - fi - - if has_version 'net-misc/ofono' ; then - ewarn "Native backend has become default. Please disable oFono via:" - if systemd_is_booted ; then - ewarn "systemctl disable ofono" - else - ewarn "rc-update delete ofono" - fi - fi - fi - done - - if [[ ${HAD_SOUND_SERVER} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - # TODO: We could drop most of this if we set up systemd presets? - # They're worth looking into because right now, the out-of-the-box experience - # is automatic on OpenRC, while it needs manual intervention on systemd. - if use sound-server && use systemd ; then - elog - elog "When switching from PulseAudio, you may need to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "To use PipeWire, the user units must be manually enabled" - elog "by running this command as each user you use for desktop activities:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both new users and those upgrading need to enable WirePlumber" - elog "for relevant users:" - elog - elog " systemctl --user disable pipewire-media-session.service" - elog " systemctl --user --force enable wireplumber.service" - elog - elog "Root user may replace --user with --global to change system default" - elog "configuration for all of the above commands." - elog - fi - - if ! use sound-server ; then - ewarn - ewarn "USE=sound-server is disabled! If you want PipeWire to provide" - ewarn "your sound, please enable it. See the wiki at" - ewarn "https://wiki.gentoo.org/wiki/PipeWire#Replacing_PulseAudio" - ewarn "for more details." - ewarn - fi - fi - - if use system-service && [[ ${HAD_SYSTEM_SERVICE} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - ewarn - ewarn "You have enabled the system-service USE flag, which installs" - ewarn "the system-wide systemd units that enable PipeWire to run as a system" - ewarn "service. This is more than likely NOT what you want. You are strongly" - ewarn "advised not to enable this mode and instead stick with systemd user" - ewarn "units. The default configuration files will likely not work out of the" - ewarn "box, and you are on your own with configuration." - ewarn - fi - - elog "For latest tips and tricks, troubleshooting information, and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit - - if use sound-server && ! use pipewire-alsa; then - optfeature "ALSA plugin to use PulseAudio interface for output" "media-plugins/alsa-plugins[pulseaudio]" - fi -} diff --git a/media-video/pipewire/pipewire-1.2.1.ebuild b/media-video/pipewire/pipewire-1.2.1.ebuild deleted file mode 100644 index 537951c763cc..000000000000 --- a/media-video/pipewire/pipewire-1.2.1.ebuild +++ /dev/null @@ -1,517 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# 1. Please regularly check (even at the point of bumping) Fedora's packaging -# for needed backports at https://src.fedoraproject.org/rpms/pipewire/tree/rawhide. -# -# 2. Upstream also sometimes amend release notes for the previous release to mention -# needed patches, e.g. https://gitlab.freedesktop.org/pipewire/pipewire/-/tags/0.3.55#distros -# -# 3. Keep an eye on git master (for both PipeWire and WirePlumber) as things -# continue to move quickly. It's not uncommon for fixes to be made shortly -# after releases. - -# TODO: Maybe get upstream to produce `meson dist` tarballs: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3663 -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1788 -# -# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-pipewire-docs -# Set to 1 if prebuilt, 0 if not -# (the construct below is to allow overriding from env for script) -: ${PIPEWIRE_DOCS_PREBUILT:=1} - -PIPEWIRE_DOCS_PREBUILT_DEV=sam -PIPEWIRE_DOCS_VERSION="$(ver_cut 1-2).0" -# Default to generating docs (inc. man pages) if no prebuilt; overridden later -PIPEWIRE_DOCS_USEFLAG="+man" -PYTHON_COMPAT=( python3_{10..12} ) -inherit meson-multilib optfeature prefix python-any-r1 systemd tmpfiles udev - -if [[ ${PV} == 9999 ]]; then - PIPEWIRE_DOCS_PREBUILT=0 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - if [[ ${PV} == *_p* ]] ; then - MY_COMMIT="" - SRC_URI="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${MY_COMMIT}/pipewire-${MY_COMMIT}.tar.bz2 -> ${P}.tar.bz2" - S="${WORKDIR}"/${PN}-${MY_COMMIT} - else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2" - fi - - if [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - SRC_URI+=" !man? ( https://dev.gentoo.org/~${PIPEWIRE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${PIPEWIRE_DOCS_VERSION}-docs.tar.xz )" - PIPEWIRE_DOCS_USEFLAG="man" - fi - - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -# ABI was broken in 0.3.42 for https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/49 -SLOT="0/0.4" -IUSE="${PIPEWIRE_DOCS_USEFLAG} bluetooth dbus doc echo-cancel extra ffmpeg flatpak gstreamer gsettings ieee1394 jack-client jack-sdk liblc3 lv2" -IUSE+=" modemmanager pipewire-alsa readline roc selinux sound-server ssl system-service systemd test v4l X zeroconf" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -# - TODO: There should be "sound-server? ( || ( alsa bluetooth ) )" here, but ALSA is always enabled -# - TODO: Pulseaudio alsa plugin performs runtime check that pulseaudio server connection will work -# which provides adequate guarantee that alsa-lib will be able to provide audio services. -# If that works, pulseaudio defaults are loaded into alsa-lib runtime replacing default PCM and CTL. -# When pipewire-alsa will be able to perform similar check, pipewire-alsa can be enabled unconditionally. -# - ffmpeg is only used for pw-cat. We don't build the spa plugin which receives barely any activity. -REQUIRED_USE=" - ffmpeg? ( extra ) - bluetooth? ( dbus ) - jack-sdk? ( !jack-client ) - modemmanager? ( bluetooth ) - system-service? ( systemd ) - !sound-server? ( !pipewire-alsa ) - jack-client? ( dbus ) -" - -RESTRICT="!test? ( test )" - -BDEPEND=" - >=dev-build/meson-0.59 - virtual/pkgconfig - dbus? ( dev-util/gdbus-codegen ) - doc? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - media-gfx/graphviz - ) - man? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - ) -" -# * While udev could technically be optional, it's needed for a number of options, -# and not really worth it, bug #877769. -# -# * Supports both legacy webrtc-audio-processing:0 and new webrtc-audio-processing:1. -# We depend on :1 as it prefers that, it's not legacy, and to avoid automagic. -# -# * Older Doxygen (<1.9.8) may work but inferior output is created: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1778 -# - https://github.com/doxygen/doxygen/issues/9254 -RDEPEND=" - acct-group/audio - acct-group/pipewire - media-libs/alsa-lib[${MULTILIB_USEDEP}] - sys-libs/ncurses:=[unicode(+)] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - dev-libs/glib - media-libs/fdk-aac - media-libs/libldac - media-libs/libfreeaptx - media-libs/opus - media-libs/sbc - >=net-wireless/bluez-4.101:= - virtual/libusb:1 - ) - dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) - echo-cancel? ( >=media-libs/webrtc-audio-processing-1.2:1 ) - extra? ( >=media-libs/libsndfile-1.0.20 ) - ffmpeg? ( media-video/ffmpeg:= ) - flatpak? ( dev-libs/glib ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - gsettings? ( >=dev-libs/glib-2.26.0:2 ) - ieee1394? ( media-libs/libffado[${MULTILIB_USEDEP}] ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - liblc3? ( media-sound/liblc3 ) - lv2? ( media-libs/lilv ) - modemmanager? ( >=net-misc/modemmanager-1.10.0 ) - pipewire-alsa? ( >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] ) - sound-server? ( !media-sound/pulseaudio-daemon ) - roc? ( >=media-libs/roc-toolkit-0.3.0:= ) - readline? ( sys-libs/readline:= ) - selinux? ( sys-libs/libselinux ) - ssl? ( dev-libs/openssl:= ) - systemd? ( sys-apps/systemd ) - system-service? ( acct-user/pipewire ) - v4l? ( media-libs/libv4l ) - X? ( - media-libs/libcanberra - x11-libs/libX11 - x11-libs/libXfixes - ) - zeroconf? ( net-dns/avahi ) -" - -DEPEND="${RDEPEND}" - -PDEPEND=">=media-video/wireplumber-0.5.2" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch - # https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/2061 - "${FILESDIR}"/${PN}-1.2.0-automagic-gsettings.patch -) - -pkg_setup() { - if use doc || use man ; then - python-any-r1_pkg_setup - fi -} - -src_prepare() { - default - - # Used for upstream backports - [[ -d "${FILESDIR}"/${PV} ]] && eapply "${FILESDIR}"/${PV} -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - - $(meson_feature dbus) - $(meson_native_use_feature zeroconf avahi) - $(meson_native_use_feature doc docs) - $(meson_native_use_feature man) - $(meson_native_enabled examples) # TODO: Figure out if this is still important now that media-session gone - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_feature ieee1394 libffado) - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature gsettings) - $(meson_native_use_feature systemd) - - $(meson_native_use_feature system-service systemd-system-service) - -Dsystemd-system-unit-dir="$(systemd_get_systemunitdir)" - -Dsystemd-user-unit-dir="$(systemd_get_userunitdir)" - - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - $(meson_feature selinux) - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (NOTE: media-session is gone so IUSE=alsa/spa_alsa/alsa-backend might be possible) - -Dcompress-offload=disabled # TODO: tinycompress unpackaged - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - # https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1379 - $(meson_native_use_feature modemmanager bluez5-backend-native-mm) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - $(meson_native_use_feature bluetooth opus) - $(meson_native_use_feature bluetooth bluez5-codec-opus) - $(meson_native_use_feature bluetooth libusb) # At least for now only used by bluez5 native (quirk detection of adapters) - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889 - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - $(meson_native_use_feature ffmpeg pw-cat-ffmpeg) - $(meson_native_use_feature flatpak) - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_use jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - -Dbluez5-codec-lc3plus=disabled # unpackaged - $(meson_native_use_feature liblc3 bluez5-codec-lc3) - $(meson_native_use_feature lv2) - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - $(meson_native_use_feature roc) - $(meson_native_use_feature readline) - $(meson_native_use_feature ssl raop) - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - -Dlibmysofa=disabled # libmysofa is unpackaged - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - -Dsession-managers="[]" # All available session managers are now their own projects, so there's nothing to build - - # We still have <5.16 kernels packaged in Gentoo and 6.1 (LTS) only - # just became stable, with 5.15 being the previous LTS. Many people - # are still on it. - -Dpam-defaults-install=true - - # Just for bell sounds in X11 right now. - $(meson_native_use_feature X x11) - $(meson_native_use_feature X x11-xfixes) - $(meson_native_use_feature X libcanberra) - - # TODO - -Dsnap=disabled - ) - - # This installs the schema file for pulseaudio-daemon, iff we are replacing - # the official sound-server - if use !sound-server; then - emesonargs+=( '-Dgsettings-pulse-schema=disabled' ) - else - emesonargs+=( - $(meson_native_use_feature gsettings gsettings-pulse-schema) - ) - fi - - meson_src_configure -} - -multilib_src_test() { - meson_src_test --timeout-multiplier 10 -} - -multilib_src_install() { - # Our custom DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - if ! use man && [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - doman "${WORKDIR}"/${PN}-${PIPEWIRE_DOCS_VERSION}-docs/man/*/*.[0-8] - fi - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - - # Install pipewire conf loader hook - insinto /usr/share/alsa/alsa.conf.d - doins "${FILESDIR}"/99-pipewire-default-hook.conf - eprefixify "${ED}"/usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf - - # These will break if someone has /etc that is a symbolic link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf /etc/alsa/conf.d/99-pipewire-default-hook.conf - fi - - # Enable required wireplumber alsa and bluez monitors - if use sound-server; then - # Install sound-server enabler for wireplumber 0.5.0+ conf syntax - insinto /etc/wireplumber/wireplumber.conf.d - doins "${FILESDIR}"/gentoo-sound-server-enable-audio-bluetooth.conf - fi - - if use system-service; then - newtmpfiles - pipewire.conf <<-EOF || die - d /run/pipewire 0755 pipewire pipewire - - - EOF - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop-r2 pipewire.desktop - - exeinto /usr/bin - newexe "${FILESDIR}"/gentoo-pipewire-launcher.in-r3 gentoo-pipewire-launcher - - doman "${FILESDIR}"/gentoo-pipewire-launcher.1 - - # Disable pipewire-pulse if sound-server is disabled. - if ! use sound-server ; then - sed -i -s '/pipewire -c pipewire-pulse.conf/s/^/#/' "${ED}"/usr/bin/gentoo-pipewire-launcher || die - fi - - eprefixify "${ED}"/usr/bin/gentoo-pipewire-launcher - fi -} - -pkg_postrm() { - udev_reload -} - -pkg_preinst() { - HAD_SOUND_SERVER=0 - HAD_SYSTEM_SERVICE=0 - - if has_version "media-video/pipewire[sound-server(-)]" ; then - HAD_SOUND_SERVER=1 - fi - - if has_version "media-video/pipewire[system-service(-)]" ; then - HAD_SYSTEM_SERVICE=1 - fi -} - -pkg_postinst() { - udev_reload - - use system-service && tmpfiles_process pipewire.conf - - local ver - for ver in ${REPLACING_VERSIONS} ; do - if has_version kde-plasma/kwin[screencast] || has_version x11-wm/mutter[screencast] ; then - # https://bugs.gentoo.org/908490 - # https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3243 - ewarn "Please restart KWin/Mutter after upgrading PipeWire." - ewarn "Screencasting may not work until you do." - fi - - if ver_test ${ver} -le 0.3.66-r1 ; then - elog ">=pipewire-0.3.66 uses the 'pipewire' group to manage permissions" - elog "and limits needed to function smoothly:" - elog - elog "1. Please make sure your user is in the 'pipewire' group for" - elog "the best experience with realtime scheduling (PAM limits behavior)!" - elog "You can add your account with:" - elog " usermod -aG pipewire <youruser>" - elog - elog "2. For the best experience with fast user switching, it is recommended" - elog "that you remove your user from the 'audio' group unless you rely on the" - elog "audio group for device access control or ACLs.:" - elog " usermod -rG audio <youruser>" - elog - - if ! use jack-sdk ; then - elog - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack <application> before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd ; then - ewarn - ewarn "PipeWire daemon startup has been moved to a launcher script!" - ewarn "Make sure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist or no" - ewarn "longer is set to start a session manager or PulseAudio compatibility daemon (all" - ewarn "lines similar to '{ path = /usr/bin/pipewire*' should be commented out)" - ewarn - ewarn "Those manually starting /usr/bin/pipewire via .xinitrc or similar _must_ from" - ewarn "now on start ${EROOT}/usr/bin/gentoo-pipewire-launcher instead! It is highly" - ewarn "advised that a D-Bus user session is set up before starting the script." - ewarn - fi - - if use sound-server && ( has_version 'media-sound/pulseaudio[daemon]' || has_version 'media-sound/pulseaudio-daemon' ) ; then - elog - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit pulseaudio client configuration files:" - elog "${EROOT}/etc/pulse/client.conf and ${EROOT}/etc/pulse/client.conf.d/enable-autospawn.conf" - elog "if it exists, and disable autospawning of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/usr/bin/gentoo-pipewire-launcher by commenting out the relevant" - elog "command:" - elog - elog "#${EROOT}/usr/bin/pipewire -c pipewire-pulse.conf &" - elog - fi - - if has_version 'net-misc/ofono' ; then - ewarn "Native backend has become default. Please disable oFono via:" - if systemd_is_booted ; then - ewarn "systemctl disable ofono" - else - ewarn "rc-update delete ofono" - fi - fi - fi - done - - if [[ ${HAD_SOUND_SERVER} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - # TODO: We could drop most of this if we set up systemd presets? - # They're worth looking into because right now, the out-of-the-box experience - # is automatic on OpenRC, while it needs manual intervention on systemd. - if use sound-server && use systemd ; then - elog - elog "When switching from PulseAudio, you may need to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "To use PipeWire, the user units must be manually enabled" - elog "by running this command as each user you use for desktop activities:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both new users and those upgrading need to enable WirePlumber" - elog "for relevant users:" - elog - elog " systemctl --user disable pipewire-media-session.service" - elog " systemctl --user --force enable wireplumber.service" - elog - elog "Root user may replace --user with --global to change system default" - elog "configuration for all of the above commands." - elog - fi - - if ! use sound-server ; then - ewarn - ewarn "USE=sound-server is disabled! If you want PipeWire to provide" - ewarn "your sound, please enable it. See the wiki at" - ewarn "https://wiki.gentoo.org/wiki/PipeWire#Replacing_PulseAudio" - ewarn "for more details." - ewarn - fi - fi - - if use system-service && [[ ${HAD_SYSTEM_SERVICE} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - ewarn - ewarn "You have enabled the system-service USE flag, which installs" - ewarn "the system-wide systemd units that enable PipeWire to run as a system" - ewarn "service. This is more than likely NOT what you want. You are strongly" - ewarn "advised not to enable this mode and instead stick with systemd user" - ewarn "units. The default configuration files will likely not work out of the" - ewarn "box, and you are on your own with configuration." - ewarn - fi - - elog "For latest tips and tricks, troubleshooting information, and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit - - if use sound-server && ! use pipewire-alsa; then - optfeature "ALSA plugin to use PulseAudio interface for output" "media-plugins/alsa-plugins[pulseaudio]" - fi -} diff --git a/media-video/pipewire/pipewire-1.2.2.ebuild b/media-video/pipewire/pipewire-1.2.2.ebuild deleted file mode 100644 index 408bee308b53..000000000000 --- a/media-video/pipewire/pipewire-1.2.2.ebuild +++ /dev/null @@ -1,515 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# 1. Please regularly check (even at the point of bumping) Fedora's packaging -# for needed backports at https://src.fedoraproject.org/rpms/pipewire/tree/rawhide. -# -# 2. Upstream also sometimes amend release notes for the previous release to mention -# needed patches, e.g. https://gitlab.freedesktop.org/pipewire/pipewire/-/tags/0.3.55#distros -# -# 3. Keep an eye on git master (for both PipeWire and WirePlumber) as things -# continue to move quickly. It's not uncommon for fixes to be made shortly -# after releases. - -# TODO: Maybe get upstream to produce `meson dist` tarballs: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3663 -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1788 -# -# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-pipewire-docs -# Set to 1 if prebuilt, 0 if not -# (the construct below is to allow overriding from env for script) -: ${PIPEWIRE_DOCS_PREBUILT:=1} - -PIPEWIRE_DOCS_PREBUILT_DEV=sam -PIPEWIRE_DOCS_VERSION="$(ver_cut 1-2).0" -# Default to generating docs (inc. man pages) if no prebuilt; overridden later -PIPEWIRE_DOCS_USEFLAG="+man" -PYTHON_COMPAT=( python3_{10..12} ) -inherit meson-multilib optfeature prefix python-any-r1 systemd tmpfiles udev - -if [[ ${PV} == 9999 ]]; then - PIPEWIRE_DOCS_PREBUILT=0 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - if [[ ${PV} == *_p* ]] ; then - MY_COMMIT="" - SRC_URI="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${MY_COMMIT}/pipewire-${MY_COMMIT}.tar.bz2 -> ${P}.tar.bz2" - S="${WORKDIR}"/${PN}-${MY_COMMIT} - else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2" - fi - - if [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - SRC_URI+=" !man? ( https://dev.gentoo.org/~${PIPEWIRE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${PIPEWIRE_DOCS_VERSION}-docs.tar.xz )" - PIPEWIRE_DOCS_USEFLAG="man" - fi - - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -# ABI was broken in 0.3.42 for https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/49 -SLOT="0/0.4" -IUSE="${PIPEWIRE_DOCS_USEFLAG} bluetooth dbus doc echo-cancel extra ffmpeg flatpak gstreamer gsettings ieee1394 jack-client jack-sdk liblc3 lv2" -IUSE+=" modemmanager pipewire-alsa readline roc selinux sound-server ssl system-service systemd test v4l X zeroconf" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -# - TODO: There should be "sound-server? ( || ( alsa bluetooth ) )" here, but ALSA is always enabled -# - TODO: Pulseaudio alsa plugin performs runtime check that pulseaudio server connection will work -# which provides adequate guarantee that alsa-lib will be able to provide audio services. -# If that works, pulseaudio defaults are loaded into alsa-lib runtime replacing default PCM and CTL. -# When pipewire-alsa will be able to perform similar check, pipewire-alsa can be enabled unconditionally. -# - ffmpeg is only used for pw-cat. We don't build the spa plugin which receives barely any activity. -REQUIRED_USE=" - ffmpeg? ( extra ) - bluetooth? ( dbus ) - jack-sdk? ( !jack-client ) - modemmanager? ( bluetooth ) - system-service? ( systemd ) - !sound-server? ( !pipewire-alsa ) - jack-client? ( dbus ) -" - -RESTRICT="!test? ( test )" - -BDEPEND=" - >=dev-build/meson-0.59 - virtual/pkgconfig - dbus? ( dev-util/gdbus-codegen ) - doc? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - media-gfx/graphviz - ) - man? ( - ${PYTHON_DEPS} - >=app-text/doxygen-1.9.8 - ) -" -# * While udev could technically be optional, it's needed for a number of options, -# and not really worth it, bug #877769. -# -# * Supports both legacy webrtc-audio-processing:0 and new webrtc-audio-processing:1. -# We depend on :1 as it prefers that, it's not legacy, and to avoid automagic. -# -# * Older Doxygen (<1.9.8) may work but inferior output is created: -# - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1778 -# - https://github.com/doxygen/doxygen/issues/9254 -RDEPEND=" - acct-group/audio - acct-group/pipewire - media-libs/alsa-lib[${MULTILIB_USEDEP}] - sys-libs/ncurses:=[unicode(+)] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - dev-libs/glib - media-libs/fdk-aac - media-libs/libldac - media-libs/libfreeaptx - media-libs/opus - media-libs/sbc - >=net-wireless/bluez-4.101:= - virtual/libusb:1 - ) - dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) - echo-cancel? ( >=media-libs/webrtc-audio-processing-1.2:1 ) - extra? ( >=media-libs/libsndfile-1.0.20 ) - ffmpeg? ( media-video/ffmpeg:= ) - flatpak? ( dev-libs/glib ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - gsettings? ( >=dev-libs/glib-2.26.0:2 ) - ieee1394? ( media-libs/libffado[${MULTILIB_USEDEP}] ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - liblc3? ( media-sound/liblc3 ) - lv2? ( media-libs/lilv ) - modemmanager? ( >=net-misc/modemmanager-1.10.0 ) - pipewire-alsa? ( >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] ) - sound-server? ( !media-sound/pulseaudio-daemon ) - roc? ( >=media-libs/roc-toolkit-0.3.0:= ) - readline? ( sys-libs/readline:= ) - selinux? ( sys-libs/libselinux ) - ssl? ( dev-libs/openssl:= ) - systemd? ( sys-apps/systemd ) - system-service? ( acct-user/pipewire ) - v4l? ( media-libs/libv4l ) - X? ( - media-libs/libcanberra - x11-libs/libX11 - x11-libs/libXfixes - ) - zeroconf? ( net-dns/avahi ) -" - -DEPEND="${RDEPEND}" - -PDEPEND=">=media-video/wireplumber-0.5.2" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch -) - -pkg_setup() { - if use doc || use man ; then - python-any-r1_pkg_setup - fi -} - -src_prepare() { - default - - # Used for upstream backports - [[ -d "${FILESDIR}"/${PV} ]] && eapply "${FILESDIR}"/${PV} -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - - $(meson_feature dbus) - $(meson_native_use_feature zeroconf avahi) - $(meson_native_use_feature doc docs) - $(meson_native_use_feature man) - $(meson_native_enabled examples) # TODO: Figure out if this is still important now that media-session gone - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_feature ieee1394 libffado) - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature gsettings) - $(meson_native_use_feature systemd) - - $(meson_native_use_feature system-service systemd-system-service) - -Dsystemd-system-unit-dir="$(systemd_get_systemunitdir)" - -Dsystemd-user-unit-dir="$(systemd_get_userunitdir)" - - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - $(meson_feature selinux) - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (NOTE: media-session is gone so IUSE=alsa/spa_alsa/alsa-backend might be possible) - -Dcompress-offload=disabled # TODO: tinycompress unpackaged - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - # https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1379 - $(meson_native_use_feature modemmanager bluez5-backend-native-mm) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - $(meson_native_use_feature bluetooth opus) - $(meson_native_use_feature bluetooth bluez5-codec-opus) - $(meson_native_use_feature bluetooth libusb) # At least for now only used by bluez5 native (quirk detection of adapters) - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889 - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - $(meson_native_use_feature ffmpeg pw-cat-ffmpeg) - $(meson_native_use_feature flatpak) - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_use jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - -Dbluez5-codec-lc3plus=disabled # unpackaged - $(meson_native_use_feature liblc3 bluez5-codec-lc3) - $(meson_native_use_feature lv2) - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - $(meson_native_use_feature roc) - $(meson_native_use_feature readline) - $(meson_native_use_feature ssl raop) - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - -Dlibmysofa=disabled # libmysofa is unpackaged - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - -Dsession-managers="[]" # All available session managers are now their own projects, so there's nothing to build - - # We still have <5.16 kernels packaged in Gentoo and 6.1 (LTS) only - # just became stable, with 5.15 being the previous LTS. Many people - # are still on it. - -Dpam-defaults-install=true - - # Just for bell sounds in X11 right now. - $(meson_native_use_feature X x11) - $(meson_native_use_feature X x11-xfixes) - $(meson_native_use_feature X libcanberra) - - # TODO - -Dsnap=disabled - ) - - # This installs the schema file for pulseaudio-daemon, iff we are replacing - # the official sound-server - if use !sound-server; then - emesonargs+=( '-Dgsettings-pulse-schema=disabled' ) - else - emesonargs+=( - $(meson_native_use_feature gsettings gsettings-pulse-schema) - ) - fi - - meson_src_configure -} - -multilib_src_test() { - meson_src_test --timeout-multiplier 10 -} - -multilib_src_install() { - # Our custom DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - if ! use man && [[ ${PIPEWIRE_DOCS_PREBUILT} == 1 ]] ; then - doman "${WORKDIR}"/${PN}-${PIPEWIRE_DOCS_VERSION}-docs/man/*/*.[0-8] - fi - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - - # Install pipewire conf loader hook - insinto /usr/share/alsa/alsa.conf.d - doins "${FILESDIR}"/99-pipewire-default-hook.conf - eprefixify "${ED}"/usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf - - # These will break if someone has /etc that is a symbolic link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf /etc/alsa/conf.d/99-pipewire-default-hook.conf - fi - - # Enable required wireplumber alsa and bluez monitors - if use sound-server; then - # Install sound-server enabler for wireplumber 0.5.0+ conf syntax - insinto /etc/wireplumber/wireplumber.conf.d - doins "${FILESDIR}"/gentoo-sound-server-enable-audio-bluetooth.conf - fi - - if use system-service; then - newtmpfiles - pipewire.conf <<-EOF || die - d /run/pipewire 0755 pipewire pipewire - - - EOF - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop-r2 pipewire.desktop - - exeinto /usr/bin - newexe "${FILESDIR}"/gentoo-pipewire-launcher.in-r3 gentoo-pipewire-launcher - - doman "${FILESDIR}"/gentoo-pipewire-launcher.1 - - # Disable pipewire-pulse if sound-server is disabled. - if ! use sound-server ; then - sed -i -s '/pipewire -c pipewire-pulse.conf/s/^/#/' "${ED}"/usr/bin/gentoo-pipewire-launcher || die - fi - - eprefixify "${ED}"/usr/bin/gentoo-pipewire-launcher - fi -} - -pkg_postrm() { - udev_reload -} - -pkg_preinst() { - HAD_SOUND_SERVER=0 - HAD_SYSTEM_SERVICE=0 - - if has_version "media-video/pipewire[sound-server(-)]" ; then - HAD_SOUND_SERVER=1 - fi - - if has_version "media-video/pipewire[system-service(-)]" ; then - HAD_SYSTEM_SERVICE=1 - fi -} - -pkg_postinst() { - udev_reload - - use system-service && tmpfiles_process pipewire.conf - - local ver - for ver in ${REPLACING_VERSIONS} ; do - if has_version kde-plasma/kwin[screencast] || has_version x11-wm/mutter[screencast] ; then - # https://bugs.gentoo.org/908490 - # https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3243 - ewarn "Please restart KWin/Mutter after upgrading PipeWire." - ewarn "Screencasting may not work until you do." - fi - - if ver_test ${ver} -le 0.3.66-r1 ; then - elog ">=pipewire-0.3.66 uses the 'pipewire' group to manage permissions" - elog "and limits needed to function smoothly:" - elog - elog "1. Please make sure your user is in the 'pipewire' group for" - elog "the best experience with realtime scheduling (PAM limits behavior)!" - elog "You can add your account with:" - elog " usermod -aG pipewire <youruser>" - elog - elog "2. For the best experience with fast user switching, it is recommended" - elog "that you remove your user from the 'audio' group unless you rely on the" - elog "audio group for device access control or ACLs.:" - elog " usermod -rG audio <youruser>" - elog - - if ! use jack-sdk ; then - elog - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack <application> before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd ; then - ewarn - ewarn "PipeWire daemon startup has been moved to a launcher script!" - ewarn "Make sure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist or no" - ewarn "longer is set to start a session manager or PulseAudio compatibility daemon (all" - ewarn "lines similar to '{ path = /usr/bin/pipewire*' should be commented out)" - ewarn - ewarn "Those manually starting /usr/bin/pipewire via .xinitrc or similar _must_ from" - ewarn "now on start ${EROOT}/usr/bin/gentoo-pipewire-launcher instead! It is highly" - ewarn "advised that a D-Bus user session is set up before starting the script." - ewarn - fi - - if use sound-server && ( has_version 'media-sound/pulseaudio[daemon]' || has_version 'media-sound/pulseaudio-daemon' ) ; then - elog - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit pulseaudio client configuration files:" - elog "${EROOT}/etc/pulse/client.conf and ${EROOT}/etc/pulse/client.conf.d/enable-autospawn.conf" - elog "if it exists, and disable autospawning of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/usr/bin/gentoo-pipewire-launcher by commenting out the relevant" - elog "command:" - elog - elog "#${EROOT}/usr/bin/pipewire -c pipewire-pulse.conf &" - elog - fi - - if has_version 'net-misc/ofono' ; then - ewarn "Native backend has become default. Please disable oFono via:" - if systemd_is_booted ; then - ewarn "systemctl disable ofono" - else - ewarn "rc-update delete ofono" - fi - fi - fi - done - - if [[ ${HAD_SOUND_SERVER} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - # TODO: We could drop most of this if we set up systemd presets? - # They're worth looking into because right now, the out-of-the-box experience - # is automatic on OpenRC, while it needs manual intervention on systemd. - if use sound-server && use systemd ; then - elog - elog "When switching from PulseAudio, you may need to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "To use PipeWire, the user units must be manually enabled" - elog "by running this command as each user you use for desktop activities:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both new users and those upgrading need to enable WirePlumber" - elog "for relevant users:" - elog - elog " systemctl --user disable pipewire-media-session.service" - elog " systemctl --user --force enable wireplumber.service" - elog - elog "Root user may replace --user with --global to change system default" - elog "configuration for all of the above commands." - elog - fi - - if ! use sound-server ; then - ewarn - ewarn "USE=sound-server is disabled! If you want PipeWire to provide" - ewarn "your sound, please enable it. See the wiki at" - ewarn "https://wiki.gentoo.org/wiki/PipeWire#Replacing_PulseAudio" - ewarn "for more details." - ewarn - fi - fi - - if use system-service && [[ ${HAD_SYSTEM_SERVICE} -eq 0 || -z ${REPLACING_VERSIONS} ]] ; then - ewarn - ewarn "You have enabled the system-service USE flag, which installs" - ewarn "the system-wide systemd units that enable PipeWire to run as a system" - ewarn "service. This is more than likely NOT what you want. You are strongly" - ewarn "advised not to enable this mode and instead stick with systemd user" - ewarn "units. The default configuration files will likely not work out of the" - ewarn "box, and you are on your own with configuration." - ewarn - fi - - elog "For latest tips and tricks, troubleshooting information, and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit - - if use sound-server && ! use pipewire-alsa; then - optfeature "ALSA plugin to use PulseAudio interface for output" "media-plugins/alsa-plugins[pulseaudio]" - fi -} diff --git a/media-video/pipewire/pipewire-1.2.3.ebuild b/media-video/pipewire/pipewire-1.2.3.ebuild index 45015ea4407d..2f8576568666 100644 --- a/media-video/pipewire/pipewire-1.2.3.ebuild +++ b/media-video/pipewire/pipewire-1.2.3.ebuild @@ -47,7 +47,7 @@ else PIPEWIRE_DOCS_USEFLAG="man" fi - KEYWORDS="amd64 ~arm ~arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" + KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" fi DESCRIPTION="Multimedia processing graphs" diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest index fceeff018ba5..f05acee20f6e 100644 --- a/media-video/wireplumber/Manifest +++ b/media-video/wireplumber/Manifest @@ -1,5 +1,2 @@ -DIST wireplumber-0.4.17.tar.bz2 330355 BLAKE2B fec1cf75bec687bff1cb48416cf22503a79609cf11220ab9353d3b8038cae1db63da8aa269aca034c0c0afd474e2ba89b236bb7e778da111516e3b15d5449f02 SHA512 5efb71091f262458bc912f4670249fac3ef858021785fbee9be749564a3fa452b1c4ff75634132f7d44fd06d7fc5ea2debb022b1f4a8d5c9c3afa992fab7ecf8 -DIST wireplumber-0.5.2.tar.bz2 408788 BLAKE2B 51a9c0268212b353b54099d2d57fd93dec5b42d4ec3151f93b4ebd4df3f4478a19858ec8302af58558a9387afa647a00a0872d471f0f2ea5e681978afbdcf553 SHA512 4cd2949739b8af86f73e072fe8c1d8606fa9be77b6e109aa0825d516f11953c4811ae1162da07ae245f7039f4243d01c43b8e9c083d4e0be1066b180484abbfb DIST wireplumber-0.5.3.tar.bz2 411081 BLAKE2B 627cb0adaddd512e2b5f2e706b622972232f76000d690837da5f03a3628669b99c4768de6590ec378684311915626de7ac3316bda1f5d1152c9df448ec41e389 SHA512 1c62f7f919242b2a9586ff6a532f214b564bcf10c838eae4a64078edf6fd461fc65f364c8af79150e33b86594331446516a1a4c926bb245a4b2ba2d9f63f7243 -DIST wireplumber-0.5.5.tar.bz2 411519 BLAKE2B 016641b6b21b6176b0f3f70c0c96ccd32ea4d3609bf337a3c9af6e8219cb160a92e30027e3187adb023d0c35ad822ce9be374d098eab76508f218a7ae2528754 SHA512 50ddc6f275bba89ddac0e55dd2a572a13ca19953bce6bdbca14eadd44f3669c7ad4b39ae857770543567a05ea3e437ccee36a2538fad1f4caa777036ace04f77 DIST wireplumber-0.5.6.tar.bz2 415566 BLAKE2B 7f5323ddea415bac31bbb5f05b711e52bd631d9e6c4b22b6055055761a19c0a4c16a36a90ecd0f90c3fbfaddad8be57e823ad0b97327569e94074bee21d5e31c SHA512 58b18c1c1f1040e9954de75488a82ff7504fb908f7e5d57dd219f3479612551c94a1384d399a99b983f66859560aaf71c8ab9414318e48abb6f8cd3b88fcecc8 diff --git a/media-video/wireplumber/files/wireplumber-0.4.15-config-disable-sound-server-parts.patch b/media-video/wireplumber/files/wireplumber-0.4.15-config-disable-sound-server-parts.patch deleted file mode 100644 index b4f3ecd311f7..000000000000 --- a/media-video/wireplumber/files/wireplumber-0.4.15-config-disable-sound-server-parts.patch +++ /dev/null @@ -1,24 +0,0 @@ -commit 3d86f51d2c43fd76be2450a8c27836fdd8619cfa -Author: Igor V. Kovalenko <igor.v.kovalenko@gmail.com> -Date: Sun May 15 18:19:03 2022 +0300 - - config: Disable alsa and bluez monitors by default ---- a/src/config/bluetooth.lua.d/50-bluez-config.lua -+++ b/src/config/bluetooth.lua.d/50-bluez-config.lua -@@ -1,4 +1,4 @@ --bluez_monitor.enabled = true -+bluez_monitor.enabled = false - - bluez_monitor.properties = { - -- Enabled roles (default: [ a2dp_sink a2dp_source bap_sink bap_source hfp_hf hfp_ag ]) ---- a/src/config/main.lua.d/50-alsa-config.lua -+++ b/src/config/main.lua.d/50-alsa-config.lua -@@ -1,4 +1,4 @@ --alsa_monitor.enabled = true -+alsa_monitor.enabled = false - - alsa_monitor.properties = { - -- Create a JACK device. This is not enabled by default because --- -2.42.0 - diff --git a/media-video/wireplumber/wireplumber-0.4.17-r1.ebuild b/media-video/wireplumber/wireplumber-0.4.17-r1.ebuild deleted file mode 100644 index 747c967706dc..000000000000 --- a/media-video/wireplumber/wireplumber-0.4.17-r1.ebuild +++ /dev/null @@ -1,122 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# 1. Please regularly check (even at the point of bumping) Fedora's packaging -# for needed backports at https://src.fedoraproject.org/rpms/wireplumber/tree/rawhide -# -# 2. Keep an eye on git master (for both PipeWire and WirePlumber) as things -# continue to move quickly. It's not uncommon for fixes to be made shortly -# after releases. - -LUA_COMPAT=( lua5-{3,4} ) - -inherit lua-single meson systemd - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/pipewire/${PN}.git" - EGIT_BRANCH="master" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.bz2" - KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" -fi - -DESCRIPTION="Replacement for pipewire-media-session" -HOMEPAGE="https://gitlab.freedesktop.org/pipewire/wireplumber" - -LICENSE="MIT" -SLOT="0/0.4" -IUSE="elogind system-service systemd test" - -REQUIRED_USE=" - ${LUA_REQUIRED_USE} - ?? ( elogind systemd ) - system-service? ( systemd ) -" - -RESTRICT="!test? ( test )" - -# introspection? ( dev-libs/gobject-introspection ) is valid but likely only used for doc building -BDEPEND=" - dev-libs/glib - dev-util/gdbus-codegen - dev-util/glib-utils - sys-devel/gettext - test? ( sys-apps/dbus ) -" - -DEPEND=" - ${LUA_DEPS} - >=dev-libs/glib-2.62 - >=media-video/pipewire-0.3.68:= - virtual/libintl - elogind? ( sys-auth/elogind ) - systemd? ( sys-apps/systemd ) -" - -# Any dev-lua/* deps get declared like this inside RDEPEND: -# $(lua_gen_cond_dep ' -# dev-lua/<NAME>[${LUA_USEDEP}] -# ') -RDEPEND="${DEPEND} - system-service? ( - acct-user/pipewire - acct-group/pipewire - ) -" - -DOCS=( {NEWS,README}.rst ) - -PATCHES=( - "${FILESDIR}"/${PN}-0.4.15-config-disable-sound-server-parts.patch # defer enabling sound server parts to media-video/pipewire -) - -src_configure() { - local emesonargs=( - -Ddaemon=true - -Dtools=true - -Dmodules=true - -Ddoc=disabled # Ebuild not wired up yet (Sphinx, Doxygen?) - -Dintrospection=disabled # Only used for Sphinx doc generation - -Dsystem-lua=true # We always unbundle everything we can - -Dsystem-lua-version=$(ver_cut 1-2 $(lua_get_version)) - $(meson_feature elogind) - $(meson_feature systemd) - $(meson_use system-service systemd-system-service) - $(meson_use systemd systemd-user-service) - -Dsystemd-system-unit-dir=$(systemd_get_systemunitdir) - -Dsystemd-user-unit-dir=$(systemd_get_userunitdir) - $(meson_use test tests) - $(meson_use test dbus-tests) - ) - - meson_src_configure -} - -pkg_postinst() { - if systemd_is_booted ; then - ewarn "pipewire-media-session.service is no longer installed. You must switch" - ewarn "to wireplumber.service user unit before your next logout/reboot:" - ewarn "systemctl --user disable pipewire-media-session.service" - ewarn "systemctl --user --force enable wireplumber.service" - else - ewarn "Switch to WirePlumber will happen the next time gentoo-pipewire-launcher" - ewarn "is started (a replacement for directly calling pipewire binary)." - ewarn - ewarn "Please ensure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist" - ewarn "or, if it does exist, that any reference to" - ewarn "${EROOT}/usr/bin/pipewire-media-session is commented out (begins with a #)." - fi - if use system-service; then - ewarn - ewarn "WARNING: you have enabled the system-service USE flag, which installs" - ewarn "the system-wide systemd units that enable WirePlumber to run as a system" - ewarn "service. This is more than likely NOT what you want. You are strongly" - ewarn "advised not to enable this mode and instead stick with systemd user" - ewarn "units. The default configuration files will likely not work out of" - ewarn "box, and you are on your own with configuration." - ewarn - fi -} diff --git a/media-video/wireplumber/wireplumber-0.5.2.ebuild b/media-video/wireplumber/wireplumber-0.5.2.ebuild deleted file mode 100644 index ea1b71883dbb..000000000000 --- a/media-video/wireplumber/wireplumber-0.5.2.ebuild +++ /dev/null @@ -1,123 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# 1. Please regularly check (even at the point of bumping) Fedora's packaging -# for needed backports at https://src.fedoraproject.org/rpms/wireplumber/tree/rawhide -# -# 2. Keep an eye on git master (for both PipeWire and WirePlumber) as things -# continue to move quickly. It's not uncommon for fixes to be made shortly -# after releases. - -LUA_COMPAT=( lua5-{3,4} ) - -inherit lua-single meson systemd - -DESCRIPTION="Replacement for pipewire-media-session" -HOMEPAGE="https://gitlab.freedesktop.org/pipewire/wireplumber" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/pipewire/${PN}.git" - EGIT_BRANCH="master" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.bz2" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi - -LICENSE="MIT" -SLOT="0/0.5" -IUSE="elogind system-service systemd test" - -REQUIRED_USE=" - ${LUA_REQUIRED_USE} - ?? ( elogind systemd ) - system-service? ( systemd ) -" - -RESTRICT="!test? ( test )" - -# introspection? ( dev-libs/gobject-introspection ) is valid but likely only used for doc building -BDEPEND=" - dev-libs/glib - dev-util/gdbus-codegen - dev-util/glib-utils - sys-devel/gettext - test? ( sys-apps/dbus ) -" -DEPEND=" - ${LUA_DEPS} - >=dev-libs/glib-2.68 - >=media-video/pipewire-1.0.5-r1:= - virtual/libintl - elogind? ( sys-auth/elogind ) - systemd? ( sys-apps/systemd ) -" -RDEPEND=" - ${DEPEND} - system-service? ( - acct-user/pipewire - acct-group/pipewire - ) -" - -DOCS=( {NEWS,README}.rst ) - -PATCHES=( - # Defer enabling sound server parts to media-video/pipewire - # TODO: Soon, we should be able to migrate to just a dropin at - # /usr/share. See https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/652#note_2399735. - "${FILESDIR}"/${PN}-0.4.81-config-disable-sound-server-parts.patch -) - -src_configure() { - local emesonargs=( - -Ddaemon=true - -Dtools=true - -Dmodules=true - # Ebuild not wired up yet (Sphinx, Doxygen?) - -Ddoc=disabled - # Only used for Sphinx doc generation - -Dintrospection=disabled - -Dsystem-lua=true - -Dsystem-lua-version=$(ver_cut 1-2 $(lua_get_version)) - $(meson_feature elogind) - $(meson_feature systemd) - $(meson_use system-service systemd-system-service) - $(meson_use systemd systemd-user-service) - -Dsystemd-system-unit-dir=$(systemd_get_systemunitdir) - -Dsystemd-user-unit-dir=$(systemd_get_userunitdir) - $(meson_use test tests) - $(meson_use test dbus-tests) - ) - - meson_src_configure -} - -pkg_postinst() { - if systemd_is_booted ; then - ewarn "pipewire-media-session.service is no longer installed. You must switch" - ewarn "to wireplumber.service user unit before your next logout/reboot:" - ewarn "systemctl --user disable pipewire-media-session.service" - ewarn "systemctl --user --force enable wireplumber.service" - else - ewarn "Switch to WirePlumber will happen the next time gentoo-pipewire-launcher" - ewarn "is started (a replacement for directly calling pipewire binary)." - ewarn - ewarn "Please ensure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist" - ewarn "or, if it does exist, that any reference to" - ewarn "${EROOT}/usr/bin/pipewire-media-session is commented out (begins with a #)." - fi - - if use system-service; then - ewarn - ewarn "WARNING: you have enabled the system-service USE flag, which installs" - ewarn "the system-wide systemd units that enable WirePlumber to run as a system" - ewarn "service. This is more than likely NOT what you want. You are strongly" - ewarn "advised not to enable this mode and instead stick with systemd user" - ewarn "units. The default configuration files will likely not work out of" - ewarn "box, and you are on your own with configuration." - ewarn - fi -} diff --git a/media-video/wireplumber/wireplumber-0.5.5.ebuild b/media-video/wireplumber/wireplumber-0.5.5.ebuild deleted file mode 100644 index a3a02062c4c1..000000000000 --- a/media-video/wireplumber/wireplumber-0.5.5.ebuild +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# 1. Please regularly check (even at the point of bumping) Fedora's packaging -# for needed backports at https://src.fedoraproject.org/rpms/wireplumber/tree/rawhide -# -# 2. Keep an eye on git master (for both PipeWire and WirePlumber) as things -# continue to move quickly. It's not uncommon for fixes to be made shortly -# after releases. - -LUA_COMPAT=( lua5-{3,4} ) - -inherit lua-single meson systemd - -DESCRIPTION="Replacement for pipewire-media-session" -HOMEPAGE="https://gitlab.freedesktop.org/pipewire/wireplumber" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/pipewire/${PN}.git" - EGIT_BRANCH="master" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.bz2" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi - -LICENSE="MIT" -SLOT="0/0.5" -IUSE="elogind system-service systemd test" - -REQUIRED_USE=" - ${LUA_REQUIRED_USE} - ?? ( elogind systemd ) - system-service? ( systemd ) -" - -RESTRICT="!test? ( test )" - -# introspection? ( dev-libs/gobject-introspection ) is valid but likely only used for doc building -BDEPEND=" - dev-libs/glib - dev-util/gdbus-codegen - dev-util/glib-utils - sys-devel/gettext - test? ( sys-apps/dbus ) -" -DEPEND=" - ${LUA_DEPS} - >=dev-libs/glib-2.68 - >=media-video/pipewire-1.0.5-r1:= - virtual/libintl - elogind? ( sys-auth/elogind ) - systemd? ( sys-apps/systemd ) -" -RDEPEND=" - ${DEPEND} - system-service? ( - acct-user/pipewire - acct-group/pipewire - ) -" - -DOCS=( {NEWS,README}.rst ) - -PATCHES=( - # Defer enabling sound server parts to media-video/pipewire - # TODO: Soon, we should be able to migrate to just a dropin at - # /usr/share. See https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/652#note_2399735. - "${FILESDIR}"/${PN}-0.4.81-config-disable-sound-server-parts.patch -) - -src_configure() { - local emesonargs=( - -Ddaemon=true - -Dtools=true - -Dmodules=true - # Ebuild not wired up yet (Sphinx, Doxygen?) - -Ddoc=disabled - # Only used for Sphinx doc generation - -Dintrospection=disabled - -Dsystem-lua=true - -Dsystem-lua-version=$(ver_cut 1-2 $(lua_get_version)) - $(meson_feature elogind) - $(meson_feature systemd) - $(meson_use system-service systemd-system-service) - $(meson_use systemd systemd-user-service) - -Dsystemd-system-unit-dir=$(systemd_get_systemunitdir) - -Dsystemd-user-unit-dir=$(systemd_get_userunitdir) - $(meson_use test tests) - $(meson_use test dbus-tests) - ) - - meson_src_configure -} - -src_install() { - meson_src_install - - mv "${ED}"/usr/share/doc/wireplumber/* "${ED}"/usr/share/doc/${PF} || die - rmdir "${ED}"/usr/share/doc/wireplumber || die -} - -pkg_postinst() { - if systemd_is_booted ; then - ewarn "pipewire-media-session.service is no longer installed. You must switch" - ewarn "to wireplumber.service user unit before your next logout/reboot:" - ewarn "systemctl --user disable pipewire-media-session.service" - ewarn "systemctl --user --force enable wireplumber.service" - else - ewarn "Switch to WirePlumber will happen the next time gentoo-pipewire-launcher" - ewarn "is started (a replacement for directly calling pipewire binary)." - ewarn - ewarn "Please ensure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist" - ewarn "or, if it does exist, that any reference to" - ewarn "${EROOT}/usr/bin/pipewire-media-session is commented out (begins with a #)." - fi - - if use system-service; then - ewarn - ewarn "WARNING: you have enabled the system-service USE flag, which installs" - ewarn "the system-wide systemd units that enable WirePlumber to run as a system" - ewarn "service. This is more than likely NOT what you want. You are strongly" - ewarn "advised not to enable this mode and instead stick with systemd user" - ewarn "units. The default configuration files will likely not work out of" - ewarn "box, and you are on your own with configuration." - ewarn - fi -} diff --git a/media-video/wireplumber/wireplumber-0.5.6-r1.ebuild b/media-video/wireplumber/wireplumber-0.5.6-r1.ebuild index 77539b3689c2..1122490df73a 100644 --- a/media-video/wireplumber/wireplumber-0.5.6-r1.ebuild +++ b/media-video/wireplumber/wireplumber-0.5.6-r1.ebuild @@ -23,7 +23,7 @@ if [[ ${PV} == 9999 ]]; then inherit git-r3 else SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.bz2" - KEYWORDS="amd64 ~arm ~arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" + KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" fi LICENSE="MIT" diff --git a/media-video/wireplumber/wireplumber-0.5.6.ebuild b/media-video/wireplumber/wireplumber-0.5.6.ebuild deleted file mode 100644 index 05daac42ad03..000000000000 --- a/media-video/wireplumber/wireplumber-0.5.6.ebuild +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# 1. Please regularly check (even at the point of bumping) Fedora's packaging -# for needed backports at https://src.fedoraproject.org/rpms/wireplumber/tree/rawhide -# -# 2. Keep an eye on git master (for both PipeWire and WirePlumber) as things -# continue to move quickly. It's not uncommon for fixes to be made shortly -# after releases. - -LUA_COMPAT=( lua5-{3,4} ) - -inherit lua-single meson systemd - -DESCRIPTION="Replacement for pipewire-media-session" -HOMEPAGE="https://gitlab.freedesktop.org/pipewire/wireplumber" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/pipewire/${PN}.git" - EGIT_BRANCH="master" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.bz2" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -fi - -LICENSE="MIT" -SLOT="0/0.5" -IUSE="elogind system-service systemd test" - -REQUIRED_USE=" - ${LUA_REQUIRED_USE} - ?? ( elogind systemd ) - system-service? ( systemd ) -" - -RESTRICT="!test? ( test )" - -# introspection? ( dev-libs/gobject-introspection ) is valid but likely only used for doc building -BDEPEND=" - dev-libs/glib - dev-util/gdbus-codegen - dev-util/glib-utils - sys-devel/gettext - test? ( sys-apps/dbus ) -" -DEPEND=" - ${LUA_DEPS} - >=dev-libs/glib-2.68 - >=media-video/pipewire-1.0.5-r1:= - virtual/libintl - elogind? ( sys-auth/elogind ) - systemd? ( sys-apps/systemd ) -" -RDEPEND=" - ${DEPEND} - system-service? ( - acct-user/pipewire - acct-group/pipewire - ) -" - -DOCS=( {NEWS,README}.rst ) - -PATCHES=( - # Defer enabling sound server parts to media-video/pipewire - # TODO: Soon, we should be able to migrate to just a dropin at - # /usr/share. See https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/652#note_2399735. - "${FILESDIR}"/${PN}-0.5.6-config-disable-sound-server-parts.patch -) - -src_configure() { - local emesonargs=( - -Ddaemon=true - -Dtools=true - -Dmodules=true - # Ebuild not wired up yet (Sphinx, Doxygen?) - -Ddoc=disabled - # Only used for Sphinx doc generation - -Dintrospection=disabled - -Dsystem-lua=true - -Dsystem-lua-version=$(ver_cut 1-2 $(lua_get_version)) - $(meson_feature elogind) - $(meson_feature systemd) - $(meson_use system-service systemd-system-service) - $(meson_use systemd systemd-user-service) - -Dsystemd-system-unit-dir=$(systemd_get_systemunitdir) - -Dsystemd-user-unit-dir=$(systemd_get_userunitdir) - $(meson_use test tests) - $(meson_use test dbus-tests) - ) - - meson_src_configure -} - -src_install() { - meson_src_install - - mv "${ED}"/usr/share/doc/wireplumber/* "${ED}"/usr/share/doc/${PF} || die - rmdir "${ED}"/usr/share/doc/wireplumber || die -} - -pkg_postinst() { - if systemd_is_booted ; then - ewarn "pipewire-media-session.service is no longer installed. You must switch" - ewarn "to wireplumber.service user unit before your next logout/reboot:" - ewarn "systemctl --user disable pipewire-media-session.service" - ewarn "systemctl --user --force enable wireplumber.service" - else - ewarn "Switch to WirePlumber will happen the next time gentoo-pipewire-launcher" - ewarn "is started (a replacement for directly calling pipewire binary)." - ewarn - ewarn "Please ensure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist" - ewarn "or, if it does exist, that any reference to" - ewarn "${EROOT}/usr/bin/pipewire-media-session is commented out (begins with a #)." - fi - - if use system-service; then - ewarn - ewarn "WARNING: you have enabled the system-service USE flag, which installs" - ewarn "the system-wide systemd units that enable WirePlumber to run as a system" - ewarn "service. This is more than likely NOT what you want. You are strongly" - ewarn "advised not to enable this mode and instead stick with systemd user" - ewarn "units. The default configuration files will likely not work out of" - ewarn "box, and you are on your own with configuration." - ewarn - fi -} diff --git a/net-analyzer/alive/alive-2.0.5-r100.ebuild b/net-analyzer/alive/alive-2.0.5-r100.ebuild new file mode 100644 index 000000000000..277a47bb198a --- /dev/null +++ b/net-analyzer/alive/alive-2.0.5-r100.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile-single unpacker + +DESCRIPTION="Periodic ping program" +HOMEPAGE="https://www.gnu.org/software/alive/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.lz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~hppa ~x86" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +DEPEND="${GUILE_DEPS}" +RDEPEND="${DEPEND} + dev-scheme/xdgdirs + net-misc/iputils" +BDEPEND="$(unpacker_src_uri_depends)" + +PATCHES=( + "${FILESDIR}"/${PN}-2.0.2-ping-test.patch +) + +src_prepare() { + guile-single_src_prepare + + eautoreconf +} diff --git a/net-dialup/ppp/Manifest b/net-dialup/ppp/Manifest index 84e1b64ccc57..1ca41536ecd5 100644 --- a/net-dialup/ppp/Manifest +++ b/net-dialup/ppp/Manifest @@ -1,5 +1,6 @@ DIST ppp-2.4.9-patches-03.tar.xz 18520 BLAKE2B b3da095672fa57727ba11a5dba761ea3f24ee330f27252f0379dab5761d5381809176faafed86d97a6b89cc8a4cb958baa07f4900e22fe6e76b6c852e0703f0c SHA512 9a035acf1915225340c12e6242f0c5db399b5f5970888d7f1799a5f125cf97b95d9fcb8c9aa2f6bd56c1544d2b10585f772d4fc1025002e3e8403011e3d2c029 DIST ppp-2.4.9.tar.gz 719904 BLAKE2B 7ba3eb8c98fec5599635dbd302399617e1075f3a1df090f1a94ce2bb8a5c7631e6eea82246adc33711aba5fe95e7ba7c982e2cbf1fb0d71e45f877d9b092ffb7 SHA512 c309f8f69f534c05547cd2f66dade0e0f198ea4c2928a7e899e660280786b3e965437a67b8c5bb81c59d0fa1818b4eb7b701d2dce015a420d380422d2bca4e1a DIST ppp-2.5.0.tar.gz 1170057 BLAKE2B 6a0e9efcbff3cb499705071cc7d0e3411cf4871fd53b2bfedbb1f2cf3ad80728eb436050cf33b78e36d473be64f15907a21da17f283337455f0af379bc18272d SHA512 094368ea2aa6c6e8dfba4443509857a7c1c7ff839bb6d6657743802477208c01e87db31593cef0932d3725c640e9c103179da6b742825034cda82bd31ddcc2ed +DIST ppp-2.5.1.tar.gz 991639 BLAKE2B e3ece873ea25bde5ddffd0da168ffe6ba890693f20fb9f1d6a48f365331abdb4cf517fd0b3004d26a0c778ad4d750e39e38486544e2771b23223469db13c239c SHA512 57b3bbf918c302dbc621f56b706efa1b35b2fc45b71c3a309c1cfee22c28fcf98d7f8965fbeba9260c124f2afb9e297885007256ee05469adca73fad032902b9 DIST ppp-dhcpc.tgz 33497 BLAKE2B ca59130012f007cf45af6bcfa468c112b0d521c8b11f42d42c566dd9de55bd6d6f1b1ceb83cbae18cfe79cb5cb36ba6c6858a4718915acc6987295008aca53da SHA512 aeaf791b14f5a09c0e2079072a157e65132cbff46e608bc0724e6a5827a01da934f5006e2774eb7105f83e607a52cb4987238f4385cf6f5cc86cbe305a556738 DIST pppgetpass.8 450 BLAKE2B 4e9805cfecb4d07c302682c1ced42cc5d247d18fae904b909e126874af962cf48bb703cd75b0cefce4e19404f2e757602d3b57f187567fc23d4b93d9598d1486 SHA512 21f6dda908cf73ee27bfa39d2b50e7f76b371e50bd7d5a0586174b30129c119accbd260d7f9e0e6aa6aabfa5ba11a13ba560588a99672c9dd4e9f33254f88836 diff --git a/net-dialup/ppp/ppp-2.5.1.ebuild b/net-dialup/ppp/ppp-2.5.1.ebuild new file mode 100644 index 000000000000..8838554026f7 --- /dev/null +++ b/net-dialup/ppp/ppp-2.5.1.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-info pam tmpfiles + +DESCRIPTION="Point-to-Point Protocol (PPP)" +HOMEPAGE="https://ppp.samba.org/" +SRC_URI="https://download.samba.org/pub/ppp/${P}.tar.gz" + +LICENSE="BSD GPL-2" +SLOT="0/${PV}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="activefilter atm gtk pam selinux systemd" + +DEPEND=" + dev-libs/openssl:0= + virtual/libcrypt:= + activefilter? ( net-libs/libpcap ) + atm? ( net-dialup/linux-atm ) + gtk? ( x11-libs/gtk+:2 ) + pam? ( sys-libs/pam ) + systemd? ( sys-apps/systemd ) +" +RDEPEND=" + ${DEPEND} + selinux? ( sec-policy/selinux-ppp ) +" +BDEPEND="virtual/pkgconfig" +PDEPEND="net-dialup/ppp-scripts" + +pkg_setup() { + local CONFIG_CHECK="~PPP ~PPP_ASYNC ~PPP_SYNC_TTY" + local ERROR_PPP="CONFIG_PPP:\t missing PPP support (REQUIRED)" + local ERROR_PPP_ASYNC="CONFIG_PPP_ASYNC:\t missing asynchronous serial line discipline" + ERROR_PPP_ASYNC+=" (optional, but highly recommended)" + local WARNING_PPP_SYNC_TTY="CONFIG_PPP_SYNC_TTY:\t missing synchronous serial line discipline" + WARNING_PPP_SYNC_TTY+=" (optional; used by 'sync' pppd option)" + if use activefilter ; then + CONFIG_CHECK+=" ~PPP_FILTER" + local ERROR_PPP_FILTER="CONFIG_PPP_FILTER:\t missing PPP filtering support (REQUIRED)" + fi + CONFIG_CHECK+=" ~PPP_DEFLATE ~PPP_BSDCOMP ~PPP_MPPE" + local ERROR_PPP_DEFLATE="CONFIG_PPP_DEFLATE:\t missing Deflate compression (optional, but highly recommended)" + local ERROR_PPP_BSDCOMP="CONFIG_PPP_BSDCOMP:\t missing BSD-Compress compression (optional, but highly recommended)" + local WARNING_PPP_MPPE="CONFIG_PPP_MPPE:\t missing MPPE encryption (optional, mostly used by PPTP links)" + CONFIG_CHECK+=" ~PPPOE ~PACKET" + local WARNING_PPPOE="CONFIG_PPPOE:\t missing PPPoE support (optional, needed by pppoe plugin)" + local WARNING_PACKET="CONFIG_PACKET:\t missing AF_PACKET support (optional, used by pppoe plugin)" + if use atm ; then + CONFIG_CHECK+=" ~PPPOATM" + local WARNING_PPPOATM="CONFIG_PPPOATM:\t missing PPPoA support (optional, needed by pppoatm plugin)" + fi + + linux-info_pkg_setup +} + +src_prepare() { + default + + # Set the right paths in radiusclient.conf + sed -e "s:/usr/local/etc:/etc:" \ + -e "s:/usr/local/sbin:/usr/sbin:" \ + -i pppd/plugins/radius/etc/radiusclient.conf || die + # Set config dir to /etc/ppp/radius + sed -i -e "s:/etc/radiusclient:/etc/ppp/radius:g" \ + pppd/plugins/radius/{*.8,*.c,*.h} \ + pppd/plugins/radius/etc/* || die +} + +src_configure() { + local args=( + --localstatedir="${EPREFIX}"/var + --runstatedir="${EPREFIX}"/run + $(use_enable systemd) + $(use_with atm) + $(use_with pam) + $(use_with activefilter pcap) + $(use_with gtk) + --enable-cbcp + --enable-multilink + ) + econf "${args[@]}" +} + +src_install() { + default + + find "${ED}" -name '*.la' -type f -delete || die + + if use pam; then + pamd_mimic_system ppp auth account session + fi + + insinto /etc/modprobe.d + newins "${FILESDIR}/modules.ppp" ppp.conf + + dosbin scripts/p{on,off,log} + doman scripts/pon.1 + dosym pon.1 /usr/share/man/man1/poff.1 + dosym pon.1 /usr/share/man/man1/plog.1 + + # Adding misc. specialized scripts to doc dir + dodoc -r scripts + + if use gtk ; then + dosbin contrib/pppgetpass/pppgetpass.{gtk,vt} + newsbin contrib/pppgetpass/pppgetpass.sh pppgetpass + else + newsbin contrib/pppgetpass/pppgetpass.vt pppgetpass + fi + + doman contrib/pppgetpass/pppgetpass.8 + + newtmpfiles "${FILESDIR}/pppd.tmpfiles" pppd.conf + + insinto /etc/ppp/radius + doins pppd/plugins/radius/etc/{dictionary*,issue,port-id-map,radiusclient.conf,realms,servers} +} + +pkg_postinst() { + tmpfiles_process pppd.conf +} diff --git a/net-firewall/firewalld/firewalld-2.2.1-r1.ebuild b/net-firewall/firewalld/firewalld-2.2.1-r1.ebuild index f017a3287621..5aeaca95a3b0 100644 --- a/net-firewall/firewalld/firewalld-2.2.1-r1.ebuild +++ b/net-firewall/firewalld/firewalld-2.2.1-r1.ebuild @@ -13,7 +13,7 @@ SRC_URI="https://github.com/firewalld/firewalld/releases/download/v${PV}/${P}.ta LICENSE="GPL-2+" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" IUSE="gui selinux test" # Tests are too unreliable in sandbox environment RESTRICT="!test? ( test ) test" diff --git a/net-ftp/filezilla/filezilla-3.67.1.ebuild b/net-ftp/filezilla/filezilla-3.67.1.ebuild index d1cfeea701ce..c6c446248943 100644 --- a/net-ftp/filezilla/filezilla-3.67.1.ebuild +++ b/net-ftp/filezilla/filezilla-3.67.1.ebuild @@ -17,7 +17,7 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 ~riscv ~x86" IUSE="cpu_flags_x86_sse2 dbus nls test" RESTRICT="!test? ( test )" diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.51-r2.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.51-r2.ebuild index 57b1fef595ab..6c8d004c97be 100644 --- a/net-ftp/pure-ftpd/pure-ftpd-1.0.51-r2.ebuild +++ b/net-ftp/pure-ftpd/pure-ftpd-1.0.51-r2.ebuild @@ -48,6 +48,11 @@ RDEPEND=" BDEPEND="dev-build/autoconf-archive" +QA_CONFIG_IMPL_DECL_SKIP=( + # FP noise (bug #900068) + sendfile sendfilev +) + PATCHES=( "${FILESDIR}/${PN}-1.0.28-pam.patch" "${FILESDIR}/${PN}-1.0.51-sys-sendfile.patch" diff --git a/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild b/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild index c550fb4e65c8..06dcee741445 100644 --- a/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild +++ b/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild @@ -48,6 +48,11 @@ RDEPEND=" BDEPEND="dev-build/autoconf-archive" +QA_CONFIG_IMPL_DECL_SKIP=( + # FP noise (bug #900068) + sendfile sendfilev +) + PATCHES=( "${FILESDIR}/${PN}-1.0.28-pam.patch" ) src_prepare() { diff --git a/net-im/slack/Manifest b/net-im/slack/Manifest index 848ecbefdc03..171f0e1f153f 100644 --- a/net-im/slack/Manifest +++ b/net-im/slack/Manifest @@ -1,2 +1,2 @@ -DIST slack-desktop-4.40.120-amd64.deb 81441946 BLAKE2B b2ac591f6abaa4fa37508c9dcce5eee382affbbde7612b1191c830ad95b51127d407657c1d0503cdb54032113b57c78785da8db0ac6e44bf469aa3273b50e1bd SHA512 66c54a75920cc6d821a66e139c1e389bfd518419c37b891236896cd4651369ce5b2c57fb23a01d766c32997be6b1d4cfe411b091557b7aa6c4b97dcf3d8e2bf2 DIST slack-desktop-4.40.126-amd64.deb 81473774 BLAKE2B 2ba69b6b7171cd90c0f7f884f2c7af5933ced5bc77f5639a4e109054d0032e8391a4bb7e32a909709b0c251e71e50b768ead5d66c54fdf70fbc0398e316b1ee6 SHA512 c1ff49a49f209d27b0b61133e0b2237e79f065291ae4390ad19600547b0fcf820aeb658b28cb13975895aec6eff8dca002e68af53dd441d45e38b58c7d014511 +DIST slack-desktop-4.40.128-amd64.deb 81478206 BLAKE2B 5fb6a8889ff5246e11a837849e87c4cbf711642650864d340ebc3dc70abc622489913a5e5a2258475c13d10c5bdcf49d6dcfbde8868bd88e7880b4e44591e109 SHA512 b03c67b3b968f3e6105eabffc13a225906fef80719247f2ad08b1f24be8b77608861d64fcac3da4f71fd376cf0d11f0102113214f78894f6e26b14bff8cb5994 diff --git a/net-im/slack/slack-4.40.120.ebuild b/net-im/slack/slack-4.40.128.ebuild index 1df68b31ba00..1df68b31ba00 100644 --- a/net-im/slack/slack-4.40.120.ebuild +++ b/net-im/slack/slack-4.40.128.ebuild diff --git a/net-im/telegram-desktop-bin/Manifest b/net-im/telegram-desktop-bin/Manifest index 4e2a86936d43..3da2be25630b 100644 --- a/net-im/telegram-desktop-bin/Manifest +++ b/net-im/telegram-desktop-bin/Manifest @@ -1,4 +1,4 @@ -DIST tdesktop-5.3.2.tar.gz 19633052 BLAKE2B 9a26cde1c8ca28be9418beb0c5c85ddcfa600fd0d299c4561ece24ebee76d707a3542e34c85e42c5c4acf4cd20cdea10056deac82c00cbe118c1438f94fb15ac SHA512 736699832930935aeb3d1b0e27e24bc95ae09d8ed07d95fe8bd624a17959c4d2444ad8403006641450ce126429d573c126dbf5071125aa7a2edb9c612377dcb7 DIST tdesktop-5.4.1.tar.gz 19879412 BLAKE2B 5ef691f42fb0931736bb5c8710b4165f1ad82308bab4e06a3c3e1630bac8de1372409c8956afa789e00bc66e7ef2b042de4ec3ce42c23af8fcdbe5f2999b06a8 SHA512 9848698d0a1190c7c6da101f80132f0e09e21f585def18b2da334d45b20cab17a96e4d707bef958606e180ea2c183ca464770707f8696cf2a02b256d736b6450 -DIST tsetup.5.3.2.tar.xz 56785516 BLAKE2B 9f90bd71818b9bc5b325cff61056b084ec2a5bab4abbef08bae0c8a2ad1e29aa5f9874c19c9deb38bb377461df9bb624a6cf3f4acdfaa944d8a6ee9873165e3a SHA512 42d7f5f41b822f24a13915e01dcbb1a45661eda9c2b2f03816a826493ca3bd23e4486f14680344b4c4ec119faec204ba7d750b8b5c685801d854cc831a25cceb +DIST tdesktop-5.5.5.tar.gz 19927448 BLAKE2B a652a8ff502c9f37876a0e9a8b166e05c20397f4674cc3d1838e8a36be7037afd15e0defafe341c9a13f31fea27cf24e5cd1a2d031b27fd2758d103a961d71dd SHA512 67e0d4809ea0bae567e948fbef6d18c3969bfb914098c1e27f575a72d25d346f2ec6274f9e1263cfae759a1e9be97513e38ebe95d326c69460aa6298c563b589 DIST tsetup.5.4.1.tar.xz 57175592 BLAKE2B e9a107c64b4f82dc8b3edb34fb37b8d10c3e32326cfdc265d998b3baca6c6a7f655990f65fe68db98e1f885646712e605c17eb671609948bedcca82ee50438ce SHA512 7155bc54a50c0b0377cad5d409ab9be42be0ad790f9f514cf11bac55ccefdb080898d98db50db2e995c7f2c81659f541a305c7a9172176f13d2994d54860a3e5 +DIST tsetup.5.5.5.tar.xz 57286424 BLAKE2B c636d5fa1dc5939304afa3ed7bd1f908cd3fd598d497185a9b4fd6d473091b3eaa34567b76a614a3ff9bd320f7ca9a22d437acca49deb4914a0ff622044ce09c SHA512 c982fe0d6bb5c4b45b41c06cfce9dd3a76c72dee96b82919022fc62c1ee8a4d86ed0e93769d0688881055c7bdac434276b9f191338f8fc273c614caad08c98ed diff --git a/net-im/telegram-desktop-bin/telegram-desktop-bin-5.3.2.ebuild b/net-im/telegram-desktop-bin/telegram-desktop-bin-5.5.5.ebuild index 24722ca70535..24722ca70535 100644 --- a/net-im/telegram-desktop-bin/telegram-desktop-bin-5.3.2.ebuild +++ b/net-im/telegram-desktop-bin/telegram-desktop-bin-5.5.5.ebuild diff --git a/net-im/telegram-desktop/Manifest b/net-im/telegram-desktop/Manifest index 4ced5bee3b06..1231a3ab72ae 100644 --- a/net-im/telegram-desktop/Manifest +++ b/net-im/telegram-desktop/Manifest @@ -2,3 +2,4 @@ DIST tdesktop-5.0.4-full.tar.gz 69462550 BLAKE2B 46e630ea74c6571e41909bab768ff19 DIST tdesktop-5.2.3-full.tar.gz 69745773 BLAKE2B a6811098d2e0f8d0ebc0d7ac4d392981ff600544d31eb38a72b208778a69462d241122f8ff74b3a8b730d7a1221b78febb0ea9f641872992a830d9c805555c39 SHA512 5d5bf1f5c35af11b2adf7db075832e7cca5768c2c5f82d9fc5054b9d45f964a3520eb88864aefc3de593ce1359534b210b1e5d89495819e7386f6ca15fd4a15c DIST tdesktop-5.4.1-full.tar.gz 70056797 BLAKE2B 078a747c51df9ca8a173270b128e5c84439706b6c9d5ecde0fb0c88301f709b01613d2a895e9d1219809093cf3409211e63d8e131abed172c16192763dadc764 SHA512 f86b86c6001b2c214d897821c175f41c53ca44401285909b2b12254634cca821137d61a28c75d79ed757c1ade08873035397aae7c462494c1ab6382501a8072a DIST tdesktop-5.5.1-full.tar.gz 70095171 BLAKE2B 3221defb9df90333434b688e698b7c1ef842dca968049f3cd0cee428da353867cac52a0325fa1006e7d0a11d693c8e5e28b1983b57217ac4c227831cf1052214 SHA512 c8aadf6d2ad739523e714774c1b69be6792f805fb83d7f16a716c688cc800c54c5f13595742bd26d8b84f26342d89e21c668c8a79ed2a0607782a8421a40844a +DIST tdesktop-5.5.5-full.tar.gz 70112426 BLAKE2B 21cdb01d66ea1d1b7479995d790fc44d65248c807dafb25d865970a0d619483ccccd99c8d64b6853d8aa29c78c73010f14e720bf707c918e7c3bb5cb2428dde5 SHA512 88cd526fb02b7b0459cb1bd1b0c57147b2261e57c392d2cb62964015ef6b26e202fba717b35d74201c41becf0a5d78ef4d9d593b5666b3f0a0db646e40bfd1fc diff --git a/net-im/telegram-desktop/telegram-desktop-5.5.5.ebuild b/net-im/telegram-desktop/telegram-desktop-5.5.5.ebuild new file mode 100644 index 000000000000..98c1b5012cf5 --- /dev/null +++ b/net-im/telegram-desktop/telegram-desktop-5.5.5.ebuild @@ -0,0 +1,261 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) + +inherit xdg cmake python-any-r1 optfeature flag-o-matic + +DESCRIPTION="Official desktop client for Telegram" +HOMEPAGE="https://desktop.telegram.org https://github.com/telegramdesktop/tdesktop" + +MY_P="tdesktop-${PV}-full" +SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv" +IUSE="dbus enchant +fonts +jemalloc +libdispatch screencast qt6 qt6-imageformats wayland webkit +X" +REQUIRED_USE=" + qt6-imageformats? ( qt6 ) +" + +KIMAGEFORMATS_RDEPEND=" + media-libs/libavif:= + media-libs/libheif:= + >=media-libs/libjxl-0.8.0:= +" +CDEPEND=" + !net-im/telegram-desktop-bin + app-arch/lz4:= + dev-cpp/abseil-cpp:= + dev-cpp/ada:= + >=dev-cpp/glibmm-2.77:2.68 + dev-libs/glib:2 + dev-libs/openssl:= + dev-libs/protobuf + dev-libs/xxhash + media-libs/libjpeg-turbo:= + ~media-libs/libtgvoip-2.4.4_p20240706 + media-libs/openal + media-libs/opus + media-libs/rnnoise + ~media-libs/tg_owt-0_pre20240804:=[screencast=,X=] + media-video/ffmpeg:=[opus,vpx] + sys-libs/zlib:=[minizip] + !enchant? ( >=app-text/hunspell-1.7:= ) + enchant? ( app-text/enchant:= ) + jemalloc? ( dev-libs/jemalloc:= ) + libdispatch? ( dev-libs/libdispatch ) + !qt6? ( + >=dev-qt/qtcore-5.15:5= + >=dev-qt/qtgui-5.15:5=[dbus?,jpeg,png,wayland?,X?] + >=dev-qt/qtimageformats-5.15:5 + >=dev-qt/qtnetwork-5.15:5[ssl] + >=dev-qt/qtsvg-5.15:5 + >=dev-qt/qtwidgets-5.15:5[png,X?] + kde-frameworks/kcoreaddons:5 + webkit? ( + >=dev-qt/qtdeclarative-5.15:5 + >=dev-qt/qtwayland-5.15:5[compositor(+)] + ) + ) + qt6? ( + >=dev-qt/qtbase-6.5:6=[dbus?,gui,network,opengl,wayland?,widgets,X?] + >=dev-qt/qtimageformats-6.5:6 + >=dev-qt/qtsvg-6.5:6 + webkit? ( + >=dev-qt/qtdeclarative-6.5:6 + >=dev-qt/qtwayland-6.5:6[compositor,qml] + ) + qt6-imageformats? ( + >=dev-qt/qtimageformats-6.5:6= + ${KIMAGEFORMATS_RDEPEND} + ) + ) + X? ( + x11-libs/libxcb:= + x11-libs/xcb-util-keysyms + ) +" +RDEPEND="${CDEPEND} + webkit? ( || ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:6 ) ) +" +DEPEND="${CDEPEND} + >=dev-cpp/cppgir-2.0_p20240315 + >=dev-cpp/ms-gsl-4 + dev-cpp/expected-lite + dev-cpp/range-v3 +" +BDEPEND=" + ${PYTHON_DEPS} + >=dev-build/cmake-3.16 + >=dev-cpp/cppgir-2.0_p20240315 + dev-util/gdbus-codegen + virtual/pkgconfig + wayland? ( dev-util/wayland-scanner ) +" + +PATCHES=( + "${FILESDIR}"/tdesktop-4.2.4-jemalloc-only-telegram-r1.patch + "${FILESDIR}"/tdesktop-4.10.0-system-cppgir.patch + "${FILESDIR}"/tdesktop-5.2.2-qt6-no-wayland.patch + "${FILESDIR}"/tdesktop-5.2.2-libdispatch.patch +) + +pkg_pretend() { + if has ccache ${FEATURES}; then + ewarn "ccache does not work with ${PN} out of the box" + ewarn "due to usage of precompiled headers" + ewarn "check bug https://bugs.gentoo.org/715114 for more info" + ewarn + fi +} + +src_prepare() { + # Bundle kde-frameworks/kimageformats for qt6, since it's impossible to + # build in gentoo right now. + if use qt6-imageformats; then + sed -e 's/DESKTOP_APP_USE_PACKAGED_LAZY/TRUE/' -i \ + cmake/external/kimageformats/CMakeLists.txt || die + printf '%s\n' \ + 'Q_IMPORT_PLUGIN(QAVIFPlugin)' \ + 'Q_IMPORT_PLUGIN(HEIFPlugin)' \ + 'Q_IMPORT_PLUGIN(QJpegXLPlugin)' \ + >> cmake/external/qt/qt_static_plugins/qt_static_plugins.cpp || die + fi + # kde-frameworks/kcoreaddons is bundled when using qt6. + + # Happily fail if libraries aren't found... + find -type f \( -name 'CMakeLists.txt' -o -name '*.cmake' \) \ + \! -path './Telegram/lib_webview/CMakeLists.txt' \ + \! -path './cmake/external/expected/CMakeLists.txt' \ + \! -path './cmake/external/kcoreaddons/CMakeLists.txt' \ + \! -path './cmake/external/qt/package.cmake' \ + -print0 | xargs -0 sed -i \ + -e '/pkg_check_modules(/s/[^ ]*)/REQUIRED &/' \ + -e '/find_package(/s/)/ REQUIRED)/' || die + # Make sure to check the excluded files for new + # CMAKE_DISABLE_FIND_PACKAGE entries. + + # Control QtDBus dependency from here, to avoid messing with QtGui. + # QtGui will use find_package to find QtDbus as well, which + # conflicts with the -DCMAKE_DISABLE_FIND_PACKAGE method. + if ! use dbus; then + sed -e '/find_package(Qt[^ ]* OPTIONAL_COMPONENTS/s/DBus *//' \ + -i cmake/external/qt/package.cmake || die + fi + + cmake_src_prepare +} + +src_configure() { + # Having user paths sneak into the build environment through the + # XDG_DATA_DIRS variable causes all sorts of weirdness with cppgir: + # - bug 909038: can't read from flatpak directories (fixed upstream) + # - bug 920819: system-wide directories ignored when variable is set + export XDG_DATA_DIRS="${EPREFIX}/usr/share" + + # Evil flag (bug #919201) + filter-flags -fno-delete-null-pointer-checks + + # The ABI of media-libs/tg_owt breaks if the -DNDEBUG flag doesn't keep + # the same state across both projects. + # See https://bugs.gentoo.org/866055 + append-cppflags '-DNDEBUG' + + # https://github.com/telegramdesktop/tdesktop/issues/17437#issuecomment-1001160398 + use !libdispatch && append-cppflags -DCRL_FORCE_QT + + local qt=$(usex qt6 6 5) + local mycmakeargs=( + -DQT_VERSION_MAJOR=${qt} + + # Override new cmake.eclass defaults (https://bugs.gentoo.org/921939) + # Upstream never tests this any other way + -DCMAKE_DISABLE_PRECOMPILE_HEADERS=OFF + + # Control automagic dependencies on certain packages + ## Header-only lib, some git version. + -DCMAKE_DISABLE_FIND_PACKAGE_tl-expected=ON + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}Quick=$(usex !webkit) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}QuickWidgets=$(usex !webkit) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}WaylandClient=$(usex !wayland) + ## Only used in Telegram/lib_webview/CMakeLists.txt + -DCMAKE_DISABLE_FIND_PACKAGE_Qt${qt}WaylandCompositor=$(usex !webkit) + ## KF6CoreAddons is currently unavailable in ::gentoo + -DCMAKE_DISABLE_FIND_PACKAGE_KF${qt}CoreAddons=$(usex qt6) + + -DDESKTOP_APP_USE_LIBDISPATCH=$(usex libdispatch) + -DDESKTOP_APP_DISABLE_X11_INTEGRATION=$(usex !X) + -DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION=$(usex !wayland) + -DDESKTOP_APP_DISABLE_JEMALLOC=$(usex !jemalloc) + ## Enables enchant and disables hunspell + -DDESKTOP_APP_USE_ENCHANT=$(usex enchant) + ## Use system fonts instead of bundled ones + -DDESKTOP_APP_USE_PACKAGED_FONTS=$(usex !fonts) + ) + + if [[ -n ${MY_TDESKTOP_API_ID} && -n ${MY_TDESKTOP_API_HASH} ]]; then + einfo "Found custom API credentials" + mycmakeargs+=( + -DTDESKTOP_API_ID="${MY_TDESKTOP_API_ID}" + -DTDESKTOP_API_HASH="${MY_TDESKTOP_API_HASH}" + ) + else + # https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml + # Building with snapcraft API credentials by default + # Custom API credentials can be obtained here: + # https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md + # After getting credentials you can export variables: + # export MY_TDESKTOP_API_ID="17349"" + # export MY_TDESKTOP_API_HASH="344583e45741c457fe1862106095a5eb" + # and restart the build" + # you can set above variables (without export) in /etc/portage/env/net-im/telegram-desktop + # portage will use custom variable every build automatically + mycmakeargs+=( + -DTDESKTOP_API_ID="611335" + -DTDESKTOP_API_HASH="d524b414d21f4d37f08684c1df41ac9c" + ) + fi + + cmake_src_configure +} + +pkg_postinst() { + xdg_pkg_postinst + if ! use X && ! use screencast; then + ewarn "both the 'X' and 'screencast' USE flags are disabled, screen sharing won't work!" + ewarn + fi + if ! use jemalloc && use elibc_glibc; then + # https://github.com/telegramdesktop/tdesktop/issues/16084 + # https://github.com/desktop-app/cmake_helpers/pull/91#issuecomment-881788003 + ewarn "Disabling USE=jemalloc on glibc systems may cause very high RAM usage!" + ewarn "Do NOT report issues about RAM usage without enabling this flag first." + ewarn + fi + if ! use libdispatch; then + ewarn "Disabling USE=libdispatch may cause performance degradation" + ewarn "due to fallback to poor QThreadPool! Please see" + ewarn "https://github.com/telegramdesktop/tdesktop/wiki/The-Packaged-Building-Mode" + ewarn + fi + if use wayland && ! use qt6; then + ewarn "Wayland-specific integrations have been deprecated with Qt5." + ewarn "The app will continue to function under wayland, but some" + ewarn "functionality may be reduced." + ewarn "These integrations are only supported when built with Qt6." + ewarn + fi + if use qt6 && ! use qt6-imageformats; then + elog "Enable USE=qt6-imageformats for AVIF, HEIF and JpegXL support" + elog + fi + optfeature_header + if ! use qt6; then + optfeature "AVIF, HEIF and JpegXL image support" kde-frameworks/kimageformats[avif,heif,jpegxl] + fi +} diff --git a/net-irc/weechat/weechat-4.4.2-r100.ebuild b/net-irc/weechat/weechat-4.4.2-r100.ebuild new file mode 100644 index 000000000000..51c44dccd853 --- /dev/null +++ b/net-irc/weechat/weechat-4.4.2-r100.ebuild @@ -0,0 +1,198 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +LUA_COMPAT=( lua5-{1..4} ) +PYTHON_COMPAT=( python3_{10..13} ) + +inherit cmake guile-single lua-single python-single-r1 xdg + +if [[ ${PV} == "9999" ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/weechat/weechat.git" +else + inherit verify-sig + SRC_URI="https://weechat.org/files/src/${P}.tar.xz + verify-sig? ( https://weechat.org/files/src/${P}.tar.xz.asc )" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/weechat.org.asc + BDEPEND+="verify-sig? ( sec-keys/openpgp-keys-weechat )" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" +fi + +DESCRIPTION="Portable and multi-interface IRC client" +HOMEPAGE="https://weechat.org/" + +LICENSE="GPL-3+" +SLOT="0/${PV}" + +NETWORKS="+irc" +PLUGINS="+alias +buflist +charset +exec +fifo +fset +logger +relay +scripts +spell +trigger +typing +xfer" +# dev-lang/v8 was dropped from Gentoo so we can't enable javascript support +# dev-lang/php eclass support is lacking, php plugins don't work. bug #705702 +SCRIPT_LANGS="guile lua +perl +python ruby tcl" +LANGS=" cs de es fr hu it ja pl pt pt_BR ru sr tr" +IUSE="doc enchant man nls relay-api selinux test +zstd ${SCRIPT_LANGS} ${PLUGINS} ${INTERFACES} ${NETWORKS}" + +REQUIRED_USE=" + enchant? ( spell ) + guile? ( ${GUILE_REQUIRED_USE} ) + lua? ( ${LUA_REQUIRED_USE} ) + python? ( ${PYTHON_REQUIRED_USE} ) + test? ( nls ) + relay-api? ( relay ) +" + +RDEPEND=" + dev-libs/libgcrypt:0= + net-libs/gnutls:= + sys-libs/ncurses:0= + sys-libs/zlib:= + net-misc/curl[ssl] + charset? ( virtual/libiconv ) + guile? ( ${GUILE_DEPS} ) + lua? ( ${LUA_DEPS} ) + nls? ( virtual/libintl ) + perl? ( + dev-lang/perl:= + virtual/libcrypt:= + ) + python? ( ${PYTHON_DEPS} ) + relay-api? ( dev-libs/cJSON ) + ruby? ( + || ( + dev-lang/ruby:3.3 + dev-lang/ruby:3.2 + dev-lang/ruby:3.1 + ) + ) + selinux? ( sec-policy/selinux-irc ) + spell? ( + enchant? ( app-text/enchant:* ) + !enchant? ( app-text/aspell ) + ) + tcl? ( >=dev-lang/tcl-8.4.15:0= ) + zstd? ( app-arch/zstd:= ) +" + +DEPEND="${RDEPEND} + test? ( dev-util/cpputest ) +" + +BDEPEND+=" + virtual/pkgconfig + doc? ( >=dev-ruby/asciidoctor-1.5.4 ) + man? ( >=dev-ruby/asciidoctor-1.5.4 ) + nls? ( >=sys-devel/gettext-0.15 ) +" + +DOCS="AUTHORS.md CHANGELOG.md CONTRIBUTING.md UPGRADING.md README.md" + +RESTRICT="!test? ( test )" + +pkg_setup() { + use guile && guile-single_pkg_setup + use lua && lua-single_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + + use guile && guile_bump_sources + + # install only required translations + local i + for i in ${LANGS} ; do + if ! has ${i} ${LINGUAS-${i}} ; then + sed -i \ + -e "/${i}.po/d" \ + po/CMakeLists.txt || die + fi + done + + # install only required documentation ; en always + local j + for i in $(grep -e 'set(.*en.*)$' doc/CMakeLists.txt \ + | sed -e 's/.*set(\(\w\+\).*/\1/'); do + for j in $(grep set.${i} doc/CMakeLists.txt \ + | sed -e "s/.*${i}\(.*\)).*/\1/" -e 's/ en//'); do + if ! has ${j} ${LINGUAS-${j}} ; then + sed -i \ + -e "s/\(set(${i}.*\) ${j}/\1/" \ + doc/CMakeLists.txt || die + fi + done + done + + # install docs in correct directory + sed -i "s#\${DATAROOTDIR}/doc/\${PROJECT_NAME}#\0-${PVR}/html#" doc/CMakeLists.txt || die + + if [[ ${CHOST} == *-darwin* ]]; then + # fix linking error on Darwin + sed -i "s/+ get_config_var('LINKFORSHARED')//" \ + cmake/FindPython.cmake || die + # allow to find the plugins by default + sed -i 's/".so,.dll"/".bundle,.so,.dll"/' \ + src/core/wee-config.c || die + fi +} + +src_configure() { + local mycmakeargs=( + -DLIBDIR="${EPREFIX}/usr/$(get_libdir)" + -DENABLE_JAVASCRIPT=OFF + -DENABLE_LARGEFILE=ON + -DENABLE_NCURSES=ON + -DENABLE_PHP=OFF + -DENABLE_ALIAS=$(usex alias) + -DENABLE_BUFLIST=$(usex buflist) + -DENABLE_CHARSET=$(usex charset) + # -DENABLE_DOC requires all plugins (except javascript). + # https://github.com/weechat/weechat/blob/v4.0.2/CMakeLists.txt#L144 + # Impossible since php was dropped in net-irc/weechat-3.5.r1.ebuild. bug #705702 + -DENABLE_DOC=OFF + -DENABLE_DOC_INCOMPLETE=$(usex doc) + -DENABLE_ENCHANT=$(usex enchant) + -DENABLE_EXEC=$(usex exec) + -DENABLE_FIFO=$(usex fifo) + -DENABLE_FSET=$(usex fset) + -DENABLE_GUILE=$(usex guile) + -DENABLE_IRC=$(usex irc) + -DENABLE_LOGGER=$(usex logger) + -DENABLE_LUA=$(usex lua) + -DENABLE_MAN=$(usex man) + -DENABLE_NLS=$(usex nls) + -DENABLE_PERL=$(usex perl) + -DENABLE_PYTHON=$(usex python) + -DENABLE_RELAY=$(usex relay) + -DENABLE_CJSON=$(usex relay-api) + -DENABLE_RUBY=$(usex ruby) + -DENABLE_SCRIPT=$(usex scripts) + -DENABLE_SCRIPTS=$(usex scripts) + -DENABLE_SPELL=$(usex spell) + -DENABLE_TCL=$(usex tcl) + -DENABLE_TESTS=$(usex test) + -DENABLE_TRIGGER=$(usex trigger) + -DENABLE_TYPING=$(usex typing) + -DENABLE_XFER=$(usex xfer) + -DENABLE_ZSTD=$(usex zstd) + ) + cmake_src_configure +} + +src_test() { + if $(locale -a | grep -iq "en_US\.utf.*8"); then + cmake_src_test -V + else + eerror "en_US.UTF-8 locale is required to run ${PN}'s ${FUNCNAME}" + die "required locale missing" + fi +} + +src_install() { + cmake_src_install + + use guile && guile_unstrip_ccache +} diff --git a/net-irc/weechat/weechat-9999.ebuild b/net-irc/weechat/weechat-9999.ebuild index b35455cb8847..51c44dccd853 100644 --- a/net-irc/weechat/weechat-9999.ebuild +++ b/net-irc/weechat/weechat-9999.ebuild @@ -3,10 +3,11 @@ EAPI=8 +GUILE_COMPAT=( 2-2 3-0 ) LUA_COMPAT=( lua5-{1..4} ) PYTHON_COMPAT=( python3_{10..13} ) -inherit cmake lua-single python-single-r1 xdg +inherit cmake guile-single lua-single python-single-r1 xdg if [[ ${PV} == "9999" ]] ; then inherit git-r3 @@ -36,6 +37,7 @@ IUSE="doc enchant man nls relay-api selinux test +zstd ${SCRIPT_LANGS} ${PLUGINS REQUIRED_USE=" enchant? ( spell ) + guile? ( ${GUILE_REQUIRED_USE} ) lua? ( ${LUA_REQUIRED_USE} ) python? ( ${PYTHON_REQUIRED_USE} ) test? ( nls ) @@ -49,7 +51,7 @@ RDEPEND=" sys-libs/zlib:= net-misc/curl[ssl] charset? ( virtual/libiconv ) - guile? ( >=dev-scheme/guile-2.0:12= ) + guile? ( ${GUILE_DEPS} ) lua? ( ${LUA_DEPS} ) nls? ( virtual/libintl ) perl? ( @@ -90,6 +92,7 @@ DOCS="AUTHORS.md CHANGELOG.md CONTRIBUTING.md UPGRADING.md README.md" RESTRICT="!test? ( test )" pkg_setup() { + use guile && guile-single_pkg_setup use lua && lua-single_pkg_setup use python && python-single-r1_pkg_setup } @@ -97,6 +100,8 @@ pkg_setup() { src_prepare() { cmake_src_prepare + use guile && guile_bump_sources + # install only required translations local i for i in ${LANGS} ; do @@ -185,3 +190,9 @@ src_test() { die "required locale missing" fi } + +src_install() { + cmake_src_install + + use guile && guile_unstrip_ccache +} diff --git a/net-libs/gloox/gloox-1.0.28.ebuild b/net-libs/gloox/gloox-1.0.28.ebuild index b28ecdb63dcb..bd98580dff92 100644 --- a/net-libs/gloox/gloox-1.0.28.ebuild +++ b/net-libs/gloox/gloox-1.0.28.ebuild @@ -53,7 +53,7 @@ src_install() { if use examples; then # unhide the libs directory - mv "${S}"/src/examples/.libs "${S}"/src/examples/libs + mv "${S}"/src/examples/.libs "${S}"/src/examples/libs || die dodoc -r src/examples/ fi diff --git a/net-mail/mailutils/mailutils-3.17-r100.ebuild b/net-mail/mailutils/mailutils-3.17-r100.ebuild new file mode 100644 index 000000000000..bc60b6d6cfa7 --- /dev/null +++ b/net-mail/mailutils/mailutils-3.17-r100.ebuild @@ -0,0 +1,161 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +PYTHON_COMPAT=( python3_{10..12} ) + +inherit autotools elisp-common flag-o-matic guile-single python-single-r1 toolchain-funcs + +DESCRIPTION="A useful collection of mail servers, clients, and filters" +HOMEPAGE="https://mailutils.org/" +SRC_URI="mirror://gnu/mailutils/${P}.tar.xz" + +LICENSE="GPL-3+ LGPL-3+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-macos ~x64-macos" +IUSE="berkdb bidi +clients emacs gdbm sasl guile kerberos kyotocabinet \ + ldap mysql nls pam postgres python servers split-usr ssl static-libs test +threads tcpd \ + tokyocabinet" +RESTRICT="!test? ( test )" + +RDEPEND=" + !mail-filter/libsieve + !mail-client/mailx + sys-libs/ncurses:= + sys-libs/readline:= + dev-libs/libltdl:0 + virtual/libcrypt:= + virtual/mta + berkdb? ( sys-libs/db:= ) + bidi? ( dev-libs/fribidi ) + emacs? ( >=app-editors/emacs-23.1:* ) + gdbm? ( sys-libs/gdbm:= ) + guile? ( ${GUILE_DEPS} ) + kerberos? ( virtual/krb5 ) + kyotocabinet? ( dev-db/kyotocabinet ) + ldap? ( net-nds/openldap:= ) + mysql? ( dev-db/mysql-connector-c:= ) + nls? ( sys-devel/gettext ) + pam? ( sys-libs/pam:= ) + postgres? ( dev-db/postgresql:= ) + python? ( ${PYTHON_DEPS} ) + sasl? ( >=net-misc/gsasl-2.0.0 ) + servers? ( virtual/libiconv dev-libs/libunistring:= ) + ssl? ( net-libs/gnutls:= ) + tcpd? ( sys-apps/tcp-wrappers ) + tokyocabinet? ( dev-db/tokyocabinet ) + " + +DEPEND="${RDEPEND}" + +BDEPEND=" + virtual/pkgconfig + test? ( dev-util/dejagnu ) +" + +REQUIRED_USE=" + guile? ( ${GUILE_REQUIRED_USE} ) + python? ( ${PYTHON_REQUIRED_USE} ) + servers? ( tcpd ldap )" + +DOCS=( ABOUT-NLS AUTHORS COPYING COPYING.LESSER ChangeLog INSTALL NEWS README THANKS TODO ) +PATCHES=( + "${FILESDIR}"/${PN}-3.5-add-include.patch +) + +pkg_setup() { + use guile && guile-single_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + if use guile; then + guile_bump_sources + sed -i -e "s|guile|${GUILE}|" libmu_scm/tests/testsuite || die + fi + if use mysql; then + sed -i -e /^INCLUDES/"s:$:$(mysql_config --include):" \ + sql/Makefile.am || die + fi + eautoreconf +} + +src_configure() { + append-flags -fno-strict-aliasing + + if use guile; then + export GUILE_SNARF="${GUILESNARF}" + export GUILE_TOOLS="${GUILE/guile/guile-tools}" + fi + + # maildir is the Gentoo default + econf \ + MU_DEFAULT_SCHEME=maildir \ + CURSES_LIBS="$($(tc-getPKG_CONFIG) --libs ncurses)" \ + $(use_with berkdb berkeley-db) \ + $(use_with bidi fribidi) \ + $(use_with gdbm) \ + $(use_with sasl gsasl) \ + $(use_with guile) \ + $(use_with kerberos gssapi) \ + $(use_with ldap) \ + $(use_with mysql) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_with postgres) \ + $(use_enable python) \ + $(use_with ssl gnutls) \ + $(use_enable static-libs static) \ + $(use_enable threads pthread) \ + $(use_with tokyocabinet) \ + $(use_with kyotocabinet) \ + $(use_with tcpd tcp-wrappers) \ + $(use_enable servers build-servers) \ + $(use_with servers unistring ) \ + $(use_enable clients build-clients) \ + EMACS=$(usex emacs emacs no) \ + --with-lispdir="${EPREFIX}${SITELISP}/${PN}" \ + --with-mail-spool=/var/spool/mail \ + --with-readline \ + --enable-ipv6 \ + --enable-sendmail \ + --disable-debug +} + +src_install() { + default + + insinto /etc + # bug 613112 + newins "${FILESDIR}/mailutils.rc" mailutils.conf + keepdir /etc/mailutils.d/ + insinto /etc/mailutils.d + doins "${FILESDIR}/mail" + + use guile && guile_unstrip_ccache + + if use python; then + python_optimize + if use static-libs; then + rm -r "${D}$(python_get_sitedir)/mailutils"/*.{a,la} || die + fi + fi + + if use servers; then + newinitd "${FILESDIR}"/imap4d.initd imap4d + newinitd "${FILESDIR}"/pop3d.initd pop3d + newinitd "${FILESDIR}"/comsatd.initd comsatd + fi + + # compatibility link + if use clients && use split-usr; then + dosym ../usr/bin/mail /bin/mail + fi + + if ! use static-libs; then + find "${D}" -name "*.la" -delete || die + fi +} diff --git a/net-mail/muchsync/Manifest b/net-mail/muchsync/Manifest index 8913c1675a80..c57e3c49ca62 100644 --- a/net-mail/muchsync/Manifest +++ b/net-mail/muchsync/Manifest @@ -1 +1,2 @@ DIST muchsync-6.tar.gz 137023 BLAKE2B b2a60a26bd3a2918b52ea50a98223f828a60c1ba172f349cc350ab8cf224e114623bfb5775a9c05347311f21dbeed14744becd11022fbf8310608faf2a0146f9 SHA512 620e398f7e3973d915c32b1c244e2b1d5ed7c65dfc2a51958e62c229f14f8cf7fe794868930aaddc2d95145795a5affc0f50fc012d2d0b4bf2884930da3eec89 +DIST muchsync-7.tar.gz 140748 BLAKE2B 18b8dd4bcfec4700c304ae97170a3d6e746cd75d9cf3284633bb490b934cf172d0ef792a6f082ad90b2c538755467e193d5b894133e719a4048a3ab09d479afe SHA512 f924d16151a731c370a4a016971e5a1666a2171e3dcc8f691834ec1bda35171a1561274b2a91d866f49df5eab3cd39966514548a8bfaaef136b7c3aa1570dc32 diff --git a/net-mail/muchsync/muchsync-7.ebuild b/net-mail/muchsync/muchsync-7.ebuild new file mode 100644 index 000000000000..fdfd1f891fd7 --- /dev/null +++ b/net-mail/muchsync/muchsync-7.ebuild @@ -0,0 +1,22 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Synchronizes mail messages and notmuch tags across machines" +HOMEPAGE="https://www.muchsync.org/" +SRC_URI="https://www.muchsync.org/src/${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64" + +BDEPEND="virtual/pkgconfig" +DEPEND="dev-db/sqlite:3 + dev-libs/openssl:0= + dev-libs/xapian:= + net-mail/notmuch:= +" +RDEPEND="${DEPEND} + virtual/openssh +" diff --git a/net-misc/curl/Manifest b/net-misc/curl/Manifest index 217735387d6a..792b00ecc0bb 100644 --- a/net-misc/curl/Manifest +++ b/net-misc/curl/Manifest @@ -1,5 +1,5 @@ -DIST curl-8.10.0.tar.xz 2729448 BLAKE2B 18b438c0e4e7b0b698a1fee16406c611124e3d137349869dd8dbb43b5ba45163c6a053e02f665e627424c96e18f8499c13ebe1eeb4c1441936d0183d28696ae6 SHA512 055277695ea242fcb0bf26ca6c4867a385cd578cd73ed4c5c4a020233248044c1ecaebcbaeaac47d3ffe07a41300ea5fc86396d7e812137cf75ed3e1b54ca5b2 -DIST curl-8.10.0.tar.xz.asc 488 BLAKE2B 2b651b074b39eb8b34bc9e46a70d4e6597f04250fc3b5c8f8c4641a022529d176179cc54d9c7dccd9b64c62f1873a7ab214705d6a724928e68b871216658a683 SHA512 3d3ece14008facc373cd715d46eeb523bb17a701df3b1839f0774847692613a9472d3e7a60ba814846bbc8e8e4f17c81a1f1355e1c9eebef244b7cd00e0f6fb8 +DIST curl-8.10.1.tar.xz 2726748 BLAKE2B bfdfa24f6d652884044c5e8eea5d70daad651b46255c99c9df502f9595a2dcbf8c4034446becf9e87f8e8a3f397a8fda29ab3e0d6020ac0dae62dd42b8136b78 SHA512 f1c7a12492dcfb8ba08be69b96a83ce9074592cbaa6b95c72b3c16fc58ad35e9f9deec7b72baca7d360d013b0b1c7ea38bd4edae464903ac67aa3c76238d8c6c +DIST curl-8.10.1.tar.xz.asc 488 BLAKE2B 8e8f2b628d4e8964a76c1c43c5557aacbfc2d2dbc51be8a0fa1b157c257f15f29aedba842cba7cb270c4adcf0b4a5d9c8b0b3d49633c48b061fb3e1472303d66 SHA512 21d6d560c027efc9e3e5db182a77501d6376442221ba910df817e2ec980bee44a9fe2afc698205f8d5e8313ae47915a341d60206a46b46e816d73ee357a894ac DIST curl-8.7.1.tar.xz 2707016 BLAKE2B a2a9f48d0b69c0d92fcbbda535ce55082a5243abe3ab2db80d6fa3f32fb2c98b65026d69fc45c94e966398cf9ba8d9c95b6b91f4768b54749ed3275dd21838ef SHA512 5bbde9d5648e9226f5490fa951690aaf159149345f3a315df2ba58b2468f3e59ca32e8a49734338afc861803a4f81caac6d642a4699b72c6310ebfb1f618aad2 DIST curl-8.7.1.tar.xz.asc 488 BLAKE2B 1c91d116aecc8e98d8ec3aad68b7c96f11151e6c2716f531e5d2989e9b6b1199e180603673891d7967cdcdaee1d6b5e15160ccabe9b51590e2887022db03c2ed SHA512 f98c393997c4a32f545a8982226e8cd612395210915a4576c2ce227d0f650cff341be7bf15e989d1789abf32ac4fd9c190b9250b81e650b569e8532048746b37 DIST curl-8.8.0.tar.xz 2748860 BLAKE2B c14903bad4cbd1752a5335afa6bcc78be1a484692fce0e0a6c2061963e0e6b4e56defb8332cef32d0dbddb481ad0443b71faf3a52a6e9d945c89ecbce373d2a3 SHA512 9d2c0d3a0d8f6c31ba4fabe48f801910f886fde43dc198dc4213708d6967ed5e040a1bb7348aa1cb126577ee508a3ec36fe65256d027d861d6ffb70f6383967a diff --git a/net-misc/curl/curl-8.10.0-r1.ebuild b/net-misc/curl/curl-8.10.1.ebuild index 335c3c36a022..8aa5f19b3d9c 100644 --- a/net-misc/curl/curl-8.10.0-r1.ebuild +++ b/net-misc/curl/curl-8.10.1.ebuild @@ -158,7 +158,6 @@ QA_CONFIG_IMPL_DECL_SKIP=( PATCHES=( "${FILESDIR}"/${PN}-prefix-2.patch "${FILESDIR}"/${PN}-respect-cflags-3.patch - "${FILESDIR}"/${P}-sendrecv-poll.patch ) src_prepare() { diff --git a/net-misc/inetutils/inetutils-2.5-r3.ebuild b/net-misc/inetutils/inetutils-2.5-r5.ebuild index 82f4a8ee053b..c42a36ef11c6 100644 --- a/net-misc/inetutils/inetutils-2.5-r3.ebuild +++ b/net-misc/inetutils/inetutils-2.5-r5.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit pam +inherit pam systemd DESCRIPTION="Collection of common network programs" HOMEPAGE="https://www.gnu.org/software/inetutils/" @@ -77,6 +77,48 @@ iu_pamd() { fi } +create_init() { + use "$1" || return + + newinitd - "$1" <<-EOF + #!${EPREFIX}/sbin/openrc-run + command="${EPREFIX}/usr/libexec/$1" + command_args="$2" + pidfile="${EPREFIX}/var/run/$1.pid" + EOF + + systemd_newunit - "$1.service" <<-EOF + [Service] + ExecStart="${EPREFIX}/usr/libexec/$1"${2:+ }$2 + PIDFile=${EPREFIX}/var/run/$1.pid + Type=forking + + [Install] + WantedBy=multi-user.target + EOF +} + +create_socket() { + systemd_newunit - "$1.socket" <<-EOF + [Socket] + ListenStream=$2 + Accept=yes + + [Install] + WantedBy=sockets.target + EOF + + systemd_newunit - "$1@.service" <<-EOF + [Unit] + CollectMode=inactive-or-failed + + [Service] + ExecStart="${EPREFIX}/usr/libexec/$1" + StandardInput=socket + StandardError=journal + EOF +} + src_install() { default iu_pamd rexecd rexec @@ -86,4 +128,16 @@ src_install() { iu_pamd rlogind krlogin iu_pamd rshd krsh fi + + create_init ftpd --daemon + create_init inetd + create_init rlogind --daemon + create_init syslogd + + create_socket ftpd 21 + create_socket rexecd 512 + create_socket rlogind 513 + create_socket rshd 514 + create_socket telnetd 23 + create_socket uucpd 540 } diff --git a/net-misc/lldpd/lldpd-1.0.18.ebuild b/net-misc/lldpd/lldpd-1.0.18.ebuild index 92848bf22b45..38ba68aaacec 100644 --- a/net-misc/lldpd/lldpd-1.0.18.ebuild +++ b/net-misc/lldpd/lldpd-1.0.18.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/lldpd/lldpd/releases/download/${PV}/${P}.tar.gz" LICENSE="ISC" SLOT="0/4.9.1" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 ~x86" IUSE="cdp doc +dot1 +dot3 edp fdp graph +lldpmed old-kernel sanitizers seccomp sonmp snmp static-libs test readline valgrind xml" RESTRICT="!test? ( test )" diff --git a/net-misc/trurl/Manifest b/net-misc/trurl/Manifest index 0df7a6ebf06b..06eee8f0023a 100644 --- a/net-misc/trurl/Manifest +++ b/net-misc/trurl/Manifest @@ -1 +1,2 @@ DIST trurl-0.14.tar.gz 47830 BLAKE2B 15be36ef5c5989cf15d3983827055c793f15ae59efe8e02cc2f55ad9b19c528bb568aacc0583590017a6d6a3a74db1bd6bd3e18d3fee1c7c7d86e71f503d57f7 SHA512 25c1a3035095065368c8a11547e1d918b6f688e293982895a7bc27d9e161c0193ceccfaa0c2440f5c42a8ba4d5176a3f6a4fb843f5fa573328ef9baf5a438165 +DIST trurl-0.15.1.tar.gz 51397 BLAKE2B 41104b5e3b9bfbba17aaa829e5a0766879af963c73f5548d26eac8a80c0f8eb61da77de11a4dfd6321be522121f12ab239384e8e720d72564d4c841d395de0f2 SHA512 b2aabc77861686de137f0013c8782309bf04c0fa51a657384dca0d0f89aa0ca166d7de2c5d7c5c1ff63c1c4a5564e127658e2965dc4ab164939c1c4223f76eac diff --git a/net-misc/trurl/trurl-0.15.1.ebuild b/net-misc/trurl/trurl-0.15.1.ebuild new file mode 100644 index 000000000000..b27cb174ba1e --- /dev/null +++ b/net-misc/trurl/trurl-0.15.1.ebuild @@ -0,0 +1,49 @@ +# Copyright 2023-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +inherit toolchain-funcs python-any-r1 + +DESCRIPTION="Command line tool for URL parsing and manipulation" +HOMEPAGE="https://curl.se/trurl/ https://daniel.haxx.se/blog/2023/04/03/introducing-trurl/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/curl/trurl" + inherit git-r3 +else + SRC_URI="https://github.com/curl/trurl/archive/refs/tags/${P}.tar.gz" + S="${WORKDIR}"/${PN}-${P} + + KEYWORDS="~amd64 ~arm ~arm64" +fi + +LICENSE="curl" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +# Older curls may work but not all features will be present +DEPEND=">=net-misc/curl-7.81.0" +RDEPEND="${DEPEND}" +BDEPEND="test? ( ${PYTHON_DEPS} )" + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_compile() { + tc-export CC + export NDEBUG=1 + + default +} + +src_test() { + emake PYTHON3="${EPYTHON}" test +} + +src_install() { + emake DESTDIR="${D}" PREFIX="${EPREFIX}"/usr install +} diff --git a/net-proxy/haproxy/Manifest b/net-proxy/haproxy/Manifest index daebdfc0ea27..4ba01ae153cf 100644 --- a/net-proxy/haproxy/Manifest +++ b/net-proxy/haproxy/Manifest @@ -3,11 +3,15 @@ DIST haproxy-2.4.25.tar.gz 3664305 BLAKE2B b02eca0ef2719fad33c8db65b6568706cff3a DIST haproxy-2.4.27.tar.gz 3671596 BLAKE2B 987df4b07686e68805ff31a6832498ad8a7487a63b37e8d5ba9cd20be245a91c42e50d754d7d580d0899fed630a6bf99bd594cfec7b3a9d00ccac744a09da19b SHA512 97227805acd6131df8b4d398099bd9b89d1cd2aaddce4a3f334bf5b8b4dd01a30a0c3b56a7c23268456cf0e3a39244ddfd3ea0c27ee44f2c3bdf49c045b5fd8c DIST haproxy-2.6.16.tar.gz 4084854 BLAKE2B 15a33d6d88de9181d4b1b05d59d32f1c76496e3c8d4a8be8d762ff5945a3e56d416f463473dfb9e3c266032458dab737264fea0d18f467e66cca016da33c9fdc SHA512 81d55c46debe61f691cd0d8ccefd6eb8b5387ce1f4591ed7011ddbcc13b521f708499c9921983c9089e7f9ffcf1ed545d5b6124a92409b78def1f7eb1044e147 DIST haproxy-2.6.18.tar.gz 4103766 BLAKE2B e55f401ede25e54b199b33b7fc3dd788a45e9abbeef10fde5be6939124ab14e119ace3a2dd9d191b7c32270989c98787bdc30d2defa80c012215e2761538ce4c SHA512 44bc0504b62c9553fe084c607e8e4d73df100b371a3493663f82fe661d07852046e1be5dc7d195a3d85f1170d9096c6a0770251ed10c1bc88f8f982ce740042f +DIST haproxy-2.6.19.tar.gz 4110701 BLAKE2B fe003ac433a7756e57751db8f5430fb5f16e20d328bd28c0c5595304570a1450cecc19ca600fae515b21af00bfd6699ba08bd8ccfe43a09b6719e0f90b985a02 SHA512 cdcf6c2108d844c08b586e0e4ee4bd64dde3ef0da7487d65ea68f6fb52d9a1c2c34f4438ffacebea1d0f2400aac9f9f1b9000714a08cbac192a9f302dcc6c345 DIST haproxy-2.7.11.tar.gz 4213212 BLAKE2B ca5713d694b8d709188457dd821218d3474d05dd63ed6d3906d98bf4b24b2ea9847b032d6264c7e80a59043a9e085595fdcbdc0dec44137f0b7d71f1189688e0 SHA512 1e5298397e8759cb260997bf23336b9aa62b56ca7dd832cb4155526d9e7c5c664122e33717ce5be34bbf1539a85a8fbdb6e535aa056d2c232673a4034446288a DIST haproxy-2.7.9.tar.gz 4186553 BLAKE2B a2c7e92d008886ac5b5cf9f67be808bed68faea41b4bc25a3e5e187a4a2116bc37c40a5df9e2f640dba6c79caea39615eff434e904470e67d7703125a5ffc7e2 SHA512 774d0ae7a402fae0805706f4b88891162e18179f6ad9c2d0916ae30be2502409afdd11dfbbbce9b49564c7e14e8625e4a26751bbfc3b19e3e13ac12c8cc19495 DIST haproxy-2.8.10.tar.gz 4392333 BLAKE2B 4afc387970adbd6f882aa9b1d95cf6cc914d98ce69648282798fe2d97be82adc60c6ad4d0f3a78f56e2eca26d91a47044de2ca7277ca2567ecfdd2233ad64f32 SHA512 0a36f1e17702f4ab6eccf1c10643f4685e8c8b272cc71cbf5feb61c8c95ea52b5fc47eeefc97390bb8cb4ac1d52db0c9ad3c0510f8ca017bf10204690554c6d2 +DIST haproxy-2.8.11.tar.gz 4400628 BLAKE2B 0daccc4dbae5cecae3ad0bc1d164ea78a9584a0f4cb71e15664aff4b76fc05a828030dee355722c99a77270427bd3e9e43939ae59a3f3b1cabcc0179faff34b9 SHA512 59517187a5c0e0dbcb8629d2a922f7a865e1ebdbb9fe0f4fbe273913e0f15a1a26767808bd1607f10e79d3abcdd8c35c1ae648df149a1d5c0df32604df553655 DIST haproxy-2.8.7.tar.gz 4376705 BLAKE2B ae145fe6b642f860af814c2c43e84452a0bbc1b545b1b11eb07c65d903b97e42576b94e1774838b32b29ce32778941b79222669fc7615779c49f2ced85bf3fdc SHA512 dd2fe2ccd5d8805da3f7544451507b182377c34a9951747643c04cb9ee178b7be0978d56a0586c59771c2bb955765d3e961f6f06187afb768dc1fd27f08da464 DIST haproxy-2.9.10.tar.gz 4532342 BLAKE2B a015b04cb008b6b0d0397e57caa0ae2fda7c91cf0c21f581cc58088fc853d962a5fc1750cd07012e03e3a063e9710803c5100e326aa89bc013b87d638764b11b SHA512 3aea657c37251cdeed295e90cbe0b54a87821c87ef17f80cd057a16102212fb1b992c6fe8b7c4f1a5d6f1890170f470a703b74bd17e2546cfd9847323d2c687f +DIST haproxy-2.9.11.tar.gz 4540689 BLAKE2B 53f81c845e2bb8b3c9935a6035cb28d49708337e16081c2197cab60e4c1f01642cc64f1b2162bdabef07ab79cf72af9fac136bfa19fe89518b7de110433a1789 SHA512 316ab1dfbc60da4fe39acd4f9dc62d352690b35f0787f4fc0ae51853c7d35c656417e97945650bd79900d815414ad9504e4ff368e852657690f20ddc69bd3693 DIST haproxy-2.9.6.tar.gz 4507680 BLAKE2B 5666624d340cba70bc21f53efbe0a7b37897a616e55aa865ffa80471b6b5c03b3eae10bf86078245ec87cc2681b1fd2777148e0fa7f0d4a0a6bc65733f0e8692 SHA512 4e00069356083c8d428bf056e2a26ccfb3e18029cc96769189010d59d0b4f1c7af58986f1653067db83838dcbc2c138798663d3fbb9aac1d3c49c30cfc579c2a DIST haproxy-2.9.7.tar.gz 4516225 BLAKE2B 60590f2ff726bce2078c2075fe7f5476b870bda935560bcbecaf2deeb097c031d458105920f04b441dd59418b7a45b451b16be142f3bb89ddc5efd92ba98303c SHA512 23f320d49f822761cc0a4d8b7e15c8a58b804e4601c9421fa2433afe19798944d5a7264bf83502534b99236dda7c44ec72b97c1e6cdbcf203ab3090ae5313b3b DIST haproxy-3.0.4.tar.gz 4689835 BLAKE2B bb3691ac99db91a4a9faecce14f032d152d2fec36bc7722e7a71a8218e05e258c2667e45109af2006f20df38739d911db0be2f4845789824e7a012d4adc7bc38 SHA512 354d441d39a981ca16d844b64e06fde62df9ba0bc7fdd9e79e4890312be18378d7231ac997b035d5ef990f67f0b2cf8e60592026634777ccdb99286078c12867 +DIST haproxy-3.0.5.tar.gz 4698022 BLAKE2B c64d8799755fddaf5b45a9e2b67c5f03b25af98fbddde68ab1206c288d9a65f91938810b150c4398ee138d9154c90f1af9fb05c3d0bbc80394e71430e1cc4396 SHA512 8c16b026d5e26fc030178ecd354c68e8ea32c2b971f143cb2aa2f1b2d16fbfc0a27e3975f78873a0cefe3f904b5f1999f8d75622a04234b9cf88f90161d9ea91 diff --git a/net-proxy/haproxy/haproxy-2.6.19.ebuild b/net-proxy/haproxy/haproxy-2.6.19.ebuild new file mode 100644 index 000000000000..ce11ece1a066 --- /dev/null +++ b/net-proxy/haproxy/haproxy-2.6.19.ebuild @@ -0,0 +1,218 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +LUA_COMPAT=( lua5-4 lua5-3 ) + +[[ ${PV} == *9999 ]] && SCM="git-r3" +inherit toolchain-funcs lua-single systemd linux-info ${SCM} multiprocessing + +MY_P="${PN}-${PV/_beta/-dev}" + +DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments" +HOMEPAGE="http://www.haproxy.org" +if [[ ${PV} != *9999 ]]; then + # This is arbitrary; upstream uses master. Try to update when possible + VTEST_COMMIT="af198470d7ce482d3d26eb9ca3f246a438739366" + VTEST_DIR="${WORKDIR}/VTest-${VTEST_COMMIT}" + SRC_URI="http://haproxy.1wt.eu/download/$(ver_cut 1-2)/src/${MY_P}.tar.gz + test? ( https://github.com/vtest/VTest/archive/${VTEST_COMMIT}.tar.gz -> VTest-${VTEST_COMMIT}.tar.gz )" + KEYWORDS="~amd64 ~arm64 ~ppc ~x86" +elif [[ ${PV} == 9999 ]]; then + VTEST_DIR="${WORKDIR}/VTest" + EGIT_REPO_URI="https://git.haproxy.org/git/haproxy.git/" + EGIT_BRANCH=master +else + VTEST_DIR="${WORKDIR}/VTest" + EGIT_REPO_URI="https://git.haproxy.org/git/haproxy-$(ver_cut 1-2).git/" + EGIT_BRANCH=master +fi + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0/$(ver_cut 1-2)" +IUSE="+crypt doc examples +slz +net_ns +pcre pcre-jit prometheus-exporter +ssl systemd test +threads tools zlib lua 51degrees wurfl" +REQUIRED_USE="pcre-jit? ( pcre ) + lua? ( ${LUA_REQUIRED_USE} ) + ?? ( slz zlib )" +RESTRICT="!test? ( test )" + +BDEPEND="virtual/pkgconfig" +DEPEND=" + crypt? ( virtual/libcrypt:= ) + pcre? ( + dev-libs/libpcre2:= + pcre-jit? ( dev-libs/libpcre2:=[jit] ) + ) + ssl? ( + dev-libs/openssl:0= + ) + systemd? ( sys-apps/systemd ) + zlib? ( sys-libs/zlib ) + lua? ( ${LUA_DEPS} ) + test? ( + dev-libs/libpcre2 + sys-libs/zlib + )" +RDEPEND="${DEPEND} + acct-group/haproxy + acct-user/haproxy" + +S="${WORKDIR}/${MY_P}" + +DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README ) +EXTRAS=( admin/halog admin/iprange dev/tcploop dev/hpack ) + +haproxy_use() { + (( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>" + + usex "${1}" "USE_${2}=1" "USE_${2}=" +} + +pkg_setup() { + use lua && lua-single_pkg_setup + if use net_ns; then + CONFIG_CHECK="~NET_NS" + linux-info_pkg_setup + fi +} + +src_unpack() { + if [[ ${PV} != *9999 ]]; then + default + else + git-r3_src_unpack + EGIT_REPO_URI="https://github.com/vtest/VTest" EGIT_CHECKOUT_DIR="${VTEST_DIR}" git-r3_src_unpack + fi +} + +src_compile() { + local -a args=( + V=1 + # Switching to PCRE2 by default, bug 838013 + PCRE= + PCRE_JIT= + ) + + if use elibc_musl; then + args+=( TARGET=linux-musl ) + else + args+=( TARGET=linux-glibc ) + fi + + # TODO: PCRE2_WIDTH? + args+=( $(haproxy_use threads THREAD) ) + args+=( $(haproxy_use crypt LIBCRYPT) ) + args+=( $(haproxy_use net_ns NS) ) + args+=( $(haproxy_use pcre PCRE2) ) + args+=( $(haproxy_use pcre-jit PCRE2_JIT) ) + args+=( $(haproxy_use ssl OPENSSL) ) + args+=( $(haproxy_use slz SLZ) ) + args+=( $(haproxy_use zlib ZLIB) ) + args+=( $(haproxy_use lua LUA) ) + args+=( $(haproxy_use 51degrees 51DEGREES) ) + args+=( $(haproxy_use wurfl WURFL) ) + args+=( $(haproxy_use systemd SYSTEMD) ) + args+=( $(haproxy_use prometheus-exporter PROMEX) ) + + # Bug #668002 + if use ppc || use arm || use hppa; then + TARGET_LDFLAGS=-latomic + fi + + # HAProxy really needs some of those "SPEC_CFLAGS", like -fno-strict-aliasing + emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" EXTRA_OBJS="${EXTRA_OBJS}" \ + TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} + emake -C admin/systemd CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) \ + SBINDIR=/usr/sbin + + if use tools ; then + for extra in ${EXTRAS[@]} ; do + if [ "${extra}" = "admin/halog" ]; then + emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \ + PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} admin/halog/halog + elif [ "${extra}" = "dev/hpack" ]; then + emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \ + PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} dev/hpack/{decode,gen-enc,gen-rht} + else + # Those two includes are a workaround for hpack Makefile missing those + emake -C ${extra} \ + CFLAGS="${CFLAGS} -I../../include/ -I../../ebtree/" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" \ + CC="$(tc-getCC)" ${args[@]} + fi + done + fi +} + +src_test() { + # https://github.com/vtest/VTest/issues/12 + emake -C "${VTEST_DIR}" CC="$(tc-getCC)" FLAGS="${CFLAGS} -Wno-error=unused-result" + ulimit -n 65536 || die "${PN} requires ulimit -n set to at least 65536 for tests" + env -u A -u D TMPDIR="/tmp" emake reg-tests -- --v --j "$(makeopts_jobs)" \ + HAPROXY_PROGRAM="${S}/haproxy" VTEST_PROGRAM="${VTEST_DIR}/vtest" REGTESTS_TYPE="default,bug,devel" +} + +src_install() { + dosbin haproxy + + newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} + newinitd "${FILESDIR}/${PN}.initd-r8" ${PN} + + doman doc/haproxy.1 + + systemd_dounit admin/systemd/haproxy.service + + einstalldocs + + # The errorfiles are used by upstream defaults. + insinto /etc/haproxy/errors/ + doins examples/errorfiles/* + + if use doc; then + dodoc doc/*.txt + #if use lua; then + # TODO: doc/lua-api/ + #fi + fi + + if use tools ; then + has admin/halog "${EXTRAS[@]}" && dobin admin/halog/halog + has admin/iprange "${EXTRAS[@]}" && { + newbin admin/iprange/iprange haproxy_iprange + newbin admin/iprange/ip6range haproxy_ip6range + } + has dev/tcploop "${EXTRAS[@]}" && newbin dev/tcploop/tcploop haproxy_tcploop + has dev/hpack "${EXTRAS[@]}" && { + newbin dev/hpack/gen-rht haproxy_gen-rht + newbin dev/hpack/gen-enc haproxy_gen-enc + newbin dev/hpack/decode haproxy_decode + } + fi + + if use examples ; then + docinto examples + dodoc examples/*.cfg + dodoc doc/seamless_reload.txt + fi + + insinto /usr/share/vim/vimfiles/syntax + doins admin/syntax-highlight/haproxy.vim +} + +pkg_postinst() { + if [[ ! -f "${EROOT}/etc/haproxy/haproxy.cfg" ]] ; then + ewarn "You need to create /etc/haproxy/haproxy.cfg before you start the haproxy service." + ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created." + ewarn "Make use of them with the \"user\" and \"group\" directives." + + if [[ -d "${EROOT}/usr/share/doc/${PF}" ]]; then + einfo "Please consult the installed documentation for learning the configuration file's syntax." + einfo "The documentation and sample configuration files are installed here:" + einfo " ${EROOT}/usr/share/doc/${PF}" + fi + fi +} diff --git a/net-proxy/haproxy/haproxy-2.8.11.ebuild b/net-proxy/haproxy/haproxy-2.8.11.ebuild new file mode 100644 index 000000000000..ce11ece1a066 --- /dev/null +++ b/net-proxy/haproxy/haproxy-2.8.11.ebuild @@ -0,0 +1,218 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +LUA_COMPAT=( lua5-4 lua5-3 ) + +[[ ${PV} == *9999 ]] && SCM="git-r3" +inherit toolchain-funcs lua-single systemd linux-info ${SCM} multiprocessing + +MY_P="${PN}-${PV/_beta/-dev}" + +DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments" +HOMEPAGE="http://www.haproxy.org" +if [[ ${PV} != *9999 ]]; then + # This is arbitrary; upstream uses master. Try to update when possible + VTEST_COMMIT="af198470d7ce482d3d26eb9ca3f246a438739366" + VTEST_DIR="${WORKDIR}/VTest-${VTEST_COMMIT}" + SRC_URI="http://haproxy.1wt.eu/download/$(ver_cut 1-2)/src/${MY_P}.tar.gz + test? ( https://github.com/vtest/VTest/archive/${VTEST_COMMIT}.tar.gz -> VTest-${VTEST_COMMIT}.tar.gz )" + KEYWORDS="~amd64 ~arm64 ~ppc ~x86" +elif [[ ${PV} == 9999 ]]; then + VTEST_DIR="${WORKDIR}/VTest" + EGIT_REPO_URI="https://git.haproxy.org/git/haproxy.git/" + EGIT_BRANCH=master +else + VTEST_DIR="${WORKDIR}/VTest" + EGIT_REPO_URI="https://git.haproxy.org/git/haproxy-$(ver_cut 1-2).git/" + EGIT_BRANCH=master +fi + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0/$(ver_cut 1-2)" +IUSE="+crypt doc examples +slz +net_ns +pcre pcre-jit prometheus-exporter +ssl systemd test +threads tools zlib lua 51degrees wurfl" +REQUIRED_USE="pcre-jit? ( pcre ) + lua? ( ${LUA_REQUIRED_USE} ) + ?? ( slz zlib )" +RESTRICT="!test? ( test )" + +BDEPEND="virtual/pkgconfig" +DEPEND=" + crypt? ( virtual/libcrypt:= ) + pcre? ( + dev-libs/libpcre2:= + pcre-jit? ( dev-libs/libpcre2:=[jit] ) + ) + ssl? ( + dev-libs/openssl:0= + ) + systemd? ( sys-apps/systemd ) + zlib? ( sys-libs/zlib ) + lua? ( ${LUA_DEPS} ) + test? ( + dev-libs/libpcre2 + sys-libs/zlib + )" +RDEPEND="${DEPEND} + acct-group/haproxy + acct-user/haproxy" + +S="${WORKDIR}/${MY_P}" + +DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README ) +EXTRAS=( admin/halog admin/iprange dev/tcploop dev/hpack ) + +haproxy_use() { + (( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>" + + usex "${1}" "USE_${2}=1" "USE_${2}=" +} + +pkg_setup() { + use lua && lua-single_pkg_setup + if use net_ns; then + CONFIG_CHECK="~NET_NS" + linux-info_pkg_setup + fi +} + +src_unpack() { + if [[ ${PV} != *9999 ]]; then + default + else + git-r3_src_unpack + EGIT_REPO_URI="https://github.com/vtest/VTest" EGIT_CHECKOUT_DIR="${VTEST_DIR}" git-r3_src_unpack + fi +} + +src_compile() { + local -a args=( + V=1 + # Switching to PCRE2 by default, bug 838013 + PCRE= + PCRE_JIT= + ) + + if use elibc_musl; then + args+=( TARGET=linux-musl ) + else + args+=( TARGET=linux-glibc ) + fi + + # TODO: PCRE2_WIDTH? + args+=( $(haproxy_use threads THREAD) ) + args+=( $(haproxy_use crypt LIBCRYPT) ) + args+=( $(haproxy_use net_ns NS) ) + args+=( $(haproxy_use pcre PCRE2) ) + args+=( $(haproxy_use pcre-jit PCRE2_JIT) ) + args+=( $(haproxy_use ssl OPENSSL) ) + args+=( $(haproxy_use slz SLZ) ) + args+=( $(haproxy_use zlib ZLIB) ) + args+=( $(haproxy_use lua LUA) ) + args+=( $(haproxy_use 51degrees 51DEGREES) ) + args+=( $(haproxy_use wurfl WURFL) ) + args+=( $(haproxy_use systemd SYSTEMD) ) + args+=( $(haproxy_use prometheus-exporter PROMEX) ) + + # Bug #668002 + if use ppc || use arm || use hppa; then + TARGET_LDFLAGS=-latomic + fi + + # HAProxy really needs some of those "SPEC_CFLAGS", like -fno-strict-aliasing + emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" EXTRA_OBJS="${EXTRA_OBJS}" \ + TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} + emake -C admin/systemd CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) \ + SBINDIR=/usr/sbin + + if use tools ; then + for extra in ${EXTRAS[@]} ; do + if [ "${extra}" = "admin/halog" ]; then + emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \ + PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} admin/halog/halog + elif [ "${extra}" = "dev/hpack" ]; then + emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \ + PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} dev/hpack/{decode,gen-enc,gen-rht} + else + # Those two includes are a workaround for hpack Makefile missing those + emake -C ${extra} \ + CFLAGS="${CFLAGS} -I../../include/ -I../../ebtree/" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" \ + CC="$(tc-getCC)" ${args[@]} + fi + done + fi +} + +src_test() { + # https://github.com/vtest/VTest/issues/12 + emake -C "${VTEST_DIR}" CC="$(tc-getCC)" FLAGS="${CFLAGS} -Wno-error=unused-result" + ulimit -n 65536 || die "${PN} requires ulimit -n set to at least 65536 for tests" + env -u A -u D TMPDIR="/tmp" emake reg-tests -- --v --j "$(makeopts_jobs)" \ + HAPROXY_PROGRAM="${S}/haproxy" VTEST_PROGRAM="${VTEST_DIR}/vtest" REGTESTS_TYPE="default,bug,devel" +} + +src_install() { + dosbin haproxy + + newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} + newinitd "${FILESDIR}/${PN}.initd-r8" ${PN} + + doman doc/haproxy.1 + + systemd_dounit admin/systemd/haproxy.service + + einstalldocs + + # The errorfiles are used by upstream defaults. + insinto /etc/haproxy/errors/ + doins examples/errorfiles/* + + if use doc; then + dodoc doc/*.txt + #if use lua; then + # TODO: doc/lua-api/ + #fi + fi + + if use tools ; then + has admin/halog "${EXTRAS[@]}" && dobin admin/halog/halog + has admin/iprange "${EXTRAS[@]}" && { + newbin admin/iprange/iprange haproxy_iprange + newbin admin/iprange/ip6range haproxy_ip6range + } + has dev/tcploop "${EXTRAS[@]}" && newbin dev/tcploop/tcploop haproxy_tcploop + has dev/hpack "${EXTRAS[@]}" && { + newbin dev/hpack/gen-rht haproxy_gen-rht + newbin dev/hpack/gen-enc haproxy_gen-enc + newbin dev/hpack/decode haproxy_decode + } + fi + + if use examples ; then + docinto examples + dodoc examples/*.cfg + dodoc doc/seamless_reload.txt + fi + + insinto /usr/share/vim/vimfiles/syntax + doins admin/syntax-highlight/haproxy.vim +} + +pkg_postinst() { + if [[ ! -f "${EROOT}/etc/haproxy/haproxy.cfg" ]] ; then + ewarn "You need to create /etc/haproxy/haproxy.cfg before you start the haproxy service." + ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created." + ewarn "Make use of them with the \"user\" and \"group\" directives." + + if [[ -d "${EROOT}/usr/share/doc/${PF}" ]]; then + einfo "Please consult the installed documentation for learning the configuration file's syntax." + einfo "The documentation and sample configuration files are installed here:" + einfo " ${EROOT}/usr/share/doc/${PF}" + fi + fi +} diff --git a/net-proxy/haproxy/haproxy-2.9.11.ebuild b/net-proxy/haproxy/haproxy-2.9.11.ebuild new file mode 100644 index 000000000000..ce11ece1a066 --- /dev/null +++ b/net-proxy/haproxy/haproxy-2.9.11.ebuild @@ -0,0 +1,218 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +LUA_COMPAT=( lua5-4 lua5-3 ) + +[[ ${PV} == *9999 ]] && SCM="git-r3" +inherit toolchain-funcs lua-single systemd linux-info ${SCM} multiprocessing + +MY_P="${PN}-${PV/_beta/-dev}" + +DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments" +HOMEPAGE="http://www.haproxy.org" +if [[ ${PV} != *9999 ]]; then + # This is arbitrary; upstream uses master. Try to update when possible + VTEST_COMMIT="af198470d7ce482d3d26eb9ca3f246a438739366" + VTEST_DIR="${WORKDIR}/VTest-${VTEST_COMMIT}" + SRC_URI="http://haproxy.1wt.eu/download/$(ver_cut 1-2)/src/${MY_P}.tar.gz + test? ( https://github.com/vtest/VTest/archive/${VTEST_COMMIT}.tar.gz -> VTest-${VTEST_COMMIT}.tar.gz )" + KEYWORDS="~amd64 ~arm64 ~ppc ~x86" +elif [[ ${PV} == 9999 ]]; then + VTEST_DIR="${WORKDIR}/VTest" + EGIT_REPO_URI="https://git.haproxy.org/git/haproxy.git/" + EGIT_BRANCH=master +else + VTEST_DIR="${WORKDIR}/VTest" + EGIT_REPO_URI="https://git.haproxy.org/git/haproxy-$(ver_cut 1-2).git/" + EGIT_BRANCH=master +fi + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0/$(ver_cut 1-2)" +IUSE="+crypt doc examples +slz +net_ns +pcre pcre-jit prometheus-exporter +ssl systemd test +threads tools zlib lua 51degrees wurfl" +REQUIRED_USE="pcre-jit? ( pcre ) + lua? ( ${LUA_REQUIRED_USE} ) + ?? ( slz zlib )" +RESTRICT="!test? ( test )" + +BDEPEND="virtual/pkgconfig" +DEPEND=" + crypt? ( virtual/libcrypt:= ) + pcre? ( + dev-libs/libpcre2:= + pcre-jit? ( dev-libs/libpcre2:=[jit] ) + ) + ssl? ( + dev-libs/openssl:0= + ) + systemd? ( sys-apps/systemd ) + zlib? ( sys-libs/zlib ) + lua? ( ${LUA_DEPS} ) + test? ( + dev-libs/libpcre2 + sys-libs/zlib + )" +RDEPEND="${DEPEND} + acct-group/haproxy + acct-user/haproxy" + +S="${WORKDIR}/${MY_P}" + +DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README ) +EXTRAS=( admin/halog admin/iprange dev/tcploop dev/hpack ) + +haproxy_use() { + (( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>" + + usex "${1}" "USE_${2}=1" "USE_${2}=" +} + +pkg_setup() { + use lua && lua-single_pkg_setup + if use net_ns; then + CONFIG_CHECK="~NET_NS" + linux-info_pkg_setup + fi +} + +src_unpack() { + if [[ ${PV} != *9999 ]]; then + default + else + git-r3_src_unpack + EGIT_REPO_URI="https://github.com/vtest/VTest" EGIT_CHECKOUT_DIR="${VTEST_DIR}" git-r3_src_unpack + fi +} + +src_compile() { + local -a args=( + V=1 + # Switching to PCRE2 by default, bug 838013 + PCRE= + PCRE_JIT= + ) + + if use elibc_musl; then + args+=( TARGET=linux-musl ) + else + args+=( TARGET=linux-glibc ) + fi + + # TODO: PCRE2_WIDTH? + args+=( $(haproxy_use threads THREAD) ) + args+=( $(haproxy_use crypt LIBCRYPT) ) + args+=( $(haproxy_use net_ns NS) ) + args+=( $(haproxy_use pcre PCRE2) ) + args+=( $(haproxy_use pcre-jit PCRE2_JIT) ) + args+=( $(haproxy_use ssl OPENSSL) ) + args+=( $(haproxy_use slz SLZ) ) + args+=( $(haproxy_use zlib ZLIB) ) + args+=( $(haproxy_use lua LUA) ) + args+=( $(haproxy_use 51degrees 51DEGREES) ) + args+=( $(haproxy_use wurfl WURFL) ) + args+=( $(haproxy_use systemd SYSTEMD) ) + args+=( $(haproxy_use prometheus-exporter PROMEX) ) + + # Bug #668002 + if use ppc || use arm || use hppa; then + TARGET_LDFLAGS=-latomic + fi + + # HAProxy really needs some of those "SPEC_CFLAGS", like -fno-strict-aliasing + emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" EXTRA_OBJS="${EXTRA_OBJS}" \ + TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} + emake -C admin/systemd CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) \ + SBINDIR=/usr/sbin + + if use tools ; then + for extra in ${EXTRAS[@]} ; do + if [ "${extra}" = "admin/halog" ]; then + emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \ + PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} admin/halog/halog + elif [ "${extra}" = "dev/hpack" ]; then + emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \ + PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} dev/hpack/{decode,gen-enc,gen-rht} + else + # Those two includes are a workaround for hpack Makefile missing those + emake -C ${extra} \ + CFLAGS="${CFLAGS} -I../../include/ -I../../ebtree/" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" \ + CC="$(tc-getCC)" ${args[@]} + fi + done + fi +} + +src_test() { + # https://github.com/vtest/VTest/issues/12 + emake -C "${VTEST_DIR}" CC="$(tc-getCC)" FLAGS="${CFLAGS} -Wno-error=unused-result" + ulimit -n 65536 || die "${PN} requires ulimit -n set to at least 65536 for tests" + env -u A -u D TMPDIR="/tmp" emake reg-tests -- --v --j "$(makeopts_jobs)" \ + HAPROXY_PROGRAM="${S}/haproxy" VTEST_PROGRAM="${VTEST_DIR}/vtest" REGTESTS_TYPE="default,bug,devel" +} + +src_install() { + dosbin haproxy + + newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} + newinitd "${FILESDIR}/${PN}.initd-r8" ${PN} + + doman doc/haproxy.1 + + systemd_dounit admin/systemd/haproxy.service + + einstalldocs + + # The errorfiles are used by upstream defaults. + insinto /etc/haproxy/errors/ + doins examples/errorfiles/* + + if use doc; then + dodoc doc/*.txt + #if use lua; then + # TODO: doc/lua-api/ + #fi + fi + + if use tools ; then + has admin/halog "${EXTRAS[@]}" && dobin admin/halog/halog + has admin/iprange "${EXTRAS[@]}" && { + newbin admin/iprange/iprange haproxy_iprange + newbin admin/iprange/ip6range haproxy_ip6range + } + has dev/tcploop "${EXTRAS[@]}" && newbin dev/tcploop/tcploop haproxy_tcploop + has dev/hpack "${EXTRAS[@]}" && { + newbin dev/hpack/gen-rht haproxy_gen-rht + newbin dev/hpack/gen-enc haproxy_gen-enc + newbin dev/hpack/decode haproxy_decode + } + fi + + if use examples ; then + docinto examples + dodoc examples/*.cfg + dodoc doc/seamless_reload.txt + fi + + insinto /usr/share/vim/vimfiles/syntax + doins admin/syntax-highlight/haproxy.vim +} + +pkg_postinst() { + if [[ ! -f "${EROOT}/etc/haproxy/haproxy.cfg" ]] ; then + ewarn "You need to create /etc/haproxy/haproxy.cfg before you start the haproxy service." + ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created." + ewarn "Make use of them with the \"user\" and \"group\" directives." + + if [[ -d "${EROOT}/usr/share/doc/${PF}" ]]; then + einfo "Please consult the installed documentation for learning the configuration file's syntax." + einfo "The documentation and sample configuration files are installed here:" + einfo " ${EROOT}/usr/share/doc/${PF}" + fi + fi +} diff --git a/net-proxy/haproxy/haproxy-3.0.5.ebuild b/net-proxy/haproxy/haproxy-3.0.5.ebuild new file mode 100644 index 000000000000..019b7ed1219f --- /dev/null +++ b/net-proxy/haproxy/haproxy-3.0.5.ebuild @@ -0,0 +1,217 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +LUA_COMPAT=( lua5-4 lua5-3 ) + +[[ ${PV} == *9999 ]] && SCM="git-r3" +inherit toolchain-funcs lua-single systemd linux-info ${SCM} multiprocessing + +MY_P="${PN}-${PV/_beta/-dev}" + +DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments" +HOMEPAGE="http://www.haproxy.org" +if [[ ${PV} != *9999 ]]; then + # This is arbitrary; upstream uses master. Try to update when possible + VTEST_COMMIT="af198470d7ce482d3d26eb9ca3f246a438739366" + VTEST_DIR="${WORKDIR}/VTest-${VTEST_COMMIT}" + SRC_URI="http://haproxy.1wt.eu/download/$(ver_cut 1-2)/src/${MY_P}.tar.gz + test? ( https://github.com/vtest/VTest/archive/${VTEST_COMMIT}.tar.gz -> VTest-${VTEST_COMMIT}.tar.gz )" + KEYWORDS="~amd64 ~arm64 ~ppc ~x86" +elif [[ ${PV} == 9999 ]]; then + VTEST_DIR="${WORKDIR}/VTest" + EGIT_REPO_URI="https://git.haproxy.org/git/haproxy.git/" + EGIT_BRANCH=master +else + VTEST_DIR="${WORKDIR}/VTest" + EGIT_REPO_URI="https://git.haproxy.org/git/haproxy-$(ver_cut 1-2).git/" + EGIT_BRANCH=master +fi + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0/$(ver_cut 1-2)" +IUSE="+crypt doc examples +slz +net_ns +pcre pcre-jit prometheus-exporter +ssl systemd test +threads tools zlib lua 51degrees wurfl" +REQUIRED_USE="pcre-jit? ( pcre ) + lua? ( ${LUA_REQUIRED_USE} ) + ?? ( slz zlib )" +RESTRICT="!test? ( test )" + +BDEPEND="virtual/pkgconfig" +DEPEND=" + crypt? ( virtual/libcrypt:= ) + pcre? ( + dev-libs/libpcre2:= + pcre-jit? ( dev-libs/libpcre2:=[jit] ) + ) + ssl? ( + dev-libs/openssl:0= + ) + systemd? ( sys-apps/systemd ) + zlib? ( sys-libs/zlib ) + lua? ( ${LUA_DEPS} ) + test? ( + dev-libs/libpcre2 + sys-libs/zlib + )" +RDEPEND="${DEPEND} + acct-group/haproxy + acct-user/haproxy" + +S="${WORKDIR}/${MY_P}" + +DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README ) +EXTRAS=( admin/halog admin/iprange dev/tcploop dev/hpack ) + +haproxy_use() { + (( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>" + + usex "${1}" "USE_${2}=1" "USE_${2}=" +} + +pkg_setup() { + use lua && lua-single_pkg_setup + if use net_ns; then + CONFIG_CHECK="~NET_NS" + linux-info_pkg_setup + fi +} + +src_unpack() { + if [[ ${PV} != *9999 ]]; then + default + else + git-r3_src_unpack + EGIT_REPO_URI="https://github.com/vtest/VTest" EGIT_CHECKOUT_DIR="${VTEST_DIR}" git-r3_src_unpack + fi +} + +src_compile() { + local -a args=( + V=1 + # Switching to PCRE2 by default, bug 838013 + PCRE= + PCRE_JIT= + ) + + if use elibc_musl; then + args+=( TARGET=linux-musl ) + else + args+=( TARGET=linux-glibc ) + fi + + # TODO: PCRE2_WIDTH? + args+=( $(haproxy_use threads THREAD) ) + args+=( $(haproxy_use crypt LIBCRYPT) ) + args+=( $(haproxy_use net_ns NS) ) + args+=( $(haproxy_use pcre PCRE2) ) + args+=( $(haproxy_use pcre-jit PCRE2_JIT) ) + args+=( $(haproxy_use ssl OPENSSL) ) + args+=( $(haproxy_use slz SLZ) ) + args+=( $(haproxy_use zlib ZLIB) ) + args+=( $(haproxy_use lua LUA) ) + args+=( $(haproxy_use 51degrees 51DEGREES) ) + args+=( $(haproxy_use wurfl WURFL) ) + args+=( $(haproxy_use systemd SYSTEMD) ) + args+=( $(haproxy_use prometheus-exporter PROMEX) ) + + # Bug #668002 + if use ppc || use arm || use hppa; then + TARGET_LDFLAGS=-latomic + fi + + emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" EXTRA_OBJS="${EXTRA_OBJS}" \ + TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} + emake -C admin/systemd CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) \ + SBINDIR=/usr/sbin + + if use tools ; then + for extra in ${EXTRAS[@]} ; do + if [ "${extra}" = "admin/halog" ]; then + emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \ + PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} admin/halog/halog + elif [ "${extra}" = "dev/hpack" ]; then + emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \ + EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \ + PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} dev/hpack/{decode,gen-enc,gen-rht} + else + # Those two includes are a workaround for hpack Makefile missing those + emake -C ${extra} \ + CFLAGS="${CFLAGS} -I../../include/ -I../../ebtree/" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" \ + CC="$(tc-getCC)" ${args[@]} + fi + done + fi +} + +src_test() { + # https://github.com/vtest/VTest/issues/12 + emake -C "${VTEST_DIR}" CC="$(tc-getCC)" FLAGS="${CFLAGS} -Wno-error=unused-result" + ulimit -n 65536 || die "${PN} requires ulimit -n set to at least 65536 for tests" + env -u A -u D TMPDIR="/tmp" emake reg-tests -- --v --j "$(makeopts_jobs)" \ + HAPROXY_PROGRAM="${S}/haproxy" VTEST_PROGRAM="${VTEST_DIR}/vtest" REGTESTS_TYPE="default,bug,devel" +} + +src_install() { + dosbin haproxy + + newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} + newinitd "${FILESDIR}/${PN}.initd-r8" ${PN} + + doman doc/haproxy.1 + + systemd_dounit admin/systemd/haproxy.service + + einstalldocs + + # The errorfiles are used by upstream defaults. + insinto /etc/haproxy/errors/ + doins examples/errorfiles/* + + if use doc; then + dodoc doc/*.txt + #if use lua; then + # TODO: doc/lua-api/ + #fi + fi + + if use tools ; then + has admin/halog "${EXTRAS[@]}" && dobin admin/halog/halog + has admin/iprange "${EXTRAS[@]}" && { + newbin admin/iprange/iprange haproxy_iprange + newbin admin/iprange/ip6range haproxy_ip6range + } + has dev/tcploop "${EXTRAS[@]}" && newbin dev/tcploop/tcploop haproxy_tcploop + has dev/hpack "${EXTRAS[@]}" && { + newbin dev/hpack/gen-rht haproxy_gen-rht + newbin dev/hpack/gen-enc haproxy_gen-enc + newbin dev/hpack/decode haproxy_decode + } + fi + + if use examples ; then + docinto examples + dodoc examples/*.cfg + dodoc doc/seamless_reload.txt + fi + + insinto /usr/share/vim/vimfiles/syntax + doins admin/syntax-highlight/haproxy.vim +} + +pkg_postinst() { + if [[ ! -f "${EROOT}/etc/haproxy/haproxy.cfg" ]] ; then + ewarn "You need to create /etc/haproxy/haproxy.cfg before you start the haproxy service." + ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created." + ewarn "Make use of them with the \"user\" and \"group\" directives." + + if [[ -d "${EROOT}/usr/share/doc/${PF}" ]]; then + einfo "Please consult the installed documentation for learning the configuration file's syntax." + einfo "The documentation and sample configuration files are installed here:" + einfo " ${EROOT}/usr/share/doc/${PF}" + fi + fi +} diff --git a/net-vpn/candy/candy-5.10.3.ebuild b/net-vpn/candy/candy-5.10.3-r1.ebuild index 9460dccd05c1..b2396261c0bd 100644 --- a/net-vpn/candy/candy-5.10.3.ebuild +++ b/net-vpn/candy/candy-5.10.3-r1.ebuild @@ -14,10 +14,10 @@ SLOT="0" KEYWORDS="~amd64 ~arm64" DEPEND=" - dev-libs/poco - dev-libs/openssl - dev-libs/spdlog - dev-libs/libfmt + dev-libs/poco:= + dev-libs/openssl:= + dev-libs/spdlog:= + dev-libs/libfmt:= " RDEPEND=" ${DEPEND} diff --git a/net-vpn/candy/candy-5.10.4.ebuild b/net-vpn/candy/candy-5.10.4-r1.ebuild index 36c322c1a7fa..b2396261c0bd 100644 --- a/net-vpn/candy/candy-5.10.4.ebuild +++ b/net-vpn/candy/candy-5.10.4-r1.ebuild @@ -14,10 +14,10 @@ SLOT="0" KEYWORDS="~amd64 ~arm64" DEPEND=" - dev-libs/poco - dev-libs/openssl:0= - dev-libs/spdlog - dev-libs/libfmt + dev-libs/poco:= + dev-libs/openssl:= + dev-libs/spdlog:= + dev-libs/libfmt:= " RDEPEND=" ${DEPEND} diff --git a/net-wireless/iw/iw-6.7.ebuild b/net-wireless/iw/iw-6.7.ebuild index f1bbe2108630..c13f238058df 100644 --- a/net-wireless/iw/iw-6.7.ebuild +++ b/net-wireless/iw/iw-6.7.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -11,7 +11,7 @@ SRC_URI="https://mirrors.edge.kernel.org/pub/software/network/${PN}/${P}.tar.xz" LICENSE="ISC" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="amd64 arm ~arm64 ~loong ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux" DEPEND="dev-libs/libnl:=" RDEPEND=" diff --git a/profiles/arch/base/use.mask b/profiles/arch/base/use.mask index ecee15a9d4de..a9616ebb2587 100644 --- a/profiles/arch/base/use.mask +++ b/profiles/arch/base/use.mask @@ -17,10 +17,6 @@ jasper # sci-libs/atlas is only supported on specific architectures atlas -# Michał Górny <mgorny@gentoo.org> (2024-02-05) -# LLVM slots without keywords. -llvm_slot_19 - # Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2023-07-11) # Mask secureboot flag on arches where sbsigntools is not keyworded secureboot diff --git a/profiles/base/use.stable.mask b/profiles/base/use.stable.mask index 4c528b5880f3..93d8ee1913f9 100644 --- a/profiles/base/use.stable.mask +++ b/profiles/base/use.stable.mask @@ -4,6 +4,10 @@ # This file requires eapi 5 or later. New entries go on top. # Please use the same syntax as in use.mask +# Sam James <sam@gentoo.org> (2024-09-18) +# LLVM slots without stable keywords. +llvm_slot_19 + # Michał Górny <mgorny@gentoo.org> (2024-05-08) # Python implementations without stable keywords. python_targets_python3_13 diff --git a/profiles/package.mask b/profiles/package.mask index b67976898544..0b89538c44d0 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -356,6 +356,49 @@ dev-scheme/guile-commonmark dev-scheme/guile:2.2 dev-scheme/guile:3.0 >=dev-build/make-4.4.1-r100 +>=app-office/gnucash-5.8-r100 +>=app-shells/gash-0.3.0-r100 +>=dev-build/remake-4.3.1.1.6-r100 +>=dev-debug/gdb-15.1-r100 +>=dev-scheme/akku-1.1.0-r100 +>=dev-scheme/bytestructures-2.0.2-r100 +>=dev-scheme/fibers-1.2.0_p20230522-r100 +>=dev-scheme/goosh-1.3-r100 +>=dev-scheme/guile-colorized-0.1_p20191205-r100 +>=dev-scheme/guile-config-0.5.1-r100 +>=dev-scheme/guile-dbi-2.1.9 +>=dev-scheme/guile-dbd-postgresql-2.1.9 +>=dev-scheme/guile-dbd-sqlite3-2.1.9 +>=dev-scheme/guile-gcrypt-0.4.0-r100 +>=dev-scheme/guile-git-0.7.0-r100 +>=dev-scheme/guile-gnutls-4.0.0-r100 +>=dev-scheme/guile-hall-0.4.1-r100 +>=dev-scheme/guile-json-4.7.3-r100 +>=dev-scheme/guile-lib-0.2.7-r100 +>=dev-scheme/guile-libyaml-20211124-r100 +>=dev-scheme/guile-lzlib-0.0.2-r100 +>=dev-scheme/guile-ncurses-3.1-r100 +>=dev-scheme/guile-nyacc-1.06.7-r100 +>=dev-scheme/guile-sqlite3-0.1.3-r100 +>=dev-scheme/guile-ssh-0.16.4-r100 +>=dev-scheme/guile-zlib-0.1.0-r100 +>=dev-scheme/guile-zstd-0.1.1-r100 +>=dev-scheme/xdgdirs-2.2-r100 +>=media-gfx/graphviz-12.0.0-r100 +>=media-sound/lilypond-2.24.4-r100 +>=net-analyzer/alive-2.0.5-r100 +>=net-irc/weechat-4.4.2-r100 +>=net-mail/mailutils-3.17-r100 +>=sci-electronics/geda-1.10.2-r100 +>=sci-electronics/gwave-20190116-r100 +>=sci-libs/linux-gpib-4.3.6-r100 +>=sci-libs/nlopt-2.7.1-r100 +>=sys-devel/autogen-5.18.16-r100 +>=www-client/elinks-0.16.1.1-r100 +>=x11-misc/xbindkeys-1.8.7-r100 +>=dev-scheme/guile-gi-0.3.2-r100 +>=media-sound/denemo-2.6.0-r100 +>=dev-scheme/skribilo-0.10.0-r100 # Eli Schwartz <eschwartz@gentoo.org> (2024-08-15) # Abandoned upstream since 2011, unmaintained in gentoo since 2017. Tons of diff --git a/profiles/prefix/darwin/macos/15.0/arm64/clang/eapi b/profiles/prefix/darwin/macos/15.0/arm64/clang/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/arm64/clang/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/darwin/macos/15.0/arm64/clang/parent b/profiles/prefix/darwin/macos/15.0/arm64/clang/parent new file mode 100644 index 000000000000..855aaf175968 --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/arm64/clang/parent @@ -0,0 +1,2 @@ +.. +../../../features/clang-lld diff --git a/profiles/prefix/darwin/macos/15.0/arm64/eapi b/profiles/prefix/darwin/macos/15.0/arm64/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/arm64/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/darwin/macos/15.0/arm64/gcc/eapi b/profiles/prefix/darwin/macos/15.0/arm64/gcc/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/arm64/gcc/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/darwin/macos/15.0/arm64/gcc/parent b/profiles/prefix/darwin/macos/15.0/arm64/gcc/parent new file mode 100644 index 000000000000..5ebbfd24d627 --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/arm64/gcc/parent @@ -0,0 +1,2 @@ +.. +../../../features/fsf-gcc-nold diff --git a/profiles/prefix/darwin/macos/15.0/arm64/make.defaults b/profiles/prefix/darwin/macos/15.0/arm64/make.defaults new file mode 100644 index 000000000000..d998178e0188 --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/arm64/make.defaults @@ -0,0 +1,5 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +CHOST="arm64-apple-darwin24" +CHOST_arm64="${CHOST}" diff --git a/profiles/prefix/darwin/macos/15.0/arm64/parent b/profiles/prefix/darwin/macos/15.0/arm64/parent new file mode 100644 index 000000000000..a75c3ad0a555 --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/arm64/parent @@ -0,0 +1,2 @@ +.. +../../arch/arm64 diff --git a/profiles/prefix/darwin/macos/15.0/eapi b/profiles/prefix/darwin/macos/15.0/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/darwin/macos/15.0/make.defaults b/profiles/prefix/darwin/macos/15.0/make.defaults new file mode 100644 index 000000000000..5ea2db2a3f07 --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/make.defaults @@ -0,0 +1,4 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +MACOSX_DEPLOYMENT_TARGET="15.0" diff --git a/profiles/prefix/darwin/macos/15.0/package.use.mask b/profiles/prefix/darwin/macos/15.0/package.use.mask new file mode 100644 index 000000000000..0d222cee3b56 --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/package.use.mask @@ -0,0 +1,7 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Fabian Groffen <grobian@gentoo.org> (2011-04-10) +# as long as util-linux installs uuid.h which breaks the system headers +# (hence we don't) we can't do uuid support here +x11-libs/libSM -uuid diff --git a/profiles/prefix/darwin/macos/15.0/parent b/profiles/prefix/darwin/macos/15.0/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/darwin/macos/15.0/profile.bashrc b/profiles/prefix/darwin/macos/15.0/profile.bashrc new file mode 100644 index 000000000000..933758acd5d9 --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/profile.bashrc @@ -0,0 +1,4 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +export MACOSX_DEPLOYMENT_TARGET=15.0 diff --git a/profiles/prefix/darwin/macos/15.0/x64/eapi b/profiles/prefix/darwin/macos/15.0/x64/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/x64/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/darwin/macos/15.0/x64/gcc/eapi b/profiles/prefix/darwin/macos/15.0/x64/gcc/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/x64/gcc/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/darwin/macos/15.0/x64/gcc/parent b/profiles/prefix/darwin/macos/15.0/x64/gcc/parent new file mode 100644 index 000000000000..fceecddb55c7 --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/x64/gcc/parent @@ -0,0 +1,2 @@ +.. +../../../features/fsf-gcc-ld64 diff --git a/profiles/prefix/darwin/macos/15.0/x64/make.defaults b/profiles/prefix/darwin/macos/15.0/x64/make.defaults new file mode 100644 index 000000000000..ec3bbe571aeb --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/x64/make.defaults @@ -0,0 +1,5 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +CHOST="x86_64-apple-darwin24" +CHOST_amd64="${CHOST}" diff --git a/profiles/prefix/darwin/macos/15.0/x64/parent b/profiles/prefix/darwin/macos/15.0/x64/parent new file mode 100644 index 000000000000..269f6f48bb15 --- /dev/null +++ b/profiles/prefix/darwin/macos/15.0/x64/parent @@ -0,0 +1,2 @@ +.. +../../arch/x64 diff --git a/profiles/profiles.desc b/profiles/profiles.desc index e06559fd61d9..445189fc42ef 100644 --- a/profiles/profiles.desc +++ b/profiles/profiles.desc @@ -725,12 +725,14 @@ x64-macos prefix/darwin/macos/12.0/x64 exp x64-macos prefix/darwin/macos/12.0/x64/gcc exp x64-macos prefix/darwin/macos/13.0/x64/gcc exp x64-macos prefix/darwin/macos/14.0/x64/gcc exp +x64-macos prefix/darwin/macos/15.0/x64/gcc exp arm64-macos prefix/darwin/macos/11.0/arm64 exp arm64-macos prefix/darwin/macos/11.0/arm64/gcc exp arm64-macos prefix/darwin/macos/12.0/arm64 exp arm64-macos prefix/darwin/macos/12.0/arm64/gcc exp arm64-macos prefix/darwin/macos/13.0/arm64/gcc exp arm64-macos prefix/darwin/macos/14.0/arm64/gcc exp +arm64-macos prefix/darwin/macos/15.0/arm64/gcc exp # Solaris Profiles x64-solaris prefix/sunos/solaris/5.11/x64 exp diff --git a/sci-calculators/tiemu/files/tiemu-3.03-implicit-int.patch b/sci-calculators/tiemu/files/tiemu-3.03-implicit-int.patch new file mode 100644 index 000000000000..c3f91a61be1d --- /dev/null +++ b/sci-calculators/tiemu/files/tiemu-3.03-implicit-int.patch @@ -0,0 +1,16 @@ +https://bugs.gentoo.org/915615 + +Patch contributed by Matt Whitlock <gentoo@mattwhitlock.name> + +--- a/src/core/uae/gencpu.c ++++ b/src/core/uae/gencpu.c +@@ -304,7 +304,7 @@ + insn_n_cycles += 4; + } + +-static void fill_prefetch_next_1 (needcycles) ++static void fill_prefetch_next_1 (int needcycles) + { + if (needcycles && using_ce) { + printf ("\tint lostcycles;\n"); + diff --git a/sci-calculators/tiemu/tiemu-3.03-r2.ebuild b/sci-calculators/tiemu/tiemu-3.03-r2.ebuild index 817fd4efec30..6c97f027df6c 100644 --- a/sci-calculators/tiemu/tiemu-3.03-r2.ebuild +++ b/sci-calculators/tiemu/tiemu-3.03-r2.ebuild @@ -36,6 +36,7 @@ PATCHES=( "${FILESDIR}"/${P}-r2820.patch "${FILESDIR}"/${P}-fix-ftbfs-with-customized-abort-function.patch "${FILESDIR}"/${P}-clang16-build-fix.patch + "${FILESDIR}"/${P}-implicit-int.patch ) src_prepare() { diff --git a/sci-electronics/geda/geda-1.10.2-r100.ebuild b/sci-electronics/geda/geda-1.10.2-r100.ebuild new file mode 100644 index 000000000000..93666fb0cfa9 --- /dev/null +++ b/sci-electronics/geda/geda-1.10.2-r100.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DOCS_BUILDER="doxygen" +DOCS_DEPEND=" + media-gfx/graphviz + media-gfx/imagemagick + virtual/latex-base +" +GUILE_COMPAT=( 2-2 ) +inherit autotools docs guile-single xdg + +MY_PN=${PN}-gaf +MY_P=${MY_PN}-${PV} + +DESCRIPTION="GPL Electronic Design Automation (gEDA):gaf core package" +HOMEPAGE="http://geda-project.org/ http://wiki.geda-project.org/geda:gaf" +SRC_URI="http://ftp.geda-project.org/${MY_PN}/stable/v$(ver_cut 1-2)/${PV}/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="debug fam nls" +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + dev-libs/glib:2 + sci-electronics/electronics-menu + x11-libs/cairo + x11-libs/gdk-pixbuf + x11-libs/gtk+:2 + x11-libs/pango + nls? ( virtual/libintl ) + fam? ( app-admin/gamin ) +" + +DEPEND="${RDEPEND} + dev-util/desktop-file-utils + x11-misc/shared-mime-info" +BDEPEND=" + sys-apps/groff + virtual/pkgconfig + nls? ( sys-devel/gettext ) +" + +PATCHES=( + # Xorn requires python2 + "${FILESDIR}/${P}-drop-xorn.patch" + + "${FILESDIR}/${PN}-1.10.2-fix-gtk-sheet.patch" +) + +pkg_setup() { + guile-single_pkg_setup +} + +src_prepare() { + guile-single_src_prepare + rm -r xorn || die + + # remove compressed files, compressed by portage in install phase + rm docs/wiki/media/geda/gsch2pcb-libs.tar.gz || die + rm docs/wiki/media/geda/pcb_plugin_template.tar.gz || die + rm docs/wiki/media/pcb/plugin_debug_window.tar.gz || die + + # -Wmaybe-uninitialized is made fatal, which is not ideal for building + # releases. Upstream is working on fixing these anyway. + sed -i '/Werror_maybe_uninitialized_IF_SUPPORTED/d' configure.ac || die + + eautoreconf +} + +src_configure() { + local myconf=( + --disable-rpath + --disable-update-xdg-database + $(use_enable doc doxygen) + $(use_enable debug assert) + $(use_enable nls) + $(use_with fam libfam) + ) + + local -x GUILE_SNARF="${GUILESNARF}" + + econf "${myconf[@]}" +} + +src_install() { + guile_src_install + + find "${D}" -name '*.la' -delete || die +} diff --git a/sci-electronics/gwave/files/gwave-20190116-lfs-shim.patch b/sci-electronics/gwave/files/gwave-20190116-lfs-shim.patch new file mode 100644 index 000000000000..5957b6a1b6b0 --- /dev/null +++ b/sci-electronics/gwave/files/gwave-20190116-lfs-shim.patch @@ -0,0 +1,14 @@ +https://bugs.gentoo.org/886139 + +--- a/spicefile/sp2sp.c ++++ b/spicefile/sp2sp.c +@@ -234,7 +234,7 @@ + } + of = stdout; + } else { +- of = (FILE *)fopen64(outfilename, "w"); /* DJW: why is the cast needed? */ ++ of = fopen(outfilename, "w"); + if(!of) { + if(errno) + perror(outfilename); + diff --git a/sci-electronics/gwave/gwave-20190116-r100.ebuild b/sci-electronics/gwave/gwave-20190116-r100.ebuild new file mode 100644 index 000000000000..2b2cd9972339 --- /dev/null +++ b/sci-electronics/gwave/gwave-20190116-r100.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_REQ_USE="networking" +GUILE_COMPAT=( 2-2 ) +inherit autotools desktop flag-o-matic guile-single xdg + +DESCRIPTION="Analog waveform viewer for SPICE-like simulations" +HOMEPAGE="http://gwave.sourceforge.net" +SRC_URI="https://downloads.sourceforge.net/${PN}/gwave3/${P}.tar.gz" + +LICENSE="GPL-2" +KEYWORDS="~amd64 ~x86" +IUSE="gnuplot plotutils" +SLOT="0" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +DEPEND=" + ${GUILE_DEPS} + >=x11-libs/gtk+-2.8.0:2= + sys-libs/readline:0= + sys-libs/ncurses:0=" + +RDEPEND="${DEPEND} + sci-electronics/electronics-menu + gnuplot? ( sci-visualization/gnuplot ) + plotutils? ( media-libs/plotutils )" + +PATCHES=( + "${FILESDIR}"/${P}-multiple-little-bugfixes.patch + "${FILESDIR}"/${P}-as-needed.patch + "${FILESDIR}"/${P}-fix-configure.patch + "${FILESDIR}"/${P}-lfs-shim.patch +) + +src_prepare() { + guile-single_src_prepare + + sed -i \ + -e "s|guile-snarf|${GUILESNARF}|" \ + -e "s|guile-tools|${GUILE/guile/guile-tools}|" \ + src/Makefile.am || die + sed -i \ + -e "s|guile-tools|${GUILE/guile/guile-tools}|" \ + scheme/Makefile.am || die + + eautoreconf +} + +src_configure() { + # https://bugs.gentoo.org/886139 + append-lfs-flags + econf +} + +src_install() { + guile-single_src_install + newicon icons/wave-drag-ok.xpm gwave.xpm + make_desktop_entry gwave "Gwave" gwave "Electronics" +} diff --git a/sci-geosciences/josm-bin/josm-bin-19160.ebuild b/sci-geosciences/josm-bin/josm-bin-19160.ebuild index 6303fb8bbeed..3c2c192c743d 100644 --- a/sci-geosciences/josm-bin/josm-bin-19160.ebuild +++ b/sci-geosciences/josm-bin/josm-bin-19160.ebuild @@ -13,7 +13,7 @@ S="${WORKDIR}" LICENSE="Apache-2.0 GPL-2+ GPL-3" SLOT="0" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 ~x86" RDEPEND=">=virtual/jre-1.8" BDEPEND="app-arch/unzip" diff --git a/sci-geosciences/qmapshack/qmapshack-1.17.1_p600.ebuild b/sci-geosciences/qmapshack/qmapshack-1.17.1_p600-r1.ebuild index e35048395d1a..c884821ce0d6 100644 --- a/sci-geosciences/qmapshack/qmapshack-1.17.1_p600.ebuild +++ b/sci-geosciences/qmapshack/qmapshack-1.17.1_p600-r1.ebuild @@ -17,10 +17,11 @@ KEYWORDS="~amd64 ~x86" RDEPEND=" dev-db/sqlite - dev-libs/quazip:0=[qt6(+)] + >=dev-libs/quazip-1.3:0=[qt6] dev-qt/qt5compat:6[icu,qml] + dev-qt/qtbase[dbus,gui,icu,network,opengl,sql,widgets,xml] dev-qt/qttools:6[assistant,linguist,opengl,qdbus,qml,widgets,zstd] - dev-qt/qtwebengine:6[widgets] + dev-qt/qtwebengine:6[qml,widgets] sci-geosciences/routino sci-libs/alglib sci-libs/gdal:= diff --git a/sci-libs/linux-gpib/linux-gpib-4.3.6-r100.ebuild b/sci-libs/linux-gpib/linux-gpib-4.3.6-r100.ebuild new file mode 100644 index 000000000000..7950a9d28862 --- /dev/null +++ b/sci-libs/linux-gpib/linux-gpib-4.3.6-r100.ebuild @@ -0,0 +1,190 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +PYTHON_COMPAT=( python3_{10..12} ) + +inherit readme.gentoo-r1 autotools guile-single perl-functions python-single-r1 udev + +# Check for latest firmware version on bump +FW_PV="2008-08-10" + +DESCRIPTION="Driver library for GPIB (IEEE 488.2) hardware" +HOMEPAGE="https://linux-gpib.sourceforge.io/" +SRC_URI="https://downloads.sourceforge.net/linux-gpib/${P}.tar.gz + firmware? ( https://linux-gpib.sourceforge.io/firmware/gpib_firmware-${FW_PV}.tar.gz ) +" +S="${WORKDIR}/${PN}-user-${PV}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="pcmcia static guile perl php python tcl doc firmware" +REQUIRED_USE=" + guile? ( ${GUILE_REQUIRED_USE} ) + python? ( ${PYTHON_REQUIRED_USE} ) +" + +COMMONDEPEND=" + sys-libs/readline:= + tcl? ( dev-lang/tcl:0= ) + guile? ( ${GUILE_DEPS} ) + perl? ( dev-lang/perl:= ) + php? ( dev-lang/php:= ) + python? ( ${PYTHON_DEPS} ) + firmware? ( sys-apps/fxload ) +" +RDEPEND="${COMMONDEPEND} + acct-group/gpib + ~sci-libs/linux-gpib-modules-${PV} +" +DEPEND="${COMMONDEPEND}" +BDEPEND=" + virtual/pkgconfig + doc? ( app-text/docbook-sgml-utils ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-4.3.0-perl.patch +) + +pkg_setup() { + use guile && guile-single_pkg_setup + use perl && perl_set_version + use python && python_setup +} + +src_unpack() { + default + unpack "${WORKDIR}/${P}/${PN}-user-${PV}.tar.gz" +} + +src_prepare() { + default + + use guile && guile_bump_sources + + # We have to use --root instead of --prefix for setup.py. + # Otherwise the python files are not installed properly into site-packages. + sed -i -e \ + 's/--prefix=$(DESTDIR)$(prefix)/--root=$(DESTDIR)/g' \ + language/python/Makefile.am || die + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable static) \ + $(use_enable guile guile-binding) \ + $(use_enable perl perl-binding) \ + $(use_enable php php-binding) \ + $(use_enable python python-binding) \ + $(use_enable tcl tcl-binding) \ + $(use_enable doc documentation) +} + +src_install() { + # PYTHONDONTWRITEBYTECODE=0 is required, otherwise + # installation of the python files is skipped + FIRM_DIR="${EPREFIX}"/usr/share/usb + emake \ + DESTDIR="${ED}" \ + INSTALL_MOD_PATH="${ED}" \ + HOTPLUG_USB_CONF_DIR=/etc/hotplug/usb \ + UDEV_RULES_DIR="$(get_udevdir)"/rules.d \ + USB_FIRMWARE_DIR=${FIRM_DIR} \ + PYTHONDONTWRITEBYTECODE=0 \ + docdir="/usr/share/doc/${PF}/html" install + + use guile && guile_unstrip_ccache + + if use perl; then + einfo "Installing perl module" + cd "${S}"/language/perl || die + emake DESTDIR="${ED}" install + perl_fix_packlist + perl_delete_emptybsdir + cd "${S}" || die + fi + + echo "KERNEL==\"gpib[0-9]*\", MODE=\"0660\", GROUP=\"gpib\"" >> 99-gpib.rules || die + udev_dorules 99-gpib.rules + + dodoc doc/linux-gpib.pdf ChangeLog AUTHORS README* NEWS + + insinto /etc + newins util/templates/gpib.conf gpib.conf + newins util/templates/gpib.conf gpib.conf.example + + if use pcmcia; then + insinto /etc/pcmcia + doins "${S}"/etc/pcmcia/* + fi + + # remove .la files + find "${ED}" -name '*.la' -delete || die + + DOC_CONTENTS=" +As the udev rules were changed and refactored in this release it is +necessary to remove any manually installed pre-4.3.0 gpib udev rules files +in /etc/udev/rules.d/. The files to remove are: +\n + 99-agilent_82357a.rules\n + 99-gpib-generic.rules\n + 99-ni_usb_gpib.rules\n +\n +You need to run the 'gpib_config' utility to setup the driver before +you can use it. In order to do it automatically you can add to your +start script something like this (supposing the appropriate driver +is loaded on the startup): +\n + gpib_config --minor 0 +\n +To give a user access to the computer's gpib board you will have to add +them to the group 'gpib' or, you could change the permissions on the device +files /dev/gpib[0-15] to something you like better, using 'chmod' +\n +Edit /etc/gpib.conf to match your interface board, and any devices you wish +to open via ibfind(). See the documentation in /usr/share/linux-gpib/html for +more information. +\n +" + + if use pcmcia; then + DOC_CONTENTS+=' +For PCMCIA cards:\n +All files needed for a PCMCIA board were copied to /etc/pcmcia. +You may wish to edit the options passed to the gpib_config call in the +/etc/pcmcia/linux-gpib-pcmcia script. +You may need to send a SIGHUP signal to the cardmgr daemon to force it +to reload the files in /etc/pcmcia \(alternatively you could use your +pcmcia init.d script to restart the cardmgr, or you could just reboot\). +The driver module will be loaded as needed by the cardmgr. + +' + fi + + if use firmware; then + DOC_CONTENTS+=' +For Agilent \(HP\) 82341C and 82341D cards: +The firmware for these boards is uploaded by passing the appropriate +firmware file from /usr/share/linux-gpib/hp_82341 directory to +gpib_config using the -I or --init-data command line option. Example:\n +gpib_config --minor 0 --init-data /usr/share/linux-gpib/hp_82341/hp_82341c_fw.bin +' + fi + + readme.gentoo_create_doc +} + +pkg_postinst() { + readme.gentoo_print_elog + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/sci-libs/nlopt/nlopt-2.7.1-r100.ebuild b/sci-libs/nlopt/nlopt-2.7.1-r100.ebuild new file mode 100644 index 000000000000..55bc5573894b --- /dev/null +++ b/sci-libs/nlopt/nlopt-2.7.1-r100.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +PYTHON_COMPAT=( python3_{10..12} ) +FORTRAN_NEEDED="test" + +inherit python-r1 cmake guile-single fortran-2 + +DESCRIPTION="Non-linear optimization library" +HOMEPAGE="https://github.com/stevengj/nlopt" +SRC_URI="https://github.com/stevengj/nlopt/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="LGPL-2.1 MIT" +KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux" +SLOT="0" +IUSE="cxx guile octave python test" +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} ) python? ( ${PYTHON_REQUIRED_USE} )" +RESTRICT="!test? ( test )" + +RDEPEND=" + guile? ( ${GUILE_DEPS} ) + octave? ( >=sci-mathematics/octave-6:= ) + python? ( + ${PYTHON_DEPS} + dev-python/numpy[${PYTHON_USEDEP}] + ) + " +DEPEND="${RDEPEND}" +BDEPEND="python? ( dev-lang/swig )" + +src_prepare() { + cmake_src_prepare + + use guile && guile_bump_sources + use python && python_copy_sources +} + +src_configure() { + # MATLAB detection causes problems (as in bug 826774) if we don't + # explicitly disable it. + local mycmakeargs=( + -DNLOPT_CXX=$(usex cxx) + -DNLOPT_FORTRAN=$(usex test) + -DNLOPT_GUILE=$(usex guile) + -DNLOPT_OCTAVE=$(usex octave) + -DNLOPT_MATLAB=OFF + -DNLOPT_PYTHON=OFF + -DNLOPT_SWIG=$(usex python) + -DNLOPT_TESTS=$(usex test) + ) + + cmake_src_configure + + if use python; then + python_configure() { + local mycmakeargs=( + ${mycmakeargs[@]} + -DNLOPT_PYTHON=ON + -DINSTALL_PYTHON_DIR="$(python_get_sitedir)" + ) + + cmake_src_configure + } + + python_foreach_impl run_in_build_dir python_configure + fi +} + +src_compile() { + cmake_src_compile + + if use python; then + python_foreach_impl run_in_build_dir cmake_src_compile + fi +} + +src_test() { + do_test() { + local a f + cd "${BUILD_DIR}"/test + for a in {1..$(usex cxx 9 7)}; do + for f in {5..9}; do + ./testopt -a $a -o $f || die "algorithm $a function $f failed" + done + done + } + + do_test + + if use python; then + python_foreach_impl run_in_build_dir do_test + fi +} + +nlopt_install() { + cmake_src_install + python_optimize +} + +src_install() { + cmake_src_install + + guile_unstrip_ccache + if use python; then + python_foreach_impl run_in_build_dir nlopt_install + fi + + local r + for r in */README; do + newdoc ${r} README.$(dirname ${r}) + done +} diff --git a/sec-keys/openpgp-keys-apache-tomcat/Manifest b/sec-keys/openpgp-keys-apache-tomcat/Manifest index 4d1605629254..9e8158a58a81 100644 --- a/sec-keys/openpgp-keys-apache-tomcat/Manifest +++ b/sec-keys/openpgp-keys-apache-tomcat/Manifest @@ -1,4 +1,4 @@ DIST openpgp-keys-apache-tomcat-10.1.28-KEYS.asc 35385 BLAKE2B 1c2bba42759f901fef1cda1871c706cd5f960de4120de62361853b7e6cade3c205852215e8562e066ca675506bf1a8d424fb588dfd856cdc99bca5bcc575be06 SHA512 43d3c06e6eb776b939864a092161f70759e6f095b9b2bb7f00172cb6dca890fb88dff6f646863b882226ac490ad8082c03a84f93dfe917e7b9aab378f54612ce -DIST openpgp-keys-apache-tomcat-10.1.29-KEYS.asc 35385 BLAKE2B 1c2bba42759f901fef1cda1871c706cd5f960de4120de62361853b7e6cade3c205852215e8562e066ca675506bf1a8d424fb588dfd856cdc99bca5bcc575be06 SHA512 43d3c06e6eb776b939864a092161f70759e6f095b9b2bb7f00172cb6dca890fb88dff6f646863b882226ac490ad8082c03a84f93dfe917e7b9aab378f54612ce +DIST openpgp-keys-apache-tomcat-10.1.30-KEYS.asc 35385 BLAKE2B 1c2bba42759f901fef1cda1871c706cd5f960de4120de62361853b7e6cade3c205852215e8562e066ca675506bf1a8d424fb588dfd856cdc99bca5bcc575be06 SHA512 43d3c06e6eb776b939864a092161f70759e6f095b9b2bb7f00172cb6dca890fb88dff6f646863b882226ac490ad8082c03a84f93dfe917e7b9aab378f54612ce DIST openpgp-keys-apache-tomcat-9.0.93-KEYS.asc 14008 BLAKE2B 62f0f6bf0d89a3930df668c039c69c4b2648128079a4d420f4f0c8a1b4c228ca5c631f3d2f66745a7c4d8c85e98609dc4119bc224306d972f65ab432385a1231 SHA512 51ad85d42824d22ace66ce2eeee62df598d55efe11caad7f6e5c9d09377a80431013711a0243fb0dc1f7a4bf3aa24ed77024a311aa77277743b784e3ef6a946e -DIST openpgp-keys-apache-tomcat-9.0.94-KEYS.asc 14008 BLAKE2B 62f0f6bf0d89a3930df668c039c69c4b2648128079a4d420f4f0c8a1b4c228ca5c631f3d2f66745a7c4d8c85e98609dc4119bc224306d972f65ab432385a1231 SHA512 51ad85d42824d22ace66ce2eeee62df598d55efe11caad7f6e5c9d09377a80431013711a0243fb0dc1f7a4bf3aa24ed77024a311aa77277743b784e3ef6a946e +DIST openpgp-keys-apache-tomcat-9.0.95-KEYS.asc 14008 BLAKE2B 62f0f6bf0d89a3930df668c039c69c4b2648128079a4d420f4f0c8a1b4c228ca5c631f3d2f66745a7c4d8c85e98609dc4119bc224306d972f65ab432385a1231 SHA512 51ad85d42824d22ace66ce2eeee62df598d55efe11caad7f6e5c9d09377a80431013711a0243fb0dc1f7a4bf3aa24ed77024a311aa77277743b784e3ef6a946e diff --git a/sec-keys/openpgp-keys-apache-tomcat/openpgp-keys-apache-tomcat-10.1.29.ebuild b/sec-keys/openpgp-keys-apache-tomcat/openpgp-keys-apache-tomcat-10.1.30.ebuild index 7481a3964076..7481a3964076 100644 --- a/sec-keys/openpgp-keys-apache-tomcat/openpgp-keys-apache-tomcat-10.1.29.ebuild +++ b/sec-keys/openpgp-keys-apache-tomcat/openpgp-keys-apache-tomcat-10.1.30.ebuild diff --git a/sec-keys/openpgp-keys-apache-tomcat/openpgp-keys-apache-tomcat-9.0.94.ebuild b/sec-keys/openpgp-keys-apache-tomcat/openpgp-keys-apache-tomcat-9.0.95.ebuild index 57c3e1749269..57c3e1749269 100644 --- a/sec-keys/openpgp-keys-apache-tomcat/openpgp-keys-apache-tomcat-9.0.94.ebuild +++ b/sec-keys/openpgp-keys-apache-tomcat/openpgp-keys-apache-tomcat-9.0.95.ebuild diff --git a/sec-keys/openpgp-keys-strace/Manifest b/sec-keys/openpgp-keys-strace/Manifest new file mode 100644 index 000000000000..1b497f6ea033 --- /dev/null +++ b/sec-keys/openpgp-keys-strace/Manifest @@ -0,0 +1 @@ +DIST openpgp-keys-strace-20151021-ldv.asc 18604 BLAKE2B 6ebc04c411fab0748a781f6957ca867f9fa947f5581aab0337ddf6ab6e1cae929426a0d2bd0b60b62e7c4689f3bfbbb24096fd79c6e9d57777e87b8f91266037 SHA512 42ee6e993c2f0e53ddd220c858c2d14047842497e9b716ea473195a84ca154ecae2581879f134665cb58f52a58a145b9ce89b5ba3feb0112a9c63bb4f20ba468 diff --git a/sec-keys/openpgp-keys-strace/metadata.xml b/sec-keys/openpgp-keys-strace/metadata.xml new file mode 100644 index 000000000000..a951b078ee91 --- /dev/null +++ b/sec-keys/openpgp-keys-strace/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <upstream> + <remote-id type="github">strace/strace</remote-id> + <remote-id type="gitlab">strace/strace</remote-id> + <remote-id type="cpe">cpe:/a:strace_project:strace</remote-id> + </upstream> +</pkgmetadata> diff --git a/sec-keys/openpgp-keys-strace/openpgp-keys-strace-20151021.ebuild b/sec-keys/openpgp-keys-strace/openpgp-keys-strace-20151021.ebuild new file mode 100644 index 000000000000..bf7acc23d4a6 --- /dev/null +++ b/sec-keys/openpgp-keys-strace/openpgp-keys-strace-20151021.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="OpenPGP keys used by the strace project" +HOMEPAGE="https://strace.io/" +# Mirrored from https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x296d6f29a020808e8717a8842db5bd89a340aeb7 +# on 2024-09-18. +SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-ldv.asc" +S=${WORKDIR} + +LICENSE="public-domain" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" + +src_install() { + local files=( ${A} ) + insinto /usr/share/openpgp-keys + newins - strace.asc < <(cat "${files[@]/#/${DISTDIR}/}" || die) +} diff --git a/sys-apps/bfs/Manifest b/sys-apps/bfs/Manifest index e9167cc4a2bf..aaed2b1da131 100644 --- a/sys-apps/bfs/Manifest +++ b/sys-apps/bfs/Manifest @@ -1,2 +1,3 @@ DIST bfs-3.3.1.tar.gz 262841 BLAKE2B bc848f4daa98172531e6c13100dcd1f3b722f4282acc5fd3677b2c4a83effa49e681d0cac3fa2c104fd1db03543c4f0a6ca9bc494ee3737d0c927f0170171eac SHA512 e31153ef244483e4337bd2bb64fc4ddf55d56048b5af54003a917287868114c81befb771b6cfc7473e384d3157b24cbec7ca27336362a438c7803eb7fc85d8d3 DIST bfs-4.0.1.tar.gz 272678 BLAKE2B c25165b469ea52ef2e0b73ae0cbcef485a739d25cd3c49d25cd0543ab97009b256637d0dab5cb1ce01c3da7ab77519ac6a5b9cff36634c81415ec309d46c7d1d SHA512 0697aab71e2101638fbb5923ec57b9439d6fdd212dccd2f1b90cd4a1bc9c72acca5dca92e9aa6efef06696b324cb6754784602064f35b529ff97d1933672d73c +DIST bfs-4.0.2.tar.gz 274986 BLAKE2B d87dd646a0c6bced3881426f8a82501e9a8ab19b0d4a249fd44d774cac9fd37a7a0cb01551a2af343b4f0c64f7b9e926cee8db67f5217bd39dd469a85b0b434e SHA512 a3ce3ccee27576a4a0ffb2bd46635aaabc5718cbe53eef5da52bc510dcf629a613802d0b2f95da47d009873e6ab1b87eb84087b30c227b27676bb14cac9f6e97 diff --git a/sys-apps/bfs/bfs-4.0.2.ebuild b/sys-apps/bfs/bfs-4.0.2.ebuild new file mode 100644 index 000000000000..f98d49a5b7c4 --- /dev/null +++ b/sys-apps/bfs/bfs-4.0.2.ebuild @@ -0,0 +1,59 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo flag-o-matic toolchain-funcs + +DESCRIPTION="Breadth-first version of the UNIX find command" +HOMEPAGE="https://tavianator.com/projects/bfs.html" +SRC_URI="https://github.com/tavianator/bfs/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="0BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc" +IUSE="acl caps debug io-uring selinux unicode" + +DEPEND=" + acl? ( virtual/acl ) + caps? ( sys-libs/libcap ) + io-uring? ( sys-libs/liburing:= ) + selinux? ( sys-libs/libselinux ) + unicode? ( dev-libs/oniguruma:= ) +" +RDEPEND="${DEPEND}" + +QA_CONFIG_IMPL_DECL_SKIP=( + # Not available on Linux + acl_is_trivial_np acl_trivial fdclosedir getdents getprogname + posix_spawn_file_actions_addfchdir getmntinfo posix_getdents strtofflags + # Seems to be in POSIX 2024 but not yet in ncurses? + tcgetwinsize +) + +src_configure() { + tc-export CC PKG_CONFIG + use debug || append-cppflags -DNDEBUG + + edo ./configure \ + $(use_with acl libacl) \ + $(use_with caps libcap) \ + $(use_with selinux libselinux) \ + $(use_with io-uring liburing) \ + $(use_with unicode oniguruma) \ + V=1 +} + +src_compile() { + emake V=1 +} + +src_test() { + # -n check gets confused so need manual src_test definition? + emake V=1 check +} + +src_install() { + emake V=1 DESTDIR="${D}" install + einstalldocs +} diff --git a/sys-apps/fwupd-efi/fwupd-efi-1.6-r1.ebuild b/sys-apps/fwupd-efi/fwupd-efi-1.6-r1.ebuild new file mode 100644 index 000000000000..7406eca63ae0 --- /dev/null +++ b/sys-apps/fwupd-efi/fwupd-efi-1.6-r1.ebuild @@ -0,0 +1,64 @@ +# Copyright 2021-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) + +inherit meson python-any-r1 secureboot + +DESCRIPTION="EFI executable for fwupd" +HOMEPAGE="https://fwupd.org" + +if [[ ${PV} = *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/fwupd/fwupd-efi.git" +else + SRC_URI="https://github.com/fwupd/${PN}/releases/download/${PV}/${P}.tar.xz" + KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" +fi + +LICENSE="LGPL-2.1+" +SLOT="0" + +# uswid is used as a CLI tool, hence no Pythonic stuff +BDEPEND="$(python_gen_any_dep ' + dev-python/pefile[${PYTHON_USEDEP}] + ') + sys-apps/uswid + virtual/pkgconfig" + +DEPEND=">=sys-boot/gnu-efi-3.0.18" + +python_check_deps() { + python_has_version "dev-python/pefile[${PYTHON_USEDEP}]" +} + +pkg_setup() { + python-any-r1_pkg_setup + secureboot_pkg_setup +} + +src_prepare() { + default + + python_fix_shebang "${S}/efi" +} + +src_configure() { + local emesonargs=( + -Defi-libdir="${EPREFIX}"/usr/$(get_libdir) + -Defi_sbat_distro_id="gentoo" + -Defi_sbat_distro_summary="Gentoo GNU/Linux" + -Defi_sbat_distro_pkgname="${PN}" + -Defi_sbat_distro_version="${PVR}" + -Defi_sbat_distro_url="https://packages.gentoo.org/packages/${CATEGORY}/${PN}" + ) + + meson_src_configure +} + +src_install() { + meson_src_install + secureboot_auto_sign +} diff --git a/sys-apps/fwupd-efi/metadata.xml b/sys-apps/fwupd-efi/metadata.xml index 771d90fee052..48dbe6113cec 100644 --- a/sys-apps/fwupd-efi/metadata.xml +++ b/sys-apps/fwupd-efi/metadata.xml @@ -1,7 +1,14 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <!-- maintainer-needed --> + <maintainer type="person" proxied="yes"> + <email>johnmh@johnmh.me</email> + <name>John M. Harris, Jr.</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> <upstream> <bugs-to>https://github.com/fwupd/fwupd-efi/issues</bugs-to> <remote-id type="github">fwupd/fwupd-efi</remote-id> diff --git a/sys-apps/fwupd/Manifest b/sys-apps/fwupd/Manifest index 7513305fec6b..4c948d347a7a 100644 --- a/sys-apps/fwupd/Manifest +++ b/sys-apps/fwupd/Manifest @@ -1,2 +1,3 @@ DIST fwupd-1.9.20.tar.xz 4290676 BLAKE2B da9c47df676fc6da059e6a2df60891ff3d9141280ee3be58079c7e07ea785e3129aa5140520dcb87cbd8df7833bc43c201217fac54099133cbab0143fc5dfae8 SHA512 3854421b99e4f6869f840bdf601d3fb61a60ef2875f829858809631f22d24060184c424ef7406ff7ede50ad7a2bcd8b93793244c84d88d2269776f0c26846ee9 DIST fwupd-1.9.23.tar.xz 4300104 BLAKE2B d084244f99b5edccf4bf6a783846623876e9b4344c05bfe3cd412235bcde63d1f36db5528572e371fd0bde27f72c2bd61ba7b6472504ade4c9a068a00e34ca4e SHA512 379adcc79d40795f4895749bc944689ffee6fadc7c3dd1974df98c15120ca47d020ad4efabc68d0371cb36ebd3b549698c05a81bee0a673745a867bb32c4eeb5 +DIST fwupd-1.9.24.tar.xz 4305048 BLAKE2B 5ac7bbc5cdcee13a39fe25cd5b83dfbb9615e6349cd39e8b25cc654c0318870de603c1f6ce550da6662d3f9cd7d275cf6254058f6b71dcb9f7916329147ab771 SHA512 2f9935bbfc3ffc49bf0939a75dd52861eea9108d8f7026dbcdf4c07ad234f70f0b1cb6740eefe555dc2a49aba1ea4d65a78427aad7a0ba9de1fe318734255bfe diff --git a/sys-apps/fwupd/fwupd-1.9.24.ebuild b/sys-apps/fwupd/fwupd-1.9.24.ebuild new file mode 100644 index 000000000000..27af56f8a6be --- /dev/null +++ b/sys-apps/fwupd/fwupd-1.9.24.ebuild @@ -0,0 +1,210 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) + +inherit meson python-single-r1 vala udev xdg + +DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable" +HOMEPAGE="https://fwupd.org" +SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz" + +LICENSE="LGPL-2.1+" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" +IUSE="amdgpu amt +archive bash-completion bluetooth cbor elogind fastboot flashrom gnutls gtk-doc +gusb introspection logitech lzma minimal modemmanager nvme policykit spi +sqlite synaptics systemd test test-full tpm uefi" +REQUIRED_USE="${PYTHON_REQUIRED_USE} + ^^ ( elogind minimal systemd ) + fastboot? ( gusb ) + logitech? ( gusb ) + minimal? ( !introspection ) + modemmanager? ( gusb ) + spi? ( lzma ) + synaptics? ( gnutls ) + test? ( archive gusb ) + test-full? ( test ) + uefi? ( gnutls ) +" +RESTRICT="!test? ( test )" + +BDEPEND="$(vala_depend) + $(python_gen_cond_dep ' + dev-python/jinja[${PYTHON_USEDEP}] + ') + >=dev-build/meson-0.60.0 + virtual/pkgconfig + gtk-doc? ( + $(python_gen_cond_dep ' + >=dev-python/markdown-3.2[${PYTHON_USEDEP}] + ') + >=dev-util/gi-docgen-2021.1 + ) + bash-completion? ( >=app-shells/bash-completion-2.0 ) + introspection? ( dev-libs/gobject-introspection ) + test? ( + net-libs/gnutls[tools] + test-full? ( dev-util/umockdev ) + ) +" +COMMON_DEPEND="${PYTHON_DEPS} + >=app-arch/gcab-1.0 + app-arch/xz-utils + >=dev-libs/glib-2.68:2 + >=dev-libs/json-glib-1.6.0 + >=dev-libs/libgudev-232:= + >=dev-libs/libjcat-0.1.4[gpg,pkcs7] + >=dev-libs/libxmlb-0.3.6:=[introspection?] + $(python_gen_cond_dep ' + dev-python/pygobject:3[cairo,${PYTHON_USEDEP}] + ') + >=net-misc/curl-7.62.0 + archive? ( app-arch/libarchive:= ) + cbor? ( >=dev-libs/libcbor-0.7.0:= ) + elogind? ( >=sys-auth/elogind-211 ) + flashrom? ( >=sys-apps/flashrom-1.2-r3 ) + gnutls? ( >=net-libs/gnutls-3.6.0 ) + gusb? ( >=dev-libs/libgusb-0.3.8[introspection?] ) + logitech? ( dev-libs/protobuf-c:= ) + lzma? ( app-arch/xz-utils ) + modemmanager? ( net-misc/modemmanager[mbim,qmi] ) + policykit? ( >=sys-auth/polkit-0.114 ) + sqlite? ( dev-db/sqlite ) + systemd? ( >=sys-apps/systemd-211 ) + tpm? ( app-crypt/tpm2-tss:= ) + uefi? ( + sys-apps/fwupd-efi + sys-boot/efibootmgr + sys-fs/udisks + sys-libs/efivar + ) +" +RDEPEND=" + ${COMMON_DEPEND} + sys-apps/dbus +" + +DEPEND=" + ${COMMON_DEPEND} + x11-libs/pango[introspection] + amdgpu? ( + sys-kernel/linux-headers + x11-libs/libdrm[video_cards_amdgpu] + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.9.6-fragile_tests.patch +) + +pkg_pretend() { + if [[ ${MERGE_TYPE} != buildonly ]]; then + if use test-full && has sandbox ${FEATURES}; then + ewarn "Certain ${PN} tests are fragile with sandboxing enabled," + ewarn "see https://github.com/fwupd/fwupd/issues/1414." + ewarn "When in doubt, emerge ${PN} with USE=-test-full." + fi + fi +} + +src_prepare() { + default + + vala_setup + + sed -e "/install_dir.*'doc'/s/doc/gtk-doc/" \ + -i docs/meson.build || die + + python_fix_shebang "${S}"/contrib/*.py +} + +src_configure() { + local plugins=( + -Dplugin_gpio="enabled" + $(meson_feature amdgpu plugin_amdgpu) + $(meson_feature amt plugin_intel_me) + $(meson_feature fastboot plugin_fastboot) + $(meson_feature flashrom plugin_flashrom) + $(meson_feature gusb plugin_uf2) + $(meson_feature logitech plugin_logitech_bulkcontroller) + $(meson_feature modemmanager plugin_modem_manager) + $(meson_feature nvme plugin_nvme) + $(meson_use spi plugin_intel_spi) + $(meson_feature synaptics plugin_synaptics_mst) + $(meson_feature synaptics plugin_synaptics_rmi) + $(meson_feature tpm plugin_tpm) + $(meson_feature uefi plugin_uefi_capsule) + $(meson_use uefi plugin_uefi_capsule_splash) + $(meson_feature uefi plugin_uefi_pk) + ) + if use ppc64 || use riscv ; then + plugins+=( -Dplugin_msr="disabled" ) + fi + + local emesonargs=( + --localstatedir "${EPREFIX}"/var + -Dbuild="$(usex minimal standalone all)" + -Dconsolekit="disabled" + -Dcurl="enabled" + -Defi_binary="false" + -Dman="true" + -Dsupported_build="enabled" + -Dsystemd_unit_user="" + -Dudevdir="${EPREFIX}$(get_udevdir)" + $(meson_feature archive libarchive) + $(meson_use bash-completion bash_completion) + $(meson_feature bluetooth bluez) + $(meson_feature cbor) + $(meson_feature elogind) + $(meson_feature gnutls) + $(meson_feature gtk-doc docs) + $(meson_feature gusb) + $(meson_feature lzma) + $(meson_feature introspection) + $(meson_feature policykit polkit) + $(meson_feature sqlite) + $(meson_feature systemd) + $(meson_use test tests) + $(meson_use test-full) + + ${plugins[@]} + ) + use uefi && emesonargs+=( -Defi_os_dir="gentoo" ) + export CACHE_DIRECTORY="${T}" + meson_src_configure +} + +src_test() { + LC_ALL="C" meson_src_test +} + +src_install() { + meson_src_install + + if ! use minimal ; then + newinitd "${FILESDIR}"/${PN}-r2 ${PN} + fi + + if use test; then + # Preventing tests from being installed in the first place is a moving target, + # just axe them all afterwards. + rm -rf \ + "${ED}"/usr/libexec/installed-tests \ + "${ED}"/usr/share/fwupd/device-tests \ + "${ED}"/usr/share/fwupd/host-emulate.d/thinkpad-p1-iommu.json.gz \ + "${ED}"/usr/share/fwupd/remotes.d/fwupd-tests.conf \ + "${ED}"/usr/share/installed-tests \ + || die + fi +} + +pkg_postinst() { + xdg_pkg_postinst + use minimal || udev_reload +} + +pkg_postrm() { + xdg_pkg_postrm + use minimal || udev_reload +} diff --git a/sys-apps/fwupd/metadata.xml b/sys-apps/fwupd/metadata.xml index b19370c03702..f6aae5585891 100644 --- a/sys-apps/fwupd/metadata.xml +++ b/sys-apps/fwupd/metadata.xml @@ -1,7 +1,14 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <!-- maintainer-needed --> + <maintainer type="person" proxied="yes"> + <email>johnmh@johnmh.me</email> + <name>John M. Harris, Jr.</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> <use> <flag name="archive">Use <pkg>app-arch/libarchive</pkg> for archives support</flag> <flag name="amdgpu">Build and install AMD dGPU (Navi3x and above) plugin</flag> diff --git a/sys-apps/gawk/Manifest b/sys-apps/gawk/Manifest index 6021ab2da4cd..a80da9eb3138 100644 --- a/sys-apps/gawk/Manifest +++ b/sys-apps/gawk/Manifest @@ -2,3 +2,5 @@ DIST gawk-5.2.2.tar.xz 3402872 BLAKE2B 49dd69d3e2414867d60fe42b74b39bc6858114aee DIST gawk-5.2.2.tar.xz.sig 488 BLAKE2B ad737580d7eeb556187a3eeb269decb484398ca91b0fbf08da7f78bba92328ca2fb566b00f8e880fb7c5f0f956e49f8ab9fddc73209902c420666d5413e8a467 SHA512 563911c3771feddf64810ef2480705fd470c90380c0e258940cedeef3f15d594ef657ddab267a6d958321333d466b77c9b83be2392549c959245324950fb32ed DIST gawk-5.3.0.tar.xz 3436180 BLAKE2B 1bab754626a51679e4d6fe4552bc965f402a51d176eab30686bf19c74085fd15507b51514c3c46d38f68d3e98da4326c138411abe12e4d8793cec617b2533f3c SHA512 c274a62c7420e7b7769b8ed94db40024bd5917ff49bd50a77ad6df1f16ecf116968aaf85da94015479466bf5570b370b6fdd197f95212ae0c3509dfcb7d9e35a DIST gawk-5.3.0.tar.xz.sig 488 BLAKE2B 9d35eca94424cc39bb52b0b790e0db0b9ee51099c40da0a8be7bc60450d227735ba51dcfc10a08f6765d2037054cb9324f0fba100ea2ad08cf56dac1e2c11ac0 SHA512 b0fd75375bee6ca113bb99b07a868729bb90a50d06bc4ff124603594cd9ba564433f69a26e8d01c30f4e4fbfb70ecad2ffa14ed93142b9a1aab2e38ae71b7903 +DIST gawk-5.3.1.tar.xz 3510032 BLAKE2B be9132324344c0b052e954e004a942ff7c6b14b86b73cda491d7a33485f60341be4d8da1a06d1d7a27445b9b39a528bcce3eee9c2a3f8756de21bdc57a33f54d SHA512 c6b4c50ce565e6355ca162955072471e37541c51855c0011e834243a7390db8811344b0c974335844770e408e1f63d72d0d81459a081c392e0245c726019eaff +DIST gawk-5.3.1.tar.xz.sig 488 BLAKE2B 2abafbb965912a194d047bed3ac1ef33a2b44dce0bc4b1a83a6ca3e2ecf676da0ad8333bb3817f0f32c7d67ab8662dc6086c9e1d6f2185a93d786390197fc643 SHA512 3e13b1bd598b7d4c715c802dcc9db298aeab12721620692f9dd76d3941fdfd87381f660c93be5cc04b6cd7378a6464b9033c93419dfcb514dcc33da8d0d9f502 diff --git a/sys-apps/gawk/gawk-5.3.1.ebuild b/sys-apps/gawk/gawk-5.3.1.ebuild new file mode 100644 index 000000000000..e4c14b19931a --- /dev/null +++ b/sys-apps/gawk/gawk-5.3.1.ebuild @@ -0,0 +1,136 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +#GAWK_IS_BETA=yes + +DESCRIPTION="GNU awk pattern-matching language" +HOMEPAGE="https://www.gnu.org/software/gawk/gawk.html" + +if [[ ${GAWK_IS_BETA} == yes || ${PV} == *_beta* ]] ; then + if [[ ${PV} == *_beta* ]] ; then + # Beta versioning is sometimes for the release prior, e.g. + # 5.2.1_beta is labelled upstream as 5.2.0b. + MY_PV=${PV/_beta/b} + MY_PV=$(ver_cut 1-2 ${MY_PV}).$(($(ver_cut 3 ${MY_PV}) - 1))$(ver_cut 4- ${MY_PV}) + MY_P=${PN}-${MY_PV} + + S="${WORKDIR}"/${MY_P} + else + MY_P=${P} + fi + + SRC_URI="https://www.skeeve.com/gawk/${MY_P}.tar.gz" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gawk.asc + inherit verify-sig + + SRC_URI="mirror://gnu/gawk/${P}.tar.xz" + SRC_URI+=" verify-sig? ( mirror://gnu/gawk/${P}.tar.xz.sig )" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-3+" +SLOT="0" +# While tempting to enable mpfr by default as e.g. Fedora do, as of 5.2.x, +# MPFR support is "on parole" and may be removed: +# https://www.gnu.org/software/gawk/manual/html_node/MPFR-On-Parole.html. +IUSE="mpfr pma nls readline" + +RDEPEND=" + mpfr? ( + dev-libs/gmp:= + dev-libs/mpfr:= + ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + >=sys-apps/texinfo-7.1 + >=sys-devel/bison-3.5.4 + nls? ( sys-devel/gettext ) +" + +if [[ ${GAWK_IS_BETA} != yes ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-gawk )" +fi + +src_prepare() { + default + + # Use symlinks rather than hardlinks, and disable version links + sed -i \ + -e '/^LN =/s:=.*:= $(LN_S):' \ + -e '/install-exec-hook:/s|$|\nfoo:|' \ + Makefile.in doc/Makefile.in || die + + # bug #413327 + sed -i '/^pty1:$/s|$|\n_pty1:|' test/Makefile.in || die + + # Fix standards conflict on Solaris + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i \ + -e '/\<_XOPEN_SOURCE\>/s/1$/600/' \ + -e '/\<_XOPEN_SOURCE_EXTENDED\>/s/1//' \ + extension/inplace.c || die + fi +} + +src_configure() { + # README says gawk may not work properly if built with non-Bison. + # We already BDEPEND on Bison, so just unset YACC rather than + # guessing if we need to do yacc.bison or bison -y. + unset YACC + + local myeconfargs=( + --cache-file="${S}"/config.cache + --libexec='$(libdir)/misc' + $(use_with mpfr) + $(use_enable nls) + $(use_enable pma) + $(use_with readline) + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + # Automatic dodocs barfs + rm -rf README_d || die + + default + + # Install headers + insinto /usr/include/awk + doins *.h + rm "${ED}"/usr/include/awk/config.h || die +} + +pkg_postinst() { + # Symlink creation here as the links do not belong to gawk, but to any awk + if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then + eselect awk update ifunset + else + local l + for l in "${EROOT}"/usr/share/man/man1/gawk.1* "${EROOT}"/usr/bin/gawk ; do + if [[ -e ${l} ]] && ! [[ -e ${l/gawk/awk} ]] ; then + ln -s "${l##*/}" "${l/gawk/awk}" || die + fi + done + + if ! [[ -e ${EROOT}/bin/awk ]] ; then + # /bin might not exist yet (stage1) + [[ -d "${EROOT}/bin" ]] || mkdir "${EROOT}/bin" || die + + ln -s "../usr/bin/gawk" "${EROOT}/bin/awk" || die + fi + fi +} + +pkg_postrm() { + if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then + eselect awk update ifunset + fi +} diff --git a/sys-apps/mawk/Manifest b/sys-apps/mawk/Manifest index 1688f8fc0cc0..30d236fd37d1 100644 --- a/sys-apps/mawk/Manifest +++ b/sys-apps/mawk/Manifest @@ -8,3 +8,5 @@ DIST mawk-1.3.4-20240819.tgz 421586 BLAKE2B cc80703428d50d3eb1ba681aedadc3c0136e DIST mawk-1.3.4-20240819.tgz.asc 729 BLAKE2B 59139459eb51853d3182858bc3d5db961c1b676bf7e219aff65a45bda6b32e8855502231200d9bc63b15181bce400bf883463877cb3546a237d9622681c9f650 SHA512 0e736aea177a0c28808d47dfb459502eefcccfc6f2129a0bdd3c6571d807a5bb49ef554b8169dc2c6f60c6b544bd7d490ab27ec7534846d1b6b736d98ab8fd4f DIST mawk-1.3.4-20240827.tgz 423080 BLAKE2B 3844a0240e55b5287397763634ed16fb292919a60228fbb9e7d73e347b9ddef7a206d4207f45d1042fad87d5af62c2bb339dfa5bafc788c2aa854034fccc47f6 SHA512 29d4f4a2ef7bb75b3ac60a3bf1c9d33b09efb842b36b7106d5e76736fde2de5c5647170aa5378f4e1232e2495c064dffae6698bfbdf4546768db457b62fb2012 DIST mawk-1.3.4-20240827.tgz.asc 729 BLAKE2B d1958ba9d04d249c744f48430ccb9deb34b0bbad5e733e2f720269d128f4f2916e6acc69fdfdd7b6b66d755a1b800847da7befa18aa9f1417ea44014e7adf6e3 SHA512 5930fad06cc53de14ff8eb14548b4a3aadf47ac93f2a7122c74db49583fe2d0eb07c29bc0082870e2760c7250c26e0e336fbba918a7c54cef6f75caf0b600357 +DIST mawk-1.3.4-20240905.tgz 423935 BLAKE2B 7c15dddeb4f7afa5a94eb6c3a1f3d84be0e6ccbb56e6ba337f44432a272fd1cf6b162ccfb520f6aeb2393b174a89ba945bb6a325c584721a2ea5b89c073851de SHA512 769ce73112cb912ea82ed18f9a106209c4284a32ede41a4d8af64e862857323a9515551a4e7420d0c0fb6ea5773340771c7d68b17794fb9a810d39783fbdc1d2 +DIST mawk-1.3.4-20240905.tgz.asc 729 BLAKE2B d4db8a008cac7e0a274de689ebef9fe5d7e820937cf61f9bfcac5bfeeff6e70ab920d759e750c3f7248c63876cfa4230e51b0a50b213c91e85c7e59da3e03b24 SHA512 f30f560aeb58dfcb878c2a2d756a88d68c3ed62c3232e7ad9f20469a3bd1fae667276a20a0866dd481f08830551dee6368194421e9e0370d9daa33c520230c16 diff --git a/sys-apps/mawk/mawk-1.3.4_p20240905.ebuild b/sys-apps/mawk/mawk-1.3.4_p20240905.ebuild new file mode 100644 index 000000000000..b69e235b7eef --- /dev/null +++ b/sys-apps/mawk/mawk-1.3.4_p20240905.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc +inherit toolchain-funcs verify-sig + +MY_P="${P/_p/-}" +DESCRIPTION="An (often faster than gawk) awk-interpreter" +HOMEPAGE="https://invisible-island.net/mawk/mawk.html" +SRC_URI="https://invisible-mirror.net/archives/${PN}/${MY_P}.tgz" +SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${MY_P}.tgz.asc )" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + +BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-thomasdickey-20240114 )" + +DOCS=( ACKNOWLEDGMENT CHANGES README ) + +QA_CONFIG_IMPL_DECL_SKIP=( + arc4random # missing on musl but it handles it fine + arc4random_push # doesn't exist on Linux +) + +src_configure() { + tc-export BUILD_CC + econf +} + +src_install() { + default + + exeinto /usr/share/doc/${PF}/examples + doexe examples/* + docompress -x /usr/share/doc/${PF}/examples +} + +pkg_postinst() { + if has_version app-admin/eselect && has_version app-eselect/eselect-awk; then + eselect awk update ifunset + fi +} + +pkg_postrm() { + if has_version app-admin/eselect && has_version app-eselect/eselect-awk; then + eselect awk update ifunset + fi +} diff --git a/sys-apps/openrc/Manifest b/sys-apps/openrc/Manifest index 628d1dd4d74f..d7bdb25a12b0 100644 --- a/sys-apps/openrc/Manifest +++ b/sys-apps/openrc/Manifest @@ -1,4 +1,4 @@ DIST openrc-0.48.tar.gz 250249 BLAKE2B 4d99d0562e268ad747562ee39cae645ea9221a705fb344969388d2f5f8e0597e62c12bda9dffe0d98eab6437aac0af2c873ad082ec8db01cd61e48b8637f421b SHA512 c67c0a1c87f44a6fde0a7634fcdff0683a821eef5183a4f3e1ef850d04dd7f6c23ec0a72b4a76d9f6c08cb34e362d5e204937caec549eadc638c286c2389c5ee DIST openrc-0.53.1.tar.gz 251312 BLAKE2B c44570b489621ac097f057dd25a9a7fd6274fc68c987d548a8c7ab49068bc2025375527c97b82b919ff955d27ce8e4110d6e8f0472abfd83b6911ea9e501198d SHA512 f4e53c28c62b8f184935387d3d8b30dea5953b28d7e50dc00a2b48d84fa3b0c9c19d27a9cdf0b9879b4e4b2a3f91604b893ad5178680e7af0bbbdbd00e108537 DIST openrc-0.54.2.tar.gz 249992 BLAKE2B 46f7439c9cc264dee19ce3b2ae7d3ac892d302242b9de0855afdfc368bed8bea5b34d95d46327ce3ce796b5dff8e3d30f110249d60ed408a6d6d9a085c7d1c7d SHA512 6a4a9e7d84a5b4f1aeb78a271e69560b1d9e621392b36d26997727d75099f3628e7712f09b4e5393bc588eca41b375e2777a307d8b03ce26f45ed297537c9fd6 -DIST openrc-0.55.tar.gz 249860 BLAKE2B 0d7350a95aee7fd3b8df76cad01e0eac4d3f1f8aaf56aa5a7a01d2fcb21f4aca382eb9472bdced4738571947c232a81689fc8f5dd6289457132cc49497ee3b3c SHA512 3c317efd7fc412db789d1170c37caf127c74194fb3d2327112e85a827be072b1ec86620673bf3e96d72d5e54b38be8366b676169e4b746399646dfe89fefd625 +DIST openrc-0.55.1.tar.gz 249926 BLAKE2B 058c4105ee8198e854c6fd23a3074f6ca4470ffe1faf66ee948e088b859ca55d163e16390ad4dbdd97ff4c1e9bc829fe791e4d96c5ac31f30022dcf91d5179cf SHA512 a06018ef98870bf42f209cdbcb1c578864653929df3d5954ce27adb28fa11c8a2fe0374fe6e10b03a957f7f513b3d64a94800b40f5ab104695d1ed2bfc91615d diff --git a/sys-apps/openrc/openrc-0.55.ebuild b/sys-apps/openrc/openrc-0.55.1.ebuild index ac2096513430..ac2096513430 100644 --- a/sys-apps/openrc/openrc-0.55.ebuild +++ b/sys-apps/openrc/openrc-0.55.1.ebuild diff --git a/sys-apps/pcmciautils/Manifest b/sys-apps/pcmciautils/Manifest index 63bc74b18f3d..500a901487bc 100644 --- a/sys-apps/pcmciautils/Manifest +++ b/sys-apps/pcmciautils/Manifest @@ -1,3 +1,3 @@ DIST pcmciautils_018-14.debian.tar.xz 11516 BLAKE2B f023fce015a71a09b4b012c0d7396bc8eb426ccbd3c92e0ce7bd46c5f5d2510d0eae5a296300017e316fef1a6471d0040e8f84afc989d7f5fba734fdd5e11e1e SHA512 e5c98cbe54da296a8de05916f2e987f0dd5668e39a65f771e46aa5b1a04aa4821c3c5d0c94b0c9bede26df011f6a441be91f3c49105ceaca631daf013fbd6430 -DIST pcmciautils_018-8.debian.tar.gz 11213 BLAKE2B cf28ecf71ebfd5c4ad7d882cbadab71b787f407adb2d20258cdc1157ca7d542bf398ff09207037d1d6e933d43e477b50b28ca3f0ac0e557fbaefb9f31656843e SHA512 8a00d776e208b43d01fe22b9d4e889bc1b2c5982aa1bf225bdd613ffb0f5b37f5266ccc1cb91df9ac49c4ee3e3653ebb29807b61fff53c585e2cfed5aa2cd9e9 +DIST pcmciautils_018-18.debian.tar.xz 12184 BLAKE2B 88d6d394dddd6973f9d18d1437a541851606a5f7ad5fe2cb1279cbe79bfb624e2d68829dc3733e13b90bc6d45e48ad29ea7b68ddde8f2d597196a2badd1c3d19 SHA512 2081bf550f16aa9e976ea4f8e88c7a3519dfe16935a0165563e070652791ef1ee89bf18e7bdf1fff64027cea2663e1c2531c1802149a47381f51a3764079e442 DIST pcmciautils_018.orig.tar.gz 48516 BLAKE2B 0b197cdd7d0940e5c0eee2da961f0f4dd972a3178ba5d07a6492185d0ab156cd61f5343c8f9d812cff402f04af76a15baa3db564d14317d3817e5325dd8811fb SHA512 f0af1fc6155686ae61c1c85a6451b032088a3880dfbc05c1d1ed33ca8e975745f9d4bedb0f3ee0a1252461aa008bed8014c73ff850cddd89d930524a6d68d47d diff --git a/sys-apps/pcmciautils/pcmciautils-018_p8-r3.ebuild b/sys-apps/pcmciautils/pcmciautils-018_p18.ebuild index c7f6111bb77d..b72fbf77e118 100644 --- a/sys-apps/pcmciautils/pcmciautils-018_p8-r3.ebuild +++ b/sys-apps/pcmciautils/pcmciautils-018_p18.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 inherit flag-o-matic linux-info toolchain-funcs udev @@ -10,13 +10,15 @@ MY_PV=${PV%_p*} DESCRIPTION="PCMCIA userspace utilities for Linux" HOMEPAGE="https://packages.qa.debian.org/pcmciautils" -SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${MY_PV}.orig.tar.gz - mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${MY_PV}-${DEB_REV}.debian.tar.gz" +SRC_URI=" + mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${MY_PV}.orig.tar.gz + mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${MY_PV}-${DEB_REV}.debian.tar.xz +" S="${WORKDIR}"/${PN}-${MY_PV} LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64 arm ~arm64 ~loong ppc ~riscv x86" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~riscv ~x86" IUSE="debug staticsocket" RDEPEND="sys-apps/kmod[tools]" @@ -27,8 +29,9 @@ DEPEND="${RDEPEND} PATCHES=( "${WORKDIR}"/debian/patches/no-modprobe-rules.patch "${WORKDIR}"/debian/patches/remove-libsysfs-dep.patch - "${FILESDIR}"/${P}-flex-2.6.3-fix.patch + "${FILESDIR}"/${PN}-018_p8-flex-2.6.3-fix.patch "${FILESDIR}"/${PN}-018_p8-musl-unsigned-type.patch + "${WORKDIR}"/debian/patches/parallel-build.patch ) pkg_setup() { @@ -59,6 +62,7 @@ src_configure() { V=true udevdir="$(get_udevdir)" CC="$(tc-getCC)" + HOSTCC="$(tc-getBUILD_CC)" LD="$(tc-getCC)" AR="$(tc-getAR)" STRIP=true @@ -76,3 +80,11 @@ src_install() { dodoc doc/*.txt } + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/sys-apps/portage/Manifest b/sys-apps/portage/Manifest index 68ee3af2c25e..5789fe3a82bd 100644 --- a/sys-apps/portage/Manifest +++ b/sys-apps/portage/Manifest @@ -2,4 +2,5 @@ DIST portage-3.0.61.tar.bz2 1178151 BLAKE2B bad3140735b12a18a3108e91cc88146fc5c6 DIST portage-3.0.63.tar.bz2 1187961 BLAKE2B 10523150b0eabac97309004c57356c40fa94ebd59f8f76701ae63d13f9424b523ccee2a367174af3a52078d5d9e4338b94e144247f6709c2f7df4418c040b06f SHA512 323adc17254f92e58f22028dad12ebcaaafa25c82567c5d31cc9575c30e0d78224c8f9efe0fcbeee549b08b0797edffb4bbe9c6fbbd8943e3f9dcda25eedd699 DIST portage-3.0.64.tar.bz2 1187654 BLAKE2B 622cdda85315ab60ca3b1ae7cf1cb1fe479b69c945dafe14655030387d857ae89c0d8326b85fb3d3754ea95ecf2792ae60ba36f1ad9b18d1ac693fdabf9b235e SHA512 26a9fc9532aebd5965c6d62d78914d827ac48df100b5fc518934857881ca19b927e05b2cd9a2bb674b0e1bd5feff2058a083de9c8fb86af16efe8752325c7722 DIST portage-3.0.65.tar.bz2 1193321 BLAKE2B 4734b0a2b17cf0cdbd0bedac9efa6cecb5799460e1faa8b8ab137fa017e17d47d6d5da6382e75322f21d4be77a31acffbacd753c70b43b011613cc5a6332bc96 SHA512 c864bcb3bef11916128852a5f50b161d82529d7316ec970703a9ec948c46a51148419ef1dfde2906f72347dd41d0eebd49f5a1769a228d97145f5517c34dbff8 +DIST portage-3.0.66.1.tar.bz2 1198196 BLAKE2B 8dbd1bc17c1a9a3530425efa31a27efba39e1ef5f5457b4084875c64f7128453139aea447c25a642c124438e88ef484a43b1838cbd8c03748017571dd18f9921 SHA512 fcd3d4d3dcfdb67cbcdb0f4854860f073b4a9d41dadc97a3e6f890e3c75091aceec5622e97495741622b5c390309f05dec35b9e951d7ee7a78e28a9b3ed2939d DIST portage-3.0.66.tar.bz2 1198148 BLAKE2B 77012739f18dfbbf088533fc9ccb64fe870d849ef6dadfdd92855d16fbca5eec08b065f94067898016787c03fd1b338dbe06192d56a97f2ad62681bda37c3be8 SHA512 0b182a2078c1c2b7d2e7148834dd6f2b2ae09bf4c91454e0cae908406abd9ad221a46738869ead17c5595c988bb2c11c462ba29ffb022389b1f2e824f093c853 diff --git a/sys-apps/portage/portage-3.0.66.1.ebuild b/sys-apps/portage/portage-3.0.66.1.ebuild new file mode 100644 index 000000000000..5958c3dd1f5e --- /dev/null +++ b/sys-apps/portage/portage-3.0.66.1.ebuild @@ -0,0 +1,227 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( pypy3 python3_{10..13} ) +PYTHON_REQ_USE='bzip2(+),threads(+)' +TMPFILES_OPTIONAL=1 + +inherit meson linux-info python-r1 tmpfiles + +DESCRIPTION="The package management and distribution system for Gentoo" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/portage.git + https://github.com/gentoo/portage.git + " + inherit git-r3 +else + SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${PYTHON_DEPS} + >=app-arch/tar-1.27 + >=dev-build/meson-1.3.0-r1 + >=sys-apps/sed-4.0.5 + sys-devel/patch + !build? ( $(python_gen_impl_dep 'ssl(+)') ) + apidoc? ( + dev-python/sphinx[${PYTHON_USEDEP}] + dev-python/sphinx-epytext[${PYTHON_USEDEP}] + ) + doc? ( + ~app-text/docbook-xml-dtd-4.4 + app-text/xmlto + ) + test? ( + dev-python/pytest-xdist[${PYTHON_USEDEP}] + dev-vcs/git + ) +" +# Require sandbox-2.2 for bug #288863. +# For whirlpool hash, require python[ssl] (bug #425046). +RDEPEND=" + ${PYTHON_DEPS} + acct-user/portage + >=app-arch/tar-1.27 + app-arch/zstd + >=app-misc/pax-utils-0.1.17 + dev-lang/python-exec:2 + >=sys-apps/baselayout-2.9 + >=sys-apps/findutils-4.9 + !build? ( + >=app-admin/eselect-1.2 + app-portage/getuto + >=app-shells/bash-5.0:0 + >=sec-keys/openpgp-keys-gentoo-release-20240703 + >=sys-apps/sed-4.0.5 + rsync-verify? ( + >=app-crypt/gnupg-2.2.4-r2[ssl(-)] + >=app-portage/gemato-14.5[${PYTHON_USEDEP}] + ) + ) + elibc_glibc? ( >=sys-apps/sandbox-2.2 ) + elibc_musl? ( >=sys-apps/sandbox-2.2 ) + kernel_linux? ( sys-apps/util-linux ) + selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] ) + xattr? ( kernel_linux? ( + >=sys-apps/install-xattr-0.3 + ) ) +" +# coreutils-6.4 rdep is for date format in emerge-webrsync #164532 +# NOTE: FEATURES=installsources requires debugedit and rsync +PDEPEND=" + !build? ( + >=net-misc/rsync-2.6.4 + >=sys-apps/coreutils-6.4 + >=sys-apps/file-5.44-r3 + ) +" + +pkg_pretend() { + local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS" + + check_extra_config +} + +src_prepare() { + default + + if use prefix-guest; then + sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \ + -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \ + -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \ + -i cnf/repos.conf || die "sed failed" + fi +} + +src_configure() { + local code_only=false + python_foreach_impl my_src_configure +} + +my_src_configure() { + local emesonargs=( + -Dcode-only=${code_only} + -Deprefix="${EPREFIX}" + -Dportage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" + -Ddocdir="${EPREFIX}/usr/share/doc/${PF}" + $(meson_use doc) + $(meson_use apidoc) + $(meson_use gentoo-dev) + $(meson_use ipc) + $(meson_use xattr) + ) + + if use native-extensions && [[ "${EPYTHON}" != "pypy3" ]] ; then + emesonargs+=( -Dnative-extensions=true ) + else + emesonargs+=( -Dnative-extensions=false ) + fi + + if use build; then + emesonargs+=( -Drsync-verify=false ) + else + emesonargs+=( $(meson_use rsync-verify) ) + fi + + meson_src_configure + code_only=true +} + +src_compile() { + python_foreach_impl meson_src_compile +} + +src_test() { + local EPYTEST_XDIST=1 + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + python_foreach_impl epytest +} + +src_install() { + python_foreach_impl my_src_install + dotmpfiles "${FILESDIR}"/portage-{ccache,tmpdir}.conf + + local scripts + mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/{bin,sbin}/* || die) + python_replicate_script "${scripts[@]}" +} + +my_src_install() { + local pydirs=( + "${D}$(python_get_sitedir)" + "${ED}/usr/lib/portage/${EPYTHON}" + ) + + meson_src_install + python_fix_shebang "${pydirs[@]}" + python_optimize "${pydirs[@]}" +} + +pkg_preinst() { + if ! use build && [[ -z ${ROOT} ]]; then + python_setup + local sitedir=$(python_get_sitedir) + [[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory" + env -u DISTDIR \ + -u PORTAGE_OVERRIDE_EPREFIX \ + -u PORTAGE_REPOSITORIES \ + -u PORTDIR \ + -u PORTDIR_OVERLAY \ + PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \ + "${PYTHON}" -m portage._compat_upgrade.default_locations || die + + env -u BINPKG_COMPRESS -u PORTAGE_REPOSITORIES \ + PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \ + "${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die + + env -u FEATURES -u PORTAGE_REPOSITORIES \ + PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \ + "${PYTHON}" -m portage._compat_upgrade.binpkg_multi_instance || die + + env -u BINPKG_FORMAT \ + PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \ + "${PYTHON}" -m portage._compat_upgrade.binpkg_format || die + fi + + # elog dir must exist to avoid logrotate error for bug #415911. + # This code runs in preinst in order to bypass the mapping of + # portage:portage to root:root which happens after src_install. + keepdir /var/log/portage/elog + # This is allowed to fail if the user/group are invalid for prefix users. + if chown portage:portage "${ED}"/var/log/portage{,/elog} 2>/dev/null ; then + chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog} + fi + + if has_version "<${CATEGORY}/${PN}-2.3.77"; then + elog "The emerge --autounmask option is now disabled by default, except for" + elog "portions of behavior which are controlled by the --autounmask-use and" + elog "--autounmask-license options. For backward compatibility, previous" + elog "behavior of --autounmask=y and --autounmask=n is entirely preserved." + elog "Users can get the old behavior simply by adding --autounmask to the" + elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this" + elog "change, see https://bugs.gentoo.org/658648." + fi +} + +pkg_postinst() { + # Warn about obsolete "enotice" script, bug #867010 + local bashrc=${EROOT}/etc/portage/profile/profile.bashrc + if [[ -e ${bashrc} ]] && grep -q enotice "${bashrc}"; then + eerror "Obsolete 'enotice' script detected!" + eerror "Please remove this from ${bashrc} to avoid problems." + eerror "See bug 867010 for more details." + fi +} diff --git a/sys-apps/sysvinit/Manifest b/sys-apps/sysvinit/Manifest index 388b7cada10a..f865ddebde29 100644 --- a/sys-apps/sysvinit/Manifest +++ b/sys-apps/sysvinit/Manifest @@ -2,3 +2,5 @@ DIST sysvinit-3.08.tar.xz 268296 BLAKE2B ec4a4ff3663ac7d67808b50b67631ff4fe1ab56 DIST sysvinit-3.08.tar.xz.sig 833 BLAKE2B b1cbe8a95faa16a22e92e2a8841643aeaf7a5a31cc9fa9628a7ee2400aac1b3a184ae01f09c75d48d5d55a71f7e62feb25c16345644bfb4fcd19cbd061f86573 SHA512 1af105d84b98428766cc315d8dea068e6c5a7ad52008291ba7c1d5accbcaeead4999fd714fc152c1038e54953f9b469bd0f792a0830e68c3e2f43afcd36e0e2d DIST sysvinit-3.09.tar.xz 239600 BLAKE2B 81c3e80dd66896110b1a2488415dd20fae03b4b7d8d4f40d175c195942e1c13367a7f1cf9efd1c79a37e16684bd12e1c76dbb1f8faab44e495e8de684fe744ef SHA512 ddd3681e24c699f9f0cf2cfc44488e32205a8fcf1723b79da47b95adef0c0edc1d9fd387d259dba15a2158fbd0b7920d789b46a9f3c7cd016a12bb1dc92f00d4 DIST sysvinit-3.09.tar.xz.sig 833 BLAKE2B f00020388eb330d753c4280d96b1363c1b539bf8b8cc21a79f055970f44acebf14e690b132dc09ed43e6db8907624083e7b5cc5849808fd804188d97c5eafd2d SHA512 c509bb8dc4fee98ac8e4502bc10e1058dc91126eeb0767a56167267bc14d4b09353b98d8d3a8a5c5dc2b5a0e2e315e0c8c9d3d662ac14510466ae5092504e672 +DIST sysvinit-3.10.tar.xz 240060 BLAKE2B 894f1ad140f1e92f4d4a2220a9abff6ba106d9f84ee0e001ee8d5a0f41a2877e08110d442a2bcd52efc5662838fae36835b067091d37b9f4d295b47c01c26153 SHA512 769fb7995bd01074202d06f0cd2bd5661bd170fc9e83a631c3400d7db8d705520250f47165bdf3dd73d78f9730749f97f7ca8d84e2f30e5fb1949ac3fbaeb053 +DIST sysvinit-3.10.tar.xz.sig 833 BLAKE2B 98e931a055f18c757f84ba555fcb9b5771c51690918d31ac0eb078218b3aa53065caeb5647abcc3e606b245bdd450b4649cb2274560a9fc27844dc7a1eac7a9c SHA512 7759fc58a6298c645a2868bfeea750656bf424c49235e860a4ee5c92a766437dcd566ddcd01b37cfa4dff53ab3b1c96f4dcd41f7234f8c64c01f8edb0932a681 diff --git a/sys-apps/sysvinit/sysvinit-3.10.ebuild b/sys-apps/sysvinit/sysvinit-3.10.ebuild new file mode 100644 index 000000000000..a7beec09b9b9 --- /dev/null +++ b/sys-apps/sysvinit/sysvinit-3.10.ebuild @@ -0,0 +1,201 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Dropped these because blank as of 3.02 +#PLOCALES="de es fi fr hu id pl" +PLOCALES="de es fr pl" +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sysvinit.asc +inherit toolchain-funcs flag-o-matic plocale verify-sig + +DESCRIPTION="/sbin/init - parent of all processes" +HOMEPAGE="https://savannah.nongnu.org/projects/sysvinit" +# https://github.com/slicer69/sysvinit/issues/12 +#SRC_URI="mirror://nongnu/${PN}/${P/_/-}.tar.xz" +#SRC_URI+=" verify-sig? ( mirror://nongnu/${PN}/${P/_/-}.tar.xz.sig )" +SRC_URI="https://github.com/slicer69/sysvinit/releases/download/${PV}/${P}.tar.xz" +SRC_URI+=" verify-sig? ( https://github.com/slicer69/sysvinit/releases/download/${PV}/${P}.tar.xz.sig )" +S="${WORKDIR}/${P/_*}" + +LICENSE="GPL-2" +SLOT="0" +if [[ ${PV} != *beta* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi +IUSE="selinux ibm nls static" + +COMMON_DEPEND=" + acct-group/root + selinux? ( + >=sys-libs/libselinux-1.28 + ) +" +DEPEND=" + ${COMMON_DEPEND} + virtual/os-headers +" +# Old OpenRC blocker is for bug #587424 +# Keep for longer than usual given it's cheap and avoid user inconvenience +RDEPEND=" + ${COMMON_DEPEND} + !<app-i18n/man-pages-l10n-4.18.1-r1 + !<sys-apps/openrc-0.13 + selinux? ( sec-policy/selinux-shutdown ) +" +# po4a is for man page translations +BDEPEND=" + nls? ( app-text/po4a ) + verify-sig? ( >=sec-keys/openpgp-keys-sysvinit-20220413 ) +" + +PATCHES=( + # bug #158615 + "${FILESDIR}/${PN}-3.08-shutdown-single.patch" +) + +src_prepare() { + default + + # We already enforce F_S=2 as a minimum in our toolchain, and + # allow 3. Also, SSP doesn't always make sense for some platforms + # e.g. HPPA. It's default-on in our toolchain where it works. + sed -i \ + -e '/^CPPFLAGS =$/d' \ + -e '/^override CFLAGS +=/s/ -fstack-protector-strong//' \ + -e '/^override CFLAGS +=/s/ -D_FORTIFY_SOURCE=2//' \ + src/Makefile || die + + # last/lastb/mesg/mountpoint/sulogin/utmpdump/wall have moved to util-linux + sed -i -r \ + -e '/^(USR)?S?BIN/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)\>::g' \ + -e '/^MAN[18]/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)[.][18]\>::g' \ + src/Makefile || die + + # pidof has moved to >=procps-3.3.9 + sed -i -r \ + -e '/\/bin\/pidof/d' \ + -e '/^MAN8/s:\<pidof.8\>::g' \ + src/Makefile || die + + # logsave is already in e2fsprogs + sed -i -r \ + -e '/^(USR)?S?BIN/s:\<logsave\>::g' \ + -e '/^MAN8/s:\<logsave.8\>::g' \ + src/Makefile || die + + # Munge inittab for specific architectures + cd "${WORKDIR}" || die + cp "${FILESDIR}"/inittab-2.98-r1 inittab || die "cp inittab" + local insert=() + use ppc && insert=( '#psc0:12345:respawn:/sbin/agetty 115200 ttyPSC0 linux' ) + use arm && insert=( '#f0:12345:respawn:/sbin/agetty 9600 ttyFB0 vt100' ) + use arm64 && insert=( 'f0:12345:respawn:/sbin/agetty 9600 ttyAMA0 vt100' ) + use hppa && insert=( 'b0:12345:respawn:/sbin/agetty 9600 ttyB0 vt100' ) + use s390 && insert=( 's0:12345:respawn:/sbin/agetty 38400 console dumb' ) + if use ibm ; then + insert+=( + '#hvc0:2345:respawn:/sbin/agetty -L 9600 hvc0' + '#hvsi:2345:respawn:/sbin/agetty -L 19200 hvsi0' + ) + fi + (use arm || use mips || use sparc) && sed -i '/ttyS0/s:#::' inittab + if use x86 || use amd64 ; then + sed -i \ + -e '/ttyS[01]/s:9600:115200:' \ + inittab + fi + + if [[ ${#insert[@]} -gt 0 ]] ; then + printf '%s\n' '' '# Architecture specific features' "${insert[@]}" >> inittab + fi + + delete_unused_locale() { + local locale=${1} + + einfo "Deleting non-requested man page translations for locale=${locale}" + rm "${S}"/man/po/${locale}.po || die + + sed -i -e "/^\[po4a_langs\]/ s:${locale}::" "${S}"/man/po/po4a.cfg || die + } + + plocale_for_each_disabled_locale delete_unused_locale +} + +src_compile() { + tc-export CC + + append-lfs-flags + + # bug #381311 + export DISTRO= + export VERSION="${PV}" + + use static && append-ldflags -static + emake -C src $(usex selinux 'WITH_SELINUX=yes' '') + + if use nls && [[ -n "$(plocale_get_locales)" ]] ; then + cd man/po || die + po4a po4a.cfg || die + fi +} + +src_install() { + emake -C src install ROOT="${ED}" + dodoc README doc/* + + insinto /etc + doins "${WORKDIR}"/inittab + + newinitd "${FILESDIR}"/bootlogd.initd bootlogd + newconfd "${FILESDIR}"/bootlogd.confd bootlogd + + into / + dosbin "${FILESDIR}"/halt.sh + + keepdir /etc/inittab.d + + if use nls && [[ -n "$(plocale_get_locales)" ]] ; then + install_locale_man_pages() { + doman -i18n=${1} man/po/${1}/* + } + + plocale_for_each_locale install_locale_man_pages + fi + + # Dead symlink + find "${ED}" -xtype l -delete || die + + find "${ED}" -type d -empty -delete || die +} + +pkg_postinst() { + # Reload init to fix unmounting problems of / on next reboot. + # This is really needed, as without the new version of init cause init + # not to quit properly on reboot, and causes a fsck of / on next reboot. + if [[ -z ${EROOT} ]] ; then + if [[ -e /dev/initctl ]] && [[ ! -e /run/initctl ]] ; then + ln -s /dev/initctl /run/initctl \ + || ewarn "Failed to set /run/initctl symlink!" + fi + # Do not return an error if this fails + /sbin/telinit U &>/dev/null + fi + + elog "The last/lastb/mesg/mountpoint/sulogin/utmpdump/wall tools have been moved to" + elog "sys-apps/util-linux. The pidof tool has been moved to sys-process/procps." + + # Required for new bootlogd service + if [[ ! -e "${EROOT}/var/log/boot" ]] ; then + touch "${EROOT}/var/log/boot" + fi + + local ver + for ver in ${REPLACING_VERSIONS}; do + ver_test ${ver} -ge 3.07-r2 && continue + ewarn "Previously, the 'halt' command caused the system to power off" + ewarn "even if option -p was not given. This long-standing bug has" + ewarn "been fixed, and the command now behaves as documented." + break + done +} diff --git a/sys-apps/usermode-utilities/usermode-utilities-20070815-r6.ebuild b/sys-apps/usermode-utilities/usermode-utilities-20070815-r6.ebuild index 33b2245e39e8..d08ba46dfd6a 100644 --- a/sys-apps/usermode-utilities/usermode-utilities-20070815-r6.ebuild +++ b/sys-apps/usermode-utilities/usermode-utilities-20070815-r6.ebuild @@ -6,14 +6,14 @@ EAPI=8 inherit toolchain-funcs DESCRIPTION="Tools for use with Usermode Linux virtual machines" -HOMEPAGE="http://user-mode-linux.sourceforge.net/" -SRC_URI="http://user-mode-linux.sourceforge.net/uml_utilities_${PV}.tar.bz2" +HOMEPAGE="https://user-mode-linux.sourceforge.net/" +SRC_URI="https://user-mode-linux.sourceforge.net/uml_utilities_${PV}.tar.bz2" S="${WORKDIR}"/tools-${PV} LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" +KEYWORDS="amd64 arm x86" IUSE="fuse" RDEPEND=" diff --git a/sys-block/f3/f3-8.0.ebuild b/sys-block/f3/f3-8.0.ebuild deleted file mode 100644 index 88a46210bc81..000000000000 --- a/sys-block/f3/f3-8.0.ebuild +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="Utilities to detect broken or counterfeit flash storage" -HOMEPAGE="http://oss.digirati.com.br/f3/ https://github.com/AltraMayor/f3" - -PATCHES=( -) - -if [[ ${PV} == "9999" ]]; then - EGIT_REPO_URI="https://github.com/AltraMayor/${PN}.git" - - PATCHES=() - - inherit git-r3 -else - SRC_URI="https://github.com/AltraMayor/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="amd64 ~arm ~arm64 x86" -fi - -LICENSE="GPL-3+" -SLOT="0" - -IUSE="extra" - -RDEPEND="elibc_musl? ( sys-libs/argp-standalone )" -DEPEND="${RDEPEND} - extra? ( - sys-block/parted - virtual/udev - )" - -DOCS=( changelog README.rst ) - -src_prepare() { - default - - sed -i \ - -e 's:-ggdb::' \ - -e 's:^PREFIX =:PREFIX ?=:' \ - Makefile || die - - # bug #715518 - use elibc_musl && append-ldflags -largp - - tc-export CC -} - -src_compile() { - default - - if use extra; then - emake V=1 extra - fi -} - -src_install() { - emake PREFIX="${ED}/usr" install - - if use extra; then - emake PREFIX="${ED}/usr" install-extra - fi - - einstalldocs -} diff --git a/sys-devel/autogen/autogen-5.18.16-r100.ebuild b/sys-devel/autogen/autogen-5.18.16-r100.ebuild new file mode 100644 index 000000000000..ca84c102bfb6 --- /dev/null +++ b/sys-devel/autogen/autogen-5.18.16-r100.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +inherit flag-o-matic autotools guile-single toolchain-funcs + +DESCRIPTION="Program and text file generation" +HOMEPAGE="https://www.gnu.org/software/autogen/" +SRC_URI=" + mirror://gnu/${PN}/rel${PV}/${P}.tar.xz + https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob_plain;f=lib/verify.h;h=3b57ddee0acffd23cc51bc8910a15cf879f90619;hb=537a5511ab0b1326e69b32f87593a50aedb8a589 -> ${P}-gnulib-3b57ddee0acffd23cc51bc8910a15cf879f90619-lib-verify.h +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="libopts static-libs" + +REQUIRED_USE="${GUILE_REQUIRED_USE}" + +RDEPEND=" + ${GUILE_DEPS} + dev-libs/libxml2 +" +DEPEND="${RDEPEND}" + +# We don't pass the flag explicitly, bug #796776. +# Let's fix it upstream after next autogen release if it happens. +QA_CONFIGURE_OPTIONS+=" --enable-snprintfv-convenience" + +QA_CONFIG_IMPL_DECL_SKIP+=( + # libgen.h is legacy and linux doesn't include -lgen nor nonstandard + # functions. bug #924961 + pathfind +) + +PATCHES=( + "${FILESDIR}"/${PN}-5.18.16-no-werror.patch + "${FILESDIR}"/${PN}-5.18.16-rpath.patch + "${FILESDIR}"/${PN}-5.18.16-respect-TMPDIR.patch + "${FILESDIR}"/${PN}-5.18.16-make-4.3.patch + "${FILESDIR}"/${PN}-5.18.16-guile-3.patch + "${FILESDIR}"/${PN}-5.18.16-configure-c99.patch + "${FILESDIR}"/${PN}-5.18.16-FORTIFY_SOURCE.patch + "${FILESDIR}"/${PN}-5.18.16-no-which.patch +) + +src_prepare() { + guile-single_src_prepare + + # missing tarball file + cp "${DISTDIR}"/${P}-gnulib-3b57ddee0acffd23cc51bc8910a15cf879f90619-lib-verify.h autoopts/verify.h || die + + # May be able to drop this on next release (>5.18.16) + eautoreconf +} + +src_configure() { + # suppress possibly incorrect -R flag + export ag_cv_test_ldflags= + + # autogen requires run-time sanity of regex and string functions. + # Use defaults of linux-glibc until we need somethig more advanced. + if tc-is-cross-compiler ; then + export ag_cv_run_strcspn=no + export libopts_cv_with_libregex=yes + fi + + # bug 920174 + use elibc_musl && append-cppflags -D_LARGEFILE64_SOURCE + + econf $(use_enable static-libs static) +} + +src_install() { + guile-single_src_install + + find "${ED}" -name '*.la' -delete || die + + if ! use libopts ; then + rm "${ED}"/usr/share/autogen/libopts-*.tar.gz || die + fi +} diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest index da671e73c02c..05cedfc4345b 100644 --- a/sys-devel/clang-common/Manifest +++ b/sys-devel/clang-common/Manifest @@ -8,6 +8,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-devel/clang-common/clang-common-19.1.0.ebuild b/sys-devel/clang-common/clang-common-19.1.0.ebuild new file mode 100644 index 000000000000..8c285440f7e4 --- /dev/null +++ b/sys-devel/clang-common/clang-common-19.1.0.ebuild @@ -0,0 +1,305 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 llvm.org multilib + +DESCRIPTION="Common files shared between multiple slots of clang" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" +IUSE=" + default-compiler-rt default-libcxx default-lld + bootstrap-prefix cet hardened llvm-libunwind +" + +PDEPEND=" + sys-devel/clang:* + default-compiler-rt? ( + sys-devel/clang-runtime[compiler-rt] + llvm-libunwind? ( sys-libs/llvm-libunwind[static-libs] ) + !llvm-libunwind? ( sys-libs/libunwind[static-libs] ) + ) + !default-compiler-rt? ( sys-devel/gcc ) + default-libcxx? ( >=sys-libs/libcxx-${PV}[static-libs] ) + !default-libcxx? ( sys-devel/gcc ) + default-lld? ( >=sys-devel/lld-${PV} ) + !default-lld? ( sys-devel/binutils ) +" +IDEPEND=" + !default-compiler-rt? ( sys-devel/gcc-config ) + !default-libcxx? ( sys-devel/gcc-config ) +" + +LLVM_COMPONENTS=( clang/utils ) +llvm.org_set_globals + +pkg_pretend() { + [[ ${CLANG_IGNORE_DEFAULT_RUNTIMES} ]] && return + + local flag missing_flags=() + for flag in default-{compiler-rt,libcxx,lld}; do + if ! use "${flag}" && has_version "sys-devel/clang[${flag}]"; then + missing_flags+=( "${flag}" ) + fi + done + + if [[ ${missing_flags[@]} ]]; then + eerror "It seems that you have the following flags set on sys-devel/clang:" + eerror + eerror " ${missing_flags[*]}" + eerror + eerror "The default runtimes are now set via flags on sys-devel/clang-common." + eerror "The build is being aborted to prevent breakage. Please either set" + eerror "the respective flags on this ebuild, e.g.:" + eerror + eerror " sys-devel/clang-common ${missing_flags[*]}" + eerror + eerror "or build with CLANG_IGNORE_DEFAULT_RUNTIMES=1." + die "Mismatched defaults detected between sys-devel/clang and sys-devel/clang-common" + fi +} + +_doclang_cfg() { + local triple="${1}" + + local tool + for tool in ${triple}-clang{,++}; do + newins - "${tool}.cfg" <<-EOF + # This configuration file is used by ${tool} driver. + @gentoo-common.cfg + @gentoo-common-ld.cfg + EOF + if [[ ${triple} == x86_64* ]]; then + cat >> "${ED}/etc/clang/${tool}.cfg" <<-EOF || die + @gentoo-cet.cfg + EOF + fi + done + + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/${triple}-clang++.cfg" <<-EOF || die + -lc++abi + EOF + fi + + newins - "${triple}-clang-cpp.cfg" <<-EOF + # This configuration file is used by the ${triple}-clang-cpp driver. + @gentoo-common.cfg + EOF + if [[ ${triple} == x86_64* ]]; then + cat >> "${ED}/etc/clang/${triple}-clang-cpp.cfg" <<-EOF || die + @gentoo-cet.cfg + EOF + fi + + # Install symlinks for triples with other vendor strings since some + # programs insist on mangling the triple. + local vendor + for vendor in gentoo pc unknown; do + local vendor_triple="${triple%%-*}-${vendor}-${triple#*-*-}" + for tool in clang{,++,-cpp}; do + if [[ ! -f "${ED}/etc/clang/${vendor_triple}-${tool}.cfg" ]]; then + dosym "${triple}-${tool}.cfg" "/etc/clang/${vendor_triple}-${tool}.cfg" + fi + done + done +} + +doclang_cfg() { + local triple="${1}" + + _doclang_cfg ${triple} + + # LLVM may have different arch names in some cases. For example in x86 + # profiles the triple uses i686, but llvm will prefer i386 if invoked + # with "clang" on x86 or "clang -m32" on x86_64. The gentoo triple will + # be used if invoked through ${CHOST}-clang{,++,-cpp} though. + # + # To make sure the correct triples are installed, + # see Triple::getArchTypeName() in llvm/lib/TargetParser/Triple.cpp + # and compare with CHOST values in profiles. + + local abi=${triple%%-*} + case ${abi} in + armv4l|armv4t|armv5tel|armv6j|armv7a) + _doclang_cfg ${triple/${abi}/arm} + ;; + i686) + _doclang_cfg ${triple/${abi}/i386} + ;; + sparc) + _doclang_cfg ${triple/${abi}/sparcel} + ;; + sparc64) + _doclang_cfg ${triple/${abi}/sparcv9} + ;; + esac +} + +src_install() { + newbashcomp bash-autocomplete.sh clang + + insinto /etc/clang + newins - gentoo-runtimes.cfg <<-EOF + # This file is initially generated by sys-devel/clang-runtime. + # It is used to control the default runtimes using by clang. + + --rtlib=$(usex default-compiler-rt compiler-rt libgcc) + --unwindlib=$(usex default-compiler-rt libunwind libgcc) + --stdlib=$(usex default-libcxx libc++ libstdc++) + -fuse-ld=$(usex default-lld lld bfd) + EOF + + newins - gentoo-gcc-install.cfg <<-EOF + # This file is maintained by gcc-config. + # It is used to specify the selected GCC installation. + EOF + + newins - gentoo-common.cfg <<-EOF + # This file contains flags common to clang, clang++ and clang-cpp. + @gentoo-runtimes.cfg + @gentoo-gcc-install.cfg + @gentoo-hardened.cfg + # bug #870001 + -include "${EPREFIX}/usr/include/gentoo/maybe-stddefs.h" + EOF + + # clang-cpp does not like link args being passed to it when directly + # invoked, so use a separate configuration file. + newins - gentoo-common-ld.cfg <<-EOF + # This file contains flags common to clang and clang++ + @gentoo-hardened-ld.cfg + EOF + + # Baseline hardening (bug #851111) + newins - gentoo-hardened.cfg <<-EOF + # Some of these options are added unconditionally, regardless of + # USE=hardened, for parity with sys-devel/gcc. + -Xarch_host -fstack-clash-protection + -Xarch_host -fstack-protector-strong + -fPIE + -include "${EPREFIX}/usr/include/gentoo/fortify.h" + EOF + + newins - gentoo-cet.cfg <<-EOF + -Xarch_host -fcf-protection=$(usex cet full none) + EOF + + if use kernel_Darwin; then + newins - gentoo-hardened-ld.cfg <<-EOF + # There was -Wl,-z,relro here, but it's not supported on Mac + # TODO: investigate whether -bind_at_load or -read_only_stubs will do the job + EOF + else + newins - gentoo-hardened-ld.cfg <<-EOF + # Some of these options are added unconditionally, regardless of + # USE=hardened, for parity with sys-devel/gcc. + -Wl,-z,relro + -Wl,-z,now + EOF + fi + + dodir /usr/include/gentoo + + cat >> "${ED}/usr/include/gentoo/maybe-stddefs.h" <<-EOF || die + /* __has_include is an extension, but it's fine, because this is only + for Clang anyway. */ + #if defined __has_include && __has_include (<stdc-predef.h>) && !defined(__GLIBC__) + # include <stdc-predef.h> + #endif + EOF + + local fortify_level=$(usex hardened 3 2) + # We have to do this because glibc's headers warn if F_S is set + # without optimization and that would at the very least be very noisy + # during builds and at worst trigger many -Werror builds. + cat >> "${ED}/usr/include/gentoo/fortify.h" <<- EOF || die + #ifdef __clang__ + # pragma clang system_header + #endif + #ifndef _FORTIFY_SOURCE + # if defined(__has_feature) + # define __GENTOO_HAS_FEATURE(x) __has_feature(x) + # else + # define __GENTOO_HAS_FEATURE(x) 0 + # endif + # + # if defined(__STDC_HOSTED__) && __STDC_HOSTED__ == 1 + # define __GENTOO_NOT_FREESTANDING 1 + # else + # define __GENTOO_NOT_FREESTANDING 0 + # endif + # + # if defined(__OPTIMIZE__) && __OPTIMIZE__ > 0 && __GENTOO_NOT_FREESTANDING > 0 + # if !defined(__SANITIZE_ADDRESS__) && !__GENTOO_HAS_FEATURE(address_sanitizer) && !__GENTOO_HAS_FEATURE(memory_sanitizer) + # define _FORTIFY_SOURCE ${fortify_level} + # endif + # endif + # undef __GENTOO_HAS_FEATURE + # undef __GENTOO_NOT_FREESTANDING + #endif + EOF + + # TODO: Maybe -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST for + # non-hardened? + if use hardened ; then + cat >> "${ED}/etc/clang/gentoo-hardened.cfg" <<-EOF || die + # Options below are conditional on USE=hardened. + -Xarch_host -D_GLIBCXX_ASSERTIONS + + # Analogue to GLIBCXX_ASSERTIONS + # https://libcxx.llvm.org/UsingLibcxx.html#assertions-mode + # https://libcxx.llvm.org/Hardening.html#using-hardened-mode + -Xarch_host -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE + EOF + + cat >> "${ED}/etc/clang/gentoo-hardened-ld.cfg" <<-EOF || die + # Options below are conditional on USE=hardened. + EOF + fi + + # We only install config files for supported ABIs because unprefixed tools + # might be used for crosscompilation where e.g. PIE may not be supported. + # See bug #912237 and bug #901247. Just ${CHOST} won't do due to bug #912685. + local abi + for abi in $(get_all_abis); do + local abi_chost=$(get_abi_CHOST "${abi}") + doclang_cfg "${abi_chost}" + done + + if use kernel_Darwin; then + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + # Gentoo Prefix on Darwin + -Wl,-search_paths_first + -Wl,-rpath,${EPREFIX}/usr/lib + -L ${EPREFIX}/usr/lib + -isystem ${EPREFIX}/usr/include + -isysroot ${EPREFIX}/MacOSX.sdk + EOF + if use bootstrap-prefix ; then + # bootstrap-prefix is only set during stage2 of bootstrapping + # Prefix, where EPREFIX is set to EPREFIX/tmp. + # Here we need to point it at the future lib dir of the stage3's + # EPREFIX. + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + -Wl,-rpath,${EPREFIX}/../usr/lib + EOF + fi + fi +} + +pkg_preinst() { + if has_version -b sys-devel/gcc-config && has_version sys-devel/gcc + then + local gcc_path=$(gcc-config --get-lib-path 2>/dev/null) + if [[ -n ${gcc_path} ]]; then + cat >> "${ED}/etc/clang/gentoo-gcc-install.cfg" <<-EOF + --gcc-install-dir="${gcc_path%%:*}" + EOF + fi + fi +} diff --git a/sys-devel/clang-runtime/clang-runtime-19.1.0.ebuild b/sys-devel/clang-runtime/clang-runtime-19.1.0.ebuild new file mode 100644 index 000000000000..8ded193c919c --- /dev/null +++ b/sys-devel/clang-runtime/clang-runtime-19.1.0.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib-build toolchain-funcs + +DESCRIPTION="Meta-ebuild for clang runtime libraries" +HOMEPAGE="https://clang.llvm.org/" + +LICENSE="metapackage" +SLOT="${PV%%.*}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" +IUSE="+compiler-rt libcxx openmp +sanitize" +REQUIRED_USE="sanitize? ( compiler-rt )" + +RDEPEND=" + compiler-rt? ( + ~sys-libs/compiler-rt-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?] + sanitize? ( + ~sys-libs/compiler-rt-sanitizers-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?] + ) + ) + libcxx? ( >=sys-libs/libcxx-${PV}[${MULTILIB_USEDEP}] ) + openmp? ( >=sys-libs/libomp-${PV}[${MULTILIB_USEDEP}] ) +" + +pkg_pretend() { + if tc-is-clang; then + ewarn "You seem to be using clang as a system compiler. As of clang-16," + ewarn "upstream has turned a few warnings that commonly occur during" + ewarn "configure script runs into errors by default. This causes some" + ewarn "configure tests to start failing, sometimes resulting in silent" + ewarn "breakage, missing functionality or runtime misbehavior. It is" + ewarn "not yet clear whether the change will remain or be reverted." + ewarn + ewarn "For more information, please see:" + ewarn "https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213" + fi +} diff --git a/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-19.ebuild b/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-19.ebuild index 3496a0f89b67..5da14bc07f7a 100644 --- a/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-19.ebuild +++ b/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-19.ebuild @@ -11,6 +11,7 @@ S=${WORKDIR} LICENSE="public-domain" SLOT="${PV}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~x64-macos" IUSE="gcc-symlinks multilib-symlinks +native-symlinks" # Blocker for bug #872416 diff --git a/sys-devel/clang/Manifest b/sys-devel/clang/Manifest index 0cde05c052a4..29239e5b5c69 100644 --- a/sys-devel/clang/Manifest +++ b/sys-devel/clang/Manifest @@ -15,6 +15,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-devel/clang/clang-19.1.0.ebuild b/sys-devel/clang/clang-19.1.0.ebuild new file mode 100644 index 000000000000..54dae879d767 --- /dev/null +++ b/sys-devel/clang/clang-19.1.0.ebuild @@ -0,0 +1,471 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) + +inherit cmake llvm.org llvm-utils multilib multilib-minimal +inherit prefix python-single-r1 toolchain-funcs + +DESCRIPTION="C language family frontend for LLVM" +HOMEPAGE="https://llvm.org/" + +# MSVCSetupApi.h: MIT +# sorttable.js: MIT + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA MIT" +SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~x64-macos" +IUSE="debug doc +extra ieee-long-double +pie +static-analyzer test xml" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +DEPEND=" + ~sys-devel/llvm-${PV}:${LLVM_MAJOR}=[debug=,${MULTILIB_USEDEP}] + static-analyzer? ( dev-lang/perl:* ) + xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) +" + +RDEPEND=" + ${PYTHON_DEPS} + ${DEPEND} + >=sys-devel/clang-common-${PV} +" +BDEPEND=" + ${PYTHON_DEPS} + test? ( ~sys-devel/lld-${PV} ) + xml? ( virtual/pkgconfig ) +" +PDEPEND=" + ~sys-devel/clang-runtime-${PV} + sys-devel/clang-toolchain-symlinks:${LLVM_MAJOR} +" + +LLVM_COMPONENTS=( + clang clang-tools-extra cmake +) +LLVM_MANPAGES=1 +LLVM_TEST_COMPONENTS=( + llvm/utils +) +LLVM_USE_TARGETS=llvm +llvm.org_set_globals + +[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" doc? ( " +BDEPEND+=" + $(python_gen_cond_dep ' + dev-python/myst-parser[${PYTHON_USEDEP}] + dev-python/sphinx[${PYTHON_USEDEP}] + ') +" +[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" ) " + +# Multilib notes: +# 1. ABI_* flags control ABIs libclang* is built for only. +# 2. clang is always capable of compiling code for all ABIs for enabled +# target. However, you will need appropriate crt* files (installed +# e.g. by sys-devel/gcc and sys-libs/glibc). +# 3. ${CHOST}-clang wrappers are always installed for all ABIs included +# in the current profile (i.e. alike supported by sys-devel/gcc). +# +# Therefore: use sys-devel/clang[${MULTILIB_USEDEP}] only if you need +# multilib clang* libraries (not runtime, not wrappers). + +src_prepare() { + # create extra parent dir for relative CLANG_RESOURCE_DIR access + mkdir -p x/y || die + BUILD_DIR=${WORKDIR}/x/y/clang + + llvm.org_src_prepare + + # add Gentoo Portage Prefix for Darwin (see prefix-dirs.patch) + eprefixify \ + lib/Lex/InitHeaderSearch.cpp \ + lib/Driver/ToolChains/Darwin.cpp || die + + if ! use prefix-guest && [[ -n ${EPREFIX} ]]; then + sed -i "/LibDir.*Loader/s@return \"\/\"@return \"${EPREFIX}/\"@" lib/Driver/ToolChains/Linux.cpp || die + fi +} + +check_distribution_components() { + if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then + local all_targets=() my_targets=() l + cd "${BUILD_DIR}" || die + + while read -r l; do + if [[ ${l} == install-*-stripped:* ]]; then + l=${l#install-} + l=${l%%-stripped*} + + case ${l} in + # meta-targets + clang-libraries|distribution) + continue + ;; + # tools + clang|clangd|clang-*) + ;; + # static libraries + clang*|findAllSymbols) + continue + ;; + # conditional to USE=doc + docs-clang-html|docs-clang-tools-html) + use doc || continue + ;; + esac + + all_targets+=( "${l}" ) + fi + done < <(${NINJA} -t targets all) + + while read -r l; do + my_targets+=( "${l}" ) + done < <(get_distribution_components $"\n") + + local add=() remove=() + for l in "${all_targets[@]}"; do + if ! has "${l}" "${my_targets[@]}"; then + add+=( "${l}" ) + fi + done + for l in "${my_targets[@]}"; do + if ! has "${l}" "${all_targets[@]}"; then + remove+=( "${l}" ) + fi + done + + if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then + eqawarn "get_distribution_components() is outdated!" + eqawarn " Add: ${add[*]}" + eqawarn "Remove: ${remove[*]}" + fi + cd - >/dev/null || die + fi +} + +get_distribution_components() { + local sep=${1-;} + + local out=( + # common stuff + clang-cmake-exports + clang-headers + clang-resource-headers + libclang-headers + + aarch64-resource-headers + arm-common-resource-headers + arm-resource-headers + core-resource-headers + cuda-resource-headers + hexagon-resource-headers + hip-resource-headers + hlsl-resource-headers + mips-resource-headers + opencl-resource-headers + openmp-resource-headers + ppc-htm-resource-headers + ppc-resource-headers + riscv-resource-headers + systemz-resource-headers + utility-resource-headers + ve-resource-headers + webassembly-resource-headers + windows-resource-headers + x86-resource-headers + + # libs + clang-cpp + libclang + ) + + if multilib_is_native_abi; then + out+=( + # common stuff + bash-autocomplete + libclang-python-bindings + + # tools + amdgpu-arch + c-index-test + clang + clang-format + clang-installapi + clang-linker-wrapper + clang-nvlink-wrapper + clang-offload-bundler + clang-offload-packager + clang-refactor + clang-repl + clang-rename + clang-scan-deps + diagtool + hmaptool + nvptx-arch + + # needed for cross-compiling Clang + clang-tblgen + ) + + if use extra; then + out+=( + # extra tools + clang-apply-replacements + clang-change-namespace + clang-doc + clang-include-cleaner + clang-include-fixer + clang-move + clang-pseudo + clang-query + clang-reorder-fields + clang-tidy + clang-tidy-headers + clangd + find-all-symbols + modularize + pp-trace + ) + fi + + if llvm_are_manpages_built; then + out+=( docs-clang-man ) + use extra && out+=( docs-clang-tools-man ) + fi + + if use doc; then + out+=( docs-clang-html ) + use extra && out+=( docs-clang-tools-html ) + fi + + use static-analyzer && out+=( + clang-check + clang-extdef-mapping + scan-build + scan-build-py + scan-view + ) + fi + + printf "%s${sep}" "${out[@]}" +} + +multilib_src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + local mycmakeargs=( + -DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}") + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" + -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" + -DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang" + # relative to bindir + -DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}" + + -DBUILD_SHARED_LIBS=OFF + -DCLANG_LINK_CLANG_DYLIB=ON + -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) + -DCLANG_INCLUDE_TESTS=$(usex test) + + -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" + + # these are not propagated reliably, so redefine them + -DLLVM_ENABLE_EH=ON + -DLLVM_ENABLE_RTTI=ON + + # libgomp support fails to find headers without explicit -I + # furthermore, it provides only syntax checking + -DCLANG_DEFAULT_OPENMP_RUNTIME=libomp + + -DCLANG_DEFAULT_PIE_ON_LINUX=$(usex pie) + + -DCLANG_ENABLE_LIBXML2=$(usex xml) + -DCLANG_ENABLE_ARCMT=$(usex static-analyzer) + -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer) + # TODO: CLANG_ENABLE_HLSL? + + -DPython3_EXECUTABLE="${PYTHON}" + ) + + if ! use elibc_musl; then + mycmakeargs+=( + -DPPC_LINUX_DEFAULT_IEEELONGDOUBLE=$(usex ieee-long-double) + ) + fi + + use test && mycmakeargs+=( + -DLLVM_BUILD_TESTS=ON + -DLLVM_LIT_ARGS="$(get_lit_flags)" + ) + + if multilib_is_native_abi; then + local build_docs=OFF + if llvm_are_manpages_built; then + build_docs=ON + mycmakeargs+=( + -DLLVM_BUILD_DOCS=ON + -DLLVM_ENABLE_SPHINX=ON + -DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" + -DSPHINX_WARNINGS_AS_ERRORS=OFF + ) + if use extra; then + mycmakeargs+=( + -DCLANG-TOOLS_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/tools-extra" + ) + fi + fi + mycmakeargs+=( + -DCLANG_INCLUDE_DOCS=${build_docs} + ) + fi + if multilib_native_use extra; then + mycmakeargs+=( + -DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR="${WORKDIR}"/clang-tools-extra + -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=${build_docs} + ) + else + mycmakeargs+=( + -DLLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD=OFF + ) + fi + + if [[ -n ${EPREFIX} ]]; then + mycmakeargs+=( + -DGCC_INSTALL_PREFIX="${EPREFIX}/usr" + ) + fi + + if tc-is-cross-compiler; then + has_version -b sys-devel/clang:${LLVM_MAJOR} || + die "sys-devel/clang:${LLVM_MAJOR} is required on the build host." + local tools_bin=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin + mycmakeargs+=( + -DLLVM_TOOLS_BINARY_DIR="${tools_bin}" + -DCLANG_TABLEGEN="${tools_bin}"/clang-tblgen + ) + fi + + # LLVM can have very high memory consumption while linking, + # exhausting the limit on 32-bit linker executable + use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + cmake_src_configure + + multilib_is_native_abi && check_distribution_components +} + +multilib_src_compile() { + cmake_build distribution +} + +multilib_src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + local test_targets=( check-clang ) + if multilib_native_use extra; then + test_targets+=( + check-clang-tools + check-clangd + ) + fi + cmake_build "${test_targets[@]}" +} + +src_install() { + MULTILIB_WRAPPED_HEADERS=( + /usr/include/clang/Config/config.h + ) + + multilib-minimal_src_install + + # Move runtime headers to /usr/lib/clang, where they belong + mv "${ED}"/usr/include/clangrt "${ED}"/usr/lib/clang || die + # move (remaining) wrapped headers back + if use extra; then + mv "${T}"/clang-tidy "${ED}"/usr/include/ || die + fi + mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die + + # Apply CHOST and version suffix to clang tools + local clang_tools=( clang clang++ clang-cl clang-cpp ) + local abi i + + # cmake gives us: + # - clang-X + # - clang -> clang-X + # - clang++, clang-cl, clang-cpp -> clang + # we want to have: + # - clang-X + # - clang++-X, clang-cl-X, clang-cpp-X -> clang-X + # - clang, clang++, clang-cl, clang-cpp -> clang*-X + # also in CHOST variant + for i in "${clang_tools[@]:1}"; do + rm "${ED}/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}" || die + dosym "clang-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}-${LLVM_MAJOR}" + dosym "${i}-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}" + done + + # now create target symlinks for all supported ABIs + for abi in $(get_all_abis); do + local abi_chost=$(get_abi_CHOST "${abi}") + for i in "${clang_tools[@]}"; do + dosym "${i}-${LLVM_MAJOR}" \ + "/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}-${LLVM_MAJOR}" + dosym "${abi_chost}-${i}-${LLVM_MAJOR}" \ + "/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}" + done + done +} + +multilib_src_install() { + DESTDIR=${D} cmake_build install-distribution + + # move headers to /usr/include for wrapping & ABI mismatch checks + # (also drop the version suffix from runtime headers) + rm -rf "${ED}"/usr/include || die + mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die + mv "${ED}"/usr/lib/clang "${ED}"/usr/include/clangrt || die + if multilib_native_use extra; then + # don't wrap clang-tidy headers, the list is too long + # (they're fine for non-native ABI but enabling the targets is problematic) + mv "${ED}"/usr/include/clang-tidy "${T}/" || die + fi +} + +multilib_src_install_all() { + python_fix_shebang "${ED}" + if use static-analyzer; then + python_optimize "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/share/scan-view + fi + + docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man" + llvm_install_manpages + # match 'html' non-compression + use doc && docompress -x "/usr/share/doc/${PF}/tools-extra" + # +x for some reason; TODO: investigate + use static-analyzer && fperms a-x "/usr/lib/llvm/${LLVM_MAJOR}/share/man/man1/scan-build.1" +} + +pkg_postinst() { + if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then + eselect compiler-shadow update all + fi + + elog "You can find additional utility scripts in:" + elog " ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/clang" + if use extra; then + elog "Some of them are vim integration scripts (with instructions inside)." + elog "The run-clang-tidy.py script requires the following additional package:" + elog " dev-python/pyyaml" + fi +} + +pkg_postrm() { + if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then + eselect compiler-shadow clean all + fi +} diff --git a/sys-devel/gcc/gcc-10.5.0.ebuild b/sys-devel/gcc/gcc-10.5.0.ebuild index 1c38d13dc19a..0f2205413cb9 100644 --- a/sys-devel/gcc/gcc-10.5.0.ebuild +++ b/sys-devel/gcc/gcc-10.5.0.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="10.5.0" PATCH_VER="6" MUSL_VER="2" diff --git a/sys-devel/gcc/gcc-11.4.1_p20240501.ebuild b/sys-devel/gcc/gcc-11.4.1_p20240501.ebuild index 25c7d792237f..417f4754dea4 100644 --- a/sys-devel/gcc/gcc-11.4.1_p20240501.ebuild +++ b/sys-devel/gcc/gcc-11.4.1_p20240501.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="11.4.0" PATCH_VER="12" MUSL_VER="2" diff --git a/sys-devel/gcc/gcc-11.5.0.ebuild b/sys-devel/gcc/gcc-11.5.0.ebuild index b371c9aa7310..4282e62ae404 100644 --- a/sys-devel/gcc/gcc-11.5.0.ebuild +++ b/sys-devel/gcc/gcc-11.5.0.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="11.4.0" PATCH_VER="12" MUSL_VER="2" diff --git a/sys-devel/gcc/gcc-12.3.1_p20240209.ebuild b/sys-devel/gcc/gcc-12.3.1_p20240209.ebuild index af4495489e4d..7f7adbf4aa22 100644 --- a/sys-devel/gcc/gcc-12.3.1_p20240209.ebuild +++ b/sys-devel/gcc/gcc-12.3.1_p20240209.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="12.3.0" PATCH_VER="3" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-12.4.0.ebuild b/sys-devel/gcc/gcc-12.4.0.ebuild index af4495489e4d..7f7adbf4aa22 100644 --- a/sys-devel/gcc/gcc-12.4.0.ebuild +++ b/sys-devel/gcc/gcc-12.4.0.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="12.3.0" PATCH_VER="3" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-12.4.1_p20240829.ebuild b/sys-devel/gcc/gcc-12.4.1_p20240829.ebuild index 220fd184cf7a..d6312b98e032 100644 --- a/sys-devel/gcc/gcc-12.4.1_p20240829.ebuild +++ b/sys-devel/gcc/gcc-12.4.1_p20240829.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="12.3.0" PATCH_VER="3" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-12.4.1_p20240905.ebuild b/sys-devel/gcc/gcc-12.4.1_p20240905.ebuild index 220fd184cf7a..d6312b98e032 100644 --- a/sys-devel/gcc/gcc-12.4.1_p20240905.ebuild +++ b/sys-devel/gcc/gcc-12.4.1_p20240905.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="12.3.0" PATCH_VER="3" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-12.4.1_p20240912.ebuild b/sys-devel/gcc/gcc-12.4.1_p20240912.ebuild index 220fd184cf7a..d6312b98e032 100644 --- a/sys-devel/gcc/gcc-12.4.1_p20240912.ebuild +++ b/sys-devel/gcc/gcc-12.4.1_p20240912.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="12.3.0" PATCH_VER="3" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-12.5.9999.ebuild b/sys-devel/gcc/gcc-12.5.9999.ebuild index b66d7f055f23..f53e12b9ce5f 100644 --- a/sys-devel/gcc/gcc-12.5.9999.ebuild +++ b/sys-devel/gcc/gcc-12.5.9999.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="12.3.0" MUSL_GCC_VER="12.3.0" PYTHON_COMPAT=( python3_{10..12} ) diff --git a/sys-devel/gcc/gcc-13.2.0.ebuild b/sys-devel/gcc/gcc-13.2.0.ebuild index b14b9fea4804..dc739761db42 100644 --- a/sys-devel/gcc/gcc-13.2.0.ebuild +++ b/sys-devel/gcc/gcc-13.2.0.ebuild @@ -5,6 +5,7 @@ EAPI=8 PYTHON_COMPAT=( python3_{10..12} ) TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="13.2.0" PATCH_VER="3" MUSL_VER="2" diff --git a/sys-devel/gcc/gcc-13.2.1_p20240210.ebuild b/sys-devel/gcc/gcc-13.2.1_p20240210.ebuild index 1a557eb3d3a2..ddcc19f03dc8 100644 --- a/sys-devel/gcc/gcc-13.2.1_p20240210.ebuild +++ b/sys-devel/gcc/gcc-13.2.1_p20240210.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="13.2.0" PATCH_VER="14" MUSL_VER="2" diff --git a/sys-devel/gcc/gcc-13.3.1_p20240614.ebuild b/sys-devel/gcc/gcc-13.3.1_p20240614.ebuild index e8978a0424a0..0e2a5ec26af0 100644 --- a/sys-devel/gcc/gcc-13.3.1_p20240614.ebuild +++ b/sys-devel/gcc/gcc-13.3.1_p20240614.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="13.2.0" MUSL_GCC_VER="13.2.0" PATCH_VER="17" diff --git a/sys-devel/gcc/gcc-13.3.1_p20240830.ebuild b/sys-devel/gcc/gcc-13.3.1_p20240830.ebuild index 740880e94563..bc9e058b8a4a 100644 --- a/sys-devel/gcc/gcc-13.3.1_p20240830.ebuild +++ b/sys-devel/gcc/gcc-13.3.1_p20240830.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="13.2.0" MUSL_GCC_VER="13.2.0" PATCH_VER="18" diff --git a/sys-devel/gcc/gcc-13.3.1_p20240906.ebuild b/sys-devel/gcc/gcc-13.3.1_p20240906.ebuild index 740880e94563..bc9e058b8a4a 100644 --- a/sys-devel/gcc/gcc-13.3.1_p20240906.ebuild +++ b/sys-devel/gcc/gcc-13.3.1_p20240906.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="13.2.0" MUSL_GCC_VER="13.2.0" PATCH_VER="18" diff --git a/sys-devel/gcc/gcc-13.3.1_p20240913.ebuild b/sys-devel/gcc/gcc-13.3.1_p20240913.ebuild index 740880e94563..bc9e058b8a4a 100644 --- a/sys-devel/gcc/gcc-13.3.1_p20240913.ebuild +++ b/sys-devel/gcc/gcc-13.3.1_p20240913.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="13.2.0" MUSL_GCC_VER="13.2.0" PATCH_VER="18" diff --git a/sys-devel/gcc/gcc-13.4.9999.ebuild b/sys-devel/gcc/gcc-13.4.9999.ebuild index 257dc331d8c4..d8f1286b3516 100644 --- a/sys-devel/gcc/gcc-13.4.9999.ebuild +++ b/sys-devel/gcc/gcc-13.4.9999.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="13.2.0" MUSL_GCC_VER="13.2.0" PATCH_VER="16" diff --git a/sys-devel/gcc/gcc-14.2.0.ebuild b/sys-devel/gcc/gcc-14.2.0.ebuild index dc3f01c10077..ce8bd73361ff 100644 --- a/sys-devel/gcc/gcc-14.2.0.ebuild +++ b/sys-devel/gcc/gcc-14.2.0.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="14.1.0" PATCH_VER="4" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-14.2.1_p20240817-r1.ebuild b/sys-devel/gcc/gcc-14.2.1_p20240817-r1.ebuild index a20857ef74ba..fdbbb220f723 100644 --- a/sys-devel/gcc/gcc-14.2.1_p20240817-r1.ebuild +++ b/sys-devel/gcc/gcc-14.2.1_p20240817-r1.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="14.1.0" PATCH_VER="5" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-14.2.1_p20240817.ebuild b/sys-devel/gcc/gcc-14.2.1_p20240817.ebuild index dc3f01c10077..ce8bd73361ff 100644 --- a/sys-devel/gcc/gcc-14.2.1_p20240817.ebuild +++ b/sys-devel/gcc/gcc-14.2.1_p20240817.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="14.1.0" PATCH_VER="4" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-14.2.1_p20240831.ebuild b/sys-devel/gcc/gcc-14.2.1_p20240831.ebuild index a20857ef74ba..fdbbb220f723 100644 --- a/sys-devel/gcc/gcc-14.2.1_p20240831.ebuild +++ b/sys-devel/gcc/gcc-14.2.1_p20240831.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="14.1.0" PATCH_VER="5" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-14.2.1_p20240907.ebuild b/sys-devel/gcc/gcc-14.2.1_p20240907.ebuild index a20857ef74ba..fdbbb220f723 100644 --- a/sys-devel/gcc/gcc-14.2.1_p20240907.ebuild +++ b/sys-devel/gcc/gcc-14.2.1_p20240907.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="14.1.0" PATCH_VER="5" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-14.2.1_p20240914.ebuild b/sys-devel/gcc/gcc-14.2.1_p20240914.ebuild index a20857ef74ba..fdbbb220f723 100644 --- a/sys-devel/gcc/gcc-14.2.1_p20240914.ebuild +++ b/sys-devel/gcc/gcc-14.2.1_p20240914.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="14.1.0" PATCH_VER="5" MUSL_VER="1" diff --git a/sys-devel/gcc/gcc-14.3.9999.ebuild b/sys-devel/gcc/gcc-14.3.9999.ebuild index cee600c71e71..bc9e2e7b7b05 100644 --- a/sys-devel/gcc/gcc-14.3.9999.ebuild +++ b/sys-devel/gcc/gcc-14.3.9999.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="14.1.0" MUSL_GCC_VER="14.1.0" PYTHON_COMPAT=( python3_{10..12} ) diff --git a/sys-devel/gcc/gcc-15.0.0_pre20240825.ebuild b/sys-devel/gcc/gcc-15.0.0_pre20240825.ebuild index 65d6a54537ef..20fecb656626 100644 --- a/sys-devel/gcc/gcc-15.0.0_pre20240825.ebuild +++ b/sys-devel/gcc/gcc-15.0.0_pre20240825.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="15.0.0" PATCH_VER="11" MUSL_VER="2" diff --git a/sys-devel/gcc/gcc-15.0.0_pre20240901.ebuild b/sys-devel/gcc/gcc-15.0.0_pre20240901.ebuild index 251b75fc96ae..3ae01ca0596b 100644 --- a/sys-devel/gcc/gcc-15.0.0_pre20240901.ebuild +++ b/sys-devel/gcc/gcc-15.0.0_pre20240901.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="15.0.0" PATCH_VER="12" MUSL_VER="2" diff --git a/sys-devel/gcc/gcc-15.0.0_pre20240908.ebuild b/sys-devel/gcc/gcc-15.0.0_pre20240908.ebuild index 251b75fc96ae..3ae01ca0596b 100644 --- a/sys-devel/gcc/gcc-15.0.0_pre20240908.ebuild +++ b/sys-devel/gcc/gcc-15.0.0_pre20240908.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="15.0.0" PATCH_VER="12" MUSL_VER="2" diff --git a/sys-devel/gcc/gcc-15.0.0_pre20240915.ebuild b/sys-devel/gcc/gcc-15.0.0_pre20240915.ebuild index 251b75fc96ae..3ae01ca0596b 100644 --- a/sys-devel/gcc/gcc-15.0.0_pre20240915.ebuild +++ b/sys-devel/gcc/gcc-15.0.0_pre20240915.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="15.0.0" PATCH_VER="12" MUSL_VER="2" diff --git a/sys-devel/gcc/gcc-15.0.9999.ebuild b/sys-devel/gcc/gcc-15.0.9999.ebuild index 54390309a356..01eae230d759 100644 --- a/sys-devel/gcc/gcc-15.0.9999.ebuild +++ b/sys-devel/gcc/gcc-15.0.9999.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="15.0.0" MUSL_GCC_VER="15.0.0" PYTHON_COMPAT=( python3_{10..12} ) diff --git a/sys-devel/gcc/gcc-8.5.0-r1.ebuild b/sys-devel/gcc/gcc-8.5.0-r1.ebuild index 13197fafa7d8..c1ae8df40177 100644 --- a/sys-devel/gcc/gcc-8.5.0-r1.ebuild +++ b/sys-devel/gcc/gcc-8.5.0-r1.ebuild @@ -5,6 +5,7 @@ EAPI="7" TOOLCHAIN_PATCH_SUFFIX="xz" TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_VER="4" PYTHON_COMPAT=( python3_{10..12} ) diff --git a/sys-devel/gcc/gcc-9.5.0.ebuild b/sys-devel/gcc/gcc-9.5.0.ebuild index 3e1ae186c507..db195459e4a6 100644 --- a/sys-devel/gcc/gcc-9.5.0.ebuild +++ b/sys-devel/gcc/gcc-9.5.0.ebuild @@ -4,6 +4,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_HAS_TESTS=1 PATCH_GCC_VER="9.5.0" PATCH_VER="2" PYTHON_COMPAT=( python3_{10..12} ) diff --git a/sys-devel/kgcc64/Manifest b/sys-devel/kgcc64/Manifest index 554a64850555..29b2a67c44c7 100644 --- a/sys-devel/kgcc64/Manifest +++ b/sys-devel/kgcc64/Manifest @@ -19,4 +19,3 @@ DIST gcc-14-20240817.tar.xz 88024252 BLAKE2B 994b3e263246e344c6898943a17feb63f07 DIST gcc-14.1.0-musl-patches-1.tar.xz 3600 BLAKE2B 4cd920b7ca1f122cae806707564d8e45bfd48e78c88788a12a301f6068b5a5f335d8885e67479ac536c66aeaa81f2ecb7240ae56e9fc821a7246ab66b453711f SHA512 61c48d90a55dfc2129d96aee69d939d6a89f6407f69f7bd12c1a619f28989f471fd219d731958f8e62b0fd650c32300f0ad8dc06d5df23d9fc8c1a77fe210c25 DIST gcc-14.1.0-patches-1.tar.xz 11584 BLAKE2B d483f4e3324acdc26b9837028d5e20ad0cdcf3ef4bcc78a6902d63ceebc7e5ff70c8163f6a8c8e36405df47c59dd2df506147c53ce51a8ec73494e65b5902647 SHA512 3d7aea113b594d1896c93e9e6be85f467488fa75de2800ed76eab2f87cef26829b235d1f361b187e38cf13b0fb9518cd4431c3106ec1e49d0f744e7eb703eaa0 DIST gcc-14.1.0-patches-4.tar.xz 11620 BLAKE2B c819fbdea1f3bf10c8d4214d4c33cf28c1410171d2833b6f8c1225eeefe749ddb815067b3fdb750e5839761aee8d39ffc51ffb492f88e630076818a61b18362b SHA512 0d6e1b04591607dfc8022124b186ce499467c32db7667ee1a640fe2e07706597edc0e4ad5c7ebcb75c8f5fc6e45e9b9ef715402c71ff9ab21fe380007fe5d84f -DIST gcc-validate-failures-a447cd6dee206facb66720bdacf0c765a8b09f33.py 27537 BLAKE2B 96c7474de0bc50ab890a91551412398c979396c43aa237a4b6d8baa98ce7fda2cc9f5a755a03fd9d055d885ee2fb40ba29644a0649c24398361ce75a20fae634 SHA512 409434953351cf1f2287f1e4a4fbde5b28a27add35ddd284080acec71b33cb4ec5e1c07f41a79fac060bd6f1eedd198812495141923e410ded907429fe515f83 diff --git a/sys-devel/kgcc64/kgcc64-10.5.0.ebuild b/sys-devel/kgcc64/kgcc64-10.5.0.ebuild index fbde9c9ed90f..2c36a71417c8 100644 --- a/sys-devel/kgcc64/kgcc64-10.5.0.ebuild +++ b/sys-devel/kgcc64/kgcc64-10.5.0.ebuild @@ -20,7 +20,6 @@ PATCH_VER="6" MUSL_VER="2" MUSL_GCC_VER="10.5.0" GCC_TARGET_NO_MULTILIB=true -PYTHON_COMPAT=( python3_{10..12} ) inherit toolchain diff --git a/sys-devel/kgcc64/kgcc64-11.4.1_p20240501.ebuild b/sys-devel/kgcc64/kgcc64-11.4.1_p20240501.ebuild index ffb81657cd1d..932a1026c94e 100644 --- a/sys-devel/kgcc64/kgcc64-11.4.1_p20240501.ebuild +++ b/sys-devel/kgcc64/kgcc64-11.4.1_p20240501.ebuild @@ -20,7 +20,6 @@ PATCH_GCC_VER="11.4.0" PATCH_VER="12" MUSL_VER="2" MUSL_GCC_VER="11.4.0" -PYTHON_COMPAT=( python3_{10..12} ) inherit toolchain DESCRIPTION="64bit kernel compiler" diff --git a/sys-devel/kgcc64/kgcc64-11.5.0.ebuild b/sys-devel/kgcc64/kgcc64-11.5.0.ebuild index 8b9a457d1bdf..6664cd1bfd0c 100644 --- a/sys-devel/kgcc64/kgcc64-11.5.0.ebuild +++ b/sys-devel/kgcc64/kgcc64-11.5.0.ebuild @@ -20,7 +20,6 @@ PATCH_GCC_VER="11.4.0" PATCH_VER="12" MUSL_VER="2" MUSL_GCC_VER="11.4.0" -PYTHON_COMPAT=( python3_{10..12} ) inherit toolchain DESCRIPTION="64bit kernel compiler" diff --git a/sys-devel/kgcc64/kgcc64-12.3.1_p20240502.ebuild b/sys-devel/kgcc64/kgcc64-12.3.1_p20240502.ebuild index 6dd586e62c0a..b224186bda08 100644 --- a/sys-devel/kgcc64/kgcc64-12.3.1_p20240502.ebuild +++ b/sys-devel/kgcc64/kgcc64-12.3.1_p20240502.ebuild @@ -19,7 +19,6 @@ PATCH_GCC_VER="12.3.0" MUSL_VER="1" MUSL_GCC_VER="12.3.0" GCC_TARGET_NO_MULTILIB=true -PYTHON_COMPAT=( python3_{10..12} ) inherit toolchain DESCRIPTION="64bit kernel compiler" diff --git a/sys-devel/kgcc64/kgcc64-12.4.0.ebuild b/sys-devel/kgcc64/kgcc64-12.4.0.ebuild index 61305646587b..4945bcb6d029 100644 --- a/sys-devel/kgcc64/kgcc64-12.4.0.ebuild +++ b/sys-devel/kgcc64/kgcc64-12.4.0.ebuild @@ -19,7 +19,6 @@ PATCH_GCC_VER="12.3.0" MUSL_VER="1" MUSL_GCC_VER="12.3.0" GCC_TARGET_NO_MULTILIB=true -PYTHON_COMPAT=( python3_{10..12} ) inherit toolchain DESCRIPTION="64bit kernel compiler" diff --git a/sys-devel/kgcc64/kgcc64-13.2.1_p20240503.ebuild b/sys-devel/kgcc64/kgcc64-13.2.1_p20240503.ebuild index bb7a651fa2f2..6dc5999d5745 100644 --- a/sys-devel/kgcc64/kgcc64-13.2.1_p20240503.ebuild +++ b/sys-devel/kgcc64/kgcc64-13.2.1_p20240503.ebuild @@ -19,7 +19,6 @@ PATCH_GCC_VER="13.2.0" MUSL_VER="2" MUSL_GCC_VER="13.2.0" GCC_TARGET_NO_MULTILIB=true -PYTHON_COMPAT=( python3_{10..12} ) inherit toolchain DESCRIPTION="64bit kernel compiler" diff --git a/sys-devel/kgcc64/kgcc64-13.3.1_p20240614.ebuild b/sys-devel/kgcc64/kgcc64-13.3.1_p20240614.ebuild index d8efdd71af25..71e23dd24e5e 100644 --- a/sys-devel/kgcc64/kgcc64-13.3.1_p20240614.ebuild +++ b/sys-devel/kgcc64/kgcc64-13.3.1_p20240614.ebuild @@ -19,7 +19,6 @@ PATCH_GCC_VER="13.2.0" MUSL_VER="2" MUSL_GCC_VER="13.2.0" GCC_TARGET_NO_MULTILIB=true -PYTHON_COMPAT=( python3_{10..12} ) inherit toolchain DESCRIPTION="64bit kernel compiler" diff --git a/sys-devel/kgcc64/kgcc64-14.1.1_p20240511.ebuild b/sys-devel/kgcc64/kgcc64-14.1.1_p20240511.ebuild index cc3127938240..295eee8a3965 100644 --- a/sys-devel/kgcc64/kgcc64-14.1.1_p20240511.ebuild +++ b/sys-devel/kgcc64/kgcc64-14.1.1_p20240511.ebuild @@ -19,7 +19,6 @@ PATCH_GCC_VER="14.1.0" MUSL_VER="1" MUSL_GCC_VER="14.1.0" GCC_TARGET_NO_MULTILIB=true -PYTHON_COMPAT=( python3_{10..12} ) inherit toolchain DESCRIPTION="64bit kernel compiler" diff --git a/sys-devel/kgcc64/kgcc64-14.2.1_p20240817.ebuild b/sys-devel/kgcc64/kgcc64-14.2.1_p20240817.ebuild index d3384b00b844..b46d16e1bf8e 100644 --- a/sys-devel/kgcc64/kgcc64-14.2.1_p20240817.ebuild +++ b/sys-devel/kgcc64/kgcc64-14.2.1_p20240817.ebuild @@ -19,7 +19,6 @@ PATCH_GCC_VER="14.1.0" MUSL_VER="1" MUSL_GCC_VER="14.1.0" GCC_TARGET_NO_MULTILIB=true -PYTHON_COMPAT=( python3_{10..12} ) inherit toolchain DESCRIPTION="64bit kernel compiler" diff --git a/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-19.ebuild b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-19.ebuild index b85bf912c557..595d1276529a 100644 --- a/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-19.ebuild +++ b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-19.ebuild @@ -11,6 +11,7 @@ S=${WORKDIR} LICENSE="public-domain" SLOT="${PV}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~arm64-macos" IUSE="multilib-symlinks +native-symlinks" RDEPEND=" diff --git a/sys-devel/lld/Manifest b/sys-devel/lld/Manifest index 6cd5577e7dc3..80466a667ab0 100644 --- a/sys-devel/lld/Manifest +++ b/sys-devel/lld/Manifest @@ -9,6 +9,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-devel/lld/lld-19.1.0.ebuild b/sys-devel/lld/lld-19.1.0.ebuild new file mode 100644 index 000000000000..2cabcdd2ddcf --- /dev/null +++ b/sys-devel/lld/lld-19.1.0.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake flag-o-matic llvm.org llvm-utils python-any-r1 toolchain-funcs + +DESCRIPTION="The LLVM linker (link editor)" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~arm64-macos" +IUSE="debug test zstd" +RESTRICT="!test? ( test )" + +DEPEND=" + ~sys-devel/llvm-${PV}[debug=,zstd=] + sys-libs/zlib:= + zstd? ( app-arch/zstd:= ) +" +RDEPEND=" + ${DEPEND} + !sys-devel/lld:0 +" +BDEPEND=" + sys-devel/llvm:${LLVM_MAJOR} + test? ( + $(python_gen_any_dep ">=dev-python/lit-${PV}[\${PYTHON_USEDEP}]") + ) +" +PDEPEND=" + >=sys-devel/lld-toolchain-symlinks-16-r2:${LLVM_MAJOR} +" + +LLVM_COMPONENTS=( lld cmake libunwind/include/mach-o ) +llvm.org_set_globals + +python_check_deps() { + python_has_version ">=dev-python/lit-${PV}[${PYTHON_USEDEP}]" +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_unpack() { + llvm.org_src_unpack + + # Directory ${WORKDIR}/llvm does not exist with USE="-test", + # but LLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" is set below, + # and ${LLVM_MAIN_SRC_DIR}/../libunwind/include is used by build system + # (lld/MachO/CMakeLists.txt) and is expected to be resolvable + # to existent directory ${WORKDIR}/libunwind/include. + mkdir -p "${WORKDIR}/llvm" || die +} + +src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + # ODR violations (https://github.com/llvm/llvm-project/issues/83529, bug #922353) + filter-lto + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + + use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 + + local mycmakeargs=( + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" + -DBUILD_SHARED_LIBS=ON + -DLLVM_INCLUDE_TESTS=$(usex test) + -DLLVM_ENABLE_ZLIB=FORCE_ON + -DLLVM_ENABLE_ZSTD=$(usex zstd FORCE_ON OFF) + ) + + use test && mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags)" + -DPython3_EXECUTABLE="${PYTHON}" + ) + + tc-is-cross-compiler && mycmakeargs+=( + -DLLVM_TABLEGEN_EXE="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" + ) + + cmake_src_configure +} + +src_test() { + local -x LIT_PRESERVES_TMP=1 + cmake_build check-lld +} diff --git a/sys-devel/llvm-common/Manifest b/sys-devel/llvm-common/Manifest index da671e73c02c..05cedfc4345b 100644 --- a/sys-devel/llvm-common/Manifest +++ b/sys-devel/llvm-common/Manifest @@ -8,6 +8,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-devel/llvm-common/llvm-common-19.1.0.ebuild b/sys-devel/llvm-common/llvm-common-19.1.0.ebuild new file mode 100644 index 000000000000..7a852f871e36 --- /dev/null +++ b/sys-devel/llvm-common/llvm-common-19.1.0.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit elisp-common llvm.org + +DESCRIPTION="Common files shared between multiple slots of LLVM" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" +IUSE="emacs" + +RDEPEND=" + !sys-devel/llvm:0 +" +BDEPEND=" + emacs? ( >=app-editors/emacs-23.1:* ) +" + +LLVM_COMPONENTS=( llvm/utils ) +llvm.org_set_globals + +SITEFILE="50llvm-gentoo.el" +BYTECOMPFLAGS="-L emacs" + +src_compile() { + default + + use emacs && elisp-compile emacs/*.el +} + +src_install() { + insinto /usr/share/vim/vimfiles + doins -r vim/*/ + # some users may find it useful + newdoc vim/README README.vim + dodoc vim/vimrc + + if use emacs ; then + elisp-install llvm emacs/*.{el,elc} + elisp-make-site-file "${SITEFILE}" llvm + fi +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-19.ebuild b/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-19.ebuild index 60b627fbf393..0f622a6f7cbb 100644 --- a/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-19.ebuild +++ b/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-19.ebuild @@ -11,6 +11,7 @@ S=${WORKDIR} LICENSE="public-domain" SLOT="${PV}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" IUSE="multilib-symlinks +native-symlinks" RDEPEND=" diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest index f21075fb6612..1ca58ec38321 100644 --- a/sys-devel/llvm/Manifest +++ b/sys-devel/llvm/Manifest @@ -4,6 +4,7 @@ DIST llvm-17.0.1-manpages.tar.bz2 263148 BLAKE2B 6485a261e356eacc4a274f9b8d329b5 DIST llvm-18.1.0-manpages.tar.bz2 270429 BLAKE2B d85d6e23197184dc512019c25805af0aa145eefb4c36215807c1ba70ad47943c05c06dbaafd84a7e6487bdd83814e03277374e095d97b129e3fc8d468c10741c SHA512 5f492c85fad4e04e0148ea509f4b6520de9e2765c51e617363a11aa8e47c2d847f6b0897958ca1d93bccf0f6a9150868b7e04c728bd430c05bf2da30bdeba6cc DIST llvm-gentoo-patchset-15.0.7-r3.tar.xz 24268 BLAKE2B 6531ae385ecea87bc26dba8ce19b4cde8ff224c80fd81f04c6ded131e305ecfdeb8d29ebd3b68a641d240805dc83eb0ebc7cc85124f02ad0ee66e0f201b91d7e SHA512 66cb33f8b423736b990fb75d4f2d1e5f14c0b03308f403297204dd1a352d72f85f34220fd66d3de5d6df328cdf2ffce03c2a111cb0bb57791cf68a88069ac7df DIST llvm-gentoo-patchset-15.0.7-r6.tar.xz 25208 BLAKE2B c9fca31a053ee059c3060a94dcf675d472fc1a59b5f927648de58fb4ff20bfc229890f789ed47b3d053bd466b860a0c60a53b4b024a8fe18c776e9a72434d6de SHA512 601cd923711839dca7cb5bfea53ded644777c6340265a797939a53409fd2ca27059a015fd6ca6832e60314699ade27919a9a59dab395cc27f8fdc479a0f3c034 +DIST llvm-gentoo-patchset-15.0.7-r7.tar.xz 26012 BLAKE2B a3b6059e18e1347b1da18ef6eb66e12de8980d1fe6b7e92189dd1ce36b16e31d940e45e5f99bd53c30a5780c26ff0686adf5373d3469b8a9b3c5f44d83827832 SHA512 3eb7c36793a6fa0ff585a7732287f6a14141e6c9c9a20b37390303d46372ee9d9a768597e64c77de0731d9aa4c26295f26b36bbc26c69dfbd8ab14cb2564a171 DIST llvm-gentoo-patchset-16.0.6-r5.tar.xz 19728 BLAKE2B 36b605401893034b2b560d26cfb57512c81eddbc35b25d9c3d1fe051b8825c38cae1b8ed999faf8fef564ca5578402d3979bc56ba0a5514dc62594d893696f41 SHA512 20a36b69dfc2b4796ce33318a28529ebdc213945ee67a983e4218117d2ee2c93be1ecb38b0e8189249c5806a442cba708e0890e1b7bf6376edec4403bcc71425 DIST llvm-gentoo-patchset-16.0.6.tar.xz 17340 BLAKE2B 37cdf4b38367b4256d4f7a25d1b4f41758e5f81be8e20a1c94a10d6c5e36642e9672121b455e73a0bac2eb40467ef2db4b43789b2912a6790593d97b8b5c27e3 SHA512 2c02b9d8a4c5af9fddcd26c95dc66fffae32cb5b7f85c65a1aa4ed00dd8cd5b01cc1975a711aee63c0b8b11e9dc20f2bc05ea753904eb516892b820f02aff825 DIST llvm-gentoo-patchset-17.0.6-r2.tar.xz 3664 BLAKE2B b3d61090bec41469027115f1a7b9c51ff2cd720a5363c755da7c87c120e4c85b5a2b4d65b95e418f15d947e580824d267a5ee86336f2d9272e58ec24fa2acaf7 SHA512 4be3d2fefce3f5b6b8f64632ff47a53d4de8a20b276e538527ba01a1a663c2846e1eba28fdd70364e583884618d94ee774791b1ca03fdda1fef8110b664e506c @@ -21,6 +22,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-devel/llvm/llvm-15.0.7-r7.ebuild b/sys-devel/llvm/llvm-15.0.7-r7.ebuild new file mode 100644 index 000000000000..ecff8b6dcb9b --- /dev/null +++ b/sys-devel/llvm/llvm-15.0.7-r7.ebuild @@ -0,0 +1,520 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1 \ + toolchain-funcs + +DESCRIPTION="Low Level Virtual Machine" +HOMEPAGE="https://llvm.org/" + +# Additional licenses: +# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD. +# 2. xxhash: BSD. +# 3. MD5 code: public-domain. +# 4. ConvertUTF.h: TODO. + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc" +SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos" +IUSE=" + +binutils-plugin debug doc exegesis libedit +libffi ncurses test xar + xml z3 zstd +" +RESTRICT="!test? ( test )" + +RDEPEND=" + sys-libs/zlib:0=[${MULTILIB_USEDEP}] + exegesis? ( dev-libs/libpfm:= ) + libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] ) + libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] ) + ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] ) + xar? ( app-arch/xar ) + xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) + z3? ( >=sci-mathematics/z3-4.7.1:0=[${MULTILIB_USEDEP}] ) + zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) +" +DEPEND=" + ${RDEPEND} + binutils-plugin? ( sys-libs/binutils-libs ) +" +BDEPEND=" + ${PYTHON_DEPS} + dev-lang/perl + sys-devel/gnuconfig + kernel_Darwin? ( + <sys-libs/libcxx-${LLVM_VERSION}.9999 + >=sys-devel/binutils-apple-5.1 + ) + doc? ( $(python_gen_any_dep ' + dev-python/recommonmark[${PYTHON_USEDEP}] + dev-python/sphinx[${PYTHON_USEDEP}] + ') ) + libffi? ( virtual/pkgconfig ) +" +# There are no file collisions between these versions but having :0 +# installed means llvm-config there will take precedence. +RDEPEND=" + ${RDEPEND} + !sys-devel/llvm:0 +" +PDEPEND=" + sys-devel/llvm-common + sys-devel/llvm-toolchain-symlinks:${LLVM_MAJOR} + binutils-plugin? ( >=sys-devel/llvmgold-${LLVM_MAJOR} ) +" + +LLVM_COMPONENTS=( llvm cmake third-party ) +LLVM_MANPAGES=1 +LLVM_PATCHSET=${PV/_/-}-r7 +LLVM_USE_TARGETS=provide +llvm.org_set_globals + +python_check_deps() { + use doc || return 0 + + python_has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" +} + +check_uptodate() { + local prod_targets=( + $(sed -n -e '/set(LLVM_ALL_TARGETS/,/)/p' CMakeLists.txt \ + | tail -n +2 | head -n -1) + ) + local all_targets=( + lib/Target/*/ + ) + all_targets=( "${all_targets[@]#lib/Target/}" ) + all_targets=( "${all_targets[@]%/}" ) + + local exp_targets=() i + for i in "${all_targets[@]}"; do + has "${i}" "${prod_targets[@]}" || exp_targets+=( "${i}" ) + done + + if [[ ${exp_targets[*]} != ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]} ]]; then + eqawarn "ALL_LLVM_EXPERIMENTAL_TARGETS is outdated!" + eqawarn " Have: ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]}" + eqawarn "Expected: ${exp_targets[*]}" + eqawarn + fi + + if [[ ${prod_targets[*]} != ${ALL_LLVM_PRODUCTION_TARGETS[*]} ]]; then + eqawarn "ALL_LLVM_PRODUCTION_TARGETS is outdated!" + eqawarn " Have: ${ALL_LLVM_PRODUCTION_TARGETS[*]}" + eqawarn "Expected: ${prod_targets[*]}" + fi +} + +check_distribution_components() { + if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then + local all_targets=() my_targets=() l + cd "${BUILD_DIR}" || die + + while read -r l; do + if [[ ${l} == install-*-stripped:* ]]; then + l=${l#install-} + l=${l%%-stripped*} + + case ${l} in + # shared libs + LLVM|LLVMgold) + ;; + # TableGen lib + deps + LLVMDemangle|LLVMSupport|LLVMTableGen) + ;; + # static libs + LLVM*) + continue + ;; + # meta-targets + distribution|llvm-libraries) + continue + ;; + # used only w/ USE=doc + docs-llvm-html) + use doc || continue + ;; + esac + + all_targets+=( "${l}" ) + fi + done < <(${NINJA} -t targets all) + + while read -r l; do + my_targets+=( "${l}" ) + done < <(get_distribution_components $"\n") + + local add=() remove=() + for l in "${all_targets[@]}"; do + if ! has "${l}" "${my_targets[@]}"; then + add+=( "${l}" ) + fi + done + for l in "${my_targets[@]}"; do + if ! has "${l}" "${all_targets[@]}"; then + remove+=( "${l}" ) + fi + done + + if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then + eqawarn "get_distribution_components() is outdated!" + eqawarn " Add: ${add[*]}" + eqawarn "Remove: ${remove[*]}" + fi + cd - >/dev/null || die + fi +} + +src_prepare() { + # disable use of SDK on OSX, bug #568758 + sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die + + # Update config.guess to support more systems + cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die + + # Verify that the ebuild is up-to-date + check_uptodate + + llvm.org_src_prepare +} + +get_distribution_components() { + local sep=${1-;} + + local out=( + # shared libs + LLVM + LTO + Remarks + + # tools + llvm-config + + # common stuff + cmake-exports + llvm-headers + + # libraries needed for clang-tblgen + LLVMDemangle + LLVMSupport + LLVMTableGen + ) + + if multilib_is_native_abi; then + out+=( + # utilities + llvm-tblgen + FileCheck + llvm-PerfectShuffle + count + not + yaml-bench + UnicodeNameMappingGenerator + + # tools + bugpoint + dsymutil + llc + lli + lli-child-target + llvm-addr2line + llvm-ar + llvm-as + llvm-bcanalyzer + llvm-bitcode-strip + llvm-c-test + llvm-cat + llvm-cfi-verify + llvm-config + llvm-cov + llvm-cvtres + llvm-cxxdump + llvm-cxxfilt + llvm-cxxmap + llvm-debuginfod + llvm-debuginfod-find + llvm-diff + llvm-dis + llvm-dlltool + llvm-dwarfdump + llvm-dwarfutil + llvm-dwp + llvm-exegesis + llvm-extract + llvm-gsymutil + llvm-ifs + llvm-install-name-tool + llvm-jitlink + llvm-jitlink-executor + llvm-lib + llvm-libtool-darwin + llvm-link + llvm-lipo + llvm-lto + llvm-lto2 + llvm-mc + llvm-mca + llvm-ml + llvm-modextract + llvm-mt + llvm-nm + llvm-objcopy + llvm-objdump + llvm-opt-report + llvm-otool + llvm-pdbutil + llvm-profdata + llvm-profgen + llvm-ranlib + llvm-rc + llvm-readelf + llvm-readobj + llvm-reduce + llvm-remark-size-diff + llvm-rtdyld + llvm-sim + llvm-size + llvm-split + llvm-stress + llvm-strings + llvm-strip + llvm-symbolizer + llvm-tapi-diff + llvm-tli-checker + llvm-undname + llvm-windres + llvm-xray + obj2yaml + opt + sancov + sanstats + split-file + verify-uselistorder + yaml2obj + + # python modules + opt-viewer + ) + + if llvm_are_manpages_built; then + out+=( + # manpages + docs-dsymutil-man + docs-llvm-dwarfdump-man + docs-llvm-man + ) + fi + use doc && out+=( + docs-llvm-html + ) + + use binutils-plugin && out+=( + LLVMgold + ) + fi + + printf "%s${sep}" "${out[@]}" +} + +multilib_src_configure() { + if use ppc && tc-is-gcc && [[ $(gcc-major-version) -lt 14 ]]; then + # Workaround for bug #880677 + append-flags $(test-flags-CXX -fno-ipa-sra -fno-ipa-modref -fno-ipa-icf) + fi + + # ODR violations (bug #917536, bug #926529). Just do it for GCC for now + # to avoid people grumbling. GCC is, anecdotally, more likely to miscompile + # LLVM with LTO anyway (which is not necessarily its fault). + tc-is-gcc && filter-lto + + local ffi_cflags ffi_ldflags + if use libffi; then + ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi) + ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi) + fi + + local libdir=$(get_libdir) + local mycmakeargs=( + # disable appending VCS revision to the version to improve + # direct cache hit ratio + -DLLVM_APPEND_VC_REV=OFF + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" + -DLLVM_LIBDIR_SUFFIX=${libdir#lib} + + -DBUILD_SHARED_LIBS=OFF + -DLLVM_BUILD_LLVM_DYLIB=ON + -DLLVM_LINK_LLVM_DYLIB=ON + -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) + + # cheap hack: LLVM combines both anyway, and the only difference + # is that the former list is explicitly verified at cmake time + -DLLVM_TARGETS_TO_BUILD="" + -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" + -DLLVM_BUILD_TESTS=$(usex test) + + -DLLVM_ENABLE_FFI=$(usex libffi) + -DLLVM_ENABLE_LIBEDIT=$(usex libedit) + -DLLVM_ENABLE_TERMINFO=$(usex ncurses) + -DLLVM_ENABLE_LIBXML2=$(usex xml) + -DLLVM_ENABLE_ASSERTIONS=$(usex debug) + -DLLVM_ENABLE_LIBPFM=$(usex exegesis) + -DLLVM_ENABLE_EH=ON + -DLLVM_ENABLE_RTTI=ON + -DLLVM_ENABLE_Z3_SOLVER=$(usex z3) + -DLLVM_ENABLE_ZLIB=FORCE_ON + -DLLVM_ENABLE_ZSTD=$(usex zstd FORCE_ON OFF) + + -DLLVM_HOST_TRIPLE="${CHOST}" + + -DFFI_INCLUDE_DIR="${ffi_cflags#-I}" + -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}" + # used only for llvm-objdump tool + -DLLVM_HAVE_LIBXAR=$(multilib_native_usex xar 1 0) + + -DPython3_EXECUTABLE="${PYTHON}" + + # disable OCaml bindings (now in dev-ml/llvm-ocaml) + -DOCAMLFIND=NO + ) + + if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then + # Smart hack: alter version suffix -> SOVERSION when linking + # against libc++. This way we won't end up mixing LLVM libc++ + # libraries with libstdc++ clang, and the other way around. + mycmakeargs+=( + -DLLVM_VERSION_SUFFIX="libcxx" + -DLLVM_ENABLE_LIBCXX=ON + ) + fi + +# Note: go bindings have no CMake rules at the moment +# but let's kill the check in case they are introduced +# if ! multilib_is_native_abi || ! use go; then + mycmakeargs+=( + -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND + ) +# fi + + use test && mycmakeargs+=( + -DLLVM_LIT_ARGS="$(get_lit_flags)" + ) + + if multilib_is_native_abi; then + local build_docs=OFF + if llvm_are_manpages_built; then + build_docs=ON + mycmakeargs+=( + -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" + -DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" + -DSPHINX_WARNINGS_AS_ERRORS=OFF + ) + fi + + mycmakeargs+=( + -DLLVM_BUILD_DOCS=${build_docs} + -DLLVM_ENABLE_OCAMLDOC=OFF + -DLLVM_ENABLE_SPHINX=${build_docs} + -DLLVM_ENABLE_DOXYGEN=OFF + -DLLVM_INSTALL_UTILS=ON + ) + use binutils-plugin && mycmakeargs+=( + -DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include + ) + fi + + if tc-is-cross-compiler; then + local tblgen="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" + [[ -x "${tblgen}" ]] \ + || die "${tblgen} not found or usable" + mycmakeargs+=( + -DCMAKE_CROSSCOMPILING=ON + -DLLVM_TABLEGEN="${tblgen}" + ) + fi + + # LLVM can have very high memory consumption while linking, + # exhausting the limit on 32-bit linker executable + use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + cmake_src_configure + + grep -q -E "^CMAKE_PROJECT_VERSION_MAJOR(:.*)?=${LLVM_MAJOR}$" \ + CMakeCache.txt || + die "Incorrect version, did you update _LLVM_MASTER_MAJOR?" + multilib_is_native_abi && check_distribution_components +} + +multilib_src_compile() { + tc-env_build cmake_build distribution + + pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld + pax-mark m "${BUILD_DIR}"/bin/lli + pax-mark m "${BUILD_DIR}"/bin/lli-child-target + + if use test; then + pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests + pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests + pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests + fi +} + +multilib_src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + cmake_build check +} + +src_install() { + local MULTILIB_CHOST_TOOLS=( + /usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-config + ) + + local MULTILIB_WRAPPED_HEADERS=( + /usr/include/llvm/Config/llvm-config.h + ) + + local LLVM_LDPATHS=() + multilib-minimal_src_install + + # move wrapped headers back + mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die +} + +multilib_src_install() { + DESTDIR=${D} cmake_build install-distribution + + # move headers to /usr/include for wrapping + rm -rf "${ED}"/usr/include || die + mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die + + LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)" ) +} + +multilib_src_install_all() { + local revord=$(( 9999 - ${LLVM_MAJOR} )) + newenvd - "60llvm-${revord}" <<-_EOF_ + PATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" + # we need to duplicate it in ROOTPATH for Portage to respect... + ROOTPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" + MANPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" + LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )" + _EOF_ + + docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man" + llvm_install_manpages +} + +pkg_postinst() { + elog "You can find additional opt-viewer utility scripts in:" + elog " ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/opt-viewer" + elog "To use these scripts, you will need Python along with the following" + elog "packages:" + elog " dev-python/pygments (for opt-viewer)" + elog " dev-python/pyyaml (for all of them)" +} diff --git a/sys-devel/llvm/llvm-19.1.0.ebuild b/sys-devel/llvm/llvm-19.1.0.ebuild new file mode 100644 index 000000000000..64c63c9517cb --- /dev/null +++ b/sys-devel/llvm/llvm-19.1.0.ebuild @@ -0,0 +1,548 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) + +inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1 +inherit toolchain-funcs + +DESCRIPTION="Low Level Virtual Machine" +HOMEPAGE="https://llvm.org/" + +# Additional licenses: +# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD. +# 2. xxhash: BSD. +# 3. MD5 code: public-domain. +# 4. ConvertUTF.h: TODO. + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc" +SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" +IUSE=" + +binutils-plugin debug debuginfod doc exegesis libedit +libffi + test xml z3 zstd +" +RESTRICT="!test? ( test )" + +RDEPEND=" + sys-libs/zlib:0=[${MULTILIB_USEDEP}] + debuginfod? ( + net-misc/curl:= + dev-cpp/cpp-httplib:= + ) + exegesis? ( dev-libs/libpfm:= ) + libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] ) + libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] ) + xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) + z3? ( >=sci-mathematics/z3-4.7.1:0=[${MULTILIB_USEDEP}] ) + zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) +" +DEPEND=" + ${RDEPEND} + binutils-plugin? ( sys-libs/binutils-libs ) +" +BDEPEND=" + ${PYTHON_DEPS} + dev-lang/perl + sys-devel/gnuconfig + kernel_Darwin? ( + <sys-libs/libcxx-${LLVM_VERSION}.9999 + ) + libffi? ( virtual/pkgconfig ) +" +# There are no file collisions between these versions but having :0 +# installed means llvm-config there will take precedence. +RDEPEND=" + ${RDEPEND} + !sys-devel/llvm:0 +" +PDEPEND=" + sys-devel/llvm-common + sys-devel/llvm-toolchain-symlinks:${LLVM_MAJOR} + binutils-plugin? ( >=sys-devel/llvmgold-${LLVM_MAJOR} ) +" + +LLVM_COMPONENTS=( llvm cmake third-party ) +LLVM_MANPAGES=1 +LLVM_USE_TARGETS=provide +llvm.org_set_globals + +[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" doc? ( " +BDEPEND+=" + $(python_gen_any_dep ' + dev-python/myst-parser[${PYTHON_USEDEP}] + dev-python/sphinx[${PYTHON_USEDEP}] + ') +" +[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" ) " + +python_check_deps() { + llvm_are_manpages_built || return 0 + + python_has_version -b "dev-python/myst-parser[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" +} + +check_uptodate() { + local prod_targets=( + $(sed -n -e '/set(LLVM_ALL_TARGETS/,/)/p' CMakeLists.txt \ + | tail -n +2 | head -n -1) + ) + local all_targets=( + lib/Target/*/ + ) + all_targets=( "${all_targets[@]#lib/Target/}" ) + all_targets=( "${all_targets[@]%/}" ) + + local exp_targets=() i + for i in "${all_targets[@]}"; do + has "${i}" "${prod_targets[@]}" || exp_targets+=( "${i}" ) + done + + if [[ ${exp_targets[*]} != ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]} ]]; then + eqawarn "ALL_LLVM_EXPERIMENTAL_TARGETS is outdated!" + eqawarn " Have: ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]}" + eqawarn "Expected: ${exp_targets[*]}" + eqawarn + fi + + if [[ ${prod_targets[*]} != ${ALL_LLVM_PRODUCTION_TARGETS[*]} ]]; then + eqawarn "ALL_LLVM_PRODUCTION_TARGETS is outdated!" + eqawarn " Have: ${ALL_LLVM_PRODUCTION_TARGETS[*]}" + eqawarn "Expected: ${prod_targets[*]}" + fi +} + +check_distribution_components() { + if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then + local all_targets=() my_targets=() l + cd "${BUILD_DIR}" || die + + while read -r l; do + if [[ ${l} == install-*-stripped:* ]]; then + l=${l#install-} + l=${l%%-stripped*} + + case ${l} in + # shared libs + LLVM|LLVMgold) + ;; + # TableGen lib + deps + LLVMDemangle|LLVMSupport|LLVMTableGen) + ;; + # used by lldb + LLVMDebuginfod) + ;; + # testing libraries + LLVMTestingAnnotations|LLVMTestingSupport) + ;; + # static libs + LLVM*) + continue + ;; + # meta-targets + distribution|llvm-libraries) + continue + ;; + # used only w/ USE=doc + docs-llvm-html) + use doc || continue + ;; + esac + + all_targets+=( "${l}" ) + fi + done < <(${NINJA} -t targets all) + + while read -r l; do + my_targets+=( "${l}" ) + done < <(get_distribution_components $"\n") + + local add=() remove=() + for l in "${all_targets[@]}"; do + if ! has "${l}" "${my_targets[@]}"; then + add+=( "${l}" ) + fi + done + for l in "${my_targets[@]}"; do + if ! has "${l}" "${all_targets[@]}"; then + remove+=( "${l}" ) + fi + done + + if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then + eqawarn "get_distribution_components() is outdated!" + eqawarn " Add: ${add[*]}" + eqawarn "Remove: ${remove[*]}" + fi + cd - >/dev/null || die + fi +} + +src_prepare() { + # disable use of SDK on OSX, bug #568758 + sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die + + # Update config.guess to support more systems + cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die + + # Verify that the ebuild is up-to-date + check_uptodate + + llvm.org_src_prepare + + if has_version ">=sys-libs/glibc-2.40"; then + # https://github.com/llvm/llvm-project/issues/100791 + rm -r test/tools/llvm-exegesis/X86/latency || die + fi +} + +get_distribution_components() { + local sep=${1-;} + + local out=( + # shared libs + LLVM + LTO + Remarks + + # tools + llvm-config + + # common stuff + cmake-exports + llvm-headers + + # libraries needed for clang-tblgen + LLVMDemangle + LLVMSupport + LLVMTableGen + + # testing libraries + llvm_gtest + llvm_gtest_main + LLVMTestingAnnotations + LLVMTestingSupport + ) + + if multilib_is_native_abi; then + out+=( + # library used by lldb + LLVMDebuginfod + + # utilities + llvm-tblgen + FileCheck + llvm-PerfectShuffle + count + not + yaml-bench + UnicodeNameMappingGenerator + + # tools + bugpoint + dsymutil + llc + lli + lli-child-target + llvm-addr2line + llvm-ar + llvm-as + llvm-bcanalyzer + llvm-bitcode-strip + llvm-c-test + llvm-cat + llvm-cfi-verify + llvm-config + llvm-cov + llvm-cvtres + llvm-cxxdump + llvm-cxxfilt + llvm-cxxmap + llvm-debuginfo-analyzer + llvm-debuginfod-find + llvm-diff + llvm-dis + llvm-dlltool + llvm-dwarfdump + llvm-dwarfutil + llvm-dwp + llvm-exegesis + llvm-extract + llvm-gsymutil + llvm-ifs + llvm-install-name-tool + llvm-jitlink + llvm-jitlink-executor + llvm-lib + llvm-libtool-darwin + llvm-link + llvm-lipo + llvm-lto + llvm-lto2 + llvm-mc + llvm-mca + llvm-ml + llvm-modextract + llvm-mt + llvm-nm + llvm-objcopy + llvm-objdump + llvm-opt-report + llvm-otool + llvm-pdbutil + llvm-profdata + llvm-profgen + llvm-ranlib + llvm-rc + llvm-readelf + llvm-readobj + llvm-readtapi + llvm-reduce + llvm-remarkutil + llvm-rtdyld + llvm-sim + llvm-size + llvm-split + llvm-stress + llvm-strings + llvm-strip + llvm-symbolizer + llvm-tli-checker + llvm-undname + llvm-windres + llvm-xray + obj2yaml + opt + reduce-chunk-list + sancov + sanstats + split-file + verify-uselistorder + yaml2obj + + # python modules + opt-viewer + ) + + if llvm_are_manpages_built; then + out+=( + # manpages + docs-dsymutil-man + docs-llvm-dwarfdump-man + docs-llvm-man + ) + fi + use doc && out+=( + docs-llvm-html + ) + + use binutils-plugin && out+=( + LLVMgold + ) + use debuginfod && out+=( + llvm-debuginfod + ) + fi + + printf "%s${sep}" "${out[@]}" +} + +multilib_src_configure() { + if use ppc && tc-is-gcc && [[ $(gcc-major-version) -lt 14 ]]; then + # Workaround for bug #880677 + append-flags $(test-flags-CXX -fno-ipa-sra -fno-ipa-modref -fno-ipa-icf) + fi + + # ODR violations (bug #917536, bug #926529). Just do it for GCC for now + # to avoid people grumbling. GCC is, anecdotally, more likely to miscompile + # LLVM with LTO anyway (which is not necessarily its fault). + tc-is-gcc && filter-lto + + local ffi_cflags ffi_ldflags + if use libffi; then + ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi) + ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi) + fi + + local libdir=$(get_libdir) + local mycmakeargs=( + # disable appending VCS revision to the version to improve + # direct cache hit ratio + -DLLVM_APPEND_VC_REV=OFF + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" + -DLLVM_LIBDIR_SUFFIX=${libdir#lib} + + -DBUILD_SHARED_LIBS=OFF + -DLLVM_BUILD_LLVM_DYLIB=ON + -DLLVM_LINK_LLVM_DYLIB=ON + -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) + + # cheap hack: LLVM combines both anyway, and the only difference + # is that the former list is explicitly verified at cmake time + -DLLVM_TARGETS_TO_BUILD="" + -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" + -DLLVM_INCLUDE_BENCHMARKS=OFF + -DLLVM_INCLUDE_TESTS=ON + -DLLVM_BUILD_TESTS=$(usex test) + -DLLVM_INSTALL_GTEST=ON + + -DLLVM_ENABLE_FFI=$(usex libffi) + -DLLVM_ENABLE_LIBEDIT=$(usex libedit) + -DLLVM_ENABLE_LIBXML2=$(usex xml) + -DLLVM_ENABLE_ASSERTIONS=$(usex debug) + -DLLVM_ENABLE_LIBPFM=$(usex exegesis) + -DLLVM_ENABLE_EH=ON + -DLLVM_ENABLE_RTTI=ON + -DLLVM_ENABLE_Z3_SOLVER=$(usex z3) + -DLLVM_ENABLE_ZLIB=FORCE_ON + -DLLVM_ENABLE_ZSTD=$(usex zstd FORCE_ON OFF) + -DLLVM_ENABLE_CURL=$(usex debuginfod) + -DLLVM_ENABLE_HTTPLIB=$(usex debuginfod) + + -DLLVM_HOST_TRIPLE="${CHOST}" + + -DFFI_INCLUDE_DIR="${ffi_cflags#-I}" + -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}" + + -DPython3_EXECUTABLE="${PYTHON}" + + # disable OCaml bindings (now in dev-ml/llvm-ocaml) + -DOCAMLFIND=NO + ) + + local suffix= + if [[ -n ${EGIT_VERSION} && ${EGIT_BRANCH} != release/* ]]; then + # the ABI of the main branch is not stable, so let's include + # the commit id in the SOVERSION to contain the breakage + suffix+="git${EGIT_VERSION::8}" + fi + if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then + # Smart hack: alter version suffix -> SOVERSION when linking + # against libc++. This way we won't end up mixing LLVM libc++ + # libraries with libstdc++ clang, and the other way around. + suffix+="+libcxx" + mycmakeargs+=( + -DLLVM_ENABLE_LIBCXX=ON + ) + fi + mycmakeargs+=( + -DLLVM_VERSION_SUFFIX="${suffix}" + ) + + use test && mycmakeargs+=( + -DLLVM_LIT_ARGS="$(get_lit_flags)" + ) + + if multilib_is_native_abi; then + local build_docs=OFF + if llvm_are_manpages_built; then + build_docs=ON + mycmakeargs+=( + -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" + -DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" + -DSPHINX_WARNINGS_AS_ERRORS=OFF + ) + fi + + mycmakeargs+=( + -DLLVM_BUILD_DOCS=${build_docs} + -DLLVM_ENABLE_OCAMLDOC=OFF + -DLLVM_ENABLE_SPHINX=${build_docs} + -DLLVM_ENABLE_DOXYGEN=OFF + -DLLVM_INSTALL_UTILS=ON + ) + use binutils-plugin && mycmakeargs+=( + -DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include + ) + fi + + use kernel_Darwin && mycmakeargs+=( + # Use our libtool instead of looking it up with xcrun + -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" + ) + + # LLVM can have very high memory consumption while linking, + # exhausting the limit on 32-bit linker executable + use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + cmake_src_configure + + grep -q -E "^CMAKE_PROJECT_VERSION_MAJOR(:.*)?=${LLVM_MAJOR}$" \ + CMakeCache.txt || + die "Incorrect version, did you update _LLVM_MAIN_MAJOR?" + multilib_is_native_abi && check_distribution_components +} + +multilib_src_compile() { + tc-env_build cmake_build distribution + + pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld + pax-mark m "${BUILD_DIR}"/bin/lli + pax-mark m "${BUILD_DIR}"/bin/lli-child-target + + if use test; then + pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests + pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests + pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests + fi +} + +multilib_src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + cmake_build check +} + +src_install() { + local MULTILIB_CHOST_TOOLS=( + /usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-config + ) + + local MULTILIB_WRAPPED_HEADERS=( + /usr/include/llvm/Config/llvm-config.h + ) + + local LLVM_LDPATHS=() + multilib-minimal_src_install + + # move wrapped headers back + mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die +} + +multilib_src_install() { + DESTDIR=${D} cmake_build install-distribution + + # move headers to /usr/include for wrapping + rm -rf "${ED}"/usr/include || die + mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die + + LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)" ) +} + +multilib_src_install_all() { + local revord=$(( 9999 - ${LLVM_MAJOR} )) + newenvd - "60llvm-${revord}" <<-_EOF_ + PATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" + # we need to duplicate it in ROOTPATH for Portage to respect... + ROOTPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" + MANPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" + LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )" + _EOF_ + + docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man" + llvm_install_manpages +} + +pkg_postinst() { + elog "You can find additional opt-viewer utility scripts in:" + elog " ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/opt-viewer" + elog "To use these scripts, you will need Python along with the following" + elog "packages:" + elog " dev-python/pygments (for opt-viewer)" + elog " dev-python/pyyaml (for all of them)" +} diff --git a/sys-devel/llvmgold/llvmgold-19.ebuild b/sys-devel/llvmgold/llvmgold-19.ebuild index cc4a41d311fc..3c22e4ea24ab 100644 --- a/sys-devel/llvmgold/llvmgold-19.ebuild +++ b/sys-devel/llvmgold/llvmgold-19.ebuild @@ -9,6 +9,7 @@ S=${WORKDIR} LICENSE="public-domain" SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux" RDEPEND=" sys-devel/llvm:${PV}[binutils-plugin] diff --git a/sys-devel/mold/files/mold-2.33.0-icf.patch b/sys-devel/mold/files/mold-2.33.0-icf.patch new file mode 100644 index 000000000000..e5b90fbfd9e3 --- /dev/null +++ b/sys-devel/mold/files/mold-2.33.0-icf.patch @@ -0,0 +1,41 @@ +https://bugs.gentoo.org/938009 +https://github.com/rui314/mold/issues/1326 +https://github.com/rui314/mold/commit/5a9919b43344b4fb92ea701f0b32a7e20857b9ca + +From 5a9919b43344b4fb92ea701f0b32a7e20857b9ca Mon Sep 17 00:00:00 2001 +From: Rui Ueyama <ruiu@cs.stanford.edu> +Date: Fri, 9 Aug 2024 12:08:03 +0900 +Subject: [PATCH] Fix a crash bug + +Fixes https://github.com/rui314/mold/issues/1326 +--- a/elf/output-chunks.cc ++++ b/elf/output-chunks.cc +@@ -1730,21 +1730,18 @@ ElfSym<E> to_output_esym(Context<E> &ctx, Symbol<E> &sym, u32 st_name, + esym.st_type = STT_FUNC; + esym.st_visibility = sym.visibility; + esym.st_value = sym.get_plt_addr(ctx); +- } else if (!isec->output_section) { ++ } else if ((isec->shdr().sh_flags & SHF_MERGE) && ++ !(isec->shdr().sh_flags & SHF_ALLOC)) { + // Symbol in a mergeable non-SHF_ALLOC section, such as .debug_str +- assert(!(isec->shdr().sh_flags & SHF_ALLOC)); +- assert(isec->shdr().sh_flags & SHF_MERGE); +- assert(!sym.file->is_dso); +- + ObjectFile<E> *file = (ObjectFile<E> *)sym.file; +- MergeableSection<E> *m = +- file->mergeable_sections[file->get_shndx(sym.esym())].get(); ++ MergeableSection<E> &m = ++ *file->mergeable_sections[file->get_shndx(sym.esym())]; + + SectionFragment<E> *frag; + i64 frag_addend; +- std::tie(frag, frag_addend) = m->get_fragment(sym.esym().st_value); ++ std::tie(frag, frag_addend) = m.get_fragment(sym.esym().st_value); + +- shndx = m->parent.shndx; ++ shndx = m.parent.shndx; + esym.st_visibility = sym.visibility; + esym.st_value = frag->get_addr(ctx) + frag_addend; + } else { + diff --git a/sys-devel/mold/mold-2.33.0-r1.ebuild b/sys-devel/mold/mold-2.33.0-r1.ebuild new file mode 100644 index 000000000000..d9e220971d81 --- /dev/null +++ b/sys-devel/mold/mold-2.33.0-r1.ebuild @@ -0,0 +1,106 @@ +# Copyright 2021-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake flag-o-matic toolchain-funcs + +DESCRIPTION="A Modern Linker" +HOMEPAGE="https://github.com/rui314/mold" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/rui314/mold.git" + inherit git-r3 +else + SRC_URI="https://github.com/rui314/mold/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~riscv ~sparc ~x86" +fi + +# mold (MIT) +# - xxhash (BSD-2) +# - siphash ( MIT CC0-1.0 ) +LICENSE="MIT BSD-2 CC0-1.0" +SLOT="0" +IUSE="debug" + +RDEPEND=" + app-arch/zstd:= + >=dev-cpp/tbb-2021.7.0-r1:= + dev-libs/blake3:= + sys-libs/zlib + !kernel_Darwin? ( + >=dev-libs/mimalloc-2:= + ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-icf.patch +) + +pkg_pretend() { + # Requires a c++20 compiler, see #831473 + if [[ ${MERGE_TYPE} != binary ]]; then + if tc-is-gcc && [[ $(gcc-major-version) -lt 10 ]]; then + die "${PN} needs at least gcc 10" + elif tc-is-clang && [[ $(clang-major-version) -lt 12 ]]; then + die "${PN} needs at least clang 12" + fi + fi +} + +src_prepare() { + cmake_src_prepare + + # Needs unpackaged dwarfdump + rm test/elf/{{dead,compress}-debug-sections,compressed-debug-info}.sh || die + + # Heavy tests, need qemu + rm test/elf/gdb-index-{compress-output,dwarf{2,3,4,5}}.sh || die + rm test/elf/lto-{archive,dso,gcc,llvm,version-script}.sh || die + + # Sandbox sadness + rm test/elf/run.sh || die + sed -i 's|`pwd`/mold-wrapper.so|"& ${LD_PRELOAD}"|' \ + test/elf/mold-wrapper{,2}.sh || die + + # static-pie tests require glibc built with static-pie support + if ! has_version -d 'sys-libs/glibc[static-pie(+)]'; then + rm test/elf/{,ifunc-}static-pie.sh || die + fi +} + +src_configure() { + use debug || append-cppflags "-DNDEBUG" + + local mycmakeargs=( + -DMOLD_ENABLE_QEMU_TESTS=OFF + -DMOLD_LTO=OFF # Should be up to the user to decide this with CXXFLAGS. + -DMOLD_USE_MIMALLOC=$(usex !kernel_Darwin) + -DMOLD_USE_SYSTEM_MIMALLOC=ON + -DMOLD_USE_SYSTEM_TBB=ON + ) + cmake_src_configure +} + +src_install() { + dobin "${BUILD_DIR}"/${PN} + + # https://bugs.gentoo.org/872773 + insinto /usr/$(get_libdir)/mold + doins "${BUILD_DIR}"/${PN}-wrapper.so + + dodoc docs/{design,execstack}.md + doman docs/${PN}.1 + + dosym ${PN} /usr/bin/ld.${PN} + dosym ${PN} /usr/bin/ld64.${PN} + dosym -r /usr/bin/${PN} /usr/libexec/${PN}/ld +} + +src_test() { + export TEST_CC="$(tc-getCC)" \ + TEST_GCC="$(tc-getCC)" \ + TEST_CXX="$(tc-getCXX)" \ + TEST_GXX="$(tc-getCXX)" + cmake_src_test +} diff --git a/sys-devel/mold/mold-9999.ebuild b/sys-devel/mold/mold-9999.ebuild index d13290655de3..53b3beaf330c 100644 --- a/sys-devel/mold/mold-9999.ebuild +++ b/sys-devel/mold/mold-9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit cmake toolchain-funcs +inherit cmake flag-o-matic toolchain-funcs DESCRIPTION="A Modern Linker" HOMEPAGE="https://github.com/rui314/mold" @@ -12,7 +12,7 @@ if [[ ${PV} == 9999 ]] ; then inherit git-r3 else SRC_URI="https://github.com/rui314/mold/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~riscv ~sparc ~x86" fi # mold (MIT) @@ -20,6 +20,7 @@ fi # - siphash ( MIT CC0-1.0 ) LICENSE="MIT BSD-2 CC0-1.0" SLOT="0" +IUSE="debug" RDEPEND=" app-arch/zstd:= @@ -65,6 +66,8 @@ src_prepare() { } src_configure() { + use debug || append-cppflags "-DNDEBUG" + local mycmakeargs=( -DMOLD_ENABLE_QEMU_TESTS=OFF -DMOLD_LTO=OFF # Should be up to the user to decide this with CXXFLAGS. diff --git a/sys-devel/reflex/Manifest b/sys-devel/reflex/Manifest index 62eca417a802..aae4458f1ef5 100644 --- a/sys-devel/reflex/Manifest +++ b/sys-devel/reflex/Manifest @@ -1,2 +1,4 @@ DIST reflex-20230523.tgz 480999 BLAKE2B a7306367bdf5bfb542a44f29c382a5d889a176059d95539916ab3132de06401edfd0c6a476ec66f433d56398039524d79c6879e1f24b4e813ebbba98ea434ed3 SHA512 9704b6dc3327bc017175bef21f34f53ff6614a76692deacb4af99c29bd4330e5fb7f71af6497d233acceab148bc8a7911d41d3ca224110812e5883c90cc801f2 DIST reflex-20230523.tgz.asc 729 BLAKE2B 0249d1bc4f6d6395be0f51f90e1f9834bc63cd7e4b5565e71ff0502746f45ea04b611c8db70d62513dfe95d492512cf1935f4e70d582c960f38d11e06853f54f SHA512 48e2f84c8932a038366159ea6a26eac73510bb69b6bc3c5027195682ade4ef3a33ade082b41e4d08af0c23c6692abc8ee46b261796d72709aa9568070c16c20b +DIST reflex-20240906.tgz 483570 BLAKE2B bb3c853b94eb2027473dcc409518a27f5d1fa650c41a04a607679bedf7ba3d446f5b038a20e47c023583bac00c65c854414dbafe4cbf1bf996753d9bd8cb3bf0 SHA512 bb676bc2c92657ef0488be106a651f89fc0db4b2d17f091f697e76a3686434f5d346049c8a573cec0cd29356d4fd458d178aafeee5cab6f124b35218343f0ec5 +DIST reflex-20240906.tgz.asc 729 BLAKE2B 3a48b951bfa8db8a9fe4626e6ea4f1093c1fb73fcecd1118f7d75bc78bfe9e1297ba6c9d1948a5ea3e2cbcf8c72083338833f63499b9fd8ec0d4913f76881f4d SHA512 b99ac1a539596a2195e4bc98a079f270d8cc2f44d5e990aea8368fb703047ccfb481ca5efaf6739b7e921a25f11f9bc9c3bbf864c9b62a2c88825a4fef2f0cf0 diff --git a/sys-devel/reflex/reflex-20240906.ebuild b/sys-devel/reflex/reflex-20240906.ebuild new file mode 100644 index 000000000000..36f8378e686e --- /dev/null +++ b/sys-devel/reflex/reflex-20240906.ebuild @@ -0,0 +1,25 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc +inherit verify-sig + +DESCRIPTION="This is a variant of the flex fast lexical scanner" +HOMEPAGE="https://invisible-island.net/reflex/" +SRC_URI="https://invisible-island.net/archives/${PN}/${P}.tgz" +SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${P}.tgz.asc )" + +LICENSE="FLEX" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +BDEPEND=" + app-alternatives/yacc + verify-sig? ( sec-keys/openpgp-keys-thomasdickey ) +" + +src_configure() { + econf --with-manpage-format=formatted +} diff --git a/sys-fs/android-file-transfer-linux/Manifest b/sys-fs/android-file-transfer-linux/Manifest index d50d223a791e..a2e492cb8720 100644 --- a/sys-fs/android-file-transfer-linux/Manifest +++ b/sys-fs/android-file-transfer-linux/Manifest @@ -1 +1,2 @@ DIST android-file-transfer-linux-4.2.tar.gz 823609 BLAKE2B dfd9b6ef4a92b1bc7851fd160837366b97fa95db5a998b9df156dd8543be554e07d02aae9be9f27b1cd9ee96aacc2003e06e4c7670c49b478e07779c92829817 SHA512 88ee6bf0af6cf6b2f6b97dee8e79d20905d2a84c271d68d874b87ccc797f198f1e480565633feea08a585ebb55e77da9742bd9cd87b59d88e677c44c69e95659 +DIST android-file-transfer-linux-4.3.tar.gz 827232 BLAKE2B 3737b804cc9c7a2883d7a9a1e4a65379d53f89104dc4f0d82959ed8eba35ffa1998677a4ef441f2c35389dec9e3b31822e8843994ad7d7669cc49e4593b41fe9 SHA512 f5e51ad1532be44916df51dda5f6f7423a5b0d8ebd733a0a3f0424f684b9f84fc5996fb5effd45009eb1c60d873f79e8ecc47a9dc09ff429b4a458807a79ca8c diff --git a/sys-fs/android-file-transfer-linux/android-file-transfer-linux-4.3.ebuild b/sys-fs/android-file-transfer-linux/android-file-transfer-linux-4.3.ebuild new file mode 100644 index 000000000000..21dd11557c46 --- /dev/null +++ b/sys-fs/android-file-transfer-linux/android-file-transfer-linux-4.3.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) + +inherit cmake python-single-r1 xdg + +DESCRIPTION="Android File Transfer for Linux" +HOMEPAGE="https://github.com/whoozle/android-file-transfer-linux" + +if [[ "${PV}" = *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/whoozle/android-file-transfer-linux.git" +else + SRC_URI="https://github.com/whoozle/android-file-transfer-linux/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="LGPL-2.1" +SLOT="0" + +IUSE="fuse python qt5 taglib zune" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + sys-apps/file + sys-libs/readline:0= + fuse? ( sys-fs/fuse:0 ) + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/pybind11[${PYTHON_USEDEP}] + ') + ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtwidgets:5 + ) + taglib? ( media-libs/taglib ) + zune? ( + dev-libs/openssl:0= + ) +" + +DEPEND="${RDEPEND}" + +BDEPEND=" + virtual/pkgconfig + qt5? ( dev-qt/linguist-tools:5 ) +" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_configure() { + local mycmakeargs=( + -DBUILD_FUSE="$(usex fuse)" + -DBUILD_MTPZ="$(usex zune)" + -DBUILD_PYTHON="$(usex python)" + -DBUILD_QT_UI="$(usex qt5)" + -DBUILD_SHARED_LIB="ON" + -DBUILD_TAGLIB="$(usex taglib)" + # Upstream recommends to keep this off as libusb is broken + -DUSB_BACKEND_LIBUSB="OFF" + $(usev qt5 '-DDESIRED_QT_VERSION=5') + ) + cmake_src_configure +} diff --git a/sys-fs/android-file-transfer-linux/android-file-transfer-linux-9999.ebuild b/sys-fs/android-file-transfer-linux/android-file-transfer-linux-9999.ebuild index ae4c96bbe345..83e13978794a 100644 --- a/sys-fs/android-file-transfer-linux/android-file-transfer-linux-9999.ebuild +++ b/sys-fs/android-file-transfer-linux/android-file-transfer-linux-9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_COMPAT=( python3_{10..13} ) inherit cmake python-single-r1 xdg @@ -54,10 +54,6 @@ BDEPEND=" qt5? ( dev-qt/linguist-tools:5 ) " -PATCHES=( - "${FILESDIR}"/${PN}-4.2-gcc13.patch -) - pkg_setup() { use python && python-single-r1_pkg_setup } diff --git a/sys-fs/android-file-transfer-linux/metadata.xml b/sys-fs/android-file-transfer-linux/metadata.xml index 3b18b9d156bb..69e283855cc3 100644 --- a/sys-fs/android-file-transfer-linux/metadata.xml +++ b/sys-fs/android-file-transfer-linux/metadata.xml @@ -1,7 +1,14 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <!-- maintainer-needed --> + <maintainer type="person" proxied="yes"> + <email>johnmh@johnmh.me</email> + <name>John M. Harris, Jr.</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> <upstream> <remote-id type="github">whoozle/android-file-transfer-linux</remote-id> </upstream> diff --git a/sys-fs/avfs/avfs-1.1.5.ebuild b/sys-fs/avfs/avfs-1.1.5.ebuild index acd4104c3756..dfa4e6aa441a 100644 --- a/sys-fs/avfs/avfs-1.1.5.ebuild +++ b/sys-fs/avfs/avfs-1.1.5.ebuild @@ -9,7 +9,7 @@ SRC_URI="https://downloads.sourceforge.net/avf/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86" +KEYWORDS="amd64 ~arm ~hppa ~ppc ppc64 x86" IUSE="lzip +lzma webdav +zstd" RDEPEND=" diff --git a/sys-fs/btrfsmaintenance/btrfsmaintenance-0.5.1-r1.ebuild b/sys-fs/btrfsmaintenance/btrfsmaintenance-0.5.1-r1.ebuild index e26232645159..53706a555989 100644 --- a/sys-fs/btrfsmaintenance/btrfsmaintenance-0.5.1-r1.ebuild +++ b/sys-fs/btrfsmaintenance/btrfsmaintenance-0.5.1-r1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/kdave/btrfsmaintenance/archive/v${PV}.tar.gz -> ${P} LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86" IUSE="systemd" RDEPEND=" diff --git a/sys-fs/compsize/Manifest b/sys-fs/compsize/Manifest index 8b32b0fbfb0d..8280cdd6f5a4 100644 --- a/sys-fs/compsize/Manifest +++ b/sys-fs/compsize/Manifest @@ -1,3 +1 @@ -DIST compsize-1.3.tar.gz 14782 BLAKE2B 738ff0e2b936f5974064759914284e495c895d22d95b705e1b8fac4b3189891771b0e5be7e0eeac0883dd92f9cef276400bb7ee79840fd7db14a5269e7f78f11 SHA512 411b92651fdc3d03deccbf38f72936fee95cf80c67d6368efbc0dafacfe9793815a23ef0d02f7feadf31391e415df3d90cd19fb3acc8cce94f37cb3e4eed623d -DIST compsize-1.4.tar.gz 15001 BLAKE2B 7e4d4a1f3ea59b23fec891c084f68ddb74838320a817767e48eb857de9678a1915d304d25b454afafec867ea6a028d99d9182087d3229ddae55d8305fe6b174c SHA512 c07081721f87d8a59e724a62a0a6d6724434292e6bb3ffb71acd7c47e21727db8f02f4df296cb6094c0e80d3cd555018e492616747ce69055d21302a6617ca54 DIST compsize-1.5.tar.gz 15015 BLAKE2B 1a7fc676ffaeb69fd410a834eab54ef63c5fa11e428bd0567ab5dec5dc27fe1b4901fdd47760c07a7fb26375b81ba997528c0aa83409eb364a3b9f2cb1942cc8 SHA512 25d6f1973e8a0a86bd857dc1e1ba99760451cf388f3bd3ede6a6ef35351ff63f100646d313010aff3de9e70b2c68866a31c4ea31d9c6df9254648cd1bd0272fa diff --git a/sys-fs/compsize/compsize-1.3.ebuild b/sys-fs/compsize/compsize-1.3.ebuild deleted file mode 100644 index fc78e5b437fd..000000000000 --- a/sys-fs/compsize/compsize-1.3.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic - -DESCRIPTION="Utility to find btrfs compression type/ratio on a file or set of files" -HOMEPAGE="https://github.com/kilobyte/compsize" - -if [[ ${PV} = 9999 ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/kilobyte/compsize.git" -else - SRC_URI="https://github.com/kilobyte/compsize/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="amd64 x86" -fi - -LICENSE="GPL-2+ GPL-2" -IUSE="debug" -SLOT="0" - -DEPEND="sys-fs/btrfs-progs" - -src_prepare() { - default - # Don't try to install a gzipped manfile during emake install - sed -i -e $'s/\.gz//' -e $'s/gzip.*/install \-Dm755 \$\< \$\@/' Makefile || die -} - -src_configure() { - # Used in upstream Makefile, but clobbered by portage's CFLAGS - append-cflags -Wall -std=gnu90 - use debug && append-cflags -DDEBUG -g - default -} - -src_install() { - emake PREFIX="${D}" install - dodoc "README.md" -} diff --git a/sys-fs/compsize/compsize-1.4.ebuild b/sys-fs/compsize/compsize-1.4.ebuild deleted file mode 100644 index f00e46619d53..000000000000 --- a/sys-fs/compsize/compsize-1.4.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic - -DESCRIPTION="Utility to find btrfs compression type/ratio on a file or set of files" -HOMEPAGE="https://github.com/kilobyte/compsize" - -if [[ ${PV} = 9999 ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/kilobyte/compsize.git" -else - SRC_URI="https://github.com/kilobyte/compsize/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~x86" -fi - -LICENSE="GPL-2+ GPL-2" -IUSE="debug" -SLOT="0" - -DEPEND="sys-fs/btrfs-progs" - -src_prepare() { - default - # Don't try to install a gzipped manfile during emake install - sed -i -e $'s/\.gz//' -e $'s/gzip.*/install \-Dm755 \$\< \$\@/' Makefile || die -} - -src_configure() { - use debug && append-cflags -Wall -DDEBUG -g - default -} - -src_install() { - emake PREFIX="${ED}/usr" install - einstalldocs -} diff --git a/sys-fs/compsize/compsize-1.5.ebuild b/sys-fs/compsize/compsize-1.5.ebuild index 8c0a769fa8ad..2f5223f474b9 100644 --- a/sys-fs/compsize/compsize-1.5.ebuild +++ b/sys-fs/compsize/compsize-1.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -17,8 +17,8 @@ else fi LICENSE="GPL-2+ GPL-2" -IUSE="debug" SLOT="0" +IUSE="debug" DEPEND="sys-fs/btrfs-progs" diff --git a/sys-fs/compsize/compsize-9999.ebuild b/sys-fs/compsize/compsize-9999.ebuild index 8e5c209de18a..bc837c25a0d7 100644 --- a/sys-fs/compsize/compsize-9999.ebuild +++ b/sys-fs/compsize/compsize-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -17,8 +17,8 @@ else fi LICENSE="GPL-2+ GPL-2" -IUSE="debug" SLOT="0" +IUSE="debug" DEPEND="sys-fs/btrfs-progs" diff --git a/sys-fs/cryptsetup/Manifest b/sys-fs/cryptsetup/Manifest index 3494e32bbc0a..9bbd8064cf17 100644 --- a/sys-fs/cryptsetup/Manifest +++ b/sys-fs/cryptsetup/Manifest @@ -2,3 +2,4 @@ DIST cryptsetup-2.6.1.tar.xz 11402380 BLAKE2B efd7a64d89d863876de68ff3e89d8c94ad DIST cryptsetup-2.7.2.tar.xz 11637316 BLAKE2B 466d7818cf8b6e23f802291ccad205d09f128572c21a85d6ca8e518d2198e49c9d95066c58560ffcb7df5a483aa27592b0e931db1e4daeabd102db9a5543da20 SHA512 06f42f443b91d1f8af8af999dfedd4051ecb12ba5ef291cf2b44b6a5676e2c5cf1e686e19687f5cb6b1fd524dfc1a208cd25a3798367a480d80eac954aa8d6d4 DIST cryptsetup-2.7.3.tar.xz 11689300 BLAKE2B 6de2c5eb4a0e1108eedb9c81c69ef70696b166ee592641927a0f8e11e566d644e0f7db3436b0446d5df33b3fab55af9592b869bb54d5fa94e67c5003404bc9b8 SHA512 08cff21873aeb7cc5b2561abf5d33cdf0fa814eeaabf6a01f858461726ea9faeef651357da33bce7b347ca2f12d6d02bccdb279893f3749cb781ce1fe5c1571c DIST cryptsetup-2.7.4.tar.xz 11695292 BLAKE2B a7e9397342482e83a21177699aedbd7a59c2f841512cdf9c8fdcec34d8d448056b2aca89cceae55e8d01654cf5a6ea260ec44879fc7b7fd15fe613c0ad95bc6a SHA512 3cc601ab1c4d5fd282f990529d7cb95f59c8aa9beb0ebd11de7ebf78cb35c352bcb8c945a2033cb6c53540b37156fdf2824070d431c752f9f7b029e4ec930c21 +DIST cryptsetup-2.7.5.tar.xz 11697476 BLAKE2B 7df7b53f74cbf1a009d2804b8d85c9fea27be994bb4171e1ded70e3666635fd8f265819321bee0d1977548626029ebf75b87225a68cb38b3b79910f991c813dd SHA512 13eca93cdb00a143d2ca60b6f66ede5adc4072ca0c4bfebd8454a3541e69d269fcdb4afc97ad799e87a999b2bd46c1f31fa924a3d616d72a3337970b1e718d55 diff --git a/sys-fs/cryptsetup/cryptsetup-2.7.5.ebuild b/sys-fs/cryptsetup/cryptsetup-2.7.5.ebuild new file mode 100644 index 000000000000..d09dd78f2b65 --- /dev/null +++ b/sys-fs/cryptsetup/cryptsetup-2.7.5.ebuild @@ -0,0 +1,149 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# TODO: meson +inherit linux-info tmpfiles + +DESCRIPTION="Tool to setup encrypted devices with dm-crypt" +HOMEPAGE="https://gitlab.com/cryptsetup/cryptsetup" +SRC_URI="https://www.kernel.org/pub/linux/utils/${PN}/v$(ver_cut 1-2)/${P/_/-}.tar.xz" +S="${WORKDIR}"/${P/_/-} + +LICENSE="GPL-2+" +SLOT="0/12" # libcryptsetup.so version +if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +fi + +CRYPTO_BACKENDS="gcrypt kernel nettle +openssl" +# we don't support nss since it doesn't allow cryptsetup to be built statically +# and it's missing ripemd160 support so it can't provide full backward compatibility +IUSE="${CRYPTO_BACKENDS} +argon2 fips nls pwquality ssh static static-libs test +udev urandom" +RESTRICT="!test? ( test )" +# bug #496612, bug #832711, bug #843863 +REQUIRED_USE=" + ^^ ( ${CRYPTO_BACKENDS//+/} ) + static? ( !ssh !udev !fips ) + fips? ( !kernel !nettle ) +" + +LIB_DEPEND=" + dev-libs/json-c:=[static-libs(+)] + dev-libs/popt[static-libs(+)] + >=sys-apps/util-linux-2.31-r1[static-libs(+)] + argon2? ( app-crypt/argon2:=[static-libs(+)] ) + gcrypt? ( + dev-libs/libgcrypt:0=[static-libs(+)] + dev-libs/libgpg-error[static-libs(+)] + ) + nettle? ( >=dev-libs/nettle-2.4[static-libs(+)] ) + openssl? ( dev-libs/openssl:0=[static-libs(+)] ) + pwquality? ( dev-libs/libpwquality[static-libs(+)] ) + ssh? ( net-libs/libssh[static-libs(+)] ) + sys-fs/lvm2[static-libs(+)] +" +# We have to always depend on ${LIB_DEPEND} rather than put behind +# !static? () because we provide a shared library which links against +# these other packages. bug #414665 +RDEPEND=" + static-libs? ( ${LIB_DEPEND} ) + ${LIB_DEPEND//\[static-libs\([+-]\)\]} + udev? ( virtual/libudev:= ) +" +DEPEND=" + ${RDEPEND} + static? ( ${LIB_DEPEND} ) +" +# vim-core needed for xxd in tests +BDEPEND=" + virtual/pkgconfig + test? ( app-editors/vim-core ) +" + +pkg_setup() { + local CONFIG_CHECK="~DM_CRYPT ~CRYPTO ~CRYPTO_CBC ~CRYPTO_SHA256" + local WARNING_DM_CRYPT="CONFIG_DM_CRYPT:\tis not set (required for cryptsetup)\n" + local WARNING_CRYPTO_SHA256="CONFIG_CRYPTO_SHA256:\tis not set (required for cryptsetup)\n" + local WARNING_CRYPTO_CBC="CONFIG_CRYPTO_CBC:\tis not set (required for kernel 2.6.19)\n" + local WARNING_CRYPTO="CONFIG_CRYPTO:\tis not set (required for cryptsetup)\n" + check_extra_config +} + +src_prepare() { + default + + sed -i '/^LOOPDEV=/s:$: || exit 0:' tests/{compat,mode}-test || die +} + +src_configure() { + local myeconfargs=( + --disable-internal-argon2 + --disable-asciidoc + --enable-shared + --sbindir="${EPREFIX}"/sbin + # for later use + --with-default-luks-format=LUKS2 + --with-tmpfilesdir="${EPREFIX}/usr/lib/tmpfiles.d" + --with-crypto_backend=$(for x in ${CRYPTO_BACKENDS//+/} ; do usev ${x} ; done) + $(use_enable argon2 libargon2) + $(use_enable nls) + $(use_enable pwquality) + $(use_enable !static external-tokens) + $(use_enable static static-cryptsetup) + $(use_enable static-libs static) + $(use_enable udev) + $(use_enable !urandom dev-random) + $(use_enable ssh ssh-token) + $(usev !argon2 '--with-luks2-pbkdf=pbkdf2') + $(use_enable fips) + ) + + econf "${myeconfargs[@]}" +} + +src_test() { + if [[ ! -e /dev/mapper/control ]] ; then + ewarn "No /dev/mapper/control found -- skipping tests" + return 0 + fi + + local p + for p in /dev/mapper /dev/loop* ; do + addwrite ${p} + done + + default +} + +src_install() { + default + + if use static ; then + mv "${ED}"/sbin/cryptsetup{.static,} || die + mv "${ED}"/sbin/veritysetup{.static,} || die + mv "${ED}"/sbin/integritysetup{.static,} || die + + if use ssh ; then + mv "${ED}"/sbin/cryptsetup-ssh{.static,} || die + fi + fi + + find "${ED}" -type f -name "*.la" -delete || die + + dodoc docs/v*ReleaseNotes + + newconfd "${FILESDIR}"/2.4.3-dmcrypt.confd dmcrypt + newinitd "${FILESDIR}"/2.4.3-dmcrypt.rc dmcrypt +} + +pkg_postinst() { + tmpfiles_process cryptsetup.conf + + if use kernel ; then + ewarn "Note that kernel backend is very slow for this type of operation" + ewarn "and is provided mainly for embedded systems wanting to avoid" + ewarn "userspace crypto libraries." + fi +} diff --git a/sys-fs/vhba/Manifest b/sys-fs/vhba/Manifest index 7323586a6b60..32909deef612 100644 --- a/sys-fs/vhba/Manifest +++ b/sys-fs/vhba/Manifest @@ -1 +1,2 @@ DIST vhba-module-20240202.tar.xz 16168 BLAKE2B 7974f60b73c634528afdd44e94c6da34bdc481d874f19845efc0464435a7e560494dd703b0fb1df34c96fce5f1afb300a1e6e2b3b9730e91c956816905eb2f44 SHA512 fdb9b79feb870bb22ed2182216103c8b87d1b5a471d02def24bdf5782cc2bee2333f1d78e1428b042c3df5a33ff8e07b1d61cbe11414a27db18034f3fbbe2612 +DIST vhba-module-20240917.tar.xz 16204 BLAKE2B 1e6dd176d40e86363eacddf3f97231b07b7428178b6e1792cf3abd15e42f2350db66557b3499c204c47678b4967955670a8839f8b50549614bd6a8ba204b9bb7 SHA512 aa94f88e501f11fe1de9dc9eb315f720947fafa23a12789c8b674b1f7d578cc351c2c1524ea1165b893cb50c7188d016da548006e7a1795c99eeacc92e1ab0de diff --git a/sys-fs/vhba/vhba-20240917.ebuild b/sys-fs/vhba/vhba-20240917.ebuild new file mode 100644 index 000000000000..4c97a5404e45 --- /dev/null +++ b/sys-fs/vhba/vhba-20240917.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-mod-r1 udev + +MY_P=vhba-module-${PV} +DESCRIPTION="Virtual (SCSI) Host Bus Adapter kernel module for the CDEmu suite" +HOMEPAGE="https://cdemu.sourceforge.io/" +SRC_URI="https://download.sourceforge.net/cdemu/vhba-module/${MY_P}.tar.xz" +S=${WORKDIR}/${MY_P} + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + virtual/udev +" +DEPEND=" + ${RDEPEND} +" + +CONFIG_CHECK="~BLK_DEV_SR ~CHR_DEV_SG" + +src_compile() { + local modlist=( vhba ) + local modargs=( KDIR="${KV_OUT_DIR}" ) + + linux-mod-r1_src_compile +} + +src_prepare() { + default + # Avoid -Werror problems + sed -i -e '/ccflags/s/-Werror/-Wall/' Makefile || die "sed failed" +} + +src_install() { + linux-mod-r1_src_install + + einfo "Generating udev rules ..." + udev_newrules - 69-vhba.rules <<-EOF + # do not edit this file, it will be overwritten on update + # + KERNEL=="vhba_ctl", SUBSYSTEM=="misc", TAG+="uaccess" + EOF +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/sys-kernel/gentoo-kernel-bin/Manifest b/sys-kernel/gentoo-kernel-bin/Manifest index cf59a9f606b8..bf5460f43b8d 100644 --- a/sys-kernel/gentoo-kernel-bin/Manifest +++ b/sys-kernel/gentoo-kernel-bin/Manifest @@ -20,6 +20,8 @@ DIST genpatches-6.1-119.base.tar.xz 6000764 BLAKE2B 1867fee7c4a1e50bc7b59ada634a DIST genpatches-6.1-119.extras.tar.xz 4056 BLAKE2B 52ecde24bf197791cfe5be801d881d26904b4503bd3e7857b6a6a2ea1e08fd0262a7e01de498854a931c5407f90d1b5dc73fabb3eb22dd370445f7ca057de0a1 SHA512 088e01360229386b880b2be615c0661c2c247a636a4d4810675fdf576bdeac3bb1d487dac6ec72ad88f4353e418289410f504b432fa8dea61b299e2f596370c8 DIST genpatches-6.1-120.base.tar.xz 6050748 BLAKE2B 8e81d186a9e5618d9f561fd0d49974031baa44ddb9b1885bb3ef6298d49b591e1c1582c306eddba07f3da733dea7ed82ae948838989010ee6471c052f99541c6 SHA512 7ec81a4b97becc07a15fc9e888f2e9c340334fb7ee2b9d0083123f67fdef44f7e155bdf7dd662158ea86d7eed3753017401479a5e50cc16eedde145dc77018c9 DIST genpatches-6.1-120.extras.tar.xz 4056 BLAKE2B 2295b59dea7ee450c0d6b109da2fc341e96030616635800a02847f93c4cd0191229c6d74bd68994ac42d2a96691856315127a060cd3873af34357f12ab54193c SHA512 8e1b92d4ab4cb327868f4e06c7bef5a099339c3cf2331ceff3aa3731632d1f8f7b427da5f892540a64f8afd86d89048100b93c8a08d40a99f5760a35553dca25 +DIST genpatches-6.1-121.base.tar.xz 6065048 BLAKE2B ef60651e53c53c2e918da2c9dd4759cde88472e2f6aecf4ed6a86f089a282bbdf7acab040c7660e52ea09e441f6008f17ae3d49afcd339e8b91d50cba48bda18 SHA512 e34af3822f10164dc0729d0803c6f3ea05e57c6ac157567bdec6d8d0a3e78fc72252606f3b3160089e7b4b8167ee76b13088cf1d238cc3db2841e2dde63b82aa +DIST genpatches-6.1-121.extras.tar.xz 4056 BLAKE2B 23ddf1bf6ee9d2790e952777edaa577916af9897a957c4e2f4714421ad7aae213b82e1c7d7b911a65f3ee6b27cefee4b5839d14ef1b0e539fe86d91722d0295c SHA512 95d167e2d5f8e883136923b332e662e8475043e0b2324b06a3e718a2bfb7e8f7b87c1cf0961ee06b0cff7fcae1e1dbf7446812fab7237416c281033f6777cc49 DIST genpatches-6.10-10.base.tar.xz 490332 BLAKE2B 6311b976880a1fe3cb902ba6e4d39890aa34565c6df19fc01deb7b337304418d1ada38d6d83f27acdeb3062fda65d7996a0e6988799a6789e81372a0966f3caa SHA512 3748322f9bae147f3ca68693dcabf21a4a969032cfb36aced11bb883907cb663d139175ed4dd7c8e87ea7628f875328e3b25d978009ee3a6989eb38b1c7c4ace DIST genpatches-6.10-10.extras.tar.xz 4056 BLAKE2B edb14475e8c07f04d54e6953f8518ea631660ffcdaa8797eba19768b3a193df51822d508dd7b360ced634d0045878f77996ba765498bca3bf001d9a4c223fd8a SHA512 a0379c1ecdbb7a8d6f3b3f82db60d5fd7503598ac26c2f11f6f549e360a648053896cb8db235257bfa7bcad251c90c6dc38116e238c0e2447117eab83a42b4d4 DIST genpatches-6.10-11.base.tar.xz 553020 BLAKE2B 11a958ebd8848d9023a9cdcb877039ba04f72169ad78e47661890d31b73ae7a9fbdec8d12507a1d16eed08ba59f4a6fdc38ed8b6b02d05cb44198dbfcfef31e8 SHA512 3a3c1e5cbee053ab4c9c731bafa723ffcdfc8179e62fdc0eb16469a15abb5fec8ef4ff395305fd4502ea9cab70702e071f6cf9d0397cb185a987e8fbc880123f @@ -28,6 +30,8 @@ DIST genpatches-6.10-12.base.tar.xz 602316 BLAKE2B 6cd02be7fbe2322d246e826d04236 DIST genpatches-6.10-12.extras.tar.xz 4060 BLAKE2B 77b8b8cc0ed8af03ca45e1224e6de1f14d59682aeb411488e4c5eb6f9f4252a50ae442d60eeba496491c62013c7f1cb7af9f7e40622e1f48de7f0b85c4686c28 SHA512 95cf8c15fab7ea99e7c55166d445494d85cf843d9bc32e3055789ac20d725b52687d1077890c22aa39719a9d0fc7745b0d3346d014077171b1009a3a353f04f0 DIST genpatches-6.10-13.base.tar.xz 727116 BLAKE2B 5125f8971fee0c7f78d28a555932e20ce80a260f09f3228b53e6a9e3923a809d7e812df8b32eb9ed74da3bb4b2762dcaf63d921f78ea5ea39c8f7a5796a25a31 SHA512 e0f124f613c18e9c3623887b90dee5dd30d2acee7271599e226cf9dc5a184f9ef06ddb536bd4fb20017c993fe203d9c9696a7e441caf5de2831552754b04192b DIST genpatches-6.10-13.extras.tar.xz 4056 BLAKE2B f44d2635322562c13ede3ee395900b963e4a151786a6417fdedfbdce20708f277f7b732d5302606b6e9acc09c9bc7a4be4c1fcacf32a670a50bd9ddd5e8910f2 SHA512 16cb15c66948c48ab27c989226c1394ecc5041e1ed0323246e0f611fee4907029b23346ddfdc1b11d6a0824f2609f448dcc623dedf05dc94a2a3c4385f181c14 +DIST genpatches-6.10-14.base.tar.xz 759584 BLAKE2B d08dc14d5126e73155a6b1977ce2b9790a5717b6bf1fa31309838c3884a81baf945661093da2e3f69bf892f472db60defe1a001afa4b9a6846deee11cdf6cec2 SHA512 6e41093c8ee9690ec279a3f35c01d058ef02c3a9eac7b9eaa3908c14463c8d3c85497665b875111fd1a29e8d406706aa6f6791a44e0bc31d8c51053259a18d87 +DIST genpatches-6.10-14.extras.tar.xz 4056 BLAKE2B 63d33a29efc77a7839f4961de62c54f2383bcc7a119fce5ca7f80cdb66515537bb1e1bd55bb50f297b8f0a9c74f75bb237ee2893a859abe6d7f05864ae21e38b SHA512 c9adea40fdfd3faa5ee24a60be9ad4444819a8fbcb417ea98ce2f7a02fdd1e70c6f1168380cf6efd5a4d1820bea14db48c3064b271afaad8e1d23f0a8263a48f DIST genpatches-6.10-9.base.tar.xz 401220 BLAKE2B 3335d5d29c347526cea6104b9cca56b8ed8ee0f1de9ee8a6f55d66514df829fcd197b8281b2261f6dfb979276b65bc654d4b1257868b5b80a2411fbd2f076f11 SHA512 9d2319c2b86b80355464d661f675a331a4245405bb84184a4d061649abdeb5955b6ebeaee1cefbe3c669f810c9da645b7fb637af4dcb45cb9b69e715c6e46f1f DIST genpatches-6.10-9.extras.tar.xz 4056 BLAKE2B 2cba382236beae6374462f6147d6e164314cc8f7d7be87547902153c035b970ada27f4817a6de2d569116118eea0d95d42aa44de2147475c47c732abfedd9952 SHA512 358d82794809d49f4b24bdf10c49cc4fbe8ac0a45f86dfdc018d2c778b757c002d9bd129d935146b84daf809e95f5235fccf7466d2498755154b9c77e5a2b46d DIST genpatches-6.6-54.base.tar.xz 2922380 BLAKE2B f65404127bb6547208aeddac1996a4a2659bd99ff7429bcaff28247a867c000e962457725eab80db2c76297f1e5c27806dc6fb23e31d5694b6df783e65995227 SHA512 102f721f87478ad18599bb5ff65cd236180dd3d9d058786a5306cb36be3f30a2d2ef684e83b6f458d4de78a196323e87d346eba704bfbce733010aed6ac3d7f9 @@ -40,6 +44,8 @@ DIST genpatches-6.6-57.base.tar.xz 3079200 BLAKE2B d0f16f9b2f09f182c02fdb6cfa4b7 DIST genpatches-6.6-57.extras.tar.xz 4056 BLAKE2B 9b071880383921fcc8cd2da092e1219e3b40684e6ffd04bd2ab75fd53624cdcb7289f1c40ae9256e0343bbea92393c153724ee628e8d164596ba4d7f8bb413df SHA512 a61cbf855e718ca7afed0b15614ad2e9bea740412e8251b35417d10f4b936364cc3820951acc45be2b18cba635cd1c43da8caeb4ac315747d02201be39148c8b DIST genpatches-6.6-58.base.tar.xz 3154204 BLAKE2B 5b9456e93cb0984599e065fab0d05e40b7efbc8079763ede75ed7a6e7f0e241de96f0c6438cde52f64a5074f5bfcc5d55b5d3c21a9e9528138ea5c36e164ea58 SHA512 e775ac64564c201c3e1293d34a70f347a5afd5691a006d958f69959d2eea0af690cf66f7bdd450034ef9eb43daeccbedd58819dc688cd3e7e9933da9312cbf75 DIST genpatches-6.6-58.extras.tar.xz 4060 BLAKE2B 7e16c5d713aaf221335b81f3a301e9bb1e7f243d9bc6739c3dd07bb3cfedbe6bd5a763ce418172c838fbd3de82909cabff7c2e5c4b4f1b675098b709ddc5203e SHA512 315bfdf633398b3b1a9650dae88fdd0c1442336cabe45a3f2722e968f510da13050657e8d35acf8a313981bd9403f5056abea182a0115a79952a2740ceb4ff88 +DIST genpatches-6.6-59.base.tar.xz 3174716 BLAKE2B 8eded8d4d4c343869f587ecc2a218d124c34618494ded9d17b493f26894e545658021ad9cfa05bafd14389de07406f43a722c37276cc14096a3a7a00040e2ae7 SHA512 88e5ef8de0954f349e5c0745adb8f718dcabcd2e166c597c9de753c892eaad42c936984279fde86974b307858959cdef401f92f6f62a98bf1d4bed14cbff821e +DIST genpatches-6.6-59.extras.tar.xz 4056 BLAKE2B 8d68a426082bcb168f74abb849a7a58090268c9cf098aa8982d9e700fab754a6f42dd833c1ee5d44d52f58d1a6b3da018a954d873ba131a2049a286a39ca3099 SHA512 ee133a7efaeba2abe242482825f4490e1c1b17fca64f9183713dca601fc64048288aa79125f7b8c0715f6c4fb158ea3a230e76b39b63d1a59dbecf80697ac000 DIST gentoo-kernel-5.10.224-1.amd64.gpkg.tar 63283200 BLAKE2B 14061a7a4219278bce3237f8d59015448fea6e195a02d8f5a1d63f41b0ed0d189febd0964a082eca1948f57cef5a4e96c569d26f0c1b70855cf447073f1bfbfa SHA512 e4e7f4bbf6750ec216ca46408919b5a37aac372a14a7d73eee1b44df2ed2a0607c510db1109db117c25bb94dd331fffbdfe380941661bec94f3cfacdf858e929 DIST gentoo-kernel-5.10.224-1.arm64.gpkg.tar 56750080 BLAKE2B 2b31d7121e82bd500260b26fc795d0d59ecd1328fb1ae0b202ed24a5d1a41947b4b4a84db0172dcc76f6ffda4c5e3a63527e5d2156148ac673305bd57bbc1c4c SHA512 1e0a6ca9cf082b3aa9f386ff234f96d3711ae2cab36791be38077b9d5c80ed5448d092bea453f249cbc3cb486206a614e33f26de3181666b18aac47364fb604a DIST gentoo-kernel-5.10.224-1.ppc64le.gpkg.tar 52766720 BLAKE2B 789dc4f675dd22f391262f4abe1b89d60fe03b9b48a93643b1151f00765c23c470188e727cc437434a950b37cea22c237f9afc82304dcc57f649bc91ed0bc108 SHA512 18034bee9a75ce37a6337ccc7952c1eed4e0a600414a99e9c7465a1cb0619500238fa241e02e0cb0a37feeab9634ba4dd6d9c87c46fde93765e3b4983d455500 @@ -84,10 +90,18 @@ DIST gentoo-kernel-6.1.110-1.amd64.gpkg.tar 72591360 BLAKE2B 9cf5b83a5d7c1edfc90 DIST gentoo-kernel-6.1.110-1.arm64.gpkg.tar 65566720 BLAKE2B 53783496918cae61de0cfddb69b81992a388b1ffb36baa68d0d614805f6a67e5f422aaebc188f16faaecb0558c5d60379db8a4f66c4b843134ace937f7517a51 SHA512 4b0f3802a871e6c73e70a6bc4c856b62748da5a86d4f1b340c472f9238d71d34d89db34106b8565d99873137c9c1849f0732634332f4767a87ba76e593df9494 DIST gentoo-kernel-6.1.110-1.ppc64le.gpkg.tar 59822080 BLAKE2B 8567c0c93616d69b4a464730b09528c789e2e5ea4b1771b4235803c70091b1990a8c6b41e36cbfbce92992277b2afe202b8806437cf4fc68e0ec6f3c3898fc09 SHA512 a8748b00b9e600720966f1ca2bdef5cb9a06fe11010491ef67dbd9f2798af46e859c0c14ff32921a70cd13b83fef763e0d20bc7467dcb7a49b5faa28572371d7 DIST gentoo-kernel-6.1.110-1.x86.gpkg.tar 62146560 BLAKE2B 0a64ed2bff2927ee5e2120c10135942c93819818714f835fafc87129afd5bae400a660a3bb08caf7db3da9e2316801cc45b0c6ab166d5a76d0f051fcfb341e6f SHA512 60804db3018c2d8c9e51afc7838c36a2c39caf6d920f8f4fe5f80b603f7a64f1311d80209654498e842846f4e9dec5debdbdbb6328caf546fdbc90abbfb921ad +DIST gentoo-kernel-6.1.111-1.amd64.gpkg.tar 72601600 BLAKE2B a288496b70a870f01e43b026dadffc83694e3815c93c59a62c4a4f5744a915ef2207b690157eca88ec3ca6df0588626e366e1e45e88df14329dfe0882b3d5ff2 SHA512 eb73f2865baaab06a1a26a633fca3eaaf86382af8caf020bc124b95228057f8bb182c43e724e3e6cd5cce583a0f560bf61fd68a31f4d751f4976bb45f777e2be +DIST gentoo-kernel-6.1.111-1.arm64.gpkg.tar 65556480 BLAKE2B edde62a5bb19d1944db67e45f3d42ea586fc5d84581fa99423c28312a5c3484eaaef72429f531d829522d473aa9c141dfc2509cbb88375833ae9602b873c1de6 SHA512 0be04a6096fa192fe7c9ee3bfc4dd7583b3748fcc6d14e2ecc111b2820ecc8b0d64d8e9c5f1aad51cadf4f35ce9b157575973910959bbe71fbe66cb5fe3213f6 +DIST gentoo-kernel-6.1.111-1.ppc64le.gpkg.tar 59832320 BLAKE2B fb4fa57e3ac7a2a293fb6c8de9c1d99c587ca4adff3ba374af455c18533b09c23e17da80ad47882c34ee69f3a602a2ef7365b2c1cbac73e3da4b51db8bdd8ddd SHA512 ee8d98a93f033a50fc513d2fb4b8f44590450e10190c5cca3273119a2505f04e872be32c4e98bcbf5fad7918f3d1552b9a66426c86711ed5e0084c7692c3624b +DIST gentoo-kernel-6.1.111-1.x86.gpkg.tar 62146560 BLAKE2B 1c7b09827b44ece7abcb56a2a611159fe3acbf53cf2a0b21a8f4d45e8d7676a71ae2985beb094c1550cdebd9b9c02954deb86602359b82ba99601af45dd8bd4c SHA512 7711a84454c0ba9b76051c331caadbaeb54352f1d11233c9ac20cb1466554c44cd019f992d5581718e91f61869dd03a7ae8b1492394f98e3749ec55f850cc973 DIST gentoo-kernel-6.10.10-1.amd64.gpkg.tar 288399360 BLAKE2B 48d2fb4a75abac9c9caeb8a15c859209055a4dd5afd5083dff375ddc0bed8bf2c56a1acd7377343f90274c8025644f52c08e75e156eba175338e22e51eda54aa SHA512 7ea83083a8c6dfdd6bbd875445962ff31bcf37afb18d4502444fa3d135b88aaf3f3c66cef2edb77740e4bbfb226e13408197b7aa9e480c29d1576053e65a1acd DIST gentoo-kernel-6.10.10-1.arm64.gpkg.tar 264816640 BLAKE2B 5d70f8c2acacf7fee5637a9b0349784788cc72be4c6288dd3a8424a22c1bc9f6ecdf99e32a0b11eaf28637cdb7c174edfa1a35c947b05fd317b4d764b4a2e20c SHA512 98a1f64b138bca6ffc028a446f04ca045f06956b4243d9f2938cef27acf3c2dea02ca93430161334310527d0a91a1bfcb85954df2c731a77d506b66ad3fbde80 DIST gentoo-kernel-6.10.10-1.ppc64le.gpkg.tar 72028160 BLAKE2B e142e685d54736c376cea213b7585198167a1a78a9a3c53b1637eba2745bcc89b4ead6d634ef105edbc66aaa7a553710d36708a3b27739137e3b85ca717d6f2f SHA512 5f5e8a3ef6b88660a2fdd3f5358bb1704008b5d565e8cd61a8cff9bccef4995f7a272c12755ab0fb90cb52d894d24ebfc60ac599ce97deabbe74fdcb305ec91d DIST gentoo-kernel-6.10.10-1.x86.gpkg.tar 75560960 BLAKE2B 7e7e4c8de2ede34764a2db6338102faf9e8145733652896bad7354f453166093faeb429252515feaf654001db0f3a8f15a8d061bb1c5957725e3e83efe3c39ca SHA512 8c618e8b1d02ba56573c1526fb2f70a7f5da3eda2023e9d47a1403e1fe5de4ef1787d2195ec82b61aad13b4410731775c30b266bfb0ff3334ee36f03c42bf5de +DIST gentoo-kernel-6.10.11-1.amd64.gpkg.tar 288471040 BLAKE2B 7015cbaf2b47d62f516f3ca190fa805e5073de7d8a8256a4d14169ba64f4faf7804157a96563d47029a7a05d191e128acc5413e1b5cef277bad9d48ac57ef1e2 SHA512 b18b1ac7d905a24517f15adfb5a9f40ef4b3dc27c3114d67373aea70f1ae7e35a9ab19ed9238f99ecc271a919b971bc4cbe325c0d478a976e7659018504de6fe +DIST gentoo-kernel-6.10.11-1.arm64.gpkg.tar 264816640 BLAKE2B 412355b2787647c1960f643c90d06f739fb9c7d2dc655f77f1c8c90d2f83b1a86a01a034dfae05323014f8bc72ce897fbafe42470213f565f26b4c757ebacbb5 SHA512 63fa9896ebd67aea2596186151e577d1071688001798bb889d61ebe91ec8db0f52d1aac7ba3b7c44d59d302a2331a696c0875f6fb9daa4eba4182d2790450812 +DIST gentoo-kernel-6.10.11-1.ppc64le.gpkg.tar 72017920 BLAKE2B e735783122186d2036ad6c5ab8bb4e3cf3d16093ae793d5b7295ecc5b250f9b07430ef5fc42e67f4da69023c11b3c9f6874254dcf922ca006358ff2458c3e383 SHA512 19c8e6e1c23eb767a18fa392dfa5a5a9cd67636221037fd4becb07f375afd851607886dc7a4c8231406c7be99961e4bd4c2a8fc1477fdf484c4c43c12842eab9 +DIST gentoo-kernel-6.10.11-1.x86.gpkg.tar 75560960 BLAKE2B f205aed0cbcfc3e4300a17e6675d0bd7e97c959030bceccfb533d72918b4baaf22b42e3ea55363282bd657b87a79de6c5689b5f666febc0cc8f33e33f6c718a9 SHA512 f02e4ea6ac8350e73d238864564c86583eb2d3d5e91cfe564443985151cd9d26110cf0e00aa6e584e35d68991aaf53e6cfe412f52b8978968465a8ab2b51a342 DIST gentoo-kernel-6.10.6-1.amd64.gpkg.tar 162723840 BLAKE2B b06364ac6a1cfd4cda5d03202c2c83c3ab35fdb886c0c75a25900f113c6c5d68e8d6a5a3c78412301289555ecb416037260e6df9ea79f97c9c73a96f2e478284 SHA512 f3cb900ec088c4b856567bc5e4fd6d977672310f0e6e61cb4301650b14e080778859783f8446e029c50acd4a8a29575aa3f3f3948a008418968a8d016c9478c0 DIST gentoo-kernel-6.10.6-1.arm64.gpkg.tar 131993600 BLAKE2B bf37c8d5a9ca3dda972cc7a08feaf12b22a880216767892b9f95550e9b31f7e824b74658bcebf10343ef441c6e1d2e4a28145d927f19ec644ea4246cd1136d55 SHA512 3a72d06ed8fc7edf1ef6ed702940cceeedc16eb9ece430cc0c0faf34cce36a0a9ee18f90471cefd0a6a6e87e286855c98f94799683c22be3cc14b3a1e8350032 DIST gentoo-kernel-6.10.6-1.ppc64le.gpkg.tar 71976960 BLAKE2B 78f76bb3fc5c6455d99a9f55a82b2b9cc8a07529635e3302e9a7f02aa0e869f669605d93e63b151ca5eb5014915a7d5be64a6c0caf0c10a322dee66b0456617f SHA512 b20fb195cce8db548671b4622319d50d751955a80e89f0814253879112fa8943a92df195eeb2e6b65f14fe134caa5e514ac18f5457eb41bdde2f98b2fad2c25c @@ -124,6 +138,10 @@ DIST gentoo-kernel-6.6.51-1.amd64.gpkg.tar 149657600 BLAKE2B fc159a5336426c45fef DIST gentoo-kernel-6.6.51-1.arm64.gpkg.tar 119715840 BLAKE2B d7056f38de6c4601829768e01dafcfc16d46786f54a68d022280b993d6a307ed9620c9ff2ba5b98c1934b79bebf9208a79b7400be89ca21e8d41be0d5cb4ceef SHA512 2493c75d7958ea17fa8fbe7cef00699f83c46eb6aeb7795fadaca0ed5434306a19d4e4d6f74dae6c5c56db6890a9c85dc0b8fcbe1a67d1a95bed6800d00e2f4a DIST gentoo-kernel-6.6.51-1.ppc64le.gpkg.tar 64276480 BLAKE2B 728cde54c79ad1e59af44445f934eb0d032e832821780e047bf86d6d9677522e65f09fcfd90b7a662624a8ebb7f1f35df192a5b56a06aaadec2e0b07c11b7422 SHA512 bc0b82cfb31228d6c549a41dcce9a37ae28fa76aab086ae0c50678832b85510bf31d4fa2aabee6d681d40fa0d44ad5549ae1bdab34f6be3c5803b6e5cc712f62 DIST gentoo-kernel-6.6.51-1.x86.gpkg.tar 68290560 BLAKE2B 94bb65e8e37aed1319b7c5961fd1b536e0d7493905d53fd09700cca9445a80bfb8b8d46f53ac44b2c43e5b8d5e7fa95f3fd888aa86964ed8ca0bd1eb79ba0e2b SHA512 2344aab56acf78f357b25e95f25dcf29b4b6f42a3b3cfe63a11673fc1932db8f6361cfbca413c59d9d756a60021de6d7e0ef1dd4e2ffcaaf47e341cb045da447 +DIST gentoo-kernel-6.6.52-1.amd64.gpkg.tar 149647360 BLAKE2B 01a1b97fec61f0ed67ed33823092224e89f8816b8a217d89852dc3f76515b1b305f3d2264df815aeb324c7fa6b901d1643bf4ed8b34a0acd3c0fc4b9fbcb7f84 SHA512 6c818c48c89144b71f03bb6d2f99febaf5cb593fd340e2b6445aab82c3ec02d1af4e8d7a28aa1c99b71d674de4639754b41645b7eddcf2fd98330c44e950f7a0 +DIST gentoo-kernel-6.6.52-1.arm64.gpkg.tar 119715840 BLAKE2B 29e3adae14c15aefc7317a5a3074554116e75c3e4a752dce934f91b6b69466d9a8670e2916e34b0ca3e9267a5047a7ec8a1114e8e9eb38d9109358db9c9c54a1 SHA512 22a99e41b361e83a50209cfad36927651d2b74acaea5307ae7e784c07cdc4f208b34aab3dcd931eb1818dd704afa3034d1b75e3bcefd7fff133c03b9af7f1fd4 +DIST gentoo-kernel-6.6.52-1.ppc64le.gpkg.tar 64276480 BLAKE2B 1025401e8c36bfc84595aae09b639c1bf3ae9eb1d336f7fc61807e4e3f7811c6f2937918bbe18f20ce4fb5e2cc19e09858fae685d751a91a4ceefbeccef2e312 SHA512 2be94eeef0d5dfbafef0ebd03488918d744cf0e0abf42fd4b58b6e90b6b43941226c19610da7ee2dee9218739c0351b2261b5d611f5999b2a634cc233491f043 +DIST gentoo-kernel-6.6.52-1.x86.gpkg.tar 68290560 BLAKE2B 15936c7642eec38676fea6212e6d43349c196405c3d2cb176eff57fe46345f548febd44fd26b15eb44f17c4cda85e2ba3a68eea7a9bc3947a67cff06b3d22ed5 SHA512 85d84144e4e2388219c769143d1f6de8699e1cfb2650c0aa083c0edddd40786fdee986230877c9fcc9e8a4ba73030d385776ce7e73aa390275a05c6c585d9246 DIST linux-5.10.tar.xz 116606704 BLAKE2B b923d7b66309224f42f35f8a5fa219421b0a9362d2adacdadd8d96251f61f7230878ea297a269a7f3b3c56830f0b177e068691e1d7f88501a05653b0a13274d1 SHA512 95bc137d0cf9148da6a9d1f1a878698dc27b40f68e22c597544010a6c591ce1b256f083489d3ff45ff77753289b535135590194d88ef9f007d0ddab3d74de70e DIST linux-5.15.tar.xz 121913744 BLAKE2B 3921274b23f7938abdf3ed9334534b4581e13d7484303d3a5280eddb038999aaa8b836666a487472d9c4a219af0f06b9fecccaf348fb5510ab8762f4ef4b7e83 SHA512 d25ad40b5bcd6a4c6042fd0fd84e196e7a58024734c3e9a484fd0d5d54a0c1d87db8a3c784eff55e43b6f021709dc685eb0efa18d2aec327e4f88a79f405705a DIST linux-6.1.tar.xz 134728520 BLAKE2B ae60257860b2bd1bd708d183f0443afc60ebbd2b3d535c45e44c2e541bd0928530a3b62de6385dd4e4726ebbedcc0a871d4f3ffb4105b9f1f6d8ed7467f5688e SHA512 6ed2a73c2699d0810e54753715635736fc370288ad5ce95c594f2379959b0e418665cd71bc512a0273fe226fe90074d8b10d14c209080a6466498417a4fdda68 diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.1.111.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.1.111.ebuild new file mode 100644 index 000000000000..53b01d5e35e1 --- /dev/null +++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.1.111.ebuild @@ -0,0 +1,138 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit kernel-install toolchain-funcs unpacker + +MY_P=linux-${PV%.*} +GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 10 )) +BINPKG=${PF/-bin}-1 + +DESCRIPTION="Pre-built Linux kernel with Gentoo patches" +HOMEPAGE="https://www.kernel.org/" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz + amd64? ( + https://dev.gentoo.org/~mgorny/binpkg/amd64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.amd64.gpkg.tar + ) + arm64? ( + https://dev.gentoo.org/~mgorny/binpkg/arm64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.arm64.gpkg.tar + ) + ppc64? ( + https://dev.gentoo.org/~mgorny/binpkg/ppc64le/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.ppc64le.gpkg.tar + ) + x86? ( + https://dev.gentoo.org/~mgorny/binpkg/x86/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.x86.gpkg.tar + ) +" +S=${WORKDIR} + +LICENSE="GPL-2" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +RDEPEND=" + !sys-kernel/gentoo-kernel:${SLOT} +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" +BDEPEND=" + app-alternatives/bc + app-alternatives/lex + virtual/libelf + app-alternatives/yacc +" + +QA_PREBUILT='*' + +KV_LOCALVERSION='-gentoo-dist' +KPV=${PV}${KV_LOCALVERSION} + +src_prepare() { + local PATCHES=( + # meh, genpatches have no directory + "${WORKDIR}"/*.patch + ) + cd "${MY_P}" || die + default +} + +src_configure() { + # force ld.bfd if we can find it easily + local HOSTLD="$(tc-getBUILD_LD)" + if type -P "${HOSTLD}.bfd" &>/dev/null; then + HOSTLD+=.bfd + fi + local LD="$(tc-getLD)" + if type -P "${LD}.bfd" &>/dev/null; then + LD+=.bfd + fi + tc-export_build_env + local makeargs=( + V=1 + + HOSTCC="$(tc-getBUILD_CC)" + HOSTCXX="$(tc-getBUILD_CXX)" + HOSTLD="${HOSTLD}" + HOSTAR="$(tc-getBUILD_AR)" + HOSTCFLAGS="${BUILD_CFLAGS}" + HOSTLDFLAGS="${BUILD_LDFLAGS}" + + CROSS_COMPILE=${CHOST}- + AS="$(tc-getAS)" + CC="$(tc-getCC)" + LD="${LD}" + AR="$(tc-getAR)" + NM="$(tc-getNM)" + STRIP="$(tc-getSTRIP)" + OBJCOPY="$(tc-getOBJCOPY)" + OBJDUMP="$(tc-getOBJDUMP)" + READELF="$(tc-getREADELF)" + + # we need to pass it to override colliding Gentoo envvar + ARCH="$(tc-arch-kernel)" + + O="${WORKDIR}"/modprep + ) + + mkdir modprep || die + cp "${BINPKG}/image/usr/src/linux-${KPV}/.config" modprep/ || die + emake -C "${MY_P}" "${makeargs[@]}" modules_prepare +} + +src_test() { + kernel-install_test "${KPV}" \ + "${WORKDIR}/${BINPKG}/image/usr/src/linux-${KPV}/$(dist-kernel_get_image_path)" \ + "${BINPKG}/image/lib/modules/${KPV}" +} + +src_install() { + local kernel_dir="${BINPKG}/image/usr/src/linux-${KPV}" + + # Overwrite the identifier in the prebuilt package + echo "${CATEGORY}/${PF}:${SLOT}" > "${kernel_dir}/dist-kernel" || die + + mv "${BINPKG}"/image/{lib,usr} "${ED}"/ || die + + # FIXME: requires proper mount-boot + if [[ -d ${BINPKG}/image/boot/dtbs ]]; then + mv "${BINPKG}"/image/boot "${ED}"/ || die + fi + + # strip out-of-source build stuffs from modprep + # and then copy built files + find modprep -type f '(' \ + -name Makefile -o \ + -name '*.[ao]' -o \ + '(' -name '.*' -a -not -name '.config' ')' \ + ')' -delete || die + rm modprep/source || die + cp -p -R modprep/. "${ED}/usr/src/linux-${KPV}"/ || die +} diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.10.11.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.10.11.ebuild new file mode 100644 index 000000000000..d5c4f186a89c --- /dev/null +++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.10.11.ebuild @@ -0,0 +1,172 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KERNEL_EFI_ZBOOT=1 +KERNEL_IUSE_GENERIC_UKI=1 +KERNEL_IUSE_SECUREBOOT=1 + +inherit kernel-install toolchain-funcs unpacker + +MY_P=linux-${PV%.*} +GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 3 )) +# XXX: Change me back to PF afer 6.10.8-r1 +BINPKG=${P/-bin}-1 + +DESCRIPTION="Pre-built Linux kernel with Gentoo patches" +HOMEPAGE="https://www.kernel.org/" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz + amd64? ( + https://dev.gentoo.org/~mgorny/binpkg/amd64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG/-2/-1}.amd64.gpkg.tar + ) + arm64? ( + https://dev.gentoo.org/~mgorny/binpkg/arm64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.arm64.gpkg.tar + ) + ppc64? ( + https://dev.gentoo.org/~mgorny/binpkg/ppc64le/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.ppc64le.gpkg.tar + ) + x86? ( + https://dev.gentoo.org/~mgorny/binpkg/x86/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.x86.gpkg.tar + ) +" +S=${WORKDIR} + +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +RDEPEND=" + !sys-kernel/gentoo-kernel:${SLOT} +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" +BDEPEND=" + app-alternatives/bc + app-alternatives/lex + dev-util/pahole + virtual/libelf + app-alternatives/yacc +" + +QA_PREBUILT='*' + +KV_LOCALVERSION='-gentoo-dist' +KPV=${PV}${KV_LOCALVERSION} + +src_prepare() { + local PATCHES=( + # meh, genpatches have no directory + "${WORKDIR}"/*.patch + ) + cd "${MY_P}" || die + default +} + +src_configure() { + # force ld.bfd if we can find it easily + local HOSTLD="$(tc-getBUILD_LD)" + if type -P "${HOSTLD}.bfd" &>/dev/null; then + HOSTLD+=.bfd + fi + local LD="$(tc-getLD)" + if type -P "${LD}.bfd" &>/dev/null; then + LD+=.bfd + fi + tc-export_build_env + local makeargs=( + V=1 + + HOSTCC="$(tc-getBUILD_CC)" + HOSTCXX="$(tc-getBUILD_CXX)" + HOSTLD="${HOSTLD}" + HOSTAR="$(tc-getBUILD_AR)" + HOSTCFLAGS="${BUILD_CFLAGS}" + HOSTLDFLAGS="${BUILD_LDFLAGS}" + + CROSS_COMPILE=${CHOST}- + AS="$(tc-getAS)" + CC="$(tc-getCC)" + LD="${LD}" + AR="$(tc-getAR)" + NM="$(tc-getNM)" + STRIP="$(tc-getSTRIP)" + OBJCOPY="$(tc-getOBJCOPY)" + OBJDUMP="$(tc-getOBJDUMP)" + READELF="$(tc-getREADELF)" + + # we need to pass it to override colliding Gentoo envvar + ARCH="$(tc-arch-kernel)" + + O="${WORKDIR}"/modprep + ) + + local kernel_dir="${BINPKG}/image/usr/src/linux-${KPV}" + local image="${kernel_dir}/$(dist-kernel_get_image_path)" + local uki="${image%/*}/uki.efi" + if [[ -s ${uki} ]]; then + # We need to extract the plain image for the test phase + # and USE=-generic-uki. + kernel-install_extract_from_uki linux "${uki}" "${image}" + fi + + mkdir modprep || die + cp "${kernel_dir}/.config" modprep/ || die + emake -C "${MY_P}" "${makeargs[@]}" modules_prepare +} + +src_test() { + local kernel_dir="${BINPKG}/image/usr/src/linux-${KPV}" + kernel-install_test "${KPV}" \ + "${WORKDIR}/${kernel_dir}/$(dist-kernel_get_image_path)" \ + "${BINPKG}/image/lib/modules/${KPV}" +} + +src_install() { + local kernel_dir="${BINPKG}/image/usr/src/linux-${KPV}" + local image="${kernel_dir}/$(dist-kernel_get_image_path)" + local uki="${image%/*}/uki.efi" + if [[ -s ${uki} ]]; then + # Keep the kernel image type we don't want out of install tree + # Replace back with placeholder + if use generic-uki; then + > "${image}" || die + else + > "${uki}" || die + fi + fi + + # Overwrite the identifier in the prebuilt package + echo "${CATEGORY}/${PF}:${SLOT}" > "${kernel_dir}/dist-kernel" || die + + mv "${BINPKG}"/image/{lib,usr} "${ED}"/ || die + + # FIXME: requires proper mount-boot + if [[ -d ${BINPKG}/image/boot/dtbs ]]; then + mv "${BINPKG}"/image/boot "${ED}"/ || die + fi + + # strip out-of-source build stuffs from modprep + # and then copy built files + find modprep -type f '(' \ + -name Makefile -o \ + -name '*.[ao]' -o \ + '(' -name '.*' -a -not -name '.config' ')' \ + ')' -delete || die + rm modprep/source || die + cp -p -R modprep/. "${ED}/usr/src/linux-${KPV}"/ || die + + # Update timestamps on all modules to ensure cleanup works correctly + # when switching USE=modules-compress. + find "${ED}/lib" -name '*.ko' -exec touch {} + || die + + # Modules were already stripped before signing + dostrip -x /lib/modules + kernel-install_compress_modules +} diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.52.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.52.ebuild new file mode 100644 index 000000000000..7ae1d1d9fbe0 --- /dev/null +++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.52.ebuild @@ -0,0 +1,170 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KERNEL_EFI_ZBOOT=1 +KERNEL_IUSE_GENERIC_UKI=1 +KERNEL_IUSE_SECUREBOOT=1 + +inherit kernel-install toolchain-funcs unpacker + +MY_P=linux-${PV%.*} +GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 7 )) +BINPKG=${PF/-bin}-1 + +DESCRIPTION="Pre-built Linux kernel with Gentoo patches" +HOMEPAGE="https://www.kernel.org/" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz + amd64? ( + https://dev.gentoo.org/~mgorny/binpkg/amd64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.amd64.gpkg.tar + ) + arm64? ( + https://dev.gentoo.org/~mgorny/binpkg/arm64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.arm64.gpkg.tar + ) + ppc64? ( + https://dev.gentoo.org/~mgorny/binpkg/ppc64le/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.ppc64le.gpkg.tar + ) + x86? ( + https://dev.gentoo.org/~mgorny/binpkg/x86/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.x86.gpkg.tar + ) +" +S=${WORKDIR} + +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +RDEPEND=" + !sys-kernel/gentoo-kernel:${SLOT} +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" +BDEPEND=" + app-alternatives/bc + app-alternatives/lex + virtual/libelf + app-alternatives/yacc +" + +QA_PREBUILT='*' + +KV_LOCALVERSION='-gentoo-dist' +KPV=${PV}${KV_LOCALVERSION} + +src_prepare() { + local PATCHES=( + # meh, genpatches have no directory + "${WORKDIR}"/*.patch + ) + cd "${MY_P}" || die + default +} + +src_configure() { + # force ld.bfd if we can find it easily + local HOSTLD="$(tc-getBUILD_LD)" + if type -P "${HOSTLD}.bfd" &>/dev/null; then + HOSTLD+=.bfd + fi + local LD="$(tc-getLD)" + if type -P "${LD}.bfd" &>/dev/null; then + LD+=.bfd + fi + tc-export_build_env + local makeargs=( + V=1 + + HOSTCC="$(tc-getBUILD_CC)" + HOSTCXX="$(tc-getBUILD_CXX)" + HOSTLD="${HOSTLD}" + HOSTAR="$(tc-getBUILD_AR)" + HOSTCFLAGS="${BUILD_CFLAGS}" + HOSTLDFLAGS="${BUILD_LDFLAGS}" + + CROSS_COMPILE=${CHOST}- + AS="$(tc-getAS)" + CC="$(tc-getCC)" + LD="${LD}" + AR="$(tc-getAR)" + NM="$(tc-getNM)" + STRIP="$(tc-getSTRIP)" + OBJCOPY="$(tc-getOBJCOPY)" + OBJDUMP="$(tc-getOBJDUMP)" + READELF="$(tc-getREADELF)" + + # we need to pass it to override colliding Gentoo envvar + ARCH="$(tc-arch-kernel)" + + O="${WORKDIR}"/modprep + ) + + local kernel_dir="${BINPKG}/image/usr/src/linux-${KPV}" + local image="${kernel_dir}/$(dist-kernel_get_image_path)" + local uki="${image%/*}/uki.efi" + if [[ -s ${uki} ]]; then + # We need to extract the plain image for the test phase + # and USE=-generic-uki. + kernel-install_extract_from_uki linux "${uki}" "${image}" + fi + + mkdir modprep || die + cp "${kernel_dir}/.config" modprep/ || die + emake -C "${MY_P}" "${makeargs[@]}" modules_prepare +} + +src_test() { + local kernel_dir="${BINPKG}/image/usr/src/linux-${KPV}" + kernel-install_test "${KPV}" \ + "${WORKDIR}/${kernel_dir}/$(dist-kernel_get_image_path)" \ + "${BINPKG}/image/lib/modules/${KPV}" +} + +src_install() { + local kernel_dir="${BINPKG}/image/usr/src/linux-${KPV}" + local image="${kernel_dir}/$(dist-kernel_get_image_path)" + local uki="${image%/*}/uki.efi" + if [[ -s ${uki} ]]; then + # Keep the kernel image type we don't want out of install tree + # Replace back with placeholder + if use generic-uki; then + > "${image}" || die + else + > "${uki}" || die + fi + fi + + # Overwrite the identifier in the prebuilt package + echo "${CATEGORY}/${PF}:${SLOT}" > "${kernel_dir}/dist-kernel" || die + + mv "${BINPKG}"/image/{lib,usr} "${ED}"/ || die + + # FIXME: requires proper mount-boot + if [[ -d ${BINPKG}/image/boot/dtbs ]]; then + mv "${BINPKG}"/image/boot "${ED}"/ || die + fi + + # strip out-of-source build stuffs from modprep + # and then copy built files + find modprep -type f '(' \ + -name Makefile -o \ + -name '*.[ao]' -o \ + '(' -name '.*' -a -not -name '.config' ')' \ + ')' -delete || die + rm modprep/source || die + cp -p -R modprep/. "${ED}/usr/src/linux-${KPV}"/ || die + + # Update timestamps on all modules to ensure cleanup works correctly + # when switching USE=modules-compress. + find "${ED}/lib" -name '*.ko' -exec touch {} + || die + + # Modules were already stripped before signing + dostrip -x /lib/modules + kernel-install_compress_modules +} diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest index 1d128eb3555b..810af715fd9a 100644 --- a/sys-kernel/gentoo-kernel/Manifest +++ b/sys-kernel/gentoo-kernel/Manifest @@ -20,6 +20,8 @@ DIST genpatches-6.1-119.base.tar.xz 6000764 BLAKE2B 1867fee7c4a1e50bc7b59ada634a DIST genpatches-6.1-119.extras.tar.xz 4056 BLAKE2B 52ecde24bf197791cfe5be801d881d26904b4503bd3e7857b6a6a2ea1e08fd0262a7e01de498854a931c5407f90d1b5dc73fabb3eb22dd370445f7ca057de0a1 SHA512 088e01360229386b880b2be615c0661c2c247a636a4d4810675fdf576bdeac3bb1d487dac6ec72ad88f4353e418289410f504b432fa8dea61b299e2f596370c8 DIST genpatches-6.1-120.base.tar.xz 6050748 BLAKE2B 8e81d186a9e5618d9f561fd0d49974031baa44ddb9b1885bb3ef6298d49b591e1c1582c306eddba07f3da733dea7ed82ae948838989010ee6471c052f99541c6 SHA512 7ec81a4b97becc07a15fc9e888f2e9c340334fb7ee2b9d0083123f67fdef44f7e155bdf7dd662158ea86d7eed3753017401479a5e50cc16eedde145dc77018c9 DIST genpatches-6.1-120.extras.tar.xz 4056 BLAKE2B 2295b59dea7ee450c0d6b109da2fc341e96030616635800a02847f93c4cd0191229c6d74bd68994ac42d2a96691856315127a060cd3873af34357f12ab54193c SHA512 8e1b92d4ab4cb327868f4e06c7bef5a099339c3cf2331ceff3aa3731632d1f8f7b427da5f892540a64f8afd86d89048100b93c8a08d40a99f5760a35553dca25 +DIST genpatches-6.1-121.base.tar.xz 6065048 BLAKE2B ef60651e53c53c2e918da2c9dd4759cde88472e2f6aecf4ed6a86f089a282bbdf7acab040c7660e52ea09e441f6008f17ae3d49afcd339e8b91d50cba48bda18 SHA512 e34af3822f10164dc0729d0803c6f3ea05e57c6ac157567bdec6d8d0a3e78fc72252606f3b3160089e7b4b8167ee76b13088cf1d238cc3db2841e2dde63b82aa +DIST genpatches-6.1-121.extras.tar.xz 4056 BLAKE2B 23ddf1bf6ee9d2790e952777edaa577916af9897a957c4e2f4714421ad7aae213b82e1c7d7b911a65f3ee6b27cefee4b5839d14ef1b0e539fe86d91722d0295c SHA512 95d167e2d5f8e883136923b332e662e8475043e0b2324b06a3e718a2bfb7e8f7b87c1cf0961ee06b0cff7fcae1e1dbf7446812fab7237416c281033f6777cc49 DIST genpatches-6.10-10.base.tar.xz 490332 BLAKE2B 6311b976880a1fe3cb902ba6e4d39890aa34565c6df19fc01deb7b337304418d1ada38d6d83f27acdeb3062fda65d7996a0e6988799a6789e81372a0966f3caa SHA512 3748322f9bae147f3ca68693dcabf21a4a969032cfb36aced11bb883907cb663d139175ed4dd7c8e87ea7628f875328e3b25d978009ee3a6989eb38b1c7c4ace DIST genpatches-6.10-10.experimental.tar.xz 81200 BLAKE2B bba2fc9daffcd1a6ce397682a4ca825486f7e45b6932f1f8bf9591eb16385caeefd70bb7dee406d80b248209f707f3c63a5b69d03225e6c84c48a19c39480cab SHA512 5d89064860cbc2bab7ee406a24e5e0479ad2502ebee3bb2c2f9ca81c443b8b2fbcc5944eeff262de5acae5c2a8276872f7d813013887f796a67236a905e38208 DIST genpatches-6.10-10.extras.tar.xz 4056 BLAKE2B edb14475e8c07f04d54e6953f8518ea631660ffcdaa8797eba19768b3a193df51822d508dd7b360ced634d0045878f77996ba765498bca3bf001d9a4c223fd8a SHA512 a0379c1ecdbb7a8d6f3b3f82db60d5fd7503598ac26c2f11f6f549e360a648053896cb8db235257bfa7bcad251c90c6dc38116e238c0e2447117eab83a42b4d4 @@ -32,6 +34,9 @@ DIST genpatches-6.10-12.extras.tar.xz 4060 BLAKE2B 77b8b8cc0ed8af03ca45e1224e6de DIST genpatches-6.10-13.base.tar.xz 727116 BLAKE2B 5125f8971fee0c7f78d28a555932e20ce80a260f09f3228b53e6a9e3923a809d7e812df8b32eb9ed74da3bb4b2762dcaf63d921f78ea5ea39c8f7a5796a25a31 SHA512 e0f124f613c18e9c3623887b90dee5dd30d2acee7271599e226cf9dc5a184f9ef06ddb536bd4fb20017c993fe203d9c9696a7e441caf5de2831552754b04192b DIST genpatches-6.10-13.experimental.tar.xz 81192 BLAKE2B 4a0c39320359fb3abf92026827aced503980afe1f138a64b6cc62efff244735443a7b2b355862f78a81770a635adc6f9a92fede7fbcd3ddf620dc751f8d2661e SHA512 fae93291f758224a80947ed18ae57fa5b69b4493b0921ddf98c24c7e507280b87752d003db4a4c5fe49f9a520f6f64c03b5f4f93bc89bc03884904e0c0476541 DIST genpatches-6.10-13.extras.tar.xz 4056 BLAKE2B f44d2635322562c13ede3ee395900b963e4a151786a6417fdedfbdce20708f277f7b732d5302606b6e9acc09c9bc7a4be4c1fcacf32a670a50bd9ddd5e8910f2 SHA512 16cb15c66948c48ab27c989226c1394ecc5041e1ed0323246e0f611fee4907029b23346ddfdc1b11d6a0824f2609f448dcc623dedf05dc94a2a3c4385f181c14 +DIST genpatches-6.10-14.base.tar.xz 759584 BLAKE2B d08dc14d5126e73155a6b1977ce2b9790a5717b6bf1fa31309838c3884a81baf945661093da2e3f69bf892f472db60defe1a001afa4b9a6846deee11cdf6cec2 SHA512 6e41093c8ee9690ec279a3f35c01d058ef02c3a9eac7b9eaa3908c14463c8d3c85497665b875111fd1a29e8d406706aa6f6791a44e0bc31d8c51053259a18d87 +DIST genpatches-6.10-14.experimental.tar.xz 81216 BLAKE2B 28d9b50c638df0bf214bae28072a580455059e1205b7f69575a8f24a9375f9473ad7a96ddbfc0d42f907c4c683cb9f929fecff1bb95d3512a1e725f808b19571 SHA512 9eb2336dd5a5e4cd39723b88f7109ac690094878a89b0fa6f329def7011e35de54615a58a2a18244f3fdea408dff5dfc3e72c8957d13ba44fd1c63522f7a9340 +DIST genpatches-6.10-14.extras.tar.xz 4056 BLAKE2B 63d33a29efc77a7839f4961de62c54f2383bcc7a119fce5ca7f80cdb66515537bb1e1bd55bb50f297b8f0a9c74f75bb237ee2893a859abe6d7f05864ae21e38b SHA512 c9adea40fdfd3faa5ee24a60be9ad4444819a8fbcb417ea98ce2f7a02fdd1e70c6f1168380cf6efd5a4d1820bea14db48c3064b271afaad8e1d23f0a8263a48f DIST genpatches-6.10-9.base.tar.xz 401220 BLAKE2B 3335d5d29c347526cea6104b9cca56b8ed8ee0f1de9ee8a6f55d66514df829fcd197b8281b2261f6dfb979276b65bc654d4b1257868b5b80a2411fbd2f076f11 SHA512 9d2319c2b86b80355464d661f675a331a4245405bb84184a4d061649abdeb5955b6ebeaee1cefbe3c669f810c9da645b7fb637af4dcb45cb9b69e715c6e46f1f DIST genpatches-6.10-9.extras.tar.xz 4056 BLAKE2B 2cba382236beae6374462f6147d6e164314cc8f7d7be87547902153c035b970ada27f4817a6de2d569116118eea0d95d42aa44de2147475c47c732abfedd9952 SHA512 358d82794809d49f4b24bdf10c49cc4fbe8ac0a45f86dfdc018d2c778b757c002d9bd129d935146b84daf809e95f5235fccf7466d2498755154b9c77e5a2b46d DIST genpatches-6.6-54.base.tar.xz 2922380 BLAKE2B f65404127bb6547208aeddac1996a4a2659bd99ff7429bcaff28247a867c000e962457725eab80db2c76297f1e5c27806dc6fb23e31d5694b6df783e65995227 SHA512 102f721f87478ad18599bb5ff65cd236180dd3d9d058786a5306cb36be3f30a2d2ef684e83b6f458d4de78a196323e87d346eba704bfbce733010aed6ac3d7f9 @@ -48,6 +53,9 @@ DIST genpatches-6.6-57.extras.tar.xz 4056 BLAKE2B 9b071880383921fcc8cd2da092e121 DIST genpatches-6.6-58.base.tar.xz 3154204 BLAKE2B 5b9456e93cb0984599e065fab0d05e40b7efbc8079763ede75ed7a6e7f0e241de96f0c6438cde52f64a5074f5bfcc5d55b5d3c21a9e9528138ea5c36e164ea58 SHA512 e775ac64564c201c3e1293d34a70f347a5afd5691a006d958f69959d2eea0af690cf66f7bdd450034ef9eb43daeccbedd58819dc688cd3e7e9933da9312cbf75 DIST genpatches-6.6-58.experimental.tar.xz 5760 BLAKE2B b4af0dd521cb76b237f16a505c55326359be8d45e92f73d98c3665c95ee3db563a5b1732635158612afa0212340ef2b34cc5acdd2fdefe49e8a995947124d7eb SHA512 1a4a76c9c5d1253072f7a591b5a98a4b914289348aa1162d2ec18075ebdf9f331f5c0a7a9043e6772fb6531b84846ef6b66cd28ede67859444e2a895becd18e9 DIST genpatches-6.6-58.extras.tar.xz 4060 BLAKE2B 7e16c5d713aaf221335b81f3a301e9bb1e7f243d9bc6739c3dd07bb3cfedbe6bd5a763ce418172c838fbd3de82909cabff7c2e5c4b4f1b675098b709ddc5203e SHA512 315bfdf633398b3b1a9650dae88fdd0c1442336cabe45a3f2722e968f510da13050657e8d35acf8a313981bd9403f5056abea182a0115a79952a2740ceb4ff88 +DIST genpatches-6.6-59.base.tar.xz 3174716 BLAKE2B 8eded8d4d4c343869f587ecc2a218d124c34618494ded9d17b493f26894e545658021ad9cfa05bafd14389de07406f43a722c37276cc14096a3a7a00040e2ae7 SHA512 88e5ef8de0954f349e5c0745adb8f718dcabcd2e166c597c9de753c892eaad42c936984279fde86974b307858959cdef401f92f6f62a98bf1d4bed14cbff821e +DIST genpatches-6.6-59.experimental.tar.xz 5760 BLAKE2B c17d9205c4cc8e9b25d992fa77296b2935a2b2827c322a3575690bdb081a82f8dbaac8a5135d9a8675d9ebcfa0b58db64b1ec857a412b9e8ea82ed8af2d3ac78 SHA512 7c275ec38d8bf6aa7d1e81d23f90c054c8febadd7b6d7602d27166128d97facd478a393270e119995301f51932d95d24a6e5a872465bd92c55c1f00508ce67b4 +DIST genpatches-6.6-59.extras.tar.xz 4056 BLAKE2B 8d68a426082bcb168f74abb849a7a58090268c9cf098aa8982d9e700fab754a6f42dd833c1ee5d44d52f58d1a6b3da018a954d873ba131a2049a286a39ca3099 SHA512 ee133a7efaeba2abe242482825f4490e1c1b17fca64f9183713dca601fc64048288aa79125f7b8c0715f6c4fb158ea3a230e76b39b63d1a59dbecf80697ac000 DIST gentoo-kernel-config-g13.tar.gz 5759 BLAKE2B 831f89078e539c8b4ce244528dfd847c12a45b52d540eb10d85ec0d9deb1c14288d8de12456865c92d16e3523ec3595676787a8f3b79545d76870b0fb68deb5d SHA512 2a7230cce57a67e3333f9a88a311afe4a928e27ce76036747451cb77d3186569ad11d7a5b827748ad53290a17ad63637a8362ca896516f85ff0944a8d68265a6 DIST kernel-aarch64-fedora.config.5.10.12 223184 BLAKE2B a0246dac2f7a4ad6a55b611538d24382ac87a8960077811a859c9595ac67f961b4bccb7e139a89abc7c0e26e80832da5c94211fc658082f2e7dde984f14dd29d SHA512 7d803b347b136331db1ad6e22e0445fe0224c3e26cd7c034cbe9794915d457b492e05f77664865079874ec001351553652646e2e08d0fee31e30b841b0008f52 DIST kernel-aarch64-fedora.config.6.1.102-gentoo 252811 BLAKE2B f6bad0d23132bf0dfbaa25db928a95f39763b6500fd1df9b4aeca4351e3e75f185891c0df96b111ad840e4bac431d74a9b11e7344e766ab49715663c89e4dbfc SHA512 41ebf195d8b656801d49c6bb693ebe1404b6725d70d88d93a75bc4af230030d65ef0701ea931846b022a3c598dcca068fbc38ecf6d064262b3f5b88e57060437 diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.1.111.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.1.111.ebuild new file mode 100644 index 000000000000..21c9b05e1334 --- /dev/null +++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.1.111.ebuild @@ -0,0 +1,137 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit kernel-build toolchain-funcs + +MY_P=linux-${PV%.*} +GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 10 )) +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +# forked to https://github.com/projg2/fedora-kernel-config-for-gentoo +CONFIG_VER=6.1.102-gentoo +GENTOO_CONFIG_VER=g13 + +DESCRIPTION="Linux kernel built with Gentoo patches" +HOMEPAGE=" + https://wiki.gentoo.org/wiki/Project:Distribution_Kernel + https://www.kernel.org/ +" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz + https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz + -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz + amd64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config + -> kernel-x86_64-fedora.config.${CONFIG_VER} + ) + arm64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config + -> kernel-aarch64-fedora.config.${CONFIG_VER} + ) + ppc64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config + -> kernel-ppc64le-fedora.config.${CONFIG_VER} + ) + x86? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-i686-fedora.config + -> kernel-i686-fedora.config.${CONFIG_VER} + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="GPL-2" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="debug hardened" +REQUIRED_USE=" + arm? ( savedconfig ) + hppa? ( savedconfig ) + riscv? ( savedconfig ) + sparc? ( savedconfig ) +" + +RDEPEND=" + !sys-kernel/gentoo-kernel-bin:${SLOT} +" +BDEPEND=" + debug? ( dev-util/pahole ) +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" + +QA_FLAGS_IGNORED=" + usr/src/linux-.*/scripts/gcc-plugins/.*.so + usr/src/linux-.*/vmlinux + usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg +" + +src_prepare() { + local PATCHES=( + # meh, genpatches have no directory + "${WORKDIR}"/*.patch + ) + default + + local biendian=false + + # prepare the default config + case ${ARCH} in + arm | hppa | riscv | sparc) + > .config || die + ;; + amd64) + cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die + ;; + arm64) + cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + ppc) + # assume powermac/powerbook defconfig + # we still package.use.force savedconfig + cp "${WORKDIR}/${MY_P}/arch/powerpc/configs/pmac32_defconfig" .config || die + ;; + ppc64) + cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + x86) + cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die + ;; + *) + die "Unsupported arch ${ARCH}" + ;; + esac + + local myversion="-gentoo-dist" + use hardened && myversion+="-hardened" + echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die + local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}" + + local merge_configs=( + "${T}"/version.config + "${dist_conf_path}"/base.config + ) + use debug || merge_configs+=( + "${dist_conf_path}"/no-debug.config + ) + if use hardened; then + merge_configs+=( "${dist_conf_path}"/hardened-base.config ) + + tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config ) + + if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then + merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" ) + fi + fi + + # this covers ppc64 and aarch64_be only for now + if [[ ${biendian} == true && $(tc-endian) == big ]]; then + merge_configs+=( "${dist_conf_path}/big-endian.config" ) + fi + + kernel-build_merge_configs "${merge_configs[@]}" +} diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.10.11.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.10.11.ebuild new file mode 100644 index 000000000000..f8ab5cbd3db7 --- /dev/null +++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.10.11.ebuild @@ -0,0 +1,144 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KERNEL_IUSE_GENERIC_UKI=1 +KERNEL_IUSE_MODULES_SIGN=1 + +inherit kernel-build toolchain-funcs + +MY_P=linux-${PV%.*} +GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 3 )) +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +# forked to https://github.com/projg2/fedora-kernel-config-for-gentoo +CONFIG_VER=6.10.1-gentoo +GENTOO_CONFIG_VER=g13 + +DESCRIPTION="Linux kernel built with Gentoo patches" +HOMEPAGE=" + https://wiki.gentoo.org/wiki/Project:Distribution_Kernel + https://www.kernel.org/ +" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz + experimental? ( + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.experimental.tar.xz + ) + https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz + -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz + amd64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config + -> kernel-x86_64-fedora.config.${CONFIG_VER} + ) + arm64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config + -> kernel-aarch64-fedora.config.${CONFIG_VER} + ) + ppc64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config + -> kernel-ppc64le-fedora.config.${CONFIG_VER} + ) + x86? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-i686-fedora.config + -> kernel-i686-fedora.config.${CONFIG_VER} + ) +" +S=${WORKDIR}/${MY_P} + +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="debug experimental hardened" +REQUIRED_USE=" + arm? ( savedconfig ) + hppa? ( savedconfig ) + riscv? ( savedconfig ) + sparc? ( savedconfig ) +" + +RDEPEND=" + !sys-kernel/gentoo-kernel-bin:${SLOT} +" +BDEPEND=" + debug? ( dev-util/pahole ) +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" + +QA_FLAGS_IGNORED=" + usr/src/linux-.*/scripts/gcc-plugins/.*.so + usr/src/linux-.*/vmlinux + usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg +" + +src_prepare() { + local PATCHES=( + # meh, genpatches have no directory + "${WORKDIR}"/*.patch + ) + default + + local biendian=false + + # prepare the default config + case ${ARCH} in + arm | hppa | loong | riscv | sparc) + > .config || die + ;; + amd64) + cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die + ;; + arm64) + cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + ppc) + # assume powermac/powerbook defconfig + # we still package.use.force savedconfig + cp "${WORKDIR}/${MY_P}/arch/powerpc/configs/pmac32_defconfig" .config || die + ;; + ppc64) + cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + x86) + cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die + ;; + *) + die "Unsupported arch ${ARCH}" + ;; + esac + + local myversion="-gentoo-dist" + use hardened && myversion+="-hardened" + echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die + local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}" + + local merge_configs=( + "${T}"/version.config + "${dist_conf_path}"/base.config + ) + use debug || merge_configs+=( + "${dist_conf_path}"/no-debug.config + ) + if use hardened; then + merge_configs+=( "${dist_conf_path}"/hardened-base.config ) + + tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config ) + + if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then + merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" ) + fi + fi + + # this covers ppc64 and aarch64_be only for now + if [[ ${biendian} == true && $(tc-endian) == big ]]; then + merge_configs+=( "${dist_conf_path}/big-endian.config" ) + fi + + use secureboot && merge_configs+=( "${dist_conf_path}/secureboot.config" ) + + kernel-build_merge_configs "${merge_configs[@]}" +} diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.52.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.52.ebuild new file mode 100644 index 000000000000..6518c0eaa2fd --- /dev/null +++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.52.ebuild @@ -0,0 +1,144 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KERNEL_IUSE_GENERIC_UKI=1 +KERNEL_IUSE_MODULES_SIGN=1 + +inherit kernel-build toolchain-funcs + +MY_P=linux-${PV%.*} +GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 7 )) +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +# forked to https://github.com/projg2/fedora-kernel-config-for-gentoo +CONFIG_VER=6.6.12-gentoo +GENTOO_CONFIG_VER=g13 + +DESCRIPTION="Linux kernel built with Gentoo patches" +HOMEPAGE=" + https://wiki.gentoo.org/wiki/Project:Distribution_Kernel + https://www.kernel.org/ +" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz + experimental? ( + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.experimental.tar.xz + ) + https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz + -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz + amd64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config + -> kernel-x86_64-fedora.config.${CONFIG_VER} + ) + arm64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config + -> kernel-aarch64-fedora.config.${CONFIG_VER} + ) + ppc64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config + -> kernel-ppc64le-fedora.config.${CONFIG_VER} + ) + x86? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-i686-fedora.config + -> kernel-i686-fedora.config.${CONFIG_VER} + ) +" +S=${WORKDIR}/${MY_P} + +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="debug experimental hardened" +REQUIRED_USE=" + arm? ( savedconfig ) + hppa? ( savedconfig ) + riscv? ( savedconfig ) + sparc? ( savedconfig ) +" + +RDEPEND=" + !sys-kernel/gentoo-kernel-bin:${SLOT} +" +BDEPEND=" + debug? ( dev-util/pahole ) +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" + +QA_FLAGS_IGNORED=" + usr/src/linux-.*/scripts/gcc-plugins/.*.so + usr/src/linux-.*/vmlinux + usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg +" + +src_prepare() { + local PATCHES=( + # meh, genpatches have no directory + "${WORKDIR}"/*.patch + ) + default + + local biendian=false + + # prepare the default config + case ${ARCH} in + arm | hppa | loong | riscv | sparc) + > .config || die + ;; + amd64) + cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die + ;; + arm64) + cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + ppc) + # assume powermac/powerbook defconfig + # we still package.use.force savedconfig + cp "${WORKDIR}/${MY_P}/arch/powerpc/configs/pmac32_defconfig" .config || die + ;; + ppc64) + cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + x86) + cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die + ;; + *) + die "Unsupported arch ${ARCH}" + ;; + esac + + local myversion="-gentoo-dist" + use hardened && myversion+="-hardened" + echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die + local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}" + + local merge_configs=( + "${T}"/version.config + "${dist_conf_path}"/base.config + ) + use debug || merge_configs+=( + "${dist_conf_path}"/no-debug.config + ) + if use hardened; then + merge_configs+=( "${dist_conf_path}"/hardened-base.config ) + + tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config ) + + if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then + merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" ) + fi + fi + + # this covers ppc64 and aarch64_be only for now + if [[ ${biendian} == true && $(tc-endian) == big ]]; then + merge_configs+=( "${dist_conf_path}/big-endian.config" ) + fi + + use secureboot && merge_configs+=( "${dist_conf_path}/secureboot.config" ) + + kernel-build_merge_configs "${merge_configs[@]}" +} diff --git a/sys-kernel/gentoo-sources/Manifest b/sys-kernel/gentoo-sources/Manifest index ec07c69b3e0e..8df426bd7e5f 100644 --- a/sys-kernel/gentoo-sources/Manifest +++ b/sys-kernel/gentoo-sources/Manifest @@ -28,6 +28,9 @@ DIST genpatches-6.1-119.extras.tar.xz 4056 BLAKE2B 52ecde24bf197791cfe5be801d881 DIST genpatches-6.1-120.base.tar.xz 6050748 BLAKE2B 8e81d186a9e5618d9f561fd0d49974031baa44ddb9b1885bb3ef6298d49b591e1c1582c306eddba07f3da733dea7ed82ae948838989010ee6471c052f99541c6 SHA512 7ec81a4b97becc07a15fc9e888f2e9c340334fb7ee2b9d0083123f67fdef44f7e155bdf7dd662158ea86d7eed3753017401479a5e50cc16eedde145dc77018c9 DIST genpatches-6.1-120.experimental.tar.xz 17448 BLAKE2B 4742840441ffa120615c5579647bf8465c1cde60051ad8a7ad62621a403541ef036911778dfd8cb13136ae6255fa822f45db4c924b165eeba61272664df71ffd SHA512 fe19b11bf8b74e63388f1cbb16838c4491df0c71ca66d2810619510a473ee7daff08a736f933d729a4128452c00fe1286e14f09e0fa6aab6c953e8dbce82d43d DIST genpatches-6.1-120.extras.tar.xz 4056 BLAKE2B 2295b59dea7ee450c0d6b109da2fc341e96030616635800a02847f93c4cd0191229c6d74bd68994ac42d2a96691856315127a060cd3873af34357f12ab54193c SHA512 8e1b92d4ab4cb327868f4e06c7bef5a099339c3cf2331ceff3aa3731632d1f8f7b427da5f892540a64f8afd86d89048100b93c8a08d40a99f5760a35553dca25 +DIST genpatches-6.1-121.base.tar.xz 6065048 BLAKE2B ef60651e53c53c2e918da2c9dd4759cde88472e2f6aecf4ed6a86f089a282bbdf7acab040c7660e52ea09e441f6008f17ae3d49afcd339e8b91d50cba48bda18 SHA512 e34af3822f10164dc0729d0803c6f3ea05e57c6ac157567bdec6d8d0a3e78fc72252606f3b3160089e7b4b8167ee76b13088cf1d238cc3db2841e2dde63b82aa +DIST genpatches-6.1-121.experimental.tar.xz 17444 BLAKE2B 7e76d9c6a991a70a036fe3cdf38f8cd3210c80eb4001e036927cfa4264731a0615d7e1f5115af471197751791b3771fd22e993f16cf96cb88f01288e3ad9d1f3 SHA512 d2f9bb34dd050ae567e35878ab1a2f9307b1dd989603b9088b8c30ab82b33d07b7d62ca65965391863fdf19b0deb3a437349e76e105723200dbebb2c19a5b35b +DIST genpatches-6.1-121.extras.tar.xz 4056 BLAKE2B 23ddf1bf6ee9d2790e952777edaa577916af9897a957c4e2f4714421ad7aae213b82e1c7d7b911a65f3ee6b27cefee4b5839d14ef1b0e539fe86d91722d0295c SHA512 95d167e2d5f8e883136923b332e662e8475043e0b2324b06a3e718a2bfb7e8f7b87c1cf0961ee06b0cff7fcae1e1dbf7446812fab7237416c281033f6777cc49 DIST genpatches-6.10-10.base.tar.xz 490332 BLAKE2B 6311b976880a1fe3cb902ba6e4d39890aa34565c6df19fc01deb7b337304418d1ada38d6d83f27acdeb3062fda65d7996a0e6988799a6789e81372a0966f3caa SHA512 3748322f9bae147f3ca68693dcabf21a4a969032cfb36aced11bb883907cb663d139175ed4dd7c8e87ea7628f875328e3b25d978009ee3a6989eb38b1c7c4ace DIST genpatches-6.10-10.experimental.tar.xz 81200 BLAKE2B bba2fc9daffcd1a6ce397682a4ca825486f7e45b6932f1f8bf9591eb16385caeefd70bb7dee406d80b248209f707f3c63a5b69d03225e6c84c48a19c39480cab SHA512 5d89064860cbc2bab7ee406a24e5e0479ad2502ebee3bb2c2f9ca81c443b8b2fbcc5944eeff262de5acae5c2a8276872f7d813013887f796a67236a905e38208 DIST genpatches-6.10-10.extras.tar.xz 4056 BLAKE2B edb14475e8c07f04d54e6953f8518ea631660ffcdaa8797eba19768b3a193df51822d508dd7b360ced634d0045878f77996ba765498bca3bf001d9a4c223fd8a SHA512 a0379c1ecdbb7a8d6f3b3f82db60d5fd7503598ac26c2f11f6f549e360a648053896cb8db235257bfa7bcad251c90c6dc38116e238c0e2447117eab83a42b4d4 @@ -40,6 +43,9 @@ DIST genpatches-6.10-12.extras.tar.xz 4060 BLAKE2B 77b8b8cc0ed8af03ca45e1224e6de DIST genpatches-6.10-13.base.tar.xz 727116 BLAKE2B 5125f8971fee0c7f78d28a555932e20ce80a260f09f3228b53e6a9e3923a809d7e812df8b32eb9ed74da3bb4b2762dcaf63d921f78ea5ea39c8f7a5796a25a31 SHA512 e0f124f613c18e9c3623887b90dee5dd30d2acee7271599e226cf9dc5a184f9ef06ddb536bd4fb20017c993fe203d9c9696a7e441caf5de2831552754b04192b DIST genpatches-6.10-13.experimental.tar.xz 81192 BLAKE2B 4a0c39320359fb3abf92026827aced503980afe1f138a64b6cc62efff244735443a7b2b355862f78a81770a635adc6f9a92fede7fbcd3ddf620dc751f8d2661e SHA512 fae93291f758224a80947ed18ae57fa5b69b4493b0921ddf98c24c7e507280b87752d003db4a4c5fe49f9a520f6f64c03b5f4f93bc89bc03884904e0c0476541 DIST genpatches-6.10-13.extras.tar.xz 4056 BLAKE2B f44d2635322562c13ede3ee395900b963e4a151786a6417fdedfbdce20708f277f7b732d5302606b6e9acc09c9bc7a4be4c1fcacf32a670a50bd9ddd5e8910f2 SHA512 16cb15c66948c48ab27c989226c1394ecc5041e1ed0323246e0f611fee4907029b23346ddfdc1b11d6a0824f2609f448dcc623dedf05dc94a2a3c4385f181c14 +DIST genpatches-6.10-14.base.tar.xz 759584 BLAKE2B d08dc14d5126e73155a6b1977ce2b9790a5717b6bf1fa31309838c3884a81baf945661093da2e3f69bf892f472db60defe1a001afa4b9a6846deee11cdf6cec2 SHA512 6e41093c8ee9690ec279a3f35c01d058ef02c3a9eac7b9eaa3908c14463c8d3c85497665b875111fd1a29e8d406706aa6f6791a44e0bc31d8c51053259a18d87 +DIST genpatches-6.10-14.experimental.tar.xz 81216 BLAKE2B 28d9b50c638df0bf214bae28072a580455059e1205b7f69575a8f24a9375f9473ad7a96ddbfc0d42f907c4c683cb9f929fecff1bb95d3512a1e725f808b19571 SHA512 9eb2336dd5a5e4cd39723b88f7109ac690094878a89b0fa6f329def7011e35de54615a58a2a18244f3fdea408dff5dfc3e72c8957d13ba44fd1c63522f7a9340 +DIST genpatches-6.10-14.extras.tar.xz 4056 BLAKE2B 63d33a29efc77a7839f4961de62c54f2383bcc7a119fce5ca7f80cdb66515537bb1e1bd55bb50f297b8f0a9c74f75bb237ee2893a859abe6d7f05864ae21e38b SHA512 c9adea40fdfd3faa5ee24a60be9ad4444819a8fbcb417ea98ce2f7a02fdd1e70c6f1168380cf6efd5a4d1820bea14db48c3064b271afaad8e1d23f0a8263a48f DIST genpatches-6.10-9.base.tar.xz 401220 BLAKE2B 3335d5d29c347526cea6104b9cca56b8ed8ee0f1de9ee8a6f55d66514df829fcd197b8281b2261f6dfb979276b65bc654d4b1257868b5b80a2411fbd2f076f11 SHA512 9d2319c2b86b80355464d661f675a331a4245405bb84184a4d061649abdeb5955b6ebeaee1cefbe3c669f810c9da645b7fb637af4dcb45cb9b69e715c6e46f1f DIST genpatches-6.10-9.experimental.tar.xz 81200 BLAKE2B ced7f11678f518ccb2e24423ba68b8fea90e3a76da0c50c5364d18956d4c79ed8d36c3e7459e007db3708bdf448c9195af2db3a881d21c3c963a9761c2a58e4d SHA512 275f511b27d1db458cc111c9d646af54df5bd4c227abd33c77b6eb21711e4ec705dcbd143ce20820d43d2c78bd526298808c2a5a319b7080012ba3e4ff47725d DIST genpatches-6.10-9.extras.tar.xz 4056 BLAKE2B 2cba382236beae6374462f6147d6e164314cc8f7d7be87547902153c035b970ada27f4817a6de2d569116118eea0d95d42aa44de2147475c47c732abfedd9952 SHA512 358d82794809d49f4b24bdf10c49cc4fbe8ac0a45f86dfdc018d2c778b757c002d9bd129d935146b84daf809e95f5235fccf7466d2498755154b9c77e5a2b46d @@ -61,6 +67,9 @@ DIST genpatches-6.6-57.extras.tar.xz 4056 BLAKE2B 9b071880383921fcc8cd2da092e121 DIST genpatches-6.6-58.base.tar.xz 3154204 BLAKE2B 5b9456e93cb0984599e065fab0d05e40b7efbc8079763ede75ed7a6e7f0e241de96f0c6438cde52f64a5074f5bfcc5d55b5d3c21a9e9528138ea5c36e164ea58 SHA512 e775ac64564c201c3e1293d34a70f347a5afd5691a006d958f69959d2eea0af690cf66f7bdd450034ef9eb43daeccbedd58819dc688cd3e7e9933da9312cbf75 DIST genpatches-6.6-58.experimental.tar.xz 5760 BLAKE2B b4af0dd521cb76b237f16a505c55326359be8d45e92f73d98c3665c95ee3db563a5b1732635158612afa0212340ef2b34cc5acdd2fdefe49e8a995947124d7eb SHA512 1a4a76c9c5d1253072f7a591b5a98a4b914289348aa1162d2ec18075ebdf9f331f5c0a7a9043e6772fb6531b84846ef6b66cd28ede67859444e2a895becd18e9 DIST genpatches-6.6-58.extras.tar.xz 4060 BLAKE2B 7e16c5d713aaf221335b81f3a301e9bb1e7f243d9bc6739c3dd07bb3cfedbe6bd5a763ce418172c838fbd3de82909cabff7c2e5c4b4f1b675098b709ddc5203e SHA512 315bfdf633398b3b1a9650dae88fdd0c1442336cabe45a3f2722e968f510da13050657e8d35acf8a313981bd9403f5056abea182a0115a79952a2740ceb4ff88 +DIST genpatches-6.6-59.base.tar.xz 3174716 BLAKE2B 8eded8d4d4c343869f587ecc2a218d124c34618494ded9d17b493f26894e545658021ad9cfa05bafd14389de07406f43a722c37276cc14096a3a7a00040e2ae7 SHA512 88e5ef8de0954f349e5c0745adb8f718dcabcd2e166c597c9de753c892eaad42c936984279fde86974b307858959cdef401f92f6f62a98bf1d4bed14cbff821e +DIST genpatches-6.6-59.experimental.tar.xz 5760 BLAKE2B c17d9205c4cc8e9b25d992fa77296b2935a2b2827c322a3575690bdb081a82f8dbaac8a5135d9a8675d9ebcfa0b58db64b1ec857a412b9e8ea82ed8af2d3ac78 SHA512 7c275ec38d8bf6aa7d1e81d23f90c054c8febadd7b6d7602d27166128d97facd478a393270e119995301f51932d95d24a6e5a872465bd92c55c1f00508ce67b4 +DIST genpatches-6.6-59.extras.tar.xz 4056 BLAKE2B 8d68a426082bcb168f74abb849a7a58090268c9cf098aa8982d9e700fab754a6f42dd833c1ee5d44d52f58d1a6b3da018a954d873ba131a2049a286a39ca3099 SHA512 ee133a7efaeba2abe242482825f4490e1c1b17fca64f9183713dca601fc64048288aa79125f7b8c0715f6c4fb158ea3a230e76b39b63d1a59dbecf80697ac000 DIST linux-5.10.tar.xz 116606704 BLAKE2B b923d7b66309224f42f35f8a5fa219421b0a9362d2adacdadd8d96251f61f7230878ea297a269a7f3b3c56830f0b177e068691e1d7f88501a05653b0a13274d1 SHA512 95bc137d0cf9148da6a9d1f1a878698dc27b40f68e22c597544010a6c591ce1b256f083489d3ff45ff77753289b535135590194d88ef9f007d0ddab3d74de70e DIST linux-5.15.tar.xz 121913744 BLAKE2B 3921274b23f7938abdf3ed9334534b4581e13d7484303d3a5280eddb038999aaa8b836666a487472d9c4a219af0f06b9fecccaf348fb5510ab8762f4ef4b7e83 SHA512 d25ad40b5bcd6a4c6042fd0fd84e196e7a58024734c3e9a484fd0d5d54a0c1d87db8a3c784eff55e43b6f021709dc685eb0efa18d2aec327e4f88a79f405705a DIST linux-6.1.tar.xz 134728520 BLAKE2B ae60257860b2bd1bd708d183f0443afc60ebbd2b3d535c45e44c2e541bd0928530a3b62de6385dd4e4726ebbedcc0a871d4f3ffb4105b9f1f6d8ed7467f5688e SHA512 6ed2a73c2699d0810e54753715635736fc370288ad5ce95c594f2379959b0e418665cd71bc512a0273fe226fe90074d8b10d14c209080a6466498417a4fdda68 diff --git a/sys-kernel/gentoo-sources/gentoo-sources-6.1.111.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-6.1.111.ebuild new file mode 100644 index 000000000000..2916672ddacc --- /dev/null +++ b/sys-kernel/gentoo-sources/gentoo-sources-6.1.111.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +ETYPE="sources" +K_WANT_GENPATCHES="base extras experimental" +K_GENPATCHES_VER="121" + +inherit kernel-2 +detect_version +detect_arch + +DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree" +HOMEPAGE="https://dev.gentoo.org/~mpagano/genpatches" +SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="experimental" + +pkg_postinst() { + kernel-2_pkg_postinst + einfo "For more info on this patchset, and how to report problems, see:" + einfo "${HOMEPAGE}" +} + +pkg_postrm() { + kernel-2_pkg_postrm +} diff --git a/sys-kernel/gentoo-sources/gentoo-sources-6.10.11.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-6.10.11.ebuild new file mode 100644 index 000000000000..ab6bc8778cea --- /dev/null +++ b/sys-kernel/gentoo-sources/gentoo-sources-6.10.11.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +ETYPE="sources" +K_WANT_GENPATCHES="base extras experimental" +K_GENPATCHES_VER="14" + +inherit check-reqs kernel-2 +detect_version +detect_arch + +DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree" +HOMEPAGE="https://dev.gentoo.org/~mpagano/genpatches" +SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="experimental" + +pkg_pretend() { + CHECKREQS_DISK_BUILD="4G" + check-reqs_pkg_pretend +} + +pkg_postinst() { + kernel-2_pkg_postinst + einfo "For more info on this patchset, and how to report problems, see:" + einfo "${HOMEPAGE}" +} + +pkg_postrm() { + kernel-2_pkg_postrm +} diff --git a/sys-kernel/gentoo-sources/gentoo-sources-6.6.52.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-6.6.52.ebuild new file mode 100644 index 000000000000..ebd2bb20802f --- /dev/null +++ b/sys-kernel/gentoo-sources/gentoo-sources-6.6.52.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +ETYPE="sources" +K_WANT_GENPATCHES="base extras experimental" +K_GENPATCHES_VER="59" + +inherit kernel-2 +detect_version +detect_arch + +DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree" +HOMEPAGE="https://dev.gentoo.org/~mpagano/genpatches" +SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="experimental" + +pkg_postinst() { + kernel-2_pkg_postinst + einfo "For more info on this patchset, and how to report problems, see:" + einfo "${HOMEPAGE}" +} + +pkg_postrm() { + kernel-2_pkg_postrm +} diff --git a/sys-kernel/vanilla-kernel/Manifest b/sys-kernel/vanilla-kernel/Manifest index d401d672065b..8dfda7408dba 100644 --- a/sys-kernel/vanilla-kernel/Manifest +++ b/sys-kernel/vanilla-kernel/Manifest @@ -42,8 +42,12 @@ DIST linux-6.1.109.tar.sign 991 BLAKE2B a47f2eb60b86a73af2a7edf256288209702f195f DIST linux-6.1.109.tar.xz 135193224 BLAKE2B 2ab7151c193bcdfe0664f94040675faec1cefcb44df524074c9b06eeee1184fb07891c1d6bbfbe8ca53b8d52f332a17a14854602ef046897de692eaceef8e5c6 SHA512 a435b89320e8af19532bbd40c30c5c1e1b6f796f062a015f3c1bcf7a30b00eba4c51a568078c6dac9fc60040153305237910e6f9d701b9a7bf86475bd0a61dfc DIST linux-6.1.110.tar.sign 991 BLAKE2B c93c23243b3f9df9da66cd9c3d1c65d6cc09212b53c3a19d4a565ea9566d2831938f3aa6c25b88fe7e85268aa0bcac8bdd5cfac472d610b95aaec2ee2b39181f SHA512 9fb593858e2af689e2e1d5171e70f2b707a4bc77ae721e6950115877b084c49dee340e77f12bf40761793a2cde306d513ca2e151e3c159e55906e129d458b8cd DIST linux-6.1.110.tar.xz 135196940 BLAKE2B a4d78c86f74c0684a3ec53056241900a0fec06862fa47b963085ed7e797a0c5c8dc8d9b5e6d83d5da412e8ae8f820bcbc2f83c2a049ceed81e545fb0733ad582 SHA512 48c9515d32bbba034e3a477554bac627f131533a9b47ec55c8ded5f464c7e57f0f27c1f34ec92403792680d1019baa4472b2c55892c5e1d8edfd04cf7bd79eb4 +DIST linux-6.1.111.tar.sign 991 BLAKE2B f65cdcfcde31e4e281af4f6efbaabaec9f347d1be4b801e839e372c608fc8cda925ff4fc7da6e2f4c495c0ba8bacb41b5c4540e97f1354225a5884f7fae9e7f2 SHA512 4a575810a76953383fe9a20071f3c07af638537a93edf10a7cbb452931666079d99314a15b15cd37016ff9e73057dfc23686887f1f044d7d7116734cb64f4954 +DIST linux-6.1.111.tar.xz 135180332 BLAKE2B 4e60152884277015e12e9830da2fd4816507e36fc263506d270a17bb641d4811c83ea358c7fec0d3204a02b5cc3d47c3a935a52a4a5ccec869a96e458ff86d89 SHA512 239a37cc75c6f19d9f8480cc1fed27e885a60b1d68b127848d3e00ed6e2ffe3fe5d9bea0ada95dad1e39c6e829446f10722b2d8ab062f85aab189ee74512ca9a DIST linux-6.10.10.tar.sign 991 BLAKE2B f626f460b08be2045dc47c33b50766e20b63c4d6e4dc842214584cb41b9b20c8db6ca4bfa696fd906b7ba6a9c4d8a1c67118207665c635e3639cb7c9028feb79 SHA512 807e761ddb21f7445dca7c34cea33113093a5e303d0b5069da4c8de93e3443abb62ec6b9f7e9806a3a2d2dc57fa47861940cd03cebe5e08d41d6a4ffeaa46c73 DIST linux-6.10.10.tar.xz 145139280 BLAKE2B 8a15910089d080886046b1fd8d57ef28ce872bf428e67ccbc9d5ca92da794d6dee7ab83cc914a499b40962e2990c3b1e5b11ae7d12c1eff7bec548c9a67df03a SHA512 affaa3690150ca13f0ee14f91f0e09a5ad3340a7ea6404e34286dfb4bd4fdfe12fcac47e83da7878681bf28a8a8b78e0b315e1563408885dbb07aac5bd2e4dce +DIST linux-6.10.11.tar.sign 991 BLAKE2B 45a05ada9cbe48948bbf1cbd581eafa6ace4f2b1f9b8d3dd0d6059f6120ff15ff55e0b1a74d3819105294e8abbc1be2c8c806e4c9e04f69cf5e7e6bed80ee06b SHA512 f9ae418c735b250c55444634375dc9bf5481f2709fb70bb3f3b939100325274c60ee52fd3e2294b1277d9dda2e3bc5574f3c867029aec2e4a414f5b40ace47da +DIST linux-6.10.11.tar.xz 145185812 BLAKE2B 55380d2af9fc535f6359cdb9b36612d1f81f2f140652f44bf927c320dda382109c9fb9591cc741914d3221e8d8bda954a10dbbeff8c163bf1ed57eff1831c8df SHA512 bb118bf74c0fd613e55e84f849849124f1d6093cb57c178258e2210e400e9fe492c16578bba583b1434b65175ebe1f20dfb722c271bf71b1157d38f3c0b2bca3 DIST linux-6.10.6.tar.sign 989 BLAKE2B e8ab99394db3d9c5da9177f64c6c6e8ab74b5b62b7b251964e2b9a0a8ecfbf6a8339ae8b2e2b9ea75350d08b5fa8f00e1bafebaa35c57f52545d415aef60b0f1 SHA512 bd5555d4c1f02277087615423f1bd951cf9cb18f18b9f65775c70810f0698c8df45a1b789f26b33b5e0f7b8183a6a6ac2aedd9154b1b7eece4742156d6d6150f DIST linux-6.10.6.tar.xz 145142332 BLAKE2B e0e2c2419b6da1a6c5caaf9df669a362bdef3d6fb19742da6c5300a6f6d0994259ea2acde7f6a4a20d1e2b71528bbed0e7fd51cbca33ddbf78f2d832a291148f SHA512 991ec7c7d2d490cb90b182a29e892dae586918eee7f3ff4b6e26f4ff9b31b6d7a31cdc31d25ca12243ecab59787aad75f0056b2fbe6997d0dfd68c357e7703af DIST linux-6.10.7.tar.sign 989 BLAKE2B eea3184425313d7b20475540e52b5b59b3f5e8414eeae6c2df219bcea1adb084d6e992509adf7627e1d4409effc817e10b54cbad8dde48b11778a1e0273e593c SHA512 ad0446b0e08dcd7c063382d8ea3c4c48a5dce8239c6edbea70a64c106546f77ae69a450ae7dea82b5a755dd3311f017bf5ada3913c7daf715fc0393f4e0b5695 @@ -62,3 +66,5 @@ DIST linux-6.6.50.tar.sign 989 BLAKE2B e2ea6cf052f27f273f59e7a4a51689fc9ad9e6a29 DIST linux-6.6.50.tar.xz 140341000 BLAKE2B d54ca4ffd0c6d525725441189e933c68cf9123cb20b553b33e162867c14240fb8e4fd4af5331865156150a7345973ddfae3a8448c77681f442f0af54c071c5b8 SHA512 8421a7085900d4d1919ff73b6c77d9d713be3391e9113bf7446052f3e89a8c1b6f89e5861776007bf922f97d66c1aead48f0aae9b572a163034fafd2280b66b7 DIST linux-6.6.51.tar.sign 989 BLAKE2B 6413a28f43c12842b24a6bbb3def5cdff4776ddb773afe71d13f987212e8247b721599f24fe003585f85402b39e175a223053d47871603ab5878b1caa9a13f1d SHA512 0eecf63ad8f3c20edef379b90e9c7b576457ae5dee6cf265bbc7bbed1e46f6fc33fbbdf437497edc3ca821349762f97d8b2a11f249fc14ecd91c4f7002528a66 DIST linux-6.6.51.tar.xz 140337048 BLAKE2B 11c628d94cd62e08ec500fd67fc8b989e03cfa617690f5f7ce010f211c7778c7b57c119d827a707b3c09e862b5b96de3eb8e503b7128a4e1651789e4420ac1e6 SHA512 c79fcd957dbc855e101464a04b33921ab0dab7bf16201da0cd49b4c3dc9746f22a7f3411033035698ef98e8c9bcc6edf560e44c2b740235beac7cd59a4ea695c +DIST linux-6.6.52.tar.sign 989 BLAKE2B c3ea21b0921eab9df4fd36ee10ba4f417ccdde013be1d4a75c28e50578495812ec058a51bbbefdd9baf9b5fab97ee1558c6bb9ba79172750dd89ac8494f5913c SHA512 a19d1283072c8a648b02765e9ac94284171a1376e0a07fd4872a32c565e5d6f213cf38af636475c46e9369bf45c32971ad60afaed3c2ebe9d6e6614fc9731d5b +DIST linux-6.6.52.tar.xz 140320676 BLAKE2B f42461ea587b2027ce4e096dd7188d4d5bc8aa559eb037afbb2250493900988925d69e2882356739ac3b9d028f833a63578ed9087f7bd9ee44dc096b4608d352 SHA512 3fb7b4e6e19e87c4012037ea32dc4e28a30b75fa4260530edb7686c39b0c6fb6c4e35550a97c0e40c604513a0ba5f26490a6a74da21de08226d54fda73d316a0 diff --git a/sys-kernel/vanilla-kernel/vanilla-kernel-6.1.111.ebuild b/sys-kernel/vanilla-kernel/vanilla-kernel-6.1.111.ebuild new file mode 100644 index 000000000000..857634f8cd43 --- /dev/null +++ b/sys-kernel/vanilla-kernel/vanilla-kernel-6.1.111.ebuild @@ -0,0 +1,134 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit kernel-build toolchain-funcs verify-sig + +MY_P=linux-${PV} +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +# forked to https://github.com/projg2/fedora-kernel-config-for-gentoo +CONFIG_VER=6.1.102-gentoo +GENTOO_CONFIG_VER=g13 + +DESCRIPTION="Linux kernel built from vanilla upstream sources" +HOMEPAGE=" + https://wiki.gentoo.org/wiki/Project:Distribution_Kernel + https://www.kernel.org/ +" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz + -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz + verify-sig? ( + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.sign + ) + amd64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config + -> kernel-x86_64-fedora.config.${CONFIG_VER} + ) + arm64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config + -> kernel-aarch64-fedora.config.${CONFIG_VER} + ) + ppc64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config + -> kernel-ppc64le-fedora.config.${CONFIG_VER} + ) + x86? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-i686-fedora.config + -> kernel-i686-fedora.config.${CONFIG_VER} + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="GPL-2" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86" +IUSE="debug hardened" +REQUIRED_USE="arm? ( savedconfig )" + +BDEPEND=" + debug? ( dev-util/pahole ) + verify-sig? ( sec-keys/openpgp-keys-kernel ) +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc + +src_unpack() { + if use verify-sig; then + einfo "Unpacking linux-${PV}.tar.xz ..." + verify-sig_verify_detached - "${DISTDIR}"/linux-${PV}.tar.sign \ + < <(xz -cd "${DISTDIR}"/linux-${PV}.tar.xz | tee >(tar -x)) + assert "Unpack failed" + unpack "gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz" + else + default + fi +} + +src_prepare() { + default + + local biendian=false + + # prepare the default config + case ${ARCH} in + arm | hppa) + > .config || die + ;; + amd64) + cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die + ;; + arm64) + cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + ppc) + # assume powermac/powerbook defconfig + # we still package.use.force savedconfig + cp "${WORKDIR}/${MY_P}/arch/powerpc/configs/pmac32_defconfig" .config || die + ;; + ppc64) + cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + x86) + cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die + ;; + *) + die "Unsupported arch ${ARCH}" + ;; + esac + + local myversion="-dist" + use hardened && myversion+="-hardened" + echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die + local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}" + + local merge_configs=( + "${T}"/version.config + "${dist_conf_path}"/base.config + ) + use debug || merge_configs+=( + "${dist_conf_path}"/no-debug.config + ) + if use hardened; then + merge_configs+=( "${dist_conf_path}"/hardened-base.config ) + + tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config ) + + if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then + merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" ) + fi + fi + + # this covers ppc64 and aarch64_be only for now + if [[ ${biendian} == true && $(tc-endian) == big ]]; then + merge_configs+=( "${dist_conf_path}/big-endian.config" ) + fi + + kernel-build_merge_configs "${merge_configs[@]}" +} diff --git a/sys-kernel/vanilla-kernel/vanilla-kernel-6.10.11.ebuild b/sys-kernel/vanilla-kernel/vanilla-kernel-6.10.11.ebuild new file mode 100644 index 000000000000..2bc8ee080f62 --- /dev/null +++ b/sys-kernel/vanilla-kernel/vanilla-kernel-6.10.11.ebuild @@ -0,0 +1,137 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KERNEL_IUSE_MODULES_SIGN=1 +inherit kernel-build toolchain-funcs verify-sig + +MY_P=linux-${PV} +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +# forked to https://github.com/projg2/fedora-kernel-config-for-gentoo +CONFIG_VER=6.10.1-gentoo +GENTOO_CONFIG_VER=g13 + +DESCRIPTION="Linux kernel built from vanilla upstream sources" +HOMEPAGE=" + https://wiki.gentoo.org/wiki/Project:Distribution_Kernel + https://www.kernel.org/ +" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz + -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz + verify-sig? ( + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.sign + ) + amd64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config + -> kernel-x86_64-fedora.config.${CONFIG_VER} + ) + arm64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config + -> kernel-aarch64-fedora.config.${CONFIG_VER} + ) + ppc64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config + -> kernel-ppc64le-fedora.config.${CONFIG_VER} + ) + x86? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-i686-fedora.config + -> kernel-i686-fedora.config.${CONFIG_VER} + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="GPL-2" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~x86" +IUSE="debug hardened" +REQUIRED_USE="arm? ( savedconfig )" + +BDEPEND=" + debug? ( dev-util/pahole ) + verify-sig? ( sec-keys/openpgp-keys-kernel ) +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc + +src_unpack() { + if use verify-sig; then + einfo "Unpacking linux-${PV}.tar.xz ..." + verify-sig_verify_detached - "${DISTDIR}"/linux-${PV}.tar.sign \ + < <(xz -cd "${DISTDIR}"/linux-${PV}.tar.xz | tee >(tar -x)) + assert "Unpack failed" + unpack "gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz" + else + default + fi +} + +src_prepare() { + default + + local biendian=false + + # prepare the default config + case ${ARCH} in + arm | hppa | loong) + > .config || die + ;; + amd64) + cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die + ;; + arm64) + cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + ppc) + # assume powermac/powerbook defconfig + # we still package.use.force savedconfig + cp "${WORKDIR}/${MY_P}/arch/powerpc/configs/pmac32_defconfig" .config || die + ;; + ppc64) + cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + x86) + cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die + ;; + *) + die "Unsupported arch ${ARCH}" + ;; + esac + + local myversion="-dist" + use hardened && myversion+="-hardened" + echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die + local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}" + + local merge_configs=( + "${T}"/version.config + "${dist_conf_path}"/base.config + ) + use debug || merge_configs+=( + "${dist_conf_path}"/no-debug.config + ) + if use hardened; then + merge_configs+=( "${dist_conf_path}"/hardened-base.config ) + + tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config ) + + if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then + merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" ) + fi + fi + + # this covers ppc64 and aarch64_be only for now + if [[ ${biendian} == true && $(tc-endian) == big ]]; then + merge_configs+=( "${dist_conf_path}/big-endian.config" ) + fi + + use secureboot && merge_configs+=( "${dist_conf_path}/secureboot.config" ) + + kernel-build_merge_configs "${merge_configs[@]}" +} diff --git a/sys-kernel/vanilla-kernel/vanilla-kernel-6.6.52.ebuild b/sys-kernel/vanilla-kernel/vanilla-kernel-6.6.52.ebuild new file mode 100644 index 000000000000..93587cc4db6d --- /dev/null +++ b/sys-kernel/vanilla-kernel/vanilla-kernel-6.6.52.ebuild @@ -0,0 +1,137 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KERNEL_IUSE_MODULES_SIGN=1 +inherit kernel-build toolchain-funcs verify-sig + +MY_P=linux-${PV} +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +# forked to https://github.com/projg2/fedora-kernel-config-for-gentoo +CONFIG_VER=6.6.12-gentoo +GENTOO_CONFIG_VER=g13 + +DESCRIPTION="Linux kernel built from vanilla upstream sources" +HOMEPAGE=" + https://wiki.gentoo.org/wiki/Project:Distribution_Kernel + https://www.kernel.org/ +" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz + https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz + -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz + verify-sig? ( + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.sign + ) + amd64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config + -> kernel-x86_64-fedora.config.${CONFIG_VER} + ) + arm64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config + -> kernel-aarch64-fedora.config.${CONFIG_VER} + ) + ppc64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config + -> kernel-ppc64le-fedora.config.${CONFIG_VER} + ) + x86? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-i686-fedora.config + -> kernel-i686-fedora.config.${CONFIG_VER} + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="GPL-2" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~x86" +IUSE="debug hardened" +REQUIRED_USE="arm? ( savedconfig )" + +BDEPEND=" + debug? ( dev-util/pahole ) + verify-sig? ( sec-keys/openpgp-keys-kernel ) +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc + +src_unpack() { + if use verify-sig; then + einfo "Unpacking linux-${PV}.tar.xz ..." + verify-sig_verify_detached - "${DISTDIR}"/linux-${PV}.tar.sign \ + < <(xz -cd "${DISTDIR}"/linux-${PV}.tar.xz | tee >(tar -x)) + assert "Unpack failed" + unpack "gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz" + else + default + fi +} + +src_prepare() { + default + + local biendian=false + + # prepare the default config + case ${ARCH} in + arm | hppa | loong) + > .config || die + ;; + amd64) + cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die + ;; + arm64) + cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + ppc) + # assume powermac/powerbook defconfig + # we still package.use.force savedconfig + cp "${WORKDIR}/${MY_P}/arch/powerpc/configs/pmac32_defconfig" .config || die + ;; + ppc64) + cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + x86) + cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die + ;; + *) + die "Unsupported arch ${ARCH}" + ;; + esac + + local myversion="-dist" + use hardened && myversion+="-hardened" + echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die + local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}" + + local merge_configs=( + "${T}"/version.config + "${dist_conf_path}"/base.config + ) + use debug || merge_configs+=( + "${dist_conf_path}"/no-debug.config + ) + if use hardened; then + merge_configs+=( "${dist_conf_path}"/hardened-base.config ) + + tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config ) + + if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then + merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" ) + fi + fi + + # this covers ppc64 and aarch64_be only for now + if [[ ${biendian} == true && $(tc-endian) == big ]]; then + merge_configs+=( "${dist_conf_path}/big-endian.config" ) + fi + + use secureboot && merge_configs+=( "${dist_conf_path}/secureboot.config" ) + + kernel-build_merge_configs "${merge_configs[@]}" +} diff --git a/sys-kernel/vanilla-sources/Manifest b/sys-kernel/vanilla-sources/Manifest index e63fedd7e196..a008321c0259 100644 --- a/sys-kernel/vanilla-sources/Manifest +++ b/sys-kernel/vanilla-sources/Manifest @@ -10,6 +10,6 @@ DIST patch-4.19.322.xz 6167468 BLAKE2B c98f69d3b4507d457c38ae4c36ee0ca61b889e578 DIST patch-5.10.226.xz 6236088 BLAKE2B c6e0ab4fbf820749154d78b1a107d3d19140cfd8a23a5b04fe2cef23778e02f379a16936651511cf9cad556d95ec56f39e752430e36f88ed389cf9ff21c23bc2 SHA512 9b1d7f4e36aa2d98d92bb80fc1230a68cbd7679cf1e2dcdc7eae759e45854f838a7a70f6be6ffa3b6c8b24289bb24e6b1df26f1a55f1dbbc7f30879b69fc0981 DIST patch-5.15.167.xz 6199840 BLAKE2B f1b1ff1d9259e9b9f4de2709f0bf683d16d86f05245c6534d8e7987ecfd591a52c028bbf04d143852ee0863081ee91a5f8f19e5c167747e8745523fb91721430 SHA512 99c94dc03d1e05d2693e84a0c71d447c59cbb013f815a252e3fafec8358e46c470a59ba7216bd98c6cf20d92e13d48fc5f6341499c353f1960d3c57808000005 DIST patch-5.4.284.xz 5726484 BLAKE2B dc05f67c379a8c99179da2a62b5d6bef186393d791ccd2a26c99c50bcec5ae211fe3b6a14be38d80ea431b93fecc8d55bafc9492ea1e6f9dd64829671c80e5f9 SHA512 54131a007e78382dd093ca3bdb65ac7b5681f8340b29ce09e93ab802392bccaf65e1b774abc24af364ab3ce28c5ac28bac329593f40e5feb4272b557479a06aa -DIST patch-6.1.110.xz 5169072 BLAKE2B 6b9dbc403dd2e8d232c0d2649df3f1c4d81792c2f9a08c3c662dfff95b15d176118f51b2454114c433c7092bb3c2444a2e7961084e9ed80deaaca68e7bc44ea5 SHA512 4ae0055719789c1cbf4353ee4537ff0ee50e9177ae678c5c39281da8971a77c4a7e889967b4a24a3e18e2b9ae6d7179b7fd77d6f30c775e124fa6d8da9b3bf29 -DIST patch-6.10.10.xz 682348 BLAKE2B aa6448e67c67d1f4f80ca175d81bb7c4725396cee3bdd96bfdea6948f054f57a8ff5afa63fa6b694a35de83c5b9da105cd678d073a3ce6fdca2f0821fbe65cd2 SHA512 def2d13b3aa0ca2e612d66892914672707824dc47c3ed8b41f31a0b92eb07542ed84f528cc8ce0b855bc21bc08c127fe6cc405a65c2ec7075c9bb8323bc912e4 -DIST patch-6.6.51.xz 2876636 BLAKE2B a431ae4243c0d634980430430772eca0e683b6e9ae73294b2164dc5954d11d939c8162ed862cf1eca9eb89e2486294db7da48aa06e7f737e309a0bdd1656746f SHA512 76ac226f3037e7e5877b765a65b9c296c4365c626871a00fff394e9562f7db3dc067ba7801b85e64613d8ac05decc4c0b32152e3001938c4abc9d08d5fe56f05 +DIST patch-6.1.111.xz 5192116 BLAKE2B e2c78000967a0b5de761dff1bc9f8dfc7c66967a27b2bc2c8650781d7e20c2643a0212e6465d97ff5afbfecccf78b4ea5a541ddda6d5c5d87449cf812c0aaf5c SHA512 4dc8f9b68a344a0ad5baef0f28e8a6a23065664fa9a57e184485077f4735ae04016fa032dc3a05b93af0d745b3f57f2c9d56d997501701f09d63f0fd57812733 +DIST patch-6.10.11.xz 714624 BLAKE2B ad380f02d5f18669538f14d0596014cfe72b224b9c71678ccd17fda22606252d2d109b988555d6f8bb842dba9feb8d9a723316fa6ea68b561fe82754ab2215f0 SHA512 647939f3750fb5205556f2bc33d20c4fbec478e5ba13bc957312cdc2687a4e8216391527deca532026b2a8879cc4840a61b328feddfb57778fb947baf1d42276 +DIST patch-6.6.52.xz 2901836 BLAKE2B 94c94b666692d7456feae3ec1491feb41663a18a4e05d971f6c2d27049e105a4ebb53134c716e4d05917fa4b772843208dc18879855edbf458021f92413fc356 SHA512 f5fe39550d9cf02dbdc4483b544688260d69a67332168b5039fa7ca28eddbec4383daadd755857ed6c3b84b5e30094ec29f73e8b0c9095cb064d605bf932d65c diff --git a/sys-kernel/vanilla-sources/vanilla-sources-6.1.110.ebuild b/sys-kernel/vanilla-sources/vanilla-sources-6.1.111.ebuild index 69c881fde565..69c881fde565 100644 --- a/sys-kernel/vanilla-sources/vanilla-sources-6.1.110.ebuild +++ b/sys-kernel/vanilla-sources/vanilla-sources-6.1.111.ebuild diff --git a/sys-kernel/vanilla-sources/vanilla-sources-6.10.10.ebuild b/sys-kernel/vanilla-sources/vanilla-sources-6.10.11.ebuild index 69c881fde565..69c881fde565 100644 --- a/sys-kernel/vanilla-sources/vanilla-sources-6.10.10.ebuild +++ b/sys-kernel/vanilla-sources/vanilla-sources-6.10.11.ebuild diff --git a/sys-kernel/vanilla-sources/vanilla-sources-6.6.51.ebuild b/sys-kernel/vanilla-sources/vanilla-sources-6.6.52.ebuild index 69c881fde565..69c881fde565 100644 --- a/sys-kernel/vanilla-sources/vanilla-sources-6.6.51.ebuild +++ b/sys-kernel/vanilla-sources/vanilla-sources-6.6.52.ebuild diff --git a/sys-kernel/zen-sources/Manifest b/sys-kernel/zen-sources/Manifest index 902269ce8a19..23d8d1939dc5 100644 --- a/sys-kernel/zen-sources/Manifest +++ b/sys-kernel/zen-sources/Manifest @@ -1,4 +1,4 @@ -DIST genpatches-6.10-11.base.tar.xz 553020 BLAKE2B 11a958ebd8848d9023a9cdcb877039ba04f72169ad78e47661890d31b73ae7a9fbdec8d12507a1d16eed08ba59f4a6fdc38ed8b6b02d05cb44198dbfcfef31e8 SHA512 3a3c1e5cbee053ab4c9c731bafa723ffcdfc8179e62fdc0eb16469a15abb5fec8ef4ff395305fd4502ea9cab70702e071f6cf9d0397cb185a987e8fbc880123f -DIST genpatches-6.10-11.extras.tar.xz 4060 BLAKE2B 98d5747be50ef0a270a561f379946213cb32596e01aa6da66a3cdd8a57dbea491af4265b052bc9fb1089e74818e249ac85228bc85aeffa34f8bd18396ceaa18e SHA512 e1ba5f037ae58c9ea4434f60817b53282494c8d25a659a0b6d9b75db384f7706b122bde225640e2028cfc36022a6cb0d1b5711685a4a265c75f3592c278a67f6 +DIST genpatches-6.10-13.base.tar.xz 727116 BLAKE2B 5125f8971fee0c7f78d28a555932e20ce80a260f09f3228b53e6a9e3923a809d7e812df8b32eb9ed74da3bb4b2762dcaf63d921f78ea5ea39c8f7a5796a25a31 SHA512 e0f124f613c18e9c3623887b90dee5dd30d2acee7271599e226cf9dc5a184f9ef06ddb536bd4fb20017c993fe203d9c9696a7e441caf5de2831552754b04192b +DIST genpatches-6.10-13.extras.tar.xz 4056 BLAKE2B f44d2635322562c13ede3ee395900b963e4a151786a6417fdedfbdce20708f277f7b732d5302606b6e9acc09c9bc7a4be4c1fcacf32a670a50bd9ddd5e8910f2 SHA512 16cb15c66948c48ab27c989226c1394ecc5041e1ed0323246e0f611fee4907029b23346ddfdc1b11d6a0824f2609f448dcc623dedf05dc94a2a3c4385f181c14 DIST linux-6.10.tar.xz 145142812 BLAKE2B bb243ea7493b9d63aa2df2050a3f1ae2b89ee84a20015239cf157e3f4f51c7ac5efedc8a51132b2d7482f9276ac418de6624831c8a3b806130d9c2d2124c539b SHA512 baa2487954044f991d2ae254d77d14a1f0185dd62c9f0fcaff69f586c9f906823017b8db1c4588f27b076dfa3ebb606929fec859f60ea419e7974330b9289cc2 -DIST linux-v6.10.8-zen1.patch.zst 167159 BLAKE2B 0fe816d415ee71937bc67d340e7612500ff51820e45e349e6d1bd29086b100a32b405343682b14ac2f7bc1f2572df77a1bf0aea55c58145ac4489c1eec1c8503 SHA512 5a63b91a3527628844a210bcb3dcb13069d3b29e56bd4e89e85b2300db02b4326b1945b20db7438667262e7926cf6dbf73f66788320468c61b4709f5917c557f +DIST linux-v6.10.10-zen1.patch.zst 170426 BLAKE2B 9d79dc0c9a77db21475d2f1761c2eab75daf85f85a7f4be490b89c6562369f59ce905f371edc3f7da0be9bc134047e32633b78b8ca4e0bdc4598011eb88b6672 SHA512 54d56dbdbd7fb04a679f5c92101b50d4a001d8d4df96a8c7a8037a8f924c5b41e8fbfaa558152533ca60ca18537e8ee91ea7954446a0e73b9fc3b16103e66728 diff --git a/sys-kernel/zen-sources/zen-sources-6.10.8.ebuild b/sys-kernel/zen-sources/zen-sources-6.10.10.ebuild index 747c2300fd40..186b62e2bb48 100644 --- a/sys-kernel/zen-sources/zen-sources-6.10.8.ebuild +++ b/sys-kernel/zen-sources/zen-sources-6.10.10.ebuild @@ -4,7 +4,7 @@ EAPI="8" ETYPE="sources" K_WANT_GENPATCHES="base extras" -K_GENPATCHES_VER="11" +K_GENPATCHES_VER="13" K_SECURITY_UNSUPPORTED="1" K_NOSETEXTRAVERSION="1" diff --git a/sys-libs/compiler-rt-sanitizers/Manifest b/sys-libs/compiler-rt-sanitizers/Manifest index da77c6605097..5b5b27757076 100644 --- a/sys-libs/compiler-rt-sanitizers/Manifest +++ b/sys-libs/compiler-rt-sanitizers/Manifest @@ -12,6 +12,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.1.0.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.1.0.ebuild new file mode 100644 index 000000000000..f88c55f33b9e --- /dev/null +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.1.0.ebuild @@ -0,0 +1,221 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit check-reqs cmake flag-o-matic llvm.org llvm-utils python-any-r1 + +DESCRIPTION="Compiler runtime libraries for clang (sanitizers & xray)" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="${LLVM_MAJOR}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos" +IUSE="+abi_x86_32 abi_x86_64 +clang debug test" +# base targets +IUSE+=" +ctx-profile +libfuzzer +memprof +orc +profile +xray" +# sanitizer targets, keep in sync with config-ix.cmake +# NB: ubsan, scudo deliberately match two entries +SANITIZER_FLAGS=( + asan dfsan lsan msan hwasan tsan ubsan safestack cfi scudo + shadowcallstack gwp-asan +) +IUSE+=" ${SANITIZER_FLAGS[@]/#/+}" +REQUIRED_USE=" + || ( ${SANITIZER_FLAGS[*]} libfuzzer orc profile xray ) + test? ( + cfi? ( ubsan ) + gwp-asan? ( scudo ) + ) +" +RESTRICT=" + !clang? ( test ) + !test? ( test ) +" + +DEPEND=" + sys-devel/llvm:${LLVM_MAJOR} + virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?] +" +BDEPEND=" + clang? ( sys-devel/clang ) + elibc_glibc? ( net-libs/libtirpc ) + test? ( + $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]") + =sys-devel/clang-${LLVM_VERSION}*:${LLVM_MAJOR} + sys-libs/compiler-rt:${LLVM_MAJOR} + ) + !test? ( + ${PYTHON_DEPS} + ) +" + +LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake ) +LLVM_TEST_COMPONENTS=( + llvm/include/llvm/ProfileData llvm/lib/Testing/Support third-party +) +llvm.org_set_globals + +python_check_deps() { + use test || return 0 + python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]" +} + +check_space() { + if use test; then + local CHECKREQS_DISK_BUILD=11G + check-reqs_pkg_pretend + fi +} + +pkg_pretend() { + check_space +} + +pkg_setup() { + check_space + python-any-r1_pkg_setup +} + +src_prepare() { + sed -i -e 's:-Werror::' lib/tsan/go/buildgo.sh || die + + local flag + for flag in "${SANITIZER_FLAGS[@]}"; do + if ! use "${flag}"; then + local cmake_flag=${flag/-/_} + sed -i -e "/COMPILER_RT_HAS_${cmake_flag^^}/s:TRUE:FALSE:" \ + cmake/config-ix.cmake || die + fi + done + + # TODO: fix these tests to be skipped upstream + if use asan && ! use profile; then + rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die + fi + if use ubsan && ! use cfi; then + > test/cfi/CMakeLists.txt || die + fi + # hangs, sigh + rm test/tsan/getline_nohang.cpp || die + + llvm.org_src_prepare +} + +src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + + # pre-set since we need to pass it to cmake + BUILD_DIR=${WORKDIR}/compiler-rt_build + + if use clang; then + local -x CC=${CHOST}-clang + local -x CXX=${CHOST}-clang++ + strip-unsupported-flags + fi + + local flag want_sanitizer=OFF + for flag in "${SANITIZER_FLAGS[@]}"; do + if use "${flag}"; then + want_sanitizer=ON + break + fi + done + + local mycmakeargs=( + -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}" + # use a build dir structure consistent with install + # this makes it possible to easily deploy test-friendly clang + -DCOMPILER_RT_OUTPUT_DIR="${BUILD_DIR}/lib/clang/${LLVM_MAJOR}" + + -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) + # builtins & crt installed by sys-libs/compiler-rt + -DCOMPILER_RT_BUILD_BUILTINS=OFF + -DCOMPILER_RT_BUILD_CRT=OFF + -DCOMPILER_RT_BUILD_CTX_PROFILE=$(usex ctx-profile) + -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer) + -DCOMPILER_RT_BUILD_MEMPROF=$(usex memprof) + -DCOMPILER_RT_BUILD_ORC=$(usex orc) + -DCOMPILER_RT_BUILD_PROFILE=$(usex profile) + -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}" + -DCOMPILER_RT_BUILD_XRAY=$(usex xray) + + -DPython3_EXECUTABLE="${PYTHON}" + ) + + if use amd64; then + mycmakeargs+=( + -DCAN_TARGET_i386=$(usex abi_x86_32) + -DCAN_TARGET_x86_64=$(usex abi_x86_64) + ) + fi + + if use test; then + mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags)" + + # they are created during src_test() + -DCOMPILER_RT_TEST_COMPILER="${BUILD_DIR}/lib/llvm/${LLVM_MAJOR}/bin/clang" + -DCOMPILER_RT_TEST_CXX_COMPILER="${BUILD_DIR}/lib/llvm/${LLVM_MAJOR}/bin/clang++" + ) + + # same flags are passed for build & tests, so we need to strip + # them down to a subset supported by clang + CC=${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang \ + CXX=${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++ \ + strip-unsupported-flags + fi + + if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then + mycmakeargs+=( + # setting -isysroot is disabled with compiler-rt-prefix-paths.patch + # this allows adding arm64 support using SDK in EPREFIX + -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" + # Set version based on the SDK in EPREFIX + # This disables i386 for SDK >= 10.15 + # Will error if has_use tsan and SDK < 10.12 + -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" + # Use our libtool instead of looking it up with xcrun + -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" + ) + fi + + cmake_src_configure + + if use test; then + local sys_dir=( "${EPREFIX}"/usr/lib/clang/${LLVM_MAJOR}/lib/* ) + [[ -e ${sys_dir} ]] || die "Unable to find ${sys_dir}" + [[ ${#sys_dir[@]} -eq 1 ]] || die "Non-deterministic compiler-rt install: ${sys_dir[*]}" + + # copy clang over since resource_dir is located relatively to binary + # therefore, we can put our new libraries in it + mkdir -p "${BUILD_DIR}"/lib/{llvm/${LLVM_MAJOR}/{bin,$(get_libdir)},clang/${LLVM_MAJOR}/include} || die + cp "${EPREFIX}"/usr/lib/llvm/${LLVM_MAJOR}/bin/clang{,++} \ + "${BUILD_DIR}"/lib/llvm/${LLVM_MAJOR}/bin/ || die + cp "${EPREFIX}"/usr/lib/clang/${LLVM_MAJOR}/include/*.h \ + "${BUILD_DIR}"/lib/clang/${LLVM_MAJOR}/include/ || die + cp "${sys_dir}"/*builtins*.a \ + "${BUILD_DIR}/lib/clang/${LLVM_MAJOR}/lib/${sys_dir##*/}/" || die + # we also need LLVMgold.so for gold-based tests + if [[ -f ${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/LLVMgold.so ]]; then + ln -s "${EPREFIX}"/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/LLVMgold.so \ + "${BUILD_DIR}"/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/ || die + fi + fi +} + +src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + # disable sandbox to have it stop clobbering LD_PRELOAD + local -x SANDBOX_ON=0 + # wipe LD_PRELOAD to make ASAN happy + local -x LD_PRELOAD= + + cmake_build check-all +} diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest index 8016764b89d1..ab632b04f053 100644 --- a/sys-libs/compiler-rt/Manifest +++ b/sys-libs/compiler-rt/Manifest @@ -11,6 +11,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-libs/compiler-rt/compiler-rt-19.1.0.ebuild b/sys-libs/compiler-rt/compiler-rt-19.1.0.ebuild new file mode 100644 index 000000000000..ccdf3d0f17c6 --- /dev/null +++ b/sys-libs/compiler-rt/compiler-rt-19.1.0.ebuild @@ -0,0 +1,174 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake crossdev flag-o-matic llvm.org llvm-utils python-any-r1 +inherit toolchain-funcs + +DESCRIPTION="Compiler runtime library for clang (built-in part)" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="${LLVM_MAJOR}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" +IUSE="+abi_x86_32 abi_x86_64 +clang debug test" +RESTRICT="!test? ( test ) !clang? ( test )" + +DEPEND=" + sys-devel/llvm:${LLVM_MAJOR} +" +BDEPEND=" + clang? ( sys-devel/clang ) + test? ( + $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]") + =sys-devel/clang-${LLVM_VERSION}*:${LLVM_MAJOR} + ) + !test? ( + ${PYTHON_DEPS} + ) +" + +LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake ) +LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser ) +llvm.org_set_globals + +python_check_deps() { + use test || return 0 + python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]" +} + +pkg_pretend() { + if ! use clang && ! tc-is-clang; then + ewarn "Building using a compiler other than clang may result in broken atomics" + ewarn "library. Enable USE=clang unless you have a very good reason not to." + fi +} + +pkg_setup() { + if target_is_not_host || tc-is-cross-compiler ; then + # strips vars like CFLAGS="-march=x86_64-v3" for non-x86 architectures + CHOST=${CTARGET} strip-unsupported-flags + # overrides host docs otherwise + DOCS=() + fi + python-any-r1_pkg_setup +} + +test_compiler() { + target_is_not_host && return + $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \ + <<<'int main() { return 0; }' &>/dev/null +} + +src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + + # pre-set since we need to pass it to cmake + BUILD_DIR=${WORKDIR}/${P}_build + + if use clang && ! is_crosspkg; then + # Only do this conditionally to allow overriding with + # e.g. CC=clang-13 in case of breakage + if ! tc-is-clang ; then + local -x CC=${CHOST}-clang + local -x CXX=${CHOST}-clang++ + fi + + strip-unsupported-flags + fi + + if ! is_crosspkg && ! test_compiler ; then + local nolib_flags=( -nodefaultlibs -lc ) + + if test_compiler "${nolib_flags[@]}"; then + local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" + ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" + elif test_compiler "${nolib_flags[@]}" -nostartfiles; then + # Avoiding -nostartfiles earlier on for bug #862540, + # and set available entry symbol for bug #862798. + nolib_flags+=( -nostartfiles -e main ) + + local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" + ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" + fi + fi + + local mycmakeargs=( + -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}" + + -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) + -DCOMPILER_RT_BUILD_CTX_PROFILE=OFF + -DCOMPILER_RT_BUILD_LIBFUZZER=OFF + -DCOMPILER_RT_BUILD_MEMPROF=OFF + -DCOMPILER_RT_BUILD_ORC=OFF + -DCOMPILER_RT_BUILD_PROFILE=OFF + -DCOMPILER_RT_BUILD_SANITIZERS=OFF + -DCOMPILER_RT_BUILD_XRAY=OFF + + -DPython3_EXECUTABLE="${PYTHON}" + ) + + if use amd64 && ! target_is_not_host; then + mycmakeargs+=( + -DCAN_TARGET_i386=$(usex abi_x86_32) + -DCAN_TARGET_x86_64=$(usex abi_x86_64) + ) + fi + + if is_crosspkg; then + # Needed to target built libc headers + export CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include" + mycmakeargs+=( + # Without this, the compiler will compile a test program + # and fail due to no builtins. + -DCMAKE_C_COMPILER_WORKS=1 + -DCMAKE_CXX_COMPILER_WORKS=1 + + # Without this, compiler-rt install location is not unique + # to target triples, only to architecture. + # Needed if you want to target multiple libcs for one arch. + -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON + + -DCMAKE_ASM_COMPILER_TARGET="${CTARGET}" + -DCMAKE_C_COMPILER_TARGET="${CTARGET}" + -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON + ) + fi + + if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then + mycmakeargs+=( + # setting -isysroot is disabled with compiler-rt-prefix-paths.patch + # this allows adding arm64 support using SDK in EPREFIX + -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" + # Set version based on the SDK in EPREFIX. + # This disables i386 for SDK >= 10.15 + -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" + # Use our libtool instead of looking it up with xcrun + -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" + ) + fi + + if use test; then + mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags)" + + -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang" + -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++" + ) + fi + + cmake_src_configure +} + +src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + + cmake_build check-builtins +} diff --git a/sys-libs/libchipcard/Manifest b/sys-libs/libchipcard/Manifest index ccc116389bcd..4db37d054fe4 100644 --- a/sys-libs/libchipcard/Manifest +++ b/sys-libs/libchipcard/Manifest @@ -1,2 +1 @@ -DIST libchipcard-5.1.5rc2.tar.gz 877820 BLAKE2B dfe82e3d6aea26e95e5f69298ea17ad4bb9a1d106cca02a9fc23f5aa5ea338471ae5628248350e01571f4819567da2a0f5a3699d56d8f02ed58971d6ac715abe SHA512 5e86068bd688f72e04073dbd076f21646a6b75d2a7a73c25bba4396e8657c4df28cf5cfb61eef7b243186f8313cea1262e415f2acad5348fa5179b46d7f96ed1 DIST libchipcard-5.1.6.tar.gz 874865 BLAKE2B 995dec0ce1dd9a5c4eb1173c114a19292d5c9a96f44c0ad969390ab489a6ac4e9001596995eb06db98a4bee2fa8b2310b844efd2e1b18fe1138be00398e60bd3 SHA512 a6e22f2a92203529a8b35387b6d8a3de0ce16a8d845b6ebee53bc151fcaa7626a61f63e71480cd85c01c9c5975a17632be8ba2d71a604f7ec2eab9d40b9ddfd5 diff --git a/sys-libs/libchipcard/libchipcard-5.1.5_rc2.ebuild b/sys-libs/libchipcard/libchipcard-5.1.5_rc2.ebuild deleted file mode 100644 index 72c3965f46dc..000000000000 --- a/sys-libs/libchipcard/libchipcard-5.1.5_rc2.ebuild +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -MY_P="${P/_rc/rc}" - -DESCRIPTION="Library for accessing chip cards via chip card readers (terminals)" -HOMEPAGE="https://www.aquamaniac.de/rdm/projects/libchipcard" -SRC_URI="https://www.aquamaniac.de/rdm/attachments/download/229/${MY_P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86" -IUSE="doc examples" - -BDEPEND=" - sys-devel/gettext - doc? ( app-text/doxygen ) -" -DEPEND=" - >=sys-apps/pcsc-lite-1.6.2 - >=sys-libs/gwenhywfar-4.99.22_rc6:= - sys-libs/zlib - virtual/libintl -" -RDEPEND="${DEPEND}" - -DOCS=( AUTHORS ChangeLog NEWS README TODO doc/{CERTIFICATES,CONFIG,IPCCOMMANDS} ) - -S="${WORKDIR}/${MY_P}" - -src_configure() { - local myeconfargs=( - --disable-static - --with-docpath=/usr/share/doc/${PF}/apidoc - $(use_enable doc full-doc) - ) - econf "${myeconfargs[@]}" -} - -src_install() { - emake DESTDIR="${D}" install - - einstalldocs - - if use examples; then - docinto tutorials - dodoc tutorials/*.{c,h,xml} tutorials/README - fi - - find "${D}" -name '*.la' -type f -delete || die -} diff --git a/sys-libs/libchipcard/libchipcard-5.1.6.ebuild b/sys-libs/libchipcard/libchipcard-5.1.6.ebuild deleted file mode 100644 index 22b7cb9b20a5..000000000000 --- a/sys-libs/libchipcard/libchipcard-5.1.6.ebuild +++ /dev/null @@ -1,49 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Library for accessing chip cards via chip card readers (terminals)" -HOMEPAGE="https://www.aquamaniac.de/rdm/projects/libchipcard" -SRC_URI="https://www.aquamaniac.de/rdm/attachments/download/382/${P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86" -IUSE="doc examples" - -BDEPEND=" - sys-devel/gettext - doc? ( app-text/doxygen ) -" -DEPEND=" - >=sys-apps/pcsc-lite-1.6.2 - >=sys-libs/gwenhywfar-4.99.22_rc6:= - sys-libs/zlib - virtual/libintl -" -RDEPEND="${DEPEND}" - -DOCS=( AUTHORS ChangeLog NEWS README TODO doc/{CERTIFICATES,CONFIG,IPCCOMMANDS} ) - -src_configure() { - local myeconfargs=( - --disable-static - --with-docpath=/usr/share/doc/"${PF}"/apidoc - $(use_enable doc full-doc) - ) - econf "${myeconfargs[@]}" -} - -src_install() { - emake DESTDIR="${D}" install - - einstalldocs - - if use examples; then - docinto tutorials - dodoc tutorials/*.{c,h,xml} tutorials/README - fi - - find "${D}" -name '*.la' -type f -delete || die -} diff --git a/sys-libs/libchipcard/metadata.xml b/sys-libs/libchipcard/metadata.xml index 115e9d64a669..947e0178918b 100644 --- a/sys-libs/libchipcard/metadata.xml +++ b/sys-libs/libchipcard/metadata.xml @@ -2,4 +2,7 @@ <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <!-- maintainer-needed --> + <upstream> + <remote-id type="github">aqbanking/libchipcard</remote-id> + </upstream> </pkgmetadata> diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest index 7987d237e330..64c22660a3d8 100644 --- a/sys-libs/libcxx/Manifest +++ b/sys-libs/libcxx/Manifest @@ -10,6 +10,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-libs/libcxx/libcxx-19.1.0.ebuild b/sys-libs/libcxx/libcxx-19.1.0.ebuild new file mode 100644 index 000000000000..80dbe207d4c4 --- /dev/null +++ b/sys-libs/libcxx/libcxx-19.1.0.ebuild @@ -0,0 +1,202 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake-multilib flag-o-matic llvm.org llvm-utils python-any-r1 +inherit toolchain-funcs + +DESCRIPTION="New implementation of the C++ standard library, targeting C++11" +HOMEPAGE="https://libcxx.llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="+clang +libcxxabi +static-libs test" +REQUIRED_USE="test? ( clang )" +RESTRICT="!test? ( test )" + +RDEPEND=" + libcxxabi? ( + ~sys-libs/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}] + ) + !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] ) +" +DEPEND=" + ${RDEPEND} + sys-devel/llvm:${LLVM_MAJOR} +" +BDEPEND=" + clang? ( + sys-devel/clang:${LLVM_MAJOR} + ) + !test? ( + ${PYTHON_DEPS} + ) + test? ( + dev-debug/gdb[python] + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + ) +" + +LLVM_COMPONENTS=( runtimes libcxx{,abi} llvm/{cmake,utils/llvm-lit} cmake ) +llvm.org_set_globals + +python_check_deps() { + use test || return 0 + python_has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +pkg_setup() { + python-any-r1_pkg_setup + + if ! use libcxxabi && ! tc-is-gcc ; then + eerror "To build ${PN} against libsupc++, you have to use gcc. Other" + eerror "compilers are not supported. Please set CC=gcc and CXX=g++" + eerror "and try again." + die + fi +} + +test_compiler() { + $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \ + <<<'int main() { return 0; }' &>/dev/null +} + +src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + # note: we need to do this before multilib kicks in since it will + # alter the CHOST + local cxxabi cxxabi_incs + if use libcxxabi; then + cxxabi=system-libcxxabi + cxxabi_incs="${EPREFIX}/usr/include/c++/v1" + else + local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)" + cxxabi=libsupc++ + cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}" + fi + + multilib-minimal_src_configure +} + +multilib_src_configure() { + if use clang; then + local -x CC=${CHOST}-clang + local -x CXX=${CHOST}-clang++ + strip-unsupported-flags + fi + + # link to compiler-rt + local use_compiler_rt=OFF + [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON + + # bootstrap: cmake is unhappy if compiler can't link to stdlib + local nolib_flags=( -nodefaultlibs -lc ) + if ! test_compiler; then + if test_compiler "${nolib_flags[@]}"; then + local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" + ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}" + fi + fi + + local libdir=$(get_libdir) + local mycmakeargs=( + -DCMAKE_CXX_COMPILER_TARGET="${CHOST}" + -DPython3_EXECUTABLE="${PYTHON}" + -DLLVM_ENABLE_RUNTIMES=libcxx + -DLLVM_INCLUDE_TESTS=OFF + -DLLVM_LIBDIR_SUFFIX=${libdir#lib} + + -DLIBCXX_ENABLE_SHARED=ON + -DLIBCXX_ENABLE_STATIC=$(usex static-libs) + -DLIBCXX_CXX_ABI=${cxxabi} + -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs} + # we're using our own mechanism for generating linker scripts + -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF + -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) + -DLIBCXX_INCLUDE_BENCHMARKS=OFF + -DLIBCXX_INCLUDE_TESTS=$(usex test) + -DLIBCXX_INSTALL_MODULES=ON + -DLIBCXX_USE_COMPILER_RT=${use_compiler_rt} + # this is broken with standalone builds, and also meaningless + -DLIBCXXABI_USE_LLVM_UNWINDER=OFF + ) + + if use test; then + mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags)" + -DPython3_EXECUTABLE="${PYTHON}" + ) + fi + cmake_src_configure +} + +multilib_src_compile() { + cmake_src_compile + if [[ ${CHOST} != *-darwin* ]] ; then + gen_shared_ldscript + use static-libs && gen_static_ldscript + fi +} + +multilib_src_test() { + local -x LIT_PRESERVES_TMP=1 + cmake_build check-cxx +} + +multilib_src_install() { + cmake_src_install + # since we've replaced libc++.{a,so} with ldscripts, now we have to + # install the extra symlinks + if [[ ${CHOST} != *-darwin* ]] ; then + dolib.so lib/libc++_shared.so + use static-libs && dolib.a lib/libc++_static.a + fi +} + +# Usage: deps +gen_ldscript() { + local output_format + output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p') + [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )" + + cat <<-END_LDSCRIPT +/* GNU ld script + Include missing dependencies +*/ +${output_format} +GROUP ( $@ ) +END_LDSCRIPT +} + +gen_static_ldscript() { + # Move it first. + mv lib/libc++{,_static}.a || die + # Generate libc++.a ldscript for inclusion of its dependencies so that + # clang++ -stdlib=libc++ -static works out of the box. + local deps=( + libc++_static.a + $(usex libcxxabi libc++abi.a libsupc++.a) + ) + # On Linux/glibc it does not link without libpthread or libdl. It is + # fine on FreeBSD. + use elibc_glibc && deps+=( libpthread.a libdl.a ) + + gen_ldscript "${deps[*]}" > lib/libc++.a || die +} + +gen_shared_ldscript() { + # Move it first. + mv lib/libc++{,_shared}.so || die + local deps=( + libc++_shared.so + # libsupc++ doesn't have a shared version + $(usex libcxxabi libc++abi.so libsupc++.a) + ) + + gen_ldscript "${deps[*]}" > lib/libc++.so || die +} diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest index da671e73c02c..05cedfc4345b 100644 --- a/sys-libs/libcxxabi/Manifest +++ b/sys-libs/libcxxabi/Manifest @@ -8,6 +8,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-libs/libcxxabi/libcxxabi-19.1.0.ebuild b/sys-libs/libcxxabi/libcxxabi-19.1.0.ebuild new file mode 100644 index 000000000000..c129f18b4672 --- /dev/null +++ b/sys-libs/libcxxabi/libcxxabi-19.1.0.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake-multilib flag-o-matic llvm.org llvm-utils python-any-r1 +inherit toolchain-funcs + +DESCRIPTION="Low level support for a standard C++ library" +HOMEPAGE="https://libcxxabi.llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="+clang +static-libs test" +REQUIRED_USE="test? ( clang )" +RESTRICT="!test? ( test )" + +# in 15.x, cxxabi.h is moving from libcxx to libcxxabi +RDEPEND+=" + !<sys-libs/libcxx-15 +" +DEPEND=" + ${RDEPEND} + sys-devel/llvm:${LLVM_MAJOR} +" +BDEPEND=" + clang? ( + sys-devel/clang:${LLVM_MAJOR} + ) + !test? ( + ${PYTHON_DEPS} + ) + test? ( + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + ) +" + +LLVM_COMPONENTS=( runtimes libcxx{abi,} llvm/cmake cmake ) +LLVM_TEST_COMPONENTS=( llvm/utils/llvm-lit ) +llvm.org_set_globals + +python_check_deps() { + use test || return 0 + python_has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +multilib_src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + if use clang; then + local -x CC=${CHOST}-clang + local -x CXX=${CHOST}-clang++ + strip-unsupported-flags + fi + + # link to compiler-rt + local use_compiler_rt=OFF + [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON + + local libdir=$(get_libdir) + local mycmakeargs=( + -DCMAKE_CXX_COMPILER_TARGET="${CHOST}" + -DPython3_EXECUTABLE="${PYTHON}" + -DLLVM_ENABLE_RUNTIMES="libcxxabi;libcxx" + -DLLVM_INCLUDE_TESTS=OFF + -DLLVM_LIBDIR_SUFFIX=${libdir#lib} + -DLIBCXXABI_ENABLE_SHARED=ON + -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs) + -DLIBCXXABI_INCLUDE_TESTS=$(usex test) + -DLIBCXXABI_USE_COMPILER_RT=${use_compiler_rt} + + # upstream is omitting standard search path for this + # probably because gcc & clang are bundling their own unwind.h + -DLIBCXXABI_LIBUNWIND_INCLUDES="${EPREFIX}"/usr/include + # this is broken with standalone builds, and also meaningless + -DLIBCXXABI_USE_LLVM_UNWINDER=OFF + + -DLIBCXX_LIBDIR_SUFFIX= + -DLIBCXX_ENABLE_SHARED=ON + -DLIBCXX_ENABLE_STATIC=OFF + -DLIBCXX_CXX_ABI=libcxxabi + -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF + -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) + -DLIBCXX_HAS_GCC_S_LIB=OFF + -DLIBCXX_INCLUDE_BENCHMARKS=OFF + -DLIBCXX_INCLUDE_TESTS=OFF + ) + if use test; then + mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags)" + -DPython3_EXECUTABLE="${PYTHON}" + ) + fi + cmake_src_configure +} + +multilib_src_compile() { + cmake_build cxxabi +} + +multilib_src_test() { + local -x LIT_PRESERVES_TMP=1 + cmake_build check-cxxabi +} + +multilib_src_install() { + DESTDIR="${D}" cmake_build install-cxxabi +} diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest index b02c9b494dd5..41bd29a7efd2 100644 --- a/sys-libs/libomp/Manifest +++ b/sys-libs/libomp/Manifest @@ -9,6 +9,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-libs/libomp/libomp-19.1.0.ebuild b/sys-libs/libomp/libomp-19.1.0.ebuild new file mode 100644 index 000000000000..64ab38e3e987 --- /dev/null +++ b/sys-libs/libomp/libomp-19.1.0.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit flag-o-matic cmake-multilib linux-info llvm.org python-single-r1 + +DESCRIPTION="OpenMP runtime library for LLVM/clang compiler" +HOMEPAGE="https://openmp.llvm.org" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0/${LLVM_SOABI}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" +IUSE="debug gdb-plugin hwloc ompt test" +REQUIRED_USE=" + gdb-plugin? ( ${PYTHON_REQUIRED_USE} ) +" +RESTRICT="!test? ( test )" + +RDEPEND=" + gdb-plugin? ( ${PYTHON_DEPS} ) + hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] ) +" +# tests: +# - dev-python/lit provides the test runner +# - sys-devel/llvm provide test utils (e.g. FileCheck) +# - sys-devel/clang provides the compiler to run tests +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + dev-lang/perl + test? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/lit[${PYTHON_USEDEP}] + ') + sys-devel/clang + ) +" + +LLVM_COMPONENTS=( openmp cmake llvm/include ) +llvm.org_set_globals + +pkg_setup() { + if use gdb-plugin || use test; then + python-single-r1_pkg_setup + fi +} + +multilib_src_configure() { + # LTO causes issues in other packages building, #870127 + filter-lto + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + + local libdir="$(get_libdir)" + local mycmakeargs=( + -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}" + + -DLIBOMP_USE_HWLOC=$(usex hwloc) + -DLIBOMP_OMPD_GDB_SUPPORT=$(multilib_native_usex gdb-plugin) + -DLIBOMP_OMPT_SUPPORT=$(usex ompt) + + # do not install libgomp.so & libiomp5.so aliases + -DLIBOMP_INSTALL_ALIASES=OFF + # disable unnecessary hack copying stuff back to srcdir + -DLIBOMP_COPY_EXPORTS=OFF + ) + + use test && mycmakeargs+=( + # this project does not use standard LLVM cmake macros + -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit" + -DOPENMP_LIT_ARGS="$(get_lit_flags)" + + -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")" + -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")" + ) + cmake_src_configure +} + +multilib_src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + + cmake_build check-libomp +} diff --git a/sys-libs/libstatgrab/Manifest b/sys-libs/libstatgrab/Manifest index 5b68a24ad6cf..39ef01fe9d7f 100644 --- a/sys-libs/libstatgrab/Manifest +++ b/sys-libs/libstatgrab/Manifest @@ -1,2 +1 @@ DIST libstatgrab-0.92.1.tar.gz 817531 BLAKE2B 5315772da07a9229f7f5d85dc7563333892e2a7293d7b331bd65edbebc08841103e6cf695d8faf25b83135545dda767bfc358517afa866981657dc8205d319be SHA512 e1f14df8abbb044d02b0ecebc23fbe9effaa0bac6738686e661de015564df5a4d872edef6d07fd150db25764b449d47ef54beecbe12c51987a679b07edc53c97 -DIST libstatgrab-0.92.tar.gz 815262 BLAKE2B d8ca538f01d9e0b1d5c459c9c0da6df5b6806e02649d726c3ee8a2f69233a7183df6dda95980a8e6f8b438478ec28f4baa9d623d5372e5e3e28ea4909e905872 SHA512 a99c6be56d930779d0d8f6f81e64e2f31e19423009c39e925b39116a42aa2c6037651992ac2168c43a5c6ecadf3e4a58486ab6148cf96118c429b04fdcf65192 diff --git a/sys-libs/libstatgrab/libstatgrab-0.92.1.ebuild b/sys-libs/libstatgrab/libstatgrab-0.92.1.ebuild index a95f40de80dc..ccff04645e8b 100644 --- a/sys-libs/libstatgrab/libstatgrab-0.92.1.ebuild +++ b/sys-libs/libstatgrab/libstatgrab-0.92.1.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DESCRIPTION="A tool to provide access to statistics about the system on which it's run" -HOMEPAGE="https://www.i-scream.org/libstatgrab/" +HOMEPAGE="https://libstatgrab.org/" SRC_URI="https://www.mirrorservice.org/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/${P}.tar.gz" LICENSE="|| ( GPL-2 LGPL-2.1 )" diff --git a/sys-libs/libstatgrab/libstatgrab-0.92.ebuild b/sys-libs/libstatgrab/libstatgrab-0.92.ebuild deleted file mode 100644 index 81a63a9af307..000000000000 --- a/sys-libs/libstatgrab/libstatgrab-0.92.ebuild +++ /dev/null @@ -1,43 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -DESCRIPTION="A tool to provide access to statistics about the system on which it's run" -HOMEPAGE="https://www.i-scream.org/libstatgrab/" -SRC_URI="https://www.mirrorservice.org/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/${P}.tar.gz" - -LICENSE="|| ( GPL-2 LGPL-2.1 )" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~loong ppc ~riscv x86" -IUSE="examples test" -RESTRICT="!test? ( test )" - -RDEPEND="sys-libs/ncurses:=" -DEPEND="${RDEPEND}" - -DOCS=( ChangeLog PLATFORMS NEWS AUTHORS README ) - -src_configure() { - local myeconfargs=( - --disable-setgid-binaries - --disable-setuid-binaries - --with-ncurses - --disable-static - $(use_enable test tests) - ) - - econf "${myeconfargs[@]}" -} - -src_install() { - default - - if use examples; then - docompress -x /usr/share/doc/${PF}/examples - docinto examples - dodoc -r examples/* - fi - - find "${ED}" -name '*.la' -delete || die -} diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest index da671e73c02c..05cedfc4345b 100644 --- a/sys-libs/llvm-libunwind/Manifest +++ b/sys-libs/llvm-libunwind/Manifest @@ -8,6 +8,8 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b DIST llvm-project-19.1.0-rc4.src.tar.xz 141255904 BLAKE2B c693dc94aeb4b59ad4a05a426037075449535c398cbc1ae9b4371d42ea0962b267a3be8af93f4fe47b21c11964fbea6e8eb662225e6f79b20bbc35e706588435 SHA512 826978a596b26040124f2ceba858f91031f78faca22f32de2eea1a4d299a849dcb1fffdfb01601adc39d733dd0cdee43b21af05159d45dcebc842f6b6b540ba8 DIST llvm-project-19.1.0-rc4.src.tar.xz.sig 438 BLAKE2B aef02737285d2faa1b21cec1a32fff6e776ac4bb5c4fd6f26d3d1a9b9244ed1fc0a1eb786a444a6549dda8683485f67964b4d4e48393e1780e7938ee0d94348a SHA512 5b9dcbf232229fdd87824bc87d0ad4ebd54127c9288708fb3304166422d378b77a843d7c5d8258850a0de59310c24e65042d636a5314e2af8513627a43bdb6e8 +DIST llvm-project-19.1.0.src.tar.xz 141244872 BLAKE2B 972d028599006d528acdb0ff107b30af8bef247a0f174991646d07f0a47e7d237a5a1700ae668a9f4496295535d688eeeebe550669e78b0775aaab044f5b268e SHA512 396b34886f8442eeb5bc23152e8c2577e834d88f1d21a67829f9ca651b77c5ceb32df4e70c34dc1e6fea24abe45fa00f08502628de25fdbf32864f5b9066d23d +DIST llvm-project-19.1.0.src.tar.xz.sig 438 BLAKE2B b044fcc6f331e75f9340e390ef8a95242a7f74e7c9835e67161fc4dd0ba0a8a5400e8ec4efd0fe50d2a9a9d950d0b37d5c0725868f450619b161a36ebded6a67 SHA512 d596d4942750818f489f114ff953a2b27e220abcf132d4d4ce0d910b73dfc283262507fc35cc0b61363c4af22cb9112dd7a662a89ea4b9667827fa1bde6785ed DIST llvm-project-41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f.tar.gz 218633363 BLAKE2B 9367923a4257e0ce01cf443eca790a567c6d9224126ebff15849c829f04dbac39aee60de1f28eab71ee4143341105c46466e1983e0f2a1a478e75fd5363a8d02 SHA512 eca094df135f184e2c3a42a3984ac353b7a8286446da80f042aef8047761f5f5cc6eeccb9bff6056ff0ddd1babe31a468e279b028b9618364f88ae9f26053c22 DIST llvm-project-5500e21942f7047344b6fee62d3e08c0ba2f9182.tar.gz 219148250 BLAKE2B 61880a13086c46ac9a9f8326b1e007146afb1662a0a223703fe36a91da230d5708b368f1177e76ac13c1e5a30f620c4ce6346484a0a67a0f011a816bba4d13f9 SHA512 a6d4fcae960b450be2abd2da485cea638b73290b17ceeabf560651d614f55925f86ee6f76a116262d8a1ff70ba699468cb4cf4c32015e26540ba6e47c58db1b7 DIST llvm-project-bece0d7517bd0a036dc8a319514e4a8a5c497dee.tar.gz 218241938 BLAKE2B 7ac08a21ab2899823683dc700bd2f6226e22653f5be553fe0278868f9fa0d8946fabe6aae40f68cfd14e019b1a3795affb64bf41ebcc949394b73a90e7cd019c SHA512 8893512dcbc1171d2c91aeb0aa9e5fd424474c4d6b5215fb1a078dc8757ab2d404b55ed90709e09368e0794c8306f489be8339d5c502dd6c2ef1852e24636e85 diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-19.1.0.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-19.1.0.ebuild new file mode 100644 index 000000000000..45b7c96819be --- /dev/null +++ b/sys-libs/llvm-libunwind/llvm-libunwind-19.1.0.ebuild @@ -0,0 +1,129 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake-multilib flag-o-matic llvm.org llvm-utils python-any-r1 +inherit toolchain-funcs + +DESCRIPTION="C++ runtime stack unwinder from LLVM" +HOMEPAGE="https://llvm.org/docs/ExceptionHandling.html" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="+clang debug static-libs test" +REQUIRED_USE="test? ( clang )" +RESTRICT="!test? ( test )" + +RDEPEND=" + !sys-libs/libunwind +" +DEPEND=" + sys-devel/llvm:${LLVM_MAJOR} +" +BDEPEND=" + clang? ( + sys-devel/clang:${LLVM_MAJOR} + ) + !test? ( + ${PYTHON_DEPS} + ) + test? ( + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + ) +" + +LLVM_COMPONENTS=( runtimes libunwind libcxx llvm/cmake cmake ) +LLVM_TEST_COMPONENTS=( libcxxabi llvm/utils/llvm-lit ) +llvm.org_set_globals + +python_check_deps() { + use test || return 0 + python_has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +multilib_src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + local libdir=$(get_libdir) + + # https://github.com/llvm/llvm-project/issues/56825 + # also separately bug #863917 + filter-lto + + if use clang; then + local -x CC=${CHOST}-clang + local -x CXX=${CHOST}-clang++ + strip-unsupported-flags + fi + + # link to compiler-rt + # https://github.com/gentoo/gentoo/pull/21516 + local use_compiler_rt=OFF + [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON + + # Respect upstream build type assumptions (bug #910436) where they do: + # -DLIBUNWIND_ENABLE_ASSERTIONS=ON => + # -DCMAKE_BUILD_TYPE=DEBUG => -UNDEBUG + # -DCMAKE_BUILD_TYPE!=debug => -DNDEBUG + # -DLIBUNWIND_ENABLE_ASSERTIONS=OFF => + # -UNDEBUG + # See also https://github.com/llvm/llvm-project/issues/86#issuecomment-1649668826. + use debug || append-cppflags -DNDEBUG + + local mycmakeargs=( + -DCMAKE_CXX_COMPILER_TARGET="${CHOST}" + -DPython3_EXECUTABLE="${PYTHON}" + -DLLVM_ENABLE_RUNTIMES="libunwind" + -DLLVM_LIBDIR_SUFFIX=${libdir#lib} + -DLLVM_INCLUDE_TESTS=OFF + -DLIBUNWIND_ENABLE_ASSERTIONS=$(usex debug) + -DLIBUNWIND_ENABLE_STATIC=$(usex static-libs) + -DLIBUNWIND_INCLUDE_TESTS=$(usex test) + -DLIBUNWIND_INSTALL_HEADERS=ON + + # support non-native unwinding; given it's small enough, + # enable it unconditionally + -DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON + + # avoid dependency on libgcc_s if compiler-rt is used + -DLIBUNWIND_USE_COMPILER_RT=${use_compiler_rt} + ) + if use test; then + mycmakeargs+=( + -DLLVM_ENABLE_RUNTIMES="libunwind;libcxxabi;libcxx" + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags)" + -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}/libcxx" + + -DLIBCXXABI_LIBDIR_SUFFIX= + -DLIBCXXABI_ENABLE_SHARED=OFF + -DLIBCXXABI_ENABLE_STATIC=ON + -DLIBCXXABI_USE_LLVM_UNWINDER=ON + -DLIBCXXABI_INCLUDE_TESTS=OFF + + -DLIBCXX_LIBDIR_SUFFIX= + -DLIBCXX_ENABLE_SHARED=OFF + -DLIBCXX_ENABLE_STATIC=ON + -DLIBCXX_CXX_ABI=libcxxabi + -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF + -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) + -DLIBCXX_HAS_GCC_S_LIB=OFF + -DLIBCXX_INCLUDE_TESTS=OFF + -DLIBCXX_INCLUDE_BENCHMARKS=OFF + ) + fi + + cmake_src_configure +} + +multilib_src_test() { + local -x LIT_PRESERVES_TMP=1 + cmake_build check-unwind +} + +multilib_src_install() { + DESTDIR=${D} cmake_build install-unwind +} diff --git a/sys-power/sispmctl/Manifest b/sys-power/sispmctl/Manifest index 2111397e0793..c128cffa68be 100644 --- a/sys-power/sispmctl/Manifest +++ b/sys-power/sispmctl/Manifest @@ -1,2 +1 @@ -DIST sispmctl-4.1.tar.gz 429477 BLAKE2B fe9231a5a0b22456d81166ae5dbaf98c86a636e79ff09112438c769daa503996128d31609bd90f66a5414459c9fce66956b1ee001ac3d57f8f472a09b34aee20 SHA512 52cf6e7d4df76c1d28d196a81a06dec59047f2d43571bc72ff08a22359c3e5d7a36fd446118036fe35f9c26e59a07563ac15d9e05285e7b09214b68aab5ef488 DIST sispmctl-4.12.tar.gz 462829 BLAKE2B dccf61386ad337739825c7f885bef0cbf76868f938a2a7e0ea9853c0bd5591a289d82876f800f2839e6cd9be7040dec2c650ea347e446e15ba43f1169c05cd36 SHA512 945dd7a14f1d6c60cf6f9855782608187c94edce2c3acb9c1dabf92022632051bdf659c49d1d82fd8d38283d710a6847ac985e2efca9a157425fdc55545d5a1a diff --git a/sys-power/sispmctl/sispmctl-4.1-r1.ebuild b/sys-power/sispmctl/sispmctl-4.1-r1.ebuild deleted file mode 100644 index 122669b2ed7b..000000000000 --- a/sys-power/sispmctl/sispmctl-4.1-r1.ebuild +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit systemd udev - -DESCRIPTION="GEMBIRD SiS-PM control utility" -HOMEPAGE="http://sispmctl.sourceforge.net/" -SRC_URI="https://downloads.sourceforge.net/sispmctl/${P}.tar.gz" - -LICENSE="GPL-2+" -SLOT="0" -KEYWORDS="~amd64 ~arm ~x86" -IUSE="static-libs" - -DEPEND=" - virtual/libusb:0 -" -RDEPEND=" - ${DEPEND} - acct-group/sispmctl -" - -DOCS="AUTHORS README ChangeLog" - -src_configure() { - local myeconfargs=( - $(use_enable static-libs static) - --enable-webless - ) - - econf "${myeconfargs[@]}" -} - -src_install() { - default - - find "${ED}" -name '*.la' -delete || die - - ## install udev rules which make the device files writable - ## by the members of the group sispmctl - udev_dorules examples/60-sispmctl.rules - - systemd_dounit examples/${PN}.service - - einfo "Add users who may run ${PN} to the group '${PN}'" -} diff --git a/sys-power/sispmctl/sispmctl-4.12.ebuild b/sys-power/sispmctl/sispmctl-4.12.ebuild index 800da41c65b6..4fa92e68e8c6 100644 --- a/sys-power/sispmctl/sispmctl-4.12.ebuild +++ b/sys-power/sispmctl/sispmctl-4.12.ebuild @@ -6,7 +6,7 @@ EAPI=8 inherit systemd udev DESCRIPTION="GEMBIRD SiS-PM control utility" -HOMEPAGE="http://sispmctl.sourceforge.net/" +HOMEPAGE="https://sispmctl.sourceforge.net/" SRC_URI="https://downloads.sourceforge.net/sispmctl/${P}.tar.gz" LICENSE="GPL-2+" diff --git a/sys-process/supervise-scripts/supervise-scripts-4.0-r1.ebuild b/sys-process/supervise-scripts/supervise-scripts-4.0-r1.ebuild deleted file mode 100644 index 6f566c19862b..000000000000 --- a/sys-process/supervise-scripts/supervise-scripts-4.0-r1.ebuild +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -DESCRIPTION="Starting and stopping daemontools managed services" -HOMEPAGE="http://untroubled.org/supervise-scripts/" -SRC_URI="http://untroubled.org/supervise-scripts/archive/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 ppc sparc x86" -IUSE="doc" - -RDEPEND="virtual/daemontools" -DEPEND="${RDEPEND}" - -src_prepare() { - echo "/usr/bin" > conf-bin - echo "/usr/share/man" > conf-man - default -} - -src_install() { - emake PREFIX="${D}" install - use doc && dodoc *.html -} diff --git a/virtual/dist-kernel/dist-kernel-6.1.111.ebuild b/virtual/dist-kernel/dist-kernel-6.1.111.ebuild new file mode 100644 index 000000000000..15b55453deca --- /dev/null +++ b/virtual/dist-kernel/dist-kernel-6.1.111.ebuild @@ -0,0 +1,16 @@ +# Copyright 2021-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Virtual to depend on any Distribution Kernel" +SLOT="0/${PVR}" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" + +RDEPEND=" + || ( + ~sys-kernel/gentoo-kernel-${PV} + ~sys-kernel/gentoo-kernel-bin-${PV} + ~sys-kernel/vanilla-kernel-${PV} + ) +" diff --git a/virtual/dist-kernel/dist-kernel-6.10.11.ebuild b/virtual/dist-kernel/dist-kernel-6.10.11.ebuild new file mode 100644 index 000000000000..9969a23652bd --- /dev/null +++ b/virtual/dist-kernel/dist-kernel-6.10.11.ebuild @@ -0,0 +1,16 @@ +# Copyright 2021-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Virtual to depend on any Distribution Kernel" +SLOT="0/${PVR}" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" + +RDEPEND=" + || ( + ~sys-kernel/gentoo-kernel-${PV} + ~sys-kernel/gentoo-kernel-bin-${PV} + ~sys-kernel/vanilla-kernel-${PV} + ) +" diff --git a/virtual/dist-kernel/dist-kernel-6.6.52.ebuild b/virtual/dist-kernel/dist-kernel-6.6.52.ebuild new file mode 100644 index 000000000000..9969a23652bd --- /dev/null +++ b/virtual/dist-kernel/dist-kernel-6.6.52.ebuild @@ -0,0 +1,16 @@ +# Copyright 2021-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Virtual to depend on any Distribution Kernel" +SLOT="0/${PVR}" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" + +RDEPEND=" + || ( + ~sys-kernel/gentoo-kernel-${PV} + ~sys-kernel/gentoo-kernel-bin-${PV} + ~sys-kernel/vanilla-kernel-${PV} + ) +" diff --git a/virtual/jdk/jdk-23.ebuild b/virtual/jdk/jdk-23.ebuild new file mode 100644 index 000000000000..5a23aeed9722 --- /dev/null +++ b/virtual/jdk/jdk-23.ebuild @@ -0,0 +1,14 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Virtual for Java Development Kit (JDK)" +SLOT="${PV}" +# KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" +IUSE="headless-awt" + +RDEPEND="|| ( + dev-java/openjdk-bin:${SLOT}[gentoo-vm(+),headless-awt=] + dev-java/openjdk:${SLOT}[gentoo-vm(+),headless-awt=] +)" diff --git a/virtual/jre/jre-23.ebuild b/virtual/jre/jre-23.ebuild new file mode 100644 index 000000000000..3e5caf55150c --- /dev/null +++ b/virtual/jre/jre-23.ebuild @@ -0,0 +1,10 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Virtual for Java Runtime Environment (JRE)" +SLOT="${PV}" +# KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +RDEPEND="virtual/jdk:${SLOT}" diff --git a/virtual/rust/rust-1.81.0.ebuild b/virtual/rust/rust-1.81.0-r1.ebuild index 57e3cc3e6519..6f50c94d3e77 100644 --- a/virtual/rust/rust-1.81.0.ebuild +++ b/virtual/rust/rust-1.81.0-r1.ebuild @@ -15,6 +15,6 @@ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="rustfmt profiler" RDEPEND="|| ( - ~dev-lang/rust-bin-${PV}[profiler?,rustfmt?,${MULTILIB_USEDEP}] + ~dev-lang/rust-bin-${PV}[rustfmt?,${MULTILIB_USEDEP}] ~dev-lang/rust-${PV}[profiler?,rustfmt?,${MULTILIB_USEDEP}] )" diff --git a/www-apache/mod_wsgi/Manifest b/www-apache/mod_wsgi/Manifest index b31f959fed6f..031d9969a0d2 100644 --- a/www-apache/mod_wsgi/Manifest +++ b/www-apache/mod_wsgi/Manifest @@ -1,3 +1 @@ -DIST mod_wsgi-4.9.0.tar.gz 699891 BLAKE2B 7ee6ffc28e86baf8ee92973479a26964f7c183c2b113b49a48af02c622f8d8f698abffcd4f522a1ecca5b89325f94856cbe89db5a81d2ac2e87438ee90be97b0 SHA512 9dc34d431171321094a9713444895d9754eff4e69ad1e86c8d3cd77bc1ca0a4c10b697e7f8cf14902d6bfaf205c8842e62fa944bb38f66f1c54fd36af95a09d6 -DIST mod_wsgi-4.9.4.gh.tar.gz 706904 BLAKE2B 6473ee5be4f21d7d5806028b22d582e9d2b6f2a28bb0ed2b03a3da799858bdb4ebcfc85eb7850e91ff041d0c0a6cf2a898bffbbe884faa891c4f1f115d043517 SHA512 0898221d95f0ce374cbd34a1849a6e6b5bd7850644d5fe36f558dcc58095cd535c854cb06798482d312485b8d89b8641d91fa26af3d208e10a6073b885af3199 DIST mod_wsgi-5.0.0.gh.tar.gz 707590 BLAKE2B 14dd43849c0f9d1e67eece9a87acc3573cbb38f8d6338551b22ba33ebd8b6f6e1371e97c7c5d3f1b15cb10e2ae9990eff7f4c6af62fb9236bcc78b35aad4a8db SHA512 3ecc3ad2fd05164929915541be61201db8d35d1e27183ce26c67583b836bb404bd10c88a2ada94714a14140a7f885eb67256cf02bf47aa0dbd81aecd0894a984 diff --git a/www-apache/mod_wsgi/mod_wsgi-4.9.0.ebuild b/www-apache/mod_wsgi/mod_wsgi-4.9.0.ebuild deleted file mode 100644 index 8f92a32cf465..000000000000 --- a/www-apache/mod_wsgi/mod_wsgi-4.9.0.ebuild +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{9..10} ) -PYTHON_REQ_USE="threads(+)" - -inherit apache-module python-single-r1 - -DESCRIPTION="An Apache2 module for running Python WSGI applications" -HOMEPAGE="https://github.com/GrahamDumpleton/mod_wsgi" -SRC_URI="https://github.com/GrahamDumpleton/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ppc ~ppc64 x86" - -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -DEPEND="" -RDEPEND="${PYTHON_DEPS}" - -APACHE2_MOD_CONF="70_${PN}" -APACHE2_MOD_DEFINE="WSGI" -APACHE2_MOD_FILE="${S}/src/server/.libs/${PN}.so" - -DOCFILES="README.rst" - -need_apache2 - -pkg_setup() { - python-single-r1_pkg_setup - - # Calling depend.apache_pkg_setup fails because we do not have - # "apache2" in IUSE but the function expects this in order to call - # _init_apache2_late which sets the APACHE_MODULESDIR variable. - _init_apache2 - _init_apache2_late -} - -src_configure() { - econf --with-apxs="${APXS}" --with-python="${PYTHON}" -} - -src_compile() { - default -} diff --git a/www-apache/mod_wsgi/mod_wsgi-4.9.4-r1.ebuild b/www-apache/mod_wsgi/mod_wsgi-4.9.4-r1.ebuild deleted file mode 100644 index b6f56dd96b64..000000000000 --- a/www-apache/mod_wsgi/mod_wsgi-4.9.4-r1.ebuild +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{9..11} ) -PYTHON_REQ_USE="threads(+)" - -inherit apache-module python-single-r1 - -DESCRIPTION="An Apache2 module for running Python WSGI applications" -HOMEPAGE="https://github.com/GrahamDumpleton/mod_wsgi" -SRC_URI="https://github.com/GrahamDumpleton/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ppc ~ppc64 x86" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -RDEPEND="${PYTHON_DEPS}" - -APACHE2_MOD_CONF="70_${PN}" -APACHE2_MOD_DEFINE="WSGI" -APACHE2_MOD_FILE="${S}/src/server/.libs/${PN}.so" - -DOCFILES="README.rst" - -need_apache2 - -pkg_setup() { - python-single-r1_pkg_setup - - # Calling depend.apache_pkg_setup fails because we do not have - # "apache2" in IUSE but the function expects this in order to call - # _init_apache2_late which sets the APACHE_MODULESDIR variable. - _init_apache2 - _init_apache2_late -} - -src_configure() { - econf --with-apxs="${APXS}" --with-python="${PYTHON}" -} - -src_compile() { - default -} diff --git a/www-apps/chromedriver-bin/Manifest b/www-apps/chromedriver-bin/Manifest index 8e5320ed0eed..6bdf2adab6a4 100644 --- a/www-apps/chromedriver-bin/Manifest +++ b/www-apps/chromedriver-bin/Manifest @@ -1 +1 @@ -DIST chromedriver-bin-128.0.6613.137.linux64.zip 9370775 BLAKE2B 6eb29297cc954ea4485544d45fc29f130df20c3b425ca28f8b350982ada558ca91d03338e2e9acbb2c26bd87b8918caf098ef0ce3bc6c8ba57c60465028cd81a SHA512 d5216d45a618f263c67177831db389375bfa37ab9b701486365f4f8e93a0b4e79e3597fe0fb06897831701036777fa7339b4afe8acfc49362212d51fe5da2471 +DIST chromedriver-bin-129.0.6668.58.linux64.zip 9410841 BLAKE2B 4f75eebff2080b74f64c65787f8d939616a8db7a5100759b0d462f506ed7a361804888553527891ce5bcdd230bf49430c00f6cdddff261c7156471e621e070bc SHA512 017e817676ca179be99e2c3e42509156a0138999cb0a2623790106e562a621c4bd1e922e804dd4285efe35dab662455f3b4bfe0f3315ca53ab4b8b077bc92c1e diff --git a/www-apps/chromedriver-bin/chromedriver-bin-128.0.6613.137.ebuild b/www-apps/chromedriver-bin/chromedriver-bin-129.0.6668.58.ebuild index ff9ba50fc766..ff9ba50fc766 100644 --- a/www-apps/chromedriver-bin/chromedriver-bin-128.0.6613.137.ebuild +++ b/www-apps/chromedriver-bin/chromedriver-bin-129.0.6668.58.ebuild diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest index 07395c83a1c7..173af50ca482 100644 --- a/www-client/chromium/Manifest +++ b/www-client/chromium/Manifest @@ -1,11 +1,10 @@ DIST chromium-128-clang.tar.xz 51489372 BLAKE2B 352a585e3acf0f0685ab2eaeb13e847195119bc6e3694f7fc20eeabdb25821019187e52997618214ccb469766c2982f489c6bdc643a339c1cfbe3e5fb3a131d4 SHA512 bc448096975111ff6ff5a9f82a6acb2bb244e9c344a8e6ef8bcdee5a06d0004955f76f6566f01519da5cc2eae08a2df2dd0ac5afee38dbc2ba918e735f338422 DIST chromium-128-rust.tar.xz 148907072 BLAKE2B 9b28d1eca65d3e62ef142f96d9b3371bb65c6778414e5b64f0ad02c4aace219974f1cb292c9a6d9c443e3ed4f61192248ccaf9b18079cbd5a5f5c3abfe79d485 SHA512 5469490b23656a83d6198a087ddb82dd342fd8a426b32193218f7174395053f2ec7aaced5c464b8b16cdbddc252f80a98ca2a4b88742d2b0c910f2d2bfa7e431 DIST chromium-128.0.6613.113.tar.xz 6711639096 BLAKE2B 1719b97aa30584b1d997d5fa894d23ec5b8063f9fdb53b9a7cd760896634a71a9c547e6a65d1db3c5e6308233c39dcf09db3a78d52ef960313c2c7b4381e6a46 SHA512 57ecf8d5d741a9a3ba9bb1ffd1e75ee83c14a0c552657063fca9bd4e5eec82b5ccafe81e1cea26cbb29992ce418bdcce11794e7ba3f7a860648df270cb2cd2cf -DIST chromium-128.0.6613.119.tar.xz 6718742128 BLAKE2B b47eb124c249bae074883cdf1e98eaddd2aae1b5575960fea68632bd4684a1a28f59b41894935b02609f75de60f44b61d418ee0065bf005272a066133dca2946 SHA512 a3a1411b21885ce0c29574355d52a1bfad84299fdc99daf191d70f911f191d482f0e4a3d181faa1a1a7b031727f482fd3d95b6d9e1280167c0610f731356d11f DIST chromium-128.0.6613.137.tar.xz 6724182764 BLAKE2B 9f4d77b058af1619a4a13beac31ea463bd3d02086c172fb074d510b3f1dcba284fb1fa9ac5883ade2c2855f851a22bcbd4503960b4a27bc5844f16ad81558aba SHA512 3be85d2270a70ce3779b57e5d011e45312c67607e9e7c7f7ef396c515e37fed767105dfe0cc1f76830b007cebc05662f5318750c656c8a9765a25fa62036df6e DIST chromium-129-clang.tar.xz 52250752 BLAKE2B c7223a1f4a9f52eb631b968ecaea528d19aa14ded23e03e530ad6c46e7e1579a7a010cb347489f1b963013b4f26358be94aeff0f98b5eceb7b1f1e49e8acdfd3 SHA512 43681d64d4480e3f69afd3021037af6910e9c64052edefdb72e99b0a85cd94c4a8eb4095188784d7fa7f52fae10a9bd9db53f2bb80e89f709f92af7ce6403976 DIST chromium-129-rust.tar.xz 152042272 BLAKE2B acde4dc9c0fe232d16f07f3e4b719ea762627e234970866e0de56ec3959c4cd0a7b1b09cf5ccecd50efd1cc35dcf224be3b398c1ea19a79731d6db13c94fa7a9 SHA512 bef8e56cf73de5cefd5fe0bb9836ef65012406ff3d364d36624d30e7b5cdb2634d17ac9e49a60ccb0ac5dd57cf4311b587c5ff0cec26b2fc6e15274abe0dc85b -DIST chromium-129.0.6668.42.tar.xz 6656071852 BLAKE2B abeb3785fb4b4994699378876e15912b77cadb223f85daa277a8be8019c50a7a9095c9e4af502c091b279876ed597872273be7e815977f4cc3e0d26149610d14 SHA512 483fe6ea1a9abfbccadabd8c198212f634cba2acebde2e099019a30036a5ecf60b319dcb51a455ae6d56c0e8eaee61f508142534bdf73e6149e4af493d74beca +DIST chromium-129.0.6668.58.tar.xz 6658438468 BLAKE2B 6d643eb8d1a22c86ac84460aabb934330f4f22164eed6219b19d373c83142b7c48ee125ed7290835b8f6ed763bb4b8a01d2c43b74ca125ed1a4ef963459d5f3d SHA512 7aa14484342ebbee9ec9ba7ef0ae8bb9c9431d9c9970df7a566c96292cbdee7033c8d182b2490933f9fa4c3ba76e58475c45133abaed4f2003997c15f0d2e351 DIST chromium-patches-128.tar.bz2 5087 BLAKE2B b0321fb45390a282afeeeb8fb4d6014d6e6b708e6851235e0897ac77d524160b4d33476aa70532df45d0ccf233fee3b4028cd4d845667dc6a2a46ecebfeb6752 SHA512 978908d27dc6fc620209486a9ad7f73babde8710728960f44f2680445276516e59a85c08656af2663d9e197df45874f24a1f19f14a21798fbcf7c5a10bb19371 DIST chromium-patches-129.tar.bz2 5071 BLAKE2B 080e1af8b0560a3c5365674e7c8d592310bbd2e273311b775b8112e410d91ccd48f170adbcf77cff566ad32de196217410663ac7b9e7e65544b6730fb1890aca SHA512 0a5bbc07dc9085b07332d5c6dd74940a9d55c4d0677f5603e75763ba54156f43664839d438f350bc86f3efc85aae452476e7f7040e06e60727847b156d1f0ab9 DIST chromium-ppc64le-gentoo-patches-1.tar.xz 5636 BLAKE2B 1d898939df023c59285b27bee552470483ea06375d1ee8d6947b89c5927c23cc7bfec6b49f3b376ece931d11a56f8e2a45791e0f92ad61974fc8c34c1082d89c SHA512 8a71cb007e47cda8e5fe5d185729389e65c48bd322c8ee8b3986bee8571427b959628f2666bda646a3f89ae64197c0957d3626845ff03461dbd5dee4c964d07c diff --git a/www-client/chromium/chromium-128.0.6613.119.ebuild b/www-client/chromium/chromium-128.0.6613.119.ebuild deleted file mode 100644 index 5bff9392446b..000000000000 --- a/www-client/chromium/chromium-128.0.6613.119.ebuild +++ /dev/null @@ -1,1452 +0,0 @@ -# Copyright 2009-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# PACKAGING NOTES - -# Google roll their bundled Clang every two weeks, and the bundled Rust -# is rolled regularly and depends on that. While we do our best to build -# with system Clang, we will eventually hit the point where we need to use -# the bundled Clang due to the use of prerelease features. We've been lucky -# enough so far that this hasn't been an issue. -# We use llvm-utils.eclass directly due to chromium's inherent Googliness. - -# GN is bundled with Chromium, but we always use the system version. Remember to -# check for upstream changes to GN and update ebuild (and version below) as required. - -# For binhost users, if USE=bindist is set, we configure Chromium in a way that it is able -# to use proprietary codecs, and so that ffmpeg is an external component (libffmpeg.so), -# then we remove ffmpeg from the image to ensure that the built package is distributable -# (i.e. we don't owe royalties). A suitable libffmpeg.so is symlinked in its place; -# as a result of this, ffmpeg[chromium] or ffmpeg-chromium must be installed on the system. - -# For non-binhost builds, we build the bundled ffmpeg and enable proprietary codecs because there's -# no reason not to. Todo: Re-enable USE=system-ffmpeg. - -GN_MIN_VER=0.2165 -RUST_MIN_VER=1.78.0 -# chromium-tools/get-chromium-toolchain-strings.sh -GOOGLE_CLANG_VER=llvmorg-19-init-14561-gecea8371-3000 -GOOGLE_RUST_VER=3cf924b934322fd7b514600a7dc84fc517515346-3 - -: ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN=no} - -VIRTUALX_REQUIRED="pgo" - -CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he - hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr - sv sw ta te th tr uk ur vi zh-CN zh-TW" - -# While prerelease llvm is actually used in the google build, until we have a -# sane way to select 'rust built with this llvm slot' that isn't stable and testing -# subslots we will have to restrict LLVM_COMPAT to stable and testing keywords. -LLVM_COMPAT=( {17..18} ) -PYTHON_COMPAT=( python3_{11..13} ) -PYTHON_REQ_USE="xml(+)" - -inherit check-reqs chromium-2 desktop flag-o-matic llvm-utils ninja-utils pax-utils -inherit python-any-r1 qmake-utils readme.gentoo-r1 systemd toolchain-funcs virtualx xdg-utils - -DESCRIPTION="Open-source version of Google Chrome web browser" -HOMEPAGE="https://www.chromium.org/" -PATCHSET_PPC64="128.0.6613.84-1raptor0~deb12u1" -PATCH_V="${PV%%\.*}" -SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz - system-toolchain? ( - https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2 - ) - !system-toolchain? ( - https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/clang-${GOOGLE_CLANG_VER}.tar.xz - -> chromium-${PV%%\.*}-clang.tar.xz - https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/rust-toolchain-${GOOGLE_RUST_VER}-${GOOGLE_CLANG_VER%?????}.tar.xz - -> chromium-${PV%%\.*}-rust.tar.xz - ) - ppc64? ( - https://quickbuild.io/~raptor-engineering-public/+archive/ubuntu/chromium/+files/chromium_${PATCHSET_PPC64}.debian.tar.xz - https://deps.gentoo.zip/chromium-ppc64le-gentoo-patches-1.tar.xz - ) - pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )" - -LICENSE="BSD" -SLOT="0/stable" -KEYWORDS="amd64 ~arm64 ~ppc64" -IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd" -IUSE="+X ${IUSE_SYSTEM_LIBS} bindist cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos +official pax-kernel pgo +proprietary-codecs pulseaudio" -IUSE+=" qt5 qt6 +screencast selinux +system-toolchain +vaapi +wayland +widevine" -RESTRICT="!bindist? ( bindist )" - -REQUIRED_USE=" - !headless? ( || ( X wayland ) ) - pgo? ( X !wayland ) - qt6? ( qt5 ) - screencast? ( wayland ) - ffmpeg-chromium? ( bindist proprietary-codecs ) -" - -COMMON_X_DEPEND=" - x11-libs/libXcomposite:= - x11-libs/libXcursor:= - x11-libs/libXdamage:= - x11-libs/libXfixes:= - >=x11-libs/libXi-1.6.0:= - x11-libs/libXrandr:= - x11-libs/libXrender:= - x11-libs/libXtst:= - x11-libs/libxshmfence:= -" - -COMMON_SNAPSHOT_DEPEND=" - system-icu? ( >=dev-libs/icu-73.0:= ) - >=dev-libs/libxml2-2.12.4:=[icu] - dev-libs/nspr:= - >=dev-libs/nss-3.26:= - dev-libs/libxslt:= - media-libs/fontconfig:= - >=media-libs/freetype-2.11.0-r1:= - system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] ) - media-libs/libjpeg-turbo:= - system-png? ( media-libs/libpng:=[-apng(-)] ) - system-zstd? ( >=app-arch/zstd-1.5.5:= ) - >=media-libs/libwebp-0.4.0:= - media-libs/mesa:=[gbm(+)] - >=media-libs/openh264-1.6.0:= - sys-libs/zlib:= - x11-libs/libdrm:= - !headless? ( - dev-libs/glib:2 - >=media-libs/alsa-lib-1.0.19:= - pulseaudio? ( media-libs/libpulse:= ) - sys-apps/pciutils:= - kerberos? ( virtual/krb5 ) - vaapi? ( >=media-libs/libva-2.7:=[X?,wayland?] ) - X? ( - x11-base/xorg-proto:= - x11-libs/libX11:= - x11-libs/libxcb:= - x11-libs/libXext:= - ) - x11-libs/libxkbcommon:= - wayland? ( - dev-libs/libffi:= - dev-libs/wayland:= - screencast? ( media-video/pipewire:= ) - ) - ) -" - -COMMON_DEPEND=" - ${COMMON_SNAPSHOT_DEPEND} - app-arch/bzip2:= - dev-libs/expat:= - net-misc/curl[ssl] - sys-apps/dbus:= - media-libs/flac:= - sys-libs/zlib:=[minizip] - !headless? ( - X? ( ${COMMON_X_DEPEND} ) - >=app-accessibility/at-spi2-core-2.46.0:2 - media-libs/mesa:=[X?,wayland?] - cups? ( >=net-print/cups-1.3.11:= ) - virtual/udev - x11-libs/cairo:= - x11-libs/gdk-pixbuf:2 - x11-libs/pango:= - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtwidgets:5 - ) - qt6? ( dev-qt/qtbase:6[gui,widgets] ) - ) -" -RDEPEND="${COMMON_DEPEND} - !headless? ( - || ( - x11-libs/gtk+:3[X?,wayland?] - gui-libs/gtk:4[X?,wayland?] - ) - qt5? ( dev-qt/qtgui:5[X?,wayland?] ) - qt6? ( dev-qt/qtbase:6[X?,wayland?] ) - ) - virtual/ttf-fonts - selinux? ( sec-policy/selinux-chromium ) - bindist? ( - !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] ) - ffmpeg-chromium? ( media-video/ffmpeg-chromium:${PV%%\.*} ) - ) -" -DEPEND="${COMMON_DEPEND} - !headless? ( - gtk4? ( gui-libs/gtk:4[X?,wayland?] ) - !gtk4? ( x11-libs/gtk+:3[X?,wayland?] ) - ) -" - -depend_clang_llvm_version() { - echo "sys-devel/clang:$1" - echo "sys-devel/llvm:$1" - echo "=sys-devel/lld-$1*" - echo "virtual/rust:0/llvm-${1}[profiler(-)]" - echo "pgo? ( sys-libs/compiler-rt-sanitizers:${1}[profile] )" -} - -# Parse LLVM_COMPAT and generate a usedep for each version -depend_clang_llvm_versions() { - if [[ ${#LLVM_COMPAT[@]} -eq 0 ]]; then - depend_clang_llvm_version ${#LLVM_COMPAT[0]} - else - echo "|| (" - for (( i=${#LLVM_COMPAT[@]}-1 ; i>=0 ; i-- )); do - echo "(" - depend_clang_llvm_version ${LLVM_COMPAT[i]} - echo ")" - done - echo ")" - fi -} - -BDEPEND=" - ${COMMON_SNAPSHOT_DEPEND} - ${PYTHON_DEPS} - $(python_gen_any_dep ' - dev-python/setuptools[${PYTHON_USEDEP}] - ') - >=app-arch/gzip-1.7 - !headless? ( - qt5? ( dev-qt/qtcore:5 ) - qt6? ( dev-qt/qtbase:6 ) - ) - system-toolchain? ( - $(depend_clang_llvm_versions) - pgo? ( - >=dev-python/selenium-3.141.0 - >=dev-util/web_page_replay_go-20220314 - ) - >=dev-util/bindgen-0.68.0 - ) - >=dev-build/gn-${GN_MIN_VER} - dev-build/ninja - dev-lang/perl - >=dev-util/gperf-3.0.3 - dev-vcs/git - >=net-libs/nodejs-7.6.0[inspector] - >=sys-devel/bison-2.4.3 - sys-devel/flex - virtual/pkgconfig -" - -if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then - EBUILD_DEATH_HOOKS+=" chromium_pkg_die"; -fi - -DISABLE_AUTOFORMATTING="yes" -DOC_CONTENTS=" -Some web pages may require additional fonts to display properly. -Try installing some of the following packages if some characters -are not displayed properly: -- media-fonts/arphicfonts -- media-fonts/droid -- media-fonts/ipamonafont -- media-fonts/noto -- media-fonts/ja-ipafonts -- media-fonts/takao-fonts -- media-fonts/wqy-microhei -- media-fonts/wqy-zenhei - -To fix broken icons on the Downloads page, you should install an icon -theme that covers the appropriate MIME types, and configure this as your -GTK+ icon theme. - -For native file dialogs in KDE, install kde-apps/kdialog. - -To make password storage work with your desktop environment you may -have install one of the supported credentials management applications: -- app-crypt/libsecret (GNOME) -- kde-frameworks/kwallet (KDE) -If you have one of above packages installed, but don't want to use -them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS -in /etc/chromium/default. -" - -python_check_deps() { - python_has_version "dev-python/setuptools[${PYTHON_USEDEP}]" -} - -pre_build_checks() { - # Check build requirements: bugs #471810, #541816, #914220 - # We're going to start doing maths here on the size of an unpacked source tarball, - # this should make updates easier as chromium continues to balloon in size. - local BASE_DISK=24 - local EXTRA_DISK=1 - local CHECKREQS_MEMORY="4G" - tc-is-cross-compiler && EXTRA_DISK=2 - if tc-is-lto || use pgo; then - CHECKREQS_MEMORY="9G" - tc-is-cross-compiler && EXTRA_DISK=4 - use pgo && EXTRA_DISK=8 - fi - if is-flagq '-g?(gdb)?([1-9])'; then - if use custom-cflags; then - EXTRA_DISK=13 - fi - CHECKREQS_MEMORY="16G" - fi - CHECKREQS_DISK_BUILD="$((BASE_DISK + EXTRA_DISK))G" - check-reqs_${EBUILD_PHASE_FUNC} -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - # The pre_build_checks are all about compilation resources, no need to run it for a binpkg - pre_build_checks - fi - - if use headless; then - local headless_unused_flags=("cups" "kerberos" "pulseaudio" "qt5" "qt6" "vaapi" "wayland") - for myiuse in ${headless_unused_flags[@]}; do - use ${myiuse} && ewarn "Ignoring USE=${myiuse}, USE=headless is set." - done - fi - - if ! use bindist && use ffmpeg-chromium; then - ewarn "Ignoring USE=ffmpeg-chromium, USE=bindist is not set." - fi -} - -# Chromium should build with any version of clang that we support -# but we may need to pick the "best" one for a build (highest installed, -# rust is built against it, etc.) -# Check each slot in LLVM_COMPAT to see if clang/llvm/lld are available -# and output the _highest_ slot that is actually available on a system. -chromium_pick_llvm_slot() { - # LLVM_COMPAT is always going to be oldest to newest (or one value) - # let's flip it and check from newest to oldest and return the first one we find. - local slot - for (( i=${#LLVM_COMPAT[@]}-1 ; i>=0 ; i-- )); do - slot=${LLVM_COMPAT[i]} - if has_version "sys-devel/clang:${slot}" && \ - has_version "sys-devel/llvm:${slot}" && \ - has_version "sys-devel/lld:${slot}" && \ - has_version "virtual/rust:0/llvm-${slot}" && \ - ( ! use pgo || has_version "sys-libs/compiler-rt-sanitizers:${slot}" ) ; then - - echo "${slot}" - return - fi - done - - die_msg=" -No suitable clang/llvm/lld slot found. -Slots checked: ${LLVM_COMPAT[*]}. -" - die "${die_msg}" -} - -# We need the rust version in src_configure and pkg_setup -chromium_extract_rust_version() { - [[ ${MERGE_TYPE} == binary ]] && return - local rustc_version=( $(eselect --brief rust show 2>/dev/null) ) - rustc_version=${rustc_version[0]#rust-bin-} - rustc_version=${rustc_version#rust-} - - [[ -z "${rustc_version}" ]] && die "Failed to determine rust version, check 'eselect rust' output" - - echo $rustc_version -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - # The pre_build_checks are all about compilation resources, no need to run it for a binpkg - pre_build_checks - - if use system-toolchain; then - # The linux:unbundle toolchain in GN grabs CC, CXX, CPP (etc) from the environment - # We'll set these to clang here then use llvm-utils functions to very explicitly set these - # to a sane value. - # This is effectively the 'force-clang' path if GCC support is re-added. - # TODO: check if the user has already selected a specific impl via make.conf and respect that. - if ! tc-is-lto && use official; then - einfo "USE=official selected and LTO not detected." - einfo "It is _highly_ recommended that LTO be enabled for performance reasons" - einfo "and to be consistent with the upstream \"official\" build optimisations." - fi - - # 936858 - if tc-ld-is-mold; then - eerror "Your toolchain is using the mold linker." - eerror "This is not supported by Chromium." - die "Please switch to a different linker." - fi - - LLVM_SLOT=$(chromium_pick_llvm_slot) - export LLVM_SLOT # used in src_configure for rust-y business - AR=llvm-ar - CPP="${CHOST}-clang++ -E" - NM=llvm-nm - CC=${CHOST}-clang - CXX=${CHOST}-clang++ - - if tc-is-cross-compiler; then - use pgo && die "The pgo USE flag cannot be used when cross-compiling" - CPP="${CBUILD}-clang++ -E" - fi - - # The llvm-r1_pkg_setup we have at home. - # We prepend the path _first_ to explicitly use the selected slot. - llvm_prepend_path "${LLVM_SLOT}" - - llvm_fix_clang_version CC CPP CXX - llvm_fix_tool_path ADDR2LINE AR AS LD NM OBJCOPY OBJDUMP RANLIB - llvm_fix_tool_path READELF STRINGS STRIP - - # Set LLVM_CONFIG to help Meson (bug #907965) but only do it - # for empty ESYSROOT (as a proxy for "are we cross-compiling?"). - if [[ -z ${ESYSROOT} ]] ; then - llvm_fix_tool_path LLVM_CONFIG - fi - - einfo "Using LLVM/Clang slot ${LLVM_SLOT} to build" - - local rustc_ver=$(chromium_extract_rust_version) - if ver_test "${rustc_ver}" -lt "${RUST_MIN_VER}"; then - eerror "Rust >=${RUST_MIN_VER} is required" - eerror "Please run 'eselect rust' and select the correct rust version" - die "Selected rust version is too old" - else - einfo "Using rust ${rustc_ver} to build" - fi - - fi - # Users should never hit this, it's purely a development convenience - if ver_test $(gn --version || die) -lt ${GN_MIN_VER}; then - die "dev-build/gn >= ${GN_MIN_VER} is required to build this Chromium" - fi - fi - - chromium_suid_sandbox_check_kernel_config -} - -src_unpack() { - # In 126 Chromium upstream decided to change the way that the rust toolchain is packaged - # so now we get a fancy src_unpack function to ensure that we don't accidentally unpack - # one toolchain over the other. The addtional control over over unpacking also helps us - # ensure that GN doesn't try and use some bundled tool (like bindgen) instead of the system - # package by just not unpacking it unless we're using the bundled toolchain. - unpack ${P}.tar.xz - if use system-toolchain; then - unpack chromium-patches-${PATCH_V}.tar.bz2 - else - unpack chromium-${PV%%\.*}-clang.tar.xz - local rust_dir="${WORKDIR}/rust-toolchain" - mkdir -p ${rust_dir} || die "Failed to create rust toolchain directory" - tar xf "${DISTDIR}/chromium-${PV%%\.*}-rust.tar.xz" -C ${rust_dir} || die "Failed to unpack rust toolchain" - fi - - use pgo && unpack chromium-profiler-0.2.tar - - if use ppc64; then - unpack chromium_${PATCHSET_PPC64}.debian.tar.xz - unpack chromium-ppc64le-gentoo-patches-1.tar.xz - fi -} - -src_prepare() { - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - # disable global media controls, crashes with libstdc++ - sed -i -e \ - "/\"GlobalMediaControlsCastStartStop\"/,+4{s/ENABLED/DISABLED/;}" \ - "chrome/browser/media/router/media_router_feature.cc" || die - - local PATCHES=( - "${FILESDIR}/chromium-cross-compile.patch" - "${FILESDIR}/chromium-109-system-zlib.patch" - "${FILESDIR}/chromium-111-InkDropHost-crash.patch" - "${FILESDIR}/chromium-126-oauth2-client-switches.patch" - "${FILESDIR}/chromium-127-bindgen-custom-toolchain.patch" - "${FILESDIR}/chromium-127-updater-systemd.patch" - ) - - # 127: test deps are broken for ui/lens with system ICU "//third_party/icu:icuuc_public" - sed -i '/source_set("unit_tests") {/,/}/d' \ - chrome/browser/ui/lens/BUILD.gn || die "Failed to remove bad test target" - sed -i '/lens:unit_tests/d' chrome/test/BUILD.gn components/BUILD.gn \ - || die "Failed to remove dependencies on bad target" - - if use system-toolchain; then - # The patchset is really only required if we're using the system-toolchain - PATCHES+=( "${WORKDIR}/chromium-patches-${PATCH_V}" ) - # We can't use the bundled compiler builtins - sed -i -e \ - "/if (is_clang && toolchain_has_rust) {/,+2d" \ - build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins" - else - mkdir -p third_party/llvm-build/Release+Asserts || die "Failed to bundle llvm" - ln -s "${WORKDIR}"/bin third_party/llvm-build/Release+Asserts/bin || die "Failed to symlink llvm bin" - ln -s "${WORKDIR}"/lib third_party/llvm-build/Release+Asserts/lib || die "Failed to symlink llvm lib" - echo "${GOOGLE_CLANG_VER}" > third_party/llvm-build/Release+Asserts/cr_build_revision || \ - die "Failed to set clang version" - ln -s "${WORKDIR}"/rust-toolchain third_party/rust-toolchain || die "Failed to bundle rust" - cp "${WORKDIR}"/rust-toolchain/VERSION \ - "${WORKDIR}"/rust-toolchain/INSTALLED_VERSION || die "Failed to set rust version" - fi - - if use ppc64 ; then - local p - for p in $(grep -v "^#" "${WORKDIR}"/debian/patches/series | grep "^ppc64le" || die); do - if [[ ! $p =~ "fix-breakpad-compile.patch" ]]; then - eapply "${WORKDIR}/debian/patches/${p}" - fi - done - PATCHES+=( "${WORKDIR}/ppc64le" ) - PATCHES+=( "${WORKDIR}/debian/patches/fixes/rust-clanglib.patch" ) - fi - - default - - rm third_party/node/linux/node-linux-x64/bin/node || die - ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die - - # adjust python interpreter version - sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die - - local keeplibs=( - base/third_party/cityhash - base/third_party/double_conversion - base/third_party/icu - base/third_party/nspr - base/third_party/superfasthash - base/third_party/symbolize - base/third_party/xdg_user_dirs - buildtools/third_party/libc++ - buildtools/third_party/libc++abi - chrome/third_party/mozilla_security_manager - courgette/third_party - net/third_party/mozilla_security_manager - net/third_party/nss - net/third_party/quic - net/third_party/uri_template - third_party/abseil-cpp - third_party/angle - third_party/angle/src/common/third_party/xxhash - third_party/angle/src/third_party/ceval - third_party/angle/src/third_party/libXNVCtrl - third_party/angle/src/third_party/volk - third_party/anonymous_tokens - third_party/apple_apsl - third_party/axe-core - third_party/bidimapper - third_party/blink - third_party/boringssl - third_party/boringssl/src/third_party/fiat - third_party/breakpad - third_party/breakpad/breakpad/src/third_party/curl - third_party/brotli - third_party/catapult - third_party/catapult/common/py_vulcanize/third_party/rcssmin - third_party/catapult/common/py_vulcanize/third_party/rjsmin - third_party/catapult/third_party/beautifulsoup4-4.9.3 - third_party/catapult/third_party/html5lib-1.1 - third_party/catapult/third_party/polymer - third_party/catapult/third_party/six - third_party/catapult/tracing/third_party/d3 - third_party/catapult/tracing/third_party/gl-matrix - third_party/catapult/tracing/third_party/jpeg-js - third_party/catapult/tracing/third_party/jszip - third_party/catapult/tracing/third_party/mannwhitneyu - third_party/catapult/tracing/third_party/oboe - third_party/catapult/tracing/third_party/pako - third_party/ced - third_party/cld_3 - third_party/closure_compiler - third_party/content_analysis_sdk - third_party/cpuinfo - third_party/crabbyavif - third_party/crashpad - third_party/crashpad/crashpad/third_party/lss - third_party/crashpad/crashpad/third_party/zlib - third_party/crc32c - third_party/cros_system_api - third_party/d3 - third_party/dav1d - third_party/dawn - third_party/dawn/third_party/gn/webgpu-cts - third_party/dawn/third_party/khronos - third_party/depot_tools - third_party/devscripts - third_party/devtools-frontend - third_party/devtools-frontend/src/front_end/third_party/acorn - third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json - third_party/devtools-frontend/src/front_end/third_party/axe-core - third_party/devtools-frontend/src/front_end/third_party/chromium - third_party/devtools-frontend/src/front_end/third_party/codemirror - third_party/devtools-frontend/src/front_end/third_party/csp_evaluator - third_party/devtools-frontend/src/front_end/third_party/diff - third_party/devtools-frontend/src/front_end/third_party/i18n - third_party/devtools-frontend/src/front_end/third_party/intl-messageformat - third_party/devtools-frontend/src/front_end/third_party/lighthouse - third_party/devtools-frontend/src/front_end/third_party/lit - third_party/devtools-frontend/src/front_end/third_party/lodash-isequal - third_party/devtools-frontend/src/front_end/third_party/marked - third_party/devtools-frontend/src/front_end/third_party/puppeteer - third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/mitt - third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/parsel-js - third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/rxjs - third_party/devtools-frontend/src/front_end/third_party/vscode.web-custom-data - third_party/devtools-frontend/src/front_end/third_party/wasmparser - third_party/devtools-frontend/src/front_end/third_party/web-vitals - third_party/devtools-frontend/src/third_party - third_party/distributed_point_functions - third_party/dom_distiller_js - third_party/eigen3 - third_party/emoji-segmenter - third_party/farmhash - third_party/fdlibm - third_party/ffmpeg - third_party/fft2d - third_party/flatbuffers - third_party/fp16 - third_party/freetype - third_party/fusejs - third_party/fxdiv - third_party/gemmlowp - third_party/google_input_tools - third_party/google_input_tools/third_party/closure_library - third_party/google_input_tools/third_party/closure_library/third_party/closure - third_party/googletest - third_party/highway - third_party/hunspell - third_party/iccjpeg - third_party/inspector_protocol - third_party/ipcz - third_party/jinja2 - third_party/jsoncpp - third_party/jstemplate - third_party/khronos - third_party/lens_server_proto - third_party/leveldatabase - third_party/libaddressinput - third_party/libaom - third_party/libaom/source/libaom/third_party/fastfeat - third_party/libaom/source/libaom/third_party/SVT-AV1 - third_party/libaom/source/libaom/third_party/vector - third_party/libaom/source/libaom/third_party/x86inc - third_party/libavif - third_party/libc++ - third_party/libevent - third_party/libgav1 - third_party/libjingle - third_party/libphonenumber - third_party/libsecret - third_party/libsrtp - third_party/libsync - third_party/libudev - third_party/liburlpattern - third_party/libva_protected_content - third_party/libvpx - third_party/libvpx/source/libvpx/third_party/x86inc - third_party/libwebm - third_party/libx11 - third_party/libxcb-keysyms - third_party/libxml/chromium - third_party/libyuv - third_party/libzip - third_party/lit - third_party/lottie - third_party/lss - third_party/lzma_sdk - third_party/mako - third_party/markupsafe - third_party/material_color_utilities - third_party/mesa - third_party/metrics_proto - third_party/minigbm - third_party/modp_b64 - third_party/nasm - third_party/nearby - third_party/neon_2_sse - third_party/node - third_party/omnibox_proto - third_party/one_euro_filter - third_party/openscreen - third_party/openscreen/src/third_party/ - third_party/openscreen/src/third_party/tinycbor/src/src - third_party/opus - third_party/ots - third_party/pdfium - third_party/pdfium/third_party/agg23 - third_party/pdfium/third_party/bigint - third_party/pdfium/third_party/freetype - third_party/pdfium/third_party/lcms - third_party/pdfium/third_party/libopenjpeg - third_party/pdfium/third_party/libtiff - third_party/perfetto - third_party/perfetto/protos/third_party/chromium - third_party/perfetto/protos/third_party/simpleperf - third_party/pffft - third_party/ply - third_party/polymer - third_party/private_membership - third_party/private-join-and-compute - third_party/protobuf - third_party/pthreadpool - third_party/puffin - third_party/pyjson5 - third_party/pyyaml - third_party/qcms - third_party/re2 - third_party/rnnoise - third_party/rust - third_party/ruy - third_party/s2cellid - third_party/securemessage - third_party/selenium-atoms - third_party/sentencepiece - third_party/sentencepiece/src/third_party/darts_clone - third_party/shell-encryption - third_party/simplejson - third_party/six - third_party/skia - third_party/skia/include/third_party/vulkan - third_party/skia/third_party/vulkan - third_party/smhasher - third_party/snappy - third_party/spirv-headers - third_party/spirv-tools - third_party/sqlite - third_party/swiftshader - third_party/swiftshader/third_party/astc-encoder - third_party/swiftshader/third_party/llvm-subzero - third_party/swiftshader/third_party/marl - third_party/swiftshader/third_party/SPIRV-Headers/include/spirv - third_party/swiftshader/third_party/SPIRV-Tools - third_party/swiftshader/third_party/subzero - third_party/tensorflow_models - third_party/tensorflow-text - third_party/tflite - third_party/tflite/src/third_party/eigen3 - third_party/tflite/src/third_party/fft2d - third_party/tflite/src/third_party/xla/third_party/tsl - third_party/tflite/src/third_party/xla/xla/tsl/util - third_party/tflite/src/third_party/xla/xla/tsl/framework - third_party/ukey2 - third_party/unrar - third_party/utf - third_party/vulkan - third_party/wayland - third_party/webdriver - third_party/webgpu-cts - third_party/webrtc - third_party/webrtc/common_audio/third_party/ooura - third_party/webrtc/common_audio/third_party/spl_sqrt_floor - third_party/webrtc/modules/third_party/fft - third_party/webrtc/modules/third_party/g711 - third_party/webrtc/modules/third_party/g722 - third_party/webrtc/rtc_base/third_party/base64 - third_party/webrtc/rtc_base/third_party/sigslot - third_party/widevine - third_party/woff2 - third_party/wuffs - third_party/x11proto - third_party/xcbproto - third_party/xnnpack - third_party/zlib/google - third_party/zxcvbn-cpp - url/third_party/mozilla - v8/src/third_party/siphash - v8/src/third_party/utf8-decoder - v8/src/third_party/valgrind - v8/third_party/glibc - v8/third_party/inspector_protocol - v8/third_party/v8 - - # gyp -> gn leftovers - third_party/speech-dispatcher - third_party/usb_ids - third_party/xdg-utils - ) - - # USE=system-* - if ! use system-harfbuzz; then - keeplibs+=( third_party/harfbuzz-ng ) - fi - - if ! use system-icu; then - keeplibs+=( third_party/icu ) - fi - - if ! use system-png; then - keeplibs+=( third_party/libpng ) - fi - - if ! use system-zstd; then - keeplibs+=( third_party/zstd ) - fi - - if ! use system-toolchain || [[ ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN} == yes ]]; then - keeplibs+=( third_party/llvm ) - fi - - # Arch-specific - if use arm64 || use ppc64 ; then - keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 ) - fi - # we need to generate ppc64 stuff because upstream does not ship it yet - # it has to be done before unbundling. - if use ppc64; then - pushd third_party/libvpx >/dev/null || die - mkdir -p source/config/linux/ppc64 || die - # requires git and clang, bug #832803 - # Revert https://chromium.googlesource.com/chromium/src/+/b463d0f40b08b4e896e7f458d89ae58ce2a27165%5E%21/third_party/libvpx/generate_gni.sh - # and https://chromium.googlesource.com/chromium/src/+/71ebcbce867dd31da5f8b405a28fcb0de0657d91%5E%21/third_party/libvpx/generate_gni.sh - # since we're not in a git repo - sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g; /^git -C/d; /git cl/d; /cd \$BASE_DIR\/\$LIBVPX_SRC_DIR/ign format --in-place \$BASE_DIR\/BUILD.gn\ngn format --in-place \$BASE_DIR\/libvpx_srcs.gni" \ - generate_gni.sh || die - ./generate_gni.sh || die - popd >/dev/null || die - - pushd third_party/ffmpeg >/dev/null || die - cp libavcodec/ppc/h264dsp.c libavcodec/ppc/h264dsp_ppc.c || die - cp libavcodec/ppc/h264qpel.c libavcodec/ppc/h264qpel_ppc.c || die - popd >/dev/null || die - fi - - einfo "Unbundling third-party libraries ..." - # Remove most bundled libraries. Some are still needed. - build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die - - # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries - mkdir -p buildtools/third_party/eu-strip/bin || die - ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die -} - -chromium_configure() { - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - local myconf_gn="" - - # We already forced the "correct" clang via pkg_setup - if use system-toolchain; then - if tc-is-cross-compiler; then - CC="${CC} -target ${CHOST} --sysroot ${ESYSROOT}" - CXX="${CXX} -target ${CHOST} --sysroot ${ESYSROOT}" - BUILD_AR=${AR} - BUILD_CC=${CC} - BUILD_CXX=${CXX} - BUILD_NM=${NM} - fi - - strip-unsupported-flags - - myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" - # https://bugs.gentoo.org/918897#c32 - append-ldflags -Wl,--undefined-version - myconf_gn+=" use_lld=true" - - # Make sure the build system will use the right tools, bug #340795. - tc-export AR CC CXX NM - - myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\"" - - if tc-is-cross-compiler; then - tc-export BUILD_{AR,CC,CXX,NM} - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\"" - myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\"" - myconf_gn+=" pkg_config=\"$(tc-getPKG_CONFIG)\"" - myconf_gn+=" host_pkg_config=\"$(tc-getBUILD_PKG_CONFIG)\"" - - # setup cups-config, build system only uses --libs option - if use cups; then - mkdir "${T}/cups-config" || die - cp "${ESYSROOT}/usr/bin/${CHOST}-cups-config" "${T}/cups-config/cups-config" || die - export PATH="${PATH}:${T}/cups-config" - fi - - # Don't inherit PKG_CONFIG_PATH from environment - local -x PKG_CONFIG_PATH= - else - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\"" - fi - - # bindgen settings - # From 127, to make bindgen work, we need to provide a location for libclang. - # We patch this in for gentoo - see chromium-*-bindgen-custom-toolchain.patch - # rust_bindgen_root = directory with `bin/bindgen` beneath it. - myconf_gn+=" rust_bindgen_root=\"${EPREFIX}/usr/\"" - - # from get_llvm_prefix - local prefix=${ESYSROOT} - [[ ${1} == -b ]] && prefix=${BROOT} - myconf_gn+=" bindgen_libclang_path=\"${prefix}/usr/lib/llvm/${LLVM_SLOT}/$(get_libdir)\"" - # We don't need to set 'clang_base_bath' for anything in our build - # and it defaults to the google toolchain location. Instead provide a location - # to where system clang lives sot that bindgen can find system headers (e.g. stddef.h) - myconf_gn+=" clang_base_path=\"${EPREFIX}/usr/lib/clang/${LLVM_SLOT}/\"" - - # We need to provide this to GN in both the path to rust _and_ the version - local rustc_ver=$(chromium_extract_rust_version) - if [[ "$(eselect --brief rust show 2>/dev/null)" == *"bin"* ]]; then - myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/opt/rust-bin-${rustc_ver}/\"" - else - myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/usr/lib/rust/${rustc_ver}/\"" - fi - myconf_gn+=" rustc_version=\"${rustc_ver}\"" - fi - - # GN needs explicit config for Debug/Release as opposed to inferring it from build directory. - myconf_gn+=" is_debug=false" - - # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138. - # DCHECK is fatal by default, make it configurable at runtime, #bug 807881. - myconf_gn+=" dcheck_always_on=$(usex debug true false)" - myconf_gn+=" dcheck_is_configurable=$(usex debug true false)" - - # Component build isn't generally intended for use by end users. It's mostly useful - # for development and debugging. - myconf_gn+=" is_component_build=false" - - # Disable nacl, we can't build without pnacl (http://crbug.com/269560). - myconf_gn+=" enable_nacl=false" - - # Use system-provided libraries. - # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733). - # TODO: use_system_hunspell (upstream changes needed). - # TODO: use_system_protobuf (bug #525560). - # TODO: use_system_sqlite (http://crbug.com/22208). - - # libevent: https://bugs.gentoo.org/593458 - local gn_system_libraries=( - flac - fontconfig - freetype - # Need harfbuzz_from_pkgconfig target - #harfbuzz-ng - libdrm - libjpeg - libwebp - libxml - libxslt - openh264 - zlib - ) - if use system-icu; then - gn_system_libraries+=( icu ) - fi - if use system-png; then - gn_system_libraries+=( libpng ) - fi - if use system-zstd; then - gn_system_libraries+=( zstd ) - fi - - build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die - - # See dependency logic in third_party/BUILD.gn - myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)" - - # Optional dependencies. - myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)" - myconf_gn+=" enable_widevine=$(usex widevine true false)" - - if use headless; then - myconf_gn+=" use_cups=false" - myconf_gn+=" use_kerberos=false" - myconf_gn+=" use_pulseaudio=false" - myconf_gn+=" use_vaapi=false" - myconf_gn+=" rtc_use_pipewire=false" - else - myconf_gn+=" use_cups=$(usex cups true false)" - myconf_gn+=" use_kerberos=$(usex kerberos true false)" - myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)" - myconf_gn+=" use_vaapi=$(usex vaapi true false)" - myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)" - myconf_gn+=" gtk_version=$(usex gtk4 4 3)" - fi - - # Allows distributions to link pulseaudio directly (DT_NEEDED) instead of - # using dlopen. This helps with automated detection of ABI mismatches and - # prevents silent errors. - if use pulseaudio; then - myconf_gn+=" link_pulseaudio=true" - fi - - # Non-developer builds of Chromium (for example, non-Chrome browsers, or - # Chromium builds provided by Linux distros) should disable the testing config - myconf_gn+=" disable_fieldtrial_testing_config=true" - - # The sysroot is the oldest debian image that chromium supports, we don't need it - myconf_gn+=" use_sysroot=false" - - # Use in-tree libc++ (buildtools/third_party/libc++ and buildtools/third_party/libc++abi) - # instead of the system C++ library for C++ standard library support. - # default: true, but let's be explicit (forced since 120 ; USE removed 127). - myconf_gn+=" use_custom_libcxx=true" - - # Disable pseudolocales, only used for testing - myconf_gn+=" enable_pseudolocales=false" - - # Disable code formating of generated files - myconf_gn+=" blink_enable_generated_code_formatting=false" - - if use bindist ; then - # proprietary_codecs just forces Chromium to say that it can use h264/aac, - # the work is still done by ffmpeg. If this is set to no Chromium - # won't be able to load the codec even if the library can handle it - myconf_gn+=" proprietary_codecs=true" - myconf_gn+=" ffmpeg_branding=\"Chrome\"" - # build ffmpeg as an external component (libffmpeg.so) that we can remove / substitute - myconf_gn+=" is_component_ffmpeg=true" - else - ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)" - myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)" - myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\"" - fi - - # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . - # Note: these are for Gentoo use ONLY. For your own distribution, - # please get your own set of keys. Feel free to contact chromium@gentoo.org - # for more info. The OAuth2 credentials, however, have been left out. - # Those OAuth2 credentials have been broken for quite some time anyway. - # Instead we apply a patch to use the --oauth2-client-id= and - # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and - # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into - # Chromium without baked-in values. - local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc" - myconf_gn+=" google_api_key=\"${google_api_key}\"" - local myarch="$(tc-arch)" - - # Avoid CFLAGS problems, bug #352457, bug #390147. - if ! use custom-cflags; then - replace-flags "-Os" "-O2" - strip-flags - - # Debug info section overflows without component build - # Prevent linker from running out of address space, bug #471810 . - filter-flags "-g*" - - # Prevent libvpx/xnnpack build failures. Bug 530248, 544702, 546984, 853646. - if [[ ${myarch} == amd64 ]]; then - filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4 -mno-xop -mno-sse4a - fi - fi - - if [[ $myarch = amd64 ]] ; then - myconf_gn+=" target_cpu=\"x64\"" - ffmpeg_target_arch=x64 - elif [[ $myarch = arm64 ]] ; then - myconf_gn+=" target_cpu=\"arm64\"" - ffmpeg_target_arch=arm64 - elif [[ $myarch = ppc64 ]] ; then - myconf_gn+=" target_cpu=\"ppc64\"" - ffmpeg_target_arch=ppc64 - else - die "Failed to determine target arch, got '$myarch'." - fi - - myconf_gn+=" treat_warnings_as_errors=false" - # Disable fatal linker warnings, bug 506268. - myconf_gn+=" fatal_linker_warnings=false" - - # Disable external code space for V8 for ppc64. It is disabled for ppc64 - # by default, but cross-compiling on amd64 enables it again. - if tc-is-cross-compiler; then - if ! use amd64 && ! use arm64; then - myconf_gn+=" v8_enable_external_code_space=false" - fi - fi - - # Only enabled for clang, but gcc has endian macros too - myconf_gn+=" v8_use_libm_trig_functions=true" - - # Bug 491582. - export TMPDIR="${WORKDIR}/temp" - mkdir -p -m 755 "${TMPDIR}" || die - - # https://bugs.gentoo.org/654216 - addpredict /dev/dri/ #nowarn - - # We don't use the same clang version as upstream, and with -Werror - # we need to make sure that we don't get superfluous warnings. - append-flags -Wno-unknown-warning-option - if tc-is-cross-compiler; then - export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option" - export BUILD_CFLAGS+=" -Wno-unknown-warning-option" - fi - - # Explicitly disable ICU data file support for system-icu/headless builds. - if use system-icu || use headless; then - myconf_gn+=" icu_use_data_file=false" - fi - - # Don't need nocompile checks and GN crashes with our config - myconf_gn+=" enable_nocompile_tests=false" - - # Enable ozone wayland and/or headless support - myconf_gn+=" use_ozone=true ozone_auto_platforms=false" - myconf_gn+=" ozone_platform_headless=true" - if use headless; then - myconf_gn+=" ozone_platform=\"headless\"" - myconf_gn+=" use_xkbcommon=false use_gtk=false use_qt=false" - myconf_gn+=" use_glib=false use_gio=false" - myconf_gn+=" use_pangocairo=false use_alsa=false" - myconf_gn+=" use_libpci=false use_udev=false" - myconf_gn+=" enable_print_preview=false" - myconf_gn+=" enable_remoting=false" - else - myconf_gn+=" use_system_libdrm=true" - myconf_gn+=" use_system_minigbm=true" - myconf_gn+=" use_xkbcommon=true" - if use qt5 || use qt6; then - local cbuild_libdir=$(get_libdir) - if tc-is-cross-compiler; then - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$($(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libxslt) - cbuild_libdir=${cbuild_libdir:2} - cbuild_libdir=${cbuild_libdir/% } - fi - if use qt5; then - if tc-is-cross-compiler; then - myconf_gn+=" moc_qt5_path=\"${EPREFIX}/${cbuild_libdir}/qt5/bin\"" - else - myconf_gn+=" moc_qt5_path=\"$(qt5_get_bindir)\"" - fi - fi - if use qt6; then - myconf_gn+=" moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\"" - fi - - myconf_gn+=" use_qt=true" - myconf_gn+=" use_qt6=$(usex qt6 true false)" - else - myconf_gn+=" use_qt=false" - fi - myconf_gn+=" ozone_platform_x11=$(usex X true false)" - myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)" - myconf_gn+=" ozone_platform=$(usex wayland \"wayland\" \"x11\")" - use wayland && myconf_gn+=" use_system_libffi=true" - fi - - # Results in undefined references in chrome linking, may require CFI to work - if use arm64; then - myconf_gn+=" arm_control_flow_integrity=\"none\"" - fi - - # 936673: Updater (which we don't use) depends on libsystemd - # This _should_ always be disabled if we're not building a - # "Chrome" branded browser, but obviously this is not always sufficient. - myconf_gn+=" enable_updater=false" - - local use_lto="false" - if tc-is-lto; then - use_lto="true" - fi - myconf_gn+=" use_thin_lto=${use_lto}" - myconf_gn+=" thin_lto_enable_optimizations=${use_lto}" - - # Enable official builds - myconf_gn+=" is_official_build=$(usex official true false)" - if use official; then - # Allow building against system libraries in official builds - sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \ - tools/generate_shim_headers/generate_shim_headers.py || die - # Req's LTO; TODO: not compatible with -fno-split-lto-unit - myconf_gn+=" is_cfi=false" - # Don't add symbols to build - myconf_gn+=" symbol_level=0" - fi - - if use pgo; then - myconf_gn+=" chrome_pgo_phase=${1}" - if [[ "$1" == "2" ]]; then - myconf_gn+=" pgo_data_path=\"${2}\"" - fi - else - # Disable PGO - myconf_gn+=" chrome_pgo_phase=0" - fi - - # skipping typecheck is only supported on amd64, bug #876157 - if ! use amd64; then - myconf_gn+=" devtools_skip_typecheck=false" - fi - - einfo "Configuring Chromium ..." - set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release - echo "$@" - "$@" || die -} - -src_configure() { - chromium_configure $(usex pgo 1 0) -} - -chromium_compile() { - # Final link uses lots of file descriptors. - ulimit -n 2048 - - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - # Don't inherit PYTHONPATH from environment, bug #789021, #812689 - local -x PYTHONPATH= - - # Build mksnapshot and pax-mark it. - if use pax-kernel; then - local x - for x in mksnapshot v8_context_snapshot_generator; do - if tc-is-cross-compiler; then - eninja -C out/Release "host/${x}" - pax-mark m "out/Release/host/${x}" - else - eninja -C out/Release "${x}" - pax-mark m "out/Release/${x}" - fi - done - fi - - # Even though ninja autodetects number of CPUs, we respect - # user's options, for debugging with -j 1 or any other reason. - eninja -C out/Release chrome chromedriver chrome_sandbox - - pax-mark m out/Release/chrome - - if ! use system-toolchain; then - QA_FLAGS_IGNORED=" - usr/lib64/chromium-browser/chrome - usr/lib64/chromium-browser/chrome-sandbox - usr/lib64/chromium-browser/chromedriver - usr/lib64/chromium-browser/chrome_crashpad_handler - usr/lib64/chromium-browser/libEGL.so - usr/lib64/chromium-browser/libGLESv2.so - usr/lib64/chromium-browser/libVkICD_mock_icd.so - usr/lib64/chromium-browser/libVkLayer_khronos_validation.so - usr/lib64/chromium-browser/libqt5_shim.so - usr/lib64/chromium-browser/libvk_swiftshader.so - usr/lib64/chromium-browser/libvulkan.so.1 - " - fi -} - -# This function is called from virtx, and must always return so that Xvfb -# session isn't left running. If we return 1, virtx will call die(). -chromium_profile() { - einfo "Profiling for PGO" - - pushd "${WORKDIR}/chromium-profiler-"* >/dev/null || return 1 - - # Remove old profdata in case profiling was interrupted. - rm -rf "${1}" || return 1 - - if ! "${EPYTHON}" ./chromium_profiler.py \ - --chrome-executable "${S}/out/Release/chrome" \ - --chromedriver-executable "${S}/out/Release/chromedriver.unstripped" \ - --add-arg no-sandbox --add-arg disable-dev-shm-usage \ - --profile-output "${1}"; then - eerror "Profiling failed" - return 1 - fi - - popd >/dev/null || return 1 -} - -src_compile() { - if use pgo; then - local profdata - - profdata="${WORKDIR}/chromium.profdata" - - if [[ ! -e "${WORKDIR}/.pgo-profiled" ]]; then - chromium_compile - virtx chromium_profile "$profdata" - - touch "${WORKDIR}/.pgo-profiled" || die - fi - - if [[ ! -e "${WORKDIR}/.pgo-phase-2-configured" ]]; then - # Remove phase 1 output - rm -r out/Release || die - - chromium_configure 2 "$profdata" - - touch "${WORKDIR}/.pgo-phase-2-configured" || die - fi - - if [[ ! -e "${WORKDIR}/.pgo-phase-2-compiled" ]]; then - chromium_compile - touch "${WORKDIR}/.pgo-phase-2-compiled" || die - fi - else - chromium_compile - fi - - mv out/Release/chromedriver{.unstripped,} || die - - rm -f out/Release/locales/*.pak.info || die - - # Build manpage; bug #684550 - sed -e 's|@@PACKAGE@@|chromium-browser|g; - s|@@MENUNAME@@|Chromium|g;' \ - chrome/app/resources/manpage.1.in > \ - out/Release/chromium-browser.1 || die - - # Build desktop file; bug #706786 - sed -e 's|@@MENUNAME@@|Chromium|g; - s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g; - s|@@PACKAGE@@|chromium-browser|g; - s|\(^Exec=\)/usr/bin/|\1|g;' \ - chrome/installer/linux/common/desktop.template > \ - out/Release/chromium-browser-chromium.desktop || die - - # Build vk_swiftshader_icd.json; bug #827861 - sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \ - third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \ - out/Release/vk_swiftshader_icd.json || die -} - -src_install() { - local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser" - exeinto "${CHROMIUM_HOME}" - doexe out/Release/chrome - - newexe out/Release/chrome_sandbox chrome-sandbox - fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox" - - doexe out/Release/chromedriver - doexe out/Release/chrome_crashpad_handler - - ozone_auto_session () { - use X && use wayland && ! use headless && echo true || echo false - } - local sedargs=( -e - "s:/usr/lib/:/usr/$(get_libdir)/:g; - s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g" - ) - sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die - doexe chromium-launcher.sh - - # It is important that we name the target "chromium-browser", - # xdg-utils expect it; bug #355517. - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser - # keep the old symlink around for consistency - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium - - dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver - - # Allow users to override command-line options, bug #357629. - insinto /etc/chromium - newins "${FILESDIR}/chromium.default" "default" - - pushd out/Release/locales > /dev/null || die - chromium_remove_language_paks - popd - - insinto "${CHROMIUM_HOME}" - doins out/Release/*.bin - doins out/Release/*.pak - - if use bindist; then - # We built libffmpeg as a component library, but we can't distribute it - # with proprietary codec support. Remove it and make a symlink to the requested - # system library. - rm -f out/Release/libffmpeg.so \ - || die "Failed to remove bundled libffmpeg.so (with proprietary codecs)" - # symlink the libffmpeg.so from either ffmpeg-chromium or ffmpeg[chromium]. - einfo "Creating symlink to libffmpeg.so from $(usex ffmpeg-chromium ffmpeg-chromium ffmpeg[chromium])..." - dosym ../chromium/libffmpeg.so$(usex ffmpeg-chromium .${PV%%\.*} "") \ - /usr/$(get_libdir)/chromium-browser/libffmpeg.so - fi - - ( - shopt -s nullglob - local files=(out/Release/*.so out/Release/*.so.[0-9]) - [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}" - ) - - # Install bundled xdg-utils, avoids installing X11 libraries with USE="-X wayland" - doins out/Release/xdg-{settings,mime} - - if ! use system-icu && ! use headless; then - doins out/Release/icudtl.dat - fi - - doins -r out/Release/locales - doins -r out/Release/MEIPreload - - # Install vk_swiftshader_icd.json; bug #827861 - doins out/Release/vk_swiftshader_icd.json - - if [[ -d out/Release/swiftshader ]]; then - insinto "${CHROMIUM_HOME}/swiftshader" - doins out/Release/swiftshader/*.so - fi - - # Install icons - local branding size - for size in 16 24 32 48 64 128 256 ; do - case ${size} in - 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;; - *) branding="chrome/app/theme/chromium" ;; - esac - newicon -s ${size} "${branding}/product_logo_${size}.png" \ - chromium-browser.png - done - - # Install desktop entry - domenu out/Release/chromium-browser-chromium.desktop - - # Install GNOME default application entry (bug #303100). - insinto /usr/share/gnome-control-center/default-apps - newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml - - # Install manpage; bug #684550 - doman out/Release/chromium-browser.1 - dosym chromium-browser.1 /usr/share/man/man1/chromium.1 - - readme.gentoo_create_doc -} - -pkg_postrm() { - xdg_icon_cache_update - xdg_desktop_database_update -} - -pkg_postinst() { - xdg_icon_cache_update - xdg_desktop_database_update - readme.gentoo_print_elog - - if ! use headless; then - if use vaapi; then - elog "VA-API is disabled by default at runtime. You have to enable it" - elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS" - elog "in /etc/chromium/default." - fi - if use screencast; then - elog "Screencast is disabled by default at runtime. Either enable it" - elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer" - elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer" - elog "to CHROMIUM_FLAGS in /etc/chromium/default." - fi - if use gtk4; then - elog "Chromium prefers GTK3 over GTK4 at runtime. To override this" - elog "behavior you need to pass --gtk-version=4, e.g. by adding it" - elog "to CHROMIUM_FLAGS in /etc/chromium/default." - fi - if use qt5 && use qt6; then - elog "Chromium automatically selects Qt5 or Qt6 based on your desktop" - elog "environment. To override you need to pass --qt-version=5 or" - elog "--qt-version=6, e.g. by adding it to CHROMIUM_FLAGS in" - elog "/etc/chromium/default." - fi - fi - - if systemd_is_booted && ! [[ -f "/etc/machine-id" ]]; then - ewarn "The lack of an '/etc/machine-id' file on this system booted with systemd" - ewarn "indicates that the Gentoo handbook was not followed to completion." - ewarn "" - ewarn "Chromium is known to behave unpredictably with this system configuration;" - ewarn "please complete the configuration of this system before logging any bugs." - fi -} diff --git a/www-client/chromium/chromium-129.0.6668.42.ebuild b/www-client/chromium/chromium-129.0.6668.58.ebuild index 078dcf9d848c..64cb79e86461 100644 --- a/www-client/chromium/chromium-129.0.6668.42.ebuild +++ b/www-client/chromium/chromium-129.0.6668.58.ebuild @@ -69,7 +69,7 @@ SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P} pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )" LICENSE="BSD" -SLOT="0/beta" +SLOT="0/stable" KEYWORDS="~amd64 ~arm64" IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd" IUSE="+X ${IUSE_SYSTEM_LIBS} bindist cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos +official pax-kernel pgo +proprietary-codecs pulseaudio" diff --git a/www-client/elinks/elinks-0.16.1.1-r100.ebuild b/www-client/elinks/elinks-0.16.1.1-r100.ebuild new file mode 100644 index 000000000000..83bb020743e9 --- /dev/null +++ b/www-client/elinks/elinks-0.16.1.1-r100.ebuild @@ -0,0 +1,199 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_REQ_USE="deprecated" +GUILE_COMPAT=( 2-2 3-0 ) +PYTHON_COMPAT=( python3_{10..12} ) +LUA_COMPAT=( lua5-{1,2,3,4} luajit ) + +inherit flag-o-matic guile-single meson lua-single python-single-r1 + +DESCRIPTION="Advanced and well-established text-mode web browser" +HOMEPAGE="http://elinks.or.cz/" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/rkd77/felinks" + inherit git-r3 +else + SRC_URI="https://github.com/rkd77/elinks/releases/download/v${PV}/${P}.tar.xz" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="bittorrent brotli bzip2 debug finger ftp gopher gpm gnutls guile idn" +IUSE+=" javascript lua lzma +mouse nls nntp perl python samba ssl test tre unicode X xml zlib zstd" +RESTRICT="!test? ( test )" +REQUIRED_USE=" + guile? ( ${GUILE_REQUIRED_USE} ) + lua? ( ${LUA_REQUIRED_USE} ) + python? ( ${PYTHON_REQUIRED_USE} ) +" + +RDEPEND=" + >=sys-libs/ncurses-5.2:=[unicode(+)] + brotli? ( app-arch/brotli:= ) + bzip2? ( >=app-arch/bzip2-1.0.2 ) + gpm? ( + >=sys-libs/gpm-1.20.0-r5 + ) + guile? ( ${GUILE_DEPS} ) + idn? ( net-dns/libidn:= ) + javascript? ( + dev-cpp/libxmlpp:5.0 + dev-lang/mujs:= + ) + lua? ( ${LUA_DEPS} ) + lzma? ( app-arch/xz-utils ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + samba? ( net-fs/samba ) + ssl? ( + !gnutls? ( dev-libs/openssl:= ) + gnutls? ( net-libs/gnutls:= ) + ) + tre? ( dev-libs/tre ) + X? ( + x11-libs/libX11 + x11-libs/libXt + ) + xml? ( >=dev-libs/expat-1.95.4 ) + zlib? ( >=sys-libs/zlib-1.1.4 ) + zstd? ( app-arch/zstd:= ) +" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto )" +BDEPEND=" + virtual/pkgconfig + nls? ( sys-devel/gettext ) + test? ( + net-dns/libidn + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-0.16.1.1-ecmascript-implicit-declaration.patch + "${FILESDIR}"/${PN}-0.16.1.1-perl-5.38.patch + "${FILESDIR}"/${PN}-0.16.1.1-python-3.12.patch +) + +pkg_setup() { + use guile && guile-single_pkg_setup + use lua && lua-single_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + use guile && guile_bump_sources +} + +src_configure() { + # This file is severely broken w.r.t. strict-aliasing and upstream acknowledges it: + # https://github.com/rkd77/elinks/blob/d05ce90b35d82109aab320b490e3ca54aa6df057/src/util/lists.h#L14 + # https://github.com/rkd77/elinks/blob/d05ce90b35d82109aab320b490e3ca54aa6df057/src/meson.build#L44 + # + # Although they force fno-strict-aliasing, they do so inconsistently and not for the testsuite (!!!). + # Just add it again. + # + # DO not trust the LTO either. + append-flags -fno-strict-aliasing + filter-lto + + local emesonargs=( + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + -Dhtmldoc=false + -Dpdfdoc=false + -Dapidoc=false + -D88-colors=true + -D256-colors=true + $(meson_use bittorrent) + $(meson_use brotli) + $(meson_use bzip2 bzlib) + $(usex debug '-Ddebug=true' '-Dfastmem=true') + $(meson_use finger) + $(meson_use ftp) + -Dfsp=false + -Dgemini=false + $(meson_use nls gettext) + $(meson_use gopher) + $(meson_use gpm) + $(meson_use guile) + -Dgssapi=false + -Dhtml-highlight=true + $(meson_use idn) + $(meson_use javascript mujs) + -Dipv6=true + -Dleds=true + -Dlibev=false + -Dlibevent=false + -Dluapkg=$(usex lua ${ELUA:-0} '') + $(meson_use lzma) + $(meson_use mouse) + #-Dmujs=false + $(meson_use nls) + $(meson_use nntp) + $(meson_use perl) + $(meson_use python) + -Dquickjs=false + -Druby=false + $(meson_use samba smb) + -Dsm-scripting=false + -Dspidermonkey=false + -Dterminfo=true + $(meson_use test) + $(meson_use tre) + -Dtrue-color=true + $(meson_use xml xbel) + $(meson_use X x) + $(meson_use zlib) + $(meson_use zstd) + ) + + if use ssl ; then + if use gnutls ; then + emesonargs+=( -Dgnutls=true ) + else + emesonargs+=( -Dopenssl=true) + fi + else + emesonargs+=( -Dgnutls=false -Dopenssl=false ) + fi + + meson_src_configure +} + +src_install() { + meson_src_install + + insinto /etc/elinks + newins contrib/keybind-full.conf keybind-full.sample + newins contrib/keybind.conf keybind.conf.sample + + dodoc AUTHORS BUGS ChangeLog INSTALL NEWS README SITES THANKS TODO doc/*.* + docinto contrib ; dodoc contrib/{README,colws.diff,elinks[-.]vim*} + docinto contrib/lua ; dodoc contrib/lua/{*.lua,elinks-remote} + docinto contrib/conv ; dodoc contrib/conv/*.* + docinto contrib/guile ; dodoc contrib/guile/*.scm + + # elinks uses an internal copy of gettext which ships files that may + # collide with the system's gettext (https://bugs.gentoo.org/635090) + rm -f "${ED}"/usr/{share/locale/locale,lib/charset}.alias || die + + use guile && guile_unstrip_ccache +} + +pkg_postinst() { + elog "You may want to convert your html.cfg and links.cfg of" + elog "Links or older ELinks versions to the new ELinks elinks.conf" + elog "using ${EROOT}/usr/share/doc/${PF}/contrib/conv/conf-links2elinks.pl" + elog + elog "Please have a look at ${EROOT}/etc/elinks/keybind-full.sample and" + elog "${EROOT}/etc/elinks/keybind.conf.sample for some bindings examples." + elog + elog "You will have to set your TERM variable to 'xterm-256color'" + elog "to be able to use 256 colors in elinks." +} diff --git a/www-client/elinks/elinks-9999.ebuild b/www-client/elinks/elinks-9999.ebuild index 64da492dfd2a..d29570aecef2 100644 --- a/www-client/elinks/elinks-9999.ebuild +++ b/www-client/elinks/elinks-9999.ebuild @@ -3,10 +3,12 @@ EAPI=8 +GUILE_REQ_USE="deprecated" +GUILE_COMPAT=( 2-2 3-0 ) PYTHON_COMPAT=( python3_{10..12} ) LUA_COMPAT=( lua5-{1,2,3,4} luajit ) -inherit flag-o-matic meson lua-single python-single-r1 +inherit flag-o-matic guile-single meson lua-single python-single-r1 DESCRIPTION="Advanced and well-established text-mode web browser" HOMEPAGE="http://elinks.or.cz/" @@ -26,6 +28,7 @@ IUSE="bittorrent brotli bzip2 debug finger ftp gopher gpm gnutls guile idn" IUSE+=" javascript lua lzma +mouse nls nntp perl python samba ssl test tre unicode X xml zlib zstd" RESTRICT="!test? ( test )" REQUIRED_USE=" + guile? ( ${GUILE_REQUIRED_USE} ) lua? ( ${LUA_REQUIRED_USE} ) python? ( ${PYTHON_REQUIRED_USE} ) " @@ -37,7 +40,7 @@ RDEPEND=" gpm? ( >=sys-libs/gpm-1.20.0-r5 ) - guile? ( >=dev-scheme/guile-1.6.4-r1[deprecated] ) + guile? ( ${GUILE_DEPS} ) idn? ( net-dns/libidn2:= ) javascript? ( dev-cpp/libxmlpp:5.0 @@ -72,11 +75,16 @@ BDEPEND=" " pkg_setup() { + use guile && guile-single_pkg_setup use lua && lua-single_pkg_setup - use python && python-single-r1_pkg_setup } +src_prepare() { + default + use guile && guile_bump_sources +} + src_configure() { # This file is severely broken w.r.t. strict-aliasing and upstream acknowledges it: # https://github.com/rkd77/elinks/blob/d05ce90b35d82109aab320b490e3ca54aa6df057/src/util/lists.h#L14 @@ -168,6 +176,8 @@ src_install() { # elinks uses an internal copy of gettext which ships files that may # collide with the system's gettext (https://bugs.gentoo.org/635090) rm -f "${ED}"/usr/{share/locale/locale,lib/charset}.alias || die + + use guile && guile_unstrip_ccache } pkg_postinst() { diff --git a/www-client/firefox-bin/Manifest b/www-client/firefox-bin/Manifest index 64518c3f93b5..6ccde27416ab 100644 --- a/www-client/firefox-bin/Manifest +++ b/www-client/firefox-bin/Manifest @@ -288,9 +288,108 @@ DIST firefox-130.0-vi.xpi 666085 BLAKE2B b80be3d3c30aec668164abe5461677aaead06a6 DIST firefox-130.0-xh.xpi 420486 BLAKE2B 953135839c7a648b4b02459ceb47bfd6e7bf62a357eea4c7fe976409a6779199ba719c0cca662fac1d8fbc2865e5e529d7c656088a6509c072b52343170fb1bc SHA512 1cabec451c045df427d8b2dca6829f098ab99a4f7eb28c3e53b6a36b556b4f7471f9e7c3d4e991a03c0a925361a15897976c156eb5a9c8add1a325046f6227e0 DIST firefox-130.0-zh-CN.xpi 667377 BLAKE2B a8ce2ee629c30204726f4e790310180bd2c31866adeb6a25d9e28f48e97dc7f27d9f9b3109e482ac08cfe98316fe9344515054151b3c3d37eee3a6058c0327d4 SHA512 a38673a73056f3ebc301f8cfb2c9fd8e5d764b9224294aab42c3b654dda95bc811a9ee9b1ed707072b39222b05c49deb019a8f51abe135ba9b26f800c928fd39 DIST firefox-130.0-zh-TW.xpi 669293 BLAKE2B 8743ecdfa6fff21ba6d1c199bb24fca9b753b874e905a84ce805aa7a3e10d1871c22e119ab46b452be2c55cafdef9e8ba8a90e261078b0451ba3cb2e9054645e SHA512 6d12d92f82a7434bc7ffe3d0ab6e706ef230cb31b7889c8b0b4312f3cd0f4712ce59e4b576802b79d5bef552d3c07539d27394288c0f6e0e54998a55f44a62d3 +DIST firefox-130.0.1-ach.xpi 467583 BLAKE2B 0fb54abe50786f852b02b7be04f70f0925ba95293f702b4149dbecb80f5eaa44f0017772dbb0d30876014144dfdc8c388b34fd30e5e580d1bfaceeb751d4325c SHA512 b879138b551a00793fc393479d5dd21b43b40f1e7947f524c6584469f8fb8b612cad84ce327a42dea636c5d8e61702ab5d74728bf2aad7d4c3e806db1f40c398 +DIST firefox-130.0.1-af.xpi 420697 BLAKE2B b752154782fb91948f0552f01c4be685509f7d87251af85b73c02cfaa8da27f93f914ca6f826562014a59c8d567b451c26087aff8462eb53b5d5df5c4b402f55 SHA512 5c0cc40695328520e59d14fd409067ab2b8ea1ffe5295afb6e7d52a8df57feeaf10b22068e7fc84099921b5faff1bccc55c10d35f7d34ee74afee07cf68be6eb +DIST firefox-130.0.1-an.xpi 509178 BLAKE2B c14b948c15b50b8c6d0c50e22404dd76ebf649fa3bb3197f17cbe8d8021021aa8299598c2b0c7a28c850c0cf41842e718d80b35d1949d131e661db2a263af585 SHA512 70883c02b8127774fd9f46b0edb13d38ac518f765ed40a26715c73ca645c2fc6a5e94360f1bf245753fde895f232d523812b0c4382a846bb004c4a957f0ec2c9 +DIST firefox-130.0.1-ar.xpi 615231 BLAKE2B 66af66551f2826772c28824bac9fe869e15dcb24cb905d65eda0a1a92ebdc71b0e55e0da971e23f12f2be682534133b2d2382389df7ad597a418189b9b422fec SHA512 d838e2f6071612b26ef9cc50a7b28afe4fdd137abecb08e74da08f1fb8d264bb81ca34925d56ac6762264c389960f10c6ec78b319a09d108ffdc096773b68efe +DIST firefox-130.0.1-ast.xpi 499640 BLAKE2B 2178e72c80dee657341dc7ac50a38ca7a5db47a7e84927d4f247e72100f719bed992e25e262b4ab9b72d424f322b918a474ab50c0349b430bd16ea0b08cd36e0 SHA512 e9d74ecc3aa26886769a9d66f095f78fea3ad81a8b52b4b137843bca103f2e98accd5e97a03312a898a67ba72178b5a1169e8ce74c9daf8da4edeb57b56d1fa1 +DIST firefox-130.0.1-az.xpi 494303 BLAKE2B d3f79d4bea3d25405869bbd5651a722b8a4e221704fed963c50f97f0b1e61e520b888a867f1caca72f6dd478f6ac5b908b96c00849ba1fbc703a14005ed0f84e SHA512 558a834cd245674f41589d375085b615f0fbab080f211f5c278f33d887750415936adde7108ab622a02643214b06303973c93388d2a84581a0883b20be9d7c69 +DIST firefox-130.0.1-be.xpi 726468 BLAKE2B 43597f04ee93fe67a0a8fd01f6f60b63f8d74f9eb846fc1259e7b3eee0ff9f1d8280859cc7b675e493c63645e8b9af8169a7155c0bea943761aeebe4ee1d62fe SHA512 84197b8895d0f77b3ae77fed0d6de60f310561807830dceef813a576d01f8ed45230d10a4ea36aaa5054a2923c40f1c00d8c6f2630391d0eeaaea3aac63fe1e3 +DIST firefox-130.0.1-bg.xpi 640067 BLAKE2B 6cb96d904a0acce2b8a16e30a3ef46841a0d2cce86c65e3beaae519f5f13879d67ab30baa3b348f462a3e42b63db73341206f2decfc1713066662aac9304a847 SHA512 70837775c77bbdd2906abb9fa3d294bfe5ada3f6d5c123dc18eddf109e92dbb9bcd8f2b4ee106ab2910b1bb6dbad21aea9302ceb767e232de96f4c32316b15b8 +DIST firefox-130.0.1-bn.xpi 585048 BLAKE2B 812000a6fab4296ef6b11ac07c6f749cdb8ac5ad70f394b2314594e0859d06b2454f416d0edd98706c63cb111cdb8649a37cb7fadf2bae239adffe24b2c9ef98 SHA512 7022738a6c470972d625891a2b7e9496b9e5751d709f821b6b71916003d04cfcb558a4a2b21d440c86708387e4b4401b72bcec203fe8318d11ea210eaedf1c00 +DIST firefox-130.0.1-br.xpi 593551 BLAKE2B 1bdc7de29b19ef8126450f6db2b82c8c4b36997008dca781226e22f0574a94cf41f0c348e00d3308d18975840ee3756edd4b7bec894192221dd722e2b7b4e31b SHA512 8317569712f534c28df19c490d0a3cc66ff172af78410551cb6e68af0e05db7b06202e73c527228b5be95daa1080351744208d530b0cca8fd2c60af90068146b +DIST firefox-130.0.1-bs.xpi 512749 BLAKE2B 30c7c22875098dafcd045f4841818a0aca10a3d07f964369d65e1bccf58d2060b165de5243a2736b61fa15778908014dfa2a174e256a7d8bf9eb9c786a198a6b SHA512 b89583038b683f200b85c51ff4f5fc3b348feef329220fad038349cded70c6c44bd775362035e21c8d05888e2c0ad3eb5f50481ded11f57fbd9625dba169d76c +DIST firefox-130.0.1-ca-valencia.xpi 549198 BLAKE2B d5cf7308f02579540e6e93f56ee512f5fc7aceae0a85a435995852463a065f03d3d6feadae8f5156eda7a4efff75603dd1543bd62b677c7abf550a5dc2fb7a2b SHA512 65cbd8d9de8b796a0bdec2314049a48d4fdc417cd82264b1b1b3f39824e1282f3af5a5ea0d62a7b155a7adc97ead6f810e47e9a58d67cfdb303b934dbfaccea6 +DIST firefox-130.0.1-ca.xpi 600849 BLAKE2B 7dca1f77db1eca02bf59367d6d3587777f61ae839e57d73424dfc0478571cf88ee89cfa41a99da02daa81046620b05d0a1b1e6cc1c8265ce18c7db73860a346b SHA512 096849b734a3ddb68b4ff08cc507772e5301acebb186ee3a8f71d5cc01ddd5a7da0dc0897253fa59c8bbd057c1eed86ee73a21cf6481709feb914957ce216343 +DIST firefox-130.0.1-cak.xpi 596821 BLAKE2B 141b69ce46cd89180e38a37520488e305e8d6d13efd0cbc6f3a3e2564c25d07e52c60ab706f5fb80b188130006148e4e292d1e83d258a8de925ed2611ec6f833 SHA512 9f32953cf28ba7add1c762a48b01d9bf907d66b11478a9e9ebb9c9ada91bab4029391c6b5fe2a76c9d422a268b216af5a101daa7ac82fc228c8432a4d5fd90e1 +DIST firefox-130.0.1-cs.xpi 669123 BLAKE2B 25a91327b8f7307509de1c8992205b34e0a535d2a9d5d7d135a0da65662b31e66eaa260c96c37a453ce2abf32b80b13fbd9ce1a0fe17e0e16b1664f93fd9de52 SHA512 cb6b1c4e1322b5c8ff68ed09dce8908b85fd22c80d74318785226234ef5e4a010b7afdde46caf299d0101fd048d6f1bf1a857bb201c51ea3128f67757191e06b +DIST firefox-130.0.1-cy.xpi 633976 BLAKE2B 44e33256db532b13c763bc385a14e220e14e548da809c686495382e3c832bc2d03a1c852d4fac4e6c0ef85d59093d6c3da629f588d7a17fd5a53b908fffb3b72 SHA512 80357431c1f90fd859b818c8b6fd04601f198533783994f292f9aea2bd8988e150775924970b8c04817f51e442fdb8578b01e7df22939b817af7126674f0e539 +DIST firefox-130.0.1-da.xpi 622385 BLAKE2B e2ef41fa724727a0f063c549db30c8379dd0ba0d309ea798c4003e0329581726ec863559e466e0d6738b7c93a39bc05147df2b537a9ee6354c5479c1ab4bf1a8 SHA512 fe8693f5962004d9bd8ea99703866515985a4413519741a4400cdc6167246888397633256b95924bdd2e212e47f4ca8e64b96fc5d1e653916bea5d003724c66b +DIST firefox-130.0.1-de.xpi 644009 BLAKE2B 3e2f926a8f66f11107d2e37155dfacbd36dcf54d6fd20547f0fb1ab1b497be465852d8fc527367e509e20bb7e89e3f8f50a8637e56c562c6a5152ee218f1562f SHA512 2bebc0ce27cf86d0434a0adb7f3d12ff134338b6a962dfe2d28d84b99b24f865a5eac39c15fcfedecd0d0d551fc603525809e5388c4272f784d0350034826b3e +DIST firefox-130.0.1-dsb.xpi 658771 BLAKE2B 1cd178709f0b96eb28f9f20546a505a5a224f8ec567d4ab7beea0765ad4ffb9dbb411c285b45f523fe9d787c103ed4ff4a5d637fe65936017bf62223e5e468c0 SHA512 d034b9ed989d2aad957f7b208e2fbfe37de463958853d087bd23d0f16042c84ea0634332c3db25c2edb3c6135d6244b4233df321167b58f66950813e0db759a1 +DIST firefox-130.0.1-el.xpi 743369 BLAKE2B e769a69498b374a30e92b62d20bb5fb299818767b31ab7717b91b325f4f2c69b082ffc50a6991f2a9298d940fe54bed6a961941704464af7174fc3b5366570dd SHA512 28aa370bae828eb8c0f0b88d6dc25f7354b5aa05c9011dbc357cf25b1c3e2dc8c02345dca0e699c39838ebd03e4a5329285302758d342ec9e42a0bea6f46d4fa +DIST firefox-130.0.1-en-CA.xpi 592992 BLAKE2B 9eee5fed96ed317341f74f2ff2acccbfb042bbdcaf45d1eaa7c2f2e36af1af0750521cf39ddde8284d453cdd4f2089b16f4a2469da3df920ebfb1d69799651b8 SHA512 79829881745455e581b79cc36f4fa40eab6b95f32e0186b5c980f08aa631eed8c8df1dc674c0e449de80ff73f540944a47fd88c21b65a5aa0caff97f7b5ad867 +DIST firefox-130.0.1-en-GB.xpi 594144 BLAKE2B ba2b5a07c433619a927b532cf22bfca1fdc1628d47ba6eb9bf502368067bb84877dc7390d4a69658508c48d84feb3b9be9e5da956a6b67bd8fee70b4e6b87538 SHA512 32ff2089a3fb22c2505ab0184ac13b1fe6537bc1da0c1129b37d9456a1c72162c8eee26a14efa9eb3448d56860172b08d79cdf24ea983667498e55488532934a +DIST firefox-130.0.1-eo.xpi 625389 BLAKE2B bde64541450572d0443d5aa982b890d731a57a19dfab0c00d95f5a176bdf0f3ad170702f005e2815e28aaa5e8e3b9d53adb1966f4bd6607292cc9c11a7cd5d6a SHA512 78f988024c0fcd80e902ad15931548df8f2f9dbdd52251c2fb046de9e3f82196f9b09f51180cd84f16d29a2af518d770a9d3bcb0477e49646ba62640b4acd842 +DIST firefox-130.0.1-es-AR.xpi 637457 BLAKE2B c91694634945de4b642813d14ae3ce935df4f11d19274015a165efddf43205cf3374f90e09ebef20ba872467fd437102f213549a0eded9599a636fb94e1c63e8 SHA512 70ce2230ab2f1c948cea111f9e50fa575330e6a77db2b737e0832d57f032580be65e11080481ac0b49d9168ae1375bc8127a163b06906002a5faea3eaea0d2e5 +DIST firefox-130.0.1-es-CL.xpi 636365 BLAKE2B 407304f29981c014b6fff5fcb7d3660a21152d07dc71b8b0f0ba10c662d23c73448d0e83243d5da6d10f4f0f04b25599213a89ac288ba91acf5c30f313e71638 SHA512 36f16ab477b61b513fdb0b86bd734a2471c94662b15e6e6267f3598b42353396ae30b2b756080373a45d953b09fec2f676859d9741d8b25c694f7d6c69aaeb08 +DIST firefox-130.0.1-es-ES.xpi 624801 BLAKE2B 514b1a502740c8e2cf0b0f4e0563cf216e1777936c1d3a1fb33bd748debba049010b4cb82e37d82d672e81cfed947da55fdf904985709023ec096c52bee67da5 SHA512 5f43d763675cfb9ab422c2ded62af2c5e174bd5281a43b713497056584946f407fb43be4cba97e293c078c3478dd778da8fcff3a14ee37cc4e8f211edee9eaef +DIST firefox-130.0.1-es-MX.xpi 620032 BLAKE2B 63d18ee82da6b61e8a9e761cbdd4779739d920942465ada1b4328965b608405e1c6df4385d7c335beb211cf98f4cefe6a6da7589b72952c6d08c44c79603ad2d SHA512 4bd21fcfe06323e5f96f9ef234c7cdca7a3bd535fe0b9a1b567369d980554f1f6b2341d40565318cfdec98101a8778cb2fd139a79e647c6fa0b75a96d33e233f +DIST firefox-130.0.1-et.xpi 543284 BLAKE2B 57650f794bdcfd093e7c1b33f8aa20634e8a919140a29c8b4fb6869f181120ed8ceb15e666fabec6862fbdcdfaba2cf8bf4b7677867d5c983fbf4b9a5d25063e SHA512 954dabd83ea39a94bb489cfea77279e3c40263047c99e29170766460706169d257dcc8c0544f9d74478f280c67176389841fb8420cf8a8e253efe9b77b97f49f +DIST firefox-130.0.1-eu.xpi 603919 BLAKE2B 2427b80fbe06c14e3c795195cb1261affcf17c4df0b848e16bd42c13b0d99fef93d1e612c5a0697b0d6ab5486c84190fa4394f9d722ac2e1f4c9e44891f75d30 SHA512 debea1a31b61f12191fb16e69cc3c0a1db0422defe3b7da889bda85f7ff108115a70ca349ec6e6df54b8d6e69fb611c15dd2a77cdfcf9a4069c128221c4495f6 +DIST firefox-130.0.1-fa.xpi 593590 BLAKE2B 566859cebf579c53f3c26855b4c98b4e3e71ce53499a4248870e17c88f0150efa09cf160522e220e8a49203916f759981847bad0d7112c5e3572bb00d153a762 SHA512 6ba1a8ada50f98898e596af0a0545c32cbd0ce16920629e8586dd8c733c3c967d545a068e96371a3e91fb5e2c876239ee9ce73ed92bcb4947c5644744cb7aac1 +DIST firefox-130.0.1-ff.xpi 479257 BLAKE2B 9be1db7c76fcb22e8a681c67a2626e2beca8a4b82c77811a80d25d6a470756a42196c14f902d8c9cc8079d80b9c4981c936b56f28cbde392519355388ff74783 SHA512 04a27b27b040833d690422c19fdff00915c4b911043023b470decd7d8c31cd848922bd6a5da0df8769f8c6a5fa7d0b888e1e42ecb55317df91a70a0520e9d9c9 +DIST firefox-130.0.1-fi.xpi 617453 BLAKE2B 8274dd333a51a5a1dffaa3302e4c488c20eb50193647f78cefbde66dcbf1b6ee4812bf45762f46920a66be7e2c85be106eb8dfd9949d1340ccfa27d176d5ffae SHA512 c94efa2dc960a4adee04039cd83bb2407f4203c4ac6b0979e64f86510545708d45b29a27f26e57a040c905875d6fadab00e1c494f601d291a3b5bd5fff1daa84 +DIST firefox-130.0.1-fr.xpi 651033 BLAKE2B a34004984b9c2000631e61942b58050887d298a071adab067d6685e52aea322bcf97bbfef054e77cc26a2e0cf17276552cf8b5120a02f543dd2a9a849b758b08 SHA512 eb3e97905ec620cf69b5d6b445098b4d96951182ef4ca742035cb4a5f01adec0f3a4513d16570a55dfda2fc996c08aae2e31ccdc86d7112921f4b26b3d8122da +DIST firefox-130.0.1-fy-NL.xpi 632435 BLAKE2B bf56aad36530659f848fc1d416624e9d38392934313485daa6447e542422717d1a274903f7feb87af2946d57488b51f4c392e759927728a5d0f666b18c7a8b67 SHA512 eb72edd539850de4d15d37593fb05d82440698b1dc9e9b42a00517235843bb1fac62a9b7cd0c93a96dd7c69de5c65fdcc1ded3a6302cb683aa3b7dbb1e7abe43 +DIST firefox-130.0.1-ga-IE.xpi 474437 BLAKE2B 417aacab8644c253ace1912f7983adc27d75e4d647ae11ffc3c557846dad0cf60b2da883603675bc8f096c1ddd158d8b6911fdbb482fbc244ba3eb42b8d04217 SHA512 7132bf3b42a4895a5bb623e3f3c9406bfa75c94c88c985281d486bf605a9fbee8927b545aad955f2fa6098a917e99c2087529e94c31095d11308ab78ca0c7d94 +DIST firefox-130.0.1-gd.xpi 600330 BLAKE2B eb2ad966e7c9d6b03af0277b9e5cca82cf0637f4301e7c04f862b21e2547ce6be0803b94d3acf97db18c2037f9aa4dc1f512b1005232953a2047b0279b47f8a6 SHA512 a04cc3bddddf6e9a2920b24ec5a8f0785fac591d9181399b4900894552a2c570b171caaee44a1904e31125c03fa362961d3f9fd386b0db30d7cc9ee529e7d415 +DIST firefox-130.0.1-gl.xpi 608042 BLAKE2B 05076c4aa0ecfda164ce50781d9510122a7c84a5c6505d4d5c75672efe96c9f0504d05ab9d77515477f5a87ed6890ad6b79b61682718063a9268176b57a3760f SHA512 3f1ff7fdab524cf508cea4c9e4b6b11b4f524fdc09b10581c0492d4c705649b76ebee3649994ba9b68d64a88ccf0cbf7a5811ee55b4b48bc10a829a7406860eb +DIST firefox-130.0.1-gn.xpi 645995 BLAKE2B a2e1d2dc0d41a4ebbc607e88f6a6fed18ff6f043ecba47a7131775c0497ee74dc09741b212e975db5241718dfab241a317fc50a5502a608a0db6c53fe10ff825 SHA512 6e2bf891e7271342857aceec6c56a955d35e2c06f8bce8bef24bb253c70da44d7dd9601bcc3bb058c4c9b59eb81fe410c3c8ad945b3f7a24bb400484150e1df7 +DIST firefox-130.0.1-gu-IN.xpi 530816 BLAKE2B 630c78d645ed84df51a12d05c7e52a74e3d559707ecb972204cc3ff05a52cabdcaf2b8db191576dbcc0476aa09de0e6a388dc671a642442a498bbf967fa2977a SHA512 f2e419d4cc4da76ff85d626119508549670007dc8d53b9fdd465fa5393bb9fb6b712b439804b638b8dc946611aade099c0b2cc50501add2598f18cb3d1651693 +DIST firefox-130.0.1-he.xpi 640049 BLAKE2B 480c4e6b662324e7d897f0ca725578559f54a58da8ad277561df6297c0e76a3f44c159d74e4224daa71e00ab33fbf453dd5e5012089f8c425004bcac01113151 SHA512 53ef72de7a41744b43632628f062a000670bcb7989b8abee61ecc1f12059e69a206a2e070876f7c0d280fba552a010950318227b379239c4fe95bb3c3c604099 +DIST firefox-130.0.1-hi-IN.xpi 570014 BLAKE2B 1f84a195c74fca08e9b2d0239968258cdaa064579c995e60f0a093a2f906416d6b4c736e6d94929d508f0627c18ba86067aa186b379e203960025e84f4a967c0 SHA512 9d7934ae8c4373627f3ce1fb71f8565918a56e9ab1d4a3143c8dffd5266f956d880488334822e3e8a840a9506faf91f6d8350cb70f0f3a7ea175bf2b42067d8e +DIST firefox-130.0.1-hr.xpi 617514 BLAKE2B 8504aab835e705a9be34bd5e1830ff2af4b0d701acd33b1b133b87d7c70b67b3aaf07139e3f53be15c0494299be04b61e6a3db91f6b6774af8c734f4de19052f SHA512 65a277406cbec99de7d43339c29f7f7ffab465885ef3b342ec53e6c6eb08effb4343b710c91b24aac495652d2f63567ab67837127f8fe23456c1c17d3ab60db3 +DIST firefox-130.0.1-hsb.xpi 654764 BLAKE2B 316f9d8a2b549e52633ac4b62100bfa1f41998811e4a80abd1c15159c0b5da82ec0d26dc3f3634e0f8d451589dd649b4bf2183ef560c60187e7b189f40b37f1a SHA512 e332e7bc094352adcb26e7b031b98bc6458ba7e171bb61150eb0e4f8fdebf96068c83cafb3958280f8b1b30f9f40ffc55e0a43b98e2edc9775f584df6b3f9444 +DIST firefox-130.0.1-hu.xpi 659673 BLAKE2B fc63ef314f7d0958bd0bb3d887f658bf4f163ec487dd1e74ca97b1d93549044c7db2913510c9ff349eeb344dc2fb31a1d8baf4f2a0195b42b06d38b1839e95ea SHA512 031e4964a0fe1b63769a18f1b5dafb67445ab16558ba725b2d3a480dfaace6ba544f2d91411a64665579fd9a66f3c61a562b00d739323e1063f5a6ef893b1769 +DIST firefox-130.0.1-hy-AM.xpi 655058 BLAKE2B c32e31364268d28bc875e2b0a2f127c8ef61ac1512e06311eb4f93f29ce2b640074100d164def7782b00878a5d4be71b8720a5a8dafc8797f387c230087bb336 SHA512 3af9a071b2adbf9a7ade27c1365d1eeb5fc420e2eb4ebb71e6fa210bead5fbee8f87072129eb68b986d22b3ffe2a1e177790d18444216ecf5c7a12c57336fdca +DIST firefox-130.0.1-ia.xpi 620411 BLAKE2B e8e1c43e2e8c5d720a2503a2fd0f91f368749eddb52cda373cee6d8db6379aabe9c47bd7c8f1c06a26d48ce13df141559c1757ec89f21d5162f339306afa20ac SHA512 820e542af36c503984df6762ad4b799a9836bdc2d915fced6d553edf157ee13064aa647d349d0ec7e9977040e055c3443b0b12845d7eafa69ca25d2137d74573 +DIST firefox-130.0.1-id.xpi 588476 BLAKE2B d50e2c34ae02e3c6ce9f01630e9a2d427256f5d95abdef893e57fe48d4b01ccc0bc6fb10ee3791a8dd91189afabcee54eca96231551b10fd429c6ccfe621144a SHA512 ca07221442bd0f149af14420e14a1023b74ef75f45b8b271b4149e8f0a06f83fd15e1e515f7525357a61abdc69caeee18bf4d5be67a2020e42391b9cd523c906 +DIST firefox-130.0.1-is.xpi 622834 BLAKE2B 31ed4d2974ef67b433d1e7e35b0e6cdb80a12c909554e5dd55a3086ea2c7b2bc0f1d2d4cbc7d0b41badca96d0d83d0b6ce997abb67e7580cadcfbcc742eb26c5 SHA512 bb254da9a42170a7589db3c63921b70e4c57d7fb59f18b392d88863d7aa01ebdb1fa0c38c755fa3b460037b1b75287b6db611031f16508a1ddebcb5bb9be4009 +DIST firefox-130.0.1-it.xpi 576702 BLAKE2B edad2dbea5cf3ebf065197a73958266aba7c1569e9fbae8fefb605f67e7ed9337cb56d069199497b930f522ffbe0dd0b3cf5cb1d028baebad7e47d6bf1d2a954 SHA512 0a908e98ce60d7799985dbe757d877c884407ce5b1cdccaeebedd8c2d334c8a88603aa79dc4d589d6b9c960187a6ff2678f0dc8b9051c303e815bf41ee668329 +DIST firefox-130.0.1-ja.xpi 685869 BLAKE2B d64cb8eae144d29a7e7e76a30f406947eeb4444678fa95959317f8cfc6e8e6b53406aecf295151b2e3e0ea65790adbbba355804356c2be95cb8402edb6f68e17 SHA512 f1bdb6afe03f67ddfee4ec1cf191afc295f0f7e6a87a5dba1c7412f28f11c8fc9ed2cd3636ca50bed3381c05364484aea0d3875a28a209d7b212f45a271d7a0e +DIST firefox-130.0.1-ka.xpi 664728 BLAKE2B 24ee42b6ac463a7351cd97b0fea19185e113cfc2f0b2fd11222d05ed9333e4172d16665a3fa96da4c23a6b3a56d658bd3600566c908ff57963f5b2709a3431e9 SHA512 398786088c12a0807202da09fd9d9e864ce4dd95db948dc0c153db938cb06af169e228ede57d2c39b67674cd34fda0153ad426b8eb13100e7d7f6f26aacad3db +DIST firefox-130.0.1-kab.xpi 615475 BLAKE2B 6ec29037e455a60373bfd62abcd94019cec2e857c97e779a47104d132ab4d9cc15953314fa8eb85489291d4cb03a67dff754041d0a094e232395798501b5e993 SHA512 5970491521d32ba812d389a6b07a88945377ea87383e08dffbf162a0ec87eb2238385a95cea3ad31595c446b89768826e9dbeba8ca46b55145a87c600dff7ad1 +DIST firefox-130.0.1-kk.xpi 718488 BLAKE2B 45bef13c6422fab51bf0ee18aafbc26b9c8dc01e114fa9fc7ede4ad46f2e97f09f4bd7b6205ba091fdde8cf1d381fa6a0c4989c09c4cfb9e1b796a658fbee5fc SHA512 c7f096f9643f2e2d320169702611d112337120d45aa746cc7699225e4a7e8a2b49d9793c2be14afedf36ba8f79d980d9f45d0948f2cef513c69a5ae52433272b +DIST firefox-130.0.1-km.xpi 529324 BLAKE2B ee887ef84881457d801fb337ab753baa960dac673d905eb452d00b9581942f83fa91107e15d9324c42c32ccad4bbf6b78c3e3d49dd2cbb5242daa8f472a0a0bb SHA512 f25e765b7d3cc9063821a2eb774a627a6fa7e715aa4c7c9e4f14e33696b98009285eeed7bf7bd27315395eedee01685d6117b86519d8b6ef96a4945584e0c462 +DIST firefox-130.0.1-kn.xpi 494336 BLAKE2B 3c2cfd4547c59b03bee49c9aa8518468d6426ae09e991f3d554737a3bd5b58a11ef8a2bade9de4cb34ca172ba75735f3b1cac3b866e886d16c96796a2b0d3744 SHA512 976198d040a4a35fa1d0f31bc73ac80ebefffc5c48c7b413e34f215fbfc6208f4a5a58fef1ea0cb71cb760c74c3e4dd19e3b472ebde3db478562c5acb562f74f +DIST firefox-130.0.1-ko.xpi 671540 BLAKE2B e03b83a81b092f8cd0211f234da2d45268c85010fe285143b527c50d235652d237d3a7095ab30cc1043764dccd1738af985b6d34a34e2340ff46d01b28bce3f2 SHA512 224db5cf002393fac509551f3530bf8e2ccfb376319646123da746f71d581004c212bdb80def2b7bacc50656130628aff30561b739d29c0a71ba007de7a54127 +DIST firefox-130.0.1-lij.xpi 487639 BLAKE2B 50353111353c5f1a7e561762f26f84824f30a4a3f2870a3aba6e0a299febfd6e51182fc3bcc0cd346591d94706b4708d30aecf39c2cd8ac7eb2b41d3f051466b SHA512 b107a9d578bd599a8558a4696e9c8c414931195b97de6f7f13f191d5cc8a38f72590a0340a5d061b9fad3551c60ad87bbe3cc32cf6e4b3d5da00a522625ff2e2 +DIST firefox-130.0.1-lt.xpi 576379 BLAKE2B 964e3af4fcc5c16973a48d61676800ede6e61277b3b7a663b3f148220e0d322a24c3afe53a0fe3b7027d0f06fab14667f85abfdd0bde7230a1883fe0832f8e76 SHA512 a358a5aaea988fa4821d19e0cdefce9ef31c1a1045ce779d0e1791d02e945b9ebf6f9fb1d366f30edd5bd0268add9c2f6a5b1afe5a996a74927db0b0766a4815 +DIST firefox-130.0.1-lv.xpi 589133 BLAKE2B 9c3dc434c8d762922dcf0f95cec0bf5d7abcb68523d3cbc611b031a2b436740c816bca96bc3b1659698e9f0334cb9892dca3779799f8f39f74bb27a2c9d51faa SHA512 cec8b52df22e0405524cef46f4865ee56c837d55fff264f836fb0c39d1140eb9850682ac799a6a6b7f86a895df63df73744fefe7a8ccc21018ea7b6fd82e7f9f +DIST firefox-130.0.1-mk.xpi 496957 BLAKE2B f4826d63f30b898e7a6c1d717e17e25ae5cce009f1630b536dc53067278d2bd9d27cc1e065f252cfa53f25439b543ce39e6d90aff9ed9da4b5e2b2f8a370dc48 SHA512 2e10c7f142a3bf8e9f0235d5f0abaffdb0a317db3b810ddf476cc079acc424343cf143cf5dabb44c44a766c9fb3462a32a70151039d25dc8ab856450e408d12e +DIST firefox-130.0.1-mr.xpi 535455 BLAKE2B a045e69d4402a77f5452cedf445712a8fa178945a67bff2eef23a6f9c0fe9e2b99058fdcf62b0a2721f306254465e35da76ba977e535ad888b6db5c289ff9c9e SHA512 cf2475d5e51b278a37e9475c5e17432b9e054a4f115023d32d187e51ce6832940130bb37c9811a62030022589e5edc27857b827681c9f1db52f60a33d02210b9 +DIST firefox-130.0.1-ms.xpi 453253 BLAKE2B e423c978e20dd247b936cb4ae3ecbf5b4cea0a4f5df67b37c0c81b5571db673c1aff8b94265a95cc2cfd1fb274f8a2eab09e38d5878244ee04529e7c57d14787 SHA512 645a572e06bbd4e351ea8e4b1fbeeb806c3e2c2432df3670d6cbf215781154153f06ea5d16dda9200373eefcbd98fa74a3eeea0f79fd8e2b3d147b84ffacfa80 +DIST firefox-130.0.1-my.xpi 521877 BLAKE2B e310ca67f56d604987524cafc8eb4cadda5d527e7e9a5403671b36d014500cb6603f41b6c3541a8211fee70500b52fb1c4fac0c1378bcc2dc14f382b905db480 SHA512 7fbb800aa2e76fb2a0d5c60dc1d66cb60a8b232b9c1c8ff862e744a55963942901f36be661ef0a0ed0e72d9d07f259fab3eec057ab8f4271ab7c1716763928f3 +DIST firefox-130.0.1-nb-NO.xpi 615479 BLAKE2B 59f08a15e7357ad6e792da2d314ea1df4024a3d4296e517c62d65b05a268bf20bc124f05973f15b7a75749c05ed8bb34d132017fc50dd3f8427b10ffa54bfa91 SHA512 e1bc70f20410573d79f4d771875490532ba82bc7b079f8646258f32bc5bc81e4e91181d377efbf54fc72317122d05ae7b0b5f6cca89982341638651e8b70de68 +DIST firefox-130.0.1-ne-NP.xpi 517912 BLAKE2B d2ca2a2b6ace34acabe22af4012f46241a0697001c6ac67b4d1507531c36963c7432a979ba193b2f5ce408c8efded12ba903eb487a019c777aea41dce8e6b063 SHA512 bc99cd4cfa1f2e5674961c224da23ba84d09333d96e31d7d39cac11e0d07e2b097f5dbf2561411c4c7ab30705a01a07925b24b663aebd6cf07ab6de3ce0f3c3f +DIST firefox-130.0.1-nl.xpi 626073 BLAKE2B 83bfb345c7fc2e155cf8f275d8189f3af2b4a0a72d3ec83ead246891bf9c72caaa97582750e979028938fb62300cb7e1f8ea6a98ae3f3b895b08e2e34dcf08af SHA512 10eb6fea81e61e63087047a7175a757df9811ebdaf14468fda544e6dcf0c4dcd3300e193b66432fa0f99b68b901baa2fe1898ceac5709143f07b4515e6d41e07 +DIST firefox-130.0.1-nn-NO.xpi 619763 BLAKE2B 50319ef57c82e2e3e33d5d81fe73ce9247545dbd5bb0990911ce90a8d71bcff0204660b3e8c455cf18ec2db5fa42d5ef6713492c47ff988f13c82ae8c04c1760 SHA512 e165dd7f40a5063fd23b3357fa0c8ba6237f3069f60adba79a26f200a47b24ec763428ae2f75a3cd78d8f065464985ae959b6f353b185bc0dce06ce633920330 +DIST firefox-130.0.1-oc.xpi 616652 BLAKE2B cd8fdfc08bbe011ec8d64f43b08eae8047d0746d7b28a13215bcf99261617d515f2ad403d5b713f306ddb70c6ce3188ebb98f67e365be104f987e2962ac820c3 SHA512 e56aef552d57539f0cb73977c1d8455f3c7d69123529c0865b77aa0a7b9827e57dd8f55843608a91feb4697ea61fe205ede021e6f92b7621bb7cb95c1763dc98 +DIST firefox-130.0.1-pa-IN.xpi 700431 BLAKE2B 22fc9750c0358932547988e1a361a4cd49d19542776243988f2fa5dd8a46ee12ec4cf6afecbb804eb5ed8ed315a0f598beabbe603b3eea478e1f1abd9ee16747 SHA512 94f0ab1f59d141cc513fee4c1d9ce2f91301fec3f72204c11b1b317bc0cd72666b4a0325ab3b35f623753514adf13d2cadee4ffb2220d65eb38478534d6d716f +DIST firefox-130.0.1-pl.xpi 646170 BLAKE2B 7bb120b89df819babfab48483cd10d3a41eefa7eb61af4cb1ae1aa3f4d03981773bf5bb3ebf1de41a99598bfa533bd1d73a7343a5f0885c756f8bcb0e1ea9400 SHA512 8ed0658be7a860aa82c003b55724b403029fed21f7c5408002394de9706593ec8e6d6f91c62641335eace1eb8f21034107e72963e16f923e9225dddd3998e006 +DIST firefox-130.0.1-pt-BR.xpi 631641 BLAKE2B 65264c72450f54cfa77acdc782493c0137b51bf0a2a4b2fa911593617c3517882a448964956294db2de4a82714a4c29b9b3510bc822baeb90fe59c1f2a528352 SHA512 fe85923a8430e8c93aad8dfc1954b3a5fdf04d63fd6acf4e717bc93c24274650b30d16260046beb34962e98f5777c4d70b0ed061df1ad41889e17d1bf98d7b91 +DIST firefox-130.0.1-pt-PT.xpi 638062 BLAKE2B 230be97b41f30d2987a0bc46876de69e7f2b2ebfaef80cb481740b8b8807c05b34df72ba124ca2850800f1e20730cb1e29cfd62700939208dd90d894e0ab95fc SHA512 5eb7aeb3b3d548e63df0dc80602a765d65aeddef2e83837ae97684b3aa11cb092f7ad46e2dc6f7011eaedcd9088a93c8bd0b6cf692ea807fa39e07c778f448d0 +DIST firefox-130.0.1-rm.xpi 621692 BLAKE2B 9c876ed450284515454a74a6e656b0469d910f5b46d6d69a48dc03c4284318849631975c8138bca35d5700f8ae4b908f14ff0336f4a7faabee6d346921f2fd67 SHA512 5425eca8e174c4b7c3f9b6c404ac22bcd63c422e30e25bd9327dec5c53e4ccd6ecd1edd9cdc8b4c1972104ba1f84d42a27369968bee4aab3a6b2b4de20ce7f78 +DIST firefox-130.0.1-ro.xpi 553441 BLAKE2B f13f5fff3f7c440ae60dfe217d8b9e32839303d283c97fe66efe85a28e7d6f82e8dfe6fc1301b3c1e8d3ae25f87b9ac5e2545a7f2aa59da905bc73cae84e7eb5 SHA512 a522932f6f2d302e356fdb40dd3a0a9fff026f61a9a9d2c67adad8b877398cdea1c0caf3814022f489e78113c986f7f1c05e2d7ece36cdcb32aec22d4c178f74 +DIST firefox-130.0.1-ru.xpi 731301 BLAKE2B 4559638bfd7680452d09b4befafc140ecf7148211fae1d56ce34bca0ee9350ed8d6bbbababaf95e4db61b219e1be0698411b5889f85ecfc02f1494567dbafd66 SHA512 63be4f5f63b8aa8c5b1321be88786be694e76d479dc480914209d06a4d11486808a91066f34659e10e6eb9f86fbef038917e0a35ddef06bb17fc8704140ab44f +DIST firefox-130.0.1-sco.xpi 514791 BLAKE2B 7ae309d3d3be073a07d77cca728cfc3d898301b117f44996c6e52a75317ef829d927946b62f7d0803535e2fd73b04f2dfef8433b9332adbd8a6765e63aecac4c SHA512 58f02c270ee230633b3136b36a139c21e14cacaf5439d6d164f1866a54710538126462c3b9ab0a59acc692b8e79d760a204bd5496ab3348341da5e519fb212b9 +DIST firefox-130.0.1-si.xpi 616775 BLAKE2B da0365b8ce1657224fdafb610a80ada4cf01b60450be04f1024f11b90fc19c4e5c2adbdc2497bea3edae168b0e48eb0d4e6501a47aca92b9ffbd3d5992f99ce7 SHA512 a4a43c8fb0c2d2db1d8368ab87375e87c0ab9479d851c973299b78aa7d1f6c2f82a23153ecc4c45187eaa5df86ac779c28cf0a34d9433831052e90a74ac6bcaf +DIST firefox-130.0.1-sk.xpi 662597 BLAKE2B 8278c841a47dcde9cfecfe34a85f3fa8e1727b1a9f5c0d66f0e8865dea93ee0be253adf9e2a05bfdeecfe1f9d660b7720b02d08bc00bd1fba5e01c43198af6bf SHA512 9514e40a5592989eed8cf4914fda963f03b01db6dbe650a98944113934bcde04bc64d4854038d72766d2aa88fc2054112874d63456e9f7416680e6a082c17d50 +DIST firefox-130.0.1-skr.xpi 716708 BLAKE2B 28cf1ac8bc85e284a9039aa2af08ef2632709776e6a33a1ee6b934e0d7149274acde8c5e058dbbb3533c33fb5eb816930d61dd181bd5106fae8a4e383703afe3 SHA512 6156765233fa22710574de5709da456a0f259a9f76f27b4688f2825369b4495d9f110db533f858fdff9e958362fb738e01a851c55bfc0e9a4ce6d5df94de4cb7 +DIST firefox-130.0.1-sl.xpi 626603 BLAKE2B 9795beacadac0eb925702d7ccfaa8908b98607cfdfd2aa2668049faf6fb4a95d49bf63b63a8e9856586d0494b7b7a51f6c0e973024a796b760416b7e3649abfc SHA512 f7880aba4b609ec64b91535461e6c394466902acfee123d8775a1ba5e74e498adee032b2a6948588717226e7adc9e5da5f7fabbe420b104f423e6fc32c52e932 +DIST firefox-130.0.1-son.xpi 419751 BLAKE2B 0676cd8fbdeb810faf29739a551eda771627a00d86df4033fb1e4b8ae0a84397021f1774e7a560d085bfa87778050c1d80276145f065ae612803a4ae1f52d1f3 SHA512 783d4e3998aafd70cb477018ff51c0387f7e6799347e3d5c9be72ebbb30de141c382b96dbda0fdfffe8fc90599b745dcdf57063ee2cd5d020a55f89d11f9d725 +DIST firefox-130.0.1-sq.xpi 641273 BLAKE2B 1ce5960d609774d7ea81f310a8e155b30c95e0d546f24e6ec88f71afece0d716515af8b2780897356216fa6e06187f2deda2c88850d35c83384c93efa83e6561 SHA512 1b95267151ae75a08f0573aec725eac6daa174c601c461a26826f717ae41bdf1e2b9f7bb6f85afb91d808df0dada6acfbc92ddf0c7b8872bfc2558f4d9eae212 +DIST firefox-130.0.1-sr.xpi 643277 BLAKE2B 6068e52ead9e94f8a4645578da428b2fda54b406c942c1565d3893738dd15a4a7e8a3c5517e3e2bdc922d877e0383b39477ff9159443f22311729e6c0f9ad18e SHA512 65e6ce5c8db9966c747d07584744cb92c8b809314912d0026f70c3e52ead8aaf772b9cd293264d6e97378d6fb6263a1a8f8abc54f726b8455cec8bdcfee268f9 +DIST firefox-130.0.1-sv-SE.xpi 628341 BLAKE2B 8dc9630a99f3c2537ae8a6a302014630a6a6ec2600e9109698514c558a4f00ea2d0023d0dfd9f65baeac7bb768f3f20c5dbafe360bf06bcd344af6564e053f92 SHA512 cbbe26ba6794445b3c71c9fef9a291dec8972db5d3ead8d599646565b85c2c23d4cc058a76e184e918f0136da4820a5d08cb25a9022a6f1db3b7769f2caa305f +DIST firefox-130.0.1-ta.xpi 510633 BLAKE2B c6c912d0dbd2afc736fb37613c0aa0900a97e0110d1b18f1fcf17119aa93072b90dc10db7c9f6e9ecdfa35487aac506a8ec8ff094552bb0c224b95d2e6ee2d5d SHA512 e4e3722e552a77e83d610542594156fec2ef1d82d9a018f0e705f7bbf29baf0edc1be633903bd32d38ee0b302f2de5aa95c3e81ddbc501f6bc554d11044faa52 +DIST firefox-130.0.1-te.xpi 564564 BLAKE2B 04a91227c5b8e143a61be167ac9b42b6fb87117442f31a3768882d84bcb2dd2886694c656d1fc7b8a86dae0a73f6339730a799aa788c8703d2d2f4ad7b78899d SHA512 19d98999e6e66b60045fa749a4a6a99a1c1ef4ec8fa08aa141335f451c0d632e23d6daa1825f3844b10decb7e9e891c61393d90044a9c80e4123238f0ecbb63e +DIST firefox-130.0.1-th.xpi 701825 BLAKE2B ba6cbf6c86f28d561841d44ec0ad132694258721fc5e82a8b3bc4172432eccc81faede575d11fcfaa688a0606fddeeaca0d873faf961c4ec180aeef66fbcccbb SHA512 10f7cb6a5a3df079aebc3aecd9ddd7b9df8018b626c112f0343080121c38a49f5c0242dc6259d98b1f41fcb40bb0d29d65d2f18b0a26c2209d9cc7266f1edecb +DIST firefox-130.0.1-tl.xpi 537792 BLAKE2B efd3e6fae426e5b11ea95536ad430dd826545f864b7d3f6e5fc430733f94072f5b54e60d2b0c44ab47c708fd8283bbd821cf90f5b2918b35cf3c0a1d1cd50f89 SHA512 c5916ff68f53a515cc8bf75bbdd09941dc23d3843de851df88b9529872d392c0aaaaf1daca4b0eb080737ccedb1ad00b624bb8e36fc3ac543cb6a21714ddbc43 +DIST firefox-130.0.1-tr.xpi 641716 BLAKE2B b2219d1751bc340a98715c139335d1631970dbdc827d2f4b546c8b7d9eb6e9f5b7b8442449346826634895b3916698f2ed2da47d9dc78efec9961bd71ae3cd4a SHA512 136f2c66fd0d1dab5d6583759c4bec65e9eed4b46990b50a45e498271bdb085c959387a392a49d90733f69c5f5ee751b02d82f436966ec12b75f0e8d9ba60f45 +DIST firefox-130.0.1-trs.xpi 507742 BLAKE2B d7d3409856a152cf49b0444ca4ea63c5e0caabda66a0642ae108e868914954f2cbfad0d0740457b514f55e89422eb66b6df959c5f0de8b2743366d6935245e65 SHA512 9157fa5e7f22ab98308cc0b27c55b3a964a98de98bf3b70e228fe5152456c39552c9a273310d0b4ce4882c462b377e0ed2df8ee36733abdba57b8d07f5e09ba7 +DIST firefox-130.0.1-uk.xpi 714785 BLAKE2B a09677f81de8162f0838f72e85c46eab804daf2300371c74f23428778c98e6faf862a473f69c8976d32d761d3bf61954017910f90814ad1e16d85b866b7a934a SHA512 2d7a36a9cc04c7ea579ea1304ffc24293b7ccf3cc449c1874320c08c4186087ee0949e4ac9b7d14cec95a838bbcb5b25c6f19986cf1a1eb6af192cf6ed4cf014 +DIST firefox-130.0.1-ur.xpi 563626 BLAKE2B b4436ab964892f80e19645b947de35ac02abb49acd66eccad1247cc0bbc80acea992ae81052a1a229834dfa16abd5c489a83d9c03b96ef627eeebf7876667c83 SHA512 60aef5196f542b8c61f348081cd3b74386d0ae2c049b3937e596cd2dee97aa8c6b51fdce2ba5d13ab4ae4470673246fdc54a2f6f850ca968f536a97106214ef4 +DIST firefox-130.0.1-uz.xpi 482286 BLAKE2B ecf879c2c7e429306cf63cb873de262068878d82a2803da15a9bbe2a8e3eb85f3b31ff09b12c3b2fd9a86a1cab4ee835be1572bd342686177e681785ee204a78 SHA512 284f2eaa80511301e8ccf49ba5f76bb272d07f9352f07959dc92631684f59e4b84e6ff251d41663aedb9676dd00edf54f95b04b42bd28350878d93870af8b4a8 +DIST firefox-130.0.1-vi.xpi 666090 BLAKE2B e7e53f6c7db79a793d09f3759c085c91470b95bba7d33c8993c96ed1639ee2a22defaf41a6c02e50a23a6abd54c2210c8bb9841674c57b979f51c541b758d73a SHA512 756985027fd07194f94b0539dd58d6b66b896bfa8b3201594ba87bc6e3bdb09b794962e1e0f20e2a77c2f96cb3d5ab8125273062812cf435cb47603e5e790571 +DIST firefox-130.0.1-xh.xpi 420491 BLAKE2B 2bf9207de33261efd8f5515bfadc7e02b58043f9b5dd369999214e1a3045ba38c5017d0fbdedb8f7332f0e1a996c09f139a33c8ef75d7d3b0db1fa67ae4577ad SHA512 5f2b1cb7eff89ec6758b18805b2c24397374c29b8ebbc571ba85501cff1ef00633d1aa55befdea36733c57b5c474e6fce6a887b026d1d29f93f6b14424f9149c +DIST firefox-130.0.1-zh-CN.xpi 667372 BLAKE2B 66ee8d30614ce9c37e2db50c8c033b301c3b0cbd97a52d694af8456b8c15f6b080a8d1354e03ce6137635c0b248d4ca171d412413df16e2d07904702f0bd95d9 SHA512 38f2c470ee5e6d36d2b9ad758f5692c32134323e79588b3f3b47b5ead4bcf44bbfc82605e7ce222cc5f58daeabcf8d49c78cabbc7ddef7075dfdfc7cb2f5f562 +DIST firefox-130.0.1-zh-TW.xpi 669294 BLAKE2B 4bfe797d28c7406464406a6a6297227bb05e327a885a8960496c1740aa8787c88bcf04c48feaf3772e87a51f79ddd25f3896262e5cf91eccf52f3cd578dc794b SHA512 034ce10936ed67f20aebb15d7179ac479755a828598a8972f5b4fe6fb61b8677330fe73047add6b7ff24cdd555e3fe4e82c27793663dba604ebe2c4c4376d1d8 DIST firefox-bin_i686-115.15.0.tar.bz2 84361217 BLAKE2B a283d60dee23b7d843095a456c17541435f8ef5905210e4cf3eed7d8cde2691004555ff727e33bd3900d3d225ff174c8faa06c21676559dd15e6d82222fed7ae SHA512 d6ba65dc7e64394a1600648b4fa98fd477d082522b391b2a140f95486a7d44432d469b19d42f78e30d0bdb3a3be71626c7043ce9fa1da9383bbcc94550504035 DIST firefox-bin_i686-128.2.0.tar.bz2 87821863 BLAKE2B acc895062ac8d4fcd6ec3569f32d0e159e719bdcbecdebc8e5c74d60e09eb1c5ee00bb234c5d20a38cccffd2d1c6e2796afa01b12187025e0fc76691aa4b508f SHA512 e4e2993701b55ad87f0185f617fde77edde9e6266dd07c877a3caca889fc63511ea6613656ec05552af9f86ef779f787508a67dd944ea3ef42b8429699535fdd +DIST firefox-bin_i686-130.0.1.tar.bz2 88690852 BLAKE2B 960a33c954c3e1c1af45c4d477882dd122b08526adc500a871c1b08ed4d968055aaacdd8a24f1b5ebc4c4d6292baaa38f36e275e18c91c16864e24fc6b10a7ff SHA512 f6d9915c0ea6d95bcae9a795f40b55a776fa537e920cd37e97d232859341378ec97486f2eba130f1ae9364bb55ce6aff0af84a8da56d6d0901b76e0db5daeccb DIST firefox-bin_i686-130.0.tar.bz2 88602912 BLAKE2B be50caf7765344349f5606be137d9b3b743400b0a5acde6828d222127ea5dbc09ac4cc12b6991fb3d0f5f3f632108411d14642ef3780f4d34ef918800e94a78d SHA512 9b39e8924a2320d2dd173034bcdbe4e33d39de55dc262bdf60f69d4a12deac5a54a87758c9388ddf56944ad1d031eaa8f8ccfa14219e2e04c6009bf536377798 DIST firefox-bin_x86_64-115.15.0.tar.bz2 80447388 BLAKE2B b615d866ade5df67585ee6925e0d3c257cd5a146418ae895badf5bb09403b6a02af9f982b4b9668cb1c34226fd34402072cb0930c520ae92ba07691104ee61ae SHA512 0f8c880bf1662cc7f95d4864324e270a841ae772a85faca256a5b6bbdf71dd71726a91332cbd6dad1d4e56a98ad0d1d3c62df73bc9dcaf3f4294bd885525c866 DIST firefox-bin_x86_64-128.2.0.tar.bz2 86442218 BLAKE2B 32717364c39d4053dc14dd73b08211132c6b875d0d511501789349db600e1bcacb2c43d132c97b7852e23a9c61b16139d03f7ea02b2f309bf733e93919c09bf2 SHA512 ab53c070848984d8f5b1b567c84cf6d9c8afd19386e8099a5fb72d0f30b16048ac4198b987e71bb634dea18ce36969cf589d49a7930a566d80f39a8b3e5995f7 +DIST firefox-bin_x86_64-130.0.1.tar.bz2 87332542 BLAKE2B 59081c39cb5a56c2c0add457cc50a33f5c55562a1b43d577a600e6212c2b6b5202d71a2952513d87834e3110df105e16ada4128322e06235aa14e72909b1182b SHA512 1f3659253847a9a7931471ecf60cf1fb86706d2559b8d833505b6b2b6ce748820fd976f910346d68e8acb3a530cfdc7de43b2c108a59fef65c68f8774ef6b8bf DIST firefox-bin_x86_64-130.0.tar.bz2 87217103 BLAKE2B 24327af493e96d2687266820f096917780f86d897fc21261191c18f9a0e24c9efc3535f704e0c1189d4787fb6afd86aa31da983e63fadf60359765ea66d409a8 SHA512 43463dce67fc565b23b783f45b7443ee48e3f8f49cbd8eb0d2b3364d0d71bf38dcae3e5fa07fd0e5c7466b53d35db895938f424634a57084e97d4e8049b0df9d diff --git a/www-client/firefox-bin/firefox-bin-130.0.1.ebuild b/www-client/firefox-bin/firefox-bin-130.0.1.ebuild new file mode 100644 index 000000000000..7b882a514cbd --- /dev/null +++ b/www-client/firefox-bin/firefox-bin-130.0.1.ebuild @@ -0,0 +1,359 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MOZ_ESR= + +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" + HOMEPAGE="https://www.mozilla.com/firefox https://www.mozilla.org/firefox/enterprise/" + SLOT="esr" +else + HOMEPAGE="https://www.mozilla.com/firefox" + SLOT="rapid" +fi + +MOZ_PN="${PN%-bin}" +MOZ_P="${MOZ_PN}-${MOZ_PV}" +MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" +MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" + +inherit desktop linux-info optfeature pax-utils xdg + +MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" + +SRC_URI="amd64? ( ${MOZ_SRC_BASE_URI}/linux-x86_64/en-US/${MOZ_P}.tar.bz2 -> ${PN}_x86_64-${PV}.tar.bz2 ) + x86? ( ${MOZ_SRC_BASE_URI}/linux-i686/en-US/${MOZ_P}.tar.bz2 -> ${PN}_i686-${PV}.tar.bz2 )" + +DESCRIPTION="Firefox Web Browser" + +KEYWORDS="-* amd64 x86" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" +IUSE="+alsa +gmp-autoupdate +pulseaudio selinux wayland" + +RESTRICT="strip" + +BDEPEND="app-arch/unzip" +RDEPEND="${DEPEND} + !www-client/firefox-bin:0 + >=app-accessibility/at-spi2-core-2.46.0:2 + >=dev-libs/glib-2.26:2 + media-libs/alsa-lib + media-libs/fontconfig + >=media-libs/freetype-2.4.10 + sys-apps/dbus + virtual/freedesktop-icon-theme + >=x11-libs/cairo-1.10[X] + x11-libs/gdk-pixbuf:2 + >=x11-libs/gtk+-3.11:3[X,wayland?] + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libxcb + >=x11-libs/pango-1.22.0 + alsa? ( + !pulseaudio? ( media-sound/apulse ) + ) + pulseaudio? ( media-libs/libpulse ) + selinux? ( sec-policy/selinux-mozilla ) +" + +# ESR and rapid dependencies. +if [[ -n ${MOZ_ESR} ]] ; then + RDEPEND+=" !www-client/firefox-bin:rapid" +else + RDEPEND+=" !www-client/firefox-bin:esr" +fi + +QA_PREBUILT="opt/${MOZ_PN}/*" + +# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or +# overridden in the enviromnent (advanced hackers only) +if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then + MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm ) +fi + +MOZ_LANGS=( + ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy + da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu + fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM + ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my + nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru sco + si sk skr sl son sq sr sv-SE ta te th tl tr trs uk ur uz vi + xh zh-CN zh-TW +) + +mozilla_set_globals() { + # https://bugs.gentoo.org/587334 + local MOZ_TOO_REGIONALIZED_FOR_L10N=( + fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE + ) + + local lang xflag + for lang in "${MOZ_LANGS[@]}" ; do + # en and en_US are handled internally + if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then + continue + fi + + # strip region subtag if $lang is in the list + if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then + xflag=${lang%%-*} + else + xflag=${lang} + fi + + SRC_URI+=" l10n_${xflag/[_@]/-}? (" + SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" + SRC_URI+=" )" + IUSE+=" l10n_${xflag/[_@]/-}" + done +} +mozilla_set_globals + +moz_install_xpi() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local DESTDIR=${1} + shift + + insinto "${DESTDIR}" + + local emid xpi_file xpi_tmp_dir + for xpi_file in "${@}" ; do + emid= + xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") + + # Unpack XPI + unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die + + # Determine extension ID + if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then + emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") + [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" + elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then + emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") + [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" + else + die "failed to determine extension id" + fi + + einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." + newins "${xpi_file}" "${emid}.xpi" + done +} + +pkg_setup() { + CONFIG_CHECK="~SECCOMP" + WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content." + + linux-info_pkg_setup +} + +src_unpack() { + local _lp_dir="${WORKDIR}/language_packs" + local _src_file + + mkdir "${S}" || die + + if [[ ! -d "${_lp_dir}" ]] ; then + mkdir "${_lp_dir}" || die + fi + + for _src_file in ${A} ; do + if [[ ${_src_file} == *.xpi ]]; then + cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" + else + MY_SRC_FILE=${_src_file} + fi + done +} + +src_install() { + # Set MOZILLA_FIVE_HOME + local MOZILLA_FIVE_HOME="/opt/${MOZ_PN}" + + dodir /opt + pushd "${ED}"/opt &>/dev/null || die + unpack "${MY_SRC_FILE}" + popd &>/dev/null || die + + pax-mark m \ + "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN} \ + "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN}-bin \ + "${ED}${MOZILLA_FIVE_HOME}"/plugin-container + + # Install policy (currently only used to disable application updates) + insinto "${MOZILLA_FIVE_HOME}/distribution" + newins "${FILESDIR}"/disable-auto-update.policy.json policies.json + + # Install system-wide preferences + local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences" + insinto "${PREFS_DIR}" + newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js + + local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js" + + if ! use gmp-autoupdate ; then + local plugin + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do + einfo "Disabling auto-update for ${plugin} plugin ..." + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin" + pref("media.${plugin}.autoupdate", false); + EOF + done + fi + + # Install language packs + local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) + if [[ -n "${langpacks}" ]] ; then + moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" + fi + + # Install icons + local icon_srcdir="${ED}/${MOZILLA_FIVE_HOME}/browser/chrome/icons/default" + local icon_symbolic_file="${FILESDIR}/firefox-symbolic.svg" + + insinto /usr/share/icons/hicolor/symbolic/apps + newins "${icon_symbolic_file}" ${PN}-symbolic.svg + + local icon size + for icon in "${icon_srcdir}"/default*.png ; do + size=${icon%.png} + size=${size##*/default} + + if [[ ${size} -eq 48 ]] ; then + newicon "${icon}" ${PN}.png + fi + + newicon -s ${size} "${icon}" ${PN}.png + done + + # Install menu + local app_name="Mozilla ${MOZ_PN^} (bin)" + local desktop_file="${FILESDIR}/${PN}-r3.desktop" + local desktop_filename="${PN}.desktop" + local icon="${PN}" + local use_wayland="false" + + if [[ -n ${MOZ_ESR} ]] ; then + local exec_command="${PN} --name=firefox" + else + local exec_command="${PN}" + fi + + if use wayland ; then + use_wayland="true" + fi + + cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die + + # Add apulse support through our wrapper shell launcher, patchelf-method broken since 119.0. + # See bgo#916230 + local apulselib= + if use alsa && ! use pulseaudio ; then + apulselib="${EPREFIX}/usr/$(get_libdir)/apulse" + fi + + sed -i \ + -e "s:@NAME@:${app_name}:" \ + -e "s:@EXEC@:${exec_command}:" \ + -e "s:@ICON@:${icon}:" \ + "${WORKDIR}/${PN}.desktop-template" \ + || die + + newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" + + rm "${WORKDIR}/${PN}.desktop-template" || die + + # Install wrapper script + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" + newbin "${FILESDIR}/${PN}-r1.sh" ${PN} + + # Update wrapper + sed -i \ + -e "s:@PREFIX@:${EPREFIX}/usr:" \ + -e "s:@MOZ_FIVE_HOME@:${EPREFIX}${MOZILLA_FIVE_HOME}:" \ + -e "s:@APULSELIB_DIR@:${apulselib}:" \ + -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ + "${ED}/usr/bin/${PN}" \ + || die +} + +pkg_postinst() { + xdg_pkg_postinst + + if ! use gmp-autoupdate ; then + elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or" + elog "installing into new profiles:" + local plugin + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do + elog "\t ${plugin}" + done + elog + fi + + local show_doh_information show_normandy_information + + if [[ -z "${REPLACING_VERSIONS}" ]] ; then + # New install; Tell user that DoH is disabled by default + show_doh_information=yes + show_normandy_information=yes + fi + + if [[ -n "${show_doh_information}" ]] ; then + elog + elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" + elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" + elog "DNS traffic to Cloudflare by default is not a good idea and applications" + elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" + elog "(\"Off by choice\") by default." + elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." + fi + + # bug 713782 + if [[ -n "${show_normandy_information}" ]] ; then + elog + elog "Upstream operates a service named Normandy which allows Mozilla to" + elog "push changes for default settings or even install new add-ons remotely." + elog "While this can be useful to address problems like 'Armagadd-on 2.0' or" + elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security" + elog "concerns prevail, which is why we have switched off the use of this" + elog "service by default." + elog + elog "To re-enable this service set" + elog + elog " app.normandy.enabled=true" + elog + elog "in about:config." + fi + + optfeature_header "Optional programs for extra features:" + optfeature "speech syntesis (text-to-speech) support" app-accessibility/speech-dispatcher + optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas + optfeature "ffmpeg-based audio/video codec support, required for HTML5 video rendering" media-video/ffmpeg + optfeature "desktop notifications" x11-libs/libnotify +} diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest index 1c8ccad16b6a..e910cf7c80df 100644 --- a/www-client/firefox/Manifest +++ b/www-client/firefox/Manifest @@ -607,6 +607,7 @@ DIST firefox-129.0.2-zh-CN.xpi 659755 BLAKE2B 9ae434ddbf71f457f35104064d014915be DIST firefox-129.0.2-zh-TW.xpi 661609 BLAKE2B e93e814e9096baf65c99011b62bbacded0c9820cac8272ea16059e458efb686c71d9ae110d9ae365fdaba15253dce825a3cd884e9d18b84457a25fcb58a7550d SHA512 1cf2a02b4b7d9680d661fb969d1f249f1e4e7b3af16fdeb60f45b6825e893052206331df2b05cb603546601f9ba98f3e840672390c067991d30c6803b1bf78eb DIST firefox-129.0.2.source.tar.xz 559547204 BLAKE2B f0c79de337b5c55f9345b21714dd1707e8ca20f66f7ae383026c3737a7a1eeafa5048c188b91cc2ca6089aff944802cf04fcaeed81af7a42218925981c0e5550 SHA512 f6805a87e5cb4e437583916e3ec1b312dc73eec5fc06ce7a038b13bd7c6827b18cf383c30645d96623ce41675351f3023ec6b9f89d676f1c889994eae79f2c13 DIST firefox-130-patches-03.tar.xz 25780 BLAKE2B 143299d7efd9cb1c98f75f9952769295e397eb3e470772cd1c8f96601a8b940ed985c82ecba04e57a20d6b66fe9152662ef7bc1d405d07b97461822920050f2b SHA512 1822064d2e98e845f419e391d0fe56e24ec4d7f9cc814a99020e05658fcb49fbd56d2d6b1fbc85b365b6daa4d405cd404f74ee8ce2a9f05122d87786629f3dab +DIST firefox-130-patches-04.tar.xz 19108 BLAKE2B 40fbed8cc4d86cdc4c87c69abe8f23c8738dca2c09fe819984716477955df16534aa3aa1361af8e616743b904d611476a04a9f76ac6eaa1862f15dba76ab30e9 SHA512 eae0d2284380926431152faedefd3392f01df8ea96f8282fb40d781a4e857e3e7ba871c333981e0b0ce05401969f3ea42a36ac71c469f320180ef827e1b9c0e3 DIST firefox-130.0-ach.xpi 467588 BLAKE2B 13924fd0dcc0d0c1a2cf7760ef263d257da8d6f761bd48d503c6e7fa8438996f36f83424383d6b285ed76eb6f284e45eb83ea19dc5892d99e0b5851b4635e4a6 SHA512 fa41e89ab9237b76094b660d439a8100bcf971c81c7f4f628f908978cc22f2018f21fa10a415925ce0f34e00815efb9f55210bc4629b9185035a26beac0ea5f6 DIST firefox-130.0-af.xpi 420693 BLAKE2B 7e93d3dcf9a7e9ff348fac82174e0b103a6e3d9c6fe57b3500263211cf1e325b701343d01f6117669eef0197d0fb31e75be9ff0e7bbae3f952183ece781c15ad SHA512 3add870cee9dae595b7b4fe7f2e1a122f51ef937090422b7ea5723b87500b0daa7e90ff5e0a9f1e5346dfaf9ed78eda4df64b1dc5d4cc3732e76f626d38551b6 DIST firefox-130.0-an.xpi 509179 BLAKE2B 1727e110a5328e5cad21a601db2b61318441fa58a4289584fa7dfeeaffc3591b5e14f45342365fab0e34db9210e0ead4b1a1d603b5199fe216a1227db1bf9e91 SHA512 ed9520e7c2825959e5239ecb7e4e56850fcd20abf9f749b8990d77a418aadb691ddef95de0c4193de7351ba59c4c96ad766f07cd19c1b893d3315ec814936617 @@ -707,4 +708,105 @@ DIST firefox-130.0-vi.xpi 666085 BLAKE2B b80be3d3c30aec668164abe5461677aaead06a6 DIST firefox-130.0-xh.xpi 420486 BLAKE2B 953135839c7a648b4b02459ceb47bfd6e7bf62a357eea4c7fe976409a6779199ba719c0cca662fac1d8fbc2865e5e529d7c656088a6509c072b52343170fb1bc SHA512 1cabec451c045df427d8b2dca6829f098ab99a4f7eb28c3e53b6a36b556b4f7471f9e7c3d4e991a03c0a925361a15897976c156eb5a9c8add1a325046f6227e0 DIST firefox-130.0-zh-CN.xpi 667377 BLAKE2B a8ce2ee629c30204726f4e790310180bd2c31866adeb6a25d9e28f48e97dc7f27d9f9b3109e482ac08cfe98316fe9344515054151b3c3d37eee3a6058c0327d4 SHA512 a38673a73056f3ebc301f8cfb2c9fd8e5d764b9224294aab42c3b654dda95bc811a9ee9b1ed707072b39222b05c49deb019a8f51abe135ba9b26f800c928fd39 DIST firefox-130.0-zh-TW.xpi 669293 BLAKE2B 8743ecdfa6fff21ba6d1c199bb24fca9b753b874e905a84ce805aa7a3e10d1871c22e119ab46b452be2c55cafdef9e8ba8a90e261078b0451ba3cb2e9054645e SHA512 6d12d92f82a7434bc7ffe3d0ab6e706ef230cb31b7889c8b0b4312f3cd0f4712ce59e4b576802b79d5bef552d3c07539d27394288c0f6e0e54998a55f44a62d3 +DIST firefox-130.0.1-ach.xpi 467583 BLAKE2B 0fb54abe50786f852b02b7be04f70f0925ba95293f702b4149dbecb80f5eaa44f0017772dbb0d30876014144dfdc8c388b34fd30e5e580d1bfaceeb751d4325c SHA512 b879138b551a00793fc393479d5dd21b43b40f1e7947f524c6584469f8fb8b612cad84ce327a42dea636c5d8e61702ab5d74728bf2aad7d4c3e806db1f40c398 +DIST firefox-130.0.1-af.xpi 420697 BLAKE2B b752154782fb91948f0552f01c4be685509f7d87251af85b73c02cfaa8da27f93f914ca6f826562014a59c8d567b451c26087aff8462eb53b5d5df5c4b402f55 SHA512 5c0cc40695328520e59d14fd409067ab2b8ea1ffe5295afb6e7d52a8df57feeaf10b22068e7fc84099921b5faff1bccc55c10d35f7d34ee74afee07cf68be6eb +DIST firefox-130.0.1-an.xpi 509178 BLAKE2B c14b948c15b50b8c6d0c50e22404dd76ebf649fa3bb3197f17cbe8d8021021aa8299598c2b0c7a28c850c0cf41842e718d80b35d1949d131e661db2a263af585 SHA512 70883c02b8127774fd9f46b0edb13d38ac518f765ed40a26715c73ca645c2fc6a5e94360f1bf245753fde895f232d523812b0c4382a846bb004c4a957f0ec2c9 +DIST firefox-130.0.1-ar.xpi 615231 BLAKE2B 66af66551f2826772c28824bac9fe869e15dcb24cb905d65eda0a1a92ebdc71b0e55e0da971e23f12f2be682534133b2d2382389df7ad597a418189b9b422fec SHA512 d838e2f6071612b26ef9cc50a7b28afe4fdd137abecb08e74da08f1fb8d264bb81ca34925d56ac6762264c389960f10c6ec78b319a09d108ffdc096773b68efe +DIST firefox-130.0.1-ast.xpi 499640 BLAKE2B 2178e72c80dee657341dc7ac50a38ca7a5db47a7e84927d4f247e72100f719bed992e25e262b4ab9b72d424f322b918a474ab50c0349b430bd16ea0b08cd36e0 SHA512 e9d74ecc3aa26886769a9d66f095f78fea3ad81a8b52b4b137843bca103f2e98accd5e97a03312a898a67ba72178b5a1169e8ce74c9daf8da4edeb57b56d1fa1 +DIST firefox-130.0.1-az.xpi 494303 BLAKE2B d3f79d4bea3d25405869bbd5651a722b8a4e221704fed963c50f97f0b1e61e520b888a867f1caca72f6dd478f6ac5b908b96c00849ba1fbc703a14005ed0f84e SHA512 558a834cd245674f41589d375085b615f0fbab080f211f5c278f33d887750415936adde7108ab622a02643214b06303973c93388d2a84581a0883b20be9d7c69 +DIST firefox-130.0.1-be.xpi 726468 BLAKE2B 43597f04ee93fe67a0a8fd01f6f60b63f8d74f9eb846fc1259e7b3eee0ff9f1d8280859cc7b675e493c63645e8b9af8169a7155c0bea943761aeebe4ee1d62fe SHA512 84197b8895d0f77b3ae77fed0d6de60f310561807830dceef813a576d01f8ed45230d10a4ea36aaa5054a2923c40f1c00d8c6f2630391d0eeaaea3aac63fe1e3 +DIST firefox-130.0.1-bg.xpi 640067 BLAKE2B 6cb96d904a0acce2b8a16e30a3ef46841a0d2cce86c65e3beaae519f5f13879d67ab30baa3b348f462a3e42b63db73341206f2decfc1713066662aac9304a847 SHA512 70837775c77bbdd2906abb9fa3d294bfe5ada3f6d5c123dc18eddf109e92dbb9bcd8f2b4ee106ab2910b1bb6dbad21aea9302ceb767e232de96f4c32316b15b8 +DIST firefox-130.0.1-bn.xpi 585048 BLAKE2B 812000a6fab4296ef6b11ac07c6f749cdb8ac5ad70f394b2314594e0859d06b2454f416d0edd98706c63cb111cdb8649a37cb7fadf2bae239adffe24b2c9ef98 SHA512 7022738a6c470972d625891a2b7e9496b9e5751d709f821b6b71916003d04cfcb558a4a2b21d440c86708387e4b4401b72bcec203fe8318d11ea210eaedf1c00 +DIST firefox-130.0.1-br.xpi 593551 BLAKE2B 1bdc7de29b19ef8126450f6db2b82c8c4b36997008dca781226e22f0574a94cf41f0c348e00d3308d18975840ee3756edd4b7bec894192221dd722e2b7b4e31b SHA512 8317569712f534c28df19c490d0a3cc66ff172af78410551cb6e68af0e05db7b06202e73c527228b5be95daa1080351744208d530b0cca8fd2c60af90068146b +DIST firefox-130.0.1-bs.xpi 512749 BLAKE2B 30c7c22875098dafcd045f4841818a0aca10a3d07f964369d65e1bccf58d2060b165de5243a2736b61fa15778908014dfa2a174e256a7d8bf9eb9c786a198a6b SHA512 b89583038b683f200b85c51ff4f5fc3b348feef329220fad038349cded70c6c44bd775362035e21c8d05888e2c0ad3eb5f50481ded11f57fbd9625dba169d76c +DIST firefox-130.0.1-ca-valencia.xpi 549198 BLAKE2B d5cf7308f02579540e6e93f56ee512f5fc7aceae0a85a435995852463a065f03d3d6feadae8f5156eda7a4efff75603dd1543bd62b677c7abf550a5dc2fb7a2b SHA512 65cbd8d9de8b796a0bdec2314049a48d4fdc417cd82264b1b1b3f39824e1282f3af5a5ea0d62a7b155a7adc97ead6f810e47e9a58d67cfdb303b934dbfaccea6 +DIST firefox-130.0.1-ca.xpi 600849 BLAKE2B 7dca1f77db1eca02bf59367d6d3587777f61ae839e57d73424dfc0478571cf88ee89cfa41a99da02daa81046620b05d0a1b1e6cc1c8265ce18c7db73860a346b SHA512 096849b734a3ddb68b4ff08cc507772e5301acebb186ee3a8f71d5cc01ddd5a7da0dc0897253fa59c8bbd057c1eed86ee73a21cf6481709feb914957ce216343 +DIST firefox-130.0.1-cak.xpi 596821 BLAKE2B 141b69ce46cd89180e38a37520488e305e8d6d13efd0cbc6f3a3e2564c25d07e52c60ab706f5fb80b188130006148e4e292d1e83d258a8de925ed2611ec6f833 SHA512 9f32953cf28ba7add1c762a48b01d9bf907d66b11478a9e9ebb9c9ada91bab4029391c6b5fe2a76c9d422a268b216af5a101daa7ac82fc228c8432a4d5fd90e1 +DIST firefox-130.0.1-cs.xpi 669123 BLAKE2B 25a91327b8f7307509de1c8992205b34e0a535d2a9d5d7d135a0da65662b31e66eaa260c96c37a453ce2abf32b80b13fbd9ce1a0fe17e0e16b1664f93fd9de52 SHA512 cb6b1c4e1322b5c8ff68ed09dce8908b85fd22c80d74318785226234ef5e4a010b7afdde46caf299d0101fd048d6f1bf1a857bb201c51ea3128f67757191e06b +DIST firefox-130.0.1-cy.xpi 633976 BLAKE2B 44e33256db532b13c763bc385a14e220e14e548da809c686495382e3c832bc2d03a1c852d4fac4e6c0ef85d59093d6c3da629f588d7a17fd5a53b908fffb3b72 SHA512 80357431c1f90fd859b818c8b6fd04601f198533783994f292f9aea2bd8988e150775924970b8c04817f51e442fdb8578b01e7df22939b817af7126674f0e539 +DIST firefox-130.0.1-da.xpi 622385 BLAKE2B e2ef41fa724727a0f063c549db30c8379dd0ba0d309ea798c4003e0329581726ec863559e466e0d6738b7c93a39bc05147df2b537a9ee6354c5479c1ab4bf1a8 SHA512 fe8693f5962004d9bd8ea99703866515985a4413519741a4400cdc6167246888397633256b95924bdd2e212e47f4ca8e64b96fc5d1e653916bea5d003724c66b +DIST firefox-130.0.1-de.xpi 644009 BLAKE2B 3e2f926a8f66f11107d2e37155dfacbd36dcf54d6fd20547f0fb1ab1b497be465852d8fc527367e509e20bb7e89e3f8f50a8637e56c562c6a5152ee218f1562f SHA512 2bebc0ce27cf86d0434a0adb7f3d12ff134338b6a962dfe2d28d84b99b24f865a5eac39c15fcfedecd0d0d551fc603525809e5388c4272f784d0350034826b3e +DIST firefox-130.0.1-dsb.xpi 658771 BLAKE2B 1cd178709f0b96eb28f9f20546a505a5a224f8ec567d4ab7beea0765ad4ffb9dbb411c285b45f523fe9d787c103ed4ff4a5d637fe65936017bf62223e5e468c0 SHA512 d034b9ed989d2aad957f7b208e2fbfe37de463958853d087bd23d0f16042c84ea0634332c3db25c2edb3c6135d6244b4233df321167b58f66950813e0db759a1 +DIST firefox-130.0.1-el.xpi 743369 BLAKE2B e769a69498b374a30e92b62d20bb5fb299818767b31ab7717b91b325f4f2c69b082ffc50a6991f2a9298d940fe54bed6a961941704464af7174fc3b5366570dd SHA512 28aa370bae828eb8c0f0b88d6dc25f7354b5aa05c9011dbc357cf25b1c3e2dc8c02345dca0e699c39838ebd03e4a5329285302758d342ec9e42a0bea6f46d4fa +DIST firefox-130.0.1-en-CA.xpi 592992 BLAKE2B 9eee5fed96ed317341f74f2ff2acccbfb042bbdcaf45d1eaa7c2f2e36af1af0750521cf39ddde8284d453cdd4f2089b16f4a2469da3df920ebfb1d69799651b8 SHA512 79829881745455e581b79cc36f4fa40eab6b95f32e0186b5c980f08aa631eed8c8df1dc674c0e449de80ff73f540944a47fd88c21b65a5aa0caff97f7b5ad867 +DIST firefox-130.0.1-en-GB.xpi 594144 BLAKE2B ba2b5a07c433619a927b532cf22bfca1fdc1628d47ba6eb9bf502368067bb84877dc7390d4a69658508c48d84feb3b9be9e5da956a6b67bd8fee70b4e6b87538 SHA512 32ff2089a3fb22c2505ab0184ac13b1fe6537bc1da0c1129b37d9456a1c72162c8eee26a14efa9eb3448d56860172b08d79cdf24ea983667498e55488532934a +DIST firefox-130.0.1-eo.xpi 625389 BLAKE2B bde64541450572d0443d5aa982b890d731a57a19dfab0c00d95f5a176bdf0f3ad170702f005e2815e28aaa5e8e3b9d53adb1966f4bd6607292cc9c11a7cd5d6a SHA512 78f988024c0fcd80e902ad15931548df8f2f9dbdd52251c2fb046de9e3f82196f9b09f51180cd84f16d29a2af518d770a9d3bcb0477e49646ba62640b4acd842 +DIST firefox-130.0.1-es-AR.xpi 637457 BLAKE2B c91694634945de4b642813d14ae3ce935df4f11d19274015a165efddf43205cf3374f90e09ebef20ba872467fd437102f213549a0eded9599a636fb94e1c63e8 SHA512 70ce2230ab2f1c948cea111f9e50fa575330e6a77db2b737e0832d57f032580be65e11080481ac0b49d9168ae1375bc8127a163b06906002a5faea3eaea0d2e5 +DIST firefox-130.0.1-es-CL.xpi 636365 BLAKE2B 407304f29981c014b6fff5fcb7d3660a21152d07dc71b8b0f0ba10c662d23c73448d0e83243d5da6d10f4f0f04b25599213a89ac288ba91acf5c30f313e71638 SHA512 36f16ab477b61b513fdb0b86bd734a2471c94662b15e6e6267f3598b42353396ae30b2b756080373a45d953b09fec2f676859d9741d8b25c694f7d6c69aaeb08 +DIST firefox-130.0.1-es-ES.xpi 624801 BLAKE2B 514b1a502740c8e2cf0b0f4e0563cf216e1777936c1d3a1fb33bd748debba049010b4cb82e37d82d672e81cfed947da55fdf904985709023ec096c52bee67da5 SHA512 5f43d763675cfb9ab422c2ded62af2c5e174bd5281a43b713497056584946f407fb43be4cba97e293c078c3478dd778da8fcff3a14ee37cc4e8f211edee9eaef +DIST firefox-130.0.1-es-MX.xpi 620032 BLAKE2B 63d18ee82da6b61e8a9e761cbdd4779739d920942465ada1b4328965b608405e1c6df4385d7c335beb211cf98f4cefe6a6da7589b72952c6d08c44c79603ad2d SHA512 4bd21fcfe06323e5f96f9ef234c7cdca7a3bd535fe0b9a1b567369d980554f1f6b2341d40565318cfdec98101a8778cb2fd139a79e647c6fa0b75a96d33e233f +DIST firefox-130.0.1-et.xpi 543284 BLAKE2B 57650f794bdcfd093e7c1b33f8aa20634e8a919140a29c8b4fb6869f181120ed8ceb15e666fabec6862fbdcdfaba2cf8bf4b7677867d5c983fbf4b9a5d25063e SHA512 954dabd83ea39a94bb489cfea77279e3c40263047c99e29170766460706169d257dcc8c0544f9d74478f280c67176389841fb8420cf8a8e253efe9b77b97f49f +DIST firefox-130.0.1-eu.xpi 603919 BLAKE2B 2427b80fbe06c14e3c795195cb1261affcf17c4df0b848e16bd42c13b0d99fef93d1e612c5a0697b0d6ab5486c84190fa4394f9d722ac2e1f4c9e44891f75d30 SHA512 debea1a31b61f12191fb16e69cc3c0a1db0422defe3b7da889bda85f7ff108115a70ca349ec6e6df54b8d6e69fb611c15dd2a77cdfcf9a4069c128221c4495f6 +DIST firefox-130.0.1-fa.xpi 593590 BLAKE2B 566859cebf579c53f3c26855b4c98b4e3e71ce53499a4248870e17c88f0150efa09cf160522e220e8a49203916f759981847bad0d7112c5e3572bb00d153a762 SHA512 6ba1a8ada50f98898e596af0a0545c32cbd0ce16920629e8586dd8c733c3c967d545a068e96371a3e91fb5e2c876239ee9ce73ed92bcb4947c5644744cb7aac1 +DIST firefox-130.0.1-ff.xpi 479257 BLAKE2B 9be1db7c76fcb22e8a681c67a2626e2beca8a4b82c77811a80d25d6a470756a42196c14f902d8c9cc8079d80b9c4981c936b56f28cbde392519355388ff74783 SHA512 04a27b27b040833d690422c19fdff00915c4b911043023b470decd7d8c31cd848922bd6a5da0df8769f8c6a5fa7d0b888e1e42ecb55317df91a70a0520e9d9c9 +DIST firefox-130.0.1-fi.xpi 617453 BLAKE2B 8274dd333a51a5a1dffaa3302e4c488c20eb50193647f78cefbde66dcbf1b6ee4812bf45762f46920a66be7e2c85be106eb8dfd9949d1340ccfa27d176d5ffae SHA512 c94efa2dc960a4adee04039cd83bb2407f4203c4ac6b0979e64f86510545708d45b29a27f26e57a040c905875d6fadab00e1c494f601d291a3b5bd5fff1daa84 +DIST firefox-130.0.1-fr.xpi 651033 BLAKE2B a34004984b9c2000631e61942b58050887d298a071adab067d6685e52aea322bcf97bbfef054e77cc26a2e0cf17276552cf8b5120a02f543dd2a9a849b758b08 SHA512 eb3e97905ec620cf69b5d6b445098b4d96951182ef4ca742035cb4a5f01adec0f3a4513d16570a55dfda2fc996c08aae2e31ccdc86d7112921f4b26b3d8122da +DIST firefox-130.0.1-fur.xpi 643019 BLAKE2B e99928b47d810adc2163b864ec720eee04e8204bde4cc6bfd98b3f510f22e5492c833843ff4c54e288510c1db99534275e4d2b60e939f5a1af2fce715ce1ca1b SHA512 2559f9877bd9069bcb852cb42e5b3f7e25028327820b55e943aac2e134bfefb46e0e38a66ab461b2cedfbdf9e824ea1b72ba0711e276d80d4631bb777a8435e3 +DIST firefox-130.0.1-fy-NL.xpi 632435 BLAKE2B bf56aad36530659f848fc1d416624e9d38392934313485daa6447e542422717d1a274903f7feb87af2946d57488b51f4c392e759927728a5d0f666b18c7a8b67 SHA512 eb72edd539850de4d15d37593fb05d82440698b1dc9e9b42a00517235843bb1fac62a9b7cd0c93a96dd7c69de5c65fdcc1ded3a6302cb683aa3b7dbb1e7abe43 +DIST firefox-130.0.1-ga-IE.xpi 474437 BLAKE2B 417aacab8644c253ace1912f7983adc27d75e4d647ae11ffc3c557846dad0cf60b2da883603675bc8f096c1ddd158d8b6911fdbb482fbc244ba3eb42b8d04217 SHA512 7132bf3b42a4895a5bb623e3f3c9406bfa75c94c88c985281d486bf605a9fbee8927b545aad955f2fa6098a917e99c2087529e94c31095d11308ab78ca0c7d94 +DIST firefox-130.0.1-gd.xpi 600330 BLAKE2B eb2ad966e7c9d6b03af0277b9e5cca82cf0637f4301e7c04f862b21e2547ce6be0803b94d3acf97db18c2037f9aa4dc1f512b1005232953a2047b0279b47f8a6 SHA512 a04cc3bddddf6e9a2920b24ec5a8f0785fac591d9181399b4900894552a2c570b171caaee44a1904e31125c03fa362961d3f9fd386b0db30d7cc9ee529e7d415 +DIST firefox-130.0.1-gl.xpi 608042 BLAKE2B 05076c4aa0ecfda164ce50781d9510122a7c84a5c6505d4d5c75672efe96c9f0504d05ab9d77515477f5a87ed6890ad6b79b61682718063a9268176b57a3760f SHA512 3f1ff7fdab524cf508cea4c9e4b6b11b4f524fdc09b10581c0492d4c705649b76ebee3649994ba9b68d64a88ccf0cbf7a5811ee55b4b48bc10a829a7406860eb +DIST firefox-130.0.1-gn.xpi 645995 BLAKE2B a2e1d2dc0d41a4ebbc607e88f6a6fed18ff6f043ecba47a7131775c0497ee74dc09741b212e975db5241718dfab241a317fc50a5502a608a0db6c53fe10ff825 SHA512 6e2bf891e7271342857aceec6c56a955d35e2c06f8bce8bef24bb253c70da44d7dd9601bcc3bb058c4c9b59eb81fe410c3c8ad945b3f7a24bb400484150e1df7 +DIST firefox-130.0.1-gu-IN.xpi 530816 BLAKE2B 630c78d645ed84df51a12d05c7e52a74e3d559707ecb972204cc3ff05a52cabdcaf2b8db191576dbcc0476aa09de0e6a388dc671a642442a498bbf967fa2977a SHA512 f2e419d4cc4da76ff85d626119508549670007dc8d53b9fdd465fa5393bb9fb6b712b439804b638b8dc946611aade099c0b2cc50501add2598f18cb3d1651693 +DIST firefox-130.0.1-he.xpi 640049 BLAKE2B 480c4e6b662324e7d897f0ca725578559f54a58da8ad277561df6297c0e76a3f44c159d74e4224daa71e00ab33fbf453dd5e5012089f8c425004bcac01113151 SHA512 53ef72de7a41744b43632628f062a000670bcb7989b8abee61ecc1f12059e69a206a2e070876f7c0d280fba552a010950318227b379239c4fe95bb3c3c604099 +DIST firefox-130.0.1-hi-IN.xpi 570014 BLAKE2B 1f84a195c74fca08e9b2d0239968258cdaa064579c995e60f0a093a2f906416d6b4c736e6d94929d508f0627c18ba86067aa186b379e203960025e84f4a967c0 SHA512 9d7934ae8c4373627f3ce1fb71f8565918a56e9ab1d4a3143c8dffd5266f956d880488334822e3e8a840a9506faf91f6d8350cb70f0f3a7ea175bf2b42067d8e +DIST firefox-130.0.1-hr.xpi 617514 BLAKE2B 8504aab835e705a9be34bd5e1830ff2af4b0d701acd33b1b133b87d7c70b67b3aaf07139e3f53be15c0494299be04b61e6a3db91f6b6774af8c734f4de19052f SHA512 65a277406cbec99de7d43339c29f7f7ffab465885ef3b342ec53e6c6eb08effb4343b710c91b24aac495652d2f63567ab67837127f8fe23456c1c17d3ab60db3 +DIST firefox-130.0.1-hsb.xpi 654764 BLAKE2B 316f9d8a2b549e52633ac4b62100bfa1f41998811e4a80abd1c15159c0b5da82ec0d26dc3f3634e0f8d451589dd649b4bf2183ef560c60187e7b189f40b37f1a SHA512 e332e7bc094352adcb26e7b031b98bc6458ba7e171bb61150eb0e4f8fdebf96068c83cafb3958280f8b1b30f9f40ffc55e0a43b98e2edc9775f584df6b3f9444 +DIST firefox-130.0.1-hu.xpi 659673 BLAKE2B fc63ef314f7d0958bd0bb3d887f658bf4f163ec487dd1e74ca97b1d93549044c7db2913510c9ff349eeb344dc2fb31a1d8baf4f2a0195b42b06d38b1839e95ea SHA512 031e4964a0fe1b63769a18f1b5dafb67445ab16558ba725b2d3a480dfaace6ba544f2d91411a64665579fd9a66f3c61a562b00d739323e1063f5a6ef893b1769 +DIST firefox-130.0.1-hy-AM.xpi 655058 BLAKE2B c32e31364268d28bc875e2b0a2f127c8ef61ac1512e06311eb4f93f29ce2b640074100d164def7782b00878a5d4be71b8720a5a8dafc8797f387c230087bb336 SHA512 3af9a071b2adbf9a7ade27c1365d1eeb5fc420e2eb4ebb71e6fa210bead5fbee8f87072129eb68b986d22b3ffe2a1e177790d18444216ecf5c7a12c57336fdca +DIST firefox-130.0.1-ia.xpi 620411 BLAKE2B e8e1c43e2e8c5d720a2503a2fd0f91f368749eddb52cda373cee6d8db6379aabe9c47bd7c8f1c06a26d48ce13df141559c1757ec89f21d5162f339306afa20ac SHA512 820e542af36c503984df6762ad4b799a9836bdc2d915fced6d553edf157ee13064aa647d349d0ec7e9977040e055c3443b0b12845d7eafa69ca25d2137d74573 +DIST firefox-130.0.1-id.xpi 588476 BLAKE2B d50e2c34ae02e3c6ce9f01630e9a2d427256f5d95abdef893e57fe48d4b01ccc0bc6fb10ee3791a8dd91189afabcee54eca96231551b10fd429c6ccfe621144a SHA512 ca07221442bd0f149af14420e14a1023b74ef75f45b8b271b4149e8f0a06f83fd15e1e515f7525357a61abdc69caeee18bf4d5be67a2020e42391b9cd523c906 +DIST firefox-130.0.1-is.xpi 622834 BLAKE2B 31ed4d2974ef67b433d1e7e35b0e6cdb80a12c909554e5dd55a3086ea2c7b2bc0f1d2d4cbc7d0b41badca96d0d83d0b6ce997abb67e7580cadcfbcc742eb26c5 SHA512 bb254da9a42170a7589db3c63921b70e4c57d7fb59f18b392d88863d7aa01ebdb1fa0c38c755fa3b460037b1b75287b6db611031f16508a1ddebcb5bb9be4009 +DIST firefox-130.0.1-it.xpi 576702 BLAKE2B edad2dbea5cf3ebf065197a73958266aba7c1569e9fbae8fefb605f67e7ed9337cb56d069199497b930f522ffbe0dd0b3cf5cb1d028baebad7e47d6bf1d2a954 SHA512 0a908e98ce60d7799985dbe757d877c884407ce5b1cdccaeebedd8c2d334c8a88603aa79dc4d589d6b9c960187a6ff2678f0dc8b9051c303e815bf41ee668329 +DIST firefox-130.0.1-ja.xpi 685869 BLAKE2B d64cb8eae144d29a7e7e76a30f406947eeb4444678fa95959317f8cfc6e8e6b53406aecf295151b2e3e0ea65790adbbba355804356c2be95cb8402edb6f68e17 SHA512 f1bdb6afe03f67ddfee4ec1cf191afc295f0f7e6a87a5dba1c7412f28f11c8fc9ed2cd3636ca50bed3381c05364484aea0d3875a28a209d7b212f45a271d7a0e +DIST firefox-130.0.1-ka.xpi 664728 BLAKE2B 24ee42b6ac463a7351cd97b0fea19185e113cfc2f0b2fd11222d05ed9333e4172d16665a3fa96da4c23a6b3a56d658bd3600566c908ff57963f5b2709a3431e9 SHA512 398786088c12a0807202da09fd9d9e864ce4dd95db948dc0c153db938cb06af169e228ede57d2c39b67674cd34fda0153ad426b8eb13100e7d7f6f26aacad3db +DIST firefox-130.0.1-kab.xpi 615475 BLAKE2B 6ec29037e455a60373bfd62abcd94019cec2e857c97e779a47104d132ab4d9cc15953314fa8eb85489291d4cb03a67dff754041d0a094e232395798501b5e993 SHA512 5970491521d32ba812d389a6b07a88945377ea87383e08dffbf162a0ec87eb2238385a95cea3ad31595c446b89768826e9dbeba8ca46b55145a87c600dff7ad1 +DIST firefox-130.0.1-kk.xpi 718488 BLAKE2B 45bef13c6422fab51bf0ee18aafbc26b9c8dc01e114fa9fc7ede4ad46f2e97f09f4bd7b6205ba091fdde8cf1d381fa6a0c4989c09c4cfb9e1b796a658fbee5fc SHA512 c7f096f9643f2e2d320169702611d112337120d45aa746cc7699225e4a7e8a2b49d9793c2be14afedf36ba8f79d980d9f45d0948f2cef513c69a5ae52433272b +DIST firefox-130.0.1-km.xpi 529324 BLAKE2B ee887ef84881457d801fb337ab753baa960dac673d905eb452d00b9581942f83fa91107e15d9324c42c32ccad4bbf6b78c3e3d49dd2cbb5242daa8f472a0a0bb SHA512 f25e765b7d3cc9063821a2eb774a627a6fa7e715aa4c7c9e4f14e33696b98009285eeed7bf7bd27315395eedee01685d6117b86519d8b6ef96a4945584e0c462 +DIST firefox-130.0.1-kn.xpi 494336 BLAKE2B 3c2cfd4547c59b03bee49c9aa8518468d6426ae09e991f3d554737a3bd5b58a11ef8a2bade9de4cb34ca172ba75735f3b1cac3b866e886d16c96796a2b0d3744 SHA512 976198d040a4a35fa1d0f31bc73ac80ebefffc5c48c7b413e34f215fbfc6208f4a5a58fef1ea0cb71cb760c74c3e4dd19e3b472ebde3db478562c5acb562f74f +DIST firefox-130.0.1-ko.xpi 671540 BLAKE2B e03b83a81b092f8cd0211f234da2d45268c85010fe285143b527c50d235652d237d3a7095ab30cc1043764dccd1738af985b6d34a34e2340ff46d01b28bce3f2 SHA512 224db5cf002393fac509551f3530bf8e2ccfb376319646123da746f71d581004c212bdb80def2b7bacc50656130628aff30561b739d29c0a71ba007de7a54127 +DIST firefox-130.0.1-lij.xpi 487639 BLAKE2B 50353111353c5f1a7e561762f26f84824f30a4a3f2870a3aba6e0a299febfd6e51182fc3bcc0cd346591d94706b4708d30aecf39c2cd8ac7eb2b41d3f051466b SHA512 b107a9d578bd599a8558a4696e9c8c414931195b97de6f7f13f191d5cc8a38f72590a0340a5d061b9fad3551c60ad87bbe3cc32cf6e4b3d5da00a522625ff2e2 +DIST firefox-130.0.1-lt.xpi 576379 BLAKE2B 964e3af4fcc5c16973a48d61676800ede6e61277b3b7a663b3f148220e0d322a24c3afe53a0fe3b7027d0f06fab14667f85abfdd0bde7230a1883fe0832f8e76 SHA512 a358a5aaea988fa4821d19e0cdefce9ef31c1a1045ce779d0e1791d02e945b9ebf6f9fb1d366f30edd5bd0268add9c2f6a5b1afe5a996a74927db0b0766a4815 +DIST firefox-130.0.1-lv.xpi 589133 BLAKE2B 9c3dc434c8d762922dcf0f95cec0bf5d7abcb68523d3cbc611b031a2b436740c816bca96bc3b1659698e9f0334cb9892dca3779799f8f39f74bb27a2c9d51faa SHA512 cec8b52df22e0405524cef46f4865ee56c837d55fff264f836fb0c39d1140eb9850682ac799a6a6b7f86a895df63df73744fefe7a8ccc21018ea7b6fd82e7f9f +DIST firefox-130.0.1-mk.xpi 496957 BLAKE2B f4826d63f30b898e7a6c1d717e17e25ae5cce009f1630b536dc53067278d2bd9d27cc1e065f252cfa53f25439b543ce39e6d90aff9ed9da4b5e2b2f8a370dc48 SHA512 2e10c7f142a3bf8e9f0235d5f0abaffdb0a317db3b810ddf476cc079acc424343cf143cf5dabb44c44a766c9fb3462a32a70151039d25dc8ab856450e408d12e +DIST firefox-130.0.1-mr.xpi 535455 BLAKE2B a045e69d4402a77f5452cedf445712a8fa178945a67bff2eef23a6f9c0fe9e2b99058fdcf62b0a2721f306254465e35da76ba977e535ad888b6db5c289ff9c9e SHA512 cf2475d5e51b278a37e9475c5e17432b9e054a4f115023d32d187e51ce6832940130bb37c9811a62030022589e5edc27857b827681c9f1db52f60a33d02210b9 +DIST firefox-130.0.1-ms.xpi 453253 BLAKE2B e423c978e20dd247b936cb4ae3ecbf5b4cea0a4f5df67b37c0c81b5571db673c1aff8b94265a95cc2cfd1fb274f8a2eab09e38d5878244ee04529e7c57d14787 SHA512 645a572e06bbd4e351ea8e4b1fbeeb806c3e2c2432df3670d6cbf215781154153f06ea5d16dda9200373eefcbd98fa74a3eeea0f79fd8e2b3d147b84ffacfa80 +DIST firefox-130.0.1-my.xpi 521877 BLAKE2B e310ca67f56d604987524cafc8eb4cadda5d527e7e9a5403671b36d014500cb6603f41b6c3541a8211fee70500b52fb1c4fac0c1378bcc2dc14f382b905db480 SHA512 7fbb800aa2e76fb2a0d5c60dc1d66cb60a8b232b9c1c8ff862e744a55963942901f36be661ef0a0ed0e72d9d07f259fab3eec057ab8f4271ab7c1716763928f3 +DIST firefox-130.0.1-nb-NO.xpi 615479 BLAKE2B 59f08a15e7357ad6e792da2d314ea1df4024a3d4296e517c62d65b05a268bf20bc124f05973f15b7a75749c05ed8bb34d132017fc50dd3f8427b10ffa54bfa91 SHA512 e1bc70f20410573d79f4d771875490532ba82bc7b079f8646258f32bc5bc81e4e91181d377efbf54fc72317122d05ae7b0b5f6cca89982341638651e8b70de68 +DIST firefox-130.0.1-ne-NP.xpi 517912 BLAKE2B d2ca2a2b6ace34acabe22af4012f46241a0697001c6ac67b4d1507531c36963c7432a979ba193b2f5ce408c8efded12ba903eb487a019c777aea41dce8e6b063 SHA512 bc99cd4cfa1f2e5674961c224da23ba84d09333d96e31d7d39cac11e0d07e2b097f5dbf2561411c4c7ab30705a01a07925b24b663aebd6cf07ab6de3ce0f3c3f +DIST firefox-130.0.1-nl.xpi 626073 BLAKE2B 83bfb345c7fc2e155cf8f275d8189f3af2b4a0a72d3ec83ead246891bf9c72caaa97582750e979028938fb62300cb7e1f8ea6a98ae3f3b895b08e2e34dcf08af SHA512 10eb6fea81e61e63087047a7175a757df9811ebdaf14468fda544e6dcf0c4dcd3300e193b66432fa0f99b68b901baa2fe1898ceac5709143f07b4515e6d41e07 +DIST firefox-130.0.1-nn-NO.xpi 619763 BLAKE2B 50319ef57c82e2e3e33d5d81fe73ce9247545dbd5bb0990911ce90a8d71bcff0204660b3e8c455cf18ec2db5fa42d5ef6713492c47ff988f13c82ae8c04c1760 SHA512 e165dd7f40a5063fd23b3357fa0c8ba6237f3069f60adba79a26f200a47b24ec763428ae2f75a3cd78d8f065464985ae959b6f353b185bc0dce06ce633920330 +DIST firefox-130.0.1-oc.xpi 616652 BLAKE2B cd8fdfc08bbe011ec8d64f43b08eae8047d0746d7b28a13215bcf99261617d515f2ad403d5b713f306ddb70c6ce3188ebb98f67e365be104f987e2962ac820c3 SHA512 e56aef552d57539f0cb73977c1d8455f3c7d69123529c0865b77aa0a7b9827e57dd8f55843608a91feb4697ea61fe205ede021e6f92b7621bb7cb95c1763dc98 +DIST firefox-130.0.1-pa-IN.xpi 700431 BLAKE2B 22fc9750c0358932547988e1a361a4cd49d19542776243988f2fa5dd8a46ee12ec4cf6afecbb804eb5ed8ed315a0f598beabbe603b3eea478e1f1abd9ee16747 SHA512 94f0ab1f59d141cc513fee4c1d9ce2f91301fec3f72204c11b1b317bc0cd72666b4a0325ab3b35f623753514adf13d2cadee4ffb2220d65eb38478534d6d716f +DIST firefox-130.0.1-pl.xpi 646170 BLAKE2B 7bb120b89df819babfab48483cd10d3a41eefa7eb61af4cb1ae1aa3f4d03981773bf5bb3ebf1de41a99598bfa533bd1d73a7343a5f0885c756f8bcb0e1ea9400 SHA512 8ed0658be7a860aa82c003b55724b403029fed21f7c5408002394de9706593ec8e6d6f91c62641335eace1eb8f21034107e72963e16f923e9225dddd3998e006 +DIST firefox-130.0.1-pt-BR.xpi 631641 BLAKE2B 65264c72450f54cfa77acdc782493c0137b51bf0a2a4b2fa911593617c3517882a448964956294db2de4a82714a4c29b9b3510bc822baeb90fe59c1f2a528352 SHA512 fe85923a8430e8c93aad8dfc1954b3a5fdf04d63fd6acf4e717bc93c24274650b30d16260046beb34962e98f5777c4d70b0ed061df1ad41889e17d1bf98d7b91 +DIST firefox-130.0.1-pt-PT.xpi 638062 BLAKE2B 230be97b41f30d2987a0bc46876de69e7f2b2ebfaef80cb481740b8b8807c05b34df72ba124ca2850800f1e20730cb1e29cfd62700939208dd90d894e0ab95fc SHA512 5eb7aeb3b3d548e63df0dc80602a765d65aeddef2e83837ae97684b3aa11cb092f7ad46e2dc6f7011eaedcd9088a93c8bd0b6cf692ea807fa39e07c778f448d0 +DIST firefox-130.0.1-rm.xpi 621692 BLAKE2B 9c876ed450284515454a74a6e656b0469d910f5b46d6d69a48dc03c4284318849631975c8138bca35d5700f8ae4b908f14ff0336f4a7faabee6d346921f2fd67 SHA512 5425eca8e174c4b7c3f9b6c404ac22bcd63c422e30e25bd9327dec5c53e4ccd6ecd1edd9cdc8b4c1972104ba1f84d42a27369968bee4aab3a6b2b4de20ce7f78 +DIST firefox-130.0.1-ro.xpi 553441 BLAKE2B f13f5fff3f7c440ae60dfe217d8b9e32839303d283c97fe66efe85a28e7d6f82e8dfe6fc1301b3c1e8d3ae25f87b9ac5e2545a7f2aa59da905bc73cae84e7eb5 SHA512 a522932f6f2d302e356fdb40dd3a0a9fff026f61a9a9d2c67adad8b877398cdea1c0caf3814022f489e78113c986f7f1c05e2d7ece36cdcb32aec22d4c178f74 +DIST firefox-130.0.1-ru.xpi 731301 BLAKE2B 4559638bfd7680452d09b4befafc140ecf7148211fae1d56ce34bca0ee9350ed8d6bbbababaf95e4db61b219e1be0698411b5889f85ecfc02f1494567dbafd66 SHA512 63be4f5f63b8aa8c5b1321be88786be694e76d479dc480914209d06a4d11486808a91066f34659e10e6eb9f86fbef038917e0a35ddef06bb17fc8704140ab44f +DIST firefox-130.0.1-sc.xpi 593207 BLAKE2B 89edd099213495e02fd2b96095eefed7a2a50c58a795681f1305c72a02cacd7117f7beb2c7bc314ca87e6273acb5a8da1bff641f40964c653e827e62789cd995 SHA512 eb9e5bec7e15ae67546119fda55307258290805fe1af409b86627a1b520dc71fedccef48b4cd7f1c8971a5bf138c920b8862f6ddd539068b8caf5c208efb5235 +DIST firefox-130.0.1-sco.xpi 514791 BLAKE2B 7ae309d3d3be073a07d77cca728cfc3d898301b117f44996c6e52a75317ef829d927946b62f7d0803535e2fd73b04f2dfef8433b9332adbd8a6765e63aecac4c SHA512 58f02c270ee230633b3136b36a139c21e14cacaf5439d6d164f1866a54710538126462c3b9ab0a59acc692b8e79d760a204bd5496ab3348341da5e519fb212b9 +DIST firefox-130.0.1-si.xpi 616775 BLAKE2B da0365b8ce1657224fdafb610a80ada4cf01b60450be04f1024f11b90fc19c4e5c2adbdc2497bea3edae168b0e48eb0d4e6501a47aca92b9ffbd3d5992f99ce7 SHA512 a4a43c8fb0c2d2db1d8368ab87375e87c0ab9479d851c973299b78aa7d1f6c2f82a23153ecc4c45187eaa5df86ac779c28cf0a34d9433831052e90a74ac6bcaf +DIST firefox-130.0.1-sk.xpi 662597 BLAKE2B 8278c841a47dcde9cfecfe34a85f3fa8e1727b1a9f5c0d66f0e8865dea93ee0be253adf9e2a05bfdeecfe1f9d660b7720b02d08bc00bd1fba5e01c43198af6bf SHA512 9514e40a5592989eed8cf4914fda963f03b01db6dbe650a98944113934bcde04bc64d4854038d72766d2aa88fc2054112874d63456e9f7416680e6a082c17d50 +DIST firefox-130.0.1-skr.xpi 716708 BLAKE2B 28cf1ac8bc85e284a9039aa2af08ef2632709776e6a33a1ee6b934e0d7149274acde8c5e058dbbb3533c33fb5eb816930d61dd181bd5106fae8a4e383703afe3 SHA512 6156765233fa22710574de5709da456a0f259a9f76f27b4688f2825369b4495d9f110db533f858fdff9e958362fb738e01a851c55bfc0e9a4ce6d5df94de4cb7 +DIST firefox-130.0.1-sl.xpi 626603 BLAKE2B 9795beacadac0eb925702d7ccfaa8908b98607cfdfd2aa2668049faf6fb4a95d49bf63b63a8e9856586d0494b7b7a51f6c0e973024a796b760416b7e3649abfc SHA512 f7880aba4b609ec64b91535461e6c394466902acfee123d8775a1ba5e74e498adee032b2a6948588717226e7adc9e5da5f7fabbe420b104f423e6fc32c52e932 +DIST firefox-130.0.1-son.xpi 419751 BLAKE2B 0676cd8fbdeb810faf29739a551eda771627a00d86df4033fb1e4b8ae0a84397021f1774e7a560d085bfa87778050c1d80276145f065ae612803a4ae1f52d1f3 SHA512 783d4e3998aafd70cb477018ff51c0387f7e6799347e3d5c9be72ebbb30de141c382b96dbda0fdfffe8fc90599b745dcdf57063ee2cd5d020a55f89d11f9d725 +DIST firefox-130.0.1-sq.xpi 641273 BLAKE2B 1ce5960d609774d7ea81f310a8e155b30c95e0d546f24e6ec88f71afece0d716515af8b2780897356216fa6e06187f2deda2c88850d35c83384c93efa83e6561 SHA512 1b95267151ae75a08f0573aec725eac6daa174c601c461a26826f717ae41bdf1e2b9f7bb6f85afb91d808df0dada6acfbc92ddf0c7b8872bfc2558f4d9eae212 +DIST firefox-130.0.1-sr.xpi 643277 BLAKE2B 6068e52ead9e94f8a4645578da428b2fda54b406c942c1565d3893738dd15a4a7e8a3c5517e3e2bdc922d877e0383b39477ff9159443f22311729e6c0f9ad18e SHA512 65e6ce5c8db9966c747d07584744cb92c8b809314912d0026f70c3e52ead8aaf772b9cd293264d6e97378d6fb6263a1a8f8abc54f726b8455cec8bdcfee268f9 +DIST firefox-130.0.1-sv-SE.xpi 628341 BLAKE2B 8dc9630a99f3c2537ae8a6a302014630a6a6ec2600e9109698514c558a4f00ea2d0023d0dfd9f65baeac7bb768f3f20c5dbafe360bf06bcd344af6564e053f92 SHA512 cbbe26ba6794445b3c71c9fef9a291dec8972db5d3ead8d599646565b85c2c23d4cc058a76e184e918f0136da4820a5d08cb25a9022a6f1db3b7769f2caa305f +DIST firefox-130.0.1-szl.xpi 529951 BLAKE2B 1b4c7cd3c4ff1b76a008e30af494acecdadad05fd6dad39898f60f141ddcb6b51fa42e74d8b422a565f841f6f2269df2db1aabbc69a08b74e71b28322f7ee90f SHA512 f7b80e043e7dde3d86eaf62c71db0a4e93291ba73c51a46fbe261a119da2efde095301c9b07c4b88549bb8ef8fd675d906bf72b1951187a49c07c04b89f5f6de +DIST firefox-130.0.1-ta.xpi 510633 BLAKE2B c6c912d0dbd2afc736fb37613c0aa0900a97e0110d1b18f1fcf17119aa93072b90dc10db7c9f6e9ecdfa35487aac506a8ec8ff094552bb0c224b95d2e6ee2d5d SHA512 e4e3722e552a77e83d610542594156fec2ef1d82d9a018f0e705f7bbf29baf0edc1be633903bd32d38ee0b302f2de5aa95c3e81ddbc501f6bc554d11044faa52 +DIST firefox-130.0.1-te.xpi 564564 BLAKE2B 04a91227c5b8e143a61be167ac9b42b6fb87117442f31a3768882d84bcb2dd2886694c656d1fc7b8a86dae0a73f6339730a799aa788c8703d2d2f4ad7b78899d SHA512 19d98999e6e66b60045fa749a4a6a99a1c1ef4ec8fa08aa141335f451c0d632e23d6daa1825f3844b10decb7e9e891c61393d90044a9c80e4123238f0ecbb63e +DIST firefox-130.0.1-th.xpi 701825 BLAKE2B ba6cbf6c86f28d561841d44ec0ad132694258721fc5e82a8b3bc4172432eccc81faede575d11fcfaa688a0606fddeeaca0d873faf961c4ec180aeef66fbcccbb SHA512 10f7cb6a5a3df079aebc3aecd9ddd7b9df8018b626c112f0343080121c38a49f5c0242dc6259d98b1f41fcb40bb0d29d65d2f18b0a26c2209d9cc7266f1edecb +DIST firefox-130.0.1-tl.xpi 537792 BLAKE2B efd3e6fae426e5b11ea95536ad430dd826545f864b7d3f6e5fc430733f94072f5b54e60d2b0c44ab47c708fd8283bbd821cf90f5b2918b35cf3c0a1d1cd50f89 SHA512 c5916ff68f53a515cc8bf75bbdd09941dc23d3843de851df88b9529872d392c0aaaaf1daca4b0eb080737ccedb1ad00b624bb8e36fc3ac543cb6a21714ddbc43 +DIST firefox-130.0.1-tr.xpi 641716 BLAKE2B b2219d1751bc340a98715c139335d1631970dbdc827d2f4b546c8b7d9eb6e9f5b7b8442449346826634895b3916698f2ed2da47d9dc78efec9961bd71ae3cd4a SHA512 136f2c66fd0d1dab5d6583759c4bec65e9eed4b46990b50a45e498271bdb085c959387a392a49d90733f69c5f5ee751b02d82f436966ec12b75f0e8d9ba60f45 +DIST firefox-130.0.1-trs.xpi 507742 BLAKE2B d7d3409856a152cf49b0444ca4ea63c5e0caabda66a0642ae108e868914954f2cbfad0d0740457b514f55e89422eb66b6df959c5f0de8b2743366d6935245e65 SHA512 9157fa5e7f22ab98308cc0b27c55b3a964a98de98bf3b70e228fe5152456c39552c9a273310d0b4ce4882c462b377e0ed2df8ee36733abdba57b8d07f5e09ba7 +DIST firefox-130.0.1-uk.xpi 714785 BLAKE2B a09677f81de8162f0838f72e85c46eab804daf2300371c74f23428778c98e6faf862a473f69c8976d32d761d3bf61954017910f90814ad1e16d85b866b7a934a SHA512 2d7a36a9cc04c7ea579ea1304ffc24293b7ccf3cc449c1874320c08c4186087ee0949e4ac9b7d14cec95a838bbcb5b25c6f19986cf1a1eb6af192cf6ed4cf014 +DIST firefox-130.0.1-ur.xpi 563626 BLAKE2B b4436ab964892f80e19645b947de35ac02abb49acd66eccad1247cc0bbc80acea992ae81052a1a229834dfa16abd5c489a83d9c03b96ef627eeebf7876667c83 SHA512 60aef5196f542b8c61f348081cd3b74386d0ae2c049b3937e596cd2dee97aa8c6b51fdce2ba5d13ab4ae4470673246fdc54a2f6f850ca968f536a97106214ef4 +DIST firefox-130.0.1-uz.xpi 482286 BLAKE2B ecf879c2c7e429306cf63cb873de262068878d82a2803da15a9bbe2a8e3eb85f3b31ff09b12c3b2fd9a86a1cab4ee835be1572bd342686177e681785ee204a78 SHA512 284f2eaa80511301e8ccf49ba5f76bb272d07f9352f07959dc92631684f59e4b84e6ff251d41663aedb9676dd00edf54f95b04b42bd28350878d93870af8b4a8 +DIST firefox-130.0.1-vi.xpi 666090 BLAKE2B e7e53f6c7db79a793d09f3759c085c91470b95bba7d33c8993c96ed1639ee2a22defaf41a6c02e50a23a6abd54c2210c8bb9841674c57b979f51c541b758d73a SHA512 756985027fd07194f94b0539dd58d6b66b896bfa8b3201594ba87bc6e3bdb09b794962e1e0f20e2a77c2f96cb3d5ab8125273062812cf435cb47603e5e790571 +DIST firefox-130.0.1-xh.xpi 420491 BLAKE2B 2bf9207de33261efd8f5515bfadc7e02b58043f9b5dd369999214e1a3045ba38c5017d0fbdedb8f7332f0e1a996c09f139a33c8ef75d7d3b0db1fa67ae4577ad SHA512 5f2b1cb7eff89ec6758b18805b2c24397374c29b8ebbc571ba85501cff1ef00633d1aa55befdea36733c57b5c474e6fce6a887b026d1d29f93f6b14424f9149c +DIST firefox-130.0.1-zh-CN.xpi 667372 BLAKE2B 66ee8d30614ce9c37e2db50c8c033b301c3b0cbd97a52d694af8456b8c15f6b080a8d1354e03ce6137635c0b248d4ca171d412413df16e2d07904702f0bd95d9 SHA512 38f2c470ee5e6d36d2b9ad758f5692c32134323e79588b3f3b47b5ead4bcf44bbfc82605e7ce222cc5f58daeabcf8d49c78cabbc7ddef7075dfdfc7cb2f5f562 +DIST firefox-130.0.1-zh-TW.xpi 669294 BLAKE2B 4bfe797d28c7406464406a6a6297227bb05e327a885a8960496c1740aa8787c88bcf04c48feaf3772e87a51f79ddd25f3896262e5cf91eccf52f3cd578dc794b SHA512 034ce10936ed67f20aebb15d7179ac479755a828598a8972f5b4fe6fb61b8677330fe73047add6b7ff24cdd555e3fe4e82c27793663dba604ebe2c4c4376d1d8 +DIST firefox-130.0.1.source.tar.xz 566583020 BLAKE2B 2d6496a4f476a5a276b70de43f5d58ce2a44007b754e05fcf757d4c1a1cdfcab910493f48e6a6e608b9719ab73cf56c066de56a4abc08ca42e83aa76f4f80c38 SHA512 163d1ce9f671a4716686955c43ff23d9f200f6c52dfdabcbb93af6a326c24aa5096404f42447b02b5a3ad02e2f60d17271783638fe027d24865aebb3e70e97fe DIST firefox-130.0.source.tar.xz 568295588 BLAKE2B 9c7dfc43145e442d60f6971806848e4ecd0145713e31105da6bd13a82a50655f5c4095beff4d61505e26e188b60f49b16dc17fb42dc03a9fb9ef509a7010b0ab SHA512 d0d11b38d9e02fa15298ec13336bb086668b4f36b3ce9ced218a265327fd4822b9fea4303402631947ea3c20490c414de87f8df3e7c23d2e02b70f0456b9af40 diff --git a/www-client/firefox/firefox-130.0.1.ebuild b/www-client/firefox/firefox-130.0.1.ebuild new file mode 100644 index 000000000000..602f370e132a --- /dev/null +++ b/www-client/firefox/firefox-130.0.1.ebuild @@ -0,0 +1,1370 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FIREFOX_PATCHSET="firefox-130-patches-04.tar.xz" + +LLVM_COMPAT=( 17 18 ) + +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="ncurses,sqlite,ssl" + +WANT_AUTOCONF="2.1" + +VIRTUALX_REQUIRED="manual" + +MOZ_ESR= + +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" + HOMEPAGE="https://www.mozilla.com/firefox https://www.mozilla.org/firefox/enterprise/" + SLOT="esr" +else + HOMEPAGE="https://www.mozilla.com/firefox" + SLOT="rapid" +fi + +MOZ_PN="${PN%-bin}" +MOZ_P="${MOZ_PN}-${MOZ_PV}" +MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" +MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" + +inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info llvm-r1 multiprocessing \ + optfeature pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs virtualx xdg + +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/mozilla/patchsets/${FIREFOX_PATCHSET} +) + +DESCRIPTION="Firefox Web Browser" +SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz + ${PATCH_URIS[@]}" +S="${WORKDIR}/${PN}-${PV%_*}" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" + +IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel jack +jumbo-build libproxy lto" +IUSE+=" openh264 pgo pulseaudio sndio selinux +system-av1 +system-harfbuzz +system-icu" +IUSE+=" +system-jpeg +system-libevent +system-libvpx system-png +system-webp +telemetry valgrind" +IUSE+=" wayland wifi +X" + +# Firefox-only IUSE +IUSE+=" +gmp-autoupdate gnome-shell" + +# !jumbo-build? ( clang ) -> bmo#1914774, bgo#939004 - causes seemingly random compile crashes with gcc. +REQUIRED_USE="|| ( X wayland ) + debug? ( !system-av1 ) + !jumbo-build? ( clang ) + pgo? ( lto ) + wayland? ( dbus ) + wifi? ( dbus )" + +FF_ONLY_DEPEND="!www-client/firefox:0 + selinux? ( sec-policy/selinux-mozilla )" +BDEPEND="${PYTHON_DEPS} + $(llvm_gen_dep ' + sys-devel/clang:${LLVM_SLOT} + sys-devel/llvm:${LLVM_SLOT} + clang? ( + sys-devel/lld:${LLVM_SLOT} + virtual/rust:0/llvm-${LLVM_SLOT} + ) + pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] ) + ') + app-alternatives/awk + app-arch/unzip + app-arch/zip + >=dev-util/cbindgen-0.26.0 + net-libs/nodejs + virtual/pkgconfig + !clang? ( >=virtual/rust-1.76 ) + !elibc_glibc? ( dev-lang/rust ) + amd64? ( >=dev-lang/nasm-2.14 ) + x86? ( >=dev-lang/nasm-2.14 ) + pgo? ( + X? ( + sys-devel/gettext + x11-base/xorg-server[xvfb] + x11-apps/xhost + ) + !X? ( + || ( + gui-wm/tinywl + <gui-libs/wlroots-0.17.3[tinywl(-)] + ) + x11-misc/xkeyboard-config + ) + )" +COMMON_DEPEND="${FF_ONLY_DEPEND} + >=app-accessibility/at-spi2-core-2.46.0:2 + dev-libs/expat + dev-libs/glib:2 + dev-libs/libffi:= + >=dev-libs/nss-3.103 + >=dev-libs/nspr-4.35 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + media-libs/mesa + media-video/ffmpeg + sys-libs/zlib + virtual/freedesktop-icon-theme + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + x11-libs/pango + x11-libs/pixman + dbus? ( + sys-apps/dbus + ) + jack? ( virtual/jack ) + pulseaudio? ( + || ( + media-libs/libpulse + >=media-sound/apulse-0.1.12-r4[sdk] + ) + ) + libproxy? ( net-libs/libproxy ) + selinux? ( sec-policy/selinux-mozilla ) + sndio? ( >=media-sound/sndio-1.8.0-r1 ) + system-av1? ( + >=media-libs/dav1d-1.0.0:= + >=media-libs/libaom-1.0.0:= + ) + system-harfbuzz? ( + >=media-gfx/graphite2-1.3.13 + >=media-libs/harfbuzz-2.8.1:0= + ) + system-icu? ( >=dev-libs/icu-73.1:= ) + system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= ) + system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] ) + system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) + system-png? ( >=media-libs/libpng-1.6.35:0=[apng] ) + system-webp? ( >=media-libs/libwebp-1.1.0:0= ) + valgrind? ( dev-debug/valgrind ) + wayland? ( + >=media-libs/libepoxy-1.5.10-r1 + x11-libs/gtk+:3[wayland] + ) + wifi? ( + kernel_linux? ( + || ( + net-misc/networkmanager + net-misc/connman[networkmanager] + ) + sys-apps/dbus + ) + ) + X? ( + virtual/opengl + x11-libs/cairo[X] + x11-libs/gtk+:3[X] + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrandr + x11-libs/libxcb:= + )" +RDEPEND="${COMMON_DEPEND} + hwaccel? ( + media-video/libva-utils + sys-apps/pciutils + ) + jack? ( virtual/jack ) + openh264? ( media-libs/openh264:*[plugin] )" +DEPEND="${COMMON_DEPEND} + X? ( + x11-base/xorg-proto + x11-libs/libICE + x11-libs/libSM + )" + +# ESR and rapid dependencies. +if [[ -n ${MOZ_ESR} ]] ; then + RDEPEND+=" !www-client/firefox:rapid" +else + RDEPEND+=" !www-client/firefox:esr" +fi + +# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or +# overridden in the enviromnent (advanced hackers only) +if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then + MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm ) +fi + +llvm_check_deps() { + 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 use clang && ! tc-ld-is-mold ; 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 + + 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 pgo ; then + if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then + einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing!" >&2 + einfo "Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + fi + fi + + einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 +} + +MOZ_LANGS=( + af ar ast be bg br ca cak cs cy da de dsb + el en-CA en-GB en-US es-AR es-ES et eu + fi fr fy-NL ga-IE gd gl he hr hsb hu + id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO + pa-IN pl pt-BR pt-PT rm ro ru + sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW +) + +# Firefox-only LANGS +MOZ_LANGS+=( ach ) +MOZ_LANGS+=( an ) +MOZ_LANGS+=( az ) +MOZ_LANGS+=( bn ) +MOZ_LANGS+=( bs ) +MOZ_LANGS+=( ca-valencia ) +MOZ_LANGS+=( eo ) +MOZ_LANGS+=( es-CL ) +MOZ_LANGS+=( es-MX ) +MOZ_LANGS+=( fa ) +MOZ_LANGS+=( ff ) +MOZ_LANGS+=( fur ) +MOZ_LANGS+=( gn ) +MOZ_LANGS+=( gu-IN ) +MOZ_LANGS+=( hi-IN ) +MOZ_LANGS+=( hy-AM ) +MOZ_LANGS+=( ia ) +MOZ_LANGS+=( km ) +MOZ_LANGS+=( kn ) +MOZ_LANGS+=( lij ) +MOZ_LANGS+=( mk ) +MOZ_LANGS+=( mr ) +MOZ_LANGS+=( my ) +MOZ_LANGS+=( ne-NP ) +MOZ_LANGS+=( oc ) +MOZ_LANGS+=( sc ) +MOZ_LANGS+=( sco ) +MOZ_LANGS+=( si ) +MOZ_LANGS+=( skr ) +MOZ_LANGS+=( son ) +MOZ_LANGS+=( szl ) +MOZ_LANGS+=( ta ) +MOZ_LANGS+=( te ) +MOZ_LANGS+=( tl ) +MOZ_LANGS+=( trs ) +MOZ_LANGS+=( ur ) +MOZ_LANGS+=( xh ) + +mozilla_set_globals() { + # https://bugs.gentoo.org/587334 + local MOZ_TOO_REGIONALIZED_FOR_L10N=( + fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE + ) + + local lang xflag + for lang in "${MOZ_LANGS[@]}" ; do + # en and en_US are handled internally + if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then + continue + fi + + # strip region subtag if $lang is in the list + if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then + xflag=${lang%%-*} + else + xflag=${lang} + fi + + SRC_URI+=" l10n_${xflag/[_@]/-}? (" + SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" + SRC_URI+=" )" + IUSE+=" l10n_${xflag/[_@]/-}" + done +} +mozilla_set_globals + +moz_clear_vendor_checksums() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -ne 1 ]] ; then + die "${FUNCNAME} requires exact one argument" + fi + + einfo "Clearing cargo checksums for ${1} ..." + + sed -i \ + -e 's/\("files":{\)[^}]*/\1/' \ + "${S}"/third_party/rust/${1}/.cargo-checksum.json || die +} + +moz_install_xpi() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local DESTDIR=${1} + shift + + insinto "${DESTDIR}" + + local emid xpi_file xpi_tmp_dir + for xpi_file in "${@}" ; do + emid= + xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") + + # Unpack XPI + unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die + + # Determine extension ID + if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then + emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") + [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" + elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then + emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") + [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" + else + die "failed to determine extension id" + fi + + einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." + newins "${xpi_file}" "${emid}.xpi" + done +} + +mozconfig_add_options_ac() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local reason=${1} + shift + + local option + for option in ${@} ; do + echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} + done +} + +mozconfig_add_options_mk() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local reason=${1} + shift + + local option + for option in ${@} ; do + echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} + done +} + +mozconfig_use_enable() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 1 ]] ; then + die "${FUNCNAME} requires at least one arguments" + fi + + local flag=$(use_enable "${@}") + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" +} + +mozconfig_use_with() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 1 ]] ; then + die "${FUNCNAME} requires at least one arguments" + fi + + local flag=$(use_with "${@}") + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" +} + +virtwl() { + debug-print-function ${FUNCNAME} "$@" + + [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" + [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" + tinywl -h >/dev/null || die 'tinywl -h failed' + + local VIRTWL VIRTWL_PID + coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } + local -x WAYLAND_DISPLAY + read WAYLAND_DISPLAY <&${VIRTWL[0]} + + debug-print "${FUNCNAME}: $@" + "$@" + local r=$? + + [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" + exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- + return $r +} + +pkg_pretend() { + if [[ ${MERGE_TYPE} != binary ]] ; then + if use pgo ; then + if ! has usersandbox $FEATURES ; then + die "You must enable usersandbox as X server can not run as root!" + fi + fi + + # Ensure we have enough disk space to compile + if use pgo || use lto || use debug ; then + CHECKREQS_DISK_BUILD="13500M" + else + CHECKREQS_DISK_BUILD="6600M" + fi + + check-reqs_pkg_pretend + fi +} + +pkg_setup() { + if [[ ${MERGE_TYPE} != binary ]] ; then + if use pgo ; then + if ! has userpriv ${FEATURES} ; then + eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" + fi + fi + + # Ensure we have enough disk space to compile + if use pgo || use lto || use debug ; then + CHECKREQS_DISK_BUILD="13500M" + else + CHECKREQS_DISK_BUILD="6400M" + fi + + check-reqs_pkg_setup + + llvm-r1_pkg_setup + + if use clang && use lto && tc-ld-is-lld ; 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 + + # Avoid PGO profiling problems due to enviroment leakage + # These should *always* be cleaned up anyway + unset \ + DBUS_SESSION_BUS_ADDRESS \ + DISPLAY \ + ORBIT_SOCKETDIR \ + SESSION_MANAGER \ + XAUTHORITY \ + XDG_CACHE_HOME \ + XDG_SESSION_COOKIE + + # Build system is using /proc/self/oom_score_adj, bug #604394 + addpredict /proc/self/oom_score_adj + + if use pgo ; then + # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure + # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage + # (PORTAGE_SCHEDULING_POLICY) update... + addpredict /proc + + # Clear tons of conditions, since PGO is hardware-dependant. + addpredict /dev + fi + + 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 + + # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then + MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" + fi + + if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then + MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" + fi + + # Mozilla API keys (see https://location.services.mozilla.com/api) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then + MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" + fi + + # Ensure we use C locale when building, bug #746215 + export LC_ALL=C + fi + + CONFIG_CHECK="~SECCOMP" + WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content." + linux-info_pkg_setup +} + +src_unpack() { + local _lp_dir="${WORKDIR}/language_packs" + local _src_file + + if [[ ! -d "${_lp_dir}" ]] ; then + mkdir "${_lp_dir}" || die + fi + + for _src_file in ${A} ; do + if [[ ${_src_file} == *.xpi ]]; then + cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" + else + unpack ${_src_file} + fi + done +} + +src_prepare() { + if use lto; then + rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die + fi + + # Workaround for bgo#917599 + if has_version ">=dev-libs/icu-74.1" && use system-icu ; then + eapply "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch + fi + rm -v "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch || die + + # Workaround for bgo#915651 on musl + if use elibc_glibc ; then + rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.patch || die + fi + + eapply "${WORKDIR}/firefox-patches" + + # Allow user to apply any additional patches without modifing ebuild + eapply_user + + # Make cargo respect MAKEOPTS + export CARGO_BUILD_JOBS="$(makeopts_jobs)" + + # Workaround for bgo#915651 + if ! use elibc_glibc ; then + if use amd64 ; then + export RUST_TARGET="x86_64-unknown-linux-musl" + elif use x86 ; then + export RUST_TARGET="i686-unknown-linux-musl" + elif use arm64 ; then + export RUST_TARGET="aarch64-unknown-linux-musl" + elif use ppc64 ; then + export RUST_TARGET="powerpc64le-unknown-linux-musl" + else + die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651" + fi + fi + + # Make LTO respect MAKEOPTS + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/build/moz.configure/lto-pgo.configure || die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/third_party/libwebrtc/build/toolchain/get_cpu_count.py || die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/third_party/libwebrtc/build/toolchain/get_concurrent_links.py || + die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/third_party/python/gyp/pylib/gyp/input.py || die "Failed sedding multiprocessing.cpu_count" + + # sed-in toolchain prefix + sed -i \ + -e "s/objdump/${CHOST}-objdump/" \ + "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py || die "sed failed to set toolchain prefix" + + sed -i \ + -e 's/ccache_stats = None/return None/' \ + "${S}"/python/mozbuild/mozbuild/controller/building.py || die "sed failed to disable ccache stats call" + + einfo "Removing pre-built binaries ..." + + find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die + + # Clear checksums from cargo crates we've manually patched. + # moz_clear_vendor_checksums xyz + + # Respect choice for "jumbo-build" + # Changing the value for FILES_PER_UNIFIED_FILE may not work, see #905431 + if [[ -n ${FILES_PER_UNIFIED_FILE} ]] && use jumbo-build; then + local my_files_per_unified_file=${FILES_PER_UNIFIED_FILE:=16} + elog "" + elog "jumbo-build defaults modified to ${my_files_per_unified_file}." + elog "if you get a build failure, try undefining FILES_PER_UNIFIED_FILE," + elog "if that fails try -jumbo-build before opening a bug report." + elog "" + + sed -i -e "s/\"FILES_PER_UNIFIED_FILE\", 16/\"FILES_PER_UNIFIED_FILE\", "${my_files_per_unified_file}"/" \ + python/mozbuild/mozbuild/frontend/data.py || + die "Failed to adjust FILES_PER_UNIFIED_FILE in python/mozbuild/mozbuild/frontend/data.py" + sed -i -e "s/FILES_PER_UNIFIED_FILE = 6/FILES_PER_UNIFIED_FILE = "${my_files_per_unified_file}"/" \ + js/src/moz.build || + die "Failed to adjust FILES_PER_UNIFIED_FILE in js/src/moz.build" + fi + + # Create build dir + BUILD_DIR="${WORKDIR}/${PN}_build" + mkdir -p "${BUILD_DIR}" || die + + # Write API keys to disk + echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die + echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die + echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die + + xdg_environment_reset +} + +src_configure() { + # Show flags set at the beginning + einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" + einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" + einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" + einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" + einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" + + local have_switched_compiler= + if use clang; then + # Force clang + einfo "Enforcing the use of clang due to USE=clang ..." + + local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') + [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") + [[ -z ${version_clang} ]] && die "Failed to read clang version!" + + if tc-is-gcc; then + have_switched_compiler=yes + fi + + AR=llvm-ar + CC=${CHOST}-clang-${version_clang} + CXX=${CHOST}-clang++-${version_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, + # AS is used in a non-standard way by upstream, #bmo1654031 + export HOST_CC="$(tc-getBUILD_CC)" + export HOST_CXX="$(tc-getBUILD_CXX)" + export AS="$(tc-getCC) -c" + + # Configuration tests expect llvm-readelf output, bug 913130 + READELF="llvm-readelf" + + tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF PKG_CONFIG + + # Pass the correct toolchain paths through cbindgen + if tc-is-cross-compiler ; then + export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" + fi + + # Set MOZILLA_FIVE_HOME + export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + + # python/mach/mach/mixin/process.py fails to detect SHELL + export SHELL="${EPREFIX}/bin/bash" + + # Set state path + export MOZBUILD_STATE_PATH="${BUILD_DIR}" + + # Set MOZCONFIG + export MOZCONFIG="${S}/.mozconfig" + + # Initialize MOZCONFIG + mozconfig_add_options_ac '' --enable-application=browser + mozconfig_add_options_ac '' --enable-project=browser + + # Set Gentoo defaults + if use telemetry; then + export MOZILLA_OFFICIAL=1 + fi + + mozconfig_add_options_ac 'Gentoo default' \ + --allow-addon-sideload \ + --disable-cargo-incremental \ + --disable-crashreporter \ + --disable-disk-remnant-avoidance \ + --disable-geckodriver \ + --disable-gpsd \ + --disable-install-strip \ + --disable-legacy-profile-creation \ + --disable-parental-controls \ + --disable-strip \ + --disable-tests \ + --disable-updater \ + --disable-wmf \ + --enable-negotiateauth \ + --enable-new-pass-manager \ + --enable-official-branding \ + --enable-release \ + --enable-system-ffi \ + --enable-system-pixman \ + --enable-system-policies \ + --host="${CBUILD:-${CHOST}}" \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + --prefix="${EPREFIX}/usr" \ + --target="${CHOST}" \ + --without-ccache \ + --without-wasm-sandboxed-libraries \ + --with-intl-api \ + --with-libclang-path="$(llvm-config --libdir)" \ + --with-system-nspr \ + --with-system-nss \ + --with-system-zlib \ + --with-toolchain-prefix="${CHOST}-" \ + --with-unsigned-addon-scopes=app,system \ + --x-includes="${ESYSROOT}/usr/include" \ + --x-libraries="${ESYSROOT}/usr/$(get_libdir)" + + # Set update channel + local update_channel=release + [[ -n ${MOZ_ESR} ]] && update_channel=esr + mozconfig_add_options_ac '' --update-channel=${update_channel} + + if ! use x86 ; then + mozconfig_add_options_ac '' --enable-rust-simd + fi + + # For future keywording: This is currently (97.0) only supported on: + # amd64, arm, arm64 & x86. + # Might want to flip the logic around if Firefox is to support more arches. + # bug 833001, bug 903411#c8 + if use ppc64 || use riscv; then + mozconfig_add_options_ac '' --disable-sandbox + elif use valgrind; then + mozconfig_add_options_ac 'valgrind requirement' --disable-sandbox + else + mozconfig_add_options_ac '' --enable-sandbox + fi + + # Enable JIT on riscv64 explicitly + # Can be removed once upstream enable it by default in the future. + use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit + + if [[ -s "${S}/api-google.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-safebrowsing-api-keyfile="${S}/api-google.key" + else + einfo "Building without Google API key ..." + fi + + if [[ -s "${S}/api-location.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-location-service-api-keyfile="${S}/api-location.key" + else + einfo "Building without Location API key ..." + fi + + if [[ -s "${S}/api-mozilla.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-mozilla-api-keyfile="${S}/api-mozilla.key" + else + einfo "Building without Mozilla API key ..." + fi + + mozconfig_use_with system-av1 + mozconfig_use_with system-harfbuzz + mozconfig_use_with system-harfbuzz system-graphite2 + mozconfig_use_with system-icu + mozconfig_use_with system-jpeg + mozconfig_use_with system-libevent + mozconfig_use_with system-libvpx + mozconfig_use_with system-png + mozconfig_use_with system-webp + + mozconfig_use_enable dbus + mozconfig_use_enable libproxy + mozconfig_use_enable valgrind + + use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme + + if use hardened ; then + mozconfig_add_options_ac "+hardened" --enable-hardening + append-ldflags "-Wl,-z,relro -Wl,-z,now" + + # Increase the FORTIFY_SOURCE value, #910071. + sed -i -e '/-D_FORTIFY_SOURCE=/s:2:3:' "${S}"/build/moz.configure/toolchain.configure || die + fi + + local myaudiobackends="" + use jack && myaudiobackends+="jack," + use sndio && myaudiobackends+="sndio," + use pulseaudio && myaudiobackends+="pulseaudio," + ! use pulseaudio && myaudiobackends+="alsa," + + mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" + + mozconfig_use_enable wifi necko-wifi + + ! use jumbo-build && mozconfig_add_options_ac '--disable-unified-build' --disable-unified-build + + if use X && use wayland ; then + mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland + elif ! use X && use wayland ; then + mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only + else + mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3-x11-only + fi + + # LTO is handled via configure + filter-lto + + if use lto ; then + if use clang ; then + # Upstream only supports lld or mold when using clang. + if tc-ld-is-mold ; then + # mold expects the -flto line from *FLAGS configuration, bgo#923119 + append-ldflags "-flto=thin" + mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold + else + mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld + fi + + mozconfig_add_options_ac '+lto' --enable-lto=cross + + else + # ThinLTO is currently broken, see bmo#1644409. + # mold does not support gcc+lto combination. + mozconfig_add_options_ac '+lto' --enable-lto=full + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd + fi + + if use pgo ; then + mozconfig_add_options_ac '+pgo' MOZ_PGO=1 + + if use clang ; then + # Used in build/pgo/profileserver.py + export LLVM_PROFDATA="llvm-profdata" + fi + fi + else + # Avoid auto-magic on linker + if use clang ; then + # lld is upstream's default + if tc-ld-is-mold ; then + mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold + else + mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld + fi + + else + if tc-ld-is-mold ; then + mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold + else + mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd + fi + fi + fi + + mozconfig_use_enable debug + if use debug ; then + mozconfig_add_options_ac '+debug' --disable-optimize + mozconfig_add_options_ac '+debug' --enable-jemalloc + mozconfig_add_options_ac '+debug' --enable-real-time-tracing + else + mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing + + if is-flag '-g*' ; then + if use clang ; then + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') + else + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols + fi + else + mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols + fi + + if is-flag '-O0' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 + elif is-flag '-O4' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 + elif is-flag '-O3' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 + elif is-flag '-O1' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 + elif is-flag '-Os' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os + else + mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 + fi + fi + + # Debug flag was handled via configure + filter-flags '-g*' + + # Optimization flag was handled via configure + filter-flags '-O*' + + # elf-hack + # Filter "-z,pack-relative-relocs" and let the build system handle it instead. + if use amd64 || use x86 ; then + filter-flags "-z,pack-relative-relocs" + + if tc-ld-is-mold ; then + # relr-elf-hack is currently broken with mold, bgo#916259 + mozconfig_add_options_ac 'disable elf-hack with mold linker' --disable-elf-hack + else + mozconfig_add_options_ac 'relr elf-hack' --enable-elf-hack=relr + fi + elif use ppc64 || use riscv ; then + # '--disable-elf-hack' is not recognized on ppc64/riscv, + # see bgo #917049, #930046 + :; + else + mozconfig_add_options_ac 'disable elf-hack on non-supported arches' --disable-elf-hack + fi + + if ! use elibc_glibc; then + mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc + fi + + if use valgrind; then + mozconfig_add_options_ac 'valgrind requirement' --disable-jemalloc + fi + + # System-av1 fix + use system-av1 && append-ldflags "-Wl,--undefined-version" + + # Allow elfhack to work in combination with unstripped binaries + # when they would normally be larger than 2GiB. + append-ldflags "-Wl,--compress-debug-sections=zlib" + + # Make revdep-rebuild.sh happy; Also required for musl + append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags + + # Pass $MAKEOPTS to build system + export MOZ_MAKE_FLAGS="${MAKEOPTS}" + + # Use system's Python environment + export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach + + export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" + + if ! use telemetry; then + mozconfig_add_options_mk '-telemetry setting' "MOZ_CRASHREPORTER=0" + mozconfig_add_options_mk '-telemetry setting' "MOZ_DATA_REPORTING=0" + mozconfig_add_options_mk '-telemetry setting' "MOZ_SERVICES_HEALTHREPORT=0" + mozconfig_add_options_mk '-telemetry setting' "MOZ_TELEMETRY_REPORTING=0" + fi + + # Disable notification when build system has finished + export MOZ_NOSPAM=1 + + # Portage sets XARGS environment variable to "xargs -r" by default which + # breaks build system's check_prog() function which doesn't support arguments + mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" + + # Set build dir + mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" + + # Show flags we will use + einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" + einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" + einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" + einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" + einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" + + # Handle EXTRA_CONF and show summary + local ac opt hash reason + + # Apply EXTRA_ECONF entries to $MOZCONFIG + if [[ -n ${EXTRA_ECONF} ]] ; then + IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} + for opt in "${ac[@]}"; do + mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} + done + fi + + echo + echo "==========================================================" + echo "Building ${PF} with the following configuration" + grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do + [[ -z ${hash} || ${hash} == \# ]] \ + || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" + printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" + done + echo "==========================================================" + echo + + if use valgrind; then + sed -i -e 's/--enable-optimize=-O[0-9s]/--enable-optimize="-g -O2"/' .mozconfig || die + fi + + ./mach configure || die +} + +src_compile() { + local virtx_cmd= + + if tc-ld-is-mold && use lto; then + # increase ulimit with mold+lto, bugs #892641, #907485 + if ! ulimit -n 16384 1>/dev/null 2>&1 ; then + ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." + ewarn "Please see bugs #892641 & #907485." + else + ulimit -n 16384 + fi + fi + + if use pgo; then + # Reset and cleanup environment variables used by GNOME/XDG + gnome2_environment_reset + + addpredict /root + + if ! use X; then + virtx_cmd=virtwl + else + virtx_cmd=virtx + fi + fi + + if ! use X; then + local -x GDK_BACKEND=wayland + else + local -x GDK_BACKEND=x11 + fi + + ${virtx_cmd} ./mach build --verbose || die +} + +src_install() { + # xpcshell is getting called during install + pax-mark m \ + "${BUILD_DIR}"/dist/bin/xpcshell \ + "${BUILD_DIR}"/dist/bin/${PN} \ + "${BUILD_DIR}"/dist/bin/plugin-container + + DESTDIR="${D}" ./mach install || die + + # Upstream cannot ship symlink but we can (bmo#658850) + rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die + dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin + + # Don't install llvm-symbolizer from sys-devel/llvm package + if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then + rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die + fi + + # Install policy (currently only used to disable application updates) + insinto "${MOZILLA_FIVE_HOME}/distribution" + newins "${FILESDIR}"/distribution.ini distribution.ini + newins "${FILESDIR}"/disable-auto-update.policy.json policies.json + + # Install system-wide preferences + local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences" + insinto "${PREFS_DIR}" + newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js + + local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" + + # Set dictionary path to use system hunspell + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" + pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); + EOF + + # Force hwaccel prefs if USE=hwaccel is enabled + if use hwaccel ; then + cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-r2 \ + >>"${GENTOO_PREFS}" \ + || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" + + if use wayland; then + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs" + pref("gfx.x11-egl.force-enabled", false); + EOF + else + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs" + pref("gfx.x11-egl.force-enabled", true); + EOF + fi + + # Install the vaapitest binary on supported arches (122.0 supports all platforms, bmo#1865969) + exeinto "${MOZILLA_FIVE_HOME}" + doexe "${BUILD_DIR}"/dist/bin/vaapitest + + # Install the v4l2test on supported arches (+ arm, + riscv64 when keyworded) + if use arm64 ; then + exeinto "${MOZILLA_FIVE_HOME}" + doexe "${BUILD_DIR}"/dist/bin/v4l2test + fi + fi + + if ! use gmp-autoupdate ; then + local plugin + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do + einfo "Disabling auto-update for ${plugin} plugin ..." + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin" + pref("media.${plugin}.autoupdate", false); + EOF + done + fi + + # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it + if use system-harfbuzz ; then + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" + sticky_pref("gfx.font_rendering.graphite.enabled", true); + EOF + fi + + # Add telemetry config prefs, just in case something happens in future and telemetry build + # options stop working. + if ! use telemetry ; then + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set telemetry prefs" + sticky_pref("toolkit.telemetry.dap_enabled", false); + pref("toolkit.telemetry.dap_helper", ""); + pref("toolkit.telemetry.dap_leader", ""); + EOF + fi + + # Install language packs + local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) + if [[ -n "${langpacks}" ]] ; then + moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" + fi + + # Install icons + local icon_srcdir="${S}/browser/branding/official" + local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg" + + insinto /usr/share/icons/hicolor/symbolic/apps + newins "${icon_symbolic_file}" ${PN}-symbolic.svg + + local icon size + for icon in "${icon_srcdir}"/default*.png ; do + size=${icon%.png} + size=${size##*/default} + + if [[ ${size} -eq 48 ]] ; then + newicon "${icon}" ${PN}.png + fi + + newicon -s ${size} "${icon}" ${PN}.png + done + + # Install menu + local app_name="Mozilla ${MOZ_PN^}" + local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop" + local exec_command="${PN}" + local icon="${PN}" + local use_wayland="false" + + if [[ -n ${MOZ_ESR} ]] ; then + local desktop_filename="${PN}-esr.desktop" + else + local desktop_filename="${PN}.desktop" + fi + + if use wayland ; then + use_wayland="true" + fi + + cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die + + sed -i \ + -e "s:@NAME@:${app_name}:" \ + -e "s:@EXEC@:${exec_command}:" \ + -e "s:@ICON@:${icon}:" \ + "${WORKDIR}/${PN}.desktop-template" || die + + newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" + + rm "${WORKDIR}/${PN}.desktop-template" || die + + if use gnome-shell ; then + # Install search provider for Gnome + insinto /usr/share/gnome-shell/search-providers/ + doins browser/components/shell/search-provider-files/org.mozilla.firefox.search-provider.ini + + insinto /usr/share/dbus-1/services/ + doins browser/components/shell/search-provider-files/org.mozilla.firefox.SearchProvider.service + + # Toggle between rapid and esr desktop file names + sed -e "s/firefox.desktop/${desktop_filename}/g" \ + -i "${ED}/usr/share/gnome-shell/search-providers/org.mozilla.firefox.search-provider.ini" || + die "Failed to sed org.mozilla.firefox.search-provider.ini file." + + # Make the dbus service aware of a previous session, bgo#939196 + sed -e \ + "s/Exec=\/usr\/bin\/firefox/Exec=\/usr\/$(get_libdir)\/firefox\/firefox --dbus-service \/usr\/bin\/firefox/g" \ + -i "${ED}/usr/share/dbus-1/services/org.mozilla.firefox.SearchProvider.service" || + die "Failed to sed org.mozilla.firefox.SearchProvider.service dbus file" + + # Update prefs to enable Gnome search provider + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to enable gnome-search-provider via prefs" + pref("browser.gnome-search-provider.enabled", true); + EOF + fi + + # Install wrapper script + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" + newbin "${FILESDIR}/${PN}-r1.sh" ${PN} + + # Update wrapper + sed -i \ + -e "s:@PREFIX@:${EPREFIX}/usr:" \ + -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ + -e "s:@APULSELIB_DIR@:${apulselib}:" \ + -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ + "${ED}/usr/bin/${PN}" || die + + readme.gentoo_create_doc +} + +pkg_preinst() { + xdg_pkg_preinst + + # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse + # does not need to be forced into the LD_LIBRARY_PATH + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then + einfo "APULSE found; Generating library symlinks for sound support ..." + local lib + pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die + for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do + # A quickpkg rolled by hand will grab symlinks as part of the package, + # so we need to avoid creating them if they already exist. + if [[ ! -L ${lib##*/} ]] ; then + ln -s "${lib}" ${lib##*/} || die + fi + done + popd &>/dev/null || die + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + if ! use gmp-autoupdate ; then + elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or" + elog "installing into new profiles:" + local plugin + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do + elog "\t ${plugin}" + done + elog + fi + + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then + elog "Apulse was detected at merge time on this system and so it will always be" + elog "used for sound. If you wish to use pulseaudio instead please unmerge" + elog "media-sound/apulse." + elog + fi + + # bug 835078 + if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then + ewarn "You have nouveau drivers installed in your system and 'hwaccel' " + ewarn "enabled for Firefox. Nouveau / your GPU might not support the " + ewarn "required EGL, so either disable 'hwaccel' or try the workaround " + ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes." + fi + + readme.gentoo_print_elog + + optfeature_header "Optional programs for extra features:" + optfeature "desktop notifications" x11-libs/libnotify + optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas + optfeature "screencasting with pipewire" sys-apps/xdg-desktop-portal + if use hwaccel && has_version "x11-drivers/nvidia-drivers"; then + optfeature "hardware acceleration with NVIDIA cards" media-libs/nvidia-vaapi-driver + fi + + if ! has_version "sys-libs/glibc"; then + elog + elog "glibc not found! You won't be able to play DRM content." + elog "See Gentoo bug #910309 or upstream bug #1843683." + elog + fi +} diff --git a/www-client/google-chrome-beta/Manifest b/www-client/google-chrome-beta/Manifest index 0a1c00aa4a83..3e6b9d214d7b 100644 --- a/www-client/google-chrome-beta/Manifest +++ b/www-client/google-chrome-beta/Manifest @@ -1 +1 @@ -DIST google-chrome-beta_129.0.6668.29-1_amd64.deb 111901672 BLAKE2B 741989b7e94e76749cbf107530ac9b7bd0596095853d8ec39eaf4532c3f20f9daf4a22a03ee7dfc9c2a145ec9dcfe382af968bbb4888ff7a48a6eb514f77de45 SHA512 4b67f3b00c90d777226128a4df8fed91d9125c5f14234557e94a053d5b384bf6714b778b0e2cfd06810bc02a6c15940d76ee92d823bacf4479c886dc7c82fb31 +DIST google-chrome-beta_129.0.6668.42-1_amd64.deb 111925504 BLAKE2B 12ac4e642da5af1b571f7062a734a13063a08557b51087bc4a92272e9d57ab91a083dfbebdddb1b7a1983e949f033ed4d1d7d393d819f2114bbdf7f883d5f8d0 SHA512 2c37992ed218c8b1018197a4491a405f7753e583f70a38b781a5a75c19de1da78842ea7e6eade0ad0fe18b6c685151fd19562c618067ad66dc4afb6a6d8932d8 diff --git a/www-client/google-chrome-beta/google-chrome-beta-129.0.6668.29.ebuild b/www-client/google-chrome-beta/google-chrome-beta-129.0.6668.42.ebuild index dd9e9c497aea..dd9e9c497aea 100644 --- a/www-client/google-chrome-beta/google-chrome-beta-129.0.6668.29.ebuild +++ b/www-client/google-chrome-beta/google-chrome-beta-129.0.6668.42.ebuild diff --git a/www-client/google-chrome-unstable/Manifest b/www-client/google-chrome-unstable/Manifest index 67cda3d757f3..fbf67db6a5a6 100644 --- a/www-client/google-chrome-unstable/Manifest +++ b/www-client/google-chrome-unstable/Manifest @@ -1 +1 @@ -DIST google-chrome-unstable_130.0.6699.3-1_amd64.deb 114126496 BLAKE2B d98bcdeacd532fa40dbf3076da7fde055e551dd85560839c789dee3bc7582b8ec86cd593026b233e68fdcd61ee5ab7ad409ab096035648b4808abbc6840f6dfe SHA512 2453fff151b7afcf04d9ec9f9ce978c46da49365502b030bfc05246ff6efc207d47e16dfcf5d6c3a811758613c1afb6cf75ab6fbd044cb4b9bc399fae256325e +DIST google-chrome-unstable_130.0.6710.0-1_amd64.deb 114280168 BLAKE2B 040b582aae7800ead1704171feb1403d40a07c11141c851950a28c404e0348b57c13d4ea293d3504bfd112bdc213a1c1cc32859518c244d940847521846b8b65 SHA512 8d87d24942c6f4586e8c48723ee56225fda7c92a75388d60069848797b86392f6388ba2014035859e0a12e5555e59b208f77e8f5357908f19f4f1cc9665007ef diff --git a/www-client/google-chrome-unstable/google-chrome-unstable-130.0.6699.3.ebuild b/www-client/google-chrome-unstable/google-chrome-unstable-130.0.6710.0.ebuild index dd9e9c497aea..dd9e9c497aea 100644 --- a/www-client/google-chrome-unstable/google-chrome-unstable-130.0.6699.3.ebuild +++ b/www-client/google-chrome-unstable/google-chrome-unstable-130.0.6710.0.ebuild diff --git a/www-client/google-chrome/Manifest b/www-client/google-chrome/Manifest index 234949b45078..38cee8a7b42d 100644 --- a/www-client/google-chrome/Manifest +++ b/www-client/google-chrome/Manifest @@ -1 +1 @@ -DIST google-chrome-stable_128.0.6613.137-1_amd64.deb 110722184 BLAKE2B 111266b9e4b410ac5caf5920db1cb22d442370a734952f870158f6279576ff0399bcef6ef9afb256546cd1023b5d8c142974c3ac6d25171daff0b7d6fff83121 SHA512 4a0cb6e5b24419600bec5ff750d5590f0d6ac30eaa21f006e6f1895f98c3ebf8535cc441576ddc7992302bcc66c81f840800a73932bfd89a9a8053542a83b207 +DIST google-chrome-stable_129.0.6668.58-1_amd64.deb 111913828 BLAKE2B 10cb2e84d7f580f823e1af3663e312226d55da2b028a011355c562a6fbf5662bb9384455e1da09bf95de989023e6c7918939c745b6ce96d197f56c90162971b3 SHA512 0390461517d166c2a884be6cabd707edaa636f55d9e87f1352b4fa984aceabacb5bf4b35128d73532196cb98a267c80faa88fa569bacdb4cf820142f0cab5564 diff --git a/www-client/google-chrome/google-chrome-128.0.6613.137.ebuild b/www-client/google-chrome/google-chrome-129.0.6668.58.ebuild index a6673ff33b80..a6673ff33b80 100644 --- a/www-client/google-chrome/google-chrome-128.0.6613.137.ebuild +++ b/www-client/google-chrome/google-chrome-129.0.6668.58.ebuild diff --git a/www-client/lynx/Manifest b/www-client/lynx/Manifest index 26bb57d01cbd..e8807f84081a 100644 --- a/www-client/lynx/Manifest +++ b/www-client/lynx/Manifest @@ -2,3 +2,5 @@ DIST lynx2.9.0.tar.bz2 2781819 BLAKE2B 4380d46f28254bda241daae81c2072cd987cdbb4f DIST lynx2.9.0.tar.bz2.asc 729 BLAKE2B 3221a794194554bd7b6fa577e9455a034802de715e93a9b0046ec4d9e367f0bf3a92b5780a7026c2a4a10cab8076d63964fe02f09bafea4f8fab08b27e3c7f6a SHA512 f08e46bf960a54656045d0874a3dd9811511589147bfe764efce43f87eb62d4a3e448b31edad60a485fc51f57d27dc0b87aae9df2e4dce5fbd9dea2f776a8f5d DIST lynx2.9.0dev.12.tar.bz2 2762036 BLAKE2B 93bf762271b0419be73b11066b68dcf65e59f4eb1a5c221f0482bc0cad5e88e1cc83eb24c4c40316c37183c37db1178985d4478a2659c9e1b8322e8b6a4c6ff0 SHA512 9dd85d335a0b2c4c28f362cbcbe6499662696286fcc78e827bfafe2787d4a7fcd3faec78a115df8c14ea6e4314a5ea272f5b6353cb13224ecaebb61ae271701b DIST lynx2.9.0dev.12.tar.bz2.asc 729 BLAKE2B 0e24df945b714acafc17974a908ca0246e4e4f506416cdb4fedb50a0b081fb87ac2b5e272fc27bbb1eee0aeef69ebb99b75583184e434e017b0edae3d9bde4d8 SHA512 fecfcbbf41f83285019a93b59d3ee38263aa0b8fc03914d41af1f9f3f77e1e376c8c686754d3e1a777d6aa853b4f3cfdca5d2a4ffa2ab3fe6ae4952e61a22e16 +DIST lynx2.9.2.tar.bz2 2783769 BLAKE2B 875ac952e956071b1dfeb61fb5848a8a6435931d3ca1fbeef00e95e14d8510641b0b81683c7e2097c13c6cd6431e8b4243c47c5f983829af1a63140673794c23 SHA512 bb9ed23a5f8664ca8bccd95cc55683849aa707f601e209d84e0acaed151b78cd772316f527881022ff120049c4fc586c05d579f9d616a2b108d9ddfaa5b2159d +DIST lynx2.9.2.tar.bz2.asc 729 BLAKE2B fe8c3dd2a851a20363ab7e9ec498889965b9bb0f7f41cee3a84e451c630f2ec20c6255edd7f49bdc919612a92173755e991b9b13d7fde0d46274a8a6b0fa786c SHA512 2ec01cfa0928806837fdb4d499467e97c1ea90b62789015a7cf7c3ea60ee0eb3422c3cf88bb40f758560a85dfa2301e930ce20096a4f00038662951a1a5254ab diff --git a/www-client/lynx/lynx-2.9.2.ebuild b/www-client/lynx/lynx-2.9.2.ebuild new file mode 100644 index 000000000000..20e210342dd4 --- /dev/null +++ b/www-client/lynx/lynx-2.9.2.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc +inherit verify-sig + +case ${PV} in + *_pre*) MY_P="${PN}${PV/_pre/dev.}" ;; + *_rc*) MY_P="${PN}${PV/_rc/pre.}" ;; + *_p*|*) MY_P="${PN}${PV/_p/rel.}" ;; +esac + +DESCRIPTION="An excellent console-based web browser with ssl support" +HOMEPAGE="https://lynx.invisible-island.net/" +SRC_URI="https://invisible-island.net/archives/lynx/tarballs/${MY_P}.tar.bz2" +SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/lynx/tarballs/${MY_P}.tar.bz2.asc )" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="brotli bzip2 cjk gnutls idn nls ssl" + +RDEPEND=" + sys-libs/ncurses:=[unicode(+)] + sys-libs/zlib + brotli? ( app-arch/brotli:= ) + bzip2? ( app-arch/bzip2 ) + idn? ( net-dns/libidn2:= ) + nls? ( virtual/libintl ) + ssl? ( + !gnutls? ( + dev-libs/openssl:= + ) + gnutls? ( + dev-libs/libgcrypt:= + >=net-libs/gnutls-2.6.4:= + ) + )" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + nls? ( sys-devel/gettext ) + verify-sig? ( >=sec-keys/openpgp-keys-thomasdickey-20240114 ) +" + +PATCHES=( + "${FILESDIR}/${PN}-2.9.0-mint.patch" + "${FILESDIR}/${PN}-2.9.0-parallel.patch" +) + +QA_CONFIG_IMPL_DECL_SKIP=( + arc4random # missing on musl but it handles it fine + arc4random_push # doesn't exist on Linux +) + +src_configure() { + local myconf=( + --enable-cgi-links + --enable-color-style + --enable-externs + --enable-file-upload + --enable-included-msgs + --enable-ipv6 + --enable-nested-tables + --enable-nsl-fork + --enable-persistent-cookies + --enable-prettysrc + --enable-read-eta + --enable-scrollbar + --with-screen=ncursesw + --with-zlib + $(use_enable cjk) + $(use_enable idn idna) + $(use_enable nls) + $(use_with brotli) + $(use_with bzip2 bzlib) + ) + + if use ssl; then + myconf+=( + --with-$(usex gnutls gnutls ssl)="${EPREFIX}/usr" + ) + fi + + econf "${myconf[@]}" + + # Compared to openssl gnutls-openssl API does not use + # default trust store: bug #604526. + sed -e \ + "s|#define SSL_CERT_FILE NULL|#define SSL_CERT_FILE \"${EPREFIX}/etc/ssl/certs/ca-certificates.crt\"|" \ + -i userdefs.h || die +} + +src_compile() { + # generating translation files in parallel is currently broken + use nls && emake -C po -j1 + emake +} + +src_install() { + emake install DESTDIR="${D}" + + sed -i "s|^HELPFILE.*$|HELPFILE:file://localhost/usr/share/doc/${PF}/lynx_help/lynx_help_main.html|" \ + "${ED}"/etc/lynx.cfg || die "lynx.cfg not found" + sed -i '/^#CHARACTER_SET:/ c\CHARACTER_SET:utf-8' \ + "${ED}"/etc/lynx.cfg || die "lynx.cfg not found" + + dodoc CHANGES COPYHEADER PROBLEMS README + dodoc -r docs lynx_help +} diff --git a/www-client/microsoft-edge-beta/Manifest b/www-client/microsoft-edge-beta/Manifest index 7fa3a59bd8ef..fbf0dc59e1aa 100644 --- a/www-client/microsoft-edge-beta/Manifest +++ b/www-client/microsoft-edge-beta/Manifest @@ -1,3 +1,3 @@ -DIST microsoft-edge-beta_129.0.2792.12-1_amd64.deb 166721510 BLAKE2B 8a05caeaac967228ee7f871f637ed4369b1b7c90a058297027d82b08d1eafb60ffbcb50c39cb65aa93c1f2831bbc3850e26e856b849f01c8221257d5f4495e9c SHA512 5a979b069b1f616dd18c1be38602beb6c65d603c93cf65081a7daebf0387834f2c59ce4a5925afdadd14bb343e6399466040ff0162141e4e974409c7e4363ffe DIST microsoft-edge-beta_129.0.2792.21-1_amd64.deb 166634742 BLAKE2B e3b075b67a26d3975d521419934ac6fe7b3e63a88820a08a7f0ee57fd03c5cab21d3bfdbe80376d4538dd255ae2a37d9bf3a388622670f69172b6575351238d2 SHA512 181dfacb96d68ca2ecf6d5d2fd1275b1710531154bcfc64bda31d8167869b0777686f3c9af18d573e2e54e7f86abb7ec374386e8db0439117c76233561f5ca5c DIST microsoft-edge-beta_129.0.2792.31-1_amd64.deb 166681842 BLAKE2B 0069c61fe70d4f0c3faa970acd317aced034ad0fed6719bc4c969d14121b04878eb82708a8995107add2f4047aff9ddf0641e104b04f93c452918adc0a9f14d4 SHA512 085f99e59cf717ec4cfa02458e28f2adc22142e52ed49cb2c0686fb57ed6fa385fe443812873531766f24f3f205ca732a321105060b69351afa9b0f0cedf5ec4 +DIST microsoft-edge-beta_129.0.2792.41-1_amd64.deb 167024278 BLAKE2B fb4b55da84d2c6ad15725b46e9cb661cacfe78f05f6e154c21986a35858f4b5a281c5e58553f95b3b1ff50d2866e39fe61de5ad5318ac3448cf67bea5bb3e50c SHA512 9726312337b393edf5c182ae271268f5cc6cea437ffb709474364f387aeb7979da5b9e41aa9835e49bad164398afb7bb57dcbd5df8ba8fdf0ac071059d3a0094 diff --git a/www-client/microsoft-edge-beta/microsoft-edge-beta-129.0.2792.12.ebuild b/www-client/microsoft-edge-beta/microsoft-edge-beta-129.0.2792.41.ebuild index 0ff710cc5ddc..0ff710cc5ddc 100644 --- a/www-client/microsoft-edge-beta/microsoft-edge-beta-129.0.2792.12.ebuild +++ b/www-client/microsoft-edge-beta/microsoft-edge-beta-129.0.2792.41.ebuild diff --git a/www-client/microsoft-edge-dev/Manifest b/www-client/microsoft-edge-dev/Manifest index d3321b00f2ca..87ef968c3341 100644 --- a/www-client/microsoft-edge-dev/Manifest +++ b/www-client/microsoft-edge-dev/Manifest @@ -1,3 +1,3 @@ -DIST microsoft-edge-dev_129.0.2779.0-1_amd64.deb 166674210 BLAKE2B 823abb1ac3185b7edcaa7a09ffca39bfc4f39763588288b93e23d2b7a9acc38643ebe779fcf5260cedc1611db8f6dda9fe72f11248ad4e493e44f60c3f695103 SHA512 732436bc2a35b5370ac821fa8be6b9c700868cc8fd3f85de58c71e684736548e38fc94b5cd85f10a99fe76d4ac7c62ad9cf84d05508346654b6f677acc5f9425 DIST microsoft-edge-dev_129.0.2792.10-1_amd64.deb 166670918 BLAKE2B 1ec9a34a09d45bf872277bc8ae76cc234e5c1d3475721cce8d1ca25f76dfeb53318a92f7d5d488f3770c9000e478480d35a7ad4624f9332c4f871dbc1efee6eb SHA512 5a475bb721660719afbf172162de7d1859685c4121f93658f4fffa388d9408f83566b4b5eba56f08f35f022c8149a188e3425b9e9ffb772baa8a2ecaefdebaa4 DIST microsoft-edge-dev_130.0.2808.0-1_amd64.deb 166622694 BLAKE2B 610b566acdb45abb0c30bb914150498f4f28999aca8aef1a8cac692b007144b686a8c3099828b4cd43fbae7d99731d14f8bcc4ed17519f6a38147fc3ad715207 SHA512 66728a246f758185ae5d7a32b9a69628720d29d6d1064893834bc800330950cc534994363cb9e5372bafd1376842c0e6932b57cf7c6b63563bc4f084666300e1 +DIST microsoft-edge-dev_130.0.2821.1-1_amd64.deb 166688778 BLAKE2B 71091c4800f203a41ed7c2d74c014d0cae6e800df51f90f38a75394b0a8636f0e302b609e8834cf94beccd4440d0646beaefb36045cb906e4c3230af9305b54f SHA512 ec4ef73e251baa8f2e386a808238565fdd0553cea6e57a87c97783329080590740b5426d22e4bd94ddb37025da487e53e0c840de8b71168e3c0cda5beabd2288 diff --git a/www-client/microsoft-edge-dev/microsoft-edge-dev-129.0.2779.0.ebuild b/www-client/microsoft-edge-dev/microsoft-edge-dev-130.0.2821.1.ebuild index 0ff710cc5ddc..0ff710cc5ddc 100644 --- a/www-client/microsoft-edge-dev/microsoft-edge-dev-129.0.2779.0.ebuild +++ b/www-client/microsoft-edge-dev/microsoft-edge-dev-130.0.2821.1.ebuild diff --git a/www-client/microsoft-edge/Manifest b/www-client/microsoft-edge/Manifest index 679e0661e9da..99eeafeb49ac 100644 --- a/www-client/microsoft-edge/Manifest +++ b/www-client/microsoft-edge/Manifest @@ -1 +1 @@ -DIST microsoft-edge-stable_128.0.2739.67-1_amd64.deb 166720198 BLAKE2B a60c87b25712a04640cb29dc6dabf0951e11874c956997fed42283c2bc684485520aba13218644eb410aabac596fc247f4306bb73ce3222a576f28d57d776b8e SHA512 37af66d65b0999bce821f64b08d25bba657f3ef12d12f358aa850859b482146d5c2e6dfa41a7683df70a65cc1b952bd91a0b62d7a70cb2eeb25fe2aff9040f8c +DIST microsoft-edge-stable_128.0.2739.79-1_amd64.deb 166752518 BLAKE2B 96ed5ed4fdc82a56ce465b926044f29fea1f27476372eb06bce09338fd6b6f827e9e314bb6db65c9e04a8fd2e31647d49988ff1445795645965c892ced6a7617 SHA512 55cff09d85f4ec646fd826a213fc5a174d7734ad28cdd042c46a5800decba50e07962b4a0232c86086a60a7731e574b07ea0ca0fe70ec866f4a8938c652937df diff --git a/www-client/microsoft-edge/microsoft-edge-128.0.2739.67.ebuild b/www-client/microsoft-edge/microsoft-edge-128.0.2739.79.ebuild index 7ea339bd40f9..7ea339bd40f9 100644 --- a/www-client/microsoft-edge/microsoft-edge-128.0.2739.67.ebuild +++ b/www-client/microsoft-edge/microsoft-edge-128.0.2739.79.ebuild diff --git a/www-client/opera-beta/Manifest b/www-client/opera-beta/Manifest index 73a381e744e3..483e63c1577d 100644 --- a/www-client/opera-beta/Manifest +++ b/www-client/opera-beta/Manifest @@ -1 +1,2 @@ DIST opera-beta_113.0.5230.26_amd64.deb 112625452 BLAKE2B ebcdfb139de9c2eb31fd10502f077012838affec9fc5f29a4b77a5b80b42ed88c27280923818719bdc15b086d0cfc464b5b449837fca4f5bf2b925bc8b8e736a SHA512 eeb53b60426bfbe2a4fac95faedbc99b4032c94aa097551f93f965d62682f2edc589fcff23204d5dce00e228ae4a02e8f130166c134b79f94a557fbb1d139959 +DIST opera-beta_114.0.5282.12_amd64.deb 114383976 BLAKE2B 5fa655e5fb52f49f527bba9a49be628dab30d60df9c04d064342359f080000615d5d579acff709d92bfe4ebcb3c357b23960e7f0de08258f6fddcf8dc915d087 SHA512 462da804c81130658e546f442baa4be2ee71f6d1ee95ddd591795ea1f32e4657657437ad456c124117b686dfb155ea7d8a16d40a4663a7234499640c7b50a8b6 diff --git a/www-client/opera-beta/opera-beta-114.0.5282.12.ebuild b/www-client/opera-beta/opera-beta-114.0.5282.12.ebuild new file mode 100644 index 000000000000..803a7b7c4565 --- /dev/null +++ b/www-client/opera-beta/opera-beta-114.0.5282.12.ebuild @@ -0,0 +1,173 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CHROMIUM_LANGS=" + bg bn ca cs da de el en-GB en-US es-419 es fil fi fr hi hr hu id + it ja ko lt lv ms nb nl pl pt-BR pt-PT ro ru sk sr sv sw ta te th tr uk vi + zh-CN zh-TW +" + +# These are intended for ebuild maintainer use to force RPM if DEB is not available. +: ${OPERA_FORCE_RPM=no} + +inherit chromium-2 pax-utils xdg + +if [[ ${OPERA_FORCE_RPM} == yes ]]; then + inherit rpm + OPERA_ARCHIVE_EXT="rpm" +else + inherit unpacker + OPERA_ARCHIVE_EXT="deb" +fi + +DESCRIPTION="A fast and secure web browser" +HOMEPAGE="https://www.opera.com/" + +SRC_URI_BASE=( + "https://download1.operacdn.com/pub/${PN}" + "https://download2.operacdn.com/pub/${PN}" + "https://download3.operacdn.com/pub/${PN}" + "https://download4.operacdn.com/pub/${PN}" +) + +if [[ ${PN} == opera ]]; then + MY_PN=${PN}-stable + SRC_URI_BASE=( "${SRC_URI_BASE[@]/%//desktop}" ) +else + MY_PN=${PN} +fi + +# Commit ref from `strings libffmpeg.so | grep -F "FFmpeg version"` matches this Chromium version +# used to select the correct ffmpeg-chromium version (corresponds to a major version of Chromium) +# Does not need to be updated for every new version of Opera, only when it breaks +CHROMIUM_VERSION="128" +SRC_URI="${SRC_URI_BASE[@]/%//${PV}/linux/${MY_PN}_${PV}_amd64.${OPERA_ARCHIVE_EXT}}" +S=${WORKDIR} + +LICENSE="OPERA-2018" +SLOT="0" +KEYWORDS="-* ~amd64" +IUSE="+ffmpeg-chromium +proprietary-codecs +suid qt5 qt6" +RESTRICT="bindist mirror strip" + +RDEPEND=" + >=app-accessibility/at-spi2-core-2.46.0:2 + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + gnome-base/gsettings-desktop-schemas + media-libs/alsa-lib + media-libs/mesa[gbm(+)] + net-misc/curl + net-print/cups + sys-apps/dbus + sys-libs/glibc + x11-libs/cairo + x11-libs/gdk-pixbuf + x11-libs/gtk+:3 + x11-libs/libdrm + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/libxshmfence + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrandr + x11-libs/pango + proprietary-codecs? ( + !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] ) + ffmpeg-chromium? ( media-video/ffmpeg-chromium:${CHROMIUM_VERSION} ) + ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5[X] + dev-qt/qtwidgets:5 + ) + qt6? ( dev-qt/qtbase:6[gui,widgets] ) +" + +QA_PREBUILT="*" +OPERA_HOME="opt/opera${PN#opera}" + +pkg_pretend() { + # Protect against people using autounmask overzealously + use amd64 || die "opera only works on amd64" +} + +pkg_setup() { + chromium_suid_sandbox_check_kernel_config +} + +src_unpack() { + : +} + +src_install() { + dodir / + cd "${ED}" || die + if [[ ${OPERA_FORCE_RPM} == yes ]]; then + rpm_src_unpack "${A[0]}" + else + unpacker + fi + + # move to /opt, bug #573052 + mkdir -p "${OPERA_HOME%${PN}}" + if [[ ${OPERA_FORCE_RPM} == yes ]]; then + mv "usr/lib64/${PN}" "${OPERA_HOME%${PN}}" || die + else + mv "usr/lib/x86_64-linux-gnu/${PN}" "${OPERA_HOME%${PN}}" || die + fi + rm -r "usr/lib" || die + + # disable auto update + rm "${OPERA_HOME}/${PN%-*}_autoupdate"{,.licenses,.version} || die + + if [[ ${OPERA_FORCE_RPM} == yes ]]; then + rm "${OPERA_HOME}/setup_repo.sh" || die + else + rm -r "usr/share/lintian" || die + + # fix docs + mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die + gzip -d usr/share/doc/${PF}/changelog.gz || die + fi + + # fix desktop file + sed -i \ + -e 's|^TargetEnvironment|X-&|g' \ + usr/share/applications/${PN}.desktop || die + + # remove unused language packs + pushd "${OPERA_HOME}/localization" > /dev/null || die + chromium_remove_language_paks + popd > /dev/null || die + + # setup opera symlink + rm "usr/bin/${PN}" || die + dosym "../../${OPERA_HOME}/${PN}" "/usr/bin/${PN}" + + # install proprietary codecs + rm "${OPERA_HOME}/resources/ffmpeg_preload_config.json" || die + if use proprietary-codecs; then + dosym ../../usr/$(get_libdir)/chromium/libffmpeg.so$(usex ffmpeg-chromium .${CHROMIUM_VERSION} "") \ + /${OPERA_HOME}/libffmpeg.so + fi + + if ! use qt5; then + rm "${OPERA_HOME}/libqt5_shim.so" || die + fi + if ! use qt6; then + rm "${OPERA_HOME}/libqt6_shim.so" || die + fi + + # pax mark opera, bug #562038 + pax-mark m "${OPERA_HOME}/opera" + # enable suid sandbox if requested + use suid && fperms 4711 "/${OPERA_HOME}/opera_sandbox" +} diff --git a/www-client/opera/Manifest b/www-client/opera/Manifest index bb8e96857842..1803f07447c0 100644 --- a/www-client/opera/Manifest +++ b/www-client/opera/Manifest @@ -1 +1 @@ -DIST opera-stable_113.0.5230.62_amd64.deb 113034752 BLAKE2B b12d2b900b74df9a872cb0e563254d9640bbde0e1c8a1fab6538e4dbfeec4ec3448fa8c0b4474bc54c4232aed0f63c4fee2a1ce434c8e2c7647a89773d0fbc99 SHA512 5f0365aaf7acbb9de69e24e27d53a6a984fc65560e6adf97959ede1c9f32d2a142d91db23552350c071827ba84b293779e255f919265ad6f8c5f24da5d537744 +DIST opera-stable_113.0.5230.86_amd64.deb 113046868 BLAKE2B 32789cfc780986dce67ccf2685ada75d0f71e004bad230b4c1548e34ade321ec67198a4949189f89dec3d89dc9bcf991b37ecdf71d2ac4f2f33b3034aa3a2e28 SHA512 60ce6966566720035e00042de73659bb33e3642779bfe951fb0a1f5bb7c1bc3c1789e16c471817fc6f3095fef46711b08849521a74ec593fb964accff504c42b diff --git a/www-client/opera/opera-113.0.5230.62.ebuild b/www-client/opera/opera-113.0.5230.86.ebuild index 3b649d9dff1d..3b649d9dff1d 100644 --- a/www-client/opera/opera-113.0.5230.62.ebuild +++ b/www-client/opera/opera-113.0.5230.86.ebuild diff --git a/www-plugins/chrome-binary-plugins/Manifest b/www-plugins/chrome-binary-plugins/Manifest index 086bcc5490ed..44aef0216c88 100644 --- a/www-plugins/chrome-binary-plugins/Manifest +++ b/www-plugins/chrome-binary-plugins/Manifest @@ -1,3 +1,3 @@ -DIST google-chrome-beta_129.0.6668.29-1_amd64.deb 111901672 BLAKE2B 741989b7e94e76749cbf107530ac9b7bd0596095853d8ec39eaf4532c3f20f9daf4a22a03ee7dfc9c2a145ec9dcfe382af968bbb4888ff7a48a6eb514f77de45 SHA512 4b67f3b00c90d777226128a4df8fed91d9125c5f14234557e94a053d5b384bf6714b778b0e2cfd06810bc02a6c15940d76ee92d823bacf4479c886dc7c82fb31 -DIST google-chrome-stable_128.0.6613.137-1_amd64.deb 110722184 BLAKE2B 111266b9e4b410ac5caf5920db1cb22d442370a734952f870158f6279576ff0399bcef6ef9afb256546cd1023b5d8c142974c3ac6d25171daff0b7d6fff83121 SHA512 4a0cb6e5b24419600bec5ff750d5590f0d6ac30eaa21f006e6f1895f98c3ebf8535cc441576ddc7992302bcc66c81f840800a73932bfd89a9a8053542a83b207 -DIST google-chrome-unstable_130.0.6699.3-1_amd64.deb 114126496 BLAKE2B d98bcdeacd532fa40dbf3076da7fde055e551dd85560839c789dee3bc7582b8ec86cd593026b233e68fdcd61ee5ab7ad409ab096035648b4808abbc6840f6dfe SHA512 2453fff151b7afcf04d9ec9f9ce978c46da49365502b030bfc05246ff6efc207d47e16dfcf5d6c3a811758613c1afb6cf75ab6fbd044cb4b9bc399fae256325e +DIST google-chrome-beta_129.0.6668.42-1_amd64.deb 111925504 BLAKE2B 12ac4e642da5af1b571f7062a734a13063a08557b51087bc4a92272e9d57ab91a083dfbebdddb1b7a1983e949f033ed4d1d7d393d819f2114bbdf7f883d5f8d0 SHA512 2c37992ed218c8b1018197a4491a405f7753e583f70a38b781a5a75c19de1da78842ea7e6eade0ad0fe18b6c685151fd19562c618067ad66dc4afb6a6d8932d8 +DIST google-chrome-stable_129.0.6668.58-1_amd64.deb 111913828 BLAKE2B 10cb2e84d7f580f823e1af3663e312226d55da2b028a011355c562a6fbf5662bb9384455e1da09bf95de989023e6c7918939c745b6ce96d197f56c90162971b3 SHA512 0390461517d166c2a884be6cabd707edaa636f55d9e87f1352b4fa984aceabacb5bf4b35128d73532196cb98a267c80faa88fa569bacdb4cf820142f0cab5564 +DIST google-chrome-unstable_130.0.6710.0-1_amd64.deb 114280168 BLAKE2B 040b582aae7800ead1704171feb1403d40a07c11141c851950a28c404e0348b57c13d4ea293d3504bfd112bdc213a1c1cc32859518c244d940847521846b8b65 SHA512 8d87d24942c6f4586e8c48723ee56225fda7c92a75388d60069848797b86392f6388ba2014035859e0a12e5555e59b208f77e8f5357908f19f4f1cc9665007ef diff --git a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-129.0.6668.29_beta.ebuild b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-129.0.6668.42_beta.ebuild index 3dabec912ba2..3dabec912ba2 100644 --- a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-129.0.6668.29_beta.ebuild +++ b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-129.0.6668.42_beta.ebuild diff --git a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-128.0.6613.137.ebuild b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-129.0.6668.58.ebuild index 01e48ea7c665..01e48ea7c665 100644 --- a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-128.0.6613.137.ebuild +++ b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-129.0.6668.58.ebuild diff --git a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-130.0.6699.3_alpha.ebuild b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-130.0.6710.0_alpha.ebuild index 3dabec912ba2..3dabec912ba2 100644 --- a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-130.0.6699.3_alpha.ebuild +++ b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-130.0.6710.0_alpha.ebuild diff --git a/www-plugins/passff-host/Manifest b/www-plugins/passff-host/Manifest index 67b1d77bd8f1..c6dba1f43879 100644 --- a/www-plugins/passff-host/Manifest +++ b/www-plugins/passff-host/Manifest @@ -1,4 +1,2 @@ -DIST passff-host-1.2.3.json 176 BLAKE2B 8eddc19cd0c072d25afff5cfa86a95d960ae7b986727099a04a1d983b887922f9ad77e940a2c80e0838a169afe81fa3f6529a901998bb98a6750ac888a09c264 SHA512 e4a4b90fb5323c6dbec339b9e67a7d546c6d7a95754fe03b3a4d96396c28de1caba3068b4e936ee0ce0997f865c8b5e53a3da1fb34f0123a04c5889302c28911 -DIST passff-host-1.2.3.py 3691 BLAKE2B 428573d2493f9ff8ef1dc6c8971508a05afa1bef7e06831462106e8daa98c9bedf63489e6630ff9c441ef981164656932c404ffd47e12a2e1e77a55c3ec4955e SHA512 be01e5ed3974bc0967e0dd102593ea8b4f62a5b4ca3f8f2fa2743f9abb4118334cfd27ecd595ce31dd079831614ebf8d91c5b504ad5ead067c245b921d756ceb DIST passff-host-1.2.4.json 176 BLAKE2B 8eddc19cd0c072d25afff5cfa86a95d960ae7b986727099a04a1d983b887922f9ad77e940a2c80e0838a169afe81fa3f6529a901998bb98a6750ac888a09c264 SHA512 e4a4b90fb5323c6dbec339b9e67a7d546c6d7a95754fe03b3a4d96396c28de1caba3068b4e936ee0ce0997f865c8b5e53a3da1fb34f0123a04c5889302c28911 DIST passff-host-1.2.4.py 4427 BLAKE2B 495947577f9ee7b2e02e42e5200d29896c63234f33dd3576b9d19fb986ac9419685f39c6bfd061fcc3754ab386030a62b08147b0967a6f49ac2be79268ea8e5a SHA512 ddc14a634f5ae33d3dd8db211fbea0e7728eb8fec8bca366b1860f0d92abc019556c1e3643fbcf85e92cbfbe99a4a67dda0c1d9c5651d20676fdd63b3635ffaa diff --git a/www-plugins/passff-host/passff-host-1.2.3-r1.ebuild b/www-plugins/passff-host/passff-host-1.2.3-r1.ebuild deleted file mode 100644 index 833c60452afa..000000000000 --- a/www-plugins/passff-host/passff-host-1.2.3-r1.ebuild +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright 2018-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{9..11} ) - -inherit python-single-r1 - -DESCRIPTION="Host app for the PassFF WebExtension" -HOMEPAGE="https://github.com/passff/passff-host" - -SRC_URI=" - https://github.com/passff/passff-host/releases/download/${PV}/passff.py -> ${P}.py - https://github.com/passff/passff-host/releases/download/${PV}/passff.json -> ${P}.json -" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 ~ppc64 ~x86" -IUSE="chrome chromium +firefox vivaldi" -REQUIRED_USE=" - ${PYTHON_REQUIRED_USE} - || ( chrome chromium firefox vivaldi ) -" - -RDEPEND=" - ${PYTHON_DEPS} - app-crypt/pinentry -" - -S="${WORKDIR}" - -src_unpack() { - cp "${DISTDIR}/${P}.json" . || die - cp "${DISTDIR}/${P}.py" . || die -} - -src_prepare() { - default - python_fix_shebang "${P}.py" -} - -src_install() { - local target_dirs=() - - use chrome && target_dirs+=( "/etc/opt/chrome/native-messaging-hosts" ) - use chromium && target_dirs+=( "/etc/chromium/native-messaging-hosts" ) - use firefox && target_dirs+=( "/usr/$(get_libdir)/mozilla/native-messaging-hosts" ) - # www-client/firefox-bin compile-time dir is under /usr/lib/ - use firefox && target_dirs+=( "/usr/lib/mozilla/native-messaging-hosts" ) - use vivaldi && target_dirs+=( "/etc/vivaldi/native-messaging-hosts" ) - - for target_dir in "${target_dirs[@]}"; do - sed "s;PLACEHOLDER;${target_dir}/passff.py;g" "${P}.json" > "passff.json" || die - - insinto "${target_dir}" - doins passff.json - exeinto "${target_dir}" - newexe "${P}.py" passff.py - done -} - -pkg_postinst() { - elog "Make sure to use graphical version of pinentry for ${PN} to work properly" - elog "Run 'eselect pinentry list'" - elog "And select 'pinentry-qt5' or 'pinentry-gnome'. efl might work too." -} diff --git a/www-servers/fnord/fnord-1.11-r2.ebuild b/www-servers/fnord/fnord-1.11-r2.ebuild deleted file mode 100644 index f458bde99dc3..000000000000 --- a/www-servers/fnord/fnord-1.11-r2.ebuild +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="Yet another small httpd" -HOMEPAGE="http://www.fefe.de/fnord/" -SRC_URI="http://www.fefe.de/fnord/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~hppa ~ppc ~riscv sparc x86" -IUSE="auth" - -RDEPEND=" - acct-group/nofiles - acct-user/fnord - acct-user/fnordlog - sys-apps/ucspi-tcp - virtual/daemontools -" - -DOCS=( TODO README README.auth SPEED CHANGES ) - -PATCHES=( "${FILESDIR}/${PN}"-1.10-gentoo.diff ) - -src_compile() { - # Fix for bug #45716 - use sparc && replace-sparc64-flags - use auth && append-flags -DAUTH - - emake DIET="" CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" -} - -src_install() { - dobin fnord-conf fnord - einstalldocs -} diff --git a/www-servers/fnord/fnord-1.11-r3.ebuild b/www-servers/fnord/fnord-1.11-r3.ebuild index 45aa8d0b571d..f433e4d75938 100644 --- a/www-servers/fnord/fnord-1.11-r3.ebuild +++ b/www-servers/fnord/fnord-1.11-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -6,8 +6,8 @@ EAPI=7 inherit flag-o-matic toolchain-funcs DESCRIPTION="Yet another small httpd" -HOMEPAGE="http://www.fefe.de/fnord/" -SRC_URI="http://www.fefe.de/fnord/${P}.tar.bz2" +HOMEPAGE="https://www.fefe.de/fnord/" +SRC_URI="https://www.fefe.de/fnord/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" diff --git a/www-servers/nginx-unit/Manifest b/www-servers/nginx-unit/Manifest index e75053821d80..b2f5bb93a8f9 100644 --- a/www-servers/nginx-unit/Manifest +++ b/www-servers/nginx-unit/Manifest @@ -1 +1,2 @@ DIST nginx-unit-1.32.1.tar.gz 937669 BLAKE2B ea3110dcc8ab95bc04fee891ade5fd19b069d6ef29da8c6aa6784fba87c9a8dd07ce0f4374b01696080097fd338839bd9819cded0461681673dadb4fa85b1207 SHA512 159b36f7afb8857188c9b64ee192e18d6990da3733caafcfb684b98e3f5182a7589ed2439f32af0cd3c763a3fa73f061f5a73ef01894182b1c12a4cd324c528a +DIST nginx-unit-1.33.0.tar.gz 1025455 BLAKE2B d17c02def260c325284c807b51c44b23bfe72b2be52bb98909b33e0f904cf833b1b254a5679ac0482fa0b3f4e4e1964017819bc05b3f7ea7ce18029d6ea9d68d SHA512 c0b2a7e8ede3fc11b52c6c44d7460c52e35dfed9b9ae6cfb5bd90c24859f601bc462626aa68a24191689bb5406250d391428c06641d84e3cf1d8615e7485fb93 diff --git a/www-servers/nginx-unit/nginx-unit-1.33.0.ebuild b/www-servers/nginx-unit/nginx-unit-1.33.0.ebuild new file mode 100644 index 000000000000..03dfb25af77e --- /dev/null +++ b/www-servers/nginx-unit/nginx-unit-1.33.0.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) + +inherit flag-o-matic python-single-r1 systemd toolchain-funcs + +MY_P="unit-${PV}" +DESCRIPTION="Dynamic web and application server" +HOMEPAGE="https://unit.nginx.org" +SRC_URI="https://unit.nginx.org/download/${MY_P}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +MY_USE="perl python ruby" +MY_USE_PHP="php8-1 php8-2" +IUSE="${MY_USE} ${MY_USE_PHP} perl ssl" +REQUIRED_USE="|| ( ${IUSE} ) + python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND="perl? ( dev-lang/perl:= ) + php8-1? ( dev-lang/php:8.1[embed] ) + php8-2? ( dev-lang/php:8.2[embed] ) + python? ( ${PYTHON_DEPS} ) + ruby? ( + dev-lang/ruby:= + dev-ruby/rubygems:= + ) + ssl? ( dev-libs/openssl:0= ) + virtual/libcrypt:0=" +RDEPEND="${DEPEND} + acct-user/nginx-unit + acct-group/nginx-unit" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + eapply_user + sed -i '/^CFLAGS/d' auto/make || die + default +} + +src_configure() { + local opt=( + --control=unix:/run/${PN}.sock + --log=/var/log/${PN} + --modules=/usr/$(get_libdir)/${PN} + --pid=/run/${PN}.pid + --prefix=/usr + --state=/var/lib/${PN} + --user=${PN} + --group=${PN} + ) + + use ssl && opt+=( --openssl ) + export AR="$(tc-getAR)" + export CC="$(tc-getCC)" + ./configure ${opt[@]} --ld-opt="${LDFLAGS}" || die "Core configuration failed" + + # Modules require position-independent code + append-cflags $(test-flags-CC -fPIC) + + for flag in ${MY_USE} ; do + if use ${flag} ; then + ./configure ${flag} || die "Module configuration failed: ${flag}" + fi + done + + for flag in ${MY_USE_PHP} ; do + if use ${flag} ; then + local php_slot="/usr/$(get_libdir)/${flag/-/.}" + ./configure php \ + --module=${flag} \ + --config=${php_slot}/bin/php-config \ + --lib-path=${php_slot}/$(get_libdir) || die "Module configuration failed: ${flag}" + fi + done +} + +src_install() { + default + + if use perl ; then + echo "1" + echo "D is ${D}" + emake DESTDIR="${D}/" perl-install + fi + + rm -rf "${ED}"/usr/var + + diropts -m 0770 + keepdir /var/lib/${PN} + newinitd "${FILESDIR}/${PN}.initd-r2" ${PN} + newconfd "${FILESDIR}"/nginx-unit.confd nginx-unit + systemd_newunit "${FILESDIR}"/${PN}.service ${PN}.service +} diff --git a/www-servers/tomcat/Manifest b/www-servers/tomcat/Manifest index 98c0e12a363c..14306b75a931 100644 --- a/www-servers/tomcat/Manifest +++ b/www-servers/tomcat/Manifest @@ -1,8 +1,8 @@ DIST apache-tomcat-10.1.28-src.tar.gz 6330343 BLAKE2B 0472035a9577683c7efa6a2ada4cf97c031a4df7c1678185b56da4dcb66d50516b72769aaeac6cfa8831097044b408b9fcab9c4b47fc7a21a86acf5c5cd83568 SHA512 fd69a7068fdfb89ceb2e71f64c7a9c17c54a4ebe65d7ea9936df266630073c6fb7412903a028fce4c465b1f46abb15d13c46fb408668dd937fa7f6bba4a75df6 DIST apache-tomcat-10.1.28-src.tar.gz.asc 833 BLAKE2B ae94b9f7d3b413e6209215edbf5453e5f90acd975d30a036797a628981560363af2d5da88f82af7114f2032157177151bb25d8cc046c032129bb22ae95e716c2 SHA512 a7ed73b51f78b2bb1461f28ed4b12516b77a5c65c3484269a8c889f111df14e81901cfda17831ba1b964b1d0acf717ae48386eea733255ad12df9e2b46ae2806 -DIST apache-tomcat-10.1.29-src.tar.gz 6321636 BLAKE2B 5d3bee8eeb8748edfaebd51f70025de85abeb42bcc1748f7b3cbef5bed4e6fde20f49439ff573f36e605ef307e4062a1d9243e7b1cb375ad8f67bfb947b99c30 SHA512 11dbbc2420043a71cf1a174e0066bf3fb6d0df07e87fa5a76769b899af357ed1065b379986e122a6c63d1cdd9890e793a18c6a31793b6f2707950398d0ebada2 -DIST apache-tomcat-10.1.29-src.tar.gz.asc 833 BLAKE2B 638afbd5cbf35040388a712e5369e546da361e4b43983204a4b5e1341e6665b558d288c067bdd916411d42724482078340eeef03a1ebf35115d3e998ebb59aa1 SHA512 108bd120997f407a776ad3ac7b6b2aeb4e17c4c44ca5cf75f3505f6ef8a3141203210099d2c01ad2387ebbed95f0f81865c687e6746161a508de8a0b1745b322 +DIST apache-tomcat-10.1.30-src.tar.gz 6924092 BLAKE2B ef1473ba50e7916691e10dc53345b76707a60c9809edab6202ec9daacc18066e713319fb25e341606124fd840148223fc63e52dd6970de6fc570d03cf87d1b17 SHA512 df26414d934e02797d1133ae9bcc110f9c3ef835de2d416c914e9c37872d4224a89b246942db57c6f85beb3c5686a7ff7a9e60d586349848913379de3211419b +DIST apache-tomcat-10.1.30-src.tar.gz.asc 833 BLAKE2B d12710695f14d662f2e8a410ef4fac63db7fbd1086ac5d9175aadf94a0cee7bfb1b21347aa0e6fa9f64a94ee282efc62b46115a343141d75193ffccb8ef0553e SHA512 1e959b29fa706c6cb1130b27863a3b51e105153eea5f14961058c3f65bb2d93eaba6a7b0b37380e5d8a84610986f423a3a548a8e1940254fc30dfc4f05ecaa9c DIST apache-tomcat-9.0.93-src.tar.gz 6472760 BLAKE2B 85e7da7eca0ac2a6d73b92b7eec73808309399513f326809e5f9343177cca6c8cf321489f6f1bae86426d626f5afda10f844bc77792d05cfdc8ccefb60d51d2a SHA512 015be491867f05ab39d1d39899fc5434516bd613b0a45e87a066fb4a6a1b5d9e2973ed370bfca86acacd55a45d6acd6354523a199a422bf506d864d43f6ddeac DIST apache-tomcat-9.0.93-src.tar.gz.asc 833 BLAKE2B 93f12701716013d17c4b3dc9b18713274fd1ad0f4455c3ef1bd9469920fc337f8f75784b961a8b83de90da28aff5b9e6e6a12cfc9aa217f9af4826fc6ee51871 SHA512 90977bc66413f1962cc1a00e645718e0f9cec93295110c29685df6cd62602994d142b6909087d7eece05b28fae5194d2c9a42c12027e6cb6e82c177d1fcd4f51 -DIST apache-tomcat-9.0.94-src.tar.gz 6463031 BLAKE2B 4c2e43418c073ab41fc566157b7d8a4dd6134c58f4dfc247b6ccf09c165d350b3741c43cfc619d60b5d8d0837d7774d886ae223f7208663354098bba1bec0bb8 SHA512 d731f4e8693326d5d9641a06ae77de9ef94088ffa0ddfdf52bcec3f5bc22c3139008750cefb156a078de0bb60d84131c3953305499a3bd912763b9a1c49504f6 -DIST apache-tomcat-9.0.94-src.tar.gz.asc 833 BLAKE2B bf413914af1deec7bddb2544d857674509abd5d09f0c2a66e28cbe1d81440ccf3676635b837b3035c77a516480da00ea85ef9de38edd18c0bf5c48e5906c86b7 SHA512 a46770cca1fc5d5d9af59f4dfc772a3b97c5908698f3d44590fce7811ec37d57ddcf251c2c96b1144583c94e2ca0a517c28bdd46800c804689740d9840063a36 +DIST apache-tomcat-9.0.95-src.tar.gz 7066563 BLAKE2B 9d00ad14c8bdbd9f63d9a9dc1651a36430eee09ebeb6c0b313802236544243866d75d7ca33544bcc8e9cdf4d3f636b9ccd8f754ea3212fe1c221b292d8a74984 SHA512 8ab69edd3761f2be112dbef9047cf331ad4d5ff8feb83dc35bebcdc1384853ed33313cc152f38f0604629d94e32a5eaf242a1dda8e7b04b9442dc03eb6b3b7db +DIST apache-tomcat-9.0.95-src.tar.gz.asc 833 BLAKE2B 51dcbb097426b7678296926690da9b18f617962a207eeaa3b6f9744dd285f3aa33b21da52573e066d536724e85c702dfde9995b674d79c47b48d8e29e09c3ebd SHA512 441ce2923fc5ae1d1fde9b3ee9de8eb0867528094f62cdc02fa7117a40523cbd16e81a5b815e40db02f85e9bed20ebee41115d87a4652ab5b7375e777e93ce16 diff --git a/www-servers/tomcat/tomcat-10.1.29.ebuild b/www-servers/tomcat/tomcat-10.1.30.ebuild index 1c4d65ce7969..1c4d65ce7969 100644 --- a/www-servers/tomcat/tomcat-10.1.29.ebuild +++ b/www-servers/tomcat/tomcat-10.1.30.ebuild diff --git a/www-servers/tomcat/tomcat-9.0.94.ebuild b/www-servers/tomcat/tomcat-9.0.95.ebuild index 14e23d60b567..14e23d60b567 100644 --- a/www-servers/tomcat/tomcat-9.0.94.ebuild +++ b/www-servers/tomcat/tomcat-9.0.95.ebuild diff --git a/www-servers/xsp/Manifest b/www-servers/xsp/Manifest index 14d54fe58540..02afb57cad8a 100644 --- a/www-servers/xsp/Manifest +++ b/www-servers/xsp/Manifest @@ -1,2 +1 @@ -DIST xsp-3.8_p2014120900.tar.gz 307722 BLAKE2B a6c7723e41490022ea969961f93fa3cb5b5eb583edd6ad1ef40dc38adc29cc9c0de16b7da5e98074b0848cdb7cce1e4c5e0298dc6f7f71d6a5c5e542a662005e SHA512 bf7a8cbeda330be98eb6fb1942ca9d6d8107ceabfb47db36d4b9b1f9d99afb329bad7737a4c9bfbf3ac205e9499dd58b2aa1cf7dfd83e41ee50b3820b05d4596 DIST xsp-4.7.1.tar.gz 307143 BLAKE2B f8a3a09d644d567728e6462df553ff52fdbd17e974dc25aeebd011e7b6c22ef76be69cc49acfd1cdd9edbd30728ce6b7ef5f33ecda50653db219863b17442b36 SHA512 f106b073bc17ae8fafcffdf2f0db7284f36b62b648fd79321a0de7f5ed15085a9116deccf464e72b3e6f5daf8d65d0a6a3d55c1b275546a4762fa3236bd58e2b diff --git a/www-servers/xsp/files/2.2/mod-mono-server.initd b/www-servers/xsp/files/2.2/mod-mono-server.initd deleted file mode 100644 index fb1c44935e09..000000000000 --- a/www-servers/xsp/files/2.2/mod-mono-server.initd +++ /dev/null @@ -1,80 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -depend() { - use net - after dotnet -} - -start() { - [ -z "$MonoServerRootDir" ] && \ - MonoServerRootDir="/usr/lib/xsp/test" - [ -z "$MonoApplications" ] && \ - MonoApplications="/mono:/usr/lib/xsp/test,/:." - [ -z "$UnixSocketFileName" ] && \ - UnixSocketFileName="/tmp/mod_mono_server" - [ -z "$MonoServerAddress" ] && \ - MonoServerAddress=127.0.0.1 - [ -z "$MonoServerPort" ] && \ - MonoServerPort=8080 - [ -z "$MonoServerVersion" ] && \ - MonoServerVersion=1 - - MONO_SERVER_OPTS="--root ${MonoServerRootDir} \ ---applications ${MonoApplications} --nonstop" - - [ -n "$MonoApplicationsConfigDir" ] && \ - MONO_SERVER_OPTS="${MONO_SERVER_OPTS} \ ---appconfigdir ${MonoApplicationsConfigDir}" - - case "$MonoServerChannel" in - "tcp" ) - MONO_SERVER_OPTS="${MONO_SERVER_OPTS} \ ---address ${MonoServerAddress} --port ${MonoServerPort}" - ;; - - "unix" ) - [ -f "$UnixSocketFileName" ] && rm -f $UnixSocketFileName - MONO_SERVER_OPTS="${MONO_SERVER_OPTS} \ ---filename ${UnixSocketFileName}" - ;; - - * ) - eerror "Please set a valid value for MonoServerChannel" - return 1 - ;; - esac - - if [ ${MonoServerVersion} -eq 1 ]; then - modmonoserverpath=1.0/mod-mono-server.exe - elif [ ${MonoServerVersion} -eq 2 ]; then - modmonoserverpath=2.0/mod-mono-server2.exe - else - eerror "MonoServerVersion was not properly set. Check your /etc/conf.d/xsp" - return 1 - fi - - export MONO_SHARED_DIR=/tmp - - ebegin "Starting mod-mono-server" - - start-stop-daemon --quiet --start \ - --background \ - --make-pidfile \ - --pidfile /var/run/aspnet/mod-mono-server.pid \ - --chuid aspnet \ - --exec /usr/bin/mono /usr/lib/mono/${modmonoserverpath} \ - -- $MONO_SERVER_OPTS - - eend $? -} - -stop() { - ebegin "Stopping mod-mono-server" - - start-stop-daemon -o --quiet --stop \ - --pidfile /var/run/aspnet/mod-mono-server.pid - - eend $? -} diff --git a/www-servers/xsp/xsp-3.8_p2014120900-r1.ebuild b/www-servers/xsp/xsp-4.7.1-r2.ebuild index 5a2a1649d828..8a89773c5328 100644 --- a/www-servers/xsp/xsp-3.8_p2014120900-r1.ebuild +++ b/www-servers/xsp/xsp-4.7.1-r2.ebuild @@ -3,21 +3,17 @@ EAPI=7 -# TODO: We can probably yank the USE_DOTNET/dotnet.eclass stuff -# but let's be conservative for now USE_DOTNET="net35 net40 net45" inherit autotools dotnet systemd -EGIT_COMMIT="e272a2c006211b6b03be2ef5bbb9e3f8fefd0768" DESCRIPTION="XSP is a small web server that can host ASP.NET pages" -HOMEPAGE="https://www.mono-project.com/ASP.NET" -SRC_URI="https://github.com/mono/xsp/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz" -S="${WORKDIR}/xsp-${EGIT_COMMIT}" +HOMEPAGE="https://www.mono-project.com/ASP.NET/" +SRC_URI="https://github.com/mono/xsp/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="MIT" SLOT="0" KEYWORDS="~amd64 ~ppc ~x86" -IUSE="developer doc test" +IUSE="doc test" RESTRICT="!test? ( test )" DEPEND="dev-db/sqlite:3" @@ -47,25 +43,14 @@ src_prepare() { src_configure() { local myeconfargs=( - "--enable-maintainer-mode" + --enable-maintainer-mode + $(use_with test unit-tests) + $(use_enable doc docs) ) - use test && myeconfargs+=( "--with_unit_tests" ) - use doc || myeconfargs+=( "--disable-docs" ) - econf "${myeconfargs[@]}" } -#src_compile() { -# exbuild xsp.sln - -# if use developer ; then -# exbuild /p:DebugSymbols=True ${METAFILETOBUILD} -# else -# exbuild /p:DebugSymbols=False ${METAFILETOBUILD} -# fi -#} - src_install() { default @@ -90,6 +75,4 @@ src_install() { # # insinto /usr/lib/systemd/system systemd_dounit "${FILESDIR}"/systemd/mono-xsp4.service - - keepdir /var/run/aspnet } diff --git a/x11-apps/luit/Manifest b/x11-apps/luit/Manifest index 5dc77c681a1d..1b1845334c36 100644 --- a/x11-apps/luit/Manifest +++ b/x11-apps/luit/Manifest @@ -1,2 +1,4 @@ DIST luit-20240102.tgz 210935 BLAKE2B 560815d78e00ee7925b1efc43f7544b4c3d7f7d3e6a7183acaffd1d02931314a51cdead9c8631cb3dfdf2ffca5601405a01146164e1f0043ced55431833c7550 SHA512 0336fadd44fd097e7d10111c18c59725293170f8b0d3779b2b710761c74065cffe7414c576b4df587ef5b1d7794217553a5562e5c665c5a37d660cf9e26bc08e DIST luit-20240102.tgz.asc 729 BLAKE2B d5b133c4cb12e9d17e38d48d0def4fc5533445412375511703334ddbcea3f9987a3043acd4071729e5d71fc7cfeb7c5c02ad7e0b6bb1309d60bc25d646b76997 SHA512 e4b285d147a216003537cd00dd481f4823336f7b8ca9357a561c8adb8bbfca8d584cf304683fe697d7d2713f795a94d973545a092d5d3252d904e5d22357a81e +DIST luit-20240910.tgz 212641 BLAKE2B 8117d94a47aba72c853ea59db5bedb614c0a34811ab1d8e658983c0c9f541a53febb4633fa5fef7cd886aa463f0b496b8c05a6c2af46949c670bbd0b037d12ff SHA512 32afea5dae158eeec1b868a1d942287e7e191c3f57bf557039e510cd80c5d7f48b2c1af4161cc387c37f30578434eee7be9a98a1f6e9c0533b9037e53f2c9bc5 +DIST luit-20240910.tgz.asc 729 BLAKE2B 9bcdf051b39a3194115617d2aa8dbe490dea818f3f9d461a587676c8a415702560f265d556ec602ca02f5b763bb28abede89a0ff06f7220ba0159cbcb096cd0d SHA512 b144d95486ad25ba1c6a9d9d5c11a5f91023d9b45d9481820296ff8e10bde3593abf57e3632a07772167c13c4cb9590587968587d8de6d8bc333328202a6ba15 diff --git a/x11-apps/luit/luit-20240910.ebuild b/x11-apps/luit/luit-20240910.ebuild new file mode 100644 index 000000000000..e8d957a5dc87 --- /dev/null +++ b/x11-apps/luit/luit-20240910.ebuild @@ -0,0 +1,30 @@ +# Copyright 2019-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc +inherit verify-sig + +DESCRIPTION="Locale and ISO 2022 support for Unicode terminals" +HOMEPAGE="https://invisible-island.net/luit/" +SRC_URI="https://invisible-mirror.net/archives/${PN}/${P}.tgz" +SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${P}.tgz.asc )" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" + +DEPEND=" + sys-libs/zlib + virtual/libiconv +" +RDEPEND="${DEPEND}" +BDEPEND=" + sys-apps/groff + verify-sig? ( sec-keys/openpgp-keys-thomasdickey ) +" + +src_configure() { + econf --disable-fontenc --enable-iconv +} diff --git a/x11-apps/mesa-progs/Manifest b/x11-apps/mesa-progs/Manifest index 0bb6b296cda9..ec59b11faacc 100644 --- a/x11-apps/mesa-progs/Manifest +++ b/x11-apps/mesa-progs/Manifest @@ -1,2 +1 @@ -DIST mesa-demos-8.5.0.tar.bz2 10367517 BLAKE2B 60e9edfcfe6d28f73964b81ae4e016fdbeb45d9d6d91de71bf736c86fa6181749f2e12729c8c716f6e6f5d4e39075de131877d1f09c3e511a4338b0f44ddb6a6 SHA512 df6a7f09638ca389d6e8bc569e599dcc59c9aa280bcfb95976d83e5cd3edfe74bb3a31f0953956dc16faa540ee5b09990e3377e1341d836fc527e50ace6e60b8 DIST mesa-demos-9.0.0.tar.xz 14839368 BLAKE2B 426211886344e88616670f0da8c71385e0ab86fd7dab60c7a477b165f33d2f7bd5fd9297f1f67c78e60fed5c98ab8851c1bd4ae92a6b0b486fd158196b109eb0 SHA512 af33ef72a521416e39d93370b2b4ccb768f08084c9e4c0aa62868210d9465c858e5cb8e5d23952295a3073946f609eb8723ee60b39dd9fb6696c4e45aafbb2c1 diff --git a/x11-apps/mesa-progs/files/8.5.0-Disable-things-we-don-t-want.patch b/x11-apps/mesa-progs/files/8.5.0-Disable-things-we-don-t-want.patch deleted file mode 100644 index 666f568e461f..000000000000 --- a/x11-apps/mesa-progs/files/8.5.0-Disable-things-we-don-t-want.patch +++ /dev/null @@ -1,254 +0,0 @@ -From caa6f31f1032f21756ab327429702feb4381045e Mon Sep 17 00:00:00 2001 -From: Matt Turner <mattst88@gmail.com> -Date: Mon, 30 May 2022 12:16:24 -0400 -Subject: [PATCH] Disable things we don't want - ---- - meson.build | 11 +++-------- - src/egl/opengl/meson.build | 29 ---------------------------- - src/egl/opengles2/meson.build | 5 ----- - src/glad/meson.build | 17 ----------------- - src/meson.build | 2 -- - src/util/gl_wrap.h | 2 -- - src/util/meson.build | 20 ------------------- - src/xdemos/meson.build | 36 ----------------------------------- - 8 files changed, 3 insertions(+), 119 deletions(-) - -diff --git a/meson.build b/meson.build -index e1968fab..9d59c1ec 100644 ---- a/meson.build -+++ b/meson.build -@@ -75,14 +75,7 @@ endif - - dep_threads = dependency('threads') - --dep_glu = dependency('glu', required : dep_x11.found()) --if not dep_glu.found() -- _glu_name = 'GLU' -- if host_machine.system() == 'windows' -- _glu_name = 'glu32' -- endif -- dep_glu = cc.find_library(_glu_name, has_headers: 'GL/glu.h') --endif -+dep_glu = disabler() - - # GBM is needed for EGL on KMS - dep_gbm = dependency('gbm', required : false, disabler : true) -@@ -117,6 +110,8 @@ else - ) - endif - -+dep_glut = disabler() -+ - if dep_glut.found() and cc.has_function('glutInitContextProfile', - include_directories: glut_incdir, - prefix : '#include <GL/freeglut.h>') -diff --git a/src/egl/opengl/meson.build b/src/egl/opengl/meson.build -index ba7cadc3..789b25a5 100644 ---- a/src/egl/opengl/meson.build -+++ b/src/egl/opengl/meson.build -@@ -4,41 +4,12 @@ executable( - 'eglgears_x11', files('eglgears.c'), - dependencies: [_deps, idep_eglut_x11] - ) --executable( -- 'egltri_x11', files('egltri.c'), -- dependencies: [_deps, idep_eglut_x11] --) --executable( -- 'xeglgears', files('xeglgears.c'), -- dependencies: [_deps, dep_egl, dep_x11] --) --executable( -- 'xeglthreads', files('xeglthreads.c'), -- dependencies: [_deps, dep_x11] --) -- - executable( - 'eglgears_wayland', files('eglgears.c'), - dependencies: [_deps, idep_eglut_wayland] - ) --executable( -- 'egltri_wayland', files('egltri.c'), -- dependencies: [_deps, idep_eglut_wayland] --) -- --executable( -- 'eglkms', 'eglkms.c', -- dependencies: [_deps, dep_drm, dep_gbm, dep_egl] --) -- - executable( - 'eglinfo', 'eglinfo.c', - dependencies: [dep_egl], - install: true - ) -- --executable( -- 'peglgears', 'peglgears.c', -- dependencies: [dep_gl, dep_egl, dep_m, idep_util] --) -- -diff --git a/src/egl/opengles2/meson.build b/src/egl/opengles2/meson.build -index 59f69ed7..7137a961 100644 ---- a/src/egl/opengles2/meson.build -+++ b/src/egl/opengles2/meson.build -@@ -9,11 +9,6 @@ executable( - dependencies: [dep_gles2, idep_eglut_x11, dep_m], - install: true - ) --executable( -- 'es2tri', files('es2tri.c'), -- dependencies: [_deps_x11, dep_m], -- install: true --) - executable( - 'es2gears_wayland', files('es2gears.c'), - dependencies: [dep_gles2, idep_eglut_wayland, dep_m], -diff --git a/src/glad/meson.build b/src/glad/meson.build -index 2d107609..23dacd45 100644 ---- a/src/glad/meson.build -+++ b/src/glad/meson.build -@@ -19,20 +19,3 @@ - # SOFTWARE. - - inc_glad = include_directories('include') -- --_libglad_files = files('src/glad.c') --if host_machine.system() == 'windows' -- _libglad_files += files('src/glad_wgl.c') --endif -- --_libglad = static_library( -- 'glad', -- _libglad_files, -- include_directories: inc_glad --) -- --idep_glad = declare_dependency( -- link_with: _libglad, -- dependencies: dep_dl, -- include_directories: inc_glad, --) -diff --git a/src/meson.build b/src/meson.build -index 39cac78d..4d4abbf8 100644 ---- a/src/meson.build -+++ b/src/meson.build -@@ -55,5 +55,3 @@ endif - if host_machine.system() == 'windows' - subdir('wgl') - endif -- --subdir('data') -diff --git a/src/util/gl_wrap.h b/src/util/gl_wrap.h -index b2ff9c8f..f482df5e 100644 ---- a/src/util/gl_wrap.h -+++ b/src/util/gl_wrap.h -@@ -7,10 +7,8 @@ - - #ifdef __APPLE__ - # include <OpenGL/gl.h> --# include <OpenGL/glu.h> - #else - # include <GL/gl.h> --# include <GL/glu.h> - #endif - - #ifndef GLAPIENTRY -diff --git a/src/util/meson.build b/src/util/meson.build -index 9168aecf..066073cc 100644 ---- a/src/util/meson.build -+++ b/src/util/meson.build -@@ -20,26 +20,6 @@ - - inc_util = include_directories('.') - --files_libutil = files( -- 'readtex.c', -- 'showbuffer.c', -- 'trackball.c', --) -- --_deps = [] --if dep_glut.found() -- files_libutil += files('shaderutil.c') -- _deps += dep_glut --endif -- --_libutil = static_library( -- 'util', -- files_libutil, -- include_directories: inc_glad, -- dependencies: _deps, --) -- - idep_util = declare_dependency( -- link_with: _libutil, - include_directories: inc_util, - ) -diff --git a/src/xdemos/meson.build b/src/xdemos/meson.build -index d6d5d5d5..ce26699f 100644 ---- a/src/xdemos/meson.build -+++ b/src/xdemos/meson.build -@@ -21,25 +21,7 @@ - glx_deps = [dep_gl, dep_x11, dep_m] - - progs = [ -- 'glsync', -- 'glxdemo', - 'glxgears', -- 'glxgears_pixmap', -- 'glxcontexts', -- 'glxheads', -- 'glxpixmap', -- 'glxpbdemo', -- 'glxsnoop', -- 'glxswapcontrol', -- 'manywin', -- 'multictx', -- 'offset', -- 'overlay', -- 'shape', -- 'sharedtex', -- 'texture_from_pixmap', -- 'wincopy', -- 'xfont', - ] - foreach p : progs - executable( -@@ -56,23 +38,7 @@ executable( - install: true - ) - --executable( -- 'xrotfontdemo', -- files('xrotfontdemo.c', 'xuserotfont.c'), -- dependencies: glx_deps, -- install: true --) -- --_libpbutil = static_library( -- 'pbutil', -- files('pbutil.c'), -- dependencies: glx_deps --) -- - pbutil_progs = [ -- 'glxgears_fbconfig', -- 'pbinfo', -- 'pbdemo', - ] - foreach p : pbutil_progs - executable( -@@ -84,8 +50,6 @@ foreach p : pbutil_progs - endforeach - - thread_progs = [ -- 'glthreads', -- 'sharedtex_mt', - ] - foreach p : thread_progs - executable( --- -2.35.1 - diff --git a/x11-apps/mesa-progs/mesa-progs-8.5.0.ebuild b/x11-apps/mesa-progs/mesa-progs-8.5.0.ebuild deleted file mode 100644 index 7f0ce5664002..000000000000 --- a/x11-apps/mesa-progs/mesa-progs-8.5.0.ebuild +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit meson-multilib - -MY_PN="${PN/progs/demos}" -MY_P="${MY_PN}-${PV}" - -DESCRIPTION="Mesa's OpenGL utility and demo programs (glxgears and glxinfo)" -HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/ https://gitlab.freedesktop.org/mesa/demos" -if [[ ${PV} = 9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/demos.git" -else - SRC_URI="https://mesa.freedesktop.org/archive/demos/${MY_P}.tar.bz2 - https://mesa.freedesktop.org/archive/demos/${PV}/${MY_P}.tar.bz2" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux" - S="${WORKDIR}/${MY_P}" -fi -LICENSE="LGPL-2" -SLOT="0" -IUSE="gles2 wayland X" - -RDEPEND=" - media-libs/mesa[${MULTILIB_USEDEP},egl(+),gles2?,wayland?,X?] - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] ) - X? ( - x11-libs/libX11[${MULTILIB_USEDEP}] - x11-libs/libXext[${MULTILIB_USEDEP}] - ) -" -DEPEND="${RDEPEND} - wayland? ( >=dev-libs/wayland-protocols-1.12 ) - X? ( x11-base/xorg-proto ) -" -BDEPEND=" - virtual/pkgconfig - wayland? ( dev-util/wayland-scanner ) -" - -PATCHES=( - "${FILESDIR}"/8.5.0-Disable-things-we-don-t-want.patch -) - -pkg_setup() { - MULTILIB_CHOST_TOOLS+=( - /usr/bin/eglinfo - ) - - use X && MULTILIB_CHOST_TOOLS+=( - /usr/bin/glxgears - /usr/bin/glxinfo - ) - - use gles2 && use X && MULTILIB_CHOST_TOOLS+=( - /usr/bin/es2_info - /usr/bin/es2gears_x11 - ) - - use gles2 && use wayland && MULTILIB_CHOST_TOOLS+=( - /usr/bin/es2gears_wayland - ) -} - -multilib_src_configure() { - local emesonargs=( - -Dlibdrm=disabled - -Degl=enabled - -Dgles1=disabled - $(meson_feature gles2) - -Dosmesa=disabled - $(meson_feature wayland) - $(meson_feature X x11) - ) - meson_src_configure -} diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-550.107.02-kernel-6.11-fbdev.patch b/x11-drivers/nvidia-drivers/files/nvidia-drivers-550.107.02-kernel-6.11-fbdev.patch new file mode 100644 index 000000000000..01f7e2aa1660 --- /dev/null +++ b/x11-drivers/nvidia-drivers/files/nvidia-drivers-550.107.02-kernel-6.11-fbdev.patch @@ -0,0 +1,134 @@ +At a glance this should(?) only be affecting fbdev=1 (default-off and +marked experimental in nvidia.conf). Compiles fine either way given +the test would've failed resulting in usage being skipped. + +NVIDIA is already aware[1] and this should be unnecessary next bumps. +[1] https://github.com/NVIDIA/open-gpu-kernel-modules/pull/692 +--- a/kernel/conftest.sh ++++ b/kernel/conftest.sh +@@ -6612,2 +6612,21 @@ + ++ drm_fbdev_ttm_setup) ++ # ++ # Determine whether drm_fbdev_ttm_setup is present. ++ # ++ # Added by commit 9060d7f49376 ("drm/fb-helper: Finish the ++ # generic fbdev emulation") in v4.19. ++ # ++ CODE=" ++ #include <drm/drm_fb_helper.h> ++ #if defined(NV_DRM_DRM_FBDEV_TTM_H_PRESENT) ++ #include <drm/drm_fbdev_ttm.h> ++ #endif ++ void conftest_drm_fbdev_ttm_setup(void) { ++ drm_fbdev_ttm_setup(); ++ }" ++ ++ compile_check_conftest "$CODE" "NV_DRM_FBDEV_TTM_SETUP_PRESENT" "" "functions" ++ ;; ++ + drm_aperture_remove_conflicting_pci_framebuffers) +--- a/kernel/header-presence-tests.mk ++++ b/kernel/header-presence-tests.mk +@@ -17,2 +17,3 @@ + drm/drm_fbdev_generic.h \ ++ drm/drm_fbdev_ttm.h \ + drm/drm_framebuffer.h \ +--- a/kernel/nvidia-drm/nvidia-drm-drv.c ++++ b/kernel/nvidia-drm/nvidia-drm-drv.c +@@ -75,2 +75,6 @@ + ++#if defined(NV_DRM_DRM_FBDEV_TTM_H_PRESENT) ++#include <drm/drm_fbdev_ttm.h> ++#endif ++ + #include <linux/pci.h> +@@ -1853,3 +1857,7 @@ + } ++#if defined(NV_DRM_FBDEV_TTM_AVAILABLE) ++ drm_fbdev_ttm_setup(dev, 32); ++#else + drm_fbdev_generic_setup(dev, 32); ++#endif + } +--- a/kernel/nvidia-drm/nvidia-drm-os-interface.h ++++ b/kernel/nvidia-drm/nvidia-drm-os-interface.h +@@ -60,4 +60,7 @@ + +-#if defined(NV_DRM_FBDEV_GENERIC_SETUP_PRESENT) && defined(NV_DRM_APERTURE_REMOVE_CONFLICTING_PCI_FRAMEBUFFERS_PRESENT) ++#if (defined(NV_DRM_FBDEV_GENERIC_SETUP_PRESENT) || defined(NV_DRM_FBDEV_TTM_SETUP_PRESENT)) && defined(NV_DRM_APERTURE_REMOVE_CONFLICTING_PCI_FRAMEBUFFERS_PRESENT) + #define NV_DRM_FBDEV_GENERIC_AVAILABLE ++#if defined(NV_DRM_FBDEV_TTM_SETUP_PRESENT) ++#define NV_DRM_FBDEV_TTM_AVAILABLE ++#endif + #endif +--- a/kernel/nvidia-drm/nvidia-drm-sources.mk ++++ b/kernel/nvidia-drm/nvidia-drm-sources.mk +@@ -69,2 +69,3 @@ + NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_fbdev_generic_setup ++NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_fbdev_ttm_setup + NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_connector_attach_hdr_output_metadata_property +--- a/kernel-module-source/kernel-open/conftest.sh ++++ b/kernel-module-source/kernel-open/conftest.sh +@@ -6612,2 +6612,21 @@ + ++ drm_fbdev_ttm_setup) ++ # ++ # Determine whether drm_fbdev_ttm_setup is present. ++ # ++ # Added by commit 9060d7f49376 ("drm/fb-helper: Finish the ++ # generic fbdev emulation") in v4.19. ++ # ++ CODE=" ++ #include <drm/drm_fb_helper.h> ++ #if defined(NV_DRM_DRM_FBDEV_TTM_H_PRESENT) ++ #include <drm/drm_fbdev_ttm.h> ++ #endif ++ void conftest_drm_fbdev_ttm_setup(void) { ++ drm_fbdev_ttm_setup(); ++ }" ++ ++ compile_check_conftest "$CODE" "NV_DRM_FBDEV_TTM_SETUP_PRESENT" "" "functions" ++ ;; ++ + drm_aperture_remove_conflicting_pci_framebuffers) +--- a/kernel-module-source/kernel-open/header-presence-tests.mk ++++ b/kernel-module-source/kernel-open/header-presence-tests.mk +@@ -17,2 +17,3 @@ + drm/drm_fbdev_generic.h \ ++ drm/drm_fbdev_ttm.h \ + drm/drm_framebuffer.h \ +--- a/kernel-module-source/kernel-open/nvidia-drm/nvidia-drm-drv.c ++++ b/kernel-module-source/kernel-open/nvidia-drm/nvidia-drm-drv.c +@@ -75,2 +75,6 @@ + ++#if defined(NV_DRM_DRM_FBDEV_TTM_H_PRESENT) ++#include <drm/drm_fbdev_ttm.h> ++#endif ++ + #include <linux/pci.h> +@@ -1853,3 +1857,7 @@ + } ++#if defined(NV_DRM_FBDEV_TTM_AVAILABLE) ++ drm_fbdev_ttm_setup(dev, 32); ++#else + drm_fbdev_generic_setup(dev, 32); ++#endif + } +--- a/kernel-module-source/kernel-open/nvidia-drm/nvidia-drm-os-interface.h ++++ b/kernel-module-source/kernel-open/nvidia-drm/nvidia-drm-os-interface.h +@@ -60,4 +60,7 @@ + +-#if defined(NV_DRM_FBDEV_GENERIC_SETUP_PRESENT) && defined(NV_DRM_APERTURE_REMOVE_CONFLICTING_PCI_FRAMEBUFFERS_PRESENT) ++#if (defined(NV_DRM_FBDEV_GENERIC_SETUP_PRESENT) || defined(NV_DRM_FBDEV_TTM_SETUP_PRESENT)) && defined(NV_DRM_APERTURE_REMOVE_CONFLICTING_PCI_FRAMEBUFFERS_PRESENT) + #define NV_DRM_FBDEV_GENERIC_AVAILABLE ++#if defined(NV_DRM_FBDEV_TTM_SETUP_PRESENT) ++#define NV_DRM_FBDEV_TTM_AVAILABLE ++#endif + #endif +--- a/kernel-module-source/kernel-open/nvidia-drm/nvidia-drm-sources.mk ++++ b/kernel-module-source/kernel-open/nvidia-drm/nvidia-drm-sources.mk +@@ -69,2 +69,3 @@ + NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_fbdev_generic_setup ++NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_fbdev_ttm_setup + NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_connector_attach_hdr_output_metadata_property diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-550.107.02-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-550.107.02-r1.ebuild index 17ddc58a0cfc..c0427557f1a5 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-550.107.02-r1.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-550.107.02-r1.ebuild @@ -90,6 +90,7 @@ QA_PREBUILT="lib/firmware/* opt/bin/* usr/lib*" PATCHES=( "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch "${FILESDIR}"/nvidia-settings-530.30.02-desktop.patch + "${FILESDIR}"/nvidia-drivers-550.107.02-kernel-6.11-fbdev.patch ) pkg_setup() { diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-550.40.71-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-550.40.71-r1.ebuild index ce8321ba3ab2..abee29c518c4 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-550.40.71-r1.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-550.40.71-r1.ebuild @@ -91,6 +91,7 @@ QA_PREBUILT="lib/firmware/* opt/bin/* usr/lib*" PATCHES=( "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch "${FILESDIR}"/nvidia-settings-530.30.02-desktop.patch + "${FILESDIR}"/nvidia-drivers-550.107.02-kernel-6.11-fbdev.patch ) pkg_setup() { diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-560.35.03-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-560.35.03-r1.ebuild index bfa3b9e55501..ac755f870b2e 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-560.35.03-r1.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-560.35.03-r1.ebuild @@ -93,6 +93,7 @@ QA_PREBUILT="lib/firmware/* opt/bin/* usr/lib*" PATCHES=( "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch "${FILESDIR}"/nvidia-settings-530.30.02-desktop.patch + "${FILESDIR}"/nvidia-drivers-550.107.02-kernel-6.11-fbdev.patch ) pkg_setup() { diff --git a/x11-libs/cairo/cairo-1.18.2-r1.ebuild b/x11-libs/cairo/cairo-1.18.2-r1.ebuild new file mode 100644 index 000000000000..9bcd379e8859 --- /dev/null +++ b/x11-libs/cairo/cairo-1.18.2-r1.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson-multilib + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.freedesktop.org/cairo/cairo.git" +else + SRC_URI="https://gitlab.freedesktop.org/cairo/cairo/-/archive/${PV}/cairo-${PV}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +DESCRIPTION="A vector graphics library with cross-device output support" +HOMEPAGE="https://www.cairographics.org/ https://gitlab.freedesktop.org/cairo/cairo" +LICENSE="|| ( LGPL-2.1 MPL-1.1 )" +SLOT="0" +IUSE="X aqua debug +glib gtk-doc test" +# Tests need more wiring up like e.g. https://gitlab.freedesktop.org/cairo/cairo/-/blob/master/.gitlab-ci.yml +# any2ppm tests seem to hang for now. +RESTRICT="test !test? ( test )" + +RDEPEND=" + >=dev-libs/lzo-2.06-r1:2[${MULTILIB_USEDEP}] + >=media-libs/fontconfig-2.13.92[${MULTILIB_USEDEP}] + >=media-libs/freetype-2.13:2[png,${MULTILIB_USEDEP}] + >=media-libs/libpng-1.6.10:0=[${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] + >=x11-libs/pixman-0.42.3[${MULTILIB_USEDEP}] + debug? ( sys-libs/binutils-libs:0=[${MULTILIB_USEDEP}] ) + glib? ( >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}] ) + X? ( + >=x11-libs/libXrender-0.9.8[${MULTILIB_USEDEP}] + >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] + >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] + >=x11-libs/libxcb-1.9.1:=[${MULTILIB_USEDEP}] + )" +DEPEND="${RDEPEND} + test? ( + app-text/ghostscript-gpl + app-text/poppler[cairo] + gnome-base/librsvg + ) + X? ( x11-base/xorg-proto )" +BDEPEND=" + virtual/pkgconfig + gtk-doc? ( dev-util/gtk-doc )" + +PATCHES=( + "${FILESDIR}"/${PN}-respect-fontconfig.patch + "${FILESDIR}"/${P}-cups.patch +) + +multilib_src_configure() { + local emesonargs=( + -Ddwrite=disabled + -Dfontconfig=enabled + -Dfreetype=enabled + -Dpng=enabled + $(meson_feature aqua quartz) + $(meson_feature X tee) + $(meson_feature X xcb) + $(meson_feature X xlib) + -Dxlib-xcb=disabled + -Dzlib=enabled + + # Requires poppler-glib (poppler[cairo]) which isn't available in multilib + $(meson_native_use_feature test tests) + + -Dgtk2-utils=disabled + + $(meson_feature glib) + -Dspectre=disabled # only used for tests + $(meson_feature debug symbol-lookup) + + $(meson_use gtk-doc gtk_doc) + ) + + meson_src_configure +} + +multilib_src_test() { + multilib_is_native_abi && meson_src_test +} + +multilib_src_install_all() { + einstalldocs + + if use gtk-doc; then + mkdir -p "${ED}"/usr/share/gtk-doc/cairo || die + mv "${ED}"/usr/share/gtk-doc/{html/cairo,cairo/html} || die + rmdir "${ED}"/usr/share/gtk-doc/html || die + fi +} diff --git a/x11-libs/cairo/files/cairo-1.18.2-cups.patch b/x11-libs/cairo/files/cairo-1.18.2-cups.patch new file mode 100644 index 000000000000..6a34c28a6250 --- /dev/null +++ b/x11-libs/cairo/files/cairo-1.18.2-cups.patch @@ -0,0 +1,32 @@ +https://bugs.gentoo.org/939607 +https://gitlab.freedesktop.org/cairo/cairo/-/issues/870 +https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/595 +https://gitlab.freedesktop.org/cairo/cairo/-/commit/f19e2fe080ddcfce93c8234a919fd882f3d63362 + +From f19e2fe080ddcfce93c8234a919fd882f3d63362 Mon Sep 17 00:00:00 2001 +From: Adrian Johnson <ajohnson@redneon.com> +Date: Fri, 13 Sep 2024 06:28:39 +0930 +Subject: [PATCH] cff: Don't fail if no local subs + +Fixes: #870 +--- a/src/cairo-cff-subset.c ++++ b/src/cairo-cff-subset.c +@@ -952,9 +952,13 @@ cairo_cff_font_read_private_dict (cairo_cff_font_t *font, + decode_number (operand, nominal_width); + + num_subs = _cairo_array_num_elements (local_sub_index); +- *local_subs_used = _cairo_calloc_ab (num_subs, sizeof (cairo_bool_t)); +- if (unlikely (*local_subs_used == NULL)) +- return _cairo_error (CAIRO_STATUS_NO_MEMORY); ++ if (num_subs > 0) { ++ *local_subs_used = _cairo_calloc_ab (num_subs, sizeof (cairo_bool_t)); ++ if (unlikely (*local_subs_used == NULL)) ++ return _cairo_error (CAIRO_STATUS_NO_MEMORY); ++ } else { ++ *local_subs_used = NULL; ++ } + + if (num_subs < 1240) + *local_sub_bias = 107; +-- +GitLab diff --git a/x11-misc/mate-notification-daemon/Manifest b/x11-misc/mate-notification-daemon/Manifest index 4181e806b6d2..ca8036444c73 100644 --- a/x11-misc/mate-notification-daemon/Manifest +++ b/x11-misc/mate-notification-daemon/Manifest @@ -1,3 +1 @@ -DIST mate-notification-daemon-1.26.0.tar.xz 421032 BLAKE2B 3f55a281cc51e63245371a1bf4ddadb2be4fa09bf16a4ffac701d4530f519a65e2ff69c7e58e6589fa923d3af86315e36d5445a6a1915a6857271933605eaaac SHA512 5249cf14ba93f2e74b9774226c5d0f5e90a517df07569e16a23af7053f5ef160afe98c8a3452baf80c243272763eee1fde0b84f434f55df1f9de26298361a1dc -DIST mate-notification-daemon-1.26.1.tar.xz 428836 BLAKE2B 78b852f8b6f6f2cdae46831c527ccca24fddf0c12660a886e5eb1b31c1046f1fcaa64de42915038306288f6baef6071ef4347f32b5cce30e4d2488e7bdc6c6d0 SHA512 c7aaef499acb2829f9833734a57e77a11a321369cb5134a4c49bb3c1e9899951c6c3702d3aac1dff6ce1bb8e60e41fc7ac31046e3346852d2da5d4dacf849a1e DIST mate-notification-daemon-1.28.0.tar.xz 433572 BLAKE2B 89c386fb7707b87de61e5346ab018227864427d590e2908f0c85b8697d2d19d3528870f701adfa8f9657ea395718724d6398baf325d0b1d68284eb855f16df3f SHA512 dba0989945b81ff0fed5e77ac8ef7c96bf52ee854c9dc0f46549697e0d0537a8ff4a9491839076768443cc62140d1dfbf911aee489ab568c2975b67c52c78d2e diff --git a/x11-misc/mate-notification-daemon/mate-notification-daemon-1.26.0-r1.ebuild b/x11-misc/mate-notification-daemon/mate-notification-daemon-1.26.0-r1.ebuild deleted file mode 100644 index 0a02cc9cd01d..000000000000 --- a/x11-misc/mate-notification-daemon/mate-notification-daemon-1.26.0-r1.ebuild +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -MATE_LA_PUNT="yes" - -inherit mate - -if [[ ${PV} != 9999 ]]; then - KEYWORDS="amd64 ~arm ~arm64 ~loong ~riscv x86" -fi - -DESCRIPTION="MATE Notification daemon" -LICENSE="GPL-2+ GPL-3+" -SLOT="0" - -IUSE="nls X wayland" -REQUIRED_USE="|| ( X wayland )" - -COMMON_DEPEND="dev-libs/atk - >=dev-libs/glib-2.50:2 - >=dev-libs/libxml2-2.9.0 - >=sys-apps/dbus-1 - x11-libs/cairo - >=x11-libs/gdk-pixbuf-2.22:2 - >=x11-libs/libnotify-0.7 - >=x11-libs/gtk+-3.22:3 - >=media-libs/libcanberra-0.4:0[gtk3] - X? ( - x11-libs/libX11 - >=x11-libs/libwnck-3:3 - ) - wayland? ( gui-libs/gtk-layer-shell ) -" - -RDEPEND="${COMMON_DEPEND} - !x11-misc/notify-osd - !x11-misc/qtnotifydaemon - !x11-misc/notification-daemon -" - -DEPEND="${COMMON_DEPEND} - app-arch/xz-utils - dev-util/gdbus-codegen - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - mate-base/mate-panel -" - -src_configure() { - mate_src_configure \ - $(use_enable nls) \ - $(use_enable X x11) \ - $(use_enable wayland) -} - -src_install() { - mate_src_install - - insinto /usr/share/dbus-1/services - doins "${FILESDIR}/org.freedesktop.Notifications.service" -} diff --git a/x11-misc/mate-notification-daemon/mate-notification-daemon-1.26.1.ebuild b/x11-misc/mate-notification-daemon/mate-notification-daemon-1.26.1.ebuild deleted file mode 100644 index 737071d3f840..000000000000 --- a/x11-misc/mate-notification-daemon/mate-notification-daemon-1.26.1.ebuild +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -MATE_LA_PUNT="yes" - -inherit mate - -MINOR=$(($(ver_cut 2) % 2)) -if [[ ${MINOR} -eq 0 ]]; then - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86" -fi - -DESCRIPTION="MATE Notification daemon" -LICENSE="GPL-2+ GPL-3+" -SLOT="0" - -IUSE="nls X wayland" -REQUIRED_USE="|| ( X wayland )" - -COMMON_DEPEND=" - >=app-accessibility/at-spi2-core-2.46.0 - >=dev-libs/glib-2.50:2 - >=dev-libs/libxml2-2.9.0 - >=sys-apps/dbus-1 - x11-libs/cairo - >=x11-libs/gdk-pixbuf-2.22:2 - >=x11-libs/libnotify-0.7 - >=x11-libs/gtk+-3.22:3 - >=media-libs/libcanberra-0.4:0[gtk3] - X? ( - x11-libs/libX11 - >=x11-libs/libwnck-3:3 - ) - wayland? ( gui-libs/gtk-layer-shell ) -" - -RDEPEND="${COMMON_DEPEND} - !x11-misc/notify-osd - !x11-misc/notification-daemon -" - -DEPEND="${COMMON_DEPEND} - app-arch/xz-utils - dev-util/gdbus-codegen - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - mate-base/mate-panel -" - -src_configure() { - mate_src_configure \ - $(use_enable nls) \ - $(use_enable X x11) \ - $(use_enable wayland) -} - -src_install() { - mate_src_install - - insinto /usr/share/dbus-1/services - doins "${FILESDIR}/org.freedesktop.Notifications.service" -} diff --git a/x11-misc/rofi-calc/Manifest b/x11-misc/rofi-calc/Manifest index aff88b0684bc..7cffc7864fdd 100644 --- a/x11-misc/rofi-calc/Manifest +++ b/x11-misc/rofi-calc/Manifest @@ -1,3 +1 @@ -DIST rofi-calc-2.0.0.tar.gz 1695125 BLAKE2B d76c304724b0f3326a8bd26ab2c7eaed5f77f3b6d07ddc97570a1fb28d56504d98ac9ab66411290cb548b760bd3231a729dfc470e748a8447e323d1b290f677c SHA512 298f9983dbd140f5aee5b3799b165500eae100f3f5744ba07914b962faf01661dee0f5f4c9c12a07a4e210b6115ac6fb377d9fa9a7e64ef5a19600e9f55cd478 -DIST rofi-calc-2.2.0.tar.gz 1695821 BLAKE2B ab91e17c2baa854e76f593626b774390b5bdd57c78419c16981371f1e4be64cee0a38845dcd93998741ceeac462a1158af08519692c65a04a22418aa7026dc89 SHA512 7eedb5c7be97f42a1683cabdf0745c28d2a4f123f02e7cf2bf5a44cf851271b5bdc31f7622f4f30d086ecdcbcc7e4d62d3550b8c5b8ceebcdaca362e8d09a68d DIST rofi-calc-2.2.1.tar.gz 1696532 BLAKE2B 5595f81b5eebefb68b97b397f4b9571afd548d7e2a3323cd2693a2ced629f0d270afe4351fe01f43c36760b2ba2c6c5509181d262285eb6caa9f768be1b2d2cf SHA512 33c4b5ca2c13d538c902d747c65b376d00b4f6b628d5fc14b4761105537503f24bd51a5cf8f07b6ab4b28bccbf6e84c70ea3125ed7e1664eadb108e4250a42ba diff --git a/x11-misc/rofi-calc/rofi-calc-2.0.0.ebuild b/x11-misc/rofi-calc/rofi-calc-2.0.0.ebuild deleted file mode 100644 index ce53ee1c9e75..000000000000 --- a/x11-misc/rofi-calc/rofi-calc-2.0.0.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools - -DESCRIPTION="Do live calculations in rofi!" -HOMEPAGE="https://github.com/svenstaro/rofi-calc" -SRC_URI="https://github.com/svenstaro/rofi-calc/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="" - -DEPEND=" - x11-misc/rofi - >=sci-libs/libqalculate-2.0 -" -RDEPEND="${DEPEND}" - -src_prepare() { - default - eautoreconf -i -} - -src_install() { - default - find "${ED}" -name '*.la' -delete || die -} diff --git a/x11-misc/rofi-calc/rofi-calc-2.2.0.ebuild b/x11-misc/rofi-calc/rofi-calc-2.2.0.ebuild deleted file mode 100644 index 5264d2023257..000000000000 --- a/x11-misc/rofi-calc/rofi-calc-2.2.0.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools - -DESCRIPTION="Do live calculations in rofi!" -HOMEPAGE="https://github.com/svenstaro/rofi-calc" -SRC_URI="https://github.com/svenstaro/rofi-calc/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="" - -DEPEND=" - x11-misc/rofi - >=sci-libs/libqalculate-2.0 -" -RDEPEND="${DEPEND}" - -src_prepare() { - default - eautoreconf -i -} - -src_install() { - default - find "${ED}" -name '*.la' -delete || die -} diff --git a/x11-misc/rofi-calc/rofi-calc-9999.ebuild b/x11-misc/rofi-calc/rofi-calc-9999.ebuild index ac69969f2903..3f1eac33d712 100644 --- a/x11-misc/rofi-calc/rofi-calc-9999.ebuild +++ b/x11-misc/rofi-calc/rofi-calc-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -7,13 +7,10 @@ inherit git-r3 autotools DESCRIPTION="Do live calculations in rofi!" HOMEPAGE="https://github.com/svenstaro/rofi-calc" -SRC_URI="" EGIT_REPO_URI="https://github.com/svenstaro/rofi-calc.git" LICENSE="MIT" SLOT="0" -KEYWORDS="" -IUSE="" DEPEND=" x11-misc/rofi diff --git a/x11-misc/slock/Manifest b/x11-misc/slock/Manifest index 4de919f78f4b..8cd175227c4a 100644 --- a/x11-misc/slock/Manifest +++ b/x11-misc/slock/Manifest @@ -1,2 +1 @@ -DIST slock-1.4.tar.gz 6889 BLAKE2B 67f956fd00e7536a9db81b82e85e4128b537569d16cd25428822607a5c2f3b0310bcfec896f7e83c0091e85d21b68438f6f42da715a55cad7fac90d0d0d64b8f SHA512 ad285360dd3f16a225159abaf2f82fabf2c675bd74478cf717f68cbe5941a6c620e3c88544ce675ce3ff19af4bb0675c9405685e0f74ee4e84f7d34c61a0532f DIST slock-1.5.tar.gz 6898 BLAKE2B f3435311b24c20fef656589f468b4cd6bbed30568459cb1d525b7dd5b57e5759ee287787d7506ad6cb922fd092bad504f38ab8c57b41deebec4f6aa554269a41 SHA512 2402b1e49f5dbe06cca2f3a31efedce6359413b240f2b98c57147483591a873c3c5457dbf6707485167002ff6d7ee0e9005d9fa506a51bf71337624e8728bb43 diff --git a/x11-misc/slock/slock-1.4-r1.ebuild b/x11-misc/slock/slock-1.4-r1.ebuild deleted file mode 100644 index 0f6f4a035658..000000000000 --- a/x11-misc/slock/slock-1.4-r1.ebuild +++ /dev/null @@ -1,66 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit fcaps savedconfig toolchain-funcs - -DESCRIPTION="simple X display locker" -HOMEPAGE="https://tools.suckless.org/slock" -SRC_URI="https://dl.suckless.org/tools/${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 arm64 ~hppa ppc64 x86" - -RDEPEND=" - virtual/libcrypt:= - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXrandr -" -DEPEND=" - ${RDEPEND} - x11-base/xorg-proto -" - -PATCHES=( - "${FILESDIR}"/slock-1.4-fix-link-paths.patch -) - -src_prepare() { - default - - sed -i \ - -e '/^CFLAGS/{s: -Os::g; s:= :+= :g}' \ - -e '/^CC/d' \ - -e '/^LDFLAGS/{s:-s::g; s:= :+= :g}' \ - config.mk || die - sed -i \ - -e 's|@${CC}|$(CC)|g' \ - Makefile || die - - restore_config config.h - - tc-export CC -} - -src_compile() { - emake slock -} - -src_install() { - dobin slock - save_config config.h -} - -pkg_postinst() { - # cap_dac_read_search used to be enough for shadow access - # but now slock wants to write to /proc/self/oom_score_adj - # and for that it needs: - fcaps \ - cap_dac_override,cap_setgid,cap_setuid,cap_sys_resource \ - /usr/bin/slock - - savedconfig_pkg_postinst -} diff --git a/x11-misc/slock/slock-1.5.ebuild b/x11-misc/slock/slock-1.5.ebuild index 4893525a9c52..597b0cf75605 100644 --- a/x11-misc/slock/slock-1.5.ebuild +++ b/x11-misc/slock/slock-1.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,7 +6,7 @@ EAPI=8 inherit fcaps savedconfig toolchain-funcs DESCRIPTION="simple X display locker" -HOMEPAGE="https://tools.suckless.org/slock" +HOMEPAGE="https://tools.suckless.org/slock/" SRC_URI="https://dl.suckless.org/tools/${P}.tar.gz" LICENSE="MIT" diff --git a/x11-misc/tdrop/Manifest b/x11-misc/tdrop/Manifest index 62e11fadfb1b..3903f1e2d662 100644 --- a/x11-misc/tdrop/Manifest +++ b/x11-misc/tdrop/Manifest @@ -1,2 +1 @@ -DIST tdrop-0.4.0.tar.gz 21550 BLAKE2B 673ad98aa294410b4547fce842d191fd3c5512cca79361cae35fcb646afd328615daab1fa112bcba9e28cdea6bbeb2ca696bcc78d54c0302d32a91324a8a16d9 SHA512 679fed509e29752ebe3df378e68d9701c9edb53c9162854a8cb623f2da53499b933dad59fa6fc865ac44c67544cd6bcb779316ee4312e87c39559ade1ab313d8 DIST tdrop-0.5.0.tar.gz 24726 BLAKE2B d0043bcc28115999b89fe6d89790ea4d1d6da71dec7034a283c4f3b5b2b8f065482f8727d6e0d900f5ae00c3ea3d7a06ce03a82902286d509a8b04dd5b46025d SHA512 cfccbdb73b00ea8c1376f34debe2b7f550343100fd47e7f45a859ad692f42abbf58e26316a95813691f4bda05cce657490bfcc7b3765585d9afb396580aefce5 diff --git a/x11-misc/tdrop/tdrop-0.4.0.ebuild b/x11-misc/tdrop/tdrop-0.4.0.ebuild deleted file mode 100644 index 695b437b87d3..000000000000 --- a/x11-misc/tdrop/tdrop-0.4.0.ebuild +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright 2019-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -DESCRIPTION="WM-Independent Dropdown Creator" -HOMEPAGE="https://github.com/noctuid/tdrop" - -if [[ ${PV} == "9999" ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/noctuid/tdrop" -else - SRC_URI="https://github.com/noctuid/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~ppc64" -fi - -LICENSE="BSD-2" -SLOT="0" -IUSE="" - -RDEPEND=" - app-shells/bash - sys-process/procps - x11-apps/xprop - x11-apps/xrandr - x11-apps/xwininfo - x11-misc/xdotool -" - -src_compile() { - : -} - -src_install() { - dobin tdrop - doman tdrop.1 - dodoc README.org -} diff --git a/x11-misc/xbindkeys/xbindkeys-1.8.7-r100.ebuild b/x11-misc/xbindkeys/xbindkeys-1.8.7-r100.ebuild new file mode 100644 index 000000000000..4688b3dae019 --- /dev/null +++ b/x11-misc/xbindkeys/xbindkeys-1.8.7-r100.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_REQ_USE="deprecated" +GUILE_COMPAT=( 2-2 3-0 ) +inherit autotools guile-single + +DESCRIPTION="Tool for launching commands on keystrokes" +SRC_URI="https://www.nongnu.org/${PN}/${P}.tar.gz" +HOMEPAGE="https://www.nongnu.org/xbindkeys/xbindkeys.html" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="guile tk" + +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )" + +RDEPEND=" + x11-libs/libX11 + guile? ( ${GUILE_DEPS} ) + tk? ( dev-lang/tk ) +" +DEPEND=" + ${RDEPEND} + x11-base/xorg-proto +" + +DOCS=( AUTHORS BUGS ChangeLog README TODO xbindkeysrc ) + +src_prepare() { + default + + use guile && guile_bump_sources + + # Regenerate to pick up newer versions of Guile macros + # bug #828532 + eautoreconf +} + +src_configure() { + econf \ + $(use_enable guile) \ + $(use_enable tk) +} + +src_install() { + default + + use guile && guile_unstrip_ccache +} diff --git a/x11-wm/marco/Manifest b/x11-wm/marco/Manifest index a2c7868d676d..ea9483720b0e 100644 --- a/x11-wm/marco/Manifest +++ b/x11-wm/marco/Manifest @@ -1,2 +1 @@ -DIST marco-1.26.2.tar.xz 1865248 BLAKE2B 86933230f11a9342009d79bd836ab09272a335cc7e0e8c84c4ac1c300fd4b604a97424c76d371450a46be0c2a588902c17791fe1ee752e06207046bbddc055a4 SHA512 326ed378be891806a9750021626863e00d80f29af8fe920eeb0910d9eb2ece534babf012e1aced6b071b6c0fdd8a77ea8c948d68a70f9280822b30231aa934b9 DIST marco-1.28.1.tar.xz 1800320 BLAKE2B 6594095cb7b038c3107513229f81cfb8e71f437b1f716a108169ddb8c792c4ab06979f57cd2c3a11c3de65e07550f8fcd246911a7ccff2f1e89fe20de3836b59 SHA512 3642e3fab967baef35b0e02d3e4b63e3ef97e5e44d01dbde2a7557a5ced41e73f7f8a1e63860aa9bcebe1ea1c8e1f6fd8740d853bf3996c32977b65091364ac3 diff --git a/x11-wm/marco/marco-1.26.2-r1.ebuild b/x11-wm/marco/marco-1.26.2-r1.ebuild deleted file mode 100644 index bd1e415ad436..000000000000 --- a/x11-wm/marco/marco-1.26.2-r1.ebuild +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -MATE2_LA_PUNT="yes" -# For script meson_post_install.py -# Bug 906826, tracker bug 762406 -PYTHON_COMPAT=( python3_{10..13} ) - -inherit mate meson python-any-r1 - -KEYWORDS="amd64 ~arm ~arm64 ~loong ~riscv x86" - -DESCRIPTION="MATE default window manager" -LICENSE="FDL-1.2+ GPL-2+ LGPL-2+ MIT" -SLOT="0/2" - -IUSE="startup-notification test xinerama" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - >=app-accessibility/at-spi2-core-2.46.0:2 - >=dev-libs/glib-2.58:2 - >=gnome-base/libgtop-2:2= - media-libs/libcanberra[gtk3] - x11-libs/cairo - >=x11-libs/pango-1.2[X] - x11-libs/gdk-pixbuf:2 - >=x11-libs/gtk+-3.22:3 - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - >=x11-libs/libXcomposite-0.3 - x11-libs/libXcursor - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXi - x11-libs/libXpresent - x11-libs/libXrandr - x11-libs/libXrender - x11-libs/libXres - >=x11-libs/startup-notification-0.7 - xinerama? ( x11-libs/libXinerama ) -" - -DEPEND="${PYTHON_DEPS}" - -RDEPEND="${COMMON_DEPEND} - gnome-extra/zenity - >=mate-base/mate-desktop-1.20.0 - virtual/libintl -" - -BDEPEND="${COMMON_DEPEND} - app-text/yelp-tools - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - x11-base/xorg-proto - test? ( app-text/docbook-xml-dtd:4.5 ) - xinerama? ( x11-base/xorg-proto ) -" - -src_configure() { - local emesonargs=( - -Dcompositor=true - -Drender=true - -Dshape=true - -Dsm=true - -Dxsync=true - $(meson_use startup-notification) - $(meson_use xinerama) - ) - meson_src_configure -} - -src_install() { - meson_src_install - dodoc doc/*.txt -} diff --git a/x11-wm/metacity/Manifest b/x11-wm/metacity/Manifest index 27adb737324c..4b3d6259ac05 100644 --- a/x11-wm/metacity/Manifest +++ b/x11-wm/metacity/Manifest @@ -1,3 +1 @@ -DIST metacity-3.46.1.tar.xz 1959060 BLAKE2B 84dbe09dd8d6c7ce1894ed806cdc6cc5cc6c302ddf3aae5f7ef479f6c02ef6c2091bb1d815603f5d6e52d583192d43f47d835327e9e75cd626081becbf84bd8e SHA512 f0d8424868edf8209eb4cbd003de68ab892a5b515a1aca7b3626bf52eb8451cb0477ab35f702177c9654604e06adce46471897edcb54931d95e60b36bef92b20 -DIST metacity-3.50.0.tar.xz 1959172 BLAKE2B a697bb0d820211abdd212a250d0ea6a698962b37b9e200c54dab51ca11bb1c9a65708dd8f098211d3d451da83f484d549f5fc33c63f391f42744a8046849ccd7 SHA512 2fd66f96b0603dfea652ad21f9749c3dbd68c847cda884a0e16f23766c9b61fcdfa693dcb83beb33c909487a7d9f7f5eb796096cfc772cc44c4b267ef1b08699 DIST metacity-3.52.0.tar.xz 1960156 BLAKE2B e8d078f08c4d3a40a98b5d95aa0286adc4da518ca6a495768d9e31626862b03a3ad5da26928ccc3f337b9811fd5ffa927a37e5f9ab6a7b7c256052842207b5cf SHA512 e49c8a45a26b9b43700e50787fef9e02a6c5abc5d8a809542acaf32f6e15ea756bf8398883e3c69707908e8556ae726d9764fc09f07b0beaa40f79a1490c361e diff --git a/x11-wm/metacity/metacity-3.46.1.ebuild b/x11-wm/metacity/metacity-3.46.1.ebuild deleted file mode 100644 index 4c6c94dbe9e4..000000000000 --- a/x11-wm/metacity/metacity-3.46.1.ebuild +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -inherit gnome2 - -DESCRIPTION="GNOME Flashback window manager" -HOMEPAGE="https://gitlab.gnome.org/GNOME/metacity/" - -LICENSE="GPL-2+" -SLOT="0" -IUSE="+libcanberra vulkan xinerama" -KEYWORDS="amd64 ~riscv" - -# TODO: libgtop could be optional, but no knob -RDEPEND=" - >=dev-libs/glib-2.67.3:2 - >=x11-libs/gtk+-3.24.6:3[X] - >=x11-libs/pango-1.2.0 - >=x11-libs/libXcomposite-0.3 - >=x11-libs/libXres-1.2 - >=gnome-base/gsettings-desktop-schemas-3.3.0 - x11-libs/libXfixes - x11-libs/libXrender - x11-libs/libXdamage - x11-libs/libXpresent - libcanberra? ( media-libs/libcanberra[gtk3] ) - >=x11-libs/startup-notification-0.7 - x11-libs/libXcursor - gnome-base/libgtop:2= - x11-libs/libX11 - xinerama? ( x11-libs/libXinerama ) - x11-libs/libXrandr - x11-libs/libXext - x11-libs/libICE - x11-libs/libSM - gnome-extra/zenity - vulkan? ( media-libs/vulkan-loader ) -" -DEPEND="${RDEPEND} - x11-base/xorg-proto -" -BDEPEND=" - vulkan? ( dev-util/vulkan-headers ) - dev-util/glib-utils - >=sys-devel/gettext-0.19.6 - virtual/pkgconfig -" # autoconf-archive for eautoreconf - -src_configure() { - gnome2_src_configure \ - --disable-static \ - $(use_enable libcanberra canberra) \ - $(use_enable xinerama) \ - $(use_enable vulkan) -} diff --git a/x11-wm/metacity/metacity-3.50.0.ebuild b/x11-wm/metacity/metacity-3.50.0.ebuild deleted file mode 100644 index 60f7ad76a4f2..000000000000 --- a/x11-wm/metacity/metacity-3.50.0.ebuild +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -inherit gnome2 - -DESCRIPTION="GNOME Flashback window manager" -HOMEPAGE="https://gitlab.gnome.org/GNOME/metacity/" - -LICENSE="GPL-2+" -SLOT="0" -IUSE="+libcanberra vulkan xinerama" -KEYWORDS="amd64 ~riscv" - -# TODO: libgtop could be optional, but no knob -RDEPEND=" - >=dev-libs/glib-2.67.3:2 - >=x11-libs/gtk+-3.24.6:3[X] - >=x11-libs/pango-1.2.0 - >=x11-libs/libXcomposite-0.3 - >=x11-libs/libXres-1.2 - >=gnome-base/gsettings-desktop-schemas-3.3.0 - x11-libs/libXfixes - x11-libs/libXrender - x11-libs/libXdamage - x11-libs/libXpresent - libcanberra? ( media-libs/libcanberra[gtk3] ) - >=x11-libs/startup-notification-0.7 - x11-libs/libXcursor - gnome-base/libgtop:2= - x11-libs/libX11 - xinerama? ( x11-libs/libXinerama ) - x11-libs/libXrandr - x11-libs/libXext - x11-libs/libICE - x11-libs/libSM - gnome-extra/zenity - vulkan? ( media-libs/vulkan-loader ) -" -DEPEND="${RDEPEND} - x11-base/xorg-proto -" -BDEPEND=" - vulkan? ( dev-util/vulkan-headers ) - dev-util/glib-utils - >=sys-devel/gettext-0.19.6 - virtual/pkgconfig -" # autoconf-archive for eautoreconf - -src_configure() { - gnome2_src_configure \ - --disable-static \ - $(use_enable libcanberra canberra) \ - $(use_enable xinerama) \ - $(use_enable vulkan) -} diff --git a/x11-wm/qtile/Manifest b/x11-wm/qtile/Manifest index adbcb24c266c..6bfbd9494a2e 100644 --- a/x11-wm/qtile/Manifest +++ b/x11-wm/qtile/Manifest @@ -1,6 +1 @@ -DIST qtile-0.23.0.tar.gz 524536 BLAKE2B 9cf5b0cdffd7bc95ab7649827c221b20718f9dcc19b8ae2a50ceac5df3d71b117eef493a40523d81e60c8bc54b2103bc2a93775fcb20c025ec1dd84f9d809a19 SHA512 d6886df8efefacf90b1a5ec487c9a5a90414593900159213a218d638ef4f018b69284fe2cea707da12655a9736aad3df74a338a60344536e4d7eebcc9fc1090b -DIST qtile-0.25.0.tar.gz 569312 BLAKE2B 3841ca41755f37191c659c039da45279393b5bbe94b3d532651548ba51d6dc62f3ac94cc5f3b02aa2b6c806e6bf97c9651756579b77938d133bdb1a697150626 SHA512 afd3267c70681d3656569f8ea88d02f35ab5d6baaa28b3d90f1b7552b5ed32c7d2f1f4f17272458ff2c39d0ca8f4fdb87748c9d7b4eb41031f3079126096c7d0 -DIST qtile-0.26.0.tar.gz 593712 BLAKE2B c7f43813b42d1009f0f542ef0964e07cbb3286af6af058e168d62d1e32c7dfaf51fe537568b77d5b21a1701c1ce159b63f86b6ba4ae3bf5482125562c91c5d3a SHA512 0b28125e3111493a90c5ae993a516dccf984f794ba9c0424c9366a3b04073fdf06deba42e59e8b1e33b60e5686730e0ed010161943a4a77ab4b36e4c7c710a61 -DIST qtile-0.27.0.tar.gz 598603 BLAKE2B 79f876d290398839e83b14304956f7bbe5a5bb70faccae6e090dd37477728c9067fc9d6797b498b5a8cd1a35f08fb4bc85ee3609a244f955d2b15b79f30d96c4 SHA512 62daa4ec51239506e2a860b9d021e2838edba887c7ff45bbede36428a399343470b9357f4aab373d13279c933ae19c3bd2b03bb520862386298a1258fe505127 -DIST qtile-0.28.0.tar.gz 601157 BLAKE2B c2ec5ac92484ad8124a2eeb0aa57050ff529f0223cb889a6da81291a2c52002e989d94667cc3b34449284ca52ca50186379619c05bf83adeb6dc5dfa8c4a6dc1 SHA512 aad0f260ab8f8e974e12f385324e7eadab6a314c9eb1b3114bbfc928819f7a764eb8243e7ed6545ca87f38b223e00d525cba5e8b2430c35aa93370c9fecd0947 DIST qtile-0.28.1.tar.gz 601217 BLAKE2B 04f24c5b628e1c3d0eca395135ef0d0093af5a57d23aea751e76197da4f148ae679a9fb650e2589e5f2e253673cab86642e3f0695ac219641c65192eb9a37274 SHA512 95b4d95206aeac4bb59d47c94eb93b55ac413681050345a0d61cdb19b71dd785bb6c13c0161757b9bfa5e8d0ce345fcf64eea04fc44b2f596a65b70f5da5d32e diff --git a/x11-wm/qtile/files/qtile-0.23.0-keyring.patch b/x11-wm/qtile/files/qtile-0.23.0-keyring.patch deleted file mode 100644 index c4a44efd8791..000000000000 --- a/x11-wm/qtile/files/qtile-0.23.0-keyring.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 84eaf6b70f9569c88534dc8054e19f05fa3137e2 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Sat, 2 Dec 2023 17:40:50 +0100 -Subject: [PATCH] imapwidget: Do not pass None as username to - keyring.get_password() - -Ensure not to pass `None` as the username to `keyring.get_password()`, -as the API requires it to always be a `str` and some backends -(particularly `keyrings-alt`) crash on `None`. - -Fixes #4609 ---- - libqtile/widget/imapwidget.py | 3 +++ - test/widgets/test_widget_init_configure.py | 1 + - 2 files changed, 4 insertions(+) - -diff --git a/libqtile/widget/imapwidget.py b/libqtile/widget/imapwidget.py -index 3f84d9e7..c8a6ec0e 100644 ---- a/libqtile/widget/imapwidget.py -+++ b/libqtile/widget/imapwidget.py -@@ -24,6 +24,7 @@ import re - - import keyring - -+from libqtile.confreader import ConfigError - from libqtile.log_utils import logger - from libqtile.widget import base - -@@ -75,6 +76,8 @@ class ImapWidget(base.ThreadPoolText): - def __init__(self, **config): - base.ThreadPoolText.__init__(self, "", **config) - self.add_defaults(ImapWidget.defaults) -+ if self.user is None: -+ raise ConfigError("You must set the 'user' parameter for the IMAP widget.") - password = keyring.get_password("imapwidget", self.user) - if password is not None: - self.password = password -diff --git a/test/widgets/test_widget_init_configure.py b/test/widgets/test_widget_init_configure.py -index 83a9cb9a..aa7a1f9b 100644 ---- a/test/widgets/test_widget_init_configure.py -+++ b/test/widgets/test_widget_init_configure.py -@@ -58,6 +58,7 @@ extras = [ - - # To skip a test entirely, list the widget class here - no_test = [widgets.Mirror, widgets.PulseVolume] # Mirror requires a reflection object -+no_test += [widgets.ImapWidget] # Requires a configured username - - # To test a widget only under one backend, list the widget class here - exclusive_backend = { --- -2.43.0 - diff --git a/x11-wm/qtile/qtile-0.23.0-r1.ebuild b/x11-wm/qtile/qtile-0.23.0-r1.ebuild deleted file mode 100644 index 3c59d06e2004..000000000000 --- a/x11-wm/qtile/qtile-0.23.0-r1.ebuild +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..11} ) - -inherit distutils-r1 pypi - -DESCRIPTION="A full-featured, hackable tiling window manager written in Python" -HOMEPAGE=" - https://qtile.org/ - https://github.com/qtile/qtile/ - https://pypi.org/project/qtile/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 ~riscv ~x86" -IUSE="pulseaudio wayland" - -RDEPEND=" - >=dev-python/cairocffi-1.6.0[${PYTHON_USEDEP}] - >=dev-python/cffi-1.1.0:=[${PYTHON_USEDEP}] - dev-python/dbus-next[${PYTHON_USEDEP}] - dev-python/pygobject[${PYTHON_USEDEP}] - >=dev-python/xcffib-1.4.0[${PYTHON_USEDEP}] - x11-libs/cairo[X,xcb(+)] - x11-libs/libnotify[introspection] - x11-libs/pango - pulseaudio? ( - dev-python/pulsectl-asyncio[${PYTHON_USEDEP}] - media-sound/pulseaudio - ) - wayland? ( - >=dev-python/pywlroots-0.16[${PYTHON_USEDEP}] - ) -" -BDEPEND=" - dev-python/cffi[${PYTHON_USEDEP}] - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - media-gfx/imagemagick[X] - x11-base/xorg-server[xephyr,xvfb] - ) - wayland? ( - >=dev-python/pywlroots-0.16[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -python_prepare_all() { - local PATCHES=( - # https://github.com/qtile/qtile/pull/4610 - "${FILESDIR}/${P}-keyring.patch" - ) - - sed -e "s/can_import(\"wlroots.ffi_build\")/$(usex wayland True False)/" \ - -i setup.py || die - - # some tests expect bin/qtile - mkdir bin || die - cat >> bin/qtile <<-EOF || die - #!/bin/sh - exec qtile "\${@}" - EOF - chmod +x bin/qtile || die - - distutils-r1_python_prepare_all -} - -src_compile() { - local -x CFFI_TMPDIR=${T} - distutils-r1_src_compile -} - -python_test() { - local EPYTEST_DESELECT=( - # mocking doesn't seem to work - test/widgets/test_mpd2widget.py - # checks fail with mypy errors - test/test_check.py - # migration tests require intact source tree - test/test_migrate.py - # no clue ("ExistingWMException") - test/test_restart.py::test_restart_hook_and_state - ) - - # force usage of built module - rm -rf libqtile || die - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - nonfatal epytest --backend=x11 $(usev wayland '--backend=wayland') || - die -n "Tests failed with ${EPYTHON}" -} - -python_install_all() { - local DOCS=( CHANGELOG README.rst ) - distutils-r1_python_install_all - - insinto /usr/share/xsessions - doins resources/qtile.desktop - - insinto /usr/share/wayland-sessions - doins resources/qtile-wayland.desktop - - exeinto /etc/X11/Sessions - newexe "${FILESDIR}"/${PN}-session-r1 ${PN} -} diff --git a/x11-wm/qtile/qtile-0.25.0.ebuild b/x11-wm/qtile/qtile-0.25.0.ebuild deleted file mode 100644 index 3fe2733dd15e..000000000000 --- a/x11-wm/qtile/qtile-0.25.0.ebuild +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{10..12} ) - -inherit distutils-r1 pypi virtualx - -DESCRIPTION="A full-featured, hackable tiling window manager written in Python" -HOMEPAGE=" - https://qtile.org/ - https://github.com/qtile/qtile/ - https://pypi.org/project/qtile/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64" -IUSE="pulseaudio wayland" - -RDEPEND=" - >=dev-python/cairocffi-1.6.0[${PYTHON_USEDEP}] - >=dev-python/cffi-1.1.0:=[${PYTHON_USEDEP}] - dev-python/dbus-next[${PYTHON_USEDEP}] - dev-python/pygobject[${PYTHON_USEDEP}] - >=dev-python/xcffib-1.4.0[${PYTHON_USEDEP}] - x11-libs/cairo[X,xcb(+)] - x11-libs/libnotify[introspection] - x11-libs/pango - pulseaudio? ( - dev-python/pulsectl-asyncio[${PYTHON_USEDEP}] - media-sound/pulseaudio - ) - wayland? ( - >=dev-python/pywlroots-0.16[${PYTHON_USEDEP}] - ) -" -BDEPEND=" - dev-python/cffi[${PYTHON_USEDEP}] - dev-python/setuptools[${PYTHON_USEDEP}] - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - dev-python/libcst[${PYTHON_USEDEP}] - media-gfx/imagemagick[X] - x11-base/xorg-server[xephyr,xvfb] - ) - wayland? ( - >=dev-python/pywlroots-0.16[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -python_prepare_all() { - sed -e "s/can_import(\"wlroots.ffi_build\")/$(usex wayland True False)/" \ - -i setup.py || die - - # some tests expect bin/qtile - mkdir bin || die - cat >> bin/qtile <<-EOF || die - #!/bin/sh - exec qtile "\${@}" - EOF - chmod +x bin/qtile || die - - distutils-r1_python_prepare_all -} - -src_compile() { - local -x CFFI_TMPDIR=${T} - distutils-r1_src_compile -} - -src_test() { - virtx distutils-r1_src_test -} - -python_test() { - local EPYTEST_DESELECT=( - # mypy stuff - test/test_check.py - test/migrate/test_check_migrations.py - # TODO: this test clearly requires x11 — so why is wayland - # variant being run? - 'test/backend/x11/test_window.py::test_urgent_hook_fire[wayland-2]' - ) - - # force usage of built module - rm -rf libqtile || die - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - local -x TZ=UTC - nonfatal epytest --backend=x11 $(usev wayland '--backend=wayland') || - die -n "Tests failed with ${EPYTHON}" -} - -python_install_all() { - local DOCS=( CHANGELOG README.rst ) - distutils-r1_python_install_all - - insinto /usr/share/xsessions - doins resources/qtile.desktop - - insinto /usr/share/wayland-sessions - doins resources/qtile-wayland.desktop - - exeinto /etc/X11/Sessions - newexe "${FILESDIR}"/${PN}-session-r1 ${PN} -} diff --git a/x11-wm/qtile/qtile-0.26.0.ebuild b/x11-wm/qtile/qtile-0.26.0.ebuild deleted file mode 100644 index e8473373841c..000000000000 --- a/x11-wm/qtile/qtile-0.26.0.ebuild +++ /dev/null @@ -1,114 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{10..12} ) - -inherit distutils-r1 pypi virtualx - -DESCRIPTION="A full-featured, hackable tiling window manager written in Python" -HOMEPAGE=" - https://qtile.org/ - https://github.com/qtile/qtile/ - https://pypi.org/project/qtile/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~riscv" -IUSE="pulseaudio wayland" - -RDEPEND=" - >=dev-python/cairocffi-1.6.0[${PYTHON_USEDEP}] - >=dev-python/cffi-1.1.0:=[${PYTHON_USEDEP}] - dev-python/dbus-next[${PYTHON_USEDEP}] - dev-python/pygobject[${PYTHON_USEDEP}] - >=dev-python/xcffib-1.4.0[${PYTHON_USEDEP}] - x11-libs/cairo[X,xcb(+)] - x11-libs/libnotify[introspection] - x11-libs/pango - pulseaudio? ( - dev-python/pulsectl-asyncio[${PYTHON_USEDEP}] - media-sound/pulseaudio - ) - wayland? ( - >=dev-python/pywayland-0.4.17[${PYTHON_USEDEP}] - >=dev-python/pywlroots-0.17[${PYTHON_USEDEP}] - ) -" -BDEPEND=" - dev-python/cffi[${PYTHON_USEDEP}] - dev-python/setuptools[${PYTHON_USEDEP}] - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - dev-python/libcst[${PYTHON_USEDEP}] - media-gfx/imagemagick[X] - x11-base/xorg-server[xephyr,xvfb] - ) - wayland? ( - >=dev-python/pywayland-0.4.17[${PYTHON_USEDEP}] - >=dev-python/pywlroots-0.17[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -python_prepare_all() { - sed -e "s/can_import(\"wlroots.ffi_build\")/$(usex wayland True False)/" \ - -i setup.py || die - - # some tests expect bin/qtile - mkdir bin || die - cat >> bin/qtile <<-EOF || die - #!/bin/sh - exec qtile "\${@}" - EOF - chmod +x bin/qtile || die - - distutils-r1_python_prepare_all -} - -src_compile() { - local -x CFFI_TMPDIR=${T} - distutils-r1_src_compile -} - -src_test() { - virtx distutils-r1_src_test -} - -python_test() { - local EPYTEST_DESELECT=( - # mypy stuff - test/test_check.py - test/migrate/test_check_migrations.py - # TODO: this test clearly requires x11 — so why is wayland - # variant being run? - 'test/backend/x11/test_window.py::test_urgent_hook_fire[wayland-2]' - ) - - # force usage of built module - rm -rf libqtile || die - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - local -x TZ=UTC - nonfatal epytest --backend=x11 $(usev wayland '--backend=wayland') || - die -n "Tests failed with ${EPYTHON}" -} - -python_install_all() { - local DOCS=( CHANGELOG README.rst ) - distutils-r1_python_install_all - - insinto /usr/share/xsessions - doins resources/qtile.desktop - - insinto /usr/share/wayland-sessions - doins resources/qtile-wayland.desktop - - exeinto /etc/X11/Sessions - newexe "${FILESDIR}"/${PN}-session-r1 ${PN} -} diff --git a/x11-wm/qtile/qtile-0.27.0.ebuild b/x11-wm/qtile/qtile-0.27.0.ebuild deleted file mode 100644 index e8473373841c..000000000000 --- a/x11-wm/qtile/qtile-0.27.0.ebuild +++ /dev/null @@ -1,114 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{10..12} ) - -inherit distutils-r1 pypi virtualx - -DESCRIPTION="A full-featured, hackable tiling window manager written in Python" -HOMEPAGE=" - https://qtile.org/ - https://github.com/qtile/qtile/ - https://pypi.org/project/qtile/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~riscv" -IUSE="pulseaudio wayland" - -RDEPEND=" - >=dev-python/cairocffi-1.6.0[${PYTHON_USEDEP}] - >=dev-python/cffi-1.1.0:=[${PYTHON_USEDEP}] - dev-python/dbus-next[${PYTHON_USEDEP}] - dev-python/pygobject[${PYTHON_USEDEP}] - >=dev-python/xcffib-1.4.0[${PYTHON_USEDEP}] - x11-libs/cairo[X,xcb(+)] - x11-libs/libnotify[introspection] - x11-libs/pango - pulseaudio? ( - dev-python/pulsectl-asyncio[${PYTHON_USEDEP}] - media-sound/pulseaudio - ) - wayland? ( - >=dev-python/pywayland-0.4.17[${PYTHON_USEDEP}] - >=dev-python/pywlroots-0.17[${PYTHON_USEDEP}] - ) -" -BDEPEND=" - dev-python/cffi[${PYTHON_USEDEP}] - dev-python/setuptools[${PYTHON_USEDEP}] - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - dev-python/libcst[${PYTHON_USEDEP}] - media-gfx/imagemagick[X] - x11-base/xorg-server[xephyr,xvfb] - ) - wayland? ( - >=dev-python/pywayland-0.4.17[${PYTHON_USEDEP}] - >=dev-python/pywlroots-0.17[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -python_prepare_all() { - sed -e "s/can_import(\"wlroots.ffi_build\")/$(usex wayland True False)/" \ - -i setup.py || die - - # some tests expect bin/qtile - mkdir bin || die - cat >> bin/qtile <<-EOF || die - #!/bin/sh - exec qtile "\${@}" - EOF - chmod +x bin/qtile || die - - distutils-r1_python_prepare_all -} - -src_compile() { - local -x CFFI_TMPDIR=${T} - distutils-r1_src_compile -} - -src_test() { - virtx distutils-r1_src_test -} - -python_test() { - local EPYTEST_DESELECT=( - # mypy stuff - test/test_check.py - test/migrate/test_check_migrations.py - # TODO: this test clearly requires x11 — so why is wayland - # variant being run? - 'test/backend/x11/test_window.py::test_urgent_hook_fire[wayland-2]' - ) - - # force usage of built module - rm -rf libqtile || die - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - local -x TZ=UTC - nonfatal epytest --backend=x11 $(usev wayland '--backend=wayland') || - die -n "Tests failed with ${EPYTHON}" -} - -python_install_all() { - local DOCS=( CHANGELOG README.rst ) - distutils-r1_python_install_all - - insinto /usr/share/xsessions - doins resources/qtile.desktop - - insinto /usr/share/wayland-sessions - doins resources/qtile-wayland.desktop - - exeinto /etc/X11/Sessions - newexe "${FILESDIR}"/${PN}-session-r1 ${PN} -} diff --git a/x11-wm/qtile/qtile-0.28.0.ebuild b/x11-wm/qtile/qtile-0.28.0.ebuild deleted file mode 100644 index e8473373841c..000000000000 --- a/x11-wm/qtile/qtile-0.28.0.ebuild +++ /dev/null @@ -1,114 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{10..12} ) - -inherit distutils-r1 pypi virtualx - -DESCRIPTION="A full-featured, hackable tiling window manager written in Python" -HOMEPAGE=" - https://qtile.org/ - https://github.com/qtile/qtile/ - https://pypi.org/project/qtile/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~riscv" -IUSE="pulseaudio wayland" - -RDEPEND=" - >=dev-python/cairocffi-1.6.0[${PYTHON_USEDEP}] - >=dev-python/cffi-1.1.0:=[${PYTHON_USEDEP}] - dev-python/dbus-next[${PYTHON_USEDEP}] - dev-python/pygobject[${PYTHON_USEDEP}] - >=dev-python/xcffib-1.4.0[${PYTHON_USEDEP}] - x11-libs/cairo[X,xcb(+)] - x11-libs/libnotify[introspection] - x11-libs/pango - pulseaudio? ( - dev-python/pulsectl-asyncio[${PYTHON_USEDEP}] - media-sound/pulseaudio - ) - wayland? ( - >=dev-python/pywayland-0.4.17[${PYTHON_USEDEP}] - >=dev-python/pywlroots-0.17[${PYTHON_USEDEP}] - ) -" -BDEPEND=" - dev-python/cffi[${PYTHON_USEDEP}] - dev-python/setuptools[${PYTHON_USEDEP}] - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - dev-python/libcst[${PYTHON_USEDEP}] - media-gfx/imagemagick[X] - x11-base/xorg-server[xephyr,xvfb] - ) - wayland? ( - >=dev-python/pywayland-0.4.17[${PYTHON_USEDEP}] - >=dev-python/pywlroots-0.17[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -python_prepare_all() { - sed -e "s/can_import(\"wlroots.ffi_build\")/$(usex wayland True False)/" \ - -i setup.py || die - - # some tests expect bin/qtile - mkdir bin || die - cat >> bin/qtile <<-EOF || die - #!/bin/sh - exec qtile "\${@}" - EOF - chmod +x bin/qtile || die - - distutils-r1_python_prepare_all -} - -src_compile() { - local -x CFFI_TMPDIR=${T} - distutils-r1_src_compile -} - -src_test() { - virtx distutils-r1_src_test -} - -python_test() { - local EPYTEST_DESELECT=( - # mypy stuff - test/test_check.py - test/migrate/test_check_migrations.py - # TODO: this test clearly requires x11 — so why is wayland - # variant being run? - 'test/backend/x11/test_window.py::test_urgent_hook_fire[wayland-2]' - ) - - # force usage of built module - rm -rf libqtile || die - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - local -x TZ=UTC - nonfatal epytest --backend=x11 $(usev wayland '--backend=wayland') || - die -n "Tests failed with ${EPYTHON}" -} - -python_install_all() { - local DOCS=( CHANGELOG README.rst ) - distutils-r1_python_install_all - - insinto /usr/share/xsessions - doins resources/qtile.desktop - - insinto /usr/share/wayland-sessions - doins resources/qtile-wayland.desktop - - exeinto /etc/X11/Sessions - newexe "${FILESDIR}"/${PN}-session-r1 ${PN} -} |