parent
c0e6073781
commit
5dc8219984
@ -1,23 +1,23 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA512
|
||||
|
||||
MANIFEST Manifest.files.gz 29798 BLAKE2B 70662a482ce8440e66e44872bcdc623aaee6d757027954b662e35b6fae00298f8fe95a5f0e64702a40aca200cfcb7a68ce86b92c0435bf5f9ba0e878d287ce4e SHA512 df07256b0d74a964c9ef8ad25b1130531618f65d5a2d422047350ad8145977bbec891630a62cf401cbf71fe2d6fa0d878b10856ae84c1cf694245a3b482b1641
|
||||
TIMESTAMP 2024-05-16T07:40:40Z
|
||||
MANIFEST Manifest.files.gz 29760 BLAKE2B de25df7ed3cb4a63013941ca6c7006f4e4dcab5e35a8b24422e6892d9b0b4859265419ab1b82373139256ec46f7f2660d4a08e6cd870393175ec6722b6e8ec22 SHA512 129abf8765e51dbd1f0c089c507ccae825a1c2568184e363f65c05caa0c40f8136f8ac8d3991cc8216cf39f04be23612c90d6f2ec8c5c8d93a14a8a2fec591a4
|
||||
TIMESTAMP 2024-05-18T18:40:28Z
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmZFuHhfFIAAAAAALgAo
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmZI9hxfFIAAAAAALgAo
|
||||
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
|
||||
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
|
||||
klDTRg/9Hb8eZDKAQAH9exUl90ick6qTZy2UOgTDTsChIio18rpGYp/d04DCnF7L
|
||||
Od/4JUJmwHDWgG6iQoaWPIc45wDaZ40d9Zf3tTeVEvMvgSBC/jXSWhS83uActAaQ
|
||||
AkBGJEcuYgf8+BLKjKokOkzcl5/RA0ON5350z1Ojcw6VmF86G8iHLwqglcj7Alu+
|
||||
6YLd77OQSLp/NHSnKZtzqToalpN2VY3uCC1r+V1ZuPCx099GWVU/apVZfigcPTfq
|
||||
dagh5sR9kc5tKresSyWKR+m2qfOhfJeN6VrOllCXg6MjcEkYQzltLkdf5kaYGBbi
|
||||
LVkzowDha/FQG63/XRu6xQn5xoqqbzHvcAsZcvNDXsjN1wd7B7XBoHni6uGolVYE
|
||||
b1OaIKabyOYyMHI4vE1HJFIJzlkfox/0FD/mLXLsjQSWFkLmuqblSdREe8YHnw68
|
||||
6O3KSRarpeSGxaN6jOoxol7ViiY4Qj8PQtq/9e5qv9QweUk9wXJjdn20S70wwdu4
|
||||
tu2VQfOJbRAK15o6JuM4mBOHpSz+D9Y3x9TMD1iaibdNMcyl7nqbDXKjBLkPstf0
|
||||
mNQpvepypyxmAWmMWLFm8cNuX+ciB9YBVlv0XzriiFDWOe0EvVT+2kBGoWZ7grHC
|
||||
d41bJZSW9J/SAJsGm6RTz6sfK3XABfCW9H/wMVjTfPDKWHVDvbo=
|
||||
=tfHi
|
||||
klCkyw/9HCnXazSajx30RzgTFGlxACq3hhtapngnqKfUTcxlIu+r/G+fm9bdSfYX
|
||||
U/j63wh+9t0U+hYpb4/x4qWK7ZqR9lQSZaYOBnGimqb502pyBSDerhzMGU3hBB5S
|
||||
MzHKDcLvOA1ULr1n7M0fsk0KDT63ryiUDy/ECYEWwoV/2y8HMYbx91nK3CHx4GZa
|
||||
w8KfrPBr/nkfbJMqkiE34LOMe3EZazZ+pEbo+9+8xGGxt5W7EmsFPl/pq90MsNmv
|
||||
eAA7oQv5QA83d305eOgqcINpqSFSqHTzpcUAXw4D2hSdkz/XoUPGj9QHKAR6rm77
|
||||
nie030Asu4FXQELs4z0ooRQlcvqmOCRvdievRi279CQvvOjXnyod88N/8+V8RrAC
|
||||
w1EU6Ii18qfXBQ9glecINcJDdJg2SWJQAAi+Nip5FdDHZdIpFelWhammpO+L427m
|
||||
J3yg4dit/bdaci6MUVPjKtJqMQ9rXoyPrPFz2zqgYKeo9gfIEXj6AFHvvI+5MZw+
|
||||
D5VcBO59gwwHZhbhBuhfC8UW97DjE3qsqYDcV+9c4jcwjOd+e/otxX88hW/9wKYv
|
||||
8rSq+QXTDMJbvqHlO3psZA+TJSU7uzyjDKuQneuhTW/95vJgUVwr29m7XBxCCnHF
|
||||
fAYyCcUm+sP1UT+UMs8JDCMFccv6QvQxKub02lvddTOi1l7JKiw=
|
||||
=Ki4L
|
||||
-----END PGP SIGNATURE-----
|
||||
|
Binary file not shown.
Binary file not shown.
@ -1,13 +1,9 @@
|
||||
DIST aws-cli-1.32.103.gh.tar.gz 2726436 BLAKE2B 7c08f29df7b0f786a99a7469263cb367ed8024cadb700a56955669abe6fd562cde349fe1e17e7b328b6cc69e6af6db30293f5a13129d700ebfedc1950c26fed3 SHA512 248659ee989df69ffbfbe6dd181632d4a784d4de333b8592c5e0b4a0333d2b201ec652f8ff0f44b51ffe4bc9bea230d047f655016742816cfc52bbb871a707d7
|
||||
DIST aws-cli-1.32.104.gh.tar.gz 2726763 BLAKE2B 997fc73890d033485fb22cf7c5e6ab2844aaec60fe2017cea2513f4f439f6fab8c70519a5ded46ed269b3733eed52579236e577d8db172448812128c68687d50 SHA512 a416f93d77a7f314294aff14a337dbea1ae7d5ef10221a97abec71f8b4c23d764455b4bcb48d10fc5cbb1fcc9cfb149bc4b49e102d0e488a8f3bd4d91782878c
|
||||
DIST aws-cli-1.32.105.gh.tar.gz 2727065 BLAKE2B 1ddbb3405e491fac1257936647872beb93f374754f718338cca1d6ddf230feb3ac4b167af36a1f2a351553af7ea0b525d6481bc06a9d469c79ad06134d1e1da2 SHA512 a181ca52de6f1c891ceb12958927040751e7890b505d1dd2ab1400f1fa17ba555ff2e2fa5a542113648991b37ce99d8016f00e863f81b56e783c28169d7cc993
|
||||
DIST aws-cli-1.32.106.gh.tar.gz 2727416 BLAKE2B 6749a4f63ca594c344a80751fc0ac0f3434c4b5c8a93db794f89d10a23369941656067b00fd66da72d4dd081a920e51a57572d028953356c9c5ad6ebfc1dccf1 SHA512 d6103bbacd65b94f4289d332bf18895899a5caa9c201bb62601863c86a07f8b97dd58651c0e8f2665b322e5d6ea3ac8d2bec2cdeac391cefe0cd03488a02fefc
|
||||
DIST aws-cli-1.32.93.gh.tar.gz 2695489 BLAKE2B d2f81786d4db158a13ec50ed833668db26bde00cc1e4f5254aa127aba82113074abafa996f525b5f7cd215fd51639481a01a49c425bb4c01e990261529f06082 SHA512 e03892ef522fa43442d1b053d0bf8dbd6c892d94398934c4af58e81153c2759f7e55a289457bb3e5b46f2f01697642498fdd6d51cdc18ad8b6c0f6a31d7c606a
|
||||
DIST aws-cli-1.32.107.gh.tar.gz 2727905 BLAKE2B 6790687edadc7ebf4bb8519ed9352961d002b95b157bf56b3ce02f50eef8e9eeeac39bb211816ab3e8e0f21dc2e41b9b3c179c77eab8c23d5650b1002fafff52 SHA512 b2f363ba8833058eb935fab311492c252dac4afff2f81e5ea70b9a8610c6e5b7e0b4ec090591af1a0c3692c3641ac1213cb8455d8ffac8a148d7ba0b7c7f4467
|
||||
DIST aws-cli-1.32.108.gh.tar.gz 2728605 BLAKE2B 83606ebe909a4ee3d4f0d2875f56958b02b791d31d2fc770b1dc60072d31a56b6b7b5ef3ad79d8239b5f061f99f0dbfb554cab169bb99e6813f2b55cf8c185e2 SHA512 ce4bde840a4bfcdce91165bcf66139056e479322c80ef3211c98cd12c09d60d95bad8255f616dca4c11db3a26f3dca8149a42b76d163a8f02a88e6f986faff51
|
||||
DIST aws-cli-1.32.98.gh.tar.gz 2723261 BLAKE2B f854a78226a9480d2966e0dcc817e372de96f32723c28bd7189ed484ab24e8fa9f33a018b1b3193d1a5be82e1ad2b69b2d0d6642f004aa6fd601a68862cbbbdc SHA512 989ad96da152423001832a502935ed64a92ef61ba63f9f413fa07e84910d2aa905056bbfcf49202508d6d0a910b4a2969da27e736857e918077693909e4ca0ea
|
||||
EBUILD awscli-1.32.103.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.104.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.105.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.106.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.93.ebuild 3022 BLAKE2B eca1e9b920babafc0c226e1d3c0b23baa63965cffceacc71118d2e4a1302945d10294223300a94f9dec4b39e52c7bd8f44e35cbf7cf30c117f9d86fe93450326 SHA512 11de7ee4880fe2bd192c6c15081b598d4c9d2f18b28064908a855cb01283408542c8981841c531d546b6de9e2b932d2a23e2fe1a9e90030566af6b966c30fd97
|
||||
EBUILD awscli-1.32.98.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.107.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.108.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.98.ebuild 3022 BLAKE2B eca1e9b920babafc0c226e1d3c0b23baa63965cffceacc71118d2e4a1302945d10294223300a94f9dec4b39e52c7bd8f44e35cbf7cf30c117f9d86fe93450326 SHA512 11de7ee4880fe2bd192c6c15081b598d4c9d2f18b28064908a855cb01283408542c8981841c531d546b6de9e2b932d2a23e2fe1a9e90030566af6b966c30fd97
|
||||
MISC metadata.xml 385 BLAKE2B 5accfb180a91179cc6df539d42d1de06be3ebfec73f3edb719f5d59576103b9a8cb0c7c524c1042630e0cf99f068939a19f04c7b1b4a2acf9e072369df80d913 SHA512 ccb3d516326c5dbdf53068372ce25baecc137d21a04516374362212b969cc928dacbf743b4953da33f28482905798f069d09d19c88d9913f2b32648db25115ab
|
||||
|
@ -1,90 +0,0 @@
|
||||
# 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 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+2).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/rsa[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.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
|
||||
}
|
@ -1,90 +0,0 @@
|
||||
# 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 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+2).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/rsa[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.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
|
||||
}
|
@ -1,3 +1,3 @@
|
||||
DIST exo-1.78.1.gh.tar.gz 11082424 BLAKE2B 35a822a44f95e36e6e1ec47f08d8087e387a5614e57f4cf19a87bddf0bf0d796892644b79553da271c72a2c98cf3865aeec73803730872706f3769fed5176daf SHA512 84f32d19ccaae606f488609eb0f26c3b2195299e5a5714f9d472082297f50323da110b80c53a6f993bf92dd6b6aeb9e3452067525e568630dc41db283731ca79
|
||||
EBUILD exo-1.78.1.ebuild 737 BLAKE2B c4f34d3a5a04e1559bbf5931a91f0ce7533e5a40eb254563d487875859cc5ce20aacf856bd06c7c34b44186121aaf1ae6bab299809cb2c92b5a9315deeca2226 SHA512 1bb34fa966a02ad1d44c25a44d1392cfd5940a5ea1c4ddde085bdab7daaa348d21d1b3bd687e52c360fa0276b974cafa91eef5f8503f2ac0c3f019ab0fc4ad50
|
||||
DIST exo-1.78.2.gh.tar.gz 11084100 BLAKE2B 56cf1212040df77d2e39bbc90490276563a45632fe47f1781bba84fe5d99634a6d050c52dd15c9bb837e7ebef2ea21087a5c50cc165b0b606a0f3e9b4f59182a SHA512 1f2b3fedd12a00457e241b0d00eb4235804b60c8c8e6bec1f970617a969761eb9e18c10a6031bffba6c58571ca7049c47d8eb74f3fbaacb095ef72b21bea1c20
|
||||
EBUILD exo-1.78.2.ebuild 737 BLAKE2B c4f34d3a5a04e1559bbf5931a91f0ce7533e5a40eb254563d487875859cc5ce20aacf856bd06c7c34b44186121aaf1ae6bab299809cb2c92b5a9315deeca2226 SHA512 1bb34fa966a02ad1d44c25a44d1392cfd5940a5ea1c4ddde085bdab7daaa348d21d1b3bd687e52c360fa0276b974cafa91eef5f8503f2ac0c3f019ab0fc4ad50
|
||||
MISC metadata.xml 334 BLAKE2B 230d1a47a3e39f796c16a9e9a622fbc27560c951da0c49adf7aca135970c0c944f42da7eb624c7193d44830c72cf95da9d69d977562853de6a00fd8fb6408977 SHA512 cd1366d99abc260c6f2899000e2a517be9a4c43e921078764fdc996871df34c1827e512087c3eb6f95bf3b685c2f34cbc1f1462eaa303a948640a362b4501b01
|
||||
|
@ -0,0 +1,109 @@
|
||||
# Copyright 2023-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit edos2unix flag-o-matic toolchain-funcs
|
||||
|
||||
NO_DOT_PV=$(ver_rs 1- '')
|
||||
DESCRIPTION="Free file archiver for extremely high compression"
|
||||
HOMEPAGE="https://www.7-zip.org/ https://sourceforge.net/projects/sevenzip/"
|
||||
# linux-x64 tarball is only used for docs
|
||||
SRC_URI="
|
||||
https://downloads.sourceforge.net/sevenzip/7-Zip/${PV}/7z${NO_DOT_PV}-src.tar.xz
|
||||
https://downloads.sourceforge.net/sevenzip/7-Zip/${PV}/7z${NO_DOT_PV}-linux-x64.tar.xz
|
||||
"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="LGPL-2 BSD rar? ( unRAR )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="uasm jwasm rar"
|
||||
REQUIRED_USE="?? ( uasm jwasm )"
|
||||
|
||||
DOCS=( readme.txt History.txt License.txt )
|
||||
HTML_DOCS=( MANUAL )
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
uasm? ( dev-lang/uasm )
|
||||
jwasm? ( dev-lang/jwasm )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-respect-build-env.patch"
|
||||
)
|
||||
|
||||
# TODO(NRK): also build and install the library
|
||||
# TODO(NRK): make it so this package can be used as a drop-in replacement
|
||||
# for app-arch/p7zip ??
|
||||
|
||||
pkg_setup() {
|
||||
# instructions in DOC/readme.txt, Compiling 7-Zip for Unix/Linux
|
||||
# TLDR; every combination of options (clang|gcc)+(asm/noasm)
|
||||
# has a dedicated makefile & builddir
|
||||
mfile="cmpl"
|
||||
if tc-is-clang; then
|
||||
mfile="${mfile}_clang"
|
||||
bdir=c
|
||||
elif tc-is-gcc; then
|
||||
mfile="${mfile}_gcc"
|
||||
bdir=g
|
||||
else
|
||||
die "Unsupported compiler: $(tc-getCC)"
|
||||
fi
|
||||
if use jwasm || use uasm ; then
|
||||
mfile="${mfile}_x64"
|
||||
bdir="${bdir}_x64"
|
||||
fi
|
||||
export mfile="${mfile}.mak"
|
||||
export bdir
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# patch doesn't deal with CRLF even if file+patch match
|
||||
# not even with --ignore-whitespace, --binary or --force
|
||||
pushd "./CPP/7zip" || die "Unable to switch directory"
|
||||
edos2unix ./7zip_gcc.mak ./var_gcc{,_x64}.mak ./var_clang{,_x64}.mak
|
||||
sed -i -e 's/-Werror //g' ./7zip_gcc.mak || die "Error removing -Werror"
|
||||
popd >/dev/null || die "Unable to switch directory"
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
pushd "./CPP/7zip/Bundles/Alone2" || die "Unable to switch directory"
|
||||
|
||||
# avoid executable stack when using uasm/jwasm, harmless otherwise
|
||||
append-ldflags -Wl,-z,noexecstack
|
||||
export G_CFLAGS=${CFLAGS}
|
||||
export G_CXXFLAGS=${CXXFLAGS}
|
||||
export G_LDFLAGS=${LDFLAGS}
|
||||
|
||||
local args=(
|
||||
-f "../../${mfile}"
|
||||
CC=$(tc-getCC)
|
||||
CXX=$(tc-getCXX)
|
||||
)
|
||||
# NOTE: makefile doesn't check the value of DISABLE_RAR_COMPRESS, only
|
||||
# whether it's defined or not. so in case user has `rar` enabled
|
||||
# DISABLE_RAR_COMPRESS (and DISABLE_RAR) needs to stay undefined.
|
||||
if ! use rar; then
|
||||
# disables non-free rar code but allows listing and extracting
|
||||
# non-compressed rar archives
|
||||
args+=( DISABLE_RAR_COMPRESS=1 )
|
||||
fi
|
||||
if use jwasm; then
|
||||
args+=( USE_JWASM=1 )
|
||||
elif use uasm; then
|
||||
args+=( MY_ASM=uasm )
|
||||
fi
|
||||
|
||||
emake ${args[@]}
|
||||
popd > /dev/null || die "Unable to switch directory"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin "./CPP/7zip/Bundles/Alone2/b/${bdir}/7zz"
|
||||
einstalldocs
|
||||
}
|
@ -1,5 +1,9 @@
|
||||
AUX 7zip-23.01-respect-build-env.patch 1556 BLAKE2B fdc1993dbcdc1bac28420d82ae19906be1c9857b7e0822f87d8c40003c55182b42b2f6ebde17897c4e1b074fe518cd4dc8d1c09a7d96d8be599aed5d2d506c91 SHA512 52dc54e980a729291fcadd097c6291fe33183c81cc92e30b10f5ad9c3f7ae09d8b0d3fd483c766ed63fb977b71b28eec0a78b2d4c7c054f68bcb63b8ef57d69a
|
||||
AUX 7zip-24.05-respect-build-env.patch 1428 BLAKE2B 00a6da925ca0236a423e1f82426ae81976358c30ba8b6d30b8af368aeb8e4271c443d3e401f7ea32ef6743b21c730f2ecaf78319e0bdf8c76d6a45baa8f9c1e3 SHA512 0aabff2930325553de08314bd161d2132f5c6fd3ed0363c37c961b04e16ae8b906053c0f8f9132c55760acf3ec1dbdb47f0677d618cf82d8ce8cfe6d52cb6e8d
|
||||
DIST 7z2301-linux-x64.tar.xz 1527700 BLAKE2B 35dc74f0a7a4e586ea5ae969dce72c14e0231822630d2d70f24e1c911cea0492354a258ef65096a6ce0da1510117c12466bc6cda577cdf9e8e74ede17e47f23e SHA512 d3549468de8fd161e4c9233fa0b170af1f28c74749d20f3d0eeb3873857f6c6d2cc0777d564e6a79be7cc21c9e982e10710a795320428dc51db809a8d0f9454e
|
||||
DIST 7z2301-src.tar.xz 1378588 BLAKE2B 348484b24b39db70e513fe50d79954ea0e2dd669f83e3601fa796c8f0ca4734132ca20fac8cda9b8ba550bad9146627fc0ae07056abb99028ef6d825b6a533bd SHA512 e39f660c023aa65e55388be225b5591fe2a5c9138693f3c9107e2eb4ce97fafde118d3375e01ada99d29de9633f56221b5b3d640c982178884670cd84c8aa986
|
||||
DIST 7z2405-linux-x64.tar.xz 1553872 BLAKE2B d6c0bd4eb81f4112bfe50bf6affc68021b03d059076af5519a41c8d471e978ad2b4acc8f67c650070f9d07c518741a0146579ddfb8d56fd125f6db0beece0990 SHA512 13f97236157e2761a0bf406b08fba13a1ecc6d5663fb38f8dfe3b87f3910ba34fd359d8b36bea5135319543f31ec1e210eb512ea9864d9b140c336b9e416c313
|
||||
DIST 7z2405-src.tar.xz 1486772 BLAKE2B 609c7ae8b89e56e747ebfecb25108d8918138f48f0f2ed73183c76101ddd3615aafb9eb7823be0de2a434b450587e01f476d2ed092628a311b6e4ed091e06260 SHA512 d340adfa68e818dd3d3aa411780c81532fa37b6649178b81ec3739725f83e0bc3c01744612b2d467f4d0c2cc984dd35488406d7baee185cf372acebd9c0123a7
|
||||
EBUILD 7zip-23.01.ebuild 2887 BLAKE2B 8b30b8baa88bb0d0806b4547d4005a92dc6cc3a018e915fb2deafe014e103c943bbd7f744e6a7475d735eb715e97acc3f851104b59b96e27c291ab1b05cdd48b SHA512 29d37f7aff541638e6220f3f23d9c41e4a6bdbdcb79c23115efc0c44febf867b1f4eb558ea75966fa5e892293ddd18d1b85c5d6b8dda89f51e66988571669147
|
||||
EBUILD 7zip-24.05.ebuild 2887 BLAKE2B 8b30b8baa88bb0d0806b4547d4005a92dc6cc3a018e915fb2deafe014e103c943bbd7f744e6a7475d735eb715e97acc3f851104b59b96e27c291ab1b05cdd48b SHA512 29d37f7aff541638e6220f3f23d9c41e4a6bdbdcb79c23115efc0c44febf867b1f4eb558ea75966fa5e892293ddd18d1b85c5d6b8dda89f51e66988571669147
|
||||
MISC metadata.xml 967 BLAKE2B 5b54d1cc757cdc63407a51587389f9db032ae141fd9e19423185fd457f50c469ceb53095b128d8c6cd751cf3f0a87703dd36ba5d048dbfe9bea0ccd2354168b2 SHA512 c8c53c995f4bb5982461fa16dd50193f48c59aa15076bd78e38ccc4f0abf2190bf2b143df50e1c7911bd7814bd2ecb34892ee818b328764a9ff4ab2429718d37
|
||||
|
@ -0,0 +1,52 @@
|
||||
Respect build environment settings
|
||||
|
||||
Bug: https://bugs.gentoo.org/913186
|
||||
Bug: https://bugs.gentoo.org/913188
|
||||
Bug: https://bugs.gentoo.org/913189
|
||||
|
||||
|
||||
--- a/CPP/7zip/7zip_gcc.mak
|
||||
+++ b/CPP/7zip/7zip_gcc.mak
|
||||
@@ -45,7 +45,6 @@
|
||||
else
|
||||
CFLAGS_DEBUG = -DNDEBUG
|
||||
ifneq ($(CC), $(CROSS_COMPILE)clang)
|
||||
-LFLAGS_STRIP = -s
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -104,14 +103,14 @@
|
||||
LDFLAGS = -shared -DEF $(DEF_FILE) $(LDFLAGS_STATIC)
|
||||
else
|
||||
SHARED_EXT=.so
|
||||
-LDFLAGS = -shared -fPIC $(LDFLAGS_STATIC)
|
||||
+LDFLAGS = -shared -fPIC $(G_LDFLAGS) $(LDFLAGS_STATIC)
|
||||
CC_SHARED=-fPIC
|
||||
endif
|
||||
|
||||
|
||||
else
|
||||
|
||||
-LDFLAGS = $(LDFLAGS_STATIC)
|
||||
+LDFLAGS = $(G_LDFLAGS) $(LDFLAGS_STATIC)
|
||||
# -z force-bti
|
||||
# -s is not required for clang, do we need it for GCC ???
|
||||
|
||||
@@ -169,7 +168,7 @@
|
||||
|
||||
|
||||
|
||||
-CFLAGS = $(MY_ARCH_2) $(LOCAL_FLAGS) $(CFLAGS_BASE2) $(CFLAGS_BASE) $(FLAGS_FLTO) $(CC_SHARED) -o $@
|
||||
+CFLAGS = $(MY_ARCH_2) $(LOCAL_FLAGS) $(CFLAGS_BASE2) $(CFLAGS_BASE) $(FLAGS_FLTO) $(CC_SHARED) $(G_CFLAGS) -o $@
|
||||
|
||||
|
||||
ifdef IS_MINGW
|
||||
@@ -210,7 +209,7 @@
|
||||
#-Wno-invalid-offsetof
|
||||
#-Wno-reorder
|
||||
|
||||
-CXXFLAGS = $(MY_ARCH_2) $(LOCAL_FLAGS) $(CXXFLAGS_BASE2) $(CFLAGS_BASE) $(FLAGS_FLTO) $(CXXFLAGS_EXTRA) $(CC_SHARED) $(CXX_WARN_FLAGS) $(CXX_STD_FLAGS) $(CXX_INCLUDE_FLAGS) -o $@
|
||||
+CXXFLAGS = $(MY_ARCH_2) $(LOCAL_FLAGS) $(CXXFLAGS_BASE2) $(CFLAGS_BASE) $(FLAGS_FLTO) $(CXXFLAGS_EXTRA) $(CC_SHARED) $(CXX_WARN_FLAGS) $(CXX_STD_FLAGS) $(CXX_INCLUDE_FLAGS) $(G_CXXFLAGS) -o $@
|
||||
|
||||
STATIC_TARGET=
|
||||
ifdef COMPL_STATIC
|
Binary file not shown.
@ -1,135 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# XXX: atm, libbz2.a is always PIC :(, so it is always built quickly
|
||||
# (since we're building shared libs) ...
|
||||
|
||||
EAPI=7
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bzip2.gpg
|
||||
inherit toolchain-funcs multilib multilib-minimal usr-ldscript verify-sig
|
||||
|
||||
DESCRIPTION="A high-quality data compressor used extensively by Gentoo Linux"
|
||||
HOMEPAGE="https://sourceware.org/bzip2/"
|
||||
SRC_URI="https://sourceware.org/pub/${PN}/${P}.tar.gz"
|
||||
SRC_URI+=" verify-sig? ( https://sourceware.org/pub/${PN}/${P}.tar.gz.sig )"
|
||||
|
||||
LICENSE="BZIP2"
|
||||
SLOT="0/1" # subslot = SONAME
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos"
|
||||
IUSE="static static-libs"
|
||||
|
||||
BDEPEND="
|
||||
verify-sig? ( sec-keys/openpgp-keys-bzip2 )
|
||||
"
|
||||
PDEPEND="
|
||||
app-alternatives/bzip2
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.0.4-makefile-CFLAGS.patch
|
||||
"${FILESDIR}"/${PN}-1.0.8-saneso.patch
|
||||
"${FILESDIR}"/${PN}-1.0.4-man-links.patch #172986
|
||||
"${FILESDIR}"/${PN}-1.0.6-progress.patch
|
||||
"${FILESDIR}"/${PN}-1.0.3-no-test.patch
|
||||
"${FILESDIR}"/${PN}-1.0.8-mingw.patch #393573
|
||||
"${FILESDIR}"/${PN}-1.0.8-out-of-tree-build.patch
|
||||
)
|
||||
|
||||
DOCS=( CHANGES README{,.COMPILATION.PROBLEMS,.XML.STUFF} manual.pdf )
|
||||
HTML_DOCS=( manual.html )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# - Use right man path
|
||||
# - Generate symlinks instead of hardlinks
|
||||
# - pass custom variables to control libdir
|
||||
sed -i \
|
||||
-e 's:\$(PREFIX)/man:\$(PREFIX)/share/man:g' \
|
||||
-e 's:ln -s -f $(PREFIX)/bin/:ln -s -f :' \
|
||||
-e 's:$(PREFIX)/lib:$(PREFIX)/$(LIBDIR):g' \
|
||||
Makefile || die
|
||||
}
|
||||
|
||||
bemake() {
|
||||
emake \
|
||||
VPATH="${S}" \
|
||||
CC="$(tc-getCC)" \
|
||||
AR="$(tc-getAR)" \
|
||||
RANLIB="$(tc-getRANLIB)" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
bemake -f "${S}"/Makefile-libbz2_so all
|
||||
# Make sure we link against the shared lib #504648
|
||||
ln -s libbz2.so.${PV} libbz2.so || die
|
||||
bemake -f "${S}"/Makefile all LDFLAGS="${LDFLAGS} $(usex static -static '')"
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
cp "${S}"/sample* "${BUILD_DIR}" || die
|
||||
bemake -f "${S}"/Makefile check
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
into /usr
|
||||
|
||||
# Install the shared lib manually. We install:
|
||||
# .x.x.x - standard shared lib behavior
|
||||
# .x.x - SONAME some distros use #338321
|
||||
# .x - SONAME Gentoo uses
|
||||
dolib.so libbz2.so.${PV}
|
||||
local v
|
||||
for v in libbz2.so{,.{${PV%%.*},${PV%.*}}} ; do
|
||||
dosym libbz2.so.${PV} /usr/$(get_libdir)/${v}
|
||||
done
|
||||
|
||||
use static-libs && dolib.a libbz2.a
|
||||
|
||||
if multilib_is_native_abi ; then
|
||||
gen_usr_ldscript -a bz2
|
||||
|
||||
dobin bzip2recover$(get_exeext)
|
||||
into /
|
||||
newbin bzip2$(get_exeext) bzip2-reference$(get_exeext)
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
# `make install` doesn't cope with out-of-tree builds, nor with
|
||||
# installing just non-binaries, so handle things ourselves.
|
||||
insinto /usr/include
|
||||
doins bzlib.h
|
||||
into /usr
|
||||
dobin bz{diff,grep,more}
|
||||
doman bz{diff,grep,more}.1
|
||||
newman bzip2.1 bzip2-reference.1
|
||||
|
||||
dosym bzdiff /usr/bin/bzcmp
|
||||
dosym bzdiff.1 /usr/share/man/man1/bzcmp.1
|
||||
|
||||
dosym bzmore /usr/bin/bzless
|
||||
dosym bzmore.1 /usr/share/man/man1/bzless.1
|
||||
|
||||
dosym bzip2-reference.1 /usr/share/man/man1/bzip2recover.1
|
||||
local x
|
||||
for x in bz{e,f}grep ; do
|
||||
dosym bzgrep /usr/bin/${x}
|
||||
dosym bzgrep.1 /usr/share/man/man1/${x}.1
|
||||
done
|
||||
|
||||
einstalldocs
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# ensure to preserve the symlinks before app-alternatives/bzip2
|
||||
# is installed
|
||||
local x
|
||||
for x in bzip2 bunzip2 bzcat; do
|
||||
if [[ ! -h ${EROOT}/bin/${x} ]]; then
|
||||
ln -s bzip2-reference$(get_exeext) "${EROOT}/bin/${x}$(get_exeext)" || die
|
||||
fi
|
||||
done
|
||||
}
|
Binary file not shown.
@ -0,0 +1,77 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Git commit SHA is needed at runtime by earthly to pull and bootstrap images.
|
||||
if [[ "${PV}" == "0.8.11" ]] ; then
|
||||
COMMIT_SHA="5caed354538447b7de4d85b59827709da23b6e49"
|
||||
else
|
||||
die 'Could not detect "COMMIT_SHA", please update the ebuild.'
|
||||
fi
|
||||
|
||||
inherit go-module unpacker
|
||||
|
||||
DESCRIPTION="Build automation tool that executes in containers"
|
||||
HOMEPAGE="https://earthly.dev/
|
||||
https://github.com/earthly/earthly/"
|
||||
SRC_URI="
|
||||
https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz
|
||||
-> ${P}.tar.gz
|
||||
https://dev.gentoo.org/~xgqt/distfiles/deps/${P}-deps.tar.zst
|
||||
"
|
||||
|
||||
LICENSE="MPL-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
|| (
|
||||
app-containers/docker
|
||||
app-containers/podman
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( CHANGELOG.md CONTRIBUTING.md README.md )
|
||||
|
||||
src_unpack() {
|
||||
unpacker "${P}-deps.tar.zst"
|
||||
|
||||
go-module_src_unpack
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local -r go_tags="dfrunmount,dfrunsecurity,dfsecrets,dfssh,dfrunnetwork,dfheredoc,forceposix"
|
||||
local -r go_ldflags="
|
||||
-X main.DefaultBuildkitdImage=docker.io/earthly/buildkitd:v${PV}
|
||||
-X main.GitSha=${COMMIT_SHA}
|
||||
-X main.Version=v${PV}
|
||||
"
|
||||
local -a -r go_buildargs=(
|
||||
-tags "${go_tags}"
|
||||
-ldflags "${go_ldflags}"
|
||||
-o ./bin/
|
||||
)
|
||||
ego build "${go_buildargs[@]}" ./cmd/...
|
||||
}
|
||||
|
||||
src_install() {
|
||||
exeinto /usr/bin
|
||||
doexe bin/earthly
|
||||
newexe bin/debugger earthly-debugger
|
||||
|
||||
einstalldocs
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if has_version "app-containers/podman" ; then
|
||||
ewarn "Podman is supported but not recommended."
|
||||
ewarn "If issues arise, then please try running earthly with docker."
|
||||
fi
|
||||
|
||||
if has_version "app-containers/podman[rootless]" ; then
|
||||
ewarn "Running podman in rootless mode is not supported because"
|
||||
ewarn "earthly/dind and earthly/buildkit require privileged access."
|
||||
ewarn "For more info see: https://docs.earthly.dev/docs/guides/podman/"
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,5 +1,4 @@
|
||||
AUX use-printf-in-Makefile.patch 1439 BLAKE2B 829b93431a8dddd957ef2deef60dfd3ff13fc2a0faab5c5327cea2f53ccc1bcc0e805166de93d2de8a52e8c344bdab64dae5671f238b49ecedebb657afca0823 SHA512 8207e9eb534fed58712b805df0e90bcf8406fe1c2907f91cd54500babcc49d0a72dc1d039d9fdb8077967058aaafb6c37336c1b0fcd041edfb3c4604c7cea4c2
|
||||
DIST eid-mw-5.1.15.tar.gz 16296281 BLAKE2B 12efbc884ff250d5497ace6b9670e4dac934a8aa87e2e77d4c083d3e0325c7b0a57dd137506f62a6e3ada57459b5b23e7d5e0d86a80616a64e05948560ce265b SHA512 4cf352ba912db6252f864430bacc895d29b478d3ec13ef3716089e5cb6019b2db2de08a99775dcd71a4ac9f13f3e3c6e1013f36bb2d458bbb0e851f7b45451e5
|
||||
EBUILD eid-mw-5.1.15.ebuild 3148 BLAKE2B 8bf0586a6a4b89c1a680173ff1b97f3b99bbf79b919c1eb43e471d8141cc7dd45a0472eb8e42d103c4c5dc1052a56884da31f4c10d6530ec12ea89fb9e093b1e SHA512 abb40d2ac51128cc0c6ae3e5b77c930ffb9dfeeb91ee0b5c88b4d2c435b9c9d42769d105b0dbab10a4cac02a7ec2e47cd825d246c7b47153b6ec403e1414e801
|
||||
EBUILD eid-mw-9999.ebuild 2284 BLAKE2B 598d04e5607e8fb050ba00d24589f64debb101caf90e13c4aac18ff5028d9ada07ababb09c50c5ee544cca30033e9c83ff5a644ebf4e9b74954ac627d329b777 SHA512 a6899bfdadefcb560e920dd3b5962fa5e06f4735ec5b0b47f870b7db018f7905efca90e9392cc7c5952874496a0e395073401f1cacd2cd9253676e9e41dca5ab
|
||||
DIST eid-mw-5.1.18.tar.gz 16299966 BLAKE2B 417b92ad366f32da42c112828d9d01c5beee59045750b4fc69bbcfdea338e1e5d2db00765cae5dab5d22f36122437aa113a968620aefa013f893aebb74208d76 SHA512 1e6e9056fdadbeae623039f1a0e8e6b6e4e80ab313e0fed31824035a32b3173a042f18c254c06bb57d918afbf5162eb23990b51bb0c525e7929128466c74b4d7
|
||||
EBUILD eid-mw-5.1.18.ebuild 2722 BLAKE2B 97c9396d17975db0c9bd60316631be378d9076388a5f1138c7c46980bd4084b58c74a5b37ef5f1c9b263fd3a8185483794b2a7769d59cb84f3e12bdd533ce8fb SHA512 857bb597cc53c60fdd6983b3649dbd663f83d2e7c7f7393b5473c47284c9e124906c1a02b3eebecf5c61b808f085cc1ae01698cbf2f33ad3af3c802a886e4510
|
||||
EBUILD eid-mw-9999.ebuild 2481 BLAKE2B ee16cfa263d10a0d1c5775279e6678c3c6f24503d83ff1a2721cbf11468104de9f02b861e3519490cfe24e5ea166c76c326679c5b123930c1354aa1b5b6db383 SHA512 e8dd7c1b5ddeecb6248d439c284d62ee3887c2b75e0dc7c6477d12be292c16b5cf365d7b305c0ec483e2d8d5638618ed6a016424d30336572314af8a6b336f60
|
||||
MISC metadata.xml 1447 BLAKE2B bf97d239f8d44f8a3bd31e35868335a6286a8ded9d6904a919a5a69eb89a61173aca5eb988455df2ca201e0d687e932a84ff8ed7012a3f9ca3e1eda0627ae9ec SHA512 6c27500bb1dd72027a540745e3916c41af548c1cd277fad02f975dd6431a22a9083bc0a7cdd00d316e2c7a536be0ac484f9b47bebb53121b7647da8699321838
|
||||
|
@ -1,21 +0,0 @@
|
||||
diff -ur a/plugins_tools/eid-viewer/Makefile.am b/plugins_tools/eid-viewer/Makefile.am
|
||||
--- a/plugins_tools/eid-viewer/Makefile.am 2020-08-19 15:32:50.000000000 +0200
|
||||
+++ b/plugins_tools/eid-viewer/Makefile.am 2020-12-21 23:07:49.980421703 +0200
|
||||
@@ -125,13 +125,13 @@
|
||||
SUBDIRS = . gtk/po test uml
|
||||
|
||||
resources/%.c: resources/%.png
|
||||
- echo -e "#include <gdk-pixbuf/gdk-pixdata.h>\n#if __GNUC__ >= 4\n#pragma GCC diagnostic push\n#pragma GCC diagnostic ignored \"-Wpointer-sign\"\n#endif\n" > $@
|
||||
+ printf '%s\n' '#include <gdk-pixbuf/gdk-pixdata.h>' '#if __GNUC__ >= 4' '#pragma GCC diagnostic push' '#pragma GCC diagnostic ignored "-Wpointer-sign"' '#endif' > $@
|
||||
gdk-pixbuf-csource --struct --extern --name `basename $^ .png` $^ >> $@
|
||||
- echo -e "#pragma GCC diagnostic pop\n" >> $@
|
||||
+ printf '%s\n' '#pragma GCC diagnostic pop' >> $@
|
||||
resources/%.c: resources/%.jpg
|
||||
- echo -e "#include <gdk-pixbuf/gdk-pixdata.h>\n#if __GNUC__ >= 4\n#pragma GCC diagnostic push\n#pragma GCC diagnostic ignored \"-Wpointer-sign\"\n#endif\n" > $@
|
||||
+ printf '%s\n' '#include <gdk-pixbuf/gdk-pixdata.h>' '#if __GNUC__ >= 4' '#pragma GCC diagnostic push' '#pragma GCC diagnostic ignored "-Wpointer-sign"' '#endif' > $@
|
||||
gdk-pixbuf-csource --struct --extern --name `basename $^ .jpg` $^ >> $@
|
||||
- echo -e "#pragma GCC diagnostic pop\n" >> $@
|
||||
+ printf '%s\n' '#pragma GCC diagnostic pop' >> $@
|
||||
|
||||
BUILT_SOURCES = gtk/viewer_glade.h \
|
||||
resources/coat_of_arms_nl.c \
|
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
AUX 50nginx-mode-gentoo.el 74 BLAKE2B f647bdcb4cb4d1eb66c2fa1aa8f468549776b582667a3dcf3ba63e71758f3f859a8b5d630ab7f35ec6edcad44b8f0798d26aaf2303ad00f1cbd75c7dc520aa61 SHA512 a400abb88610376792c6cdca6c6c6e6c91d09e10be3ed913dd253328d4dfac53b19a4b4875978e1545010157665475cc1465c26b774e514f4436d835eb9a2267
|
||||
DIST nginx-mode-1.1.10.tar.gz 3204 BLAKE2B e252c386d00e6c2a43ae4a8583189d4c06bf166e230b81b0f59449050376d539a7966f2e44a09ae70b42c5b51ea74fc8f84a1f15ebcb502f69001b2d564bd9e5 SHA512 93801701322afdbd6f02152108d69abd050bda9456b2016446d03c22ff1c886ec0d14da4be07f49c02ab2346b45480926c0ea4c00769233e4b32ad1a7cff4f00
|
||||
DIST nginx-mode-1.1.9.tar.gz 3290 BLAKE2B 7a20632ed860e1e4f0f379f8c489bdb3f6a1eb09cf790ca4124dd08b631a101796fb96efc73672cc59b812c0136015d955a9d6bab2ccb223d777f299dd1c04c7 SHA512 a209b83f39696ccea8d45b0d90a25b4cdb56f85f1288ca9a7bf83b24a7d69ae2a1caea5e71f7c62ef693f8aac3e74e5dce7761b69ded7da037904df1c9d43536
|
||||
EBUILD nginx-mode-1.1.10.ebuild 583 BLAKE2B 8c0443bff0365486fa5623ad02f8d5572927a4179edcc3e59a393f8567eaff5261a12474db590dcc74a968f619e37fec18868ebd8c1f629eab1f5789abe72fce SHA512 187187bbc9467d679b47bc757af119f7ab4c412f820ba56ba215e0fb12a9ba566d0f570f6ccaa35215a14f850d1b1ecc6cf3d2d3a3dfc5d0d6ffd240b240e63f
|
||||
EBUILD nginx-mode-1.1.10.ebuild 582 BLAKE2B 282e8d7aac4ebf1f324530720048ce0d62f6b20443bb17ef80db67a8df21f6173fe5a83ae71f943d3b291ee65a011e4ba7c5cbbb9799947e122a0e5a0a8992cc SHA512 7eae3277c1c621ae11d0f476f22aabe2a45352ded5b604c09e54e0758c52d777237168f2f937bb56d5f9cf4f3f42293dd6a818f3a0552dbcb17012bacf22e373
|
||||
EBUILD nginx-mode-1.1.9.ebuild 466 BLAKE2B 8eb2154c63828b68ec7b21679f6db7bfe22d7825687270009ba0e4559131d472bed42a672e6a1f5ce3d80de0bc85876667c5ed58bef8450b4f8c795ac015b605 SHA512 addaad33d1dff1fece6fdb44a769a89d61b78d9246dbbf2d2a0c9c227a0492826b28f9b225eede5f1cbdb66bb0bb945f78f24c6f7f7c33180a7781450069439f
|
||||
MISC metadata.xml 417 BLAKE2B dd14f2f211b207046b5d459825192dea083d99736846ac12495e560926acd1add8282e6b1bd617807752917b751b7f581e1a6f63c651754998131cd5d2b3bc90 SHA512 6004a074f2e83463683ec8d8a7c29d00c3f51d702c480d334457b58f92c32716f683f75d6611bdcabaefc3169bb22fac774bf86009219c9ff04b1ef5bc281798
|
||||
|
Binary file not shown.
@ -1,3 +0,0 @@
|
||||
DIST runv-0.7.0.tar.gz 1143867 BLAKE2B b425060493567470bdc886c75a4edd1333094cf3479a06b63286e4ba391d1a3bb82b7c3331a1455f0a2545bebe4c2397112cba3bfb5573a3a62e380dcd69d473 SHA512 1303d4ca99186d9f5c1db4257acecf1702546a084942cc4c51de8685c6841da45be72c78f32ab38e2addb80dc40fe4d022d0fcae7b7d6b6d62a30f434cea178c
|
||||
EBUILD runv-0.7.0.ebuild 947 BLAKE2B ded3d6380428072c7961cf39e0e2b68384aad6a1569c019cd9f773c02836e9e85baa2d050de74672333620eac49b227764866895de6c724810af8cfb0ed8f316 SHA512 be820826c8ca3e46afef230444551dc4b4dd749692b4b6af136d33d7cb527278245346d6a7d4b8e1411219b9ef9212806c612a5dabe5166ecbaeff4cc2e18357
|
||||
MISC metadata.xml 389 BLAKE2B 7e9706637c4577990b1953e4f1500afde607b2628e1169a75ebaa7bc80334b9d1b583c73973bc00d5f1363c8019900e33bd517212aee7aed33eefb2ffe3b9082 SHA512 a0a4cd7053ec1bf9e11a30aaec2b82a4f3848f4697fc33e0f91e462f9b34d4df7418aa357b85401c0272d78b5e1397a83a24fc1f1a7c90a9d438add479a454d5
|
@ -1,12 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
<use>
|
||||
<flag name="libvirt">Enable support for KVM via libvirt</flag>
|
||||
<flag name="xen">Enable support for the Xen Hypervisor</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="github">hyperhq/runv</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -1,45 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
EGO_PN="github.com/hyperhq/runv"
|
||||
|
||||
inherit autotools golang-vcs-snapshot
|
||||
|
||||
DESCRIPTION="Hypervisor-based Runtime for OCI"
|
||||
HOMEPAGE="https://github.com/hyperhq/runv"
|
||||
SRC_URI="https://github.com/hyperhq/runv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="libvirt xen"
|
||||
|
||||
RDEPEND="libvirt? ( >=app-emulation/libvirt-1.2.2 )
|
||||
xen? ( app-emulation/xen )"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
pushd src/github.com/hyperhq/runv/ || die
|
||||
default
|
||||
eautoreconf
|
||||
popd
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=( $(use_with libvirt)
|
||||
$(use_with xen) )
|
||||
pushd src/github.com/hyperhq/runv/ || die
|
||||
econf "${myeconfargs[@]}"
|
||||
popd
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
GOPATH="${S}:$(get_golibdir_gopath)" emake -C src/github.com/hyperhq/runv/
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dodoc src/${EGO_PN}/README.md
|
||||
dobin src/${EGO_PN}/runv
|
||||
}
|
@ -1,483 +0,0 @@
|
||||
# Copyright 2022-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MULTILIB_COMPAT=( abi_x86_{32,64} )
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
inherit autotools edo flag-o-matic multilib multilib-build optfeature
|
||||
inherit prefix python-any-r1 toolchain-funcs wrapper
|
||||
|
||||
WINE_GECKO=2.47.4
|
||||
WINE_MONO=9.0.0
|
||||
WINE_P=wine-$(ver_cut 1-2)
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine-staging.git"
|
||||
WINE_EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine.git"
|
||||
else
|
||||
(( $(ver_cut 2) )) && WINE_SDIR=$(ver_cut 1).x || WINE_SDIR=$(ver_cut 1).0
|
||||
SRC_URI="
|
||||
https://dl.winehq.org/wine/source/${WINE_SDIR}/${WINE_P}.tar.xz
|
||||
https://github.com/wine-staging/wine-staging/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="-* ~amd64 ~x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset"
|
||||
HOMEPAGE="
|
||||
https://wiki.winehq.org/Wine-Staging
|
||||
https://gitlab.winehq.org/wine/wine-staging/
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${WINE_P}"
|
||||
|
||||
LICENSE="LGPL-2.1+ BSD-2 IJG MIT OPENLDAP ZLIB gsm libpng2 libtiff"
|
||||
SLOT="${PV}"
|
||||
IUSE="
|
||||
+X +abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups dos
|
||||
llvm-libunwind custom-cflags +fontconfig +gecko gphoto2 +gstreamer
|
||||
kerberos +mingw +mono netapi nls opencl +opengl osmesa pcap perl
|
||||
pulseaudio samba scanner +sdl selinux smartcard +ssl +strip
|
||||
+truetype udev udisks +unwind usb v4l +vulkan wayland wow64
|
||||
+xcomposite xinerama
|
||||
"
|
||||
# bug #551124 for truetype
|
||||
# TODO: wow64 can be done without mingw if using clang (needs bug #912237)
|
||||
REQUIRED_USE="
|
||||
X? ( truetype )
|
||||
crossdev-mingw? ( mingw )
|
||||
wow64? ( abi_x86_64 !abi_x86_32 mingw )
|
||||
"
|
||||
|
||||
# tests are non-trivial to run, can hang easily, don't play well with
|
||||
# sandbox, and several need real opengl/vulkan or network access
|
||||
RESTRICT="test"
|
||||
|
||||
# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
|
||||
WINE_DLOPEN_DEPEND="
|
||||
X? (
|
||||
x11-libs/libXcursor[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXfixes[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXi[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrandr[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrender[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
|
||||
opengl? (
|
||||
media-libs/libglvnd[X,${MULTILIB_USEDEP}]
|
||||
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
|
||||
)
|
||||
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
|
||||
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
cups? ( net-print/cups[${MULTILIB_USEDEP}] )
|
||||
fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
|
||||
kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
|
||||
netapi? ( net-fs/samba[${MULTILIB_USEDEP}] )
|
||||
sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
|
||||
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
|
||||
truetype? ( media-libs/freetype[${MULTILIB_USEDEP}] )
|
||||
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
|
||||
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
|
||||
vulkan? ( media-libs/vulkan-loader[X?,${MULTILIB_USEDEP}] )
|
||||
"
|
||||
WINE_COMMON_DEPEND="
|
||||
${WINE_DLOPEN_DEPEND}
|
||||
X? (
|
||||
x11-libs/libX11[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXext[${MULTILIB_USEDEP}]
|
||||
)
|
||||
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
|
||||
capi? ( net-libs/libcapi:=[${MULTILIB_USEDEP}] )
|
||||
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
|
||||
gstreamer? (
|
||||
dev-libs/glib:2[${MULTILIB_USEDEP}]
|
||||
media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}]
|
||||
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
|
||||
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
|
||||
pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
|
||||
scanner? ( media-gfx/sane-backends[${MULTILIB_USEDEP}] )
|
||||
smartcard? ( sys-apps/pcsc-lite[${MULTILIB_USEDEP}] )
|
||||
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
|
||||
unwind? (
|
||||
llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] )
|
||||
!llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] )
|
||||
wayland? (
|
||||
dev-libs/wayland[${MULTILIB_USEDEP}]
|
||||
x11-libs/libxkbcommon[${MULTILIB_USEDEP}]
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
${WINE_COMMON_DEPEND}
|
||||
app-emulation/wine-desktop-common
|
||||
dos? (
|
||||
|| (
|
||||
games-emulation/dosbox
|
||||
games-emulation/dosbox-staging
|
||||
)
|
||||
)
|
||||
gecko? (
|
||||
app-emulation/wine-gecko:${WINE_GECKO}[${MULTILIB_USEDEP}]
|
||||
wow64? ( app-emulation/wine-gecko[abi_x86_32] )
|
||||
)
|
||||
gstreamer? ( media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}] )
|
||||
mono? ( app-emulation/wine-mono:${WINE_MONO} )
|
||||
perl? (
|
||||
dev-lang/perl
|
||||
dev-perl/XML-LibXML
|
||||
)
|
||||
samba? ( net-fs/samba[winbind] )
|
||||
selinux? ( sec-policy/selinux-wine )
|
||||
udisks? ( sys-fs/udisks:2 )
|
||||
"
|
||||
DEPEND="
|
||||
${WINE_COMMON_DEPEND}
|
||||
sys-kernel/linux-headers
|
||||
X? ( x11-base/xorg-proto )
|
||||
"
|
||||
# gitapply.sh prefers git but can fallback to patch+extras
|
||||
BDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
|| (
|
||||
dev-vcs/git
|
||||
(
|
||||
sys-apps/gawk
|
||||
sys-apps/util-linux
|
||||
)
|
||||
)
|
||||
|| (
|
||||
sys-devel/binutils
|
||||
sys-devel/lld
|
||||
)
|
||||
dev-lang/perl
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
virtual/pkgconfig
|
||||
mingw? ( !crossdev-mingw? (
|
||||
>=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}]
|
||||
wow64? ( dev-util/mingw64-toolchain[abi_x86_32] )
|
||||
) )
|
||||
nls? ( sys-devel/gettext )
|
||||
wayland? ( dev-util/wayland-scanner )
|
||||
"
|
||||
IDEPEND=">=app-eselect/eselect-wine-2"
|
||||
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
__clear_cache # unused on amd64+x86 (bug #900334)
|
||||
res_getservers # false positive
|
||||
)
|
||||
QA_FLAGS_IGNORED="usr/lib/.*/wine/.*-unix/odbc32.so" # has no compiled objects
|
||||
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-7.17-noexecstack.patch
|
||||
"${FILESDIR}"/${PN}-7.20-unwind.patch
|
||||
"${FILESDIR}"/${PN}-8.13-rpath.patch
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
[[ ${MERGE_TYPE} == binary ]] && return
|
||||
|
||||
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
|
||||
local mingw=-w64-mingw32
|
||||
for mingw in $(usev abi_x86_64 x86_64${mingw}) \
|
||||
$(use abi_x86_32 || use wow64 && echo i686${mingw}); do
|
||||
if ! type -P ${mingw}-gcc >/dev/null; then
|
||||
eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
|
||||
eerror "yourself by installing sys-devel/crossdev then running:"
|
||||
eerror
|
||||
eerror " crossdev --target ${mingw}"
|
||||
eerror
|
||||
eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
|
||||
die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
EGIT_CHECKOUT_DIR=${WORKDIR}/${P}
|
||||
git-r3_src_unpack
|
||||
|
||||
# hack: use subshell to preserve state (including what git-r3 unpack
|
||||
# sets) for smart-live-rebuild as this is not the repo to look at
|
||||
(
|
||||
EGIT_COMMIT=$(<"${EGIT_CHECKOUT_DIR}"/staging/upstream-commit) || die
|
||||
EGIT_REPO_URI=${WINE_EGIT_REPO_URI}
|
||||
EGIT_CHECKOUT_DIR=${S}
|
||||
einfo "Fetching Wine commit matching the current patchset by default (${EGIT_COMMIT})"
|
||||
git-r3_src_unpack
|
||||
)
|
||||
else
|
||||
default
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local patchinstallargs=(
|
||||
--all
|
||||
--no-autoconf
|
||||
# patches known broken with USE=-mingw, retry occasionally (bug #921360)
|
||||
$(usev !mingw '
|
||||
-W winedevice-Default_Drivers
|
||||
-W fltmgr.sys-FltBuildDefaultSecurityDescriptor
|
||||
')
|
||||
${MY_WINE_STAGING_CONF}
|
||||
)
|
||||
|
||||
edo "${PYTHON}" ../${P}/staging/patchinstall.py "${patchinstallargs[@]}"
|
||||
|
||||
# sanity check, bumping these has a history of oversights
|
||||
local geckomono=$(sed -En '/^#define (GECKO|MONO)_VER/{s/[^0-9.]//gp}' \
|
||||
dlls/appwiz.cpl/addons.c || die)
|
||||
if [[ ${WINE_GECKO}$'\n'${WINE_MONO} != "${geckomono}" ]]; then
|
||||
local gmfatal=
|
||||
[[ ${PV} == *9999 ]] && gmfatal=nonfatal
|
||||
${gmfatal} die -n "gecko/mono mismatch in ebuild, has: " ${geckomono} " (please file a bug)"
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
if tc-is-clang; then
|
||||
if use mingw; then
|
||||
# -mabi=ms was ignored by <clang:16 then turned error in :17
|
||||
# if used without --target *-windows, then gets used in install
|
||||
# phase despite USE=mingw, drop as a quick fix for now
|
||||
sed -i '/MSVCRTFLAGS=/s/-mabi=ms//' configure.ac || die
|
||||
else
|
||||
# fails in ./configure unless --enable-archs is passed, allow to
|
||||
# bypass with EXTRA_ECONF but is currently considered unsupported
|
||||
# (by Gentoo) as additional work is needed for (proper) support
|
||||
# note: also fails w/ :17, but unsure if safe to drop w/o mingw
|
||||
[[ ${EXTRA_ECONF} == *--enable-archs* ]] ||
|
||||
die "building ${PN} with clang is only supported with USE=mingw"
|
||||
fi
|
||||
fi
|
||||
|
||||
# ensure .desktop calls this variant + slot
|
||||
sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die
|
||||
|
||||
# datadir is not where wine-mono is installed, so prefixy alternate paths
|
||||
hprefixify -w /get_mono_path/ dlls/mscoree/metahost.c
|
||||
|
||||
# always update for patches (including user's wrt #432348)
|
||||
eautoreconf
|
||||
tools/make_requests || die # perl
|
||||
# tip: if need more for user patches, with portage can e.g. do
|
||||
# echo "post_src_prepare() { tools/make_specfiles || die; }" \
|
||||
# > /etc/portage/env/app-emulation/wine-staging
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
WINE_PREFIX=/usr/lib/${P}
|
||||
WINE_DATADIR=/usr/share/${P}
|
||||
|
||||
local conf=(
|
||||
--prefix="${EPREFIX}"${WINE_PREFIX}
|
||||
--datadir="${EPREFIX}"${WINE_DATADIR}
|
||||
--includedir="${EPREFIX}"/usr/include/${P}
|
||||
--libdir="${EPREFIX}"${WINE_PREFIX}
|
||||
--mandir="${EPREFIX}"${WINE_DATADIR}/man
|
||||
|
||||
$(usev wow64 --enable-archs=x86_64,i386)
|
||||
|
||||
$(use_enable gecko mshtml)
|
||||
$(use_enable mono mscoree)
|
||||
--disable-tests
|
||||
|
||||
$(use_with X x)
|
||||
$(use_with alsa)
|
||||
$(use_with capi)
|
||||
$(use_with cups)
|
||||
$(use_with fontconfig)
|
||||
$(use_with gphoto2 gphoto)
|
||||
$(use_with gstreamer)
|
||||
$(use_with kerberos gssapi)
|
||||
$(use_with kerberos krb5)
|
||||
$(use_with mingw)
|
||||
$(use_with netapi)
|
||||
$(use_with nls gettext)
|
||||
$(use_with opencl)
|
||||
$(use_with opengl)
|
||||
$(use_with osmesa)
|
||||
--without-oss # media-sound/oss is not packaged (OSSv4)
|
||||
$(use_with pcap)
|
||||
$(use_with pulseaudio pulse)
|
||||
$(use_with scanner sane)
|
||||
$(use_with sdl)
|
||||
$(use_with smartcard pcsclite)
|
||||
$(use_with ssl gnutls)
|
||||
$(use_with truetype freetype)
|
||||
$(use_with udev)
|
||||
$(use_with udisks dbus) # dbus is only used for udisks
|
||||
$(use_with unwind)
|
||||
$(use_with usb)
|
||||
$(use_with v4l v4l2)
|
||||
$(use_with vulkan)
|
||||
$(use_with wayland)
|
||||
$(use_with xcomposite)
|
||||
$(use_with xinerama)
|
||||
)
|
||||
|
||||
filter-lto # build failure
|
||||
filter-flags -Wl,--gc-sections # runtime issues (bug #931329)
|
||||
use custom-cflags || strip-flags # can break in obscure ways at runtime
|
||||
|
||||
# wine uses linker tricks unlikely to work with non-bfd/lld (bug #867097)
|
||||
# (do self test until https://github.com/gentoo/gentoo/pull/28355)
|
||||
if [[ $(LC_ALL=C $(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) != @(LLD|GNU\ ld)* ]]
|
||||
then
|
||||
has_version -b sys-devel/binutils &&
|
||||
append-ldflags -fuse-ld=bfd ||
|
||||
append-ldflags -fuse-ld=lld
|
||||
strip-unsupported-flags
|
||||
fi
|
||||
|
||||
# >=wine-vanilla-9 has proper fixes and builds with gcc-14, but
|
||||
# staging patchset is messier and would rather not have to worry
|
||||
# about it (try to remove on bump now and then, bug #919758)
|
||||
append-cflags $(test-flags-CC -Wno-error=incompatible-pointer-types)
|
||||
|
||||
if use mingw; then
|
||||
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
|
||||
|
||||
# CROSSCC was formerly recognized by wine, thus been using similar
|
||||
# variables (subject to change, esp. if ever make a mingw.eclass).
|
||||
local mingwcc_amd64=${CROSSCC:-${CROSSCC_amd64:-x86_64-w64-mingw32-gcc}}
|
||||
local mingwcc_x86=${CROSSCC:-${CROSSCC_x86:-i686-w64-mingw32-gcc}}
|
||||
local -n mingwcc=mingwcc_$(usex abi_x86_64 amd64 x86)
|
||||
|
||||
conf+=(
|
||||
ac_cv_prog_x86_64_CC="${mingwcc_amd64}"
|
||||
ac_cv_prog_i386_CC="${mingwcc_x86}"
|
||||
|
||||
CROSSCFLAGS="${CROSSCFLAGS:-$(
|
||||
filter-flags '-fstack-protector*' #870136
|
||||
filter-flags '-mfunction-return=thunk*' #878849
|
||||
|
||||
# some bashrc-mv users tend to do CFLAGS="${LDFLAGS}" and then
|
||||
# strip-unsupported-flags miss these during compile-only tests
|
||||
# (primarily done for 23.0 profiles' -z, not full coverage)
|
||||
filter-flags '-Wl,-z,*'
|
||||
|
||||
CC=${mingwcc} test-flags-CC ${CFLAGS:--O2}
|
||||
)}"
|
||||
|
||||
CROSSLDFLAGS="${CROSSLDFLAGS:-$(
|
||||
filter-flags '-fuse-ld=*'
|
||||
|
||||
CC=${mingwcc} test-flags-CCLD ${LDFLAGS}
|
||||
)}"
|
||||
)
|
||||
fi
|
||||
|
||||
# order matters with multilib: configure+compile 64->32, install 32->64
|
||||
local -i bits
|
||||
for bits in $(usev abi_x86_64 64) $(usev abi_x86_32 32); do
|
||||
(
|
||||
einfo "Configuring ${PN} for ${bits}bits in ${WORKDIR}/build${bits} ..."
|
||||
|
||||
mkdir ../build${bits} || die
|
||||
cd ../build${bits} || die
|
||||
|
||||
if (( bits == 64 )); then
|
||||
conf+=( --enable-win64 )
|
||||
elif use amd64; then
|
||||
conf+=(
|
||||
$(usev abi_x86_64 --with-wine64=../build64)
|
||||
TARGETFLAGS=-m32 # for widl
|
||||
)
|
||||
# _setup is optional, but use over Wine's auto-detect (+#472038)
|
||||
multilib_toolchain_setup x86
|
||||
fi
|
||||
|
||||
ECONF_SOURCE=${S} econf "${conf[@]}"
|
||||
)
|
||||
done
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
use abi_x86_64 && emake -C ../build64 # do first
|
||||
use abi_x86_32 && emake -C ../build32
|
||||
}
|
||||
|
||||
src_install() {
|
||||
use abi_x86_32 && emake DESTDIR="${D}" -C ../build32 install
|
||||
use abi_x86_64 && emake DESTDIR="${D}" -C ../build64 install # do last
|
||||
|
||||
# Ensure both wine64 and wine are available if USE=abi_x86_64 (wow64,
|
||||
# -abi_x86_32, and/or EXTRA_ECONF could cause varying scenarios where
|
||||
# one or the other could be missing and that is unexpected for users
|
||||
# and some tools like winetricks)
|
||||
if use abi_x86_64; then
|
||||
if [[ -e ${ED}${WINE_PREFIX}/bin/wine64 && ! -e ${ED}${WINE_PREFIX}/bin/wine ]]; then
|
||||
dosym wine64 ${WINE_PREFIX}/bin/wine
|
||||
dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader
|
||||
|
||||
# also install wine(1) man pages (incl. translations)
|
||||
local man
|
||||
for man in ../build64/loader/wine.*man; do
|
||||
: "${man##*/wine}"
|
||||
: "${_%.*}"
|
||||
insinto ${WINE_DATADIR}/man/${_:+${_#.}/}man1
|
||||
newins ${man} wine.1
|
||||
done
|
||||
elif [[ ! -e ${ED}${WINE_PREFIX}/bin/wine64 && -e ${ED}${WINE_PREFIX}/bin/wine ]]; then
|
||||
dosym wine ${WINE_PREFIX}/bin/wine64
|
||||
dosym wine-preloader ${WINE_PREFIX}/bin/wine64-preloader
|
||||
fi
|
||||
fi
|
||||
|
||||
use perl || rm "${ED}"${WINE_DATADIR}/man/man1/wine{dump,maker}.1 \
|
||||
"${ED}"${WINE_PREFIX}/bin/{function_grep.pl,wine{dump,maker}} || die
|
||||
|
||||
# create variant wrappers for eselect-wine
|
||||
local bin
|
||||
for bin in "${ED}"${WINE_PREFIX}/bin/*; do
|
||||
make_wrapper "${bin##*/}-${P#wine-}" "${bin#"${ED}"}"
|
||||
done
|
||||
|
||||
if use mingw; then
|
||||
# don't let portage try to strip PE files with the wrong
|
||||
# strip executable and instead handle it here (saves ~120MB)
|
||||
dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows
|
||||
|
||||
if use strip; then
|
||||
ebegin "Stripping Windows (PE) binaries"
|
||||
find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
|
||||
-exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} +
|
||||
eend ${?} || die
|
||||
fi
|
||||
fi
|
||||
|
||||
dodoc ANNOUNCE* AUTHORS README* documentation/README*
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use !abi_x86_32 && use !wow64; then
|
||||
ewarn "32bit support is disabled. While 64bit applications themselves will"
|
||||
ewarn "work, be warned that it is not unusual that installers or other helpers"
|
||||
ewarn "will attempt to use 32bit and fail. If do not want full USE=abi_x86_32,"
|
||||
ewarn "note the experimental/WIP USE=wow64 can allow 32bit without multilib."
|
||||
elif use abi_x86_32 && { use opengl || use vulkan; } &&
|
||||
has_version 'x11-drivers/nvidia-drivers[-abi_x86_32]'
|
||||
then
|
||||
ewarn "x11-drivers/nvidia-drivers is installed but is built without"
|
||||
ewarn "USE=abi_x86_32 (ABI_X86=32), hardware acceleration with 32bit"
|
||||
ewarn "applications under ${PN} will likely not be usable."
|
||||
fi
|
||||
|
||||
optfeature "/dev/hidraw* access used for *some* controllers (e.g. DualShock4)" \
|
||||
games-util/game-device-udev-rules
|
||||
|
||||
eselect wine update --if-unset || die
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
eselect wine update --if-unset || die
|
||||
}
|
@ -1,431 +0,0 @@
|
||||
# Copyright 2022-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MULTILIB_COMPAT=( abi_x86_{32,64} )
|
||||
inherit autotools flag-o-matic multilib multilib-build optfeature
|
||||
inherit prefix toolchain-funcs wrapper
|
||||
|
||||
WINE_GECKO=2.47.4
|
||||
WINE_MONO=9.0.0
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine.git"
|
||||
else
|
||||
(( $(ver_cut 2) )) && WINE_SDIR=$(ver_cut 1).x || WINE_SDIR=$(ver_cut 1).0
|
||||
SRC_URI="https://dl.winehq.org/wine/source/${WINE_SDIR}/wine-${PV}.tar.xz"
|
||||
S="${WORKDIR}/wine-${PV}"
|
||||
KEYWORDS="-* ~amd64 ~x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"
|
||||
HOMEPAGE="
|
||||
https://www.winehq.org/
|
||||
https://gitlab.winehq.org/wine/wine/
|
||||
"
|
||||
|
||||
LICENSE="LGPL-2.1+ BSD-2 IJG MIT OPENLDAP ZLIB gsm libpng2 libtiff"
|
||||
SLOT="${PV}"
|
||||
IUSE="
|
||||
+X +abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups dos
|
||||
llvm-libunwind custom-cflags +fontconfig +gecko gphoto2 +gstreamer
|
||||
kerberos +mingw +mono netapi nls odbc opencl +opengl osmesa pcap
|
||||
perl pulseaudio samba scanner +sdl selinux smartcard +ssl +strip
|
||||
+truetype udev udisks +unwind usb v4l +vulkan wayland wow64
|
||||
+xcomposite xinerama"
|
||||
# bug #551124 for truetype
|
||||
# TODO?: wow64 can be done without mingw if using clang (needs bug #912237)
|
||||
REQUIRED_USE="
|
||||
X? ( truetype )
|
||||
crossdev-mingw? ( mingw )
|
||||
wow64? ( abi_x86_64 !abi_x86_32 mingw )
|
||||
"
|
||||
|
||||
# tests are non-trivial to run, can hang easily, don't play well with
|
||||
# sandbox, and several need real opengl/vulkan or network access
|
||||
RESTRICT="test"
|
||||
|
||||
# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
|
||||
WINE_DLOPEN_DEPEND="
|
||||
X? (
|
||||
x11-libs/libXcursor[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXfixes[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXi[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrandr[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrender[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
|
||||
opengl? (
|
||||
media-libs/libglvnd[X,${MULTILIB_USEDEP}]
|
||||
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
|
||||
)
|
||||
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
|
||||
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
cups? ( net-print/cups[${MULTILIB_USEDEP}] )
|
||||
fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
|
||||
kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
|
||||
netapi? ( net-fs/samba[${MULTILIB_USEDEP}] )
|
||||
odbc? ( dev-db/unixODBC[${MULTILIB_USEDEP}] )
|
||||
sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
|
||||
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
|
||||
truetype? ( media-libs/freetype[${MULTILIB_USEDEP}] )
|
||||
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
|
||||
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
|
||||
vulkan? ( media-libs/vulkan-loader[X?,${MULTILIB_USEDEP}] )
|
||||
"
|
||||
WINE_COMMON_DEPEND="
|
||||
${WINE_DLOPEN_DEPEND}
|
||||
X? (
|
||||
x11-libs/libX11[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXext[${MULTILIB_USEDEP}]
|
||||
)
|
||||
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
|
||||
capi? ( net-libs/libcapi:=[${MULTILIB_USEDEP}] )
|
||||
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
|
||||
gstreamer? (
|
||||
dev-libs/glib:2[${MULTILIB_USEDEP}]
|
||||
media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}]
|
||||
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
|
||||
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
|
||||
pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
|
||||
scanner? ( media-gfx/sane-backends[${MULTILIB_USEDEP}] )
|
||||
smartcard? ( sys-apps/pcsc-lite[${MULTILIB_USEDEP}] )
|
||||
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
|
||||
unwind? (
|
||||
llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] )
|
||||
!llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] )
|
||||
wayland? (
|
||||
dev-libs/wayland[${MULTILIB_USEDEP}]
|
||||
x11-libs/libxkbcommon[${MULTILIB_USEDEP}]
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
${WINE_COMMON_DEPEND}
|
||||
app-emulation/wine-desktop-common
|
||||
dos? (
|
||||
|| (
|
||||
games-emulation/dosbox
|
||||
games-emulation/dosbox-staging
|
||||
)
|
||||
)
|
||||
gecko? (
|
||||
app-emulation/wine-gecko:${WINE_GECKO}[${MULTILIB_USEDEP}]
|
||||
wow64? ( app-emulation/wine-gecko[abi_x86_32] )
|
||||
)
|
||||
gstreamer? ( media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}] )
|
||||
mono? ( app-emulation/wine-mono:${WINE_MONO} )
|
||||
perl? (
|
||||
dev-lang/perl
|
||||
dev-perl/XML-LibXML
|
||||
)
|
||||
samba? ( net-fs/samba[winbind] )
|
||||
selinux? ( sec-policy/selinux-wine )
|
||||
udisks? ( sys-fs/udisks:2 )
|
||||
"
|
||||
DEPEND="
|
||||
${WINE_COMMON_DEPEND}
|
||||
sys-kernel/linux-headers
|
||||
X? ( x11-base/xorg-proto )
|
||||
"
|
||||
BDEPEND="
|
||||
|| (
|
||||
sys-devel/binutils
|
||||
sys-devel/lld
|
||||
)
|
||||
dev-lang/perl
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
virtual/pkgconfig
|
||||
mingw? ( !crossdev-mingw? (
|
||||
>=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}]
|
||||
wow64? ( dev-util/mingw64-toolchain[abi_x86_32] )
|
||||
) )
|
||||
nls? ( sys-devel/gettext )
|
||||
wayland? ( dev-util/wayland-scanner )
|
||||
"
|
||||
IDEPEND=">=app-eselect/eselect-wine-2"
|
||||
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
__clear_cache # unused on amd64+x86 (bug #900338)
|
||||
res_getservers # false positive
|
||||
)
|
||||
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-7.0-noexecstack.patch
|
||||
"${FILESDIR}"/${PN}-7.20-unwind.patch
|
||||
"${FILESDIR}"/${PN}-8.13-rpath.patch
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
[[ ${MERGE_TYPE} == binary ]] && return
|
||||
|
||||
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
|
||||
local mingw=-w64-mingw32
|
||||
for mingw in $(usev abi_x86_64 x86_64${mingw}) \
|
||||
$(use abi_x86_32 || use wow64 && echo i686${mingw}); do
|
||||
if ! type -P ${mingw}-gcc >/dev/null; then
|
||||
eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
|
||||
eerror "yourself by installing sys-devel/crossdev then running:"
|
||||
eerror
|
||||
eerror " crossdev --target ${mingw}"
|
||||
eerror
|
||||
eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
|
||||
die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# sanity check, bumping these has a history of oversights
|
||||
local geckomono=$(sed -En '/^#define (GECKO|MONO)_VER/{s/[^0-9.]//gp}' \
|
||||
dlls/appwiz.cpl/addons.c || die)
|
||||
if [[ ${WINE_GECKO}$'\n'${WINE_MONO} != "${geckomono}" ]]; then
|
||||
local gmfatal=
|
||||
[[ ${PV} == *9999 ]] && gmfatal=nonfatal
|
||||
${gmfatal} die -n "gecko/mono mismatch in ebuild, has: " ${geckomono} " (please file a bug)"
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
if tc-is-clang; then
|
||||
if use mingw; then
|
||||
# -mabi=ms was ignored by <clang:16 then turned error in :17
|
||||
# if used without --target *-windows, then gets used in install
|
||||
# phase despite USE=mingw, drop as a quick fix for now
|
||||
sed -i '/MSVCRTFLAGS=/s/-mabi=ms//' configure.ac || die
|
||||
else
|
||||
# fails in ./configure unless --enable-archs is passed, allow to
|
||||
# bypass with EXTRA_ECONF but is currently considered unsupported
|
||||
# (by Gentoo) as additional work is needed for (proper) support
|
||||
# note: also fails w/ :17, but unsure if safe to drop w/o mingw
|
||||
[[ ${EXTRA_ECONF} == *--enable-archs* ]] ||
|
||||
die "building ${PN} with clang is only supported with USE=mingw"
|
||||
fi
|
||||
fi
|
||||
|
||||
# ensure .desktop calls this variant + slot
|
||||
sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die
|
||||
|
||||
# datadir is not where wine-mono is installed, so prefixy alternate paths
|
||||
hprefixify -w /get_mono_path/ dlls/mscoree/metahost.c
|
||||
|
||||
# always update for patches (including user's wrt #432348)
|
||||
eautoreconf
|
||||
tools/make_requests || die # perl
|
||||
# tip: if need more for user patches, with portage can e.g. do
|
||||
# echo "post_src_prepare() { tools/make_specfiles || die; }" \
|
||||
# > /etc/portage/env/app-emulation/wine-vanilla
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
WINE_PREFIX=/usr/lib/${P}
|
||||
WINE_DATADIR=/usr/share/${P}
|
||||
|
||||
local conf=(
|
||||
--prefix="${EPREFIX}"${WINE_PREFIX}
|
||||
--datadir="${EPREFIX}"${WINE_DATADIR}
|
||||
--includedir="${EPREFIX}"/usr/include/${P}
|
||||
--libdir="${EPREFIX}"${WINE_PREFIX}
|
||||
--mandir="${EPREFIX}"${WINE_DATADIR}/man
|
||||
|
||||
$(usev wow64 --enable-archs=x86_64,i386)
|
||||
|
||||
$(use_enable gecko mshtml)
|
||||
$(use_enable mono mscoree)
|
||||
--disable-tests
|
||||
|
||||
$(use_with X x)
|
||||
$(use_with alsa)
|
||||
$(use_with capi)
|
||||
$(use_with cups)
|
||||
$(use_with fontconfig)
|
||||
$(use_with gphoto2 gphoto)
|
||||
$(use_with gstreamer)
|
||||
$(use_with kerberos gssapi)
|
||||
$(use_with kerberos krb5)
|
||||
$(use_with mingw)
|
||||
$(use_with netapi)
|
||||
$(use_with nls gettext)
|
||||
$(use_with opencl)
|
||||
$(use_with opengl)
|
||||
$(use_with osmesa)
|
||||
--without-oss # media-sound/oss is not packaged (OSSv4)
|
||||
$(use_with pcap)
|
||||
$(use_with pulseaudio pulse)
|
||||
$(use_with scanner sane)
|
||||
$(use_with sdl)
|
||||
$(use_with smartcard pcsclite)
|
||||
$(use_with ssl gnutls)
|
||||
$(use_with truetype freetype)
|
||||
$(use_with udev)
|
||||
$(use_with udisks dbus) # dbus is only used for udisks
|
||||
$(use_with unwind)
|
||||
$(use_with usb)
|
||||
$(use_with v4l v4l2)
|
||||
$(use_with vulkan)
|
||||
$(use_with wayland)
|
||||
$(use_with xcomposite)
|
||||
$(use_with xinerama)
|
||||
$(usev !odbc ac_cv_lib_soname_odbc=)
|
||||
)
|
||||
|
||||
filter-lto # build failure
|
||||
filter-flags -Wl,--gc-sections # runtime issues (bug #931329)
|
||||
use custom-cflags || strip-flags # can break in obscure ways at runtime
|
||||
|
||||
# wine uses linker tricks unlikely to work with non-bfd/lld (bug #867097)
|
||||
# (do self test until https://github.com/gentoo/gentoo/pull/28355)
|
||||
if [[ $(LC_ALL=C $(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) != @(LLD|GNU\ ld)* ]]
|
||||
then
|
||||
has_version -b sys-devel/binutils &&
|
||||
append-ldflags -fuse-ld=bfd ||
|
||||
append-ldflags -fuse-ld=lld
|
||||
strip-unsupported-flags
|
||||
fi
|
||||
|
||||
if use mingw; then
|
||||
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
|
||||
|
||||
# CROSSCC was formerly recognized by wine, thus been using similar
|
||||
# variables (subject to change, esp. if ever make a mingw.eclass).
|
||||
local mingwcc_amd64=${CROSSCC:-${CROSSCC_amd64:-x86_64-w64-mingw32-gcc}}
|
||||
local mingwcc_x86=${CROSSCC:-${CROSSCC_x86:-i686-w64-mingw32-gcc}}
|
||||
local -n mingwcc=mingwcc_$(usex abi_x86_64 amd64 x86)
|
||||
|
||||
conf+=(
|
||||
ac_cv_prog_x86_64_CC="${mingwcc_amd64}"
|
||||
ac_cv_prog_i386_CC="${mingwcc_x86}"
|
||||
|
||||
CROSSCFLAGS="${CROSSCFLAGS:-$(
|
||||
filter-flags '-fstack-protector*' #870136
|
||||
filter-flags '-mfunction-return=thunk*' #878849
|
||||
|
||||
# some bashrc-mv users tend to do CFLAGS="${LDFLAGS}" and then
|
||||
# strip-unsupported-flags miss these during compile-only tests
|
||||
# (primarily done for 23.0 profiles' -z, not full coverage)
|
||||
filter-flags '-Wl,-z,*'
|
||||
|
||||
CC=${mingwcc} test-flags-CC ${CFLAGS:--O2}
|
||||
)}"
|
||||
|
||||
CROSSLDFLAGS="${CROSSLDFLAGS:-$(
|
||||
filter-flags '-fuse-ld=*'
|
||||
|
||||
CC=${mingwcc} test-flags-CCLD ${LDFLAGS}
|
||||
)}"
|
||||
)
|
||||
fi
|
||||
|
||||
# order matters with multilib: configure+compile 64->32, install 32->64
|
||||
local -i bits
|
||||
for bits in $(usev abi_x86_64 64) $(usev abi_x86_32 32); do
|
||||
(
|
||||
einfo "Configuring ${PN} for ${bits}bits in ${WORKDIR}/build${bits} ..."
|
||||
|
||||
mkdir ../build${bits} || die
|
||||
cd ../build${bits} || die
|
||||
|
||||
if (( bits == 64 )); then
|
||||
conf+=( --enable-win64 )
|
||||
elif use amd64; then
|
||||
conf+=(
|
||||
$(usev abi_x86_64 --with-wine64=../build64)
|
||||
TARGETFLAGS=-m32 # for widl
|
||||
)
|
||||
# _setup is optional, but use over Wine's auto-detect (+#472038)
|
||||
multilib_toolchain_setup x86
|
||||
fi
|
||||
|
||||
ECONF_SOURCE=${S} econf "${conf[@]}"
|
||||
)
|
||||
done
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
use abi_x86_64 && emake -C ../build64 # do first
|
||||
use abi_x86_32 && emake -C ../build32
|
||||
}
|
||||
|
||||
src_install() {
|
||||
use abi_x86_32 && emake DESTDIR="${D}" -C ../build32 install
|
||||
use abi_x86_64 && emake DESTDIR="${D}" -C ../build64 install # do last
|
||||
|
||||
# Ensure both wine64 and wine are available if USE=abi_x86_64 (wow64,
|
||||
# -abi_x86_32, and/or EXTRA_ECONF could cause varying scenarios where
|
||||
# one or the other could be missing and that is unexpected for users
|
||||
# and some tools like winetricks)
|
||||
if use abi_x86_64; then
|
||||
if [[ -e ${ED}${WINE_PREFIX}/bin/wine64 && ! -e ${ED}${WINE_PREFIX}/bin/wine ]]; then
|
||||
dosym wine64 ${WINE_PREFIX}/bin/wine
|
||||
dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader
|
||||
|
||||
# also install wine(1) man pages (incl. translations)
|
||||
local man
|
||||
for man in ../build64/loader/wine.*man; do
|
||||
: "${man##*/wine}"
|
||||
: "${_%.*}"
|
||||
insinto ${WINE_DATADIR}/man/${_:+${_#.}/}man1
|
||||
newins ${man} wine.1
|
||||
done
|
||||
elif [[ ! -e ${ED}${WINE_PREFIX}/bin/wine64 && -e ${ED}${WINE_PREFIX}/bin/wine ]]; then
|
||||
dosym wine ${WINE_PREFIX}/bin/wine64
|
||||
dosym wine-preloader ${WINE_PREFIX}/bin/wine64-preloader
|
||||
fi
|
||||
fi
|
||||
|
||||
use perl || rm "${ED}"${WINE_DATADIR}/man/man1/wine{dump,maker}.1 \
|
||||
"${ED}"${WINE_PREFIX}/bin/{function_grep.pl,wine{dump,maker}} || die
|
||||
|
||||
# create variant wrappers for eselect-wine
|
||||
local bin
|
||||
for bin in "${ED}"${WINE_PREFIX}/bin/*; do
|
||||
make_wrapper "${bin##*/}-${P#wine-}" "${bin#"${ED}"}"
|
||||
done
|
||||
|
||||
if use mingw; then
|
||||
# don't let portage try to strip PE files with the wrong
|
||||
# strip executable and instead handle it here (saves ~120MB)
|
||||
dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows
|
||||
|
||||
if use strip; then
|
||||
ebegin "Stripping Windows (PE) binaries"
|
||||
find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
|
||||
-exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} +
|
||||
eend ${?} || die
|
||||
fi
|
||||
fi
|
||||
|
||||
dodoc ANNOUNCE* AUTHORS README* documentation/README*
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use !abi_x86_32 && use !wow64; then
|
||||
ewarn "32bit support is disabled. While 64bit applications themselves will"
|
||||
ewarn "work, be warned that it is not unusual that installers or other helpers"
|
||||
ewarn "will attempt to use 32bit and fail. If do not want full USE=abi_x86_32,"
|
||||
ewarn "note the experimental/WIP USE=wow64 can allow 32bit without multilib."
|
||||
elif use abi_x86_32 && { use opengl || use vulkan; } &&
|
||||
has_version 'x11-drivers/nvidia-drivers[-abi_x86_32]'
|
||||
then
|
||||
ewarn "x11-drivers/nvidia-drivers is installed but is built without"
|
||||
ewarn "USE=abi_x86_32 (ABI_X86=32), hardware acceleration with 32bit"
|
||||
ewarn "applications under ${PN} will likely not be usable."
|
||||
fi
|
||||
|
||||
optfeature "/dev/hidraw* access used for *some* controllers (e.g. DualShock4)" \
|
||||
games-util/game-device-udev-rules
|
||||
|
||||
eselect wine update --if-unset || die
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
eselect wine update --if-unset || die
|
||||
}
|
Binary file not shown.
@ -1,3 +1,3 @@
|
||||
DIST eselect-pwsh-0.1.1.tar.bz2 7687 BLAKE2B e5e786c2ccb28f74436baed35db9937d1e0e20cba42926b8c3988d5ad406484ff0503126b8e68561fde1cbfdf434c86e9e08c9a54e312511aa4a04247abb61f5 SHA512 e08c18674cc55be9bcb93522bcae5f7161c6a3b347ff10ca95bca4130eacb8998141305c2c10b4e7dd8d783358234703330bba422ac798d9d7c43dc6206651bb
|
||||
EBUILD eselect-pwsh-0.1.1.ebuild 478 BLAKE2B d1189e9e63685e9cb2363e369e323251365ee496defa409f57b536d674e6006fca6293b692f69f31e730667083231c76c5a6a3c2a250ef8482be5decc384ab56 SHA512 651b16b96606949267dd3d13f69bab7fd912652bf15e978c96b8ade0ba5e45fec62bf1362bd457bc961779855e5d10e88fb977bacff5334915a02e5479a986f4
|
||||
EBUILD eselect-pwsh-0.1.1.ebuild 477 BLAKE2B a2a9e0e3e892f8b528b6030dab7d47090620eb368bc96a3ffb19ce40d179e68ba4f7d7de9bc0c7dcbec241d753deab96997cb2f0f07f3cc5b2acb389b999d4ea SHA512 0409ce3ad790f867a8bc998beafed7568c40924dad6808d2e793989b11fa768ec3a2c2270d15fd19d5e5011a303fdec6b083ee773a50579497242df8c0b5f9ab
|
||||
MISC metadata.xml 419 BLAKE2B 29d04bb51c6c39f498fc9e9a96dfc1b336c5b10690412ca0d09eeff1d323b87af3e373edbd852ca3da96bb24ab8db85fbcc8e8ee353ac825f6558ba90a5c2f09 SHA512 e01d9f1cddcbd8db2ff1fefeb50a184182d220d59d201c187c2ec2b4fcbc5f7b8e40e6b570c31d6bcd9d45ec461d4b01a189789f5e7a4ff6febe89aefd2a48d1
|
||||
|
Binary file not shown.
@ -1,50 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools flag-o-matic toolchain-funcs
|
||||
|
||||
DESCRIPTION="The GNU Calendar - a replacement for cal"
|
||||
HOMEPAGE="https://www.gnu.org/software/gcal/"
|
||||
SRC_URI="mirror://gnu/gcal/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm ppc x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
IUSE="ncurses nls unicode"
|
||||
|
||||
RDEPEND="nls? ( virtual/libintl )
|
||||
unicode? ( dev-libs/libunistring:= )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
app-arch/xz-utils
|
||||
nls? ( >=sys-devel/gettext-0.17 )
|
||||
"
|
||||
|
||||
DOCS=( BUGS LIMITATIONS NEWS README THANKS TODO )
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-glibc228.patch"
|
||||
"${FILESDIR}/${PN}-4.1-configure-clang16.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Drop once ${PN}-4.1-configure-clang16.patch merged
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CC
|
||||
append-cppflags -D_GNU_SOURCE
|
||||
|
||||
use unicode && append-libs -lunistring
|
||||
|
||||
econf \
|
||||
--disable-rpath \
|
||||
$(use_enable nls) \
|
||||
$(use_enable ncurses term) \
|
||||
$(use_enable unicode)
|
||||
}
|
@ -1,63 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools flag-o-matic toolchain-funcs
|
||||
|
||||
DESCRIPTION="The GNU Calendar - a replacement for cal"
|
||||
HOMEPAGE="https://www.gnu.org/software/gcal/"
|
||||
SRC_URI="mirror://gnu/gcal/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm ppc x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
IUSE="ncurses nls unicode"
|
||||
|
||||
RDEPEND="nls? ( virtual/libintl )
|
||||
unicode? ( dev-libs/libunistring:= )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
app-arch/xz-utils
|
||||
nls? ( >=sys-devel/gettext-0.17 )
|
||||
"
|
||||
|
||||
DOCS=( BUGS LIMITATIONS NEWS README THANKS TODO )
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-glibc228.patch"
|
||||
"${FILESDIR}/${PN}-4.1-configure-clang16.patch"
|
||||
"${FILESDIR}/${P}-fortify.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Drop once ${PN}-4.1-configure-clang16.patch merged
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CC
|
||||
append-cppflags -D_GNU_SOURCE
|
||||
|
||||
use unicode && append-libs -lunistring
|
||||
|
||||
econf \
|
||||
--disable-rpath \
|
||||
$(use_enable nls) \
|
||||
$(use_enable ncurses term) \
|
||||
$(use_enable unicode)
|
||||
}
|
||||
|
||||
src_test() {
|
||||
default
|
||||
|
||||
# Do basic smoke tests to help catch issues like bug #925560
|
||||
# where trivial 'gcal' invocation crashed w/ _F_S=3.
|
||||
local -x PATH="${S}/src:${S}:${PATH}"
|
||||
local bin
|
||||
for bin in gcal2txt tcal txt2gcal gcal ; do
|
||||
src/${bin} || die
|
||||
done
|
||||
}
|
@ -1,6 +1,8 @@
|
||||
DIST solaar-1.1.13.tar.gz 1779788 BLAKE2B fd138c3c9faa467e356240e8cfc73f420776228f407092cc2f8bca3a9443e4820dad923c8d997d41934fbf7fd728b17a9674c7f9affaf4cd8616c779f6141ff1 SHA512 4557c82bddf88a604e9316806b8d37296acc4b4486a64605199f85949f6b5d5fd5dd94b25742e5b41d01fba4da40dd5ab2e354d536856ecf3310557b4a7d23a0
|
||||
DIST solaar-1.1.8.tar.gz 1550947 BLAKE2B a33879e3c1b161d86c4c8a2c8edcc79eff285cb8937bf1e6621f3595ba5cf420e75fe700902b9f375698085bb929401154fa2bd25ae9663265e38c8406205bf6 SHA512 543c6257b36181813c9ed36747e53a15403da251fdd431c32525cada3ac88611da2c5f2a8212767ba3c7bb0071a3c2024f114805d9a33c761701bf958df29d85
|
||||
DIST solaar-1.1.9.tar.gz 1564119 BLAKE2B 67161bdd2a59ff17cafcdc5399f9f0c072985df85b2d0408e54c8f4e4966c3602a2b62f93b90e56e80fb3c4cbd285de2bbcc87a7709bea06ee4394f42a16f52e SHA512 42ea592aa8c4020be5e2ffd096de0bf6a7e6fdfac7eb2acd069c80084f88979398f779db6507b8b2cc4fd44c8a2ffce89024a42c161f130b4e1bd2c53e4e73a9
|
||||
EBUILD solaar-1.1.13.ebuild 1966 BLAKE2B 192e192ce685cf5906b007c41246a39963ac9f31ba2f1cfa814070d94cf1666542b484fa3e94437890f8d475a7543c293827a7d245cd0d770129ddc04ff97d50 SHA512 35e0ae411da757ae125e27aece35f03ef7ab149c35d7bbb1e3fc78f82832e69f44a298a3adcc1c797cc4c42eed4fcc2fc705631ff93ba1fb94a7425d105f5a00
|
||||
EBUILD solaar-1.1.8-r1.ebuild 1957 BLAKE2B a18583976d1ffc399f3a2f50d153c5aab82c534561c660a66b35d02af74fe000edc6246abdf0439e9152fceb0529d3aae3d298fb965494652eea202ad8509828 SHA512 a411509d13aa3abfdc5c304bd846ed7528a3f8d66e48e4e8621c081984eedf61bcf365b6008c5e1db464e5ab80230c07ed18dcb2c846de182665f0517cc9f536
|
||||
EBUILD solaar-1.1.9.ebuild 1964 BLAKE2B 295f81d993b798cc428c07b72b872d9792abd36a2343cd54bd04029a535df6e0f91ef72f194cec5f8dccf2056c767a1d9e10dee82dba3adf10ae72fa4f0a04b2 SHA512 da4956fce6c53c184354f9715164f7cbb6f268d8e15e456bdc5949dd80d5b0af6b20027fe0cfa569d5778324efcb51ea00129cb6a0584d943753a941e68180d7
|
||||
EBUILD solaar-9999.ebuild 1959 BLAKE2B 30fcfd473d74a3505984700ac5edf403e2f3227544bc4b9909da6831908bd5b5fc0b49cd8a012d1e84a5560470eb7469994d3dfde16fac72517f2f2473b83031 SHA512 73a536e0df5068bb56f4c46b4cb4b250d3dca33024a80f22c239db1e13a05dde9f65d05225ed229b194cc5c02583ba4dd798a96cdcf2a3fe2398417c46d5eab7
|
||||
EBUILD solaar-9999.ebuild 1966 BLAKE2B 192e192ce685cf5906b007c41246a39963ac9f31ba2f1cfa814070d94cf1666542b484fa3e94437890f8d475a7543c293827a7d245cd0d770129ddc04ff97d50 SHA512 35e0ae411da757ae125e27aece35f03ef7ab149c35d7bbb1e3fc78f82832e69f44a298a3adcc1c797cc4c42eed4fcc2fc705631ff93ba1fb94a7425d105f5a00
|
||||
MISC metadata.xml 302 BLAKE2B 55938561021d105894875ec5158bd1a744c91039744ff789bffed4ab483eebe73450a9cd62cb4a97c984213fa2f1e8799f8b0d97bd6202e826e4609434086f5e SHA512 3bff70d27a9934d48f848cf0131e01415e13426ea705ef7721a9b59e29ff7bf32718d015de9e4a4f89f23405a8f372f038d2f0c3485cf9a7939a33ebda9d1681
|
||||
|
@ -0,0 +1,81 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
DISTUTILS_SINGLE_IMPL=1
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit linux-info udev xdg distutils-r1
|
||||
|
||||
DESCRIPTION="Linux Device Manager for Logitech Unifying Receivers and Paired Devices"
|
||||
HOMEPAGE="https://pwr-solaar.github.io/Solaar/"
|
||||
if [[ ${PV} =~ 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/pwr-Solaar/Solaar"
|
||||
else
|
||||
SRC_URI="https://github.com/pwr-Solaar/Solaar/archive/${PV/_rc/rc}.tar.gz -> ${P/_rc/rc}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
S="${WORKDIR}"/Solaar-${PV/_rc/rc}
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="doc appindicator libnotify"
|
||||
|
||||
RDEPEND="
|
||||
acct-group/plugdev
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/evdev[${PYTHON_USEDEP}]
|
||||
dev-python/psutil[${PYTHON_USEDEP}]
|
||||
dev-python/pygobject:3[${PYTHON_USEDEP}]
|
||||
dev-python/python-xlib[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyudev-0.13[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
|
||||
')
|
||||
x11-libs/gtk+:3[introspection]
|
||||
appindicator? ( dev-libs/libayatana-appindicator )
|
||||
libnotify? ( x11-libs/libnotify[introspection] )"
|
||||
# libayatana-appindicator & libnotify are entirely optional and detected at runtime
|
||||
|
||||
CONFIG_CHECK="~HID_LOGITECH_DJ ~HIDRAW"
|
||||
|
||||
python_prepare_all() {
|
||||
# don't autostart (bug #494608)
|
||||
sed -i \
|
||||
-e '/yield autostart_path/d' \
|
||||
setup.py || die
|
||||
|
||||
sed -i -r \
|
||||
-e '/yield.*udev.*rules.d/{s,/etc,/lib,g}' \
|
||||
setup.py || die
|
||||
|
||||
# grant plugdev group rw access
|
||||
sed -i 's/#MODE=/MODE=/' rules.d/42-logitech-unify-permissions.rules || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
distutils-r1_python_install_all
|
||||
|
||||
dodoc docs/devices.md CHANGELOG.md
|
||||
if use doc; then
|
||||
dodoc -r docs/*
|
||||
else
|
||||
newdoc docs/index.md README.md
|
||||
fi
|
||||
udev_dorules "${S}"/rules.d/42-logitech-unify-permissions.rules
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
udev_reload
|
||||
xdg_pkg_postinst
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
udev_reload
|
||||
xdg_pkg_postrm
|
||||
}
|
Binary file not shown.
@ -1,14 +1,8 @@
|
||||
DIST elt-patches-20240116.tar.xz 44400 BLAKE2B 0e664bf02180c2d0a5813f25a7661064f6612b71ab4743041a87579bf4fc2af276b2d653cbf75fe412364c2eb0a38dad744cc1eaa1159837239b0b9bbd122c5c SHA512 b014bebf918bb3debb5f38297caa0e250b426bdabfbc3c3e7ae44c1f5cda0d63ae1c0d82c12710a966a615947a5ad823a6e06c2ca485b987a74065dde16216bb
|
||||
DIST elt-patches-20240213.tar.xz 44840 BLAKE2B 00c7c19dd0cd2aacc72e90d98f6b5bf09cfbcc79597b53d1c8095066354de10d3080404f7798463e87c1eef385b26dcbc590d3e6fe6f709ea04eaa82bbb17359 SHA512 d39ba86d4356491246b30b7c87d4fba341ba1539f696ef297c231fee5566a3fbf09891323d1f04fd97b9504c56dbb6f2ac99fa6051bf77a31aab55695c6da24b
|
||||
DIST elt-patches-20240315.tar.xz 45416 BLAKE2B 4a1e33bba89c43cb91d75641d35837aa482e2e119079321b4e1824ee5bd4b0f5c465c4709082daf987dedf423fef5adb9ba8d8d1b9d6dc814c663dda86ac0ee0 SHA512 7c2034713630f8ad40fed5be34f397749e8e1f63d5933656fe3618e97cf59240aaa64468fcb1a46bac111b96603e538b857513ca80d327c0be865868020457ea
|
||||
DIST elt-patches-20240324.tar.xz 45712 BLAKE2B 29a94ad3132ba10f4fc90cde685732b1cb679d693e1b1a1fbdb7fd99fbfc70aa7df9e6753ef6374cd606195829bd9d6a8b9b19126780ffa8f28542fb59d99fb0 SHA512 3878d5d303b372c873859510d6a0f3911657f4b66af8a91833657a13902474d011e30b4d245e5f82df791a9231f0253bb0ddef42bba66acb4241600265fb7925
|
||||
DIST elt-patches-20240415.tar.xz 46164 BLAKE2B 460a21bb20368c541406d8e0031d379a41d7a41f62a74a2a33c40647261f1dc542693ee9c3148c8f07ecb830c18d6d34500fbe2f05d03902b06967d6f762f131 SHA512 d876049860aad979bdf5e8b9842688cb31f3e1487d4966247ec4bcb6b696c25ef4b2a4abd4b330ecc39cff4f9ef18cf8b401660e59f35468b8dc1a26996a5c06
|
||||
DIST elt-patches-20240512.tar.xz 46176 BLAKE2B 8ca496aae63dd49e7148b7c06e687b3644a58211ec5cf7b82d8ccb7603df6390c7f9ba6f71b4b9b9db7263bf0c7005f9c6098091227c6b34729032f6a6101cd7 SHA512 c33321668b9191d2f8221fb4a1ea365ccce6d0b61bf8bb1b95fc6c2c67ada8b36c44d7423d994678e60e3197bf2721aca9e062e882d2cea05b465ad0d4e8a93c
|
||||
EBUILD elt-patches-20240116.ebuild 1121 BLAKE2B 8cab4f98b5693faa9037022f6394b5ab35aebfc9e68070bc37f02922714a1a1d822ff68ae8beae56c0bdb56f195262def79630e030dc86948ab26b8e86c5a51b SHA512 d601772227bd9131addd7302d563f8a02243999c8f7be99297024e94b51389dc17ace6df5ca29dce20b1a572a06c212fc86bd03cd17a45745fd4b1030ef91e0d
|
||||
EBUILD elt-patches-20240213.ebuild 1121 BLAKE2B 8cab4f98b5693faa9037022f6394b5ab35aebfc9e68070bc37f02922714a1a1d822ff68ae8beae56c0bdb56f195262def79630e030dc86948ab26b8e86c5a51b SHA512 d601772227bd9131addd7302d563f8a02243999c8f7be99297024e94b51389dc17ace6df5ca29dce20b1a572a06c212fc86bd03cd17a45745fd4b1030ef91e0d
|
||||
EBUILD elt-patches-20240315.ebuild 1121 BLAKE2B 8cab4f98b5693faa9037022f6394b5ab35aebfc9e68070bc37f02922714a1a1d822ff68ae8beae56c0bdb56f195262def79630e030dc86948ab26b8e86c5a51b SHA512 d601772227bd9131addd7302d563f8a02243999c8f7be99297024e94b51389dc17ace6df5ca29dce20b1a572a06c212fc86bd03cd17a45745fd4b1030ef91e0d
|
||||
EBUILD elt-patches-20240324.ebuild 1122 BLAKE2B 9ec31ef0dabc35401c1da153edbd7c355d4969bd20c405decd68c405c0c5371b4a89b17c344aaad2933b13ef8c309e1d5d64feb6716a3782f19185045a3457c4 SHA512 34cbbfb266337862925aa6a85946f2437dee8156484479209721047d19452585365bf37e37ea8e8f395da2f41c8fabd921f305b3c7e8bed0e65ddcc4579f85c4
|
||||
EBUILD elt-patches-20240415.ebuild 1129 BLAKE2B ce0561c78f6c37f5c2950d1298705a5b77aea386af5bfe87df42ed878c44cc7f453c5fe745f224a1a4cf2329f8db5180f0eb0045332962c43e376e233a12e944 SHA512 712d16b3402d00e831efa0274fc4053bc188423fde9c1ddf59f707554fc9170649e58e443b784737337f66f73a687b32a66ddbdc88338d632c2580b76a3c6e8f
|
||||
EBUILD elt-patches-20240512.ebuild 1129 BLAKE2B ce0561c78f6c37f5c2950d1298705a5b77aea386af5bfe87df42ed878c44cc7f453c5fe745f224a1a4cf2329f8db5180f0eb0045332962c43e376e233a12e944 SHA512 712d16b3402d00e831efa0274fc4053bc188423fde9c1ddf59f707554fc9170649e58e443b784737337f66f73a687b32a66ddbdc88338d632c2580b76a3c6e8f
|
||||
EBUILD elt-patches-99999999.ebuild 1129 BLAKE2B ce0561c78f6c37f5c2950d1298705a5b77aea386af5bfe87df42ed878c44cc7f453c5fe745f224a1a4cf2329f8db5180f0eb0045332962c43e376e233a12e944 SHA512 712d16b3402d00e831efa0274fc4053bc188423fde9c1ddf59f707554fc9170649e58e443b784737337f66f73a687b32a66ddbdc88338d632c2580b76a3c6e8f
|
||||
MISC metadata.xml 363 BLAKE2B 731813601fd3cc8df41566cb2b4c41314250296cfd08921c4167f633aa5107651f41ecce090f8b179b549a0b86b0cad5d0e7b14be00b2f9bf38591f249aa3c79 SHA512 77290264148f7fd68a99059beb41a937f4983879a205054cef4845f693138ba611d95ebc4ab67cbf678481b7c9a14ca19e170cc04d696bf82b83f93dd3429518
|
||||
|
@ -1,39 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Collection of patches for libtool.eclass"
|
||||
HOMEPAGE="https://gitweb.gentoo.org/proj/elt-patches.git/"
|
||||
|
||||
if [[ ${PV} == *9999* ]] ; then
|
||||
EGIT_REPO_URI="
|
||||
https://anongit.gentoo.org/git/proj/elt-patches.git
|
||||
https://github.com/gentoo/elt-patches
|
||||
"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="
|
||||
https://dev.gentoo.org/~grobian/distfiles/${P}.tar.xz
|
||||
https://dev.gentoo.org/~vapier/dist/${P}.tar.xz
|
||||
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz
|
||||
"
|
||||
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~arm64-linux ~ppc64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
# The 'check' target currently wants network access to fetch libtool tarballs.
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="sys-apps/gentoo-functions"
|
||||
BDEPEND="app-arch/xz-utils"
|
||||
|
||||
src_compile() {
|
||||
emake rootprefix="${EPREFIX}" libdirname="$(get_libdir)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" rootprefix="${EPREFIX}" install
|
||||
}
|
@ -1,39 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Collection of patches for libtool.eclass"
|
||||
HOMEPAGE="https://gitweb.gentoo.org/proj/elt-patches.git/"
|
||||
|
||||
if [[ ${PV} == *9999* ]] ; then
|
||||
EGIT_REPO_URI="
|
||||
https://anongit.gentoo.org/git/proj/elt-patches.git
|
||||
https://github.com/gentoo/elt-patches
|
||||
"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="
|
||||
https://dev.gentoo.org/~grobian/distfiles/${P}.tar.xz
|
||||
https://dev.gentoo.org/~vapier/dist/${P}.tar.xz
|
||||
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz
|
||||
"
|
||||
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~arm64-linux ~ppc64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
# The 'check' target currently wants network access to fetch libtool tarballs.
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="sys-apps/gentoo-functions"
|
||||
BDEPEND="app-arch/xz-utils"
|
||||
|
||||
src_compile() {
|
||||
emake rootprefix="${EPREFIX}" libdirname="$(get_libdir)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" rootprefix="${EPREFIX}" install
|
||||
}
|
@ -1,39 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Collection of patches for libtool.eclass"
|
||||
HOMEPAGE="https://gitweb.gentoo.org/proj/elt-patches.git/"
|
||||
|
||||
if [[ ${PV} == *9999* ]] ; then
|
||||
EGIT_REPO_URI="
|
||||
https://anongit.gentoo.org/git/proj/elt-patches.git
|
||||
https://github.com/gentoo/elt-patches
|
||||
"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="
|
||||
https://dev.gentoo.org/~grobian/distfiles/${P}.tar.xz
|
||||
https://dev.gentoo.org/~vapier/dist/${P}.tar.xz
|
||||
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz
|
||||
"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~arm64-linux ~ppc64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
# The 'check' target currently wants network access to fetch libtool tarballs.
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="sys-apps/gentoo-functions"
|
||||
BDEPEND="app-arch/xz-utils"
|
||||
|
||||
src_compile() {
|
||||
emake rootprefix="${EPREFIX}" libdirname="$(get_libdir)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" rootprefix="${EPREFIX}" install
|
||||
}
|
Binary file not shown.
@ -1,328 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc
|
||||
inherit flag-o-matic toolchain-funcs prefix verify-sig
|
||||
|
||||
# Uncomment if we have a patchset
|
||||
GENTOO_PATCH_DEV="sam"
|
||||
GENTOO_PATCH_VER="${PV}"
|
||||
|
||||
# Official patchlevel
|
||||
# See ftp://ftp.cwru.edu/pub/bash/bash-5.1-patches/
|
||||
PLEVEL="${PV##*_p}"
|
||||
MY_PV="${PV/_p*}"
|
||||
MY_PV="${MY_PV/_/-}"
|
||||
MY_P="${PN}-${MY_PV}"
|
||||
MY_PATCHES=()
|
||||
|
||||
is_release() {
|
||||
case ${PV} in
|
||||
*_alpha*|*_beta*|*_rc*)
|
||||
return 1
|
||||
;;
|
||||
*)
|
||||
return 0
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
[[ ${PV} != *_p* ]] && PLEVEL=0
|
||||
|
||||
# The version of readline this bash normally ships with.
|
||||
READLINE_VER="8.1"
|
||||
|
||||
DESCRIPTION="The standard GNU Bourne again shell"
|
||||
HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html"
|
||||
|
||||
if is_release ; then
|
||||
SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz"
|
||||
SRC_URI+=" verify-sig? ( mirror://gnu/bash/${MY_P}.tar.gz.sig )"
|
||||
|
||||
if [[ ${PLEVEL} -gt 0 ]] ; then
|
||||
# bash-5.1 -> bash51
|
||||
my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2))
|
||||
|
||||
patch_url=
|
||||
my_patch_index=
|
||||
|
||||
upstream_url_base="mirror://gnu/bash"
|
||||
mirror_url_base="ftp://ftp.cwru.edu/pub/bash"
|
||||
|
||||
for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do
|
||||
printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index}
|
||||
patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}"
|
||||
|
||||
SRC_URI+=" ${patch_url}"
|
||||
SRC_URI+=" verify-sig? ( ${patch_url}.sig )"
|
||||
|
||||
# Add in the mirror URL too.
|
||||
SRC_URI+=" ${patch_url/${upstream_url_base}/${mirror_url_base}}"
|
||||
SRC_URI+=" verify-sig? ( ${patch_url/${upstream_url_base}/${mirror_url_base}}.sig )"
|
||||
|
||||
MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} )
|
||||
done
|
||||
|
||||
unset my_p patch_url my_patch_index upstream_url_base mirror_url_base
|
||||
fi
|
||||
else
|
||||
SRC_URI="ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
|
||||
SRC_URI+=" verify-sig? ( ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )"
|
||||
fi
|
||||
|
||||
if [[ -n ${GENTOO_PATCH_VER} ]] ; then
|
||||
SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
[[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline"
|
||||
|
||||
DEPEND="
|
||||
>=sys-libs/ncurses-5.2-r2:0=
|
||||
nls? ( virtual/libintl )
|
||||
readline? ( >=sys-libs/readline-${READLINE_VER}:0= )
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
"
|
||||
# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011)
|
||||
BDEPEND="sys-devel/bison
|
||||
verify-sig? ( sec-keys/openpgp-keys-chetramey )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
PATCHES=(
|
||||
# Patches from Chet sent to bashbug ml
|
||||
"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}-patches/${PN}-5.0-syslog-history-extern.patch
|
||||
|
||||
"${FILESDIR}"/${PN}-5.1_p16-configure-clang16.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# bug #7332
|
||||
if is-flag -malign-double ; then
|
||||
eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
|
||||
eerror "as it breaks LFS (struct stat64) on x86."
|
||||
die "remove -malign-double from your CFLAGS mr ricer"
|
||||
fi
|
||||
|
||||
if use bashlogger ; then
|
||||
ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
|
||||
ewarn "This will log ALL output you enter into the shell, you have been warned."
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
if use verify-sig ; then
|
||||
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.gz{,.sig}
|
||||
|
||||
local patch
|
||||
for patch in "${MY_PATCHES[@]}" ; do
|
||||
verify-sig_verify_detached ${patch}{,.sig}
|
||||
done
|
||||
fi
|
||||
|
||||
unpack ${MY_P}.tar.gz
|
||||
|
||||
if [[ -n ${GENTOO_PATCH_VER} ]] ; then
|
||||
unpack ${PN}-${GENTOO_PATCH_VER}-patches.tar.xz
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Include official patches
|
||||
[[ ${PLEVEL} -gt 0 ]] && eapply -p0 "${MY_PATCHES[@]}"
|
||||
|
||||
# Clean out local libs so we know we use system ones w/releases.
|
||||
if is_release ; then
|
||||
rm -rf lib/{readline,termcap}/* || die
|
||||
touch lib/{readline,termcap}/Makefile.in || die # for config.status
|
||||
sed -ri -e 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in || die
|
||||
fi
|
||||
|
||||
# Prefixify hardcoded path names. No-op for non-prefix.
|
||||
hprefixify pathnames.h.in
|
||||
|
||||
# Avoid regenerating docs after patches, bug #407985
|
||||
sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
|
||||
touch -r . doc/* || die
|
||||
|
||||
eapply -p0 "${PATCHES[@]}"
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Upstream only test with Bison and require GNUisms like YYEOF and
|
||||
# YYERRCODE. The former at least may be in POSIX soon:
|
||||
# https://www.austingroupbugs.net/view.php?id=1269.
|
||||
# configure warns on use of non-Bison but doesn't abort. The result
|
||||
# may misbehave at runtime.
|
||||
unset YACC
|
||||
|
||||
local myconf=(
|
||||
--disable-profiling
|
||||
|
||||
# Force linking with system curses ... the bundled termcap lib
|
||||
# sucks bad compared to ncurses. For the most part, ncurses
|
||||
# is here because readline needs it. But bash itself calls
|
||||
# ncurses in one or two small places :(.
|
||||
--with-curses
|
||||
|
||||
$(use_enable mem-scramble)
|
||||
$(use_enable net net-redirections)
|
||||
$(use_enable readline)
|
||||
$(use_enable readline bang-history)
|
||||
$(use_enable readline history)
|
||||
$(use_with afs)
|
||||
$(use_with mem-scramble bash-malloc)
|
||||
)
|
||||
|
||||
# For descriptions of these, see config-top.h
|
||||
# bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426
|
||||
append-cppflags \
|
||||
-DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \
|
||||
-DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \
|
||||
-DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \
|
||||
-DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \
|
||||
-DNON_INTERACTIVE_LOGIN_SHELLS \
|
||||
-DSSH_SOURCE_BASHRC \
|
||||
$(use bashlogger && echo -DSYSLOG_HISTORY)
|
||||
|
||||
# Don't even think about building this statically without
|
||||
# reading bug #7714 first. If you still build it statically,
|
||||
# don't come crying to us with bugs ;).
|
||||
#use static && export LDFLAGS="${LDFLAGS} -static"
|
||||
use nls || myconf+=( --disable-nls )
|
||||
|
||||
# Historically, we always used the builtin readline, but since
|
||||
# our handling of SONAME upgrades has gotten much more stable
|
||||
# in the PM (and the readline ebuild itself preserves the old
|
||||
# libs during upgrades), linking against the system copy should
|
||||
# be safe.
|
||||
# Exact cached version here doesn't really matter as long as it
|
||||
# is at least what's in the DEPEND up above.
|
||||
export ac_cv_rl_version=${READLINE_VER%%_*}
|
||||
|
||||
if is_release ; then
|
||||
# Use system readline only with released versions.
|
||||
myconf+=( --with-installed-readline=. )
|
||||
fi
|
||||
|
||||
if use plugins ; then
|
||||
append-ldflags -Wl,-rpath,"${EPREFIX}"/usr/$(get_libdir)/bash
|
||||
else
|
||||
# Disable the plugins logic by hand since bash doesn't
|
||||
# provide a way of doing it.
|
||||
export ac_cv_func_dl{close,open,sym}=no \
|
||||
ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
|
||||
|
||||
sed -i \
|
||||
-e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
|
||||
configure || die
|
||||
fi
|
||||
|
||||
# bug #444070
|
||||
tc-export AR
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
|
||||
if use plugins ; then
|
||||
emake -C examples/loadables all others
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local d f
|
||||
|
||||
default
|
||||
|
||||
dodir /bin
|
||||
mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
|
||||
dosym bash /bin/rbash
|
||||
|
||||
insinto /etc/bash
|
||||
doins "${FILESDIR}"/bash_logout
|
||||
doins "$(prefixify_ro "${FILESDIR}"/bashrc)"
|
||||
|
||||
keepdir /etc/bash/bashrc.d
|
||||
|
||||
insinto /etc/skel
|
||||
for f in bash{_logout,_profile,rc} ; do
|
||||
newins "${FILESDIR}"/dot-${f} .${f}
|
||||
done
|
||||
|
||||
local sed_args=(
|
||||
-e 's:#GNU#@::'
|
||||
-e '/#@/d'
|
||||
)
|
||||
|
||||
if ! use readline ; then
|
||||
# bug #432338
|
||||
sed_args+=(
|
||||
-e '/^shopt -s histappend/s:^:#:'
|
||||
-e 's:use_color=true:use_color=false:'
|
||||
)
|
||||
fi
|
||||
|
||||
sed -i \
|
||||
"${sed_args[@]}" \
|
||||
"${ED}"/etc/skel/.bashrc \
|
||||
"${ED}"/etc/bash/bashrc || die
|
||||
|
||||
if use plugins ; then
|
||||
exeinto /usr/$(get_libdir)/bash
|
||||
doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
|
||||
|
||||
insinto /usr/include/bash-plugins
|
||||
doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
|
||||
fi
|
||||
|
||||
if use examples ; then
|
||||
for d in examples/{functions,misc,scripts,startup-files} ; do
|
||||
exeinto /usr/share/doc/${PF}/${d}
|
||||
docinto ${d}
|
||||
for f in ${d}/* ; do
|
||||
if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
|
||||
doexe ${f}
|
||||
else
|
||||
dodoc ${f}
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
# Install bash_builtins.1 and rbash.1
|
||||
emake -C doc DESTDIR="${D}" install_builtins
|
||||
sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die
|
||||
doman "${T}"/rbash.1
|
||||
|
||||
newdoc CWRU/changelog ChangeLog
|
||||
dosym bash.info /usr/share/info/bashref.info
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
|
||||
mkdir -p "${EROOT}"/etc/bash
|
||||
mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# If /bin/sh does not exist, provide it
|
||||
if [[ ! -e ${EROOT}/bin/sh ]] ; then
|
||||
ln -sf bash "${EROOT}"/bin/sh
|
||||
fi
|
||||
}
|
@ -1,375 +0,0 @@
|
||||
# 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/chetramey.asc
|
||||
inherit flag-o-matic toolchain-funcs prefix verify-sig
|
||||
|
||||
# Uncomment if we have a patchset
|
||||
#GENTOO_PATCH_DEV="sam"
|
||||
#GENTOO_PATCH_VER="${PV}"
|
||||
|
||||
# Official patchlevel
|
||||
# See ftp://ftp.cwru.edu/pub/bash/bash-5.1-patches/
|
||||
PLEVEL="${PV##*_p}"
|
||||
MY_PV="${PV/_p*}"
|
||||
MY_PV="${MY_PV/_/-}"
|
||||
MY_P="${PN}-${MY_PV}"
|
||||
MY_PATCHES=()
|
||||
|
||||
is_release() {
|
||||
case ${PV} in
|
||||
9999|*_alpha*|*_beta*|*_rc*)
|
||||
return 1
|
||||
;;
|
||||
*)
|
||||
return 0
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
[[ ${PV} != *_p* ]] && PLEVEL=0
|
||||
|
||||
# The version of readline this bash normally ships with.
|
||||
# Note: right now, we don't use the system copy of readline for bash for non-releases.
|
||||
READLINE_VER="8.2_p1"
|
||||
|
||||
DESCRIPTION="The standard GNU Bourne again shell"
|
||||
HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git"
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git"
|
||||
EGIT_BRANCH=devel
|
||||
inherit git-r3
|
||||
elif is_release ; then
|
||||
SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz"
|
||||
SRC_URI+=" verify-sig? ( mirror://gnu/bash/${MY_P}.tar.gz.sig )"
|
||||
|
||||
if [[ ${PLEVEL} -gt 0 ]] ; then
|
||||
# bash-5.1 -> bash51
|
||||
my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2))
|
||||
|
||||
patch_url=
|
||||
my_patch_index=
|
||||
|
||||
upstream_url_base="mirror://gnu/bash"
|
||||
mirror_url_base="ftp://ftp.cwru.edu/pub/bash"
|
||||
|
||||
for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do
|
||||
printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index}
|
||||
patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}"
|
||||
|
||||
SRC_URI+=" ${patch_url}"
|
||||
SRC_URI+=" verify-sig? ( ${patch_url}.sig )"
|
||||
|
||||
# Add in the mirror URL too.
|
||||
SRC_URI+=" ${patch_url/${upstream_url_base}/${mirror_url_base}}"
|
||||
SRC_URI+=" verify-sig? ( ${patch_url/${upstream_url_base}/${mirror_url_base}}.sig )"
|
||||
|
||||
MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} )
|
||||
done
|
||||
|
||||
unset my_p patch_url my_patch_index upstream_url_base mirror_url_base
|
||||
fi
|
||||
else
|
||||
SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
|
||||
SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )"
|
||||
fi
|
||||
|
||||
if [[ -n ${GENTOO_PATCH_VER} ]] ; then
|
||||
SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
|
||||
fi
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
if is_release ; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline"
|
||||
|
||||
DEPEND="
|
||||
>=sys-libs/ncurses-5.2-r2:=
|
||||
nls? ( virtual/libintl )
|
||||
"
|
||||
if is_release ; then
|
||||
DEPEND+=" readline? ( >=sys-libs/readline-${READLINE_VER}:= )"
|
||||
fi
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
"
|
||||
# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011)
|
||||
BDEPEND="
|
||||
pgo? ( dev-util/gperf )
|
||||
verify-sig? ( sec-keys/openpgp-keys-chetramey )
|
||||
"
|
||||
|
||||
# EAPI 8 tries to append it but it doesn't exist here
|
||||
QA_CONFIGURE_OPTIONS="--disable-static"
|
||||
|
||||
PATCHES=(
|
||||
#"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/
|
||||
|
||||
# Patches from Chet sent to bash-bug ml
|
||||
"${FILESDIR}"/${PN}-5.0-syslog-history-extern.patch
|
||||
"${FILESDIR}"/${PN}-5.2_p15-random-ub.patch
|
||||
"${FILESDIR}"/${PN}-5.2_p15-configure-clang16.patch
|
||||
"${FILESDIR}"/${PN}-5.2_p21-wpointer-to-int.patch
|
||||
"${FILESDIR}"/${PN}-5.2_p21-configure-strtold.patch
|
||||
"${FILESDIR}"/${PN}-5.2_p26-memory-leaks.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# bug #7332
|
||||
if is-flag -malign-double ; then
|
||||
eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
|
||||
eerror "as it breaks LFS (struct stat64) on x86."
|
||||
die "remove -malign-double from your CFLAGS mr ricer"
|
||||
fi
|
||||
|
||||
if use bashlogger ; then
|
||||
ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
|
||||
ewarn "This will log ALL output you enter into the shell, you have been warned."
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
if use verify-sig ; then
|
||||
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.gz{,.sig}
|
||||
|
||||
local patch
|
||||
for patch in "${MY_PATCHES[@]}" ; do
|
||||
verify-sig_verify_detached ${patch}{,.sig}
|
||||
done
|
||||
fi
|
||||
|
||||
unpack ${MY_P}.tar.gz
|
||||
|
||||
if [[ -n ${GENTOO_PATCH_VER} ]] ; then
|
||||
unpack ${PN}-${GENTOO_PATCH_VER}-patches.tar.xz
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Include official patches
|
||||
[[ ${PLEVEL} -gt 0 ]] && eapply -p0 "${MY_PATCHES[@]}"
|
||||
|
||||
# Clean out local libs so we know we use system ones w/releases.
|
||||
if is_release ; then
|
||||
rm -rf lib/{readline,termcap}/* || die
|
||||
touch lib/{readline,termcap}/Makefile.in || die # for config.status
|
||||
sed -ri -e 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in || die
|
||||
fi
|
||||
|
||||
# Prefixify hardcoded path names. No-op for non-prefix.
|
||||
hprefixify pathnames.h.in
|
||||
|
||||
# Avoid regenerating docs after patches, bug #407985
|
||||
sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
|
||||
touch -r . doc/* || die
|
||||
|
||||
# Sometimes hangs (more noticeable w/ pgo), bug #907403.
|
||||
rm tests/run-jobs || die
|
||||
|
||||
eapply -p0 "${PATCHES[@]}"
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Upstream only test with Bison and require GNUisms like YYEOF and
|
||||
# YYERRCODE. The former at least may be in POSIX soon:
|
||||
# https://www.austingroupbugs.net/view.php?id=1269.
|
||||
# configure warns on use of non-Bison but doesn't abort. The result
|
||||
# may misbehave at runtime.
|
||||
unset YACC
|
||||
|
||||
local myconf=(
|
||||
--disable-profiling
|
||||
|
||||
# Force linking with system curses ... the bundled termcap lib
|
||||
# sucks bad compared to ncurses. For the most part, ncurses
|
||||
# is here because readline needs it. But bash itself calls
|
||||
# ncurses in one or two small places :(.
|
||||
--with-curses
|
||||
|
||||
$(use_enable mem-scramble)
|
||||
$(use_enable net net-redirections)
|
||||
$(use_enable readline)
|
||||
$(use_enable readline bang-history)
|
||||
$(use_enable readline history)
|
||||
$(use_with afs)
|
||||
$(use_with mem-scramble bash-malloc)
|
||||
)
|
||||
|
||||
# For descriptions of these, see config-top.h
|
||||
# bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426
|
||||
append-cppflags \
|
||||
-DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \
|
||||
-DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \
|
||||
-DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \
|
||||
-DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \
|
||||
-DNON_INTERACTIVE_LOGIN_SHELLS \
|
||||
-DSSH_SOURCE_BASHRC \
|
||||
$(use bashlogger && echo -DSYSLOG_HISTORY)
|
||||
|
||||
# Don't even think about building this statically without
|
||||
# reading bug #7714 first. If you still build it statically,
|
||||
# don't come crying to us with bugs ;).
|
||||
#use static && export LDFLAGS="${LDFLAGS} -static"
|
||||
use nls || myconf+=( --disable-nls )
|
||||
|
||||
if is_release ; then
|
||||
# Historically, we always used the builtin readline, but since
|
||||
# our handling of SONAME upgrades has gotten much more stable
|
||||
# in the PM (and the readline ebuild itself preserves the old
|
||||
# libs during upgrades), linking against the system copy should
|
||||
# be safe.
|
||||
# Exact cached version here doesn't really matter as long as it
|
||||
# is at least what's in the DEPEND up above.
|
||||
export ac_cv_rl_version=${READLINE_VER%%_*}
|
||||
|
||||
# Use system readline only with released versions.
|
||||
myconf+=( --with-installed-readline=. )
|
||||
fi
|
||||
|
||||
if use plugins ; then
|
||||
append-ldflags -Wl,-rpath,"${EPREFIX}"/usr/$(get_libdir)/bash
|
||||
else
|
||||
# Disable the plugins logic by hand since bash doesn't
|
||||
# provide a way of doing it.
|
||||
export ac_cv_func_dl{close,open,sym}=no \
|
||||
ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
|
||||
|
||||
sed -i \
|
||||
-e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
|
||||
configure || die
|
||||
fi
|
||||
|
||||
# bug #444070
|
||||
tc-export AR
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# -fprofile-partial-training because upstream note the test suite isn't super comprehensive
|
||||
# See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo
|
||||
local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/pgo -fprofile-generate=${T}/pgo $(test-flags-CC -fprofile-partial-training)")
|
||||
local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/pgo -fprofile-dir=${T}/pgo $(test-flags-CC -fprofile-partial-training)")
|
||||
|
||||
emake CFLAGS="${CFLAGS} ${pgo_generate_flags}"
|
||||
use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_generate_flags}" all others
|
||||
|
||||
# Build Bash and run its tests to generate profiles.
|
||||
if use pgo ; then
|
||||
# Used in test suite.
|
||||
unset A
|
||||
|
||||
emake CFLAGS="${CFLAGS} ${pgo_generate_flags}" -k check
|
||||
|
||||
if tc-is-clang; then
|
||||
llvm-profdata merge "${T}"/pgo --output="${T}"/pgo/default.profdata || die
|
||||
fi
|
||||
|
||||
# Rebuild Bash using the profiling data we just generated.
|
||||
emake clean
|
||||
emake CFLAGS="${CFLAGS} ${pgo_use_flags}"
|
||||
use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_use_flags}" all others
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Used in test suite.
|
||||
unset A
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local d f
|
||||
|
||||
default
|
||||
|
||||
dodir /bin
|
||||
mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
|
||||
dosym bash /bin/rbash
|
||||
|
||||
insinto /etc/bash
|
||||
doins "${FILESDIR}"/bash_logout
|
||||
doins "$(prefixify_ro "${FILESDIR}"/bashrc)"
|
||||
|
||||
keepdir /etc/bash/bashrc.d
|
||||
|
||||
insinto /etc/skel
|
||||
for f in bash{_logout,_profile,rc} ; do
|
||||
newins "${FILESDIR}"/dot-${f} .${f}
|
||||
done
|
||||
|
||||
local sed_args=(
|
||||
-e 's:#GNU#@::'
|
||||
-e '/#@/d'
|
||||
)
|
||||
|
||||
if ! use readline ; then
|
||||
# bug #432338
|
||||
sed_args+=(
|
||||
-e '/^shopt -s histappend/s:^:#:'
|
||||
-e 's:use_color=true:use_color=false:'
|
||||
)
|
||||
fi
|
||||
|
||||
sed -i \
|
||||
"${sed_args[@]}" \
|
||||
"${ED}"/etc/skel/.bashrc \
|
||||
"${ED}"/etc/bash/bashrc || die
|
||||
|
||||
if use plugins ; then
|
||||
exeinto /usr/$(get_libdir)/bash
|
||||
doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
|
||||
|
||||
insinto /usr/include/bash-plugins
|
||||
doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
|
||||
fi
|
||||
|
||||
if use examples ; then
|
||||
for d in examples/{functions,misc,scripts,startup-files} ; do
|
||||
exeinto /usr/share/doc/${PF}/${d}
|
||||
docinto ${d}
|
||||
for f in ${d}/* ; do
|
||||
if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
|
||||
doexe ${f}
|
||||
else
|
||||
dodoc ${f}
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
# Install bash_builtins.1 and rbash.1
|
||||
emake -C doc DESTDIR="${D}" install_builtins
|
||||
sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die
|
||||
doman "${T}"/rbash.1
|
||||
|
||||
newdoc CWRU/changelog ChangeLog
|
||||
dosym bash.info /usr/share/info/bashref.info
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
|
||||
mkdir -p "${EROOT}"/etc/bash
|
||||
mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# If /bin/sh does not exist, provide it
|
||||
if [[ ! -e ${EROOT}/bin/sh ]] ; then
|
||||
ln -sf bash "${EROOT}"/bin/sh
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,5 +1,4 @@
|
||||
AUX cedilla-gentoo-r1.patch 645 BLAKE2B cedc4626df03c6706c5fee463cd2b662f1b5e297050cb3e67e585609319daa013d499f37fd6cff1ce2a10fcb21626e6b5178dc5545a02eef0778c404cd00f9fb SHA512 4a9d4c4f28509e2b527568a28a69dbcce0c4e7a8d6ae9a967dfb33ff639f12a5dae16a885b0f51686d3d444c9f651cf904bb5c93326308fc37e13d4ec8bb4162
|
||||
DIST cedilla-0.7.tar.gz 114899 BLAKE2B 100c22be30ffed585a1eb44c96109dadab9cbf90c5c3432efd4ed8daa135fa0d9fb82374eda9f9f13126cc5d453ecb5933d8733a58e374ab3192ea7d5bd6d273 SHA512 a137bceee2c70e911922b17e823093dc37b19cce8dece99596003ae7b4bc8c02afbae164d7dfa4e4873b4f549f7d948faf1da9dc1d3ef89cde6d1f36ba91be77
|
||||
EBUILD cedilla-0.7-r1.ebuild 682 BLAKE2B e3df720e168c94ce23db494074e35ec6470865d1eeca43f64635e4c5b51fca1468b92a417af270684a1a8392437cd228833550da0423fcc5bba22cdea3ee5c19 SHA512 e106e954dfb4826ce1e5cfb4c2701c39ff68fbdb5fc096f11e03539f5c8b3af8a18c44a900b483ffa67a0a9dc4ab43b1a82b9e04582185d1011a5cadabab7ca9
|
||||
EBUILD cedilla-0.7.ebuild 649 BLAKE2B 6491e1c55d4f35f6dd6215491660cd55d0ef22c5033eda5297ce64df10292674d1b318a9a706247f33a73050451d6f214e523b896da480d0adaa94b8ca68b55e SHA512 a166c90c1c9d95b8b2617e79328b19e39a7786833c089cb84b98ca4f7b220f2a6307ab41df9c551336273c5382567693f1fe8da3eae0da40a40e727855af7be1
|
||||
EBUILD cedilla-0.7-r1.ebuild 681 BLAKE2B 327d552dcd8a3a5bbecb38d24313856c37090037d9d3a9d0c5b6f3081eff05bd740db634118ecc0e148eea92fd0d18e8cc1a8e4fdbe80b3274b7ef2492042023 SHA512 c88f87ba2b15f92ff0a3609b9fba4ce4ad1e7fbbc7cc9054e186775a26f1c5a2060dd6df1ff9d50156a3e8c6a22b4e6f2b148b0a7fccdedd6ea6a3d640b78f0e
|
||||
MISC metadata.xml 331 BLAKE2B 61024899818905d441cb21120d0ce1cce81899ee91ee4a54dd1a37b7b6c2674d15efca6c6df3a87702c8711c9aee1ae43779aa99d3e8dc1884ed3b39702a279b SHA512 8f75755082b4e99038358a027980e650fce53088dff3b3908a811909aa4b6abe96560d15699fba1c6691ac8bab752a8e849cdff9f7febfeb2cd1e8978a363500
|
||||
|
@ -1,30 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
DESCRIPTION="UTF-8 to postscript converter"
|
||||
HOMEPAGE="http://www.pps.jussieu.fr/~jch/software/cedilla/"
|
||||
SRC_URI="http://www.pps.jussieu.fr/~jch/software/files/${P}.tar.gz"
|
||||
|
||||
KEYWORDS="amd64 x86"
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2"
|
||||
|
||||
DEPEND="dev-lisp/clisp"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/cedilla-gentoo-r1.patch )
|
||||
|
||||
src_compile() {
|
||||
./compile-cedilla || die "Compile failed."
|
||||
}
|
||||
|
||||
src_install() {
|
||||
sed "s#${ED%/}##g" -i cedilla || die "sed failed"
|
||||
dodir /usr/share/man/man1/
|
||||
|
||||
./install-cedilla || die "Install failed."
|
||||
|
||||
einstalldocs
|
||||
}
|
@ -0,0 +1,196 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools flag-o-matic toolchain-funcs
|
||||
|
||||
MY_PN=${PN/-gpl}
|
||||
MY_P="${MY_PN}-${PV/_}"
|
||||
|
||||
# Use https://gitweb.gentoo.org/proj/codec/ghostscript-gpl-patches.git/ for patches
|
||||
# See 'index' branch for README
|
||||
MY_PATCHSET="ghostscript-gpl-10.0-patches.tar.xz"
|
||||
|
||||
DESCRIPTION="Interpreter for the PostScript language and PDF"
|
||||
HOMEPAGE="https://ghostscript.com/ https://git.ghostscript.com/?p=ghostpdl.git;a=summary"
|
||||
SRC_URI="https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/${PV}/${MY_P}.tar.xz"
|
||||
if [[ -n "${MY_PATCHSET}" ]] ; then
|
||||
SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCHSET}"
|
||||
fi
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="AGPL-3 CPL-1.0"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="cups dbus gtk l10n_de static-libs unicode X"
|
||||
|
||||
LANGS="ja ko zh-CN zh-TW"
|
||||
for X in ${LANGS} ; do
|
||||
IUSE="${IUSE} l10n_${X}"
|
||||
done
|
||||
|
||||
DEPEND="
|
||||
app-text/libpaper:=
|
||||
media-libs/fontconfig
|
||||
>=media-libs/freetype-2.4.9:2=
|
||||
>=media-libs/jbig2dec-0.19:=
|
||||
>=media-libs/lcms-2.6:2
|
||||
>=media-libs/libpng-1.6.2:=
|
||||
media-libs/libjpeg-turbo:=
|
||||
>=media-libs/openjpeg-2.1.0:2=
|
||||
>=media-libs/tiff-4.0.1:=
|
||||
>=sys-libs/zlib-1.2.7
|
||||
cups? ( >=net-print/cups-1.3.8 )
|
||||
dbus? ( sys-apps/dbus )
|
||||
gtk? ( x11-libs/gtk+:3 )
|
||||
unicode? ( net-dns/libidn:= )
|
||||
X? ( x11-libs/libXt x11-libs/libXext )
|
||||
"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
# bug #844115 for newer poppler-data dep
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
>=app-text/poppler-data-0.4.11-r2
|
||||
>=media-fonts/urw-fonts-2.4.9
|
||||
l10n_ja? ( media-fonts/kochi-substitute )
|
||||
l10n_ko? ( media-fonts/baekmuk-fonts )
|
||||
l10n_zh-CN? ( media-fonts/arphicfonts )
|
||||
l10n_zh-TW? ( media-fonts/arphicfonts )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-10.03.0-c99.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if [[ -n ${MY_PATCHSET} ]] ; then
|
||||
# apply various patches, many borrowed from Fedora
|
||||
# https://src.fedoraproject.org/rpms/ghostscript
|
||||
# and Debian
|
||||
# https://salsa.debian.org/printing-team/ghostscript/-/tree/debian/latest/debian/patches
|
||||
eapply "${WORKDIR}"/${MY_PATCHSET%%.tar*}
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
# Remove internal copies of various libraries
|
||||
rm -r cups/libs || die
|
||||
rm -r freetype || die
|
||||
rm -r jbig2dec || die
|
||||
rm -r jpeg || die
|
||||
rm -r lcms2mt || die
|
||||
rm -r libpng || die
|
||||
rm -r tiff || die
|
||||
rm -r zlib || die
|
||||
rm -r openjpeg || die
|
||||
# Remove internal CMaps (CMaps from poppler-data are used instead)
|
||||
rm -r Resource/CMap || die
|
||||
|
||||
if ! use gtk ; then
|
||||
sed -e "s:\$(GSSOX)::" \
|
||||
-e "s:.*\$(GSSOX_XENAME)$::" \
|
||||
-i base/unix-dll.mak || die "sed failed"
|
||||
fi
|
||||
|
||||
# Force the include dirs to a neutral location.
|
||||
sed -e "/^ZLIBDIR=/s:=.*:=${T}:" \
|
||||
-i configure.ac || die
|
||||
# Some files depend on zlib.h directly. Redirect them. #573248
|
||||
# Also make sure to not define OPJ_STATIC to avoid linker errors due to
|
||||
# hidden symbols (https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=203327#c1)
|
||||
sed -e '/^zlib_h/s:=.*:=:' \
|
||||
-e 's|-DOPJ_STATIC ||' \
|
||||
-i base/lib.mak || die
|
||||
|
||||
# Search path fix
|
||||
# put LDFLAGS after BINDIR, bug #383447
|
||||
sed -e "s:\$\(gsdatadir\)/lib:@datarootdir@/ghostscript/${PV}/$(get_libdir):" \
|
||||
-e "s:exdir=.*:exdir=@datarootdir@/doc/${PF}/examples:" \
|
||||
-e "s:docdir=.*:docdir=@datarootdir@/doc/${PF}/html:" \
|
||||
-e "s:GS_DOCDIR=.*:GS_DOCDIR=@datarootdir@/doc/${PF}/html:" \
|
||||
-e 's:-L$(BINDIR):& $(LDFLAGS):g' \
|
||||
-i Makefile.in base/*.mak || die "sed failed"
|
||||
|
||||
# Remove incorrect symlink, bug 590384
|
||||
rm ijs/ltmain.sh || die
|
||||
eautoreconf
|
||||
|
||||
cd ijs || die
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Unsupported upstream, bug #884841
|
||||
filter-lto
|
||||
|
||||
# bug #899952
|
||||
append-lfs-flags
|
||||
|
||||
local FONTPATH
|
||||
for path in \
|
||||
"${EPREFIX}"/usr/share/fonts/urw-fonts \
|
||||
"${EPREFIX}"/usr/share/fonts/Type1 \
|
||||
"${EPREFIX}"/usr/share/fonts
|
||||
do
|
||||
FONTPATH="${FONTPATH}${FONTPATH:+:}${EPREFIX}${path}"
|
||||
done
|
||||
|
||||
# Do not add --enable-dynamic here, it's not supported fully upstream
|
||||
# https://bugs.ghostscript.com/show_bug.cgi?id=705895
|
||||
# bug #884707
|
||||
#
|
||||
# leptonica and tesseract are bundled but modified upstream, like in
|
||||
# mujs/mupdf.
|
||||
PKGCONFIG=$(type -P $(tc-getPKG_CONFIG)) econf \
|
||||
--enable-freetype \
|
||||
--enable-fontconfig \
|
||||
--enable-openjpeg \
|
||||
--disable-compile-inits \
|
||||
--with-drivers=ALL \
|
||||
--with-fontpath="${FONTPATH}" \
|
||||
--with-ijs \
|
||||
--with-jbig2dec \
|
||||
--with-libpaper \
|
||||
--with-system-libtiff \
|
||||
$(use_enable cups) \
|
||||
$(use_enable dbus) \
|
||||
$(use_enable gtk) \
|
||||
$(use_with cups pdftoraster) \
|
||||
$(use_with unicode libidn) \
|
||||
$(use_with X x) \
|
||||
DARWIN_LDFLAGS_SO_PREFIX="${EPREFIX}/usr/lib/"
|
||||
|
||||
cd "${S}/ijs" || die
|
||||
econf \
|
||||
--enable-shared \
|
||||
$(use_enable static-libs static)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake so all
|
||||
emake -C ijs
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install-so install
|
||||
|
||||
# move gsc to gs, bug #343447
|
||||
# gsc collides with gambit, bug #253064
|
||||
mv -f "${ED}"/usr/bin/{gsc,gs} || die
|
||||
|
||||
cd "${S}/ijs" || die
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
# Sometimes the upstream versioning deviates from the tarball(!)
|
||||
# bug #844115#c32
|
||||
local my_gs_version=$(find "${ED}"/usr/share/ghostscript/ -maxdepth 1 -mindepth 1 -type d || die)
|
||||
my_gs_version=${my_gs_version##*/}
|
||||
|
||||
# Install the CMaps from poppler-data properly, bug #409361
|
||||
dosym -r /usr/share/poppler/cMaps /usr/share/ghostscript/${my_gs_version}/Resource/CMap
|
||||
|
||||
if ! use static-libs; then
|
||||
find "${ED}" -name '*.la' -delete || die
|
||||
fi
|
||||
}
|
@ -0,0 +1,302 @@
|
||||
# Copyright 2021-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
CRATES="
|
||||
addr2line@0.21.0
|
||||
adler@1.0.2
|
||||
aho-corasick@1.1.3
|
||||
ammonia@4.0.0
|
||||
android-tzdata@0.1.1
|
||||
android_system_properties@0.1.5
|
||||
anstream@0.6.14
|
||||
anstyle-parse@0.2.4
|
||||
anstyle-query@1.0.3
|
||||
anstyle-wincon@3.0.3
|
||||
anstyle@1.0.7
|
||||
anyhow@1.0.83
|
||||
assert_cmd@2.0.14
|
||||
autocfg@1.3.0
|
||||
backtrace@0.3.71
|
||||
base64@0.21.7
|
||||
bitflags@1.3.2
|
||||
bitflags@2.5.0
|
||||
bit-set@0.5.3
|
||||
bit-vec@0.6.3
|
||||
block-buffer@0.10.4
|
||||
bstr@1.9.1
|
||||
bumpalo@3.16.0
|
||||
byteorder@1.5.0
|
||||
bytes@1.6.0
|
||||
cc@1.0.97
|
||||
cfg-if@1.0.0
|
||||
chrono@0.4.38
|
||||
clap@4.5.4
|
||||
clap_builder@4.5.2
|
||||
clap_complete@4.5.2
|
||||
clap_lex@0.7.0
|
||||
colorchoice@1.0.1
|
||||
core-foundation-sys@0.8.6
|
||||
cpufeatures@0.2.12
|
||||
crossbeam-channel@0.5.12
|
||||
crossbeam-deque@0.8.5
|
||||
crossbeam-epoch@0.9.18
|
||||
crossbeam-utils@0.8.19
|
||||
crypto-common@0.1.6
|
||||
data-encoding@2.6.0
|
||||
dbus@0.9.7
|
||||
difflib@0.4.0
|
||||
diff@0.1.13
|
||||
digest@0.10.7
|
||||
doc-comment@0.3.3
|
||||
elasticlunr-rs@3.0.2
|
||||
env_filter@0.1.0
|
||||
env_logger@0.11.3
|
||||
equivalent@1.0.1
|
||||
errno@0.3.9
|
||||
fastrand@2.1.0
|
||||
filetime@0.2.23
|
||||
float-cmp@0.9.0
|
||||
fnv@1.0.7
|
||||
form_urlencoded@1.2.1
|
||||
fsevent-sys@4.1.0
|
||||
futf@0.1.5
|
||||
futures-channel@0.3.30
|
||||
futures-core@0.3.30
|
||||
futures-macro@0.3.30
|
||||
futures-sink@0.3.30
|
||||
futures-task@0.3.30
|
||||
futures-util@0.3.30
|
||||
generic-array@0.14.7
|
||||
getrandom@0.2.15
|
||||
gimli@0.28.1
|
||||
globset@0.4.14
|
||||
h2@0.3.26
|
||||
handlebars@5.1.2
|
||||
hashbrown@0.14.5
|
||||
headers-core@0.2.0
|
||||
headers@0.3.9
|
||||
hermit-abi@0.3.9
|
||||
html5ever@0.26.0
|
||||
html5ever@0.27.0
|
||||
httparse@1.8.0
|
||||
httpdate@1.0.3
|
||||
http-body@0.4.6
|
||||
http@0.2.12
|
||||
http@1.1.0
|
||||
humantime@2.1.0
|
||||
hyper@0.14.28
|
||||
iana-time-zone-haiku@0.1.2
|
||||
iana-time-zone@0.1.60
|
||||
idna@0.5.0
|
||||
ignore@0.4.22
|
||||
indexmap@2.2.6
|
||||
inotify-sys@0.1.5
|
||||
inotify@0.9.6
|
||||
is_terminal_polyfill@1.70.0
|
||||
itoa@1.0.11
|
||||
js-sys@0.3.69
|
||||
kqueue-sys@1.0.4
|
||||
kqueue@1.0.8
|
||||
libc@0.2.154
|
||||
libdbus-sys@0.2.5
|
||||
linux-raw-sys@0.4.13
|
||||
lock_api@0.4.12
|
||||
log@0.4.21
|
||||
mac@0.1.1
|
||||
maplit@1.0.2
|
||||
markup5ever@0.11.0
|
||||
markup5ever@0.12.1
|
||||
markup5ever_rcdom@0.2.0
|
||||
memchr@2.7.2
|
||||
mime@0.3.17
|
||||
mime_guess@2.0.4
|
||||
miniz_oxide@0.7.2
|
||||
mio@0.8.11
|
||||
new_debug_unreachable@1.0.6
|
||||
normalize-line-endings@0.3.0
|
||||
normpath@1.2.0
|
||||
notify-debouncer-mini@0.4.1
|
||||
notify@6.1.1
|
||||
num-traits@0.2.19
|
||||
num_cpus@1.16.0
|
||||
object@0.32.2
|
||||
once_cell@1.19.0
|
||||
opener@0.7.0
|
||||
parking_lot@0.12.2
|
||||
parking_lot_core@0.9.10
|
||||
pathdiff@0.2.1
|
||||
percent-encoding@2.3.1
|
||||
pest@2.7.10
|
||||
pest_derive@2.7.10
|
||||
pest_generator@2.7.10
|
||||
pest_meta@2.7.10
|
||||
phf@0.10.1
|
||||
phf@0.11.2
|
||||
phf_codegen@0.10.0
|
||||
phf_codegen@0.11.2
|
||||
phf_generator@0.10.0
|
||||
phf_generator@0.11.2
|
||||
phf_shared@0.10.0
|
||||
phf_shared@0.11.2
|
||||
pin-project-internal@1.1.5
|
||||
pin-project-lite@0.2.14
|
||||
pin-project@1.1.5
|
||||
pin-utils@0.1.0
|
||||
pkg-config@0.3.30
|
||||
ppv-lite86@0.2.17
|
||||
precomputed-hash@0.1.1
|
||||
predicates-core@1.0.6
|
||||
predicates-tree@1.0.9
|
||||
predicates@3.1.0
|
||||
pretty_assertions@1.4.0
|
||||
proc-macro2@1.0.82
|
||||
pulldown-cmark-escape@0.10.1
|
||||
pulldown-cmark@0.10.3
|
||||
quote@1.0.36
|
||||
rand@0.8.5
|
||||
rand_chacha@0.3.1
|
||||
rand_core@0.6.4
|
||||
redox_syscall@0.4.1
|
||||
redox_syscall@0.5.1
|
||||
regex-automata@0.4.6
|
||||
regex-syntax@0.8.3
|
||||
regex@1.10.4
|
||||
rustc-demangle@0.1.24
|
||||
rustix@0.38.34
|
||||
ryu@1.0.18
|
||||
same-file@1.0.6
|
||||
scoped-tls@1.0.1
|
||||
scopeguard@1.2.0
|
||||
select@0.6.0
|
||||
semver@1.0.23
|
||||
serde@1.0.201
|
||||
serde_derive@1.0.201
|
||||
serde_json@1.0.117
|
||||
serde_urlencoded@0.7.1
|
||||
sha1@0.10.6
|
||||
sha2@0.10.8
|
||||
shlex@1.3.0
|
||||
siphasher@0.3.11
|
||||
slab@0.4.9
|
||||
smallvec@1.13.2
|
||||
socket2@0.5.7
|
||||
string_cache@0.8.7
|
||||
string_cache_codegen@0.5.2
|
||||
strsim@0.11.1
|
||||
syn@1.0.109
|
||||
syn@2.0.63
|
||||
tempfile@3.10.1
|
||||
tendril@0.4.3
|
||||
terminal_size@0.3.0
|
||||
termtree@0.4.1
|
||||
thiserror-impl@1.0.60
|
||||
thiserror@1.0.60
|
||||
tinyvec@1.6.0
|
||||
tinyvec_macros@0.1.1
|
||||
tokio-macros@2.2.0
|
||||
tokio-tungstenite@0.21.0
|
||||
tokio-util@0.7.11
|
||||
tokio@1.37.0
|
||||
toml@0.5.11
|
||||
topological-sort@0.2.2
|
||||
tower-service@0.3.2
|
||||
tracing-core@0.1.32
|
||||
tracing@0.1.40
|
||||
try-lock@0.2.5
|
||||
tungstenite@0.21.0
|
||||
typenum@1.17.0
|
||||
ucd-trie@0.1.6
|
||||
unicase@2.7.0
|
||||
unicode-bidi@0.3.15
|
||||
unicode-ident@1.0.12
|
||||
unicode-normalization@0.1.23
|
||||
url@2.5.0
|
||||
utf8parse@0.2.1
|
||||
utf-8@0.7.6
|
||||
version_check@0.9.4
|
||||
wait-timeout@0.2.0
|
||||
walkdir@2.5.0
|
||||
want@0.3.1
|
||||
warp@0.3.7
|
||||
wasi@0.11.0+wasi-snapshot-preview1
|
||||
wasm-bindgen-backend@0.2.92
|
||||
wasm-bindgen-macro-support@0.2.92
|
||||
wasm-bindgen-macro@0.2.92
|
||||
wasm-bindgen-shared@0.2.92
|
||||
wasm-bindgen@0.2.92
|
||||
winapi-i686-pc-windows-gnu@0.4.0
|
||||
winapi-util@0.1.8
|
||||
winapi-x86_64-pc-windows-gnu@0.4.0
|
||||
winapi@0.3.9
|
||||
windows-core@0.52.0
|
||||
windows-sys@0.48.0
|
||||
windows-sys@0.52.0
|
||||
windows-targets@0.48.5
|
||||
windows-targets@0.52.5
|
||||
windows_aarch64_gnullvm@0.48.5
|
||||
windows_aarch64_gnullvm@0.52.5
|
||||
windows_aarch64_msvc@0.48.5
|
||||
windows_aarch64_msvc@0.52.5
|
||||
windows_i686_gnullvm@0.52.5
|
||||
windows_i686_gnu@0.48.5
|
||||
windows_i686_gnu@0.52.5
|
||||
windows_i686_msvc@0.48.5
|
||||
windows_i686_msvc@0.52.5
|
||||
windows_x86_64_gnullvm@0.48.5
|
||||
windows_x86_64_gnullvm@0.52.5
|
||||
windows_x86_64_gnu@0.48.5
|
||||
windows_x86_64_gnu@0.52.5
|
||||
windows_x86_64_msvc@0.48.5
|
||||
windows_x86_64_msvc@0.52.5
|
||||
xml5ever@0.17.0
|
||||
yansi@0.5.1
|
||||
"
|
||||
inherit cargo toolchain-funcs
|
||||
|
||||
DESCRIPTION="Create a book from markdown files"
|
||||
HOMEPAGE="https://rust-lang.github.io/mdBook/"
|
||||
SRC_URI="
|
||||
https://github.com/rust-lang/mdBook/archive/refs/tags/v${PV}.tar.gz
|
||||
-> ${P}.tar.gz
|
||||
${CARGO_CRATE_URIS}
|
||||
"
|
||||
S="${WORKDIR}/${P/b/B}"
|
||||
|
||||
# CC-BY-4.0/OFL-1.1: embeds fonts inside the executable
|
||||
LICENSE="MPL-2.0 CC-BY-4.0 OFL-1.1"
|
||||
LICENSE+=" Apache-2.0 CC0-1.0 ISC MIT Unicode-DFS-2016" # crates
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="doc"
|
||||
|
||||
QA_FLAGS_IGNORED="usr/bin/${PN}"
|
||||
|
||||
src_compile() {
|
||||
cargo_src_compile
|
||||
|
||||
if use doc; then
|
||||
if tc-is-cross-compiler; then
|
||||
ewarn "html docs were skipped due to cross-compilation"
|
||||
else
|
||||
target/$(usex debug{,} release)/${PN} build -d html guide || die
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
local skip=(
|
||||
# fails with usersandbox
|
||||
--skip test_ignore_canonical
|
||||
)
|
||||
|
||||
cargo_src_test -- "${skip[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cargo_src_install
|
||||
|
||||
dodoc CHANGELOG.md README.md
|
||||
use doc && ! tc-is-cross-compiler && dodoc -r guide/html
|
||||
}
|
Binary file not shown.
@ -1,432 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
FORTRAN_NEEDED="test"
|
||||
inherit cmake cuda fortran-2 llvm toolchain-funcs
|
||||
|
||||
DESCRIPTION="C++ template library for linear algebra"
|
||||
HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
|
||||
|
||||
if [[ ${PV} = *9999* ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git"
|
||||
if [[ ${PV} = 3.4.9999* ]] ; then
|
||||
EGIT_COMMIT="3.4"
|
||||
fi
|
||||
else
|
||||
SRC_URI="
|
||||
https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2
|
||||
test? ( lapack? ( https://downloads.tuxfamily.org/${PN}/lapack_addons_3.4.1.tgz -> ${PN}-lapack_addons-3.4.1.tgz ) )
|
||||
"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
|
||||
fi
|
||||
|
||||
LICENSE="MPL-2.0"
|
||||
SLOT="3"
|
||||
|
||||
# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications
|
||||
ARM_CPU_FEATURES=(
|
||||
neon:NEON
|
||||
)
|
||||
PPC_CPU_FEATURES=(
|
||||
altivec:ALTIVEC
|
||||
vsx:VSX
|
||||
)
|
||||
X86_CPU_FEATURES=(
|
||||
avx:AVX
|
||||
avx2:AVX2
|
||||
avx512f:AVX512
|
||||
avx512dq:AVX512DQ
|
||||
f16c:FP16C
|
||||
fma3:FMA
|
||||
popcnt:POPCNT
|
||||
sse:SSE
|
||||
sse2:SSE2
|
||||
sse3:SSE3
|
||||
ssse3:SSSE3
|
||||
sse4_1:SSE4_1
|
||||
sse4_2:SSE4_2
|
||||
)
|
||||
# MIPS_CPU_FEATURES=(
|
||||
# msa:MSA
|
||||
# )
|
||||
# S390_CPU_FEATURES=(
|
||||
# z13:Z13
|
||||
# z14:Z14
|
||||
# )
|
||||
|
||||
CPU_FEATURES_MAP=(
|
||||
"${ARM_CPU_FEATURES[@]/#/cpu_flags_arm_}"
|
||||
"${PPC_CPU_FEATURES[@]/#/cpu_flags_ppc_}"
|
||||
"${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}"
|
||||
# "${MIPS_CPU_FEATURES[@]/#/cpu_flags_mips_}"
|
||||
# "${S390_CPU_FEATURES[@]/#/cpu_flags_s390_}"
|
||||
)
|
||||
|
||||
IUSE_TEST_BACKENDS=(
|
||||
"adolc"
|
||||
"boost"
|
||||
"cholmod"
|
||||
"fftw"
|
||||
"klu"
|
||||
"opengl"
|
||||
"openmp"
|
||||
"pastix"
|
||||
"sparsehash"
|
||||
"spqr"
|
||||
"superlu"
|
||||
"umfpack"
|
||||
)
|
||||
|
||||
IUSE="benchmark ${CPU_FEATURES_MAP[*]%:*} clang cuda hip debug doc lapack mathjax test ${IUSE_TEST_BACKENDS[*]}" #zvector
|
||||
|
||||
# Tests failing again because of compiler issues
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="
|
||||
doc? (
|
||||
app-text/doxygen[dot]
|
||||
dev-texlive/texlive-bibtexextra
|
||||
dev-texlive/texlive-fontsextra
|
||||
dev-texlive/texlive-fontutils
|
||||
dev-texlive/texlive-latex
|
||||
dev-texlive/texlive-latexextra
|
||||
mathjax? ( dev-libs/mathjax )
|
||||
)
|
||||
test? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
# METIS
|
||||
# MPREAL
|
||||
# dev-libs/mpfr:0
|
||||
# dev-libs/gmp:0
|
||||
|
||||
TEST_BACKENDS="
|
||||
boost? ( dev-libs/boost )
|
||||
adolc? ( sci-libs/adolc[sparse] )
|
||||
cholmod? ( sci-libs/cholmod:= )
|
||||
fftw? ( sci-libs/fftw )
|
||||
spqr? ( sci-libs/spqr )
|
||||
klu? ( sci-libs/klu )
|
||||
opengl? (
|
||||
media-libs/freeglut
|
||||
media-libs/glew
|
||||
media-libs/libglvnd
|
||||
)
|
||||
pastix? ( sci-libs/pastix[-mpi] )
|
||||
sparsehash? (
|
||||
amd64? ( dev-cpp/sparsehash )
|
||||
arm64? ( dev-cpp/sparsehash )
|
||||
ppc64? ( dev-cpp/sparsehash )
|
||||
x86? ( dev-cpp/sparsehash )
|
||||
)
|
||||
superlu? ( sci-libs/superlu )
|
||||
umfpack? ( sci-libs/umfpack )
|
||||
"
|
||||
DEPEND="
|
||||
test? (
|
||||
cuda? (
|
||||
!clang? (
|
||||
dev-util/nvidia-cuda-toolkit
|
||||
)
|
||||
clang? (
|
||||
sys-devel/clang[llvm_targets_NVPTX]
|
||||
openmp? ( sys-libs/libomp[llvm_targets_NVPTX,offload] )
|
||||
)
|
||||
)
|
||||
hip? ( dev-util/hip )
|
||||
lapack? ( virtual/lapacke )
|
||||
${TEST_BACKENDS}
|
||||
)
|
||||
"
|
||||
|
||||
REQUIRED_USE="
|
||||
|| ( ${IUSE_TEST_BACKENDS[*]} )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-3.3.9-max-macro.patch"
|
||||
"${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064
|
||||
"${FILESDIR}/${PN}-3.4.0-buildstring.patch"
|
||||
"${FILESDIR}/${PN}-3.4.0-noansi.patch"
|
||||
"${FILESDIR}/${PN}-3.4.0-cxxstandard.patch"
|
||||
)
|
||||
|
||||
# TODO should be in cuda.eclass
|
||||
cuda_set_CUDAHOSTCXX() {
|
||||
local compiler
|
||||
tc-is-gcc && compiler="gcc"
|
||||
tc-is-clang && compiler="clang"
|
||||
[[ -z "$compiler" ]] && die "no compiler specified"
|
||||
|
||||
local package="sys-devel/${compiler}"
|
||||
local version="${package}"
|
||||
local CUDAHOSTCXX_test
|
||||
while
|
||||
CUDAHOSTCXX="${CUDAHOSTCXX_test}"
|
||||
version=$(best_version "${version}")
|
||||
if [[ -z "${version}" ]]; then
|
||||
if [[ -z "${CUDAHOSTCXX}" ]]; then
|
||||
die "could not find supported version of ${package}"
|
||||
fi
|
||||
break
|
||||
fi
|
||||
CUDAHOSTCXX_test="$(
|
||||
dirname "$(
|
||||
realpath "$(
|
||||
which "${compiler}-$(echo "${version}" | grep -oP "(?<=${package}-)[0-9]*")"
|
||||
)"
|
||||
)"
|
||||
)"
|
||||
version="<${version}"
|
||||
do ! echo "int main(){}" | nvcc "-ccbin ${CUDAHOSTCXX_test}" - -x cu &>/dev/null; done
|
||||
|
||||
export CUDAHOSTCXX
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
use test && use cuda && use clang && llvm_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} = *9999* ]] ; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
unpack "${P}.tar.bz2"
|
||||
|
||||
if use test && use lapack; then
|
||||
cd "${S}/lapack" || die
|
||||
unpack "${PN}-lapack_addons-3.4.1.tgz"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cmake_src_prepare
|
||||
|
||||
sed \
|
||||
-e "/add_subdirectory(bench\/spbench/s/^/#DONOTCOMPILE /g" \
|
||||
-e "/add_subdirectory(demos/s/^/#DONOTCOMPILE /g" \
|
||||
-i CMakeLists.txt || die
|
||||
|
||||
if ! use test; then
|
||||
sed \
|
||||
-e "/add_subdirectory(test/s/^/#DONOTCOMPILE /g" \
|
||||
-e "/add_subdirectory(scripts/s/^/#DONOTCOMPILE /g" \
|
||||
-e "/add_subdirectory(failtest/s/^/#DONOTCOMPILE /g" \
|
||||
-e "/add_subdirectory(blas/s/^/#DONOTCOMPILE /g" \
|
||||
-e "/add_subdirectory(lapack/s/^/#DONOTCOMPILE /g" \
|
||||
-i CMakeLists.txt || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_SHARED_LIBS="yes"
|
||||
-DBUILD_TESTING="$(usex test)"
|
||||
|
||||
-DEIGEN_BUILD_BTL="$(usex benchmark)" # Build benchmark suite
|
||||
-DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation
|
||||
-DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen
|
||||
)
|
||||
if use doc || use test; then
|
||||
mycmakeargs+=(
|
||||
# needs Qt4
|
||||
-DEIGEN_TEST_NOQT="yes" # Disable Qt support in unit tests
|
||||
)
|
||||
fi
|
||||
|
||||
if use doc; then
|
||||
mycmakeargs+=(
|
||||
-DEIGEN_DOC_USE_MATHJAX="$(usex mathjax)" # Use MathJax for rendering math in HTML docs
|
||||
-DEIGEN_INTERNAL_DOCUMENTATION=no # Build internal documentation
|
||||
)
|
||||
fi
|
||||
|
||||
if use test; then
|
||||
mycmakeargs+=(
|
||||
# the OpenGL testsuite is extremely brittle, bug #712808
|
||||
-DOpenGL_GL_PREFERENCE="GLVND"
|
||||
-DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests
|
||||
-DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples
|
||||
|
||||
-DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=ON
|
||||
|
||||
-DEIGEN_TEST_CXX11=yes
|
||||
|
||||
# -DEIGEN_TEST_CUSTOM_CXX_FLAGS= # Additional compiler flags when compiling unit tests.
|
||||
# -DEIGEN_TEST_CUSTOM_LINKER_FLAGS= # Additional linker flags when linking unit tests.
|
||||
# -DEIGEN_TEST_BUILD_FLAGS= # Options passed to the build command of unit tests
|
||||
|
||||
# -DEIGEN_BUILD_BTL=yes # Build benchmark suite
|
||||
|
||||
-DEIGEN_TEST_BUILD_DOCUMENTATION="$(usex doc)" # Test building the doxygen documentation
|
||||
|
||||
# -DEIGEN_COVERAGE_TESTING=no # Enable/disable gcov
|
||||
# -DEIGEN_CTEST_ERROR_EXCEPTION= # Regular expression for build error messages to be filtered out
|
||||
# -DEIGEN_DEBUG_ASSERTS=no # Enable advanced debugging of assertions
|
||||
# -DEIGEN_NO_ASSERTION_CHECKING=no # Disable checking of assertions using exceptions
|
||||
# -DEIGEN_TEST_NO_EXCEPTIONS=no # Disables C++ exceptions
|
||||
# -DEIGEN_TEST_NO_EXPLICIT_ALIGNMENT=no # Disable explicit alignment (hence vectorization) in tests/examples
|
||||
# -DEIGEN_TEST_NO_EXPLICIT_VECTORIZATION=no # Disable explicit vectorization in tests/examples
|
||||
|
||||
# -DEIGEN_DASHBOARD_BUILD_TARGET=buildtests # Target to be built in dashboard mode, default is buildtests
|
||||
|
||||
# -DEIGEN_DEFAULT_TO_ROW_MAJOR=no # Use row-major as default matrix storage order
|
||||
|
||||
# -DEIGEN_TEST_MATRIX_DIR=yes # Enable testing of realword sparse matrices contained in the specified path
|
||||
# -DEIGEN_TEST_MAX_SIZE=320 # Maximal matrix/vector size, default is 320
|
||||
# -DEIGEN_SPLIT_LARGE_TESTS=no # Split large tests into smaller executables
|
||||
)
|
||||
|
||||
use !adolc && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Adolc="TRUE" )
|
||||
use !boost && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Boost="TRUE" )
|
||||
use !cholmod && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_CHOLMOD="TRUE" )
|
||||
use !fftw && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_FFTW="TRUE" )
|
||||
use !sparsehash && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_GoogleHash="TRUE" )
|
||||
use !klu && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_KLU="TRUE" )
|
||||
use !opengl && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_OpenGL="TRUE" )
|
||||
use !openmp && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_OpenMP="TRUE" )
|
||||
use !pastix && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_PASTIX="TRUE" )
|
||||
use !spqr && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_SPQR="TRUE" )
|
||||
use !superlu && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_SuperLU="TRUE" )
|
||||
use !umfpack && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_UMFPACK="TRUE" )
|
||||
|
||||
if use lapack; then
|
||||
mycmakeargs+=(
|
||||
-DEIGEN_ENABLE_LAPACK_TESTS=yes
|
||||
-DEIGEN_TEST_EXTERNAL_BLAS=yes # Use external BLAS library for testsuite
|
||||
-DCMAKE_DISABLE_FIND_PACKAGE_SuperLU=ON
|
||||
)
|
||||
fi
|
||||
|
||||
if use arm; then
|
||||
mycmakeargs+=(
|
||||
-DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)"
|
||||
)
|
||||
fi
|
||||
|
||||
if use arm64; then
|
||||
mycmakeargs+=(
|
||||
-DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)"
|
||||
)
|
||||
fi
|
||||
|
||||
if use ppc || use ppc64; then
|
||||
mycmakeargs+=(
|
||||
-DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)"
|
||||
-DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)"
|
||||
)
|
||||
fi
|
||||
|
||||
if use amd64 || use x86; then
|
||||
mycmakeargs+=(
|
||||
# -DEIGEN_TEST_32BIT=no # Force generating 32bit code.
|
||||
# -DEIGEN_TEST_X87=no # Force using X87 instructions. Implies no vectorization.
|
||||
-DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)"
|
||||
-DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)"
|
||||
-DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)"
|
||||
-DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)"
|
||||
-DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
|
||||
-DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)"
|
||||
-DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)"
|
||||
-DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)"
|
||||
-DEIGEN_TEST_AVX2="$(usex cpu_flags_x86_avx2)"
|
||||
-DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx512f)"
|
||||
-DEIGEN_TEST_AVX512DQ="$(usex cpu_flags_x86_avx512dq)"
|
||||
)
|
||||
fi
|
||||
|
||||
if use mips; then
|
||||
mycmakeargs+=(
|
||||
# -DEIGEN_TEST_MSA=no # Enable/Disable MSA in tests/examples
|
||||
)
|
||||
fi
|
||||
|
||||
if use s390; then
|
||||
mycmakeargs+=(
|
||||
# -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples
|
||||
# -DEIGEN_TEST_Z14=no # Enable/Disable S390X(zEC14) ZVECTOR in tests/examples
|
||||
)
|
||||
fi
|
||||
|
||||
mycmakeargs+=(
|
||||
-DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests
|
||||
-DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex clang)")" # Use clang instead of nvcc to compile the CUDA tests
|
||||
|
||||
-DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support.
|
||||
|
||||
# -DEIGEN_TEST_SYCL=no # Add Sycl support.
|
||||
# -DEIGEN_SYCL_TRISYCL=no # Use the triSYCL Sycl implementation (ComputeCPP by default).
|
||||
)
|
||||
|
||||
if use cuda; then
|
||||
cuda_add_sandbox -w
|
||||
if use clang; then
|
||||
local llvm_prefix
|
||||
llvm_prefix="$(get_llvm_prefix -b)"
|
||||
export CC="${llvm_prefix}/bin/clang"
|
||||
export CXX="${llvm_prefix}/bin/clang++"
|
||||
export LIBRARY_PATH="${ESYSROOT}/usr/$(get_libdir)"
|
||||
else
|
||||
cuda_set_CUDAHOSTCXX
|
||||
mycmakeargs+=(
|
||||
-DCUDA_HOST_COMPILER="${CUDAHOSTCXX}"
|
||||
)
|
||||
fi
|
||||
if [[ "${CUDA_VERBOSE}" == true ]]; then
|
||||
mycmakeargs+=(
|
||||
-DCUDA_VERBOSE_BUILD=yes
|
||||
)
|
||||
NVCCFLAGS+=" -v"
|
||||
fi
|
||||
|
||||
export CUDAFLAGS="${NVCCFLAGS}"
|
||||
|
||||
[[ -z "${CUDAARCHS}" ]] && einfo "trying to determine host CUDAARCHS"
|
||||
: "${CUDAARCHS:=$(__nvcc_device_query)}"
|
||||
export CUDAARCHS
|
||||
|
||||
mycmakeargs+=(
|
||||
-DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}"
|
||||
)
|
||||
fi
|
||||
fi
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local targets=()
|
||||
if use doc; then
|
||||
targets+=( doc )
|
||||
HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
|
||||
fi
|
||||
if use test; then
|
||||
targets+=( buildtests )
|
||||
if ! use lapack; then
|
||||
targets+=( blas )
|
||||
fi
|
||||
# tests generate random data, which
|
||||
# obviously fails for some seeds
|
||||
export EIGEN_SEED=712808
|
||||
fi
|
||||
|
||||
if use doc || use test; then
|
||||
cmake_src_compile "${targets[@]}"
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use cuda ; then
|
||||
cuda_add_sandbox -w
|
||||
fi
|
||||
|
||||
local myctestargs=(
|
||||
-j1 # otherwise breaks due to cmake reruns
|
||||
)
|
||||
|
||||
cmake_src_test
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,13 +1,8 @@
|
||||
AUX gdb-13.2-fix-sparc-debugging.patch 4736 BLAKE2B 1c6161bca2b29cf035e68231d1c44ff96fead25c6bbaf39aa45daa61be8672b61c7375980f200bdc9787405bd61708b5499764708c4fea6ed41370f9f0f7f18f SHA512 9bb802ddc69fc8d3791590948c4283492665187c7d6eb44bd646176eede2fa1a743e36aa3aba9a60229b2baec9d1cd2ebce1489f84c197694d1a19f48af0b590
|
||||
AUX gdb-14.1-fix-dll-export-forwarding.patch 1991 BLAKE2B 4ebc8ad29ce57760b7b2a2ae000f66e1339ad694586d4a89137d922e22e12835340e886c0d0fa3eaec5a74bd889c226d0e46bc9bc5a020e211e8094578b92eb5 SHA512 ec049f5a019707422ddf715dec31a6cb50dd9cb772fcdad8ac8c542cb0e87dff3c7ec1ab990be56a37a2cf789ed3f13f24ac4df49d5cc808537f311f4253a510
|
||||
AUX gdb-14.1-fix-list-segfault.patch 3774 BLAKE2B 2ce82892ab66411756d618f8a78d408be18d2d497d54743b8f42c9c02a15d29ed7c45c7837c91319f3ad0a10d7e01be0beb91de86934b4a728ac5031bbaea8df SHA512 d2057d68c3e692e73e863e7cbd0577032d375197f549a87e119c4896b9b55832203a0af8f925e2523ea869be8ed9eb26b8b5ddd6205957b3c1e8c31850f004ac
|
||||
AUX gdb-14.1-fix-print-global-variable-stubs.patch 3387 BLAKE2B ff3adebf74c8b9ca37071182462b03e753bcc5161d84a53bea418780f4615327459e6dc876a37622b4c3fdeac356bcc09c93a852dc2e54e7b59de465948101d2 SHA512 bcee16dc6f8cd0b0a422bea86e0d90414a17b9779c48bc1ccd41414863141a3591a6b2970dcb0426d847a605d7a8cfef6b83fce0353e7a423acea34057b6ac4d
|
||||
AUX gdb-8.3.1-verbose-build.patch 395 BLAKE2B e2e82307ceae64d16aa9b57a5e639eb5d217c4d977aed0847fdf125bb13ebc004906d9afb8e3f629c41efccca88df0040015e7799c1fd24de5fb50f62f5bbd90 SHA512 c2bb013e4fcabefddcd8042bd3cbb53471f83182cc8769fe0d19eed80ccc4a83bd84d120006fa25b3b7d0310dc2f2ec6b44a6ff74909cd312b7e491f371777a3
|
||||
DIST gdb-13.2.tar.xz 23664644 BLAKE2B bf5216ba2286448a46f9e0a405367c5a678e6d7540204722d355b618018b7b75a2ebc5b51353304c5ded02a3979223a81781d305f5afa5be82516cdc2863d49f SHA512 8185d3e11ab60dafff5860a5016577bfe7dd7547ef01ebc867bc247603d82b74ff74c4f29492c7d2aee57076f52be33e289f4c6b414a4b870d4b3004909f4c34
|
||||
DIST gdb-14.1.tar.xz 24108624 BLAKE2B 52a07b4745f95561f360a597d6ec1d212dafc8e9134dc415cd7bcfb02c26934a60807c8400b545a756c68392e16e104178cdc1464430c53611973881e921a942 SHA512 575e198105076fc4a88f68591aa114ab9c1196e84386a3f7b9b58fe5f30cdeed33f6a5f957b68f08c47284ec922bb60c964627e238471419673fd913575ce427
|
||||
DIST gdb-14.2.tar.xz 24111936 BLAKE2B 65765dfd1ed08e19bb881fc7ae98d6ee4914f38a9a2bb0d0ca73bef472669664f807fe9c04e8dffd7025be98e736ac52f88ff5851ceddbb01a361885b18befc8 SHA512 7e07941f1fe661288cc571b4964012ceabc1760624fce20320db2f470c01439b2386f859b5288da13204b758e2e3b22a74c68c012178db93b9529b06f1e22ede
|
||||
EBUILD gdb-13.2-r2.ebuild 8704 BLAKE2B 1d68e7432fe90bfa0a894edc545da4c8620f7a58ae8fd34f821b38903d28012b276bbf14bd20088639130762a9b9560fb3ee523b1a3073fb54e6ebe0febf4cae SHA512 19a36ac139e714e021dc24c8c9825d60458ea6ff3b03a495d8995fc70a40bb771f1b75acae43f082dc9c467b07d8dc11f8122c0911b335eb1b8d560cf58b1167
|
||||
EBUILD gdb-14.1-r1.ebuild 9231 BLAKE2B 31fc4776392a7edc8a8acb68b3e8ff6019fe01b97649a566a6dcf4016f72c5d1eb81cf2ec7e2e79483850d0732cfb17a8dcb4d27374faac96fe42e8591977719 SHA512 029e076123eee3c6e17309ff263af8a235fd3a1979c75adfc0cf743f1b2dd4bc36ccf9673be7f0a8fbfd6f3ec06228522bca642fab80772e50c208cdfbb2615e
|
||||
EBUILD gdb-14.2.ebuild 9059 BLAKE2B 4adabb256e5367d71b8d239f75e58ea848df77edc4858316eb2ecb4a2f88e96494179bda9f011b8d1906c3d1a4aed84dcc213f4ea356e1b408db8a3d908b4bec SHA512 e76abe561878e0a776b0e47a79a91165e34d875513a5df0077c2e7a68d432b6c64fef45216d4e3ffd201a8df6f593dfbe51d418004e6e2483a2b162e8a73f46b
|
||||
EBUILD gdb-9999.ebuild 9067 BLAKE2B 648034794b0b4c70c5645337e7c859d640e8fdd0a9d1a92656dba01adc5f4c3416524804b4776bc10d1698b28f3b88e37ffe10798129491ab000000daad5570b SHA512 dbe86f068a52c3220c1a9d5ab1b3f181e7f5dfa8fa681d7be1b10750fc78b0f546491b0b6831409775b803531719aabfe236b49d930cb6bb1a671df33322f0ab
|
||||
MISC metadata.xml 1348 BLAKE2B 61eb80efbf21b4d0ededbe138710ef7ce69d4c2c137448d780a0a18db13b1b80ccfc41adf9cd825358bb952dae3a627f07d2cb89845ca52383d05fe32c494b49 SHA512 b50fe1fd5fccf7eddac4eff4fd7be955e02227763725b8e00d8e3606346afa978079ed8b754948b9a3ee065441acba4787b48c2b2d55535e0f8b9405fb4f2e90
|
||||
|
@ -1,126 +0,0 @@
|
||||
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=31a56a22c45d76df4c597439f337e3f75ac3065c
|
||||
https://sourceware.org/bugzilla/show_bug.cgi?id=30525
|
||||
https://bugs.gentoo.org/907906
|
||||
|
||||
From 31a56a22c45d76df4c597439f337e3f75ac3065c Mon Sep 17 00:00:00 2001
|
||||
From: Pedro Alves <pedro@palves.net>
|
||||
Date: Wed, 7 Jun 2023 10:38:14 +0100
|
||||
Subject: [PATCH] Linux: Avoid pread64/pwrite64 for high memory addresses (PR
|
||||
gdb/30525)
|
||||
|
||||
Since commit 05c06f318fd9 ("Linux: Access memory even if threads are
|
||||
running"), GDB prefers pread64/pwrite64 to access inferior memory
|
||||
instead of ptrace. That change broke reading shared libraries on
|
||||
SPARC64 Linux, as reported by PR gdb/30525 ("gdb cannot read shared
|
||||
libraries on SPARC64").
|
||||
|
||||
On SPARC64 Linux, surprisingly (to me), userspace shared libraries are
|
||||
mapped at high 64-bit addresses:
|
||||
|
||||
(gdb) info sharedlibrary
|
||||
Cannot access memory at address 0xfff80001002011e0
|
||||
Cannot access memory at address 0xfff80001002011d8
|
||||
Cannot access memory at address 0xfff80001002011d8
|
||||
From To Syms Read Shared Object Library
|
||||
0xfff80001000010a0 0xfff8000100021f80 Yes (*) /lib64/ld-linux.so.2
|
||||
(*): Shared library is missing debugging information.
|
||||
|
||||
Those addresses are 64-bit addresses with the high bits set. When
|
||||
interpreted as signed, they're negative.
|
||||
|
||||
The Linux kernel rejects pread64/pwrite64 if the offset argument of
|
||||
type off_t (a signed type) is negative, which happens if the memory
|
||||
address we're accessing has its high bit set. See
|
||||
linux/fs/read_write.c sys_pread64 and sys_pwrite64 in Linux.
|
||||
|
||||
Thankfully, lseek does not fail in that situation. So the fix is to
|
||||
use the 'lseek + read|write' path if the offset would be negative.
|
||||
|
||||
Fix this in both native GDB and GDBserver.
|
||||
|
||||
Tested on a SPARC64 GNU/Linux and x86-64 GNU/Linux.
|
||||
|
||||
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30525
|
||||
Change-Id: I79c724f918037ea67b7396fadb521bc9d1b10dc5
|
||||
--- a/gdb/linux-nat.c
|
||||
+++ b/gdb/linux-nat.c
|
||||
@@ -3909,18 +3909,26 @@ linux_proc_xfer_memory_partial_fd (int fd, int pid,
|
||||
|
||||
gdb_assert (fd != -1);
|
||||
|
||||
- /* Use pread64/pwrite64 if available, since they save a syscall and can
|
||||
- handle 64-bit offsets even on 32-bit platforms (for instance, SPARC
|
||||
- debugging a SPARC64 application). */
|
||||
+ /* Use pread64/pwrite64 if available, since they save a syscall and
|
||||
+ can handle 64-bit offsets even on 32-bit platforms (for instance,
|
||||
+ SPARC debugging a SPARC64 application). But only use them if the
|
||||
+ offset isn't so high that when cast to off_t it'd be negative, as
|
||||
+ seen on SPARC64. pread64/pwrite64 outright reject such offsets.
|
||||
+ lseek does not. */
|
||||
#ifdef HAVE_PREAD64
|
||||
- ret = (readbuf ? pread64 (fd, readbuf, len, offset)
|
||||
- : pwrite64 (fd, writebuf, len, offset));
|
||||
-#else
|
||||
- ret = lseek (fd, offset, SEEK_SET);
|
||||
- if (ret != -1)
|
||||
- ret = (readbuf ? read (fd, readbuf, len)
|
||||
- : write (fd, writebuf, len));
|
||||
+ if ((off_t) offset >= 0)
|
||||
+ ret = (readbuf != nullptr
|
||||
+ ? pread64 (fd, readbuf, len, offset)
|
||||
+ : pwrite64 (fd, writebuf, len, offset));
|
||||
+ else
|
||||
#endif
|
||||
+ {
|
||||
+ ret = lseek (fd, offset, SEEK_SET);
|
||||
+ if (ret != -1)
|
||||
+ ret = (readbuf != nullptr
|
||||
+ ? read (fd, readbuf, len)
|
||||
+ : write (fd, writebuf, len));
|
||||
+ }
|
||||
|
||||
if (ret == -1)
|
||||
{
|
||||
--- a/gdbserver/linux-low.cc
|
||||
+++ b/gdbserver/linux-low.cc
|
||||
@@ -5377,21 +5377,26 @@ proc_xfer_memory (CORE_ADDR memaddr, unsigned char *readbuf,
|
||||
{
|
||||
int bytes;
|
||||
|
||||
- /* If pread64 is available, use it. It's faster if the kernel
|
||||
- supports it (only one syscall), and it's 64-bit safe even on
|
||||
- 32-bit platforms (for instance, SPARC debugging a SPARC64
|
||||
- application). */
|
||||
+ /* Use pread64/pwrite64 if available, since they save a syscall
|
||||
+ and can handle 64-bit offsets even on 32-bit platforms (for
|
||||
+ instance, SPARC debugging a SPARC64 application). But only
|
||||
+ use them if the offset isn't so high that when cast to off_t
|
||||
+ it'd be negative, as seen on SPARC64. pread64/pwrite64
|
||||
+ outright reject such offsets. lseek does not. */
|
||||
#ifdef HAVE_PREAD64
|
||||
- bytes = (readbuf != nullptr
|
||||
- ? pread64 (fd, readbuf, len, memaddr)
|
||||
- : pwrite64 (fd, writebuf, len, memaddr));
|
||||
-#else
|
||||
- bytes = -1;
|
||||
- if (lseek (fd, memaddr, SEEK_SET) != -1)
|
||||
+ if ((off_t) memaddr >= 0)
|
||||
bytes = (readbuf != nullptr
|
||||
- ? read (fd, readbuf, len)
|
||||
- : write (fd, writebuf, len));
|
||||
+ ? pread64 (fd, readbuf, len, memaddr)
|
||||
+ : pwrite64 (fd, writebuf, len, memaddr));
|
||||
+ else
|
||||
#endif
|
||||
+ {
|
||||
+ bytes = -1;
|
||||
+ if (lseek (fd, memaddr, SEEK_SET) != -1)
|
||||
+ bytes = (readbuf != nullptr
|
||||
+ ? read (fd, readbuf, len)
|
||||
+ : write (fd, writebuf, len));
|
||||
+ }
|
||||
|
||||
if (bytes < 0)
|
||||
return errno;
|
||||
--
|
||||
2.39.3
|
@ -1,314 +0,0 @@
|
||||
# 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.
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
inherit flag-o-matic 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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
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? ( >=dev-scheme/guile-2.0 )
|
||||
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 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-8.3.1-verbose-build.patch
|
||||
"${FILESDIR}"/${P}-fix-sparc-debugging.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
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
|
||||
|
||||
# https://sourceware.org/PR22395, bug #853898
|
||||
filter-lto
|
||||
|
||||
# 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*
|
||||
|
||||
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
|
||||
}
|
@ -1,325 +0,0 @@
|
||||
# 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.
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
inherit flag-o-matic 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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
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? ( >=dev-scheme/guile-2.0 )
|
||||
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)
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-8.3.1-verbose-build.patch
|
||||
"${FILESDIR}"/${PN}-14.1-fix-list-segfault.patch
|
||||
"${FILESDIR}"/${PN}-14.1-fix-print-global-variable-stubs.patch
|
||||
"${FILESDIR}"/${PN}-14.1-fix-dll-export-forwarding.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
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
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
# code relies on C++11, so make sure we get that selected
|
||||
# due to Python 3.11 pymacro.h doing stuff to work around
|
||||
# versioning mess based on the C version, while we're compiling
|
||||
# C++ here, so we need to make it clear we're doing C++11/C11
|
||||
# because Solaris system headers act on these
|
||||
sed -i -e 's/-x c++/-std=c++11/' gdb/Makefile.in || die
|
||||
fi
|
||||
}
|
||||
|
||||
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*
|
||||
|
||||
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
|
||||
}
|
@ -1,111 +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 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
|
||||
}
|
@ -1,110 +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 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}"
|
||||
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
|
||||
}
|
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
DIST csharp-gentoodotnetinfo-1.1.1.tar.bz2 19051 BLAKE2B e55042c43c956d7a7cef999f92ce131aaeccc10db6a248d154aabd01f9072d71baed29f1ccfdd8c3f96d094f3eab491e4a9e04e1239ae23ba22695363cd35e6a SHA512 372a61251a3a8f0df2cf2b5dc83fc6348b7551c3101646ad10086cd324363e63589d056d7f260058c5ab2f01ba759d231b078c923a592f7d11a7b81b6004fcd1
|
||||
DIST microsoft.dotnet.platformabstractions.3.1.6.nupkg 72146 BLAKE2B 08d852b5e6558b499f2d780284aa747e5cf39886d86fa378128fae9f71741bd57c5bc75c0077948f193b7e8ea03a520d8ef3bd3b4fc80779adb4a84a4b44fe8c SHA512 55b87f544874686bed96889953b7e99e43426b79b0fac31cc452e0f4a27ca5cc08522c0ac967bf9df649f7c04137a5e2553d134ad79d5c1e69578367c2b4b4c6
|
||||
DIST system.commandline.2.0.0-beta4.22272.1.nupkg 616636 BLAKE2B 5252560598c4cd67348520cea086c37b4151b984a61238de1984838975340247b16050113422b1765931bdfc1dee38e226789b6427e56ab7c3a36bf07d0bcc20 SHA512 979a7e66ba29e17bc5bec42e926ed15362e23ae403e498c955e09dffc4d3baa14777a06f95e25d591fc9757a0eaa18deb9e4662a1ca1663fa300f509a4a0383c
|
||||
EBUILD csharp-gentoodotnetinfo-1.1.1-r1.ebuild 1048 BLAKE2B 3b8365bf34523bbd62868435a27eb6b8d9b78f02a5463c18fd4f21553fa5309a46a92e824fdfb7abadabaa91a97a7c7defe5c3340956ed9882b5cef9a3e55e85 SHA512 3843855d2c5532f7f1b6d7edd150ba8f0195cefcc014576d1fc4eff2c0f29e04eff07aefba1548645b18fd56562c461c3c5a96c394548f21c1cc93ecf78787f7
|
||||
EBUILD csharp-gentoodotnetinfo-1.1.1-r1.ebuild 1047 BLAKE2B 9c44a7d6ed937352967287898b6e086e23c6a432eff5620a25229c90a2e7318bfbf48cf24c303b811490b3e9728d9bebd01200dd93b3f896cbaa3bcbf5a30633 SHA512 a1ccf7b846a6cfb0d6f04b70a7c0a9bb95295e8a76bc2f34ca8efa11039b9d17209e04d7240350c98114be0c797aa070efbf9749dfa6bfdf259ff2ada2232120
|
||||
MISC metadata.xml 441 BLAKE2B 19f6f9bf53a7f2cbadd053dafa583aefa466e23b17cd2dc2c6f31af5b2432a3191341730569cedff2358d47c612f27476d67b8fe1c3b6df32022d41543ef1661 SHA512 8979243a5a0db2fdc61bb0fa3c0e3a7771d2ed7da49ef8e6cd6ba4d770e855a1d3604b275568e97719e1cedaa817a85d3a8778daf37f0d980e6d3d64ef218f93
|
||||
|
@ -1,5 +1,5 @@
|
||||
AUX dotnet-sdk-8.0.101-runtime-64.patch 1059 BLAKE2B 9420e05c877024c694bf8f469ffb6369f7639828ca4d1017f3098c480a669ff334aeb7fd7425f4e2d8a720c83fef0a2e906d6da68bcb71f02aa50d6a8a200fcc SHA512 685f1b8bc77b1dcd266ef2d6cb8644fb7b49cfd2ac4c94cba3d36e68877fce087e7e0753430a76a474d204731514b24e778f77100538a14ea59945b9aca4a934
|
||||
DIST dotnet-sdk-8.0.102-prepared-gentoo-amd64.tar.xz 1794775828 BLAKE2B 72a12b5af020a7f7d77b45eefd147b6fed52889443bbf0a9c5464a8a35a9582af32b75587f73aea9d1eb72d053986d8a204904178f260b2c8532ad821389beaf SHA512 1f7727f22e91783aaec5bccd2324f9dc63700fc95625afebeeb3bde7a99a63754a086b38c1d0921b4536963cbfc53b9c995a2aca519e0edd529f542a89995924
|
||||
DIST dotnet-sdk-8.0.102-prepared-gentoo-musl-amd64.tar.xz 1790982284 BLAKE2B 010a1dee8e09402a22c0b45745a6ec7e511c88134ef984f51caa69051d7aec87dcb73392bc338508d5591ade1247e95f7708d4a83961ea665350b4ef29882e33 SHA512 611f96525ac98bae35592074d2f1d863c566080f4f52ca619546b547515f2962d9ae53317461e9bb803067d4381daab50f6c772134f9386bf36962998891563b
|
||||
EBUILD dotnet-sdk-8.0.102.ebuild 5454 BLAKE2B e7dcdef0c64e87b79dfb30aa490d61e44a1839ace4198d466b1c967728f89d2db1f7567d868ba214c5f96978866950b6cdb998ad19339fbc261400edddf52d0c SHA512 1df42ed697c3e833f35f2fb3235490e7f86531a9730767312a63291dbef114b29fa59c7bb9910277721ba9b6d73b4fb6e540e6283870c7af9a9ad78b211caffc
|
||||
EBUILD dotnet-sdk-8.0.102-r1.ebuild 5449 BLAKE2B ef4c5c233a1ac03028b5c62e68c294b67690ca418d4851ee55d5ef78f57ced246478fc7b933b288fc862f62ae98048487b966147cf36b176b8fd55b54dfe6ee0 SHA512 71da0b7a646f469fc849cab51e7d15e093433fed15d0ed3fcd71604f83b676f2e4627d0b05e14c4093248c8b8fba6e80493c501d426549e1f6454804129c46de
|
||||
MISC metadata.xml 518 BLAKE2B f9733bd3b6b343126c400ce35dc7e4e57421a6643219341c4beab83d47beb1182306f3d0c5f1e7ff0854fd49818b2c6af37598170b88e2eb82b62d478735abf0 SHA512 940830b1208c39e4cfd72817d399156b027e5ac51dcc7bb983c9ec973f8f2ef76e440a2d358d15f7a2e185c42ae98c986210224f1477923967e3dc70eb0cfde9
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue