Sync with portage [Tue Dec 15 08:28:16 MSK 2020].

master
Calculate Linux 3 years ago
parent fa6126634f
commit 308fbe8550

@ -1,23 +1,23 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
MANIFEST Manifest.files.gz 29315 BLAKE2B 6416f281a4184aafbcc843c0cdd5488ac67a7b721cc7143a752f84a9774330fa6ea726829e8f887e97e363581d14389f53ef27c065b6bd891e18433e613ec734 SHA512 dcb92a66b082a29eb87a94ae8dca87ecdd54d23ab423a2d33f928293b74870f94a15e50f87a5499f973bcaffe149c859fa55471f59fc6ff4b257c3994c83b853
TIMESTAMP 2020-12-14T10:08:36Z
MANIFEST Manifest.files.gz 29287 BLAKE2B d5a91fef5ee5f2965cad81e5069836dec60ed19c44871312cb4fdca07e049958d1c66b654afc90e3d81cb6bd2aaa97681a37d7e4283df25081fc7468ac3e4425 SHA512 17ca0a44dd7ace5d7a4ebd2fc38e38801523bd94e07c0cee529a493d9106534ff3e2ec912617a3f24e6137c7d0014dbd1eb52648998a167d7f3ae8b90282c9e9
TIMESTAMP 2020-12-15T04:38:41Z
-----BEGIN PGP SIGNATURE-----
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAl/XOaRfFIAAAAAALgAo
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAl/YPdFfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
klBYFQ/9EVWK2ZUCnlETqdMjwu06BRF/giCVS2tJS+noLAkB/DGycLnCzktmd8bS
UTHngz3r8nLd73JkquP+fd7OzBqv9AksZBgfmp7ztx9wuQidOkkdI10jC3duc2EO
ay2EowdbjFMThoUx9ew1dpvE4N4TmqefMEE73rR8pYMkrmgCI/SIz+XDWR923eqm
GKzfsYQqlCYzwWQlLbWGtaG0O9WJnBi5wI8DmXxmE82VePgGc4ouogLoORBHilpo
FRos9uDIx3E/oku8jVqky+mb69inrkFllSPdktr2Z4+Ztzea3JwsqZPNQPha9L8Q
InT5wpI1QWggvfXobl01yzJyx/vNITyfqk34rkguVoYTM4aUkYiWOBt5sowEthkC
RNb2KRiv/GCyLSI/gckvL+IsxdU27rgUGJ3qu/TAB+mETBS6hE+lRmHWP7hmKSW2
wBqMwNbDj/anisLVJ430ucg+jQX1H+uNnjJZRJLPZqjYGVQOtsZehdCMpwmfy7R/
zk+WUEzrXJ0ku6SB+KhuIG57kuugH8b3VBT8kASDqnN7lQ0ERZFkAXVYiGEHNtlY
nopXt0dTUugrQDqlyiq57JqKYWFysiTmBPHTi7jPCZaOIBAix85Ma2XZXaLIzqBm
bWt9+dSPyq8wcI2nnQgw4sdBuVr3OzzsB3qqV9LfLNpCv567npA=
=JSDY
klDnrg/+MbmMq1ptZvU/cRyKfLqMycJ1nXLJ4I2uriSrq5CM0TP7klExtrKbSvfA
+KepzbnOP2DEr8sDS5F88WPHWSrSNDHRaTg3+RWVD9oL1Wc/hWY6hsHA+gmDyjPB
pEHb9z7qLWk0hqnvWPHGtXtlZtKeanOp+GKf0pJLC/Sf+Tn0dNTsAPFtZ/j3cKw7
NzvRN0LwgqVU3mxDJ0GSxKb0SWjWXj8FxzIXBYu9+qwK+sTBcD9bgnU6d8D847Ex
uteXHDKHpSWkNA1fbf/qITIikSwNUCUb5gTU0aCb29h2hPmc+mB4aP1BnYTn6g18
F1G4bU2u4gjYg3aWc0i07FVQLjlTqJaXi7v76UmmG7BdxgVd/nco+DDrB8uuFCUe
pTUgcGiURQpdkp3bHMg7wob3jZ7zSX/JWbdfaotAIyhlhg1TXxNPDeG3/M/QEfEP
SXp61bf3Q5H2vHupsM+43nwxdpLFJWx6yxdkqBXExhbErkqRYwdFu/ECfUHHbOWp
EBS0F4dSXDIM9dJAPtpRVTs5FwEFuz7ZldtYbdy5/zcd1HspK1cn6PIP++1yrJg9
f9tc+yIy8FbRApfrgUcQ2AixqoF3Af/Iki424UFtyZsKppKiZSphmcsxdlZtf5pJ
opJJyOYhL9ffjyG6W5q9touWTWfzgVbxfBdJiPaQvFmrYxPGM0Y=
=Vimd
-----END PGP SIGNATURE-----

Binary file not shown.

Binary file not shown.

@ -1,5 +1,7 @@
AUX fangfrisch.conf 512 BLAKE2B 1b1cd87fbf2095f8d6839fef2175b70cdf1c8d72bcfa8eb06e9abe5e88150f3d4414a64679d775f1fef4378a940334c6c1567f387dbf6ce7f8bb40f6070f31c0 SHA512 e3fff2b24a6bd05a709472e9b7b5416732807171539d31c9f2129e8b7c2ef2b5f047a7090818a2aae77941169030e7785be7a6cded1220f8a130e9e60ea05ce6
AUX fangfrisch.cron 170 BLAKE2B b2b3572bb468942eecc006749710900bb19e29d40ad444a4b1ee1575f2d4eda77e2b4c66f6ab75208bbb28c48f0d26075b2d0517982cd62d0f082aa657ff82f2 SHA512 46ba3a9bbdc93896387e9ca3a2fef1bbae6711b3680baa0afddf41c83b537e62d9425fe93d7d7befc60dd8a89aa4c70f9947b596594d5ca93024acec1f9bf454
DIST fangfrisch-1.2.0.tar.gz 113088 BLAKE2B 9fb5f4b838e6337128c9e988f5749864cadacb74c9e3006f29cf8b976592af88c00ff5359cd70e4d6901e24cfc01b061861b7b1a563a82d66b2d71c970627c26 SHA512 6f6c0cfc4d840f99186c83e6109c6234ff5bfb44e19bcd3309056347392e46da56e17106259508864b05397d39ea92500ab6863b50d55efc790d88b59f88ee3b
DIST fangfrisch-1.3.0.tar.gz 114361 BLAKE2B eca124f02f814d2915c4dbba45b6e4dc620e250730a32b34d3f5f5eaa33945e697d2d887f29251f1f8a3b1813476a54092091235a786e84695a3bc1cadebad28 SHA512 9c138737908a02efa5c9b4c6792a31e2a4908f8ab27e8cecab78612f812ab151afef75a405f47695779a949485aa88a3a5830efd02344ec334e6f37425cffe49
EBUILD fangfrisch-1.2.0-r1.ebuild 1974 BLAKE2B aa48cb2d6beae1e5405deb60dfa0a68b9c7ccd7e5fa78ce8a0e66fb7241625ca3bbfef35f414e9a5c628792a3b944ec95ac5622a3a76872191c3fa42316ea7f7 SHA512 d02213e13ccca23c0fa667592e5f8e8d8c29fa3b7dac5183b6c5eba9742f4e493b98fd7daa0e583dbdc0d9c7a5132b2ab1b062e2ad297ed48d11e92b156306ad
EBUILD fangfrisch-1.3.0.ebuild 1978 BLAKE2B c5361c507f8df22bcdff023fa74b1e8c4348c4516f066346dc3e78cb47cea3e28e6d6084a7c50c1a831bb58c1b6f63d1b502b8ca116132c50f3223bcf70cb109 SHA512 c82a7e66eb89386519fbdda435d4ee494adda8f5fe5996b7af72d63aa4b3497a3dfa343ac04eff7a0da1385bb63abf7229c55c2c5f456ad5c79ceb05c9b65c3a
MISC metadata.xml 863 BLAKE2B f3324a0adbcf5979af8daf27906630edb5d6ae78cf74ef1abd7610297587a382981658381d22b8af6233f543b02903733d1dce13df27faa4c6eb243cc164b243 SHA512 b11935bd73f1d405292dbd80456380dcc1b390015158cbacb1023b12f755d41c2af656514ec1fc9e307752706166fa96651fdebc626f1e0e4134e0a0a9d01f82

@ -0,0 +1,69 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DISTUTILS_USE_SETUPTOOLS=rdepend
PYTHON_COMPAT=( python3_{7,8,9} )
inherit distutils-r1 readme.gentoo-r1
DESCRIPTION="Update and verify unofficial Clam Anti-Virus signatures"
HOMEPAGE="https://github.com/rseichter/fangfrisch https://pypi.org/project/fangfrisch/"
SRC_URI="https://github.com/rseichter/fangfrisch/archive/${PV}.tar.gz -> ${P}.tar.gz"
MY_CONF="/etc/${PN}.conf"
MY_DBDIR="/var/lib/${PN}"
DISABLE_AUTOFORMATTING=1
DOC_CONTENTS="See https://rseichter.github.io/fangfrisch/ for the official
documentation.
### Fresh installations:
Modify ${MY_CONF} according to your preferences.
Assuming you place the database into ${MY_DBDIR}
(recommended), execute the following commands in a root shell:
mkdir -m 0770 ${MY_DBDIR}
chgrp clamav ${MY_DBDIR}
sudo -u clamav -- fangfrisch -c ${MY_CONF} initdb
You can now enable /etc/cron.d/${PN} for periodic updates.
### Alternative: Updating from release 1.0.1:
Either create a fresh database or manually delete all existing
database tables, then run the initdb command as shown above."
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
DEPEND=">=dev-python/requests-2.22.0[${PYTHON_USEDEP}]
>=dev-python/sqlalchemy-1.3.11[${PYTHON_USEDEP}]"
RDEPEND="${DEPEND}"
python_prepare_all() {
sed -i -e '/SQLAlchemy/d' setup.py || die
# Due to the nature of Fangfrisch, most tests require network
# connectivity. Upstream CI reports show that the tests are
# successful, so instead of a pick-and-choose approach, the
# complete tests directory is removed in this ebuild.
if [ -d tests ]; then
rm -r tests || die
fi
distutils-r1_python_prepare_all
}
python_install_all() {
insinto /etc
doins "${FILESDIR}/${PN}.conf"
insinto /etc/cron.d
newins "${FILESDIR}/${PN}.cron" ${PN}
distutils-r1_python_install_all
readme.gentoo_create_doc
}
pkg_postinst() {
FORCE_PRINT_ELOG=1 readme.gentoo_print_elog
}

Binary file not shown.

@ -1,6 +1,6 @@
AUX 99acme-sh 62 BLAKE2B b9542b99b2e720e0930139f7dd56efc63e596156dca1649624f6f4c27a7d57555bb13deb3b5714aa06477e9ca79996b5f891c8a91ea808d853cc7e5d5655b0a0 SHA512 b7fc9402e3bea3ca846bdb82d6f21d1b7023bb2ace8d5ffd146959cd12e3270243fd22e3a7dde9b6cefae8f2cbca369b35d2da4ea9f1e60a2f61ae81612d8bc5
AUX acme.sh 63 BLAKE2B 50c3284c0172ff0a0dc57fcfbaba57a6518d7c043b5d052f2710b28229b9b13313e7ca7c8b644ea273eb2f4991246631e70e6184fb5489005be12b77b8efa229 SHA512 7ec0764c86db5c68c42189a8af708e769189df201fdf017bd0d8d9e322ab71c2f422be382d170a1f4b876a1e5a6629eb55df0c564abfebab665e27e58660ff6e
DIST acme.sh-2.8.7.tar.gz 206475 BLAKE2B ac1d51efac6301210ffd8b6e5ff6ed490cbf80e7dd154ec7a2ad0b6a2dd08ac73a325e332192214c964a873ba7c6f01a43a2157963d7edec9e0ec45b47e5b689 SHA512 45599f50a4a45b6fdea58d7a5759e4eb5f8e33acc53d60b264c15662e6bdc1e353af610845056fc67b127242c4ad15eaaf60a2113f2cb0245d4e4861dac6e1c3
EBUILD acme-sh-2.8.7.ebuild 1100 BLAKE2B bb49e7ee375145152b585e38a5d64283a886cb9694f0b7167e23ad252f34863de64cc4ac6c4ec2ede86f4182ff90f7591187240d47170dd0482f0583d29ea723 SHA512 7abfd5cf5cafbb7277e8092fca9beac0cefdd20003438de9aabb132040c92192da5fde5aebf0e88d2980c08b82833a61f3906b6be7a38a47c7004a0625529fc9
DIST acme.sh-2.8.8.tar.gz 218582 BLAKE2B bcd2fbc0ff984d7bbcf4e0ee4c1f08f868ebc4b31a5d217587cdeb5810b8991698de52dd082219194c762ef245324e981eb2a044b213e2713c0d12370be1c19b SHA512 cf601965cd5542dbd11668330d0a4e428e89ccc3af92d4d04ea3936c8a31979a5c00aa8e18a31fde07812242dddcebbfdbc06f1c29260b917dfa19f88d12fd72
EBUILD acme-sh-2.8.8.ebuild 1100 BLAKE2B bb49e7ee375145152b585e38a5d64283a886cb9694f0b7167e23ad252f34863de64cc4ac6c4ec2ede86f4182ff90f7591187240d47170dd0482f0583d29ea723 SHA512 7abfd5cf5cafbb7277e8092fca9beac0cefdd20003438de9aabb132040c92192da5fde5aebf0e88d2980c08b82833a61f3906b6be7a38a47c7004a0625529fc9
EBUILD acme-sh-9999.ebuild 1022 BLAKE2B 0e439fa8bfb6365f24aa4181acdad1af2ae1d0ab55abcb386348180d3ccf03e00bd9f395a96dceb252b56e29bd0a5711d027eedc7e3e23c67e9c491a9d75b66d SHA512 d370fa4197af017c61faf8b89b71e195920ebf6e970e51f86c773027fa95189491e75d94b1fe8901f02562ffc1ec9b736d82a0a21a64e31203bf6e841d2a4021
MISC metadata.xml 457 BLAKE2B ae99692003d755e2dfcfbd0cd0b6f6094f61fed3e660e742920df93d738f6d6ad53c4e15394585e251cf082c76ae44fc004e53ce8d2df3525c82c57f803bcf1d SHA512 7f2d3a4f0ace2704bfb312ab07e483f1162ddfe6357b14a89010a1f6e45b9dc1600d2d337c6129e53f380988e543c1c5fe3203eb5018907721139882da698c32

@ -1,3 +1,3 @@
DIST glep63-check-9.tar.gz 73445 BLAKE2B cd229065da9a4663491a891787d2a9e719cd9d61ea5974393199ca418413e7e1c6b73a3146577b26029ceb3302f430ed1051c9d050278b098b18407e95c1cac3 SHA512 86c49ffe2b8dde3735b85ff4808862c460b1e832fa9c3fca4fc2ea776d314c29ed2442adef2e1dbca1cec81b6ea29bbb417b123306602dfaa611b5153dddb7ac
EBUILD glep63-check-9.ebuild 686 BLAKE2B 6a9f562dd9ae2719fccd88b93d1e462c983f5fd89b5dae041784187108585056e11271eb9edb10e3cc12257325675175306f1cdc3b55b1a187bdd4bc32a581ec SHA512 ade831ede4af178832a7b7105fd5b983878ae52cbe4d93a6493690b135f188a39b48b0e6106ccfa95a1722cd086b0ab58e6c1d35ffd1c5486eca7a6d1164544f
EBUILD glep63-check-9.ebuild 688 BLAKE2B 4b26b2f41790e6df5e4eae060f9e667c567919d5d48e741215d2c321c4fdff00cda6b3de22607a3aace9d08385cd1477a1cfa8bddbbd7b1a582e0e46fb10a13b SHA512 701d571a58f2206d7ef1368e64f8fa6c21bd0c981eed6da3cbb21957da48bf4004a5a032a4b4e18f8e6bd1668353d167a39f41e64cba8180a56039cbb4dc5e48
MISC metadata.xml 537 BLAKE2B cc05c3872c522fdcc2355da9d451f9ad102d23e2e5de657f447ce5c9441a4379fb5f6560cd22a8be325f322e901b65917b11630fc0229bd0e952c6f8b6b64bf0 SHA512 493bcb28f9144c49050445de98b54e19730e46cc24df02b15859f4114f4fa8775431aac9d8fcb4f50639609680656b108f6c4ca47f67b38680f926cf9610ccd9

@ -3,7 +3,7 @@
EAPI=6
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_COMPAT=( python3_{6,7,8,9} )
DISTUTILS_USE_SETUPTOOLS=no
inherit distutils-r1

Binary file not shown.

@ -7,5 +7,5 @@ AUX vgauthd.service 339 BLAKE2B 8f80d6d2f017623a8594c060e38e319c9406f5cf0008002e
AUX vmtoolsd.service 244 BLAKE2B 65bf0e80b580c2c29a06a2cbf37f8428dbfe03404cea92d0d62c2d0f4d1ccefea8f1b553ca9cdaf5693f5f1546db5733061218e4c95b953e5f140e602fe68ba2 SHA512 0e29b56eb1495a6a9d3c84862e62aac78f29d9940aa19717d2a15ea88fe9484bf84ac858bbbcf22ed9194ecd141758a4398d5a193dd0d74172fd8fe53df53505
AUX vmtoolsd.vgauth.service 312 BLAKE2B dba8ddb1b701cea490b117d08c93738a38bd668cf5444501bad8aabc503da4b87e53103a26ca4664247f14582c5546a28f093768833182581a850f0c50bc61e3 SHA512 fce9af2a3b98bf1fd5063af6c0d00bac7eba4ca02456d9266be5b74f2dea168521ffd44c38df1e28b0684f7ce21e4cb44ec2570fcbe01ff2ef432b55ede585f3
DIST open-vm-tools-11.2.0-16938113.tar.gz 4050857 BLAKE2B b0e5e1e985d9f3d50dbbb8a4a7939d37d8968f0aa15e6d7200b7ec8511bd059d3a78a4ddd763d22965dc6da614d156e6b7ee23af73490f8bbf8e1dc2664041d3 SHA512 c950d6e8ba5218dd40e845f3c2b09eeb640ef0d33c7ea1671164027927e062dcf0b4745f6e4515a7495ec20a6d06a8fbf700819f6211073194b5ef97d7be441d
EBUILD open-vm-tools-11.2.0_p16938113.ebuild 3153 BLAKE2B 6d8424e4ba4588a1161764495d2fa2846fc0009badc101cbeb06e2b496e9ba58322ecbb158f08524e9aa39bf11c4c3ab951c9a0872cf837560c48deb636e8ebf SHA512 ed7bdc4a7ef9f6b6b615f03735df0b0b3b1bbe3ea7e7f40c5c84e46f81d0c120e6fbfb51749d81600f89d3ebf087fc711d2857d7010c895644616696889da8bb
EBUILD open-vm-tools-11.2.0_p16938113-r1.ebuild 3140 BLAKE2B d9c5e7642ce454d00491e9b0226fb4bbbc4f1210a5cdfd3a8b95a94808a522487df198fa7cfe5403684e8c93ec45c86118be3b0a949e020972a325b722c7dd5c SHA512 f61c65d01b3566810276b22958a460d3b3ad96d183a6251a88b4a0231d4aee6d7e3b00967fe497af4d90bc86791e75ab23116d44d2ab365d2ee22cef9aaaf491
MISC metadata.xml 1098 BLAKE2B f4a5ef8cb8661438d0d1e01da16993a3334c25dcf8a43e55ecabd0b02734b33681d1b0824db1f08431086f8287094d7aee559e50af8c0ef0f4819cc2c14158eb SHA512 f4eb924b8a5269f0fe7f4c00f3a4747f56dfdc5c028a913785cf1929938ad333102ebfba6f3ca9ac15fb7e25f06d629be528abdcd7bb96a8c31e257405cda201

@ -3,7 +3,7 @@
EAPI=7
inherit autotools linux-info pam systemd toolchain-funcs
inherit autotools linux-info pam systemd
DESCRIPTION="Opensourced tools for VMware guests"
HOMEPAGE="https://github.com/vmware/open-vm-tools"
@ -39,7 +39,7 @@ RDEPEND="
x11-libs/libXtst
x11-libs/libSM
x11-libs/libXcomposite
x11-libs/gdk-pixbuf:2
x11-libs/gdk-pixbuf-xlib
x11-libs/gtk+:3
gtkmm? (
dev-cpp/gtkmm:3.0

@ -1,9 +1,10 @@
AUX create_vbox_modules_tarball.sh 896 BLAKE2B 4153a8fa67cd8fe7187f3c4232691b1ded8e51315f41292f9fcc0adb294e9b235b0c2f1e91f6f728076ab85f687ea1ba2877dc44b511eaceb24e7d6e71a8bbd4 SHA512 c3154a13550817c581fa142e24081edfbdbc145315d34cc4569d12ad87a518fa0bf1443c053b50fdfdea6915bda1325ad973455ee85079294b83a49fd53f4771
AUX virtualbox-modules-5.2.8-pax-const.patch 1728 BLAKE2B 1a2e8c5946af5abcf443c8cea08a6dbe78f75dd89aa072ac2ac0d745e598e8195ef321eaee53d31bedf52013d94efc046863e65c9fac0d61a507b292b04c7fb9 SHA512 600fd557992efb1fb5db9db64914becd5a86f81a42d70bbc3823533df941881f2289a6ccf630adb8346419499dd48b84ed43c21d0aba183a780daa99fcafddbd
AUX virtualbox-modules-6.1.16-linux-5.10-r0drv-memobj-fix-r0.patch 3237 BLAKE2B 5ebd53475768d4611ce9a23f8b11ad92246f561933c67a620136adcd4c7f5d1cf12cd09360eb6676221725c3732c255fcb1fe2a177fce9d007db83c776c5b202 SHA512 046e4c8e2d8f295d8e7c29c7dea53b8db18700f2ba03c7ab67ff466850f1cb2ed0dbc22aacd78b8c7011e3fb2dc02be06aba1678d1930b947988ddacf74e9174
AUX virtualbox.conf 38 BLAKE2B 4f03cb09a1cca36013beb2a38220115d63510fd0aa63e2df1f0dc755a9162f7c2efed32d8f9c98fcc1e36d48067471085d5b038c6e8b3118508fbaaaab3790f7 SHA512 63eba0963b3344ea7e7a0035560406899d878a0761cddef9853bec95deb9812b221e98f446f240070d6448d61d6ecbcf7a990bcd52863660e8f21cf9a98c0e1d
AUX virtualbox.conf-r1 30 BLAKE2B 6308dedc75e2677cbdc844b53f51359e6b5745d3510636b04d08512122aeb6db81a1a18af156a8b9acccad395d390b24f9c27ed47413382cb6101266762de230 SHA512 5c6d31f527ca2db8d7fbeea759ac328eff42803d7940fd81ef12af22eb09f8913a0e561c35db1963e2a8b398ee288692817b5c8f3d439f2a6fd381769ec2ac8a
DIST vbox-kernel-module-src-6.0.24.tar.xz 670960 BLAKE2B 26e4b1b6b9ab8c8fd0312b2162fe745dc11ef3f8a7e2f08f49df9d9ef346ec21b64e4a0a480bd726e9cca6ab2ce5d3cf2637aa8923c0843bf78a3ed160b98810 SHA512 9b1093307dffeb64f3ec22c4797268858e1fcc729403e89294c2e3cf0852662b7b0aad4416a593fd25b2107a1995d6bc17078f072b6f7718ed111ab61df8324e
DIST vbox-kernel-module-src-6.1.16.tar.xz 671736 BLAKE2B 8b2153874ee7a63f88679a5372215e89def49622caa7679a5c2410423eaf23ced18ece79d638fc96db40fac88857db7568dd72dd8e05371b14add3553d61d3a7 SHA512 c51dfad5f9578ad43e2fbdd35a70659640030108006f89d362bc25dead99eb3b39a78d403633b3813f62f5b510eff22d826a2750b9c88f5fcb1cde6531295bff
EBUILD virtualbox-modules-6.0.24-r2.ebuild 1471 BLAKE2B 405d9600d0f8d00f9442db9bea087094a035114acf58e2357cb18797c9273ecec65c26f4b470711fcc6372a641e718553fb436a52eb366b3f563800277c5f3aa SHA512 a8ee80d7c9c0e31ac4f4c0115d2a4f11798a182549e009ed55dcaddf1b8b893a54838696cffcc01f4760f212b55fc80319917235ea40776d280496386c9e278e
EBUILD virtualbox-modules-6.1.16-r1.ebuild 1434 BLAKE2B 48eb0f4d0b06113ee8d470f07e75ceb34eb3bb453df3baa66d5f1b1d8d6ab4f71a75a3e3aa2f2994976ea6999b1be9b8937311cedd99e1cdb2e76c01e7f38d43 SHA512 cf1281ab6ef8353175b6f7bd15658bd1012c6ca03ca45cc060ba336794a16f8bf035e7589b21b94d948c1549ea36631808bcc84c31984ef1744fa98bcb833442
EBUILD virtualbox-modules-6.1.16-r1.ebuild 1512 BLAKE2B 5a6cb34498170aa3f9bf5fe4387f0d4918325155c1c8b87d0f8307c2011fda971af63cce5db155e9a070ca7aabdd75042b1e05f60d30a87cf09ad551692a28d9 SHA512 d1d2bec59f9ac961fba04116dd77359481309b4cab600bc04d0ff09f894fdaf792d5a75dbabb9d308a43fa79c267cea7c82abeeb42f1f19f59b18249fa9b2af9
MISC metadata.xml 353 BLAKE2B d7de13b3a8966ab3bca54ae77f7f6c7dfd57f2c5941f09ab1b5f79ac798687ffaaa183afdf9c034a9d50fda8507a3aaa2ef0c11d0fdfa6e09a55a1bdb9f30f4a SHA512 40029c9a246dde5ed51119f42ec5448b7ae08a47ee4d6be201fef282305c809d7d3182abf807dd2444ffe1a980abcd670878567d948bcd3661a55c6848a37000

@ -0,0 +1,96 @@
Index: vboxdrv/r0drv/linux/memobj-r0drv-linux.c
===================================================================
--- a/vboxdrv/r0drv/linux/memobj-r0drv-linux.c
+++ b/vboxdrv/r0drv/linux/memobj-r0drv-linux.c
@@ -56,9 +56,12 @@
* Whether we use alloc_vm_area (3.2+) for executable memory.
* This is a must for 5.8+, but we enable it all the way back to 3.2.x for
* better W^R compliance (fExecutable flag). */
-#if RTLNX_VER_MIN(3,2,0) || defined(DOXYGEN_RUNNING)
+#if RTLNX_VER_RANGE(3,2,0, 5,10,0) || defined(DOXYGEN_RUNNING)
# define IPRT_USE_ALLOC_VM_AREA_FOR_EXEC
#endif
+#if RTLNX_VER_MIN(5,10,0) || defined(DOXYGEN_RUNNING)
+# define IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC
+#endif
/*
* 2.6.29+ kernels don't work with remap_pfn_range() anymore because
@@ -502,7 +505,43 @@
}
+#ifdef IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC
/**
+ * User data passed to the apply_to_page_range() callback.
+ */
+typedef struct LNXAPPLYPGRANGE
+{
+ /** Pointer to the memory object. */
+ PRTR0MEMOBJLNX pMemLnx;
+ /** The page protection flags to apply. */
+ pgprot_t fPg;
+} LNXAPPLYPGRANGE;
+/** Pointer to the user data. */
+typedef LNXAPPLYPGRANGE *PLNXAPPLYPGRANGE;
+/** Pointer to the const user data. */
+typedef const LNXAPPLYPGRANGE *PCLNXAPPLYPGRANGE;
+
+/**
+ * Callback called in apply_to_page_range().
+ *
+ * @returns Linux status code.
+ * @param pPte Pointer to the page table entry for the given address.
+ * @param uAddr The address to apply the new protection to.
+ * @param pvUser The opaque user data.
+ */
+static DECLCALLBACK(int) rtR0MemObjLinuxApplyPageRange(pte_t *pPte, unsigned long uAddr, void *pvUser)
+{
+ PCLNXAPPLYPGRANGE pArgs = (PCLNXAPPLYPGRANGE)pvUser;
+ PRTR0MEMOBJLNX pMemLnx = pArgs->pMemLnx;
+ uint32_t idxPg = (uAddr - (unsigned long)pMemLnx->Core.pv) >> PAGE_SHIFT;
+
+ set_pte(pPte, mk_pte(pMemLnx->apPages[idxPg], pArgs->fPg));
+ return 0;
+}
+#endif
+
+
+/**
* Maps the allocation into ring-0.
*
* This will update the RTR0MEMOBJLNX::Core.pv and RTR0MEMOBJ::fMappedToRing0 members.
@@ -584,6 +623,11 @@
else
# endif
{
+# if defined(IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC)
+ if (fExecutable)
+ pgprot_val(fPg) |= _PAGE_NX; /* Uses RTR0MemObjProtect to clear NX when memory ready, W^X fashion. */
+# endif
+
# ifdef VM_MAP
pMemLnx->Core.pv = vmap(&pMemLnx->apPages[0], pMemLnx->cPages, VM_MAP, fPg);
# else
@@ -1851,6 +1895,21 @@
preempt_enable();
return VINF_SUCCESS;
}
+# elif defined(IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC)
+ PRTR0MEMOBJLNX pMemLnx = (PRTR0MEMOBJLNX)pMem;
+ if ( pMemLnx->fExecutable
+ && pMemLnx->fMappedToRing0)
+ {
+ LNXAPPLYPGRANGE Args;
+ Args.pMemLnx = pMemLnx;
+ Args.fPg = rtR0MemObjLinuxConvertProt(fProt, true /*fKernel*/);
+ int rcLnx = apply_to_page_range(current->active_mm, (unsigned long)pMemLnx->Core.pv + offSub, cbSub,
+ rtR0MemObjLinuxApplyPageRange, (void *)&Args);
+ if (rcLnx)
+ return VERR_NOT_SUPPORTED;
+
+ return VINF_SUCCESS;
+ }
# endif
NOREF(pMem);

@ -29,6 +29,10 @@ MODULESD_VBOXDRV_ENABLED="yes"
MODULESD_VBOXNETADP_ENABLED="no"
MODULESD_VBOXNETFLT_ENABLED="no"
PATCHES=(
"${FILESDIR}/${P}-linux-5.10-r0drv-memobj-fix-r0.patch" #751328
)
pkg_setup() {
linux-mod_pkg_setup
BUILD_PARAMS="CC=$(tc-getBUILD_CC) KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"

Binary file not shown.

@ -2,7 +2,10 @@ AUX ca-certificates-20150426-root.patch 1336 BLAKE2B f52a2ab1f84a18e447b37905f2d
DIST ca-certificates_20200601.tar.xz 245668 BLAKE2B 1249782dba046f52832d365e4770e02ed24c0b50bff4ceec5e5af932c807eb8120f8e3bc7858503e74789ecb2da577509819f3ffdf9bd1ec5cc22d61f2194ad5 SHA512 7bfd3122430be0a46bd10dcb0e0664561d1e0b2656b9f37677d89f71a1dcb0e668c25ffe08412888125fa9a53ee8245a4b3fc1004c419a159766665b1241113c
DIST nss-3.53.tar.gz 81178428 BLAKE2B 5e67b02bf0ba9390311d77ee4d7b86fd7339bd4f7d830b32563799e4eef126143f0b76b2933ad14c5c5d3da6cb3fa0e670aca7ce9654316123abadce25a728ec SHA512 280edf24356b764584200bff949af4a7f88514ee8ac80bf5348a9a844a8b1eb263e9aa1d772644bd8bb1bd195c12b6cc173280cfc88cd97e56562e1c40e71503
DIST nss-3.59.tar.gz 82141516 BLAKE2B 74959b14ec42b4628dfc3365af00420cdbd41d202541e9379f6a4448c4496b76307af48c9ec405b370f8770327ce56742b4382f8cd49724b42732ce5cc5b0779 SHA512 8963e846f2ff7222457ae59f042672cf4e44f7752807226f46c215a772fd1cbd65d0ce634da4afb698eabd4eb1c1e78146cc2a089339ada11da03d259c609a38
DIST nss-3.60.tar.gz 82035831 BLAKE2B fffc0e26d58d4625be1b8b0123f248a0c7994b18868ece534ba4d60131dd4897d075d7b2dba672c31ccd333e0c18ea384e2aa2f495c23b5430d6d10b91922873 SHA512 6463b2da28b5d9f1f20d45f77a3179e2b93c874af5742c7fc51eb7c44cef93270acacf79174dc63905f227256cbcee23a36f98f1cfed10dd5c56ffc0a76e2695
DIST nss-cacert-class1-class3-r1.patch 22503 BLAKE2B d2ba6b5c3675484dab5b6709478101a9dadc0baded3dbf891dcd04e5eb912079b87cdd17f893a0f539a2a53fb05357c6dd309fb624facac3b021c82c7424a91f SHA512 68906d2442986ad13ebf9cd97c26fac34af3efd5cfaacb3d7824adad966349ad796c9cec8dec44c46d5c571df88ce83aea02ce82e71da337aa4e1aeef58eda66
DIST nss-cacert-class1-class3.patch 22950 BLAKE2B 9d5e60df5f161a3c27c41e5a9419440a54f888eda454e3cde5ebe626d4075b65cf9938b5144d0fb022377f4bd415bff5e5c67d104409860aa9391b3eb8872c68 SHA512 a5aa740bf110a3f0262e3f1ef2fc739ac2b44f042e220039d48aee8e97cd764d5c10718220364f4098aba955882bd02cadb5481512388971a8290312f88a7df0
EBUILD ca-certificates-20200601.3.53.ebuild 6033 BLAKE2B 8e441c0dab72a630718ed0ecba44a3bf9298f4aaf673a259ba36b796234eaacd0db21bb4956321567ba01a7efd39a9c552498eb15e0b90f179a112db2182feb8 SHA512 ae0ffe155f7600d00226e40aa5fc0241b43eee08f19fb8711d3ae0fbf6fe38325400ac9d02e9f32716651a014c4cec157918edd00874f48e71a64b7dc2a3377c
EBUILD ca-certificates-20200601.3.59.ebuild 6042 BLAKE2B dc40f5b0a90206e59290932f62e514298b9bc25d9dc100843623a16651b436c38bfce700572a82d1eab3969e32167cce3aaf389600d882143017272f17d789f4 SHA512 7c7d391b234c77e7827b5ce1b49327b3b246930dbbb11eee781a9b5c85d35f6d96f2fc1c9e72d9c2192237315afec627212c1cccb281d93b5d7e887059c12b42
EBUILD ca-certificates-20200601.3.60.ebuild 6178 BLAKE2B d8fb5b666a1d3dcd0903e72c6b442df05a6b8131e3f035e2461b99996fecfc32e75bfcbd8cd1ff9281f49dce63737f352821fbc1137a38659c2870158f00436e SHA512 2b3db98fb0b0bda4038962ef4f754c31e0c08fffc6c011c019cb3a0b9b9876458b3baff0cc458a0fbaeda7af6e18a3ec04a952a40bfe3b9e9c924dc0d5252c4a
MISC metadata.xml 436 BLAKE2B f37fed732b387ea5e778bb88c349c78127b0db613def815d75e5cc2b7a7dbd049131eef33617fe3139975bd0c6bb187cf20e98c27e3ee10c3928b394fe6f02ac SHA512 dade84534ac0e574b3d127a1dc367b2f206874500057662d6139a00dc30506e1d977e3020b8e983750a8ef243bcfb34e152391d12027d88f8c116d151090ed9b

@ -0,0 +1,197 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# The Debian ca-certificates package merely takes the CA database as it exists
# in the nss package and repackages it for use by openssl.
#
# The issue with using the compiled debs directly is two fold:
# - they do not update frequently enough for us to rely on them
# - they pull the CA database from nss tip of tree rather than the release
#
# So we take the Debian source tools and combine them with the latest nss
# release to produce (largely) the same end result. The difference is that
# now we know our cert database is kept in sync with nss and, if need be,
# can be sync with nss tip of tree more frequently to respond to bugs.
# When triaging bugs from users, here's some handy tips:
# - To see what cert is hitting errors, use openssl:
# openssl s_client -port 443 -CApath /etc/ssl/certs/ -host $HOSTNAME
# Focus on the errors written to stderr.
#
# - Look at the upstream log as to why certs were added/removed:
# https://hg.mozilla.org/projects/nss/log/tip/lib/ckfw/builtins/certdata.txt
#
# - If people want to add/remove certs, tell them to file w/mozilla:
# https://bugzilla.mozilla.org/enter_bug.cgi?product=NSS&component=CA%20Certificates&version=trunk
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
inherit python-any-r1
if [[ ${PV} == *.* ]] ; then
# Compile from source ourselves.
PRECOMPILED=false
DEB_VER=$(ver_cut 1)
NSS_VER=$(ver_cut 2-)
RTM_NAME="NSS_${NSS_VER//./_}_RTM"
else
# Debian precompiled version.
PRECOMPILED=true
inherit unpacker
fi
DESCRIPTION="Common CA Certificates PEM files"
HOMEPAGE="https://packages.debian.org/sid/ca-certificates"
NMU_PR=""
if ${PRECOMPILED} ; then
SRC_URI="mirror://debian/pool/main/c/${PN}/${PN}_${PV}${NMU_PR:++nmu}${NMU_PR}_all.deb"
else
SRC_URI="mirror://debian/pool/main/c/${PN}/${PN}_${DEB_VER}${NMU_PR:++nmu}${NMU_PR}.tar.xz
https://archive.mozilla.org/pub/security/nss/releases/${RTM_NAME}/src/nss-${NSS_VER}.tar.gz
cacert? (
https://dev.gentoo.org/~whissi/dist/ca-certificates/nss-cacert-class1-class3-r1.patch
)"
fi
LICENSE="MPL-1.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
IUSE=""
${PRECOMPILED} || IUSE+=" cacert"
# c_rehash: we run `c_rehash`
# debianutils: we run `run-parts`
CDEPEND="app-misc/c_rehash
sys-apps/debianutils"
BDEPEND="${CDEPEND}"
if ! ${PRECOMPILED} ; then
BDEPEND+=" ${PYTHON_DEPS}"
fi
DEPEND=""
if ${PRECOMPILED} ; then
DEPEND+=" !<sys-apps/portage-2.1.10.41"
fi
RDEPEND="${CDEPEND}
${DEPEND}"
S=${WORKDIR}
pkg_setup() {
# For the conversion to having it in CONFIG_PROTECT_MASK,
# we need to tell users about it once manually first.
[[ -f "${EPREFIX}"/etc/env.d/98ca-certificates ]] \
|| ewarn "You should run update-ca-certificates manually after etc-update"
}
src_unpack() {
if ! ${PRECOMPILED} ; then
default
# Initial 20200601 deb release had bad naming inside the debian source tarball.
DEB_S="${WORKDIR}/${PN}-${DEB_VER}"
DEB_BAD_S="${WORKDIR}/work"
if [[ -d "${DEB_BAD_S}" ]] && [[ ! -d "${DEB_S}" ]] ; then
mv "${DEB_BAD_S}" "${DEB_S}"
fi
fi
# Do all the work in the image subdir to avoid conflicting with source
# dirs in ${WORKDIR}. Need to perform everything in the offset #381937
mkdir -p "image/${EPREFIX}" || die
cd "image/${EPREFIX}" || die
${PRECOMPILED} && unpacker_src_unpack
}
src_prepare() {
cd "image/${EPREFIX}" || die
if ! ${PRECOMPILED} ; then
mkdir -p usr/sbin || die
cp -p "${S}"/${PN}-${DEB_VER}/sbin/update-ca-certificates \
usr/sbin/ || die
if use cacert ; then
pushd "${S}"/nss-${NSS_VER} >/dev/null || die
eapply "${DISTDIR}"/nss-cacert-class1-class3-r1.patch
popd >/dev/null || die
fi
fi
default
eapply -p2 "${FILESDIR}"/${PN}-20150426-root.patch
local relp=$(echo "${EPREFIX}" | sed -e 's:[^/]\+:..:g')
sed -i \
-e '/="$ROOT/s:ROOT:ROOT'"${EPREFIX}"':' \
-e '/RELPATH="\.\./s:"$:'"${relp}"'":' \
-e 's/openssl rehash/c_rehash/' \
usr/sbin/update-ca-certificates || die
}
src_compile() {
cd "image/${EPREFIX}" || die
if ! ${PRECOMPILED} ; then
python_setup
local d="${S}/${PN}-${DEB_VER}/mozilla" c="usr/share/${PN}"
# Grab the database from the nss sources.
cp "${S}"/nss-${NSS_VER}/nss/lib/ckfw/builtins/{certdata.txt,nssckbi.h} "${d}" || die
emake -C "${d}"
# Now move the files to the same places that the precompiled would.
mkdir -p etc/ssl/certs \
etc/ca-certificates/update.d \
"${c}"/mozilla \
|| die
if use cacert ; then
mkdir -p "${c}"/cacert.org || die
mv "${d}"/CA_Cert_Signing_Authority.crt \
"${c}"/cacert.org/cacert.org_class1.crt || die
mv "${d}"/CAcert_Class_3_Root.crt \
"${c}"/cacert.org/cacert.org_class3.crt || die
fi
mv "${d}"/*.crt "${c}"/mozilla/ || die
else
mv usr/share/doc/{ca-certificates,${PF}} || die
fi
(
echo "# Automatically generated by ${CATEGORY}/${PF}"
echo "# $(date -u)"
echo "# Do not edit."
cd "${c}" || die
find * -name '*.crt' | LC_ALL=C sort
) > etc/ca-certificates.conf
sh usr/sbin/update-ca-certificates --root "${S}/image" || die
}
src_install() {
cp -pPR image/* "${D}"/ || die
if ! ${PRECOMPILED} ; then
cd ${PN}-${DEB_VER} || die
doman sbin/*.8
dodoc debian/README.* examples/ca-certificates-local/README
fi
echo 'CONFIG_PROTECT_MASK="/etc/ca-certificates.conf"' > 98ca-certificates
doenvd 98ca-certificates
}
pkg_postinst() {
if [[ -d "${EROOT}/usr/local/share/ca-certificates" ]] ; then
# if the user has local certs, we need to rebuild again
# to include their stuff in the db.
# However it's too overzealous when the user has custom certs in place.
# --fresh is to clean up dangling symlinks
"${EROOT}"/usr/sbin/update-ca-certificates --root "${ROOT}"
fi
if [[ -n "$(find -L "${EROOT}"/etc/ssl/certs/ -type l)" ]] ; then
ewarn "Removing the following broken symlinks:"
ewarn "$(find -L "${EROOT}"/etc/ssl/certs/ -type l -printf '%p -> %l\n' -delete)"
fi
}

@ -0,0 +1,3 @@
DIST piper-0.5.1.tar.gz 234944 BLAKE2B 1df33ca6e2d0dae95b34f8e3a98c6829a8f113ae68fb60980ff40374090b9272f86d69103c33fe0a4e1b0ac21a84724e7cabccca4ce8dd23d02f6d56e67d072b SHA512 13368521a9c32b2dc3300b129ed3bb07a6204623fa750f8f75ca31d2a3b60f43ae5f5066ef755814960d4890a489bdfd21b0e1b8f456b3445e0ba35ac06bc877
EBUILD piper-0.5.1.ebuild 1110 BLAKE2B bd4c37b5e9416cc4e7c3c926220faa0e824f59e08e19203ac900e2c48a0d52b6341580a4fae9e98a37b5e504a5bf4e74b11f3bf94db20d7cee3591cc722a887d SHA512 9c00f3c2aaabcd3769ebfd71dede6dfb41e31a13cdd8f08597732f4ed1e433c6ea420d8a9ebb3dc6c55b56f3c53f85bcff7d45beb5ec7b66246c7be083463d8c
MISC metadata.xml 630 BLAKE2B 21a1ff2104078c5a1e13ca8981d4c0db9e693c0a060fda89fc097c1d3fd4b5f6169cd026b6e62ee9aadd746b31c00469dc305e96eeeea9ab24b39e643d74c9b9 SHA512 01eb922d5a1b216d47da29d00febac07c89760898eb4e2ef24435879330a81255be63d139bebf5ea2a97fabe73dadd7049e11c3f09ec45ee5ea22267a628f939

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>alex@1stleg.com</email>
<name>Alex Barker</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<maintainer type="person">
<email>polynomial-c@gentoo.org</email>
<name>Lars Wendler</name>
<description>Proxy maintainer for Alex</description>
</maintainer>
<upstream>
<remote-id type="github">libratbag/piper</remote-id>
</upstream>
</pkgmetadata>

@ -0,0 +1,52 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
inherit meson python-single-r1 udev
DESCRIPTION="GTK configuration application for libratbag"
HOMEPAGE="https://github.com/libratbag/piper"
SRC_URI="https://github.com/libratbag/piper/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
BDEPEND="
${PYTHON_DEPS}
virtual/pkgconfig
"
RDEPEND="
${PYTHON_DEPS}
dev-libs/gobject-introspection
>=dev-libs/libratbag-0.13
gnome-base/librsvg[introspection]
x11-libs/gdk-pixbuf[introspection]
x11-libs/gtk+:3[introspection]
$(python_gen_cond_dep '
dev-python/lxml[${PYTHON_MULTI_USEDEP}]
dev-python/pycairo[${PYTHON_MULTI_USEDEP}]
dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
dev-python/python-evdev[${PYTHON_MULTI_USEDEP}]
')
"
DEPEND="
${RDEPEND}
dev-libs/libevdev
virtual/libudev
"
src_configure() {
python_setup
meson_src_configure
}
src_install() {
meson_src_install
python_optimize
python_fix_shebang "${ED}"/usr/bin/
}

Binary file not shown.

@ -1,5 +1,3 @@
DIST console-setup_1.104.tar.gz 3272857 BLAKE2B ae7a5929a059ddd2258884e5207198ae517da1284e264527878ad25bf883e48b399e53f2a987265623a5cffa3eefce8cce5fe8ad632576c46bba40689c17c586 SHA512 72b07a0ed955069777c1691b16753534630bcbdb5cd94f05ae95e8c27436c233598f01418fbf52a29b6ecf7d8217e6af841778d8e5d329569f2f585b538ba03e
DIST console-setup_1.155.tar.xz 1641952 BLAKE2B fbe1e58915c2aac1148a1de31eca5bc9b7fc078c9840b5d51d8b1211e178315360e294d81040c464e2404774594606b3fecab6f7924b1fd4bec4c24b219e9197 SHA512 e00b0b48d91c9587c0659714f74de259bf3efd1caa553c4a06d9bc545335463808db2da16797ffca1dc59cae4f524619d3cf9a68db2ff5ad7b47cdd8aced37ac
EBUILD bdf2psf-1.104.ebuild 678 BLAKE2B 357443c76f206854737eec7b9d32561515339e316428cc2c45d4bf9e222d36deebcf8191774961089c120eb074c8c357259d527d8e32183bf04dff7851e42226 SHA512 54f8ee43215a9e2de7eef0a5d4732d07fe26ef6f68c22732dd616f012e781f44115b01e80516cf5e585140fa91be4103e4d41b603b510b74ed6eda37f05b3460
EBUILD bdf2psf-1.155.ebuild 678 BLAKE2B 8004a9359bef3f975bb70aceb4e1bcdf417b3b5e475606f4cc7846b724bce95e96b0d7d56932cddc04fc09439a41573837e1008dec38946b0f88750189203cab SHA512 2b65c85a5682775b3b5e89528ff961a805bb6e09a5f0cf70760cd69201bbc4737c5d0f7323acddbf3cc264ee104d2c9ab14357c524305781db0a71058b963e77
MISC metadata.xml 246 BLAKE2B f94a229d0ffd7220f14c23ca2b0b6b84128338b5af27cd18ddb0c9e2f95f51c943fdfbc368c03b4a87d7bb381c668158fdc169fd067cc0cd8cd35852acc29d62 SHA512 b6df287a6e1f18bf267a05d8eb6dea788ae7ec74de31d9cea76fea038e4090c6a83d62221505d280d55e9b314d059c409e442951d78eb3a58928307ff118147b

@ -1,32 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
DESCRIPTION="Converter to generate console fonts from BDF source fonts"
HOMEPAGE="http://packages.debian.org/sid/bdf2psf"
SRC_URI="mirror://debian/pool/main/c/console-setup/console-setup_${PV}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm ~ia64 ppc ppc64 ~s390 sparc x86"
IUSE=""
DEPEND=""
RDEPEND="dev-lang/perl"
S="${WORKDIR}/console-setup-${PV}"
src_compile() {
:
}
src_install() {
dobin Fonts/bdf2psf
insinto usr/share/bdf2psf
doins -r Fonts/*.equivalents Fonts/*.set Fonts/fontsets
doman man/bdf2psf.1
dodoc debian/README.fontsets
}

@ -1,8 +1,9 @@
AUX ghostscript-gpl-9.53.3-fix-ps2epsi.patch 537 BLAKE2B fe6bf851c52751e3653e8e7cfac4b5e5e85ec3b9c9a125e5c7e0ca3aeca5cbe0b1ffe068633dd091755bfba410476b1328abbd94af7c90637541215f484e2413 SHA512 901a8a3b2ef645cd1e61f7596aa0f71921d480ebd48249b3d4e0e07dcfc33bb92ba484a28e952575c33062b3f429d8d60b43aeba8ea59a0623b18405dc27515a
AUX ghostscript-gpl-9.53.3-freetype-2.10.3.patch 508 BLAKE2B 8819f3be84b556adde4808509a1199d08b059a77abeafb6d95076194093a3223cc8c8b7032124eaeaa98dedb237dd94632cb374cb854f7d1594a80b82df79173 SHA512 43bb10cbf6b316d59a616f986fe8bea87af1313ca71138ecdeb531ea2a689c64718c44d0a81f69bdf30e3814fec3b36866c2249d26c6d45c58bd121accc7f8d4
DIST ghostscript-9.52.tar.xz 39711040 BLAKE2B 317042ae7e2bfdeded2ae9d9a1bd1521422d1ce1dd6b9b2cdedf4c503cce1285684d5329663dc8ee7263591761c33254827d16b1a93f8c10aad4baab1d859f93 SHA512 4c4a33884e1138bad553eee61fac1a72158297ad5c2ce46a4b36150848dea8158affaf2b902f4ff03e4f72ebc8154c198b618112624f409230a610b7648faa67
DIST ghostscript-9.53.3.tar.xz 41368160 BLAKE2B 6b5840a420d7527c7155bfb707fe19b3412bdd3a6707f44d058c20f607e6695cfc878cf5df4c4528686c1c1f488b2dbdb81ef5fdf38b950eb15751d2ebafb0a9 SHA512 eb832c27eecd30f15e346408c592d7096fd23ef0a6fa59bd50ca327578915434530a4868e69249c2594def0910c527302e99d54f0877f726a8ca8bea6f0f17b7
DIST ghostscript-gpl-9.52-patchset-01.tar.xz 3292 BLAKE2B b6ac4f06c149301b07f57a5dd1f4507cc1e6d17ea60132b64177972ca58a29b2f6ff2f034b20b8ac083b60ea999f50ff75b74f86eec0cd73179741ed8a1486a8 SHA512 2498c5f396807a282727a7a9bd678e2008a1e4112722745aab48a12601661b08557c5d49f0a5ee67fb636f8c2b00c737640e894523b904ef3600f66d107999cb
DIST ghostscript-gpl-9.53-patchset-01.tar.xz 2340 BLAKE2B 55d82c88f1b57c084318839e1382ffa112461d074411b1f6586a5a9ace37772b144abdda9f742defd077ce937df590d63bd7a2306bad52438949d1036bb7900c SHA512 ab58485df9152bb32c6f0eb25bd45689089bd17ffb0323c54e1977c5f810ec5eb09f358637251c428591749bfb42c6f8489c74d4bd0a7ae5d696eb2346503c44
EBUILD ghostscript-gpl-9.52-r1.ebuild 5175 BLAKE2B 83b725c22dfae426de0735f8195e6e4477b47d3fff6fb0f3108d344ffee6eba03bdb875078c472a048c2be7ed1f3347cea7e22707bbc1c0c77629ad11a3c5106 SHA512 f242c79f3ac85c147ee9d6ea203b716ebf44170e5574db68fecb04940b2e7c6146631bb2e1a46cf06673d91fc6cad18bf4828ef97af91896815cceb5efba0e17
EBUILD ghostscript-gpl-9.53.3-r2.ebuild 5210 BLAKE2B 9a7fca567d9263eb455e83b1c10e720adf2cac85377f7d2636bf19f7e0c052d467949d4ead0ac1adcc19308df7ad8daadaa76aa6a0b82cb60c98ff727532cd6f SHA512 85a07b3eb6b8a6d3fad665930011d2926057c745dcbb1e38163cb012b0caa53803d58bcdec9d2d1b8caac1f3b5e3fae572b264ea2c0170dd3a091a23ee842a0c
EBUILD ghostscript-gpl-9.53.3-r4.ebuild 5245 BLAKE2B d186dea50712499529a91b12b919837a91c2be4433b92c65762af961686bc93fb5cb95521481db07dc92d85c6b1721c44b85685b66aa1c01fd02854d2f318f41 SHA512 7f6f1c4851deec9b604fdf7595694f733a750a31a37268b657537dd803d7c29bceb879bb80e7f9bc3e51f055bafa8d321e162bb7320e2f9ecf2b0f6ed787ee82
MISC metadata.xml 583 BLAKE2B cc9bd976a53f467582f4657d0f08862454c53783d1eeedf90dfe9fab7e074a8903a48632b03847e4aeba4d9f6cf821ebda120c1de1e64740641e4849278646a8 SHA512 3de9e76a9a3b6fff971d0760b3590a60448014268f45faa742327a90b1cd8c40eae1426026cda590dd9f91c96580eabbba85125c88ed250479b8df675f45bb15

@ -0,0 +1,16 @@
https://bugs.ghostscript.com/show_bug.cgi?id=703270
--- a/lib/ps2epsi
+++ b/lib/ps2epsi
@@ -40,8 +40,8 @@ else
outfile=$2
fi
-# Note, we expect 'ps2epsi.ps' to be in the same directory as 'ps2epsi'
+# Note, we expect 'ps2epsi.ps' to be on one of the search paths which can be seen by: gs -h
"$GS_EXECUTABLE" -q -dNOOUTERSAVE -dNODISPLAY -dLastPage=1 -sOutputFile="${outfile}" \
- --permit-file-all="${infile}" -- "$LIBDIR/ps2epsi.ps" "${infile}" 1>&2
+ --permit-file-all="${infile}" -- ps2epsi.ps "${infile}" 1>&2
exit 0

@ -61,8 +61,8 @@ RDEPEND="${DEPEND}
S="${WORKDIR}/${MY_P}"
PATCHES=(
# bug #747808
"${FILESDIR}/${PN}-9.53.3-freetype-2.10.3.patch"
"${FILESDIR}/${PN}-9.53.3-freetype-2.10.3.patch" # bug #747808
"${FILESDIR}/${P}-fix-ps2epsi.patch"
)
src_prepare() {
@ -107,7 +107,7 @@ src_prepare() {
# search path fix
# put LDFLAGS after BINDIR, bug #383447
sed -e "s:\$\(gsdatadir\)/lib:@datarootdir@/ghostscript/${PVM}/$(get_libdir):" \
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:" \
@ -183,7 +183,7 @@ src_install() {
emake DESTDIR="${D}" install
# install the CMaps from poppler-data properly, bug #409361
dosym ../../../poppler/cMaps "/usr/share/ghostscript/${PVM}/Resource/CMap"
dosym ../../../poppler/cMaps "/usr/share/ghostscript/${PV}/Resource/CMap"
if ! use static-libs; then
find "${ED}" -name '*.la' -delete || die

@ -1,3 +1,3 @@
DIST ronn-0.7.3.gem 61440 BLAKE2B 3ff0a1752d7a972b7d8319cac2b1287e7d21207e22b9eb288694172eb9b30b2198e4378eb02df8418585a44d3d2c89b4695675933dc5ef5d9ba63c78e71f4e7c SHA512 885418c88d5a1073f9457ea11e29d82d3bb40ad12506589ccfab83ad447445e41282c9688aba5646082ae5ecc6a047fa9439ffae14561152fc61a136474f611c
EBUILD ronn-0.7.3-r3.ebuild 1162 BLAKE2B bbd33b82dc461ea868020c56ae8f541cd28ebff1f4aa3b1f575c55f87a3719aae478de5305144147977368609d7f035a879c877fc72749f3cd913dbfab5cbc28 SHA512 e86aa624ed0c286108d4f7a58dc3df9cdba20bb8080baeabbf9c6f1db4174047ecf33df5949951f6c4358a4e621e952c84f15a64d73aa3722402888448b37b33
EBUILD ronn-0.7.3-r3.ebuild 1163 BLAKE2B 69f0e58f11eeac58714bcef08c6e62ec182ebdd68c21e0b589db88eee8209a696f6d62da1ff1a6a78c08ecdcfad892966af16dcd53fb77d4ecbfc2a756706ce4 SHA512 6714f18e70c27e9a67a6dfab82a34d9505f5b975204f57ef0bf9c843872fc18429a592d8d762fde9877145977fc5669d67cd4da009a6fc8364b9e755a607409d
MISC metadata.xml 339 BLAKE2B 2a1722a0531a1ccaba0d29a1ace114b95789ba4b0c692e8efcf38605f81de4dd1210671331fcdb5baa6536cf38fbf63f11b85fb13bd6a067be56f22a372fc5b6 SHA512 0be4072cf3514eba60569138ed409362b318616ad4514e319d9b4add120e74fd7655e2fc5c3ab8d7b5d813cfcf8e1054fb98395a1a89d9fb90e447a825ee9439

@ -14,7 +14,7 @@ HOMEPAGE="https://github.com/rtomayko/ronn/"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm ~arm64 hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
IUSE=""

@ -1,10 +1,6 @@
DIST scdoc-1.10.0.tar.gz 12414 BLAKE2B 3111b3ace102aca2f7da86e510e00f552874817b6b9d754770bd94f9482e4e444a4bc4d44a8317376a6c374bb7363eae96a49281fefd95dd663134087123034b SHA512 546743376380d84aa9c8be65529dbbe1634e574203220ce1c057341436bd3a15297f393ca79d29372cb125bf457cfc00f64ba2867b8d2e910ca6531acb552e97
DIST scdoc-1.10.1.tar.gz 12422 BLAKE2B 4aa5b28994cd03f5d3fc9fff253a02f1052653d25d41225665219ebb6322ebe69f2671d91c5cfe201fd7f9b1ac06f38db3dd126492da06fef0b692fc040300d5 SHA512 356aee85c4676a1fbd7367c6087dd7f6f4d33793be0f3fef74803ceb93c0a9e45c78022d219dc08a7d79d71c393849fa3113c36a85d5d60ed474b62bf5f89743
DIST scdoc-1.11.0.tar.gz 12616 BLAKE2B 3aec60e51b949dc94e8339e400c366428a217c1bd44f79716cbd6993a7f8051a0796dc96163e071db4808c0edde071408e3eb1ee0ae3bb8ccd718479960ab8f3 SHA512 4c8248a12e69e53cc2182af5375912f7af64f3807163dbe3c52e85d817b1bfa7e461d02a627c73d93bdaa96e49668ff894d37817ceb70ee3186da9e3f8372d49
DIST scdoc-1.9.3.tar.gz 11479 BLAKE2B 79aa3f18104e06722f087e9c2fa047f6e19fe8eb47ba0b4e6fa86f7abdc52b06a2dfcfd632b16dc7bce6e5ef3b0dbb40ce9170e678bc17c0a4e43dcc0099a1dc SHA512 77be81f042e2099de7fc84b0161bc8a95d5c3dde662284613d84a1e249fa0aa51dad73f53f265c833526d40f5e1f19fce99dc5cd6df35efb0a323c3db6084a55
EBUILD scdoc-1.10.0.ebuild 1182 BLAKE2B b52c95f0dbabac5b4eb7487cd48e59bd1b361a3a944d53c7b007bb52c7b3f0c68c6d80cd22be964b97d95f82474722a005745cf34c9d0ed0d36dac0887183e86 SHA512 a810dfca019775b6aa54e76dd8f2d411550360e86ac883498ba9e769224de6067c225eec31e93735a4f5fc6585507e780fd94c4ecf19b77677188d7118537a2a
EBUILD scdoc-1.10.1.ebuild 1185 BLAKE2B 461515e1fe30b3c6213e9d58c9d005ba3a8866c493a90785b6907a30d3ba2dc819122ed44a79c38d11141ec4df14edb56e998a469776e0cb619db26ba838c37b SHA512 f740888fa375d7ee55730b3ed099ff3f233e88f0d8f80deb8ce063f717ab1dc9eb7df945aef834b026aa2fa9243b9a2658b6015683213ec08b914ed20f9ed7ab
DIST scdoc-1.11.1.tar.gz 12482 BLAKE2B 2632da654730a373f03955f0b3bb190c8d6beb2fd4e4b05c88a4c86d384b26c51a8f032e6b2ef8d4d795638c1981a4d5500384f3103411869c7097a2ba1466ff SHA512 28b676a2ba69a101034c47378c4b66c94bfb9903d680a1871020fd8772d0990a4c91678738f71d37bfca06e27991ef782047c6503d375ce69df744caf6b459de
EBUILD scdoc-1.11.0.ebuild 1182 BLAKE2B b52c95f0dbabac5b4eb7487cd48e59bd1b361a3a944d53c7b007bb52c7b3f0c68c6d80cd22be964b97d95f82474722a005745cf34c9d0ed0d36dac0887183e86 SHA512 a810dfca019775b6aa54e76dd8f2d411550360e86ac883498ba9e769224de6067c225eec31e93735a4f5fc6585507e780fd94c4ecf19b77677188d7118537a2a
EBUILD scdoc-1.9.3-r1.ebuild 1182 BLAKE2B 1d6f07981f9117ae906d84b52e8f65eb10da65b993506e2a24a465c59933af440d38d3d136613a47e936bf622f8a9879ff957ab4111a510ec812002b6b381bf0 SHA512 f2e021e0df03289c46e163c5f07f73898871795f250ca3a1e2d52f06af2de6718e8b1b5c9b7e2fbad368c0e0595cf0778a707026dd767135360811015b1b0b7d
EBUILD scdoc-1.11.1.ebuild 1185 BLAKE2B 461515e1fe30b3c6213e9d58c9d005ba3a8866c493a90785b6907a30d3ba2dc819122ed44a79c38d11141ec4df14edb56e998a469776e0cb619db26ba838c37b SHA512 f740888fa375d7ee55730b3ed099ff3f233e88f0d8f80deb8ce063f717ab1dc9eb7df945aef834b026aa2fa9243b9a2658b6015683213ec08b914ed20f9ed7ab
EBUILD scdoc-9999.ebuild 1168 BLAKE2B ebe65c78c3eefe79dc5efa4a5a76abe1480ce975ca0dec3de56e74e37f8af799cf1f878e0019b4d69231470aaa507287dcae8c3005bbda2c48007784a2f2b0d1 SHA512 bcfd36c54713470010a6ccb3d3066a83d9e4090fb1ec9c365ab0e9aebac743275dfb79a0ddb9e0392122711dd7e55d2a2e83911c5f7bc9471cffaadf58b9d591
MISC metadata.xml 422 BLAKE2B ec662d4bd34390be05318e8816524f206decf6e3cf97ee6e132405a7a2bdd33839b5b82e8083bd3fedc8d390871275ecc9490252cdeb883994e35d511cb8b7d4 SHA512 09dc27076a9ffd2c3f94b40b9df84cbb02317dee7235cb0ce358890c93667dacfc3a7adfe09cf949b8f63970983a7ed7ff654a9ec290b58c6f4ac6b05f9579e1

@ -1,44 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs
DESCRIPTION="Standalone tool for generating man pages with a simple syntax"
HOMEPAGE="https://git.sr.ht/~sircmpwn/scdoc"
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://git.sr.ht/~sircmpwn/scdoc"
inherit git-r3
else
SRC_URI="https://git.sr.ht/~sircmpwn/scdoc/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 arm64 ~ppc64 x86"
fi
LICENSE="MIT"
SLOT="0"
src_prepare() {
default
sed -e 's/-Werror//' \
-i Makefile || die 'Failed to patch Makefile'
}
src_compile() {
local MY_HS="./scdoc"
if tc-is-cross-compiler; then
tc-export_build_env
MY_HS="./hostscdoc"
emake scdoc HOST_SCDOC="./hostscdoc" OUTDIR="${S}/.build.host" CC="$(tc-getBUILD_CC)" \
CFLAGS="${BUILD_CFLAGS} -DVERSION='\"${PV}\"'" LDFLAGS="${BUILD_LDFLAGS}"
mv scdoc hostscdoc || die 'Failed to rename host scdoc'
fi
emake CC="$(tc-getCC)" LDFLAGS="${LDFLAGS}" PREFIX="${EPREFIX}/usr" HOST_SCDOC="${MY_HS}"
}
src_install() {
emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" HOST_SCDOC="${MY_HS}" \
PCDIR="${ED}/usr/$(get_libdir)/pkgconfig" install
}

@ -1,44 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs
DESCRIPTION="Standalone tool for generating man pages with a simple syntax"
HOMEPAGE="https://git.sr.ht/~sircmpwn/scdoc"
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://git.sr.ht/~sircmpwn/scdoc"
inherit git-r3
else
SRC_URI="https://git.sr.ht/~sircmpwn/scdoc/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 arm64 ~ppc64 x86"
fi
LICENSE="MIT"
SLOT="0"
src_prepare() {
default
sed -e 's/-Werror//' \
-i Makefile || die 'Failed to patch Makefile'
}
src_compile() {
local MY_HS="./scdoc"
if tc-is-cross-compiler; then
tc-export_build_env
MY_HS="./hostscdoc"
emake scdoc HOST_SCDOC="./hostscdoc" OUTDIR="${S}/.build.host" CC="$(tc-getBUILD_CC)" \
CFLAGS="${BUILD_CFLAGS} -DVERSION='\"${PV}\"'" LDFLAGS="${BUILD_LDFLAGS}"
mv scdoc hostscdoc || die 'Failed to rename host scdoc'
fi
emake CC="$(tc-getCC)" LDFLAGS="${LDFLAGS}" PREFIX="${EPREFIX}/usr" HOST_SCDOC="${MY_HS}"
}
src_install() {
emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" HOST_SCDOC="${MY_HS}" \
PCDIR="${ED}/usr/$(get_libdir)/pkgconfig" install
}

Binary file not shown.

@ -1,9 +1,13 @@
AUX eigen-3.3.7-gentoo-cmake.patch 910 BLAKE2B 9cad2b9c54fb1299dfe45f9a94a427d1c7980fa0e5372db69465ccf964e7294213ae459e200a39f2721849df94a8433febcfb225813af3b43bc204b0edd3d64c SHA512 b8c4701f22c483078fb7d25df60c8f002f47573ec434a309b1a3739aecc1c51f79852b06f46c1ed9ae4cbec0e7d70aaabd06bc59e561c19d81b05388d3cedc61
AUX eigen-3.3.8-no-error-counting-in-openmp-parallelize_gemm.patch 2382 BLAKE2B 99d69381ebb3ecf8b097eef69916bde88ab5cec075df623a46537281b37059876ce39e687de4ca441ebe6459c66438f3282d051d0e85b0574df98205be8cf6d0 SHA512 26cdf877d4d3378b322cc08c0430b0628a07279a030732661ba4acb85d6c835956c99474fc4587a170d11437ca6715e56d8eaabb625a1eba7c46ce4d6e4d66f9
AUX eigen-3.3.9-disable-cholmod_support.patch 655 BLAKE2B 437de3e3bc52df313598c07d3c7c9750dba2750c1975e451c7748dfa8dcb9f3762dcb110334690b9c46fa06453e3d43dde578e6ac4ae49c4cb600e259996e85c SHA512 3e09aeb9bb9ff3538f46a5a41108744886b3541f120d646b69d3b3c49960c370704e07f1a3ac5de92d53224fe5063c02617d1b4a14ba8688039300cd7bb48dee
AUX eigen-3.3.9-max-macro.patch 476 BLAKE2B aa2e810a7be5a934a8bf5844b7e24633ab8f6b6a58388d6d9cb9b4b925f68311443f79cb3f94c8c50adc14f2165530c43b735abc4aa21340868d9330c1e9b4fa SHA512 ad8d10c90136188ffda547b8d8781e9d26bc43d1dba7e9c3ff12f8a73725d1b331dd47bccdd331f998a0b03251eb2e3373a8cb39284f82c4bc63a5a703f21a46
DIST eigen-3.3.7-gitlab.tar.bz2 1663474 BLAKE2B 70c2f6305ca205d62755cf5e90961088938b8daf56b7cc27abf52f0731064858ada523009d6bf5f014e24b34ceeafe59f918c385d12ccfe249ddb675e13d37a8 SHA512 ea3f1570de3be9ec230d2fbd0f2ae246bf5fd13da79835bf546eb31524796f26f9f633ee779f77942b370a8d540c5cbbd8dd033ccec53a44b692c7e407d6266f
DIST eigen-3.3.7.tar.bz2 1665168 BLAKE2B 544d35d1c7a4125affa094c6aa372c2aeca4e99bc60c496ff393d538c1c467b454491a772121450e3a1a43a582d073b4b7584918354d0b9175121fde88947c4b SHA512 c12bfd034d0a1112bf2df3f773ad98f36b2b53fbbfceac5f143ee1793322746fb8a6546d7db7da2a1000da6a535bd8cea0c4125b549afc90a6570743b02dcf3d
DIST eigen-3.3.8.tar.gz 2141903 BLAKE2B c33e699ba08338e7b9b215c9466e161229164ed3c466ce3d760c6917749af33c0414c3bc4bbdd216e3466e69ece8a38ca8beb78b7e0f1609894df6bb4a7fcca3 SHA512 5b4b5985b0294e07b3ed1155720cbbfea322fe9ccad0fc8b0a10060b136a9169a15d5b9cb7a434470cadd45dff0a43049edc20d2e1070005481a120212edc355
DIST eigen-3.3.9.tar.gz 2142379 BLAKE2B 437dc190fdf7a416d0a5cf81703ef4cc73c195f0f3e7c853e0ab38cf904608ddd4485cc4e15eb0cd5e3c401276f270f3c86f538f205cc91b8c83e131d1bc916d SHA512 16244cc89f2e1879543232b965cbf653b3ccf10e967c8c437a41e27d8320392bdf584d8c24b8a97406ab7d1481d5154da74e0702ec1334ae6a46de83f4573a46
EBUILD eigen-3.3.7-r1.ebuild 2251 BLAKE2B d8470d733ed8c1762e6759e28f96c7559e08d2bec7a80590bb504dcabbbf3e262d655c4bce660e7f6611b6f75095125b9ddb62229d46a535343e6343b257912a SHA512 f839c91a430acfb91c641575eaa9e375e227a8dfc19d0600015819955efb25ea148ff42614b9fbb39129e22038d6711fbf55f4e3cc67fa087a6dc628dc89e1c7
EBUILD eigen-3.3.7.ebuild 2432 BLAKE2B 2312d5d606907923882c74f4842128d95f9fa25eff68ab7217a58131c2fab11f42d8e1658129f29a7dbc68d3ab42510f6289ff1fe9ec7987596f691aebb67fd6 SHA512 e411a3a4c08776dc667d2145e52b23225d88b6bc9e6b36e664392fc26bd34195fcfcf2b54d0b20dec4ad8597f6e262d4dd7671513ab3581b10d0a16ed2713701
EBUILD eigen-3.3.8-r1.ebuild 2292 BLAKE2B ec49dbace8c35444eb8a823270845eca371973500d187d91dbc897329fbe295c0ffdd5bc566301a51b1cc1ac26d51618762fd41c2d958ab4d7d813860df7ad45 SHA512 1aa8b8db7450a986fd3df736de11f7b1060523e30173d0240dc5bbdf18db0cbaf6b5657f2517e8dcdf4dd34b55efba88b3e51686c145b7c0a97502424be2aab8
EBUILD eigen-3.3.9.ebuild 2514 BLAKE2B 4885159b7021201a54b909c69ed51801aa219d564f2b64387ced79dee1982e9d74dfa71774f8782e9cf7636d37bdd76a46e392a5d5fe286d939576d229d25857 SHA512 4ade209f6e21cf78193704130fdddf171a3b456e98a0622e58d0397986d900d9ef349b0522391766f795f836317fa18b7dfe021241e4c9d8e4b81235ccf71906
MISC metadata.xml 945 BLAKE2B 11864f5eb57e7a8ecfa9d1869536fbfbd9fcb24bc965edad51ec5013bea87a48d63c1b6427b5bffe26191de7e24b950a1c7ad1f0a801fed6b77a41bad4786334 SHA512 99fe52d30c344b957a76a7f6add1dd4251c606f47befa6f517fa50cbd8ba1ef325e66051ff799093cef8281bf1099709e86d3f3a896b078267c665ad68063203

@ -0,0 +1,107 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
FORTRAN_NEEDED="test"
inherit cmake cuda fortran-2
DESCRIPTION="C++ template library for linear algebra"
HOMEPAGE="http://eigen.tuxfamily.org/index.php?title=Main_Page"
SRC_URI="https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
LICENSE="MPL-2.0"
SLOT="3"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
IUSE="cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_ppc_vsx cuda debug doc openmp test" #zvector
RESTRICT="!test? ( test )"
BDEPEND="
doc? (
app-doc/doxygen[dot]
dev-texlive/texlive-bibtexextra
dev-texlive/texlive-fontsextra
dev-texlive/texlive-fontutils
dev-texlive/texlive-latex
dev-texlive/texlive-latexextra
)
test? ( virtual/pkgconfig )
"
DEPEND="
cuda? ( dev-util/nvidia-cuda-toolkit )
test? (
dev-libs/gmp:0
dev-libs/mpfr:0
media-libs/freeglut
media-libs/glew
sci-libs/adolc[sparse]
sci-libs/cholmod
sci-libs/fftw:3.0
sci-libs/pastix
sci-libs/scotch
sci-libs/spqr
sci-libs/superlu
sci-libs/umfpack
virtual/opengl
)
"
# Missing:
# METIS-5
# GOOGLEHASH
PATCHES=(
"${FILESDIR}"/${PN}-3.3.7-gentoo-cmake.patch
"${FILESDIR}"/${PN}-3.3.9-max-macro.patch
# disable the cholmod tests, they always fail
"${FILESDIR}"/${PN}-3.3.9-disable-cholmod_support.patch
)
src_prepare() {
cmake_src_prepare
cmake_comment_add_subdirectory demos
if ! use test; then
sed -e "/add_subdirectory(test/s/^/#DONOTCOMPILE /g" \
-e "/add_subdirectory(blas/s/^/#DONOTCOMPILE /g" \
-e "/add_subdirectory(lapack/s/^/#DONOTCOMPILE /g" \
-i CMakeLists.txt || die
fi
use cuda && cuda_src_prepare
}
src_configure() {
local mycmakeargs=(
-DCMAKEPACKAGE_INSTALL_DIR=$(get_libdir)/cmake/${PN}${SLOT}
)
use test && mycmakeargs+=(
# the OpenGL testsuite is extremely brittle, bug #712808
-DEIGEN_TEST_NO_OPENGL=ON
-DEIGEN_TEST_CXX11=ON
-DEIGEN_TEST_NOQT=ON
-DEIGEN_TEST_ALTIVEC=$(usex cpu_flags_ppc_altivec)
-DEIGEN_TEST_CUDA=$(usex cuda)
-DEIGEN_TEST_OPENMP=$(usex openmp)
-DEIGEN_TEST_NEON64=$(usex cpu_flags_arm_neon)
-DEIGEN_TEST_VSX=$(usex cpu_flags_ppc_vsx)
)
cmake_src_configure
}
src_compile() {
cmake_src_compile
if use doc; then
cmake_src_compile doc
HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
fi
if use test; then
cmake_src_compile blas
cmake_src_compile buildtests
# tests generate random data, which
# obviously fails for some seeds
export EIGEN_SEED=712808
fi
}

@ -0,0 +1,20 @@
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -46,16 +46,7 @@
set(SPARSE_LIBS " ")
-find_package(Cholmod)
-if(CHOLMOD_FOUND)
- add_definitions("-DEIGEN_CHOLMOD_SUPPORT")
- include_directories(${CHOLMOD_INCLUDES})
- set(SPARSE_LIBS ${SPARSE_LIBS} ${CHOLMOD_LIBRARIES} ${EIGEN_BLAS_LIBRARIES} ${EIGEN_LAPACK_LIBRARIES})
- set(CHOLMOD_ALL_LIBS ${CHOLMOD_LIBRARIES} ${EIGEN_BLAS_LIBRARIES} ${EIGEN_LAPACK_LIBRARIES})
- ei_add_property(EIGEN_TESTED_BACKENDS "Cholmod, ")
-else()
- ei_add_property(EIGEN_MISSING_BACKENDS "Cholmod, ")
-endif()
+ei_add_property(EIGEN_MISSING_BACKENDS "Cholmod, ")
find_package(Umfpack)
if(UMFPACK_FOUND)

@ -0,0 +1,17 @@
--- a/unsupported/test/forward_adolc.cpp
+++ b/unsupported/test/forward_adolc.cpp
@@ -7,12 +7,13 @@
// Public License v. 2.0. If a copy of the MPL was not distributed
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#include "main.h"
#include <Eigen/Dense>
#define NUMBER_DIRECTIONS 16
#include <unsupported/Eigen/AdolcForward>
+#include "main.h"
+
template<typename Vector>
EIGEN_DONT_INLINE typename Vector::Scalar foo(const Vector& p)
{

Binary file not shown.

@ -1,5 +1,8 @@
AUX init.d_rpi-eeprom-update-1 394 BLAKE2B 4a42ba2bca9f1cc646f2b39f33f1752a34b62ee01234a595d7d11c32507b92d2cb6909d739f4deda9381222596278d5e7e4faab60933f43d01a4be0df2f0f3a7 SHA512 1a88b1e73b2a40f644e1b37cc89a1a32d8ef25d0e09ee8b7dc005f0a834ec20a66e029a0a6a7d7d4e8a3066593bb277800a464783c2bf2e5923a71d4416b5eea
DIST rpi-eeprom_10.2-1.debian.tar.xz 7360 BLAKE2B e7959c4de4f3675632f0897b6f8abc811c80daa102ad3fcca672a0e0f9ce4b4da80fd616de7aa8896f0f5fe889a10a52d32eba34627858a173186292175f3bf9 SHA512 cf401c5f761fc8c5b463630d192c8af9da2ae2e55e178857d9c09198437f162f96af23836d20adda6054243c6b613b7cc5c90a70975b96bad574dc3b328caa22
DIST rpi-eeprom_10.2.orig.tar.gz 7415652 BLAKE2B b1f56263c0037b2ba3bac2aecd9b5736736cf599bc68a743c065c853a20f56f18984816fdfb402bb499c3aa911dbe72376cec4647d87406cce2f4328b04cc2b1 SHA512 ea76a157ed57984fb0667e9171e3fbf7dba180e014faa9352b0c1904531dca9528b0e3204645a4af2b550670a52354b6b1be6af27e190d4523d8044f3349aa73
DIST rpi-eeprom_10.3-1.debian.tar.xz 10188 BLAKE2B 284a5465f2b5bc28c95135b8869218e83cbea9d0667b165de954f5c73549dfc190ddc838d956eec4c569c579e95ffc157054c6ed4bbd45e8ae88f786675cb164 SHA512 ead6b6c51d03493479c242e757edfc33bfdba4627f7501d90d0a181e8adc68f1503e0dac900b9b253a7286523f84d0e9afd8460d72f30b3ee8ee75b2f76811ab
DIST rpi-eeprom_10.3.orig.tar.gz 7635402 BLAKE2B 3153eda08eada4c9e4f05d7a68ac4661413591314c4980e16ee876d49e756e2e13a101765b579adbe51e0e3b88cdfe419b71a58da858250781e0f292220dc397 SHA512 ea5a6ae47be5052b4793161d891a1e3a72dda951c95f15797d7baf68d475fcec1250638e4c43a32578ceef10563ebce052e746bc8fc60f8cf8d90780d5a7e8a7
EBUILD rpi-eeprom-10.2_p1.ebuild 2991 BLAKE2B bf77188c5c04b9db3a6d34474b8fc4cab9874eaef84011818dbd84532d8978eabdbde0264a27bad30425062e723061558b65bf0361189b25b4040435e2774108 SHA512 ababceb54335943aceb1ce2d99aa39b741252d9dd094652f467ace73b3bfd4a4acb039d859ef864ef6ae8827d4fb6f695206362d925f404a56be9d957d3a8d26
EBUILD rpi-eeprom-10.3_p1.ebuild 2992 BLAKE2B bbfb9fc1bc996fe9b1f20fcbcdcfdae5c2e18845f50d163a2c5f127885d98a70724b94cd0f45e1e502799cca8a5a2a2d929d287486bee7bd6d134e80c47a232a SHA512 ecc9382bb1aa8988a039e3bdf119d71aa19c0f33333bd5a02acee0b9c5e8635dc00f55e7a49917f44d370b7602a35683c3a0eeb4decbf176bd9ede03c5c6d92d
MISC metadata.xml 566 BLAKE2B cb5076ad252b4c305c8116d6a763c954ad939b2326519db5102bf67f50b8eb7f6713df5173190771fd30caf29762911c5a0da3f1b4cebd74f845b474df9073f8 SHA512 9a82fc89ffff553b2de5037e26151a4da5a54fc13203781d7e6e7048f6e3014a2530c55f6f5d1a73c30e8efdacb22c8d1a76185c1e9ca6dc384f98f86c7dcccc

@ -0,0 +1,93 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8,9} )
inherit python-r1 systemd
DESCRIPTION="Updater for Raspberry Pi 4 bootloader and the VL805 USB controller"
HOMEPAGE="https://github.com/raspberrypi/rpi-eeprom/"
MY_P="${PN}-$(ver_cut 1-2)"
MY_BASE_URL="https://archive.raspberrypi.org/debian/pool/main/r/${PN}/${PN}_$(ver_cut 1-2)"
SRC_URI="${MY_BASE_URL}-$(ver_cut 4).debian.tar.xz
${MY_BASE_URL}.orig.tar.gz"
S="${WORKDIR}"
SLOT="0"
LICENSE="BSD rpi-eeprom"
KEYWORDS="~arm ~arm64"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
BDEPEND="sys-apps/help2man"
DEPEND="${PYTHON_DEPS}"
RDEPEND="${PYTHON_DEPS}
sys-apps/flashrom
|| (
>=media-libs/raspberrypi-userland-0_pre20201022
>=media-libs/raspberrypi-userland-bin-1.20201022
)"
src_prepare() {
default
sed -i \
-e 's:/etc/default/rpi-eeprom-update:/etc/conf.d/rpi-eeprom-update:' \
"${MY_P}/rpi-eeprom-update" || die "Failed sed on rpi-eeprom-update"
sed -i \
-e 's:/usr/bin/rpi-eeprom-update:/usr/sbin/rpi-eeprom-update:' \
"debian/rpi-eeprom.rpi-eeprom-update.service" || die "Failed sed on rpi-eeprom.rpi-eeprom-update.service"
}
src_install() {
pushd "${MY_P}" 1>/dev/null || die "Cannot change into directory ${MY_P}"
python_scriptinto /usr/sbin
python_foreach_impl python_newscript rpi-eeprom-config rpi-eeprom-config
dosbin rpi-eeprom-update
keepdir /var/lib/raspberrypi/bootloader/backup
for dir in critical stable beta; do
insinto /lib/firmware/raspberrypi/bootloader
doins -r firmware/${dir}
done
dodoc firmware/release-notes.md
help2man -N \
--version-string="${PV}" --help-option="-h" \
--name="Bootloader EEPROM configuration tool for the Raspberry Pi 4B" \
--output=rpi-eeprom-config.1 ./rpi-eeprom-config || die "Failed to create manpage for rpi-eeprom-config"
help2man -N \
--version-string="${PV}" --help-option="-h" \
--name="Checks whether the Raspberry Pi bootloader EEPROM is \
up-to-date and updates the EEPROM" \
--output=rpi-eeprom-update.1 ./rpi-eeprom-update || die "Failed to create manpage for rpi-eeprom-update"
doman rpi-eeprom-update.1 rpi-eeprom-config.1
newconfd rpi-eeprom-update-default rpi-eeprom-update
popd 1>/dev/null || die
pushd debian 1>/dev/null || die "Cannot change into directory debian"
systemd_newunit rpi-eeprom.rpi-eeprom-update.service rpi-eeprom-update.service
newdoc changelog changelog.Debian
popd 1>/dev/null || die
newinitd "${FILESDIR}/init.d_rpi-eeprom-update-1" "rpi-eeprom-update"
}
pkg_postinst() {
elog 'To have rpi-eeprom-update run at each startup, enable and start either'
elog '/etc/init.d/rpi-eeprom-update (for openrc users)'
elog 'or'
elog 'rpi-eeprom-update.service (for systemd users)'
elog '/etc/conf.d/rpi-eeprom-update contains the configuration.'
elog 'FIRMWARE_RELEASE_STATUS="critical|stable|beta" determines'
elog 'which release track you get. "critical" is recommended and the default.'
}

Binary file not shown.

@ -1,3 +1,3 @@
DIST comonad-5.0.6.tar.gz 18154 BLAKE2B 4654a76ccc51c1cb1f7a96db54dd211148b8afcada19d0153356f203ea93cd0b914f6771f4407f5a81e312a7060cf11d9720a9eb96760b35c38567a34ac1a44a SHA512 0b7fc727a2b972203d1651049a4f4c371a8f134d64d36409d60fbc4d11b7eb9650c79cf917abaa3f66084d7c5e9f32b288862a5e93c3d93c16c11533a446cfa5
EBUILD comonad-5.0.6.ebuild 1303 BLAKE2B 0a561e6b58aef3d9c3ad4371a07b61a2de76bc8b4016a28b5f2b921ddcb8933b0eb9be5cfc2d911e5fa424e94a29b360eb1a4143d28d2425a00830f435639ae0 SHA512 c07f01b14525fae0b2678a6a6601e0779c3a14179a2db15b0661566bf4c72ea5618c279149c6aea57b2803cddf9d9428e537f78e1b4fb153ff4d268d86a83794
MISC metadata.xml 971 BLAKE2B 7c93a2a5f46470f854849bc69ce7bf737bb853f5fbe7d83a3a3bf93e7db484cc22917518fb6ad79e102464b96f41d3ad3d029a84f90da53a2eecb540669ccd04 SHA512 0d491b3a8aa8812e264f9f6946a939048560c20679cc10850b701c769ae3e37218d2075aed02bca11dcfd01030da8aeae5d884d0244448a56b2dd46abb560860
EBUILD comonad-5.0.6.ebuild 1265 BLAKE2B ef5a649e52c4f4d1c3d7dc25a6b794d1e9f5814491979295de8365c922dfb5d82c2ed7a67df8aca88e8712f9046b232c896c7116bf4e6119598d8a37225288f4 SHA512 ef888caa6299a34c5175fb228190b056eff5c28725981d095f47a185ee75308b497adbc1aaa1243e38a80a236213587ee2daf7d295ef53fbab0b6709cf62f534
MISC metadata.xml 328 BLAKE2B 4f5fd750a0fe1892c472f9f0f7214c231a7ee4f7c00f0d7caca409a296b606f3fb02799d501613c94454ff2b4178d964515e111d23b31d6a6c8e0791338d6a91 SHA512 991c06b275f0f832b1d23fd411a31870a2f235291f05d810d5b4baab2f0202d6de87179ad290172d91be1039efecba8cff132643cf5a0cee38ab0f4931504e37

@ -3,7 +3,8 @@
EAPI=7
# ebuild generated by hackport 0.6.1.9999
# ebuild generated by hackport 0.6.6.9999
#hackport: flags: +distributive,+containers
CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
inherit haskell-cabal
@ -15,25 +16,25 @@ SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~amd64 ~x86"
IUSE="+containers +distributive +test-doctests"
IUSE="+test-doctests"
RESTRICT=test # broken on USE=doc
RDEPEND=">=dev-haskell/semigroups-0.16.2:=[profile?] <dev-haskell/semigroups-1:=[profile?]
RDEPEND=">=dev-haskell/distributive-0.2.2:=[profile?] <dev-haskell/distributive-1:=[profile?]
>=dev-haskell/semigroups-0.16.2:=[profile?] <dev-haskell/semigroups-1:=[profile?]
>=dev-haskell/tagged-0.7:=[profile?] <dev-haskell/tagged-1:=[profile?]
>=dev-haskell/transformers-compat-0.3:=[profile?] <dev-haskell/transformers-compat-1:=[profile?]
>=dev-lang/ghc-7.8.2:=
distributive? ( >=dev-haskell/distributive-0.2.2:=[profile?] <dev-haskell/distributive-1:=[profile?] )
"
DEPEND="${RDEPEND}
>=dev-haskell/cabal-1.18.1.3
>=dev-haskell/cabal-doctest-1 <dev-haskell/cabal-doctest-1.1
test? ( test-doctests? ( >=dev-haskell/doctest-0.11.1 <dev-haskell/doctest-0.17 ) )
test? ( test-doctests? ( >=dev-haskell/doctest-0.11.1 <dev-haskell/doctest-0.18 ) )
"
src_configure() {
haskell-cabal_src_configure \
$(cabal_flag containers containers) \
$(cabal_flag distributive distributive) \
--flag=containers \
--flag=distributive \
$(cabal_flag test-doctests test-doctests)
}

@ -6,22 +6,6 @@
<name>Gentoo Haskell</name>
</maintainer>
<use>
<flag name="test-doctests">
Run the doctests test suite
</flag>
<flag name="containers">
You can disable the use of the `containers` package
using `-f-containers`. Disabing this is an unsupported configuration, but it
may be useful for accelerating builds in sandboxes for expert users.
</flag>
<flag name="distributive">
You can disable the use of the `distributive`
package using `-f-distributive`. Disabling this is an unsupported
configuration, but it may be useful for accelerating builds in sandboxes for
expert users. If disabled we will not supply instances of `Distributive`
</flag>
<flag name="test-doctests">Run the doctests test suite</flag>
</use>
<upstream>
<remote-id type="github">ekmett/comonad</remote-id>
</upstream>
</pkgmetadata>

@ -1,3 +1,3 @@
DIST wai-app-static-3.1.7.2.tar.gz 22843 BLAKE2B 777a25ac71c24fa850b214d18096396dd03809c125aab8197d2621f0943bfc6bbae0f8f25dbfe19dd93bb835dbb39487ee89689ca3ef49e8c9580f102d1a9df9 SHA512 e073d85efc201eab94b9c8be4e40ee71567d07ed2e2907504a946477211bc21aaf2250213cac67525ae58be499b164b09880600c0a6f62b0b1742fb9d730d6d9
EBUILD wai-app-static-3.1.7.2.ebuild 1616 BLAKE2B 16d968fa7541e7c68c3465f15532cde6ceecd27da35204248849663e168842a7dee493a555f12b94d07b1e7418842bf4e6ef6f0093debad16ff95d7c062b6299 SHA512 2907be994ab62a5766ac69fd7733932ba60d56eda2c5a274cbfbba67a3a0d755a6a463f806695ef5164f3559cc730efb9fe263340262c50d722dbf820e8d789c
EBUILD wai-app-static-3.1.7.2-r1.ebuild 1747 BLAKE2B 12ea8f91929c0f877b30a7984915d57d64c83765ed33f51a98fbd595b96a25e41fd7e31ed6d63458bd592341d28b2dcbdfc006ca0a6addeb0a224a4f06931afb SHA512 a51e76beaef1afbe0ad5087685f5f6a13d63cac3529288b14e68fddb54982f10c02d45aa303e924da9f3088cdeac67878eb207a5e4d95010a377084e163af120
MISC metadata.xml 310 BLAKE2B 81a54a34d953f4bfefd6895c26a9cfc2593fa72b16f32729541f954d55a01625dc917f3749b0a8abdc9b3b19e457ecbec6e8216ae86ac5dc3f57a38c31f5230e SHA512 efe656ebadf198b9ea416e631fe032dbb2e65b8359fb3bce58196fa0451fdaab2cc4aba6167499dd643bc0a16eea896677e092667b3a01e3130f89bdddee8ee6

@ -31,7 +31,7 @@ RDEPEND=">=dev-haskell/blaze-html-0.5:=[profile?]
>=dev-haskell/unix-compat-0.2:=[profile?]
>=dev-haskell/unordered-containers-0.2:=[profile?]
>=dev-haskell/wai-3.0:=[profile?] <dev-haskell/wai-3.3:=[profile?]
>=dev-haskell/wai-extra-3.0:=[profile?] <dev-haskell/wai-extra-3.1:=[profile?]
>=dev-haskell/wai-extra-3.0:=[profile?] <dev-haskell/wai-extra-3.2:=[profile?]
>=dev-haskell/warp-3.0.11:=[profile?] <dev-haskell/warp-3.4:=[profile?]
>=dev-haskell/zlib-0.5:=[profile?]
>=dev-lang/ghc-7.8.2:=
@ -44,6 +44,13 @@ DEPEND="${RDEPEND}
dev-haskell/temporary )
"
src_prepare() {
default
cabal_chdeps \
'wai-extra >= 3.0 && < 3.1' 'wai-extra >= 3.0'
}
src_configure() {
haskell-cabal_src_configure \
$(cabal_flag print print)

@ -1,3 +1,3 @@
DIST wai-extra-3.0.31.tar.gz 63975 BLAKE2B e705142e48bac00d13d9ec42ecc02a646a081e69a5996794db34bea77b193dccfe9de2f9b89518b234adf226cfc79765c1d8eabcf7c990494e0d206f6a8de080 SHA512 71635f9acc44ffd19b76d7f1a5e43fa079dffe6e447be1c9df4b491cf96c226346788eb773923cf702d44d4620f2a5e7478be1c625b4c2332b9bed7e6e5391d2
EBUILD wai-extra-3.0.31.ebuild 1799 BLAKE2B 80d9f43e1975417f11977858055777f174419ed2453820c00a9b14afa66f285f90e37cbf39a19c0475af69eaa1e61fffbaddc7669a8ed2d7a832e88a10469386 SHA512 32c4360cc58f24e55e448097f65d2cf91f79c6a02d8611583bcb71530f2a5e48c5e85dde4e59eab230ed23a152751497f45f176532d9d2258041ed6f0ef7d555
DIST wai-extra-3.1.4.1.tar.gz 67063 BLAKE2B d75f1425cf4c75596adb65c152c954a6005b085f3a290d7dea279a4417d85e359f6948fc8282cee63f2057b4dfe3e33b7a364667544c925582024e4255e71462 SHA512 c33b513bd6e627361007f285167235535ac4065e7198749c14d05cfcd89c5017b54896064c64ffdda9875d6363b684b9beed4098fdbefaba1058045ba3245af5
EBUILD wai-extra-3.1.4.1.ebuild 1808 BLAKE2B f6bfccf1117ac3eebf209d8407f6267b36a3c78d4a14b4b275380d69584d8ade001867c01a0e88dfaeb7c21ecd83071e1c405b64945ede056c970d4e810d768a SHA512 e3021edbb18578d73a4903d247924ced88e303f749fb824d454348c937be57a05e4a8553bfec943ca4c7577dce496b62e2ed7cdc9da4c6d32a632cfa888baf17
MISC metadata.xml 326 BLAKE2B 26be8d6c32c1cd0a7c0f608f5546ea3139adeef7aeb7e4bf22e2f944ab0571946e98b0239796a6956a6c169f026646dfa9fdebe71a6bec079c7ba6cd6fe175d9 SHA512 58194255acaf42f3f0d725291259a745219fedce1146c74a994ce413a6b7f34c186b036b14bacc753aab2585dd4957e2f4d5be9cd0af80f7ad07feceeed9bec5

@ -28,6 +28,7 @@ RDEPEND="dev-haskell/aeson:=[profile?]
>=dev-haskell/fast-logger-2.4.5:=[profile?]
>=dev-haskell/http-types-0.7:=[profile?]
dev-haskell/http2:=[profile?]
dev-haskell/hunit:=[profile?]
dev-haskell/iproute:=[profile?]
>=dev-haskell/network-2.6.1.0:=[profile?]
>=dev-haskell/old-locale-1.0.0.2:=[profile?] <dev-haskell/old-locale-1.1:=[profile?]
@ -41,13 +42,12 @@ RDEPEND="dev-haskell/aeson:=[profile?]
>=dev-haskell/wai-logger-2.3.2:=[profile?]
dev-haskell/word8:=[profile?]
dev-haskell/zlib:=[profile?]
>=dev-lang/ghc-7.10.1:=
>=dev-lang/ghc-8.2.1:=
examples? ( dev-haskell/warp:=[profile?] )
"
DEPEND="${RDEPEND}
>=dev-haskell/cabal-1.22.2.0
test? ( >=dev-haskell/hspec-1.3
dev-haskell/hunit )
>=dev-haskell/cabal-2.0.0.2
test? ( >=dev-haskell/hspec-1.3 )
"
src_configure() {

@ -1,3 +1,3 @@
DIST yesod-core-1.6.18.7.tar.gz 100141 BLAKE2B 0d00fffcc4371868f02ec5ec1fe4f5af15369f62b7bf88562e8c092b3988824cbbe26defd574f2514d23fca983f81cc951b75f564213f568d244069e352cc198 SHA512 fde155df74588d2eb9824e0f423b666228a1b681a83c4f30e194c8816667cd6e4fefb7cddcd66f6ff2ca745ad3ef8daee439a133b017d8583167b54a698a12a1
EBUILD yesod-core-1.6.18.7.ebuild 2259 BLAKE2B f0d07b0936656494a299188cb715cd1d81cc0a387733e5b84064302357ff9b3365df2ceeb5827ddce1aabc93bc0a134e4cc74a57affd6e1f30a91405f6ca0f0c SHA512 88014380c1addddb673fec2d076e94e4b30db63684e1d513e7a259d5624a5b9cef287037eec662dcaf3848d9196126d6494e17a2b117064284dd5a5a58e2bea0
DIST yesod-core-1.6.18.8.tar.gz 100016 BLAKE2B 117535cc875be850011b357ebf3bb89e6d854870cefe26e20001e70b93247d85a3bd190e2f889626819f8bc80211b2c64b5d8dac7e9606229ed07c03d8926c2e SHA512 1774281bf8de190995360bcf461adc46b65bac5fa2200aada0b511f73b3bc7bab8365fa4737b4de4723481f7b76c0cb440d68b118c15c46e3d455ea9126bffa7
EBUILD yesod-core-1.6.18.8.ebuild 2259 BLAKE2B f0d07b0936656494a299188cb715cd1d81cc0a387733e5b84064302357ff9b3365df2ceeb5827ddce1aabc93bc0a134e4cc74a57affd6e1f30a91405f6ca0f0c SHA512 88014380c1addddb673fec2d076e94e4b30db63684e1d513e7a259d5624a5b9cef287037eec662dcaf3848d9196126d6494e17a2b117064284dd5a5a58e2bea0
MISC metadata.xml 722 BLAKE2B 8f4f6d4c278f92f847046b4c85c35c78e2a114b17766bdb24e7b7f2b48a48f9b7aca69c4eac626dd27b5b3eda92b18f0cd11f2fd39db2f8c348f030ce1d5da07 SHA512 a0a229d4867993c1256e99c804f503bdb9461a11003b9f616d2f8985d700aaa6821949316faf5e18a202a05f802f34a0c42ea237a86cbbde076c6279d7be5135

Binary file not shown.

@ -13,7 +13,7 @@ DIST antlr-4.5.3.tar.gz 6760401 BLAKE2B d436b4a964c527e230912a0ba23146af19947857
EBUILD antlr-2.7.7-r7.ebuild 1087 BLAKE2B e866bec6a53c4476202468cdb009b266a3ef0748b5ed79c71e6baa2d30da07572804ebe59e332a569b2afdb97073268b0947e0747421140f792425bf61868152 SHA512 c06da2c925aae9677b26a216f3e3fc297bc40212f7255ad7b19b303895ef13a0905588b02b3f9c2521b03b82092f6692d28517bdabcefcfaf7d87e32b88fa16c
EBUILD antlr-2.7.7-r8.ebuild 1098 BLAKE2B 4ac646f7bac4b5ef9c614436eb39f0fbb83629ef2861e1875d0901aa48f28ad0d618ab3476be5efa2c4de8c31a7d0d6428ed99923f6d8e4025b6d12fd67d442f SHA512 92e22ad8ef1ca16072bf1d436779a868149bffcc2e9e5c1ca7b9c6ac3b10a0fceafd40f33ec2e0195c422174d9929abd50e5c3d17610a63c03adb6cb5033aa3b
EBUILD antlr-3.2.ebuild 3269 BLAKE2B 235e24e79fcc6548e1663f4ab04b28d990c9bf326ae6ba34a6360edb9ea85fba98aa150b0f191d7c98919fc8c96bf9ff003eaac44dbb12c5d22fc23bbf85cb35 SHA512 6baafe3168efbc63d11e36d719550a36b9c2c2d36c955d52502113142a7fa51b30928de00d2ac3cdb17669652966aa81427ed70f82e5abedb0569cd3dda46ffa
EBUILD antlr-3.5.2.ebuild 3028 BLAKE2B c446dcfab240b878e5d93a88f4cede8cf32c145f74522906d4291d17da93b1e4bbb4c23c7e86b68295d4a4ed1f22eba9610927b257e18ee0d629a8d76ae7102f SHA512 0b3611e506b785d8326e78602b439da96ff4db75ff72f723d34aec8196ba2356b7c03c4c71561e956fdb6d05e543ec03de1d7b16bcd7043660718d019b43705f
EBUILD antlr-3.5.2-r1.ebuild 3040 BLAKE2B 65aad4afa41608181e02aa61a43cc5b4cc9b5ed5131bf6a7ddd57ed7e3655514d2bbff5ec1343f8aba38788aff04ad25126d847c4f41daae63a089acb70e7f0a SHA512 f61b63f4907050c442a963ac35227714985e401b8dc0a6f8ccdaf4d29a3df0cf3e538774b1363ae765ca2d4aa5db199ecdb2841cd4b4eefc86ff9e92c95ebf0c
EBUILD antlr-4.5.1.ebuild 2478 BLAKE2B e36feaf0bf7eb33d4e5fcc7e1f9c498b937e037a5a72e2049eaab57269f09dc20cb7e9a5ddb57055611bb7e1aadeb91173129fda355351d3e26e12c4db245157 SHA512 51e8489bb173e237ba78be7bd9b3667a6c5522583d64ecf88b902b20006c089e4134bf278369a30f32507680ed1628321c672b06f4dacc7e9f89d0f1caa26b11
EBUILD antlr-4.5.3.ebuild 2488 BLAKE2B 04c6919146076e7340c99045b99ac44f0afa0bb46ed26e03f644498ebbcd3d925f6468eb019ebcce23eae0afa3e969a1558668e8939da23877cde5d249f7a99b SHA512 34671e7dda01baadec294a388dca769e6e05710a3522f61bd9beec931e57c5b9d627bf0beb36bca06aa25cc36af485ec0bec53144437712509f40128b9377439
MISC metadata.xml 313 BLAKE2B 211bde607161c54e23a30950b17cda11291e84a9f745a2c44c17c7c224ad8ef309786ec4952f094e90cc569d86e0186bd2fa426fc1de6718541e207be12c3fd0 SHA512 01f11b9e45bc3c331d445213704287f1f034087930d4b55cbde700a483dcb64260d4805a4c2ec3686a99b59f3225999409d499cb63a40b3d8278d8a2e6213f57

@ -1,7 +1,7 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
EAPI=7
inherit eutils java-pkg-2 java-pkg-simple
@ -18,21 +18,26 @@ RESTRICT="!test? ( test )"
CDEPEND="dev-java/stringtemplate:4"
RDEPEND="${CDEPEND}
>=virtual/jre-1.6"
>=virtual/jre-1.8"
DEPEND="${CDEPEND}
>=virtual/jdk-1.6
>=virtual/jdk-1.8
test? ( dev-java/junit:4 )"
S="${WORKDIR}/${PN}3-${PV}"
JAVA_GENTOO_CLASSPATH_EXTRA="${S}/${PN}-runtime.jar"
JAVA_GENTOO_CLASSPATH="stringtemplate-4"
PATCHES=(
"${FILESDIR}/${PV}-test-fixes.patch"
)
src_unpack() {
unpack ${P}.tar.gz
}
java_prepare() {
src_prepare() {
default
java-pkg_clean
# This requires StringTemplate v3 and is only needed for
@ -42,7 +47,6 @@ java_prepare() {
# Some tests have to be removed as a result.
rm -v tool/src/test/java/org/antlr/test/Test{RewriteTemplates,Templates}.java || die
epatch "${FILESDIR}/${PV}-test-fixes.patch"
# Some tests fail under Java 8 in ways that probably aren't limited
# to the tests. This is bad but upstream is never going to update

Binary file not shown.

@ -18,17 +18,17 @@ DIST php-7.4.12.tar.xz 10311980 BLAKE2B 11052d59881f84d4012fa993e5969abf52d44198
DIST php-7.4.13.tar.xz 10319848 BLAKE2B c1da97eb605f1fc2b36190bfe92feb1fd527f4aaf1483865561a08cf990e70445f5520c8abcea7d9c6482dc47e500507644e0cd2cc756cfa99adfec0359cd795 SHA512 3525f4fd4ea6d97ed75ed8360d2a851e8577c09247ae3c6eb7e7b43265ee418297d91c1022bf5bbb64d1eecdebbbc2e0f6d42b560f584a741b475db2c6897ea7
DIST php-7.4.9.tar.xz 10289560 BLAKE2B 0fd9d82539a46f7ce58857560f5aeb4be6dfe5f5a05f8b8c55c30d6000d19408b4ecc460c9135736298cdb8312ec958ab8358110b2b265bb8c185f80b1522dc6 SHA512 6179c2d867d6775d7f41785003c36d06ce620e7746ea7e6a4d275264e814a66d465776b47b04e2926ed1228cf58f2c15cdda74faf10372435c74ede7aeb79e18
DIST php-8.0.0.tar.xz 10726788 BLAKE2B 16c4aa075ba5dee6d47086323cd152b33dc7b62ac6b3ab6637ec386c1048e256a160d72e72cbc88450af1e84389042ebf2d644d3361c9a34879cc494d5b9b64f SHA512 65630940c95436f3e3ecb71b9f1ca15bb4118267dbda604ed1ee009d528c21a3ec21f48a15e4dd3529fe9cd2b354c211a7b4975b5de43e1f2afa6656cabe1fd0
EBUILD php-7.2.33.ebuild 22650 BLAKE2B 85d53142d43bcd67e568a7424e731a5a2a55872dfa5f5e3ec10673e527357d26d1986c4a61dbf049e17b5a5db7b09fef77424da713953fb3153338e68a79e200 SHA512 7f0454f2dba27d443c729663a338dd0d5c746b572a3ccccde3b19a54ce2cdecda9f98ce1df5ef5c7afede8726234de3c1e1c1fce65bee95ad97ca5ec621abe97
EBUILD php-7.2.34.ebuild 22650 BLAKE2B 85d53142d43bcd67e568a7424e731a5a2a55872dfa5f5e3ec10673e527357d26d1986c4a61dbf049e17b5a5db7b09fef77424da713953fb3153338e68a79e200 SHA512 7f0454f2dba27d443c729663a338dd0d5c746b572a3ccccde3b19a54ce2cdecda9f98ce1df5ef5c7afede8726234de3c1e1c1fce65bee95ad97ca5ec621abe97
EBUILD php-7.3.21.ebuild 22663 BLAKE2B 43f00a48372e83b81e10ddafd965d7aa3a2945c6858d75dc1fbcc4d07a51d22151b02d2e2e50cb91b1e398c77e93adf2eecaecf495453e8c15ae81a70ca323c2 SHA512 ebb57617c9e08b08b717a7458f79c246700aea64b9f407e5c52eede291c7d12a80eb4bedf50a2d7880f2cf73e36391f7db01a40c0622631d15bcdd2e0e8ab64f
EBUILD php-7.2.33.ebuild 22651 BLAKE2B 9431a6e26752b96101826946c969e4ac1a2a1c04b9b42ad7f2b8f4733d8e3ec0614b75dddb2a54c40868d76e7a9b3a46001dc0b2a5152ac540175b0875753603 SHA512 bb61083533a443fe07b76c30028a3b7b8657a7c51ece6003ebc44a5e53224a70e8cad6d82fadcd509ea1ae4e4383ddad1c8d7edea7f200c5d37e445a88913d41
EBUILD php-7.2.34.ebuild 22651 BLAKE2B 9431a6e26752b96101826946c969e4ac1a2a1c04b9b42ad7f2b8f4733d8e3ec0614b75dddb2a54c40868d76e7a9b3a46001dc0b2a5152ac540175b0875753603 SHA512 bb61083533a443fe07b76c30028a3b7b8657a7c51ece6003ebc44a5e53224a70e8cad6d82fadcd509ea1ae4e4383ddad1c8d7edea7f200c5d37e445a88913d41
EBUILD php-7.3.21.ebuild 22664 BLAKE2B 2191d27cc589cf5b0d85c33c3c81cddec0389719973c82b2665b4ae5be145e08c427fe4d59978ba07d04e3b3026f54c5471a51f20ce8ab02e55f4e6a269a3e47 SHA512 70a1783a530b13c38f1a9ecb8c381cd34ae9cad6124ff96cf7b28bdb97c447f133acbdd9bbe515b799eecfdc201d7d3524079a405fa989d07e7b9661916b374b
EBUILD php-7.3.22.ebuild 22671 BLAKE2B 9fbccafac097a447241ed68db51ecf147059b1b55c31c829c7c40e01657916d376801096d8e273a4157435f0b489f776240114160d50c9399d4795ed9f7018d7 SHA512 a9f5c18c1b4667fa1730801877872434a5c146c34941da1a3b6348c7ec1bfbf152041e128faf8d962f77db17e2f94f704bfc67db71838d3f6ac3dfb0a846d4d5
EBUILD php-7.3.23.ebuild 22663 BLAKE2B 43f00a48372e83b81e10ddafd965d7aa3a2945c6858d75dc1fbcc4d07a51d22151b02d2e2e50cb91b1e398c77e93adf2eecaecf495453e8c15ae81a70ca323c2 SHA512 ebb57617c9e08b08b717a7458f79c246700aea64b9f407e5c52eede291c7d12a80eb4bedf50a2d7880f2cf73e36391f7db01a40c0622631d15bcdd2e0e8ab64f
EBUILD php-7.3.23.ebuild 22664 BLAKE2B 2191d27cc589cf5b0d85c33c3c81cddec0389719973c82b2665b4ae5be145e08c427fe4d59978ba07d04e3b3026f54c5471a51f20ce8ab02e55f4e6a269a3e47 SHA512 70a1783a530b13c38f1a9ecb8c381cd34ae9cad6124ff96cf7b28bdb97c447f133acbdd9bbe515b799eecfdc201d7d3524079a405fa989d07e7b9661916b374b
EBUILD php-7.3.24.ebuild 22671 BLAKE2B 9fbccafac097a447241ed68db51ecf147059b1b55c31c829c7c40e01657916d376801096d8e273a4157435f0b489f776240114160d50c9399d4795ed9f7018d7 SHA512 a9f5c18c1b4667fa1730801877872434a5c146c34941da1a3b6348c7ec1bfbf152041e128faf8d962f77db17e2f94f704bfc67db71838d3f6ac3dfb0a846d4d5
EBUILD php-7.3.25.ebuild 22665 BLAKE2B 4b92afb683bb04d4c4b64065851c40a815947f2a64458b1979c97e51ed35c845488fe185d7b6498778b2d064a648e3bbc03a4e91d6636c42d4360b5684fd9a94 SHA512 132f96f206aa1cee9392b4b30093da343db03b1e38b1833f195fce217a4ac64b8558bc5e021987d25d66a656a49fa8682309df6c80f11d63c505adcc700feea2
EBUILD php-7.4.10.ebuild 21382 BLAKE2B 936caa37281c2b79d2d7550de422c32a0dbf41e2f1530aa5709dfd6a0d92f7c5c6b82ead5b14f27a314df5311dce7c726a6571ecdd9aa497812c0e9e71f397fe SHA512 380075433cbb7d639765fa6907c3006612901b051d48311cabd85d653b8e8105044f703a129b8d90bcfd48a29a8365de3053bad81d9561dafc5c5974d7420082
EBUILD php-7.4.11.ebuild 21374 BLAKE2B aeb27c63cff434dd9a735631bbeb29a2540546d2416aecdd636e2b6769070615ac148139a3891b708cf6528ac557080c7096dda95d75bfe3812495213126eef3 SHA512 2b67de7efc5dafefc1f95e9b7c22c60bca6b6c2c922857695a5c027929669b9a62068e19784a2059e28e91ff16ad0b47ee691785124bf99ead6dff12239fa4fd
EBUILD php-7.4.11.ebuild 21375 BLAKE2B 20a4c51fdc08852c87aa86a08b8f8f2928bff2054aebcf59c8b8afbfd70a7afda2cbddc5843f4bfdd2b922651e1867059dcd34c52d45467e29eb4416c99b58f6 SHA512 45b523ac3a47c481eb8fa5d8b812a90e186b5997fe2e192898970feefe9e6d3cb846f0324927175833d3949bc0427c545f48e0c2212155f62fc8ce00e5749acb
EBUILD php-7.4.12.ebuild 21382 BLAKE2B 936caa37281c2b79d2d7550de422c32a0dbf41e2f1530aa5709dfd6a0d92f7c5c6b82ead5b14f27a314df5311dce7c726a6571ecdd9aa497812c0e9e71f397fe SHA512 380075433cbb7d639765fa6907c3006612901b051d48311cabd85d653b8e8105044f703a129b8d90bcfd48a29a8365de3053bad81d9561dafc5c5974d7420082
EBUILD php-7.4.13.ebuild 21414 BLAKE2B 291a323943eb1d9c0b2e2cdca45dc490295838df2bcc66edcbb6669fc450aec7d5a6d9e69f43d6eecb71b441c218b159876919c2c9a2493431929bdbad3f9fe9 SHA512 f2c2d6bd1b317ba43c9877bf32925c76d9a9cd5bd1d0aea1f3a759c38ce2e6354f4517b5fe079f20f63bb9dd7af6b95a578bbbfe42f56e959c4f0bfdf48472e5
EBUILD php-7.4.9.ebuild 21374 BLAKE2B aeb27c63cff434dd9a735631bbeb29a2540546d2416aecdd636e2b6769070615ac148139a3891b708cf6528ac557080c7096dda95d75bfe3812495213126eef3 SHA512 2b67de7efc5dafefc1f95e9b7c22c60bca6b6c2c922857695a5c027929669b9a62068e19784a2059e28e91ff16ad0b47ee691785124bf99ead6dff12239fa4fd
EBUILD php-7.4.9.ebuild 21375 BLAKE2B 20a4c51fdc08852c87aa86a08b8f8f2928bff2054aebcf59c8b8afbfd70a7afda2cbddc5843f4bfdd2b922651e1867059dcd34c52d45467e29eb4416c99b58f6 SHA512 45b523ac3a47c481eb8fa5d8b812a90e186b5997fe2e192898970feefe9e6d3cb846f0324927175833d3949bc0427c545f48e0c2212155f62fc8ce00e5749acb
EBUILD php-8.0.0.ebuild 21276 BLAKE2B e58d02e2c685bd56435360a6c3801c1c6e1f7d27f9614cac40737efefc62e8e62c168556a7c139b7e3b49171f6f3d2f65dc9f0de77848362dc8be0a7af22517b SHA512 5f4a494f280fd5079d80ea27ea25b6bf14a4cfc33380cefbdfd9f5b92367eb734bcc7fcf0cd4bc75740113e73531449d77b0af1c748701034845cbf19aaf1be4
MISC metadata.xml 3216 BLAKE2B 6118c94f2ac3a2f283eb035cbbacb12343476b4ce22594a00cb7ebf063abb106a0ed5557d311127b8c1e2a53263103ded790cd12d20c6b410ab6f7d218d95ed8 SHA512 ffb0b46b30b1add0fc166e3afe1317e70041a0fe849d4c05ceee011c1b5e130fbde3b86eaf876a4c8a2d23fbd7824f95299642b4f60e129436befb00f4b124cc

@ -18,7 +18,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"

@ -18,7 +18,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"

@ -19,7 +19,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
S="${WORKDIR}/${PN}-${MY_PV}"

@ -19,7 +19,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
S="${WORKDIR}/${PN}-${MY_PV}"

@ -21,7 +21,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
S="${WORKDIR}/${PN}-${MY_PV}"

@ -21,7 +21,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
S="${WORKDIR}/${PN}-${MY_PV}"

@ -2,6 +2,7 @@ AUX pydoc.conf 169 BLAKE2B ce40bb3d5f858bd7a8d9ef5bf215a8ab592568a724f0e08aea219
AUX pydoc.init 600 BLAKE2B fb8775a6663483e5112ec283627610b746020d88494e772b92bb718a9493a52606e565c6c2fa4917a5cb963f166283d09883bd26903f2f3ced6c240d4e292a7f SHA512 9e71ad53486b6882a8441b24225c602195ee33d29dd1b60df27febbc6b752e79929be356152a489f893dcfb11f9c066b999787bc27a8ac61062c86e67a69e87a
DIST Python-2.7.18.tar.xz 12854736 BLAKE2B 060a621c91dd8e3d321aec99d44c17aa67381998256a1a002d316b38288349884d5960de35c49352d03129ed0bae599e641ec2225898158ebce50a7a2fd74d2c SHA512 a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c
DIST Python-3.10.0a1.tar.xz 18571152 BLAKE2B d74e467dfce1a0e3374377fc36865f1059e3810f67492608bbcfdb6880fc9a748ed19d1e3c4617a9218c842e8e9cb4119845eccb6848acae9b4af389cbbdb43a SHA512 eb1a0f6dd023efe67cfc2c833b0a7d390765d288e4da7aae932ba66b970d63ad377dbe48ddf0548c5cca5334a3aa1c7e92f972b68c54e4238ea1f3610adb8910
DIST Python-3.10.0a3.tar.xz 18676916 BLAKE2B 86c8e3cd5d9658a2b1027558eda42294807173cac39010737dba6a0bf75a3a7211297cb79061085ab0cea52eaaba521140ff67c3b6edeebd677429191f4435b5 SHA512 a361c04081e9bd7e740c3311d92ec1428f12c589613ab39ed2bb1ac5aa20e4d8bc6d6e76eefc20edd459ecf8be1720f3985126be38407fcfb41f5a6efcea3998
DIST Python-3.6.11.tar.xz 17213036 BLAKE2B 4dae9d9c5eb7e97a8990b0b5739d40ba8a85081c7e03adc22a3305e713d39b3a98ff66c17b395b9d45355e124307eed87803211378d14360e8b3455f7146a1ba SHA512 c76969a6602e095641ba5fd0999a47cf0187eb26559ba9a6e80fe401b8928f6cd9eabd963f615f7c667e48f56603f2508d2b5692c83ea8da1e21292131fb11d6
DIST Python-3.6.12.tar.xz 17202980 BLAKE2B c8d22e4d57bcaffe77cd902cda3a473e73adf2b74ab104c23b4d846f19632a24cc0c478af84079b16d784bd1c0956824c06c1f6134fd24f54e58aaab0fe96bb6 SHA512 1462801f3f6626a853097d34ccdca9838c4c5bd81ecc3abc751003f5f2f8d36eecdaa4130ef4218de351c5586093c11669639a34492668fbc5a2a4a241f4a070
DIST Python-3.7.8.tar.xz 17399552 BLAKE2B 4bf6c47b1132b6d31a79232002c4d38e2cd123ac05d52b21d6bfba5a4e19ec9130b8df8698d5ce6627e4297c4cf756643f036e694e36364c235306c72ef34bf8 SHA512 d2ba299e3cf8ed0f8fed9317f42bcd8d9af7e0e6175939b4be1be289c1658418bed17899e2608d762ffb15575021956cf6bf2054d7863c04b3bd7642f5b8c7ea
@ -9,25 +10,40 @@ DIST Python-3.7.9.tar.xz 17389636 BLAKE2B 484833aa2aa4e29051a02969294f72099ff6f1
DIST Python-3.8.4.tar.xz 18020412 BLAKE2B cfcfb293c413b25fc3ca48116cf8ffaba7bee18e9af9accf26be9b4373a0c62dd8e9da70e5a8a38ba6da4d1afbdbd589ae5ea4b618b65130ae061698b445908c SHA512 37a36d014a8372742be9d0bd9dd3a275e100dc21b1515c145bc62425d4d157327b6e63ad99bc888c0b36c1da4c05676c40eb086e75072d1906e3210ec3043dcb
DIST Python-3.8.5.tar.xz 18019640 BLAKE2B bb3e0566afe28759e4ab129ad0986a0fc5103514f2e2b22ff4aa3973c3173ebdd24d4267fbaf903841814a611fd9ea122673e5a1918934366e5c0efaef9d7517 SHA512 460cee65d7df7150694590575502d7f22e548ebfc99c8f8b363eef8bf30ee72e58d8ffacb1d607824f877f880eb9fd6775a508388029583e1e1df3380f3f9587
DIST Python-3.8.6.tar.xz 18233864 BLAKE2B c8a8ef6055e344dda30eb808804cfa62016b4f840257cffd5a495e5932f5696e50579d49b8181a487c9cd4a89bdb95656e80981039783a21d20f7980aa2c9883 SHA512 22faec84f6e172e1ac7c6bd6fd37e9b6ae4afc91cf5136aa8cac8ebbed8d18793f9196e8749b8ccc43447cb6c41cb450f65ea72dd363c06dfaeb14e0455f5560
DIST Python-3.8.7rc1.tar.xz 18258688 BLAKE2B cd18abf3a2f97856581735fc6ab98882c3839edd84f736b2f681a227694319f410154201e5e09938ec45ba00b69a593737da22263560080da72625f8611f14c6 SHA512 0c42622433b968dc0943894bff6e90603bdfc4e49ab4373e2686a158e1d4b3450e60aa16d8203ce3d0e0e8bb0ebcaad281ccd7eb03b355eeeb7c811a4cd799ec
DIST Python-3.9.0.tar.xz 18866140 BLAKE2B 8e12b64e187a65461473ac3b281dc489f0abac586e0755f6dbeceb236b34bdc008085eeac9ee1a19d76f5ec6a2fbda623985454c9d0164c4888a97b8cd940034 SHA512 b141039c9701a8cb0d15cd11a279153077524af4d0599e7d2c7279d4c18d05fda06b33ef82342d875de996c7117b7dc6eb154dc3669d38a1efa99801aeec6c5e
DIST Python-3.9.1.tar.xz 18897104 BLAKE2B bcbce176510e8e7c6ba6070588bedc52121c21c5271f59b3d629dfb542c51ee62622b2ca53a6e2041f1a51b2d089368cc4de9bb749e8ebad9a2c4eb4de83538e SHA512 b90029d6825751685983e9dcf0e0ec9e46f18e6c7d37b0dd7a245a94316f8c0090308ad7c2b2b49ed2514b0b909177231dd5bcad03031bf4624e37136fcf8019
DIST python-gentoo-patches-2.7.18-r3.tar.xz 18856 BLAKE2B e35b3d847dad114057b7dab7615941b4879f3531aff1d23bced22da2d445cdec77cdd416566611ca01a3d39f30f16ef224f835f35ca12a301024d7a9fb6a507b SHA512 abb102223555535d5214fa91fd4bb3d1241050c86027af1612a9bd43fea2721e184587e5b784e5af9cbf563b8fec5a25cd07dc5fa72d762228734713176cfcbd
DIST python-gentoo-patches-2.7.18-r4.tar.xz 21352 BLAKE2B d322f5afd63813d7c9280c75f942bde75ee19793e121d0406c4f229ead53324bf3996342eed9a6c1aa474894afe7f2dd70aec38aee8042993a5274abc288fd31 SHA512 1cb0be8e79d0c6c55fcbe3f3dabf8b760aea0e60d888ea39d3e69de03b55738c50b2cca06586c1cd2896956f5764eefd6d3f9fbf2de0d0ddfd8aab86837976b6
DIST python-gentoo-patches-3.10.0a1.tar.xz 8592 BLAKE2B 066fe89725469649a88a0b0c9f62d7d1380feb704ed12c696871cd595e4e920f23b54a2c771e15b5d2345dcdab21694365ef9b29e93f552f74d13642ebc59200 SHA512 e86df9e08ec7306f6457b5e3490171966022964fb700046587088bceb3d8977a45fe7e944f7dd39ad473000654f69f495b8c67edebb13bc12000b32716845533
DIST python-gentoo-patches-3.6.11-r3.tar.xz 14064 BLAKE2B 416780c15ee12cfc06bfd1397d510dd42fea61abcaafd9cf54f27d843342debf0caa93c9700686feb14f04239ad4ea8f20ce8736029638abe7d7b9c57b9d659d SHA512 de6a4a5bec89e6149b85b383991c99bd9460a8f59f52a700d54edd0154557727ccc79daaa90336dff434b222657c3f28dda1228d2d474002d0a28f31c9ed0b10
DIST python-gentoo-patches-3.6.12-r1.tar.xz 16540 BLAKE2B 8204b6f25e1f7c6fef024933d54bfa6085158ac624a6e5a8d51576da2047b6db791be5d071c483fdec5c033b8fa8ee3d4e176a3e442defa556b34a304de3b7f3 SHA512 ad74c73b4f963427e66ac6187e1569dbfbbe3c916c24971a1eba4ad7e2f94e39c970f80e197c0498820451f036b12f3076b46cfd73bb5d6d56183ac05453d9ad
DIST python-gentoo-patches-3.6.12.tar.xz 11448 BLAKE2B a7fb7153ca6fd353649f9dc23f2d777e84ff144d67984d8c3d292619a4f671e3a71d8022bcc334b55f9f1f416ceeca113fb116da805e4bc45d8a67cbc098ead8 SHA512 7efb97abd3e058e4532b89205c99794836ba094079de2a6d7846fd2673ea8cc31e68573b83fd9f82453151653fb0ed9bc40b7961b41efdfe703b64cbed2576bf
DIST python-gentoo-patches-3.7.8-r3.tar.xz 13232 BLAKE2B 9df47b1f61d08f62a80221bc48d73ec27cd74a9ade8219912c5b02eaea919b70d91b1154837cd03c0129a5839186e9c970167ca3398129c044c25c7853f1f920 SHA512 e1477d425cb6125ca2286d816f4aa4e9e3c789d6a4f4907bd7b78549598356cae5766f642e2cad9e7c3abe2e82c12cf3cb7db3513be68aa213cb64cc0abc678a
DIST python-gentoo-patches-3.7.9-r1.tar.xz 15664 BLAKE2B 271b95a52f4ba83c1aee6f68385462c9af8f2ab575267ac068a793e99f7c9739eb4b98dfa7e9280510a709557d418db04f26b5b31bbfe95dfdc13c1773510d2d SHA512 38df628de2f2835f975f6f06395d32cd63051af87b9bf8b06eef2f987bde26a883923bcab333568c122554b900bb17995a8c7290b6a58f942bd942dcbc70d030
DIST python-gentoo-patches-3.7.9.tar.xz 10588 BLAKE2B f60c8500671e7e3977412474c838905846e0609a7fdac787f2c6a8bfa53c887dcfd3466c5276772ffb8c20205e8b3f207f7d148c04524f19d095964b519da62d SHA512 11f411eb2d59fd45fbd80bdb1d1a83d413770779244045006942c5cb84837cba606673bcde102ae03b1d4579f526b551c93a64d39dba530b4584ba8dd8e9f13e
DIST python-gentoo-patches-3.8.4-r2.tar.xz 12660 BLAKE2B 3197edc6beb2b1be05399f268ff9b337ed67f699e3867160fea8e50f763a62b184ddd7adcdfa55dafc8c14f91e020b409461027361d04858db667992794b1168 SHA512 c56adbec04bfb950f7fb65f38cc0b78eaae9783800c755b7ac934b07725fcf4d69bbc2c29f7d1255acd6e88559a216dc8a6088042a479aa0d453b706e318c0cf
DIST python-gentoo-patches-3.8.5.tar.xz 11280 BLAKE2B 163c577da75f4ec0ebe86b5a08bea96d5ae406020bd211439b1405c0f8a5dddc9422a9ea5b16eed195433cbec010d9def3126a578d3f9716325482216b9e4d62 SHA512 6b7f72b8deb87fb7a169e97391185823984b5e9c99ec5232504c670843fbe0ca76afe32fc3fbe1f850ec6c42e9325cf4697022f36f7b00a4028b324069dd4d5b
DIST python-gentoo-patches-3.8.6-r1.tar.xz 15880 BLAKE2B 9a08cd23af56bcc2ed0dffe4850698be6e0bcf7c44d3eafeb250e328a93833dc3e9ce084f1be89450d1e123cd72d81c6271edfe34046d1bab3d7c10a98d0d9c5 SHA512 83474915cab0928d1d2f4229832bef7c093b2943770fa900a7445bfaa633544f50791aa8b4bc4191662af56feef166814d98eb6fad2c0a0eb9db1f8f4806e689
DIST python-gentoo-patches-3.8.6.tar.xz 10956 BLAKE2B e3241d97f886d0a37f85735102db8f00902df59ee12e8501b6c7f549dd4b26a6289bf34ff8dba02b369ed7875fad3d18e177afe9e367db4cb06f2ee908482f9e SHA512 7afa8e54f7b7e6ab35edc16d4214384b8ad8a03068d1984656876d6477b278af931e8c797d03d1bed2f10f9d58ac387db1a43921e54fb17cf4b779f33820abc0
DIST python-gentoo-patches-3.9.0-r1.tar.xz 13728 BLAKE2B 50e85194c6bafefb8a0ddc4c9dea39227fc2c170db37ab44fa1e068340fa2fc5a59489f50431f0792024df551fc54a20de594579b57717c89fa134b3f000bb6d SHA512 a38c2800e3a0740af79f75f4120c925c7a891aa1f14a71ab56ad97fbabca3573c571140da3f34050bd9f97bd854a704453a910fa6883162196e6d1335a965b61
DIST python-gentoo-patches-3.9.0rc1.tar.xz 8856 BLAKE2B 7bd032dfd047640c6a53633b5b9ee7b24199106b985230f772dda978d3b79fe0406eea64c4a842603a20afb71a90469befa7ec59a5ef1f793e4c901aa85952d1 SHA512 85a7d4397abf2a0f3c3d07a94a3e184ba3dcb347f3b70ee2cb77e81aac63846b01323a0228afd0fd1d32b3cafb64b18f82e6f5bfd88e4d564261ddae11e747eb
EBUILD python-2.7.18-r4.ebuild 10624 BLAKE2B 3981c0899d899e4dfbe198618e005bc9190af8cfbc6ca5b85911c717127bfa19ca546e0dcbf7b0317497e7f4d3fd8498e4b153f38468f31f83008c1f39da2067 SHA512 e3aee3d42db1539233a2a543818cd8a733dcb7c2a33a804d7f6b45cd1d087cd1e665e150ef308e61f49e969477fc1d3f8bd55ba5e9117a274e7e9645e65a3f3d
EBUILD python-2.7.18-r5.ebuild 10632 BLAKE2B 5dfe277bce2a5360f028e5f72c57f2452ac86c65dfd74e443d80953011cae17886681fc2a98f92f23f246515c6436828ae80a051cf2f8a57e6f1244decb1f2c2 SHA512 f1e4c3db1750b5ce3f972b52a82965338f63baa1717f60042195b2d05c536faafdc96206a869e6be1068288714add636e43aba1e8d203f6e08f1d7a82e9baa2d
EBUILD python-3.10.0_alpha1.ebuild 9548 BLAKE2B 7f7fadcf9b5f9b09764229ee2c1a4d5be6fc4bc90da7555cafecb16d2690df9098cf28fe3bb719533ad9a608424ed389b17518091d130cd9e0ced7bcf3e787b9 SHA512 fb0e052eef6ba52360903b4112f30f1ea255ba9a56061079124fd7a6379ddce708efc1d2d9241f268f370f0c8158532a83e014d305c469e643ed74392181a301
EBUILD python-3.10.0_alpha3.ebuild 9548 BLAKE2B 7f7fadcf9b5f9b09764229ee2c1a4d5be6fc4bc90da7555cafecb16d2690df9098cf28fe3bb719533ad9a608424ed389b17518091d130cd9e0ced7bcf3e787b9 SHA512 fb0e052eef6ba52360903b4112f30f1ea255ba9a56061079124fd7a6379ddce708efc1d2d9241f268f370f0c8158532a83e014d305c469e643ed74392181a301
EBUILD python-3.6.11-r2.ebuild 10610 BLAKE2B d9074e767b11ed420c843665b87c466f0014713221c0db4a026fbd91a39debc69689a1674db8a0c0b80dc3eb8df7bc86fe92972918f4c95ef8a52da2936bf631 SHA512 693795866815e724267877e4f97e14d09eda9f321b5c2b481f54952fcefc0859072ab42306eb03b81bd8b3e0a2d71435367452330caabf6bfebbcd2062d1ced0
EBUILD python-3.6.12-r1.ebuild 10630 BLAKE2B dbc7f586594973cba9961e5cd696de4c34b1da605bb8d03fa6dc5be8d00d573d3a5df079058d5eee666e9415d06e2b61a12adc867dddcb0b609f959fb76d2049 SHA512 1cd723cc0476fabb3a8c88e157686455e27d11129396baed7c7f03830585b62936518e3bded4949d16a02c7216e901c229a76bd1a3a38e7c136af60e05163390
EBUILD python-3.6.12.ebuild 10608 BLAKE2B 5619848d7cc222aec96aa3590883f81a99418cb3c1ba277705a1f9f35d28e6323fc6a7d53a22186b620159caf683525ad067d64cdc6a684ad48fb3d1c235d75b SHA512 30fa11c3476e4acbfe1818103b996b86be8bdb20d1da5411c4121e3031f2c8e219b96aa746cc56f1bc01c00604504c649ca412b8a491bd084e99fc1a07edcaf7
EBUILD python-3.7.8-r2.ebuild 10157 BLAKE2B 9d802985fd19463a82452e390a7c20144c839075e307c1ddcdcce9ee0aa923d35e39501af27274cc93d7478ce9beb03e30104dfdc5e464ed1923c1af76f4384e SHA512 7372df64cf7d230bf0e307b442b29c617d062f7bed9032e1e2179e576b788db0c3c8426eae39e654f5eaea6f632a35927e2bf2e32d9f6d247c7359adcb22d322
EBUILD python-3.7.9-r1.ebuild 10165 BLAKE2B d8efcebe7ba03cec2c4aca634fa6e3b2a8d30f039dde82d4145d4eaf787664c1f53ec3c2a2856fab2ac4e939d4f4ee211596f1c2e2fae327b33ed0ce86f8bae8 SHA512 a97ee2dc1e054f626e16486bb079346c284b452bab398101acfe2bc63c8d69cf4feb308e7e4137e43083321dbd09ced9c311b1b1cf451a6977ac6bcd6ca9661d
EBUILD python-3.7.9.ebuild 10156 BLAKE2B 1a71bd346866fcf9466a4a29e681a20c7d716f3d7bb5330008925f12e51f3bd2e1ab064a48438abbd6a23d21b3f563f5db50b4a82216ac89abfc9e913cae8071 SHA512 7aaef3db8a570cf09637ed9159611422d86536f84245f4ec771d613bcd3d3334fe4e9c43eb12b4d4d051ca6ddaa022e2d0a0446de16353c9513ba873fd24a451
EBUILD python-3.8.4-r1.ebuild 9928 BLAKE2B 9ebf074bef412756a79b6a9995f8eebdb92239e0558101b873e5d81a3ce74ef8bdcd0fcfb12f93a5d684d919b840912f91213351ef2db4e634feb00e3071ca81 SHA512 c3f9125df55adada570e75a521017e503e095335f98ef899b9d932ac731af8e21487e0710a70572c2766193ed02cc1e32f2350b457add36519762607c131a629
EBUILD python-3.8.5.ebuild 10256 BLAKE2B 63447912d09c28b3774d717a82ac6e275197de69fa00e3af7faf6e6eb09c60917480635035a71dbf3401fe8daeef62c4a130c64ccef7d47eed9607c2cf3d5b21 SHA512 fda9f806cac3c1019af06550f6ba2270993395f8cbf47da31771e0ae0a315282b5335bce91cb8d2ca95861ca50c316bd62ae8b7cf537624765e8359b11ce9ce4
EBUILD python-3.8.6-r1.ebuild 10266 BLAKE2B 643e1534375995e5ff21a9d88a248cf07a734f60aaf37ce12272e0acfbdbdd26bca3ee569b0c59b10be8af4be658078c5354e4e4b3b745438f9a59b33bf299f1 SHA512 fd196fdf507bd96abdd47596f699288e27129b23e0a3908f401a9e5164296791d43094aa7ca3000712bd8867de556568527df6f0bf56a97f98125b86dfbb4e1e
EBUILD python-3.8.6.ebuild 10257 BLAKE2B b118a84fd01fe4b410264840ff22e14996e96b61ce672a5856a21d31664f0caa89f03264c780665d3ba5e7922e3984e0df667667f346f3907e9e175622a118da SHA512 f8369eb3bf704366b187202b6f883ff8d5a9585b4a1aedf281c3e76f9d4009d169bfb62ccaa7489726ea8af692a7fbf1e79264f5bb4aa4339fad202ba6bffb79
EBUILD python-3.8.7_rc1.ebuild 10276 BLAKE2B 5baaa0050d1c1fbbff68ff43f622a609678b40b7db953f7355edd5ffdbec38e1b6d922362ee6cd1c47cba9e050e94317417f8fd2e1b7d9394010f24c92d9e949 SHA512 cc84aa79891e1c0e26249f5c7bf7c63ccea625258ffff7d09e0d17404a866075ca0948fd910a9480f1c2447cb35cab090de2ccf26df63e3533b5680935bde771
EBUILD python-3.9.0-r1.ebuild 9541 BLAKE2B e5ff34e8cee44437c4670fde4ada003096e9a572f5c43c3bae97db7f4f9c2999de9aec486fa1548b41a914e557a765d416f3b314105431e6703185c69af7c3bd SHA512 bfba1ed58a222ee08a6f60375d3fe2212151eb608e25c92a1c8c03d1c652c4ec7b23fc15a2bc87a9c3c99a0feb8401cde268524b2cc7a15e8f6bfc8f8f709f3b
EBUILD python-3.9.0.ebuild 9533 BLAKE2B b4efc6b65f8fa865aa9f16484866b5f385a8c70e5276ee9e8c06772e16c23c8f9c058b4dfc891fd44daefd8d66a932155a02028bfeeaae283ba9d9a7bd9e3b0d SHA512 e21249bdd74e0304cf813f99a00dbc618dc8b5a358e0ca8547e631ff2a3d40cebe8c91313d07b3c992373b7cfb06fb00123016c5870d787bca14377cceff0ce5
EBUILD python-3.9.1.ebuild 9542 BLAKE2B 7534f920099c3cfe5293ba093496a5858e4107f8e9e7f885c62a8d70e2c7ae4a0185b28d3753d07809b8bc99dc71ee7c4aef94880989ff43fc43fd77cbcae076 SHA512 f4fbf2530ea2c7c64d2aedaaa05890977d45709b5d6bfea2e8bf417996e59f6f8be41ac59b8811fc105b7c6f13ecb8b514fa7c4643a6871286f974190897db09
MISC metadata.xml 819 BLAKE2B 120c7c65d77488e726c5a0f4aa19469867ea6900e747169fae2f9cf8f14ec2936089d5edfe1935ce610bec26387273e261b1cc4b023680c8c4b229f2141a7223 SHA512 08f45707e5490067a21951b9d37c8ae67064ab67cccc5b8d8c204eab8d4a004fb910627b62989c67b849b89d301618f8f8f7996e99e1ef5bab38a239c49c124d

@ -0,0 +1,369 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-2.7.18-r4"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc x86"
IUSE="-berkdb bluetooth build elibc_uclibc examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:=
dev-libs/libffi:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
berkdb? ( || (
sys-libs/db:5.3
sys-libs/db:5.1
sys-libs/db:4.8
sys-libs/db:4.7
sys-libs/db:4.6
sys-libs/db:4.5
sys-libs/db:4.4
sys-libs/db:4.3
sys-libs/db:4.2
) )
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+="
!build? ( app-misc/mime-types )
!<=dev-lang/python-exec-2.4.6-r1"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
pkg_setup() {
if use berkdb; then
ewarn "'bsddb' module is out-of-date and no longer maintained inside"
ewarn "dev-lang/python. 'bsddb' and 'dbhash' modules have been additionally"
ewarn "removed in Python 3. A maintained alternative of 'bsddb3' module"
ewarn "is provided by dev-python/bsddb3."
else
if has_version "=${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"; then
ewarn "You are migrating from =${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"
ewarn "to =${CATEGORY}/${PN}-${PV%%.*}*[-berkdb]."
ewarn "You might need to migrate your databases."
fi
fi
}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
Lib/distutils/command/install.py \
Lib/distutils/sysconfig.py \
Lib/site.py \
Lib/sysconfig.py \
Lib/test/test_site.py \
Makefile.pre.in \
Modules/Setup.dist \
Modules/getpath.c \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
eautoreconf
}
src_configure() {
# dbm module can be linked against berkdb or gdbm.
# Defaults to gdbm when both are enabled, #204343.
local disable
use berkdb || use gdbm || disable+=" dbm"
use berkdb || disable+=" _bsddb"
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
if tc-is-cross-compiler; then
# Force some tests that try to poke fs paths.
export ac_cv_file__dev_ptc=no
export ac_cv_file__dev_ptmx=yes
fi
# Export CXX so it ends up in /usr/lib/python2.X/config/Makefile.
tc-export CXX
# The configure script fails to use pkg-config correctly.
# http://bugs.python.org/issue15506
export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
# Set LDFLAGS so we link modules with -lpython2.7 correctly.
# Needed on FreeBSD unless Python 2.7 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
if use berkdb; then
dbmliborder+="${dbmliborder:+:}bdb"
fi
local myeconfargs=(
# The check is broken on clang, and gives false positive:
# https://bugs.gentoo.org/596798
# (upstream dropped this flag in 3.2a4 anyway)
ac_cv_opt_olimit_ok=no
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--with-fpectl
--enable-shared
$(use_enable ipv6)
$(use_with threads)
$(use wide-unicode && echo "--enable-unicode=ucs4" || echo "--enable-unicode=ucs2")
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--with-system-expat
--with-system-ffi
--without-ensurepip
)
OPT="" econf "${myeconfargs[@]}"
if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
eerror "configure has detected that the sem_open function is broken."
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
die "Broken sem_open function (bug 496328)"
fi
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
# Avoid invoking pgen for cross-compiles.
touch Include/graminit.h Python/graminit.c
emake
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="distutils gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
# Daylight saving time problem
# https://bugs.python.org/issue22067
# https://bugs.gentoo.org/610628
local -x TZ=UTC
# Rerun failed tests in verbose mode (regrtest -w).
emake test EXTRATESTOPTS="-w" < /dev/tty
local result="$?"
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/$(get_libdir)/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/$(get_libdir)/python${PYVER}
emake DESTDIR="${D}" altinstall
sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die
# Fix collisions between different slots of Python.
mv "${ED}/usr/bin/2to3" "${ED}/usr/bin/2to3-${PYVER}" || die
mv "${ED}/usr/bin/pydoc" "${ED}/usr/bin/pydoc${PYVER}" || die
mv "${ED}/usr/bin/idle" "${ED}/usr/bin/idle${PYVER}" || die
rm "${ED}/usr/bin/smtpd.py" || die
use berkdb || rm -r "${libdir}/"{bsddb,dbhash.py*,test/test_bsddb*} || die
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,lib-tk} || die
use elibc_uclibc && rm -fr "${libdir}/"{bsddb/test,test}
use threads || rm -r "${libdir}/multiprocessing" || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
local -x EPYTHON=python${PYVER}
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
fi
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python
ln -s "../../../bin/python${PYVER}" \
"${scriptdir}/python" || die
# python-config
ln -s "../../../bin/python${PYVER}-config" \
"${scriptdir}/python-config" || die
# 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${PYVER}" \
"${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${scriptdir}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${scriptdir}/idle" || die
fi
# python2* is no longer wrapped, so just symlink it
local pymajor=${PYVER%.*}
dosym "python${PYVER}" "/usr/bin/python${pymajor}"
dosym "python${PYVER}-config" "/usr/bin/python${pymajor}-config"
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || \
! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || \
! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
}
pkg_postrm() {
eselect_python_update
}

@ -0,0 +1,331 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
python-utils-r1 toolchain-funcs
MY_P="Python-${PV/_alpha/a}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-3.10.0a1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:=
app-arch/xz-utils:=
dev-libs/libffi:=
sys-apps/util-linux:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
# large file tests involve a 2.5G file being copied (duplicated)
CHECKREQS_DISK_BUILD=5500M
pkg_pretend() {
use test && check-reqs_pkg_pretend
}
pkg_setup() {
use test && check-reqs_pkg_setup
}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
# force correct number of jobs
# https://bugs.gentoo.org/737660
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
# Fix implicit declarations on cross and prefix builds. Bug #674070.
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--enable-shared
$(use_enable ipv6)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
# Remove static library
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
local -x EPYTHON=python${PYVER}
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
fi
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${scriptdir}/python-config" || die
# 2to3, pydoc
ln -s "../../../bin/2to3-${PYVER}" \
"${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${scriptdir}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${scriptdir}/idle" || die
fi
}

@ -0,0 +1,365 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic multiprocessing pax-utils \
python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${PV}-r1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}/${PYVER}m"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test +threads tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:=
app-arch/xz-utils:=
dev-libs/libffi:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
Lib/distutils/command/install.py \
Lib/distutils/sysconfig.py \
Lib/site.py \
Lib/sysconfig.py \
Lib/test/test_site.py \
Makefile.pre.in \
Modules/Setup.dist \
Modules/getpath.c \
configure.ac \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
# force correct number of jobs
# https://bugs.gentoo.org/737660
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--with-fpectl
--enable-shared
$(use_enable ipv6)
$(use_with threads)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
eerror "configure has detected that the sem_open function is broken."
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
die "Broken sem_open function (bug 496328)"
fi
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb faulthandler"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/$(get_libdir)/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/$(get_libdir)/python${PYVER}
emake DESTDIR="${D}" altinstall
# Remove static library
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use threads || rm -r "${libdir}/multiprocessing" || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
local -x EPYTHON=python${PYVER}
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
fi
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${scriptdir}/python-config" || die
# 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${PYVER}" \
"${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${scriptdir}/pydoc" || die
ln -s "../../../bin/pyvenv-${PYVER}" \
"${scriptdir}/pyvenv" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${scriptdir}/idle" || die
fi
}
pkg_preinst() {
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
python_updater_warning="1"
fi
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || \
! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || \
! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
if [[ "${python_updater_warning}" == "1" ]]; then
ewarn "You have just upgraded from an older version of Python."
ewarn
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
fi
}
pkg_postrm() {
eselect_python_update
}

@ -0,0 +1,351 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic multiprocessing pax-utils \
python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${PV}-r1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}/${PYVER}m"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:=
app-arch/xz-utils:=
dev-libs/libffi:=
sys-apps/util-linux:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
# force correct number of jobs
# https://bugs.gentoo.org/737660
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
# Fix implicit declarations on cross and prefix builds. Bug #674070.
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--enable-shared
$(use_enable ipv6)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
# Remove static library
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
local -x EPYTHON=python${PYVER}
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
fi
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${scriptdir}/python-config" || die
# 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${PYVER}" \
"${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${scriptdir}/pydoc" || die
ln -s "../../../bin/pyvenv-${PYVER}" \
"${scriptdir}/pyvenv" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${scriptdir}/idle" || die
fi
}
pkg_preinst() {
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
python_updater_warning="1"
fi
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || \
! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || \
! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
if [[ "${python_updater_warning}" == "1" ]]; then
ewarn "You have just upgraded from an older version of Python."
ewarn
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
fi
}
pkg_postrm() {
eselect_python_update
}

@ -0,0 +1,355 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic multiprocessing pax-utils \
python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${PV}-r1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:=
app-arch/xz-utils:=
dev-libs/libffi:=
sys-apps/util-linux:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
# force correct number of jobs
# https://bugs.gentoo.org/737660
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
# Fix implicit declarations on cross and prefix builds. Bug #674070.
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--enable-shared
$(use_enable ipv6)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
# Remove static library
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
local -x EPYTHON=python${PYVER}
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
fi
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${scriptdir}/python-config" || die
# 2to3, pydoc
ln -s "../../../bin/2to3-${PYVER}" \
"${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${scriptdir}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${scriptdir}/idle" || die
fi
}
pkg_preinst() {
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
python_updater_warning="1"
fi
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || \
! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || \
! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
if [[ "${python_updater_warning}" == "1" ]]; then
ewarn "You have just upgraded from an older version of Python."
ewarn
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
fi
}
pkg_postrm() {
eselect_python_update
}

@ -0,0 +1,355 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools flag-o-matic multiprocessing pax-utils \
python-utils-r1 toolchain-funcs
MY_P="Python-${PV/_rc/rc}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-3.8.6"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV%_rc*}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:=
app-arch/xz-utils:=
dev-libs/libffi:=
sys-apps/util-linux:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
# force correct number of jobs
# https://bugs.gentoo.org/737660
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
# Fix implicit declarations on cross and prefix builds. Bug #674070.
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--enable-shared
$(use_enable ipv6)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
# Remove static library
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
local -x EPYTHON=python${PYVER}
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
fi
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${scriptdir}/python-config" || die
# 2to3, pydoc
ln -s "../../../bin/2to3-${PYVER}" \
"${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${scriptdir}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${scriptdir}/idle" || die
fi
}
pkg_preinst() {
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
python_updater_warning="1"
fi
}
eselect_python_update() {
if [[ -z "$(eselect python show)" || \
! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
eselect python update
fi
if [[ -z "$(eselect python show --python${PV%%.*})" || \
! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
then
eselect python update --python${PV%%.*}
fi
}
pkg_postinst() {
eselect_python_update
if [[ "${python_updater_warning}" == "1" ]]; then
ewarn "You have just upgraded from an older version of Python."
ewarn
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
fi
}
pkg_postrm() {
eselect_python_update
}

@ -0,0 +1,331 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
python-utils-r1 toolchain-funcs
MY_P="Python-${PV/_/}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${PV}-r1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:=
app-arch/xz-utils:=
dev-libs/libffi:=
sys-apps/util-linux:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
# large file tests involve a 2.5G file being copied (duplicated)
CHECKREQS_DISK_BUILD=5500M
pkg_pretend() {
use test && check-reqs_pkg_pretend
}
pkg_setup() {
use test && check-reqs_pkg_setup
}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
# force correct number of jobs
# https://bugs.gentoo.org/737660
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
# Fix implicit declarations on cross and prefix builds. Bug #674070.
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--enable-shared
$(use_enable ipv6)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
# Remove static library
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
local -x EPYTHON=python${PYVER}
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
fi
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${scriptdir}/python-config" || die
# 2to3, pydoc
ln -s "../../../bin/2to3-${PYVER}" \
"${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${scriptdir}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${scriptdir}/idle" || die
fi
}

@ -0,0 +1,331 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
python-utils-r1 toolchain-funcs
MY_P="Python-${PV/_/}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-3.9.0rc1"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:=
app-arch/xz-utils:=
dev-libs/libffi:=
sys-apps/util-linux:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:= )"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
virtual/pkgconfig
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
# large file tests involve a 2.5G file being copied (duplicated)
CHECKREQS_DISK_BUILD=5500M
pkg_pretend() {
use test && check-reqs_pkg_pretend
}
pkg_setup() {
use test && check-reqs_pkg_setup
}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
# force correct number of jobs
# https://bugs.gentoo.org/737660
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
# Needed on FreeBSD unless Python 3.2 is already installed.
# Please query BSD team before removing this!
append-ldflags "-L."
# Fix implicit declarations on cross and prefix builds. Bug #674070.
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--enable-shared
$(use_enable ipv6)
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
# Remove static library
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax_kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
local -x EPYTHON=python${PYVER}
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
fi
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${scriptdir}/python-config" || die
# 2to3, pydoc
ln -s "../../../bin/2to3-${PYVER}" \
"${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${scriptdir}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${scriptdir}/idle" || die
fi
}

@ -9,6 +9,7 @@ DIST firefox-68.0-patches-15.tar.xz 16060 BLAKE2B f9e6cd58ea51bed1af90a9d30fd551
DIST firefox-68.12.0esr.source.tar.xz 313856956 BLAKE2B eeaa4acc9fabf15ec1b313170a30cee8e1fc10a8b08512b915b83b7d6a81c09b365733ed94638bd434864fd7b0cb8cbf1bc2e43441be69e31117e8e6a099234c SHA512 839b02422e4c87bdb12e0995cd35ca8c1996f3fba00bbb46b419e46b67df5ec48a264cb14632db777ce29166ee4fdcb06e2ee3ce847e64328c58c9a2f9129f4c
DIST firefox-78.4.1esr.source.tar.xz 334673424 BLAKE2B 3ba8bf545c4c2b92914bf7f63b539ba61dc2ee6c14fb8995a6d75adb4bd11988f1d47d2c64639cbecf7a4b01b99085e63af4eb3afc7a27047f03048ffa9c2c2d SHA512 287096ad67e86b307554475c3b5d1003a325d6d13987bfbec2ec79aa0f8004dce1614ab62585ba5cf153545618906ab640cd4657d5a910085afb3d8ceb46e8de
DIST firefox-78.5.0esr.source.tar.xz 333995288 BLAKE2B 35140afb6b4d15052858e7864753ca74099edb24ed5e459f1f48114f0946f5e007486b5561ba9a545566033d71a69f0e6163dd17204cab717c441323972f089e SHA512 0d16013342b6e8d67adb5c111177ea4796db4fb593da8aa254d0d95bdf33fad798c2dbb235d44db4177c32dd2d7b3ac26b938b476342753ee8d6c83d968d0281
DIST firefox-78.6.0esr.source.tar.xz 338098664 BLAKE2B 9d082b6104bffbd0d918dc1adf2a01ac32613d8048faf399177834c4949714a00c1f4383b778a21d6b6684296d8f9bd44fa547ee2507a8631d206e3764d2ceeb SHA512 a1e2d6af0020784d00ed3cb4d778c136685e7c2f6ae536cc270fbd331d51d483d17dff9acd7ad8e6b3b231b9df894c146092889357b23715814a080c6f08d11a
DIST firefox-78esr-patches-04.tar.xz 171504 BLAKE2B d51e55c255d1f5cfa0c7c030b1ea50cb54951bed3bc21b21f5cb3b1e4b8b2ad406b3d12db2baabd4a90e3c88a38f187f277e7a4afe441ea6cf82c48f84bb0ac5 SHA512 6f00ec898fafb34d7c7e0ff2a6fb5c1cbf1205458845e14eb39c131125c5bf6b2418fea1050bb72449ec40e18fd775fc844437ce0290281d66961de40a53235a
DIST firefox-78esr-patches-07.tar.xz 66156 BLAKE2B 8f69883432dcbd484b1fb15e3fde1630b1424e502ba78d9ec3cbe70cb2676a6876853d3477c8bfe35e92bca91b200e2d14543de1778d895676a52d2608109af2 SHA512 b4a01d3499002bd33a7fb45a1a80e9e73ba27a0986b6bfa43b3482dd8d82a686a14ae0c5e013402c8c8f359a642632a40bf4c362a0e83a1f53b453914f42e3a7
DIST js185-1.0.0.tar.gz 6164605 BLAKE2B 76a37f0ceae05d3475853875bd0ce4be6e525e4114816f8f281ea6fc6b60a71060975a0fa1cb843f57ad1e2f842dfb26b24244fa0fd6c20f6ae2ebbe430f70be SHA512 2af7122a7c7007fd7b6668776fe1222515a810b3e43bbf0f76b8f94e1ef406ffd3fb5ccec393021b00274c05b38a77235bc8d6886994c56762fcaf0aa7cf6718
@ -18,6 +19,7 @@ DIST spidermonkey-52.0-patches-1.tar.xz 3112 BLAKE2B d8f4c44cb2ae290fa51efc4725a
DIST spidermonkey-60.0-patches-04.tar.xz 4428 BLAKE2B af78049cd9b3ee6a9b689e6253486c4670fd3b506faade7d745dafaa7af329c0bd15cd35e95528a4c96688230f4803130967fb09b97aae2bda0ce0f73acaaf3e SHA512 fb1326a81512146ba98773d4f7e0c4bc1bff0f076897c13f576fcf63b56f6965efeff633eea9160bca9f9bc4546505901084eabc33bc955de0b7ab3d6334387a
DIST spidermonkey-68.6.0-patches-04.tar.xz 5956 BLAKE2B b1250391a5173e676272d5926b710c06b0e9de1ff03b130a57fdac30f2deefbee3fa92250b37e28087572fe5cce73eb112ef4e1fb0c0401d6ecdb22ab9868998 SHA512 94575b11b4f006c6ee0c8d64b315734a173cecb68e9128ca61ba1a28177e3c149b8cf1f3b3c47a7a263fad8da6196fc0101df87392f016686a827e0cd24fdc74
DIST spidermonkey-78-patches-02.tar.xz 3432 BLAKE2B 3ac46306f1740e704ed1aa8cb0f2a963d0b94bee60349ce31bc0ac477942781c9cdfa1d791a22e31c9258ade5d955cf6d32696ced73247777a908cb3e5c464c2 SHA512 d94c33d327d07072aa5ca66135ab2100e86acf38e091bf5b9644c537f77fb734433246a2f4bf58bf76d884510bce565b6ab75c23472be7e9d1f566dc4e812b5c
DIST spidermonkey-78-patches-03.tar.xz 3732 BLAKE2B 5dc47527581c010994a102e6458119c762ec3836f57e403cbaac88c457f5f119bd75ae1a067307b20d229536f75db4b2b797408874d28156667ac63b61de8501 SHA512 f0921562dcd0ea519bf3f5ef2da43f87565e92493781d56e6e0b73d4124f41e7aadd34d8285bbb181f4286160dde0c9684920e98058f0683143a2687eb93cc1a
DIST spidermonkey-slot0-patches-02.tar.xz 10952 BLAKE2B fb7bf5cdac6c821a48d407ff172fe0ec7297e047d3b3bab952f226f413b83ea70325175b41c1680725ff588111b424efc97a0c66e392989da510c43d38528ff1 SHA512 cd62890c4b58658d99fc1b52f05ccb35c07da835b168bb9d5e6b219de5021122c199cc2255c5b0be01ef582f53dd51c9975921e6bde9f14e9b43536e2bee85f2
EBUILD spidermonkey-1.8.5-r9.ebuild 3995 BLAKE2B fb52ebb4287a3209ad318d8cd73687ddb6222e033b4b54311a99819805af89e095e3db95977713b54bb2adf694017fbc2e806760746d30df10a182860cd5e9f4 SHA512 faa9f16336a5326ee586f3d5b15fd92668d6fc22bf3e2342f5686157ca76afb4372e605248bd5cbfb09a5ed1b38a399725dda0bc321a98184593d43eac1613ca
EBUILD spidermonkey-52.9.1_pre1-r2.ebuild 4591 BLAKE2B b8fe23279548903b66139d3310f041eb45f114c3012867cd01160155f6e8732e6d914a07346697d1a719439e351b891809bda603a842b8b220160d1d73db03ad SHA512 8f950866d7406a2a8626b2fd45a32cd89dfc4b4322c793cbfbab694ffc8eb7b752d032435302f1eae01d5e4882dca595e06b304ee1dc8b3fb095c1df88eb9287
@ -25,4 +27,5 @@ EBUILD spidermonkey-60.5.2_p0-r4.ebuild 4238 BLAKE2B a5f3d1bcb0c12a678795d2e6328
EBUILD spidermonkey-68.12.0.ebuild 7310 BLAKE2B 9808f81f5adcd34331a2ae9db9c00303f13493e9a3dfdd007f89b8a87ce86c8626cd6041116ed0347f1675558363097c1d8727b36e92ed8dc76af2f2584a186d SHA512 c7ada8f749bf7fb5de92653730d54a1b1af32cce2486766606eae6cb3b592967c0fca37d43375250fa924ee9fdc275f923c0bd620cc25d21d51b8ba4be8587fc
EBUILD spidermonkey-78.4.1.ebuild 8097 BLAKE2B d8a3a67996d503b6e36294304817a76b04f86f767407a1207fe1362933f3a6f8fc1c6b8303daec733f6255e13628c4df1612a096a78059e20839949e0e73a4af SHA512 215a96406246d5b55cc991658d15c614c4a53774fe3bdfbe8d721d63e8671ec0971512884249ed4f4ad6967523f791177ede536809ee0b42fdbda1462a061111
EBUILD spidermonkey-78.5.0.ebuild 8098 BLAKE2B b13a5cce3bf76cb0cb53de8ef8fd3c639a5ed3658a80b76a72dd5c4964c021260059dcad00bcfd034672e5690e50b14aeb941aaa16c29b03a21bcf02bf028900 SHA512 f5bc0a24a0e122cd5dd7f5e24a23a5ac8fd356d64277fa881dc55773c0950fea48b076cba35f0e996bce4da13f870b044964a1632684ae97d58cd7fabb1a8be5
MISC metadata.xml 806 BLAKE2B c1b86b680222a9f427f762f469a68849ee1d1f9eb8da0ca326e586fa3c15b03be0cc03fa752b460e22439c31aad98b0a213371e5f6b7b3afc622baf8244aa6bd SHA512 6fe4608fedba243622286bde5bfb26cba20dbb5a0a7fbb1b8a363b479e23c0e380833e9596b7abf696c4daa988f59bd82d29acc2a2424afe6f467eefcbd9ffa7
EBUILD spidermonkey-78.6.0.ebuild 11460 BLAKE2B 2cb501bb34081b71082995a074bdb94b32fe31b1012613fe09887c3528ab2d0c16b1083b095b2fc86a968654a9beea2523643d5fa26595f2de0d4ce0a03fd01b SHA512 b5498287e338a357aac2858e5567d481df7c1ac29de24bdc4cb5d7ee9955b25953972535514d2dc3a650708c65b12ad7ba10aaa3d273a568309d57e18c90e878
MISC metadata.xml 868 BLAKE2B ee529f60bc83af6c54188ab4db2a1e05cbc3fcebf7732580cb5e507afada8560cb8812d4f155ae94c2ec87724bdfafe7312de86b47a95f599655695836c9b806 SHA512 caf3c383cd8109391cbf81baf5e942630bfd84ca6bc2a78430e58e5b0a40428e08b8a3d7c9fadccebaf94fe1aa673df837246fc32d5932b7f60dd43431ee1575

@ -6,6 +6,7 @@
<name>Gentoo Mozilla Team</name>
</maintainer>
<use>
<flag name="clang">Use Clang compiler instead of GCC</flag>
<flag name="custom-optimization">Build with user-specified compiler optimizations
(-Os, -O0, -O1, -O2, -O3) from CFLAGS (unsupported)</flag>
<flag name="debug">Enable assertions to allow for easier debugging of programs that link to spidermonkey -- note this will often crash software on regular end-user systems</flag>

@ -0,0 +1,418 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
# Patch version
FIREFOX_PATCHSET="firefox-78esr-patches-07.tar.xz"
SPIDERMONKEY_PATCHSET="spidermonkey-78-patches-03.tar.xz"
LLVM_MAX_SLOT=11
PYTHON_COMPAT=( python3_{6..9} )
WANT_AUTOCONF="2.1"
inherit autotools check-reqs flag-o-matic llvm multiprocessing python-any-r1 toolchain-funcs
MY_PN="mozjs"
MY_PV="${PV/_pre*}" # Handle Gentoo pre-releases
MY_MAJOR=$(ver_cut 1)
MOZ_ESR=yes
MOZ_PV=${PV}
MOZ_PV_SUFFIX=
if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
# Convert the ebuild version to the upstream Mozilla version
MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
fi
if [[ -n ${MOZ_ESR} ]] ; then
# ESR releases have slightly different version numbers
MOZ_PV="${MOZ_PV}esr"
fi
MOZ_PN="firefox"
MOZ_P="${MOZ_PN}-${MOZ_PV}"
MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
if [[ ${PV} == *_rc* ]] ; then
MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
fi
PATCH_URIS=(
https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${FIREFOX_PATCHSET}
https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${SPIDERMONKEY_PATCHSET}
)
SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
${PATCH_URIS[@]}"
DESCRIPTION="SpiderMonkey is Mozilla's JavaScript engine written in C and C++"
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc64 ~s390 ~x86"
SLOT="78"
LICENSE="MPL-2.0"
IUSE="+clang cpu_flags_arm_neon debug +jit lto test"
RESTRICT="!test? ( test )"
BDEPEND="${PYTHON_DEPS}
>=virtual/rust-1.41.0
virtual/pkgconfig
|| (
(
sys-devel/llvm:11
clang? (
sys-devel/clang:11
lto? ( =sys-devel/lld-11* )
)
)
(
sys-devel/llvm:10
clang? (
sys-devel/clang:10
lto? ( =sys-devel/lld-10* )
)
)
(
sys-devel/llvm:9
clang? (
sys-devel/clang:9
lto? ( =sys-devel/lld-9* )
)
)
)
lto? (
!clang? ( sys-devel/binutils[gold] )
)"
CDEPEND=">=dev-libs/icu-67.1:=
>=dev-libs/nspr-4.25
sys-libs/readline:0=
>=sys-libs/zlib-1.2.3"
DEPEND="${CDEPEND}
test? (
$(python_gen_any_dep 'dev-python/six[${PYTHON_USEDEP}]')
)"
RDEPEND="${CDEPEND}"
S="${WORKDIR}/firefox-${MY_PV}/js/src"
llvm_check_deps() {
if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
ewarn "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
return 1
fi
if use clang && use lto ; then
if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
ewarn "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
return 1
fi
fi
einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
}
python_check_deps() {
if use test ; then
has_version "dev-python/six[${PYTHON_USEDEP}]"
fi
}
pkg_pretend() {
if use test ; then
CHECKREQS_DISK_BUILD="7600M"
else
CHECKREQS_DISK_BUILD="6400M"
fi
check-reqs_pkg_pretend
}
pkg_setup() {
if [[ ${MERGE_TYPE} != binary ]] ; then
if use test ; then
CHECKREQS_DISK_BUILD="7600M"
else
CHECKREQS_DISK_BUILD="6400M"
fi
check-reqs_pkg_setup
llvm_pkg_setup
if use clang && use lto ; then
local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
[[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
[[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
[[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
[[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
eerror " - Build ${CATEGORY}/${PN} without USE=lto"
die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
fi
fi
python-any-r1_pkg_setup
# Build system is using /proc/self/oom_score_adj, bug #604394
addpredict /proc/self/oom_score_adj
if ! mountpoint -q /dev/shm ; then
# If /dev/shm is not available, configure is known to fail with
# a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
ewarn "/dev/shm is not mounted -- expect build failures!"
fi
# Ensure we use C locale when building, bug #746215
export LC_ALL=C
fi
}
src_prepare() {
pushd ../.. &>/dev/null || die
use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
eapply "${WORKDIR}"/firefox-patches
eapply "${WORKDIR}"/spidermonkey-patches
default
# Make LTO respect MAKEOPTS
sed -i \
-e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
build/moz.configure/lto-pgo.configure \
|| die "sed failed to set num_cores"
# sed-in toolchain prefix
sed -i \
-e "s/objdump/${CHOST}-objdump/" \
python/mozbuild/mozbuild/configure/check_debug_ranges.py \
|| die "sed failed to set toolchain prefix"
einfo "Removing pre-built binaries ..."
find third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
MOZJS_BUILDDIR="${WORKDIR}/build"
mkdir "${MOZJS_BUILDDIR}" || die
popd &>/dev/null || die
eautoconf
}
src_configure() {
# Show flags set at the beginning
einfo "Current CFLAGS: ${CFLAGS}"
einfo "Current LDFLAGS: ${LDFLAGS}"
einfo "Current RUSTFLAGS: ${RUSTFLAGS}"
local have_switched_compiler=
if use clang && ! tc-is-clang ; then
# Force clang
einfo "Enforcing the use of clang due to USE=clang ..."
have_switched_compiler=yes
AR=llvm-ar
CC=${CHOST}-clang
CXX=${CHOST}-clang++
NM=llvm-nm
RANLIB=llvm-ranlib
elif ! use clang && ! tc-is-gcc ; then
# Force gcc
have_switched_compiler=yes
einfo "Enforcing the use of gcc due to USE=-clang ..."
AR=gcc-ar
CC=${CHOST}-gcc
CXX=${CHOST}-g++
NM=gcc-nm
RANLIB=gcc-ranlib
fi
if [[ -n "${have_switched_compiler}" ]] ; then
# Because we switched active compiler we have to ensure
# that no unsupported flags are set
strip-unsupported-flags
fi
# Ensure we use correct toolchain
export HOST_CC="$(tc-getBUILD_CC)"
export HOST_CXX="$(tc-getBUILD_CXX)"
tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
cd "${MOZJS_BUILDDIR}" || die
# ../python/mach/mach/mixin/process.py fails to detect SHELL
export SHELL="${EPREFIX}/bin/bash"
local -a myeconfargs=(
--host="${CBUILD:-${CHOST}}"
--target="${CHOST}"
--disable-jemalloc
--disable-optimize
--disable-strip
--enable-readline
--enable-shared-js
--with-intl-api
--with-system-icu
--with-system-nspr
--with-system-zlib
--with-toolchain-prefix="${CHOST}-"
$(use_enable debug)
$(use_enable jit)
$(use_enable test tests)
)
if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
myeconfargs+=( --enable-rust-simd )
fi
# Modifications to better support ARM, bug 717344
if use cpu_flags_arm_neon ; then
myeconfargs+=( --with-fpu=neon )
if ! tc-is-clang ; then
# thumb options aren't supported when using clang, bug 666966
myeconfargs+=( --with-thumb=yes )
myeconfargs+=( --with-thumb-interwork=no )
fi
fi
# Tell build system that we want to use LTO
if use lto ; then
myeconfargs+=( --enable-lto )
if use clang ; then
myeconfargs+=( --enable-linker=lld )
else
myeconfargs+=( --enable-linker=gold )
fi
fi
# LTO flag was handled via configure
filter-flags '-flto*'
# Show flags we will use
einfo "Build CFLAGS: ${CFLAGS}"
einfo "Build LDFLAGS: ${LDFLAGS}"
einfo "Build RUSTFLAGS: ${RUSTFLAGS}"
# Forcing system-icu allows us to skip patching bundled ICU for PPC
# and other minor arches
ECONF_SOURCE="${S}" \
econf \
${myeconfargs[@]} \
XARGS="${EPREFIX}/usr/bin/xargs"
}
src_compile() {
cd "${MOZJS_BUILDDIR}" || die
default
}
src_test() {
if "${MOZJS_BUILDDIR}/js/src/js" -e 'print("Hello world!")'; then
einfo "Smoke-test successful, continuing with full test suite"
else
die "Smoke-test failed: did interpreter initialization fail?"
fi
local -a KNOWN_TESTFAILURES
KNOWN_TESTFAILURES+=( non262/Date/reset-time-zone-cache-same-offset.js )
KNOWN_TESTFAILURES+=( non262/Date/time-zone-path.js )
KNOWN_TESTFAILURES+=( non262/Date/time-zones-historic.js )
KNOWN_TESTFAILURES+=( non262/Date/time-zones-imported.js )
KNOWN_TESTFAILURES+=( non262/Date/toString-localized.js )
KNOWN_TESTFAILURES+=( non262/Date/toString-localized-posix.js )
KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/timeZone_backward_links.js )
KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/tz-environment-variable.js )
KNOWN_TESTFAILURES+=( non262/Intl/Locale/likely-subtags.js )
KNOWN_TESTFAILURES+=( test262/intl402/Locale/prototype/minimize/removing-likely-subtags-first-adds-likely-subtags.js )
if use x86 ; then
KNOWN_TESTFAILURES+=( non262/Date/timeclip.js )
KNOWN_TESTFAILURES+=( test262/built-ins/Number/prototype/toPrecision/return-values.js )
KNOWN_TESTFAILURES+=( test262/language/types/number/S8.5_A2.1.js )
KNOWN_TESTFAILURES+=( test262/language/types/number/S8.5_A2.2.js )
fi
if [[ $(tc-endian) == "big" ]] ; then
KNOWN_TESTFAILURES+=( test262/built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-other-type.js )
fi
echo "" > "${T}"/known_failures.list || die
local KNOWN_TESTFAILURE
for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do
echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list
done
PYTHONPATH="${S}/tests/lib" \
${PYTHON} \
"${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
--exclude-file="${T}"/known_failures.list \
"${MOZJS_BUILDDIR}"/js/src/js \
|| die
if use jit ; then
KNOWN_TESTFAILURES=()
echo "" > "${T}"/known_failures.list || die
for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do
echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list
done
PYTHONPATH="${S}/tests/lib" \
${PYTHON} \
"${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
--exclude-file="${T}"/known_failures.list \
"${MOZJS_BUILDDIR}"/js/src/js basic \
|| die
fi
}
src_install() {
cd "${MOZJS_BUILDDIR}" || die
default
# fix soname links
pushd "${ED}"/usr/$(get_libdir) &>/dev/null || die
mv lib${MY_PN}-${MY_MAJOR}.so lib${MY_PN}-${MY_MAJOR}.so.0.0.0 || die
ln -s lib${MY_PN}-${MY_MAJOR}.so.0.0.0 lib${MY_PN}-${MY_MAJOR}.so.0 || die
ln -s lib${MY_PN}-${MY_MAJOR}.so.0 lib${MY_PN}-${MY_MAJOR}.so || die
popd &>/dev/null || die
# remove unneeded files
rm \
"${ED}"/usr/bin/js${MY_MAJOR}-config \
"${ED}"/usr/$(get_libdir)/libjs_static.ajs \
|| die
# fix permissions
chmod -x \
"${ED}"/usr/$(get_libdir)/pkgconfig/*.pc \
"${ED}"/usr/include/mozjs-${MY_MAJOR}/js-config.h \
|| die
}

Binary file not shown.

@ -4,5 +4,5 @@ AUX shared_nowide.patch 4627 BLAKE2B c29dae187c0056956498487e0b6c8a88b74253f5d22
DIST leatherman-1.12.2.tar.gz 816010 BLAKE2B 4b7b00b88ef0ba5cb01405aa24fd5ff72918a122cc8a1c0a029e374152964f77afa29a1f503ed5863a39bd13aa808dba2a0b351f65756e97c8e2e8408358cbfc SHA512 9be8333b616bd9772f234474ae874c7214fa0c1bc4658ff042233d6e1683cc61b63d666d750297c79a8058490e42c8b2ff8999cb7f04aa329644f52540e43bde
DIST leatherman-1.12.3.tar.gz 816018 BLAKE2B 6245284856613b99df2ce412e497ba69fe1a016a82ca5ea7f78ba591dc287e2daef051214b303c1cc463efb537354a01ad6c57688f244382b3843b8bfdad6f3e SHA512 83f785ba7c69032e2c9c7f2fb07aa5c100ed9e1a81c88ece19d7a96647b9a46927b99fd7144c08d697863e44553f00adf6bc4964f45e900809827956c0949b36
EBUILD leatherman-1.12.2.ebuild 1329 BLAKE2B b182be7c996de4512b7b0861ef56e9465fc797890b483b9d168d2cf3fb2059ad7de01b6bdd94fdff8e63b1cab2fb544f71fed9442d8aa9e43ca1876babee05aa SHA512 438ec777192a6fa0bb1ac13e3312cd463b968f6747f3277b7d157a995a666bcd560772d47dbb4a07057f3cc6d8f848df33bf86ac472044c7d502e102b94aca9a
EBUILD leatherman-1.12.3.ebuild 1334 BLAKE2B 40cf1da626e9e0b83b91c76d432fa7793456406335f8029cafc96010a396d2e880b40dd6515daa7ab5e74955562d517415907fd8764c2daccf7b5f3d8a89053f SHA512 d99e688e02e91b83edffd89b08f722ea43b1b927545f24a994e380450f257a555c35587a0d8834fbcaa8941e9c826283a4877d61d8767c203fe66a5d589253c4
EBUILD leatherman-1.12.3.ebuild 1332 BLAKE2B ef44d85818f9602a06e77e6a252ee88fae8dad1f5dd36c546efddc48c824d99f7e5bc4caeceb08b5be4496743cb52a76951e20a72e2f93f699079db1b7fb0d88 SHA512 a52e48a284895fe447e2783fa302f4b64eadaa69025699193d69dcb1db8c27dcb48b7b1dbc69f55cd9ec1cf454cbfffeee2d9075d9b1aa2271e6048d24b1fb6a
MISC metadata.xml 340 BLAKE2B 01f27cfaa9f6a13507f19e336f6171dd9b7321bd3ab7954b381d8200614a5e5e3706ab40d2472b6aaf2c0b2191c7d49c36fe9f8b218824101f85577fb700470c SHA512 f4b877e9d23996a6fca8d3c72c90bdc4a80e5218dcaea4f4c461473dff3d30db2aacc389bb156db6085ba02766ca69868842514ee6317c58373372cca4c48cf1

@ -13,7 +13,7 @@ LICENSE="Apache-2.0"
IUSE="debug static-libs test"
#RESTRICT="!test? ( test )"
RESTRICT="test" # restricted til we don't need the shared_nowide patch
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc x86"
SLOT="0/${PV}"
RDEPEND="net-misc/curl"

@ -1,3 +1,4 @@
DIST libratbag-0.9.tar.gz 238225 BLAKE2B 74efbed2840103018195a73c11760a2022e42db5e81ba2e9d63a21bc5eb4c1dfed107382b657d2dc208101dfb53eb1926aaccc116ae66e3bf83e1218239dc1a2 SHA512 36215f534f9429c3b182f5502a2bbe16905492a634e327a845d65b638d7dd5ebb5c4eb1700a5196d6b5caac68e500603ced60c3c83f6d0c8e3c776e0161f657b
EBUILD libratbag-0.9.ebuild 761 BLAKE2B fbcd3ec221b7c2cfbcd2dbf85dd3c2fa845bf1e7e90b8b1edf607c13418cdbb57f672ba73a4bb8f790725e6a05ce6fe8e4b95cfa29302bf56d395bc90afd3488 SHA512 b2ca3694cdfb145f29b6bb24b9eb14c77cc62250155b1bcac1a2393a7ad065956b1b7e4455744b3d0eecc1e29f4597d0ecec041855c637732e0fffe33ccaa2fe
MISC metadata.xml 256 BLAKE2B 55800f1afe85cae6b43d53da79dea4169d8f2606b4b5152843c741e59b686be4c5c432d6160031d1337a153576d69f9c24b08d70a26b22289b63b560f3ba3afe SHA512 bb303019614fae3631db582d2515dc71f9e9953e97f2b46724667c760b180173544255700c4f5d24a9f0addf78e0ee6407272c1137e200d17ce7b7708c8bcb66
AUX ratbagd.init 336 BLAKE2B c6f2ef095cd7d929c3097a18e912ae4b3615bd0ebbdfdaa9f4151b312614c016af2f3581c2fbb2853472cb70ce47d5f26f254772fb9f3dabba2ce93626b672b7 SHA512 3908b3481b49bcebc84e3023ff911dcbc1773e4322356def0067ed4aa426184cf43e12de702e98210157d17c2806d57c1cb4bc79ddb0b8660036a6fe3974607e
DIST libratbag-0.15.tar.gz 249492 BLAKE2B 0f5b35800cb9f82cb892dacd5e3b041843cf5513507ee4882ec5b3f8c8aec8a24594736f2eb1c8e373a0ee38ace1e6328cbd4816d6e5b2cd1f2154ebd803a5fa SHA512 add47a6b3d771de77c6307e128a549f5295e216059b5a2375aa6b2b6bbebcf9a93d7bf148181b3f39f855976e9b6f57072dd9198d07828bebe85409f4ad994aa
EBUILD libratbag-0.15.ebuild 1943 BLAKE2B 439c567599d155a0071913113c96493a0ec33e1f2aca55f1f9311468b29a52ed75371b1b5e6019359a2619a9e46c4ae55339d9db9fe9f96c911baff4966936b1 SHA512 eda7ebd7afa9c9c55b5805bb4e82484a1c3657f4d08811d692d63282d1cc2a037da72a0f7d9dc58bf3cbc17b6440ab619a2490ac9eaada16d260cfae46977e4a
MISC metadata.xml 634 BLAKE2B cc8a930132b186fe8acad18725ff2c621edd878cacf59a65491c3515061d5954bff2eb9be72ee0b3901aff82acb6aab0f88d814528a62358171a4288da2b38fb SHA512 6dabec3887b8958f6351c5fb7e33ee512bff8905d36d8002b088f02f0bf5474e97d33f017bb866b67cc6b6b82939fef25549625aefd87546dfa626bb596aa5d3

@ -0,0 +1,13 @@
#!/sbin/openrc-run
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
description="system daemon to introspect and modify configurable mice"
pidfile="/run/${SVCNAME}.pid"
command="/usr/bin/ratbagd"
start_stop_daemon_args="--quiet"
command_background="true"
depend() {
need dbus
}

@ -0,0 +1,90 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
inherit meson python-single-r1 systemd udev
DESCRIPTION="Library to configure gaming mice"
HOMEPAGE="https://github.com/libratbag/libratbag"
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="doc elogind systemd test"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
^^ ( elogind systemd )
"
RESTRICT="!test? ( test )"
BDEPEND="
${PYTHON_DEPS}
dev-lang/swig
virtual/pkgconfig
doc? ( app-doc/doxygen )
test? (
dev-libs/gobject-introspection
dev-util/valgrind
$(python_gen_cond_dep '
dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
dev-python/python-evdev[${PYTHON_MULTI_USEDEP}]
')
)
"
RDEPEND="
${PYTHON_DEPS}
acct-group/plugdev
dev-libs/gobject-introspection
dev-libs/libevdev
virtual/libudev
$(python_gen_cond_dep '
dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
dev-python/python-evdev[${PYTHON_MULTI_USEDEP}]
')
elogind? ( sys-auth/elogind )
systemd? ( sys-apps/systemd )
"
DEPEND="${RDEPEND}"
src_prepare() {
default
if use elogind ; then
# Fix systemd includes for elogind
sed -i -e 's@include <systemd@include <elogind@' \
ratbagd/ratbag*.c || die
fi
}
src_configure() {
python_setup
local emesonargs=(
$(meson_use doc documentation)
$(meson_use systemd)
$(meson_use test tests)
-Ddbus-group="plugdev"
-Dlogind-provider=$(usex elogind elogind systemd)
-Dsystemd-unit-dir="$(systemd_get_systemunitdir)"
-Dudev-dir="${EPREFIX}$(get_udevdir)"
)
meson_src_configure
}
src_install() {
meson_src_install
python_fix_shebang "${ED}"/usr/bin/
newinitd "${FILESDIR}"/ratbagd.init ratbagd
}
pkg_postinst() {
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
elog 'You need to be in "plugdev" group in order to access the'
elog 'ratbagd dbus interface'
fi
}

@ -1,40 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit meson udev
DESCRIPTION="Library to configure gaming mice"
HOMEPAGE="https://github.com/libratbag/libratbag"
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="doc test"
RESTRICT="!test? ( test )"
DEPEND="
virtual/pkgconfig
doc? ( app-doc/doxygen )
"
RDEPEND="
dev-libs/libevdev
virtual/libudev
"
src_prepare() {
default
sed '/default:/d' -i meson_options.txt || die
}
src_configure() {
local emesonargs=(
-Denable-documentation=$(usex doc true false)
-Denable-tests=$(usex test true false)
-Dudev-dir=$(get_udevdir)
)
meson_src_configure
}

@ -1,7 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<maintainer type="person">
<email>alex@1stleg.com</email>
<name>Alex Barker</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<maintainer type="person">
<email>polynomial-c@gentoo.org</email>
<name>Lars Wendler</name>
<description>Proxy maintainer for Alex</description>
</maintainer>
<upstream>
<remote-id type="github">libratbag/libratbag</remote-id>
</upstream>

@ -7,8 +7,10 @@ AUX nss-3.59-dont-hold-slot-lock-when-taking-session-lock.patch 4053 BLAKE2B d4a
DIST nss-3.56.tar.gz 81706176 BLAKE2B 84c3b9fd649ce38ad843725b180982692dcac34e851734813b959734054f2e9ebfad66496de320f46e861381f6d5f52db0cc4c0953f7504b79f6b529b871f173 SHA512 f2eed8252c13b38a4d80a11203136d22a521205f814b6d954cc119ccf8921fcb8f689d919944bea4739d1575e9bda7e13cf2ad054ac91d51e049abe246efc845
DIST nss-3.58.tar.gz 81846254 BLAKE2B f8e7d0b231916b197ad21706a057d055f8377059d76d4f09aff523cc4cd071a3184f02dc488259df22109b70be7b8a5d5fa7ea2273a830de825cc9a8c95dcca9 SHA512 03d2ab1517ac07620ea3f02dcf680cf019e0129006ff2559b2d0a047036340c20b98c9679b17a594e5502aa30e158caf309f046901b9ec7c7adeeaa13ec50b80
DIST nss-3.59.tar.gz 82141516 BLAKE2B 74959b14ec42b4628dfc3365af00420cdbd41d202541e9379f6a4448c4496b76307af48c9ec405b370f8770327ce56742b4382f8cd49724b42732ce5cc5b0779 SHA512 8963e846f2ff7222457ae59f042672cf4e44f7752807226f46c215a772fd1cbd65d0ce634da4afb698eabd4eb1c1e78146cc2a089339ada11da03d259c609a38
DIST nss-3.60.tar.gz 82035831 BLAKE2B fffc0e26d58d4625be1b8b0123f248a0c7994b18868ece534ba4d60131dd4897d075d7b2dba672c31ccd333e0c18ea384e2aa2f495c23b5430d6d10b91922873 SHA512 6463b2da28b5d9f1f20d45f77a3179e2b93c874af5742c7fc51eb7c44cef93270acacf79174dc63905f227256cbcee23a36f98f1cfed10dd5c56ffc0a76e2695
DIST nss-cacert-class1-class3.patch 22950 BLAKE2B 9d5e60df5f161a3c27c41e5a9419440a54f888eda454e3cde5ebe626d4075b65cf9938b5144d0fb022377f4bd415bff5e5c67d104409860aa9391b3eb8872c68 SHA512 a5aa740bf110a3f0262e3f1ef2fc739ac2b44f042e220039d48aee8e97cd764d5c10718220364f4098aba955882bd02cadb5481512388971a8290312f88a7df0
EBUILD nss-3.56.ebuild 9192 BLAKE2B 159708f6fc8c0b2e55404b95bbe688798f3f691ecb6e62a87e9ae32b08c9e9ae6693bb959a7af3232694ee0c97e5b8bef1981156152c17d8ea4a7c121885bfc3 SHA512 56597eeacea300e066177e9fd83d646a0bc5f84e580ac4dfd952ffcfb67ab77f738126b21cae44966d12ec6bb6e9b50f44a8ac9cf2304bb2f95b41fbe144b78f
EBUILD nss-3.58-r2.ebuild 9258 BLAKE2B dc108ae1b31d12f42c34b1938e99438d4f7c7c62cc681c880f458ee8c90ae7b5e0374fa80528c95b1372489c7537059af68570901a72094d240ddb3860297eca SHA512 34c05b3c3cf11ab13b32c68e859aa23f573f4875be76279c6b814e2f750c7bc5329cc6b180e83b4322debfac5f48e0296af3611a23b83682f4d5e472309c0ac8
EBUILD nss-3.59-r1.ebuild 9272 BLAKE2B b7d26f3774c79e31054f4281eb33686801369f3ee134e27d7d09aad84dd9ce841f8629470ac2790728fb52aff903cb515bfa4c9426ba1eaf161209f5ab8ef97b SHA512 c780d53c01fbc80ea6e6429ebec1ea56e088887411b898a7b8dd2f79df4ba8d35ba38efb70dff32cacaec5da6e0deddce0b2c2d29c3baea55db7b8c7287d1e6b
EBUILD nss-3.60.ebuild 9143 BLAKE2B 0e649ddeae47ea27728915631800040c4d75652a53e5c1a59c74c5aedd131f046d64f3dcc074457de85b3fc354fbc963b7ea4af8721ac18da602a9fa89405ba5 SHA512 15ce8381c217766f36938fa0fc2305aba7cb0b0f7b5a09a7fd93831b27cf8f2ff3a44f9e6997346ce67bafc5db4e2d918b16f9b842384682db3d19fa3ca7612b
MISC metadata.xml 515 BLAKE2B a63fb05a1a3e1b06f929f963ab0794ec1230e89903fc97a7c7db81a0b3c7b7e8b9277eaa7440f8929738ec0f805d8a8dd51c8262e569fb9be2fa0938b08ad7a2 SHA512 6bec952825416ba0ab8282669483eb75935f6b4a3052e0f78dad911c0246b8d8ce245c86cbd82b292d49338848fa50fb2009fb4a9def1ac8d81bf9a3320cd2b0

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

@ -1,6 +1,6 @@
DIST pugixml-1.10.tar.gz 381990 BLAKE2B ea446d11fe5213a5250b7e737a9e80a3976454724e1a1c326b689214ad4d3e183abd417a7782b3d5c68a0aabce42228e121352e4d2dd33f5f2bb2334f6c72c27 SHA512 bfc80661005d0a0fb82ca6d5299e5efdd1bb468e11ee52d7ee9367e15776d28efb60266ce03842715cd43aae023afc2b369797bb3cbecd6d6a65c3ae3903e469
DIST pugixml-1.11.1.tar.gz 386133 BLAKE2B d3a83a8be1b3e6605d7c9a6dcd48e4d467b44c2070238a01d1f0a511d2936a7a01efb26b080a4beceec7f02869e10392c3023c62d3e84eb94949ebefaceb73f9 SHA512 ab8da8744c4594a947d731a876717287892b64195d44d6e1c518bee5fb712a45b23ac763b12af0ad20c6f2cb74f6b1bae1a68fa90f786851aa6d3f139a32eda6
DIST pugixml-1.11.2.tar.gz 386166 BLAKE2B 21dee2f04e8f9d962cd6f0ebf54d608fb0434ed815a13807f5939dea47e98128009b6b918a761b80566b959f1c0651c4b771028515fd9e8b8b51a0e4e592d3dd SHA512 403ef9f642fba6aff2d642399516886c0cda44ca19c58eeb05594aa7220562afbee939a5edab0c85263596834c5bdaea82a346dd8ee00a712e97b564f0d1e52d
EBUILD pugixml-1.10.ebuild 571 BLAKE2B 882d1cf798f1b6f033d26204059fef59169588d7f939620f8a61dbbfe582d9c6888bc9918b657841cef5eba110dee6a977dab63a5a2c731ceb2d9a329635d447 SHA512 eefcb601ccfe5aa7c529ab220a1e21faaf3fdf4dfbac06f847e268ec6b784d7f6d3962d57d53b92c0645d735529d7f8ed56009ddbcecedc0f640b5f5f20420ef
EBUILD pugixml-1.11.1.ebuild 576 BLAKE2B 03902967dd711c63b01b8e11c1769f769f7b4df57dd889b87f23c316abe8bf746339058de220644decefaf133d8032c45c480cfcf4d51addc164e8894543c800 SHA512 71bc00b077502f5592e41f36ab6faea344caaff4a8e5787c5ddf88f0ff151bc313811594d0ce83e6506a60879c2f8009c7e4c1f49532f2c8ba3a5f6b1499ec28
EBUILD pugixml-1.11.2.ebuild 628 BLAKE2B ac10e059167ea8ee686ef044b02da02c14844c9417c34b6362f6338ed01abf002fe1a1e5d47bcc0075c34ae95267654da651cd3db5694a1622aca4649882f43a SHA512 dfc4cb2782e8ee803195b53a3bda79c03a07e858e52867f1b2b8b57f18c1ba2c457cf81e4b344a024415e0d151b65692c9f850077cd634d1b6d987355a2ea297
EBUILD pugixml-9999.ebuild 569 BLAKE2B 353fb5e610b766647e1e3bd921a05390dec00f185d193437f96d7a8cf0bbfda8813168243dc80bf0b3cc1fd8c4e1c9e8e83b27590e1a3018f3a5ef1947f66e41 SHA512 248a298f4cde950be75592de172fc89fd36d979fcd76684c63e652456a60cd84a6bc0f2312248de003e4bc0771ce3bf2c9b28ff5c72087be245c202af50fbc99
MISC metadata.xml 346 BLAKE2B 68e81d68ef327995169a33c1716bf546958902854870095704000abc97634073a87945a54968a1e167bb94b845032b5ab3d8822b1663e7fb3fdfdb5abaf0d789 SHA512 90152b3b666bf26a6b0be0a411aff980d340ab1b38e2068a170b809c883e7a1c29de6adc0c8aef90b5702682a8fe548ba59e2bf077cc3ad145f9d1e3699afcaa

@ -18,3 +18,7 @@ HOMEPAGE="https://pugixml.org/ https://github.com/zeux/pugixml/"
LICENSE="MIT"
SLOT="0"
PATCHES=(
"${FILESDIR}/${P}-cmake-config.patch"
)

@ -2,8 +2,8 @@ AUX simdjson-0.7.0-dont-bundle-cssopts.patch 1318 BLAKE2B 29fef993c326fd918c279e
DIST simdjson-0.4.7.tar.gz 4119328 BLAKE2B f19a603b83282081457f548bd9b609f4fc4b9b0e32c868c8d4ecc15fbc359e6463576c24f38b6623cd72cc4681a1db42ec45ee605df6096876982caa9f96be91 SHA512 023e8b75652cb29c41eb1e01ebc6c484b28ff5f6736c885fb5d8c639b1047660fd0eb24d131dabc035fc7fc824e15fe49b177bc3613e329f1d8cd956173a490f
DIST simdjson-0.6.0-ppc64.patch.xz 23704 BLAKE2B ab26e93960d3e3cc2c7782516ef2e6e36fb259c1bd83b967f32b0ba899ca9f80468a47cc3344dd9dc392898626a88b4a1de42899502a989511945e573bf7f259 SHA512 c8e1233c7e6f92cf0c92206ae1023cd30067004e4e53fed86d11e105490f281bf1b8a0806880d02427485fbade24aeb7a7b027b17c9f05552089cf867f3029eb
DIST simdjson-0.6.1.tar.gz 7889048 BLAKE2B 35b40e5e278e5093f5f07ad9e27ae23417f206bf2f4f624a6130931882db49632fc5141d027deca4977a3efa1fdfc7d8fc0bc2149d938a985a850eff4250f5bf SHA512 df5f6c717b3c4cfcde7757dff74d51c93f4682729fdbcdaae89d82db13bba006fe0378bc601d5bdf1d4cf2f0fafce56eb88aba8ca9648787a64cf160cab479e4
DIST simdjson-0.7.0.tar.gz 7972237 BLAKE2B b769eec1b8401c5a3cf0f69e99848afb8c64c1361634ac3f08313030318e781ad8be0463649ab3eb0b2d41a731d8fd3118a23ac33e14948281b5a3f5522c413f SHA512 ad0bd723b28654e43b9717bcc831aeb38ad86289fd3e9e9cd7a20bfe367428334505c35f3cb5b261feda500ddb0cad4780a9fb2504a62cb97db9d5c4fa666d2a
DIST simdjson-0.7.1.tar.gz 7972319 BLAKE2B c06b1db95b5d826babf7c673b8ef390c2169d975bbec585f6ea98a53455643b4ec462683d312fabbf8a1155309ba9fdd20977ba813e0fbfad5cbe45363ef7189 SHA512 f2ed21db24a8c80c48194e875680ee27dcb87ce1ee52d7f7466e3096661ccee179986bdc15d93e2a3d8d9f2f659f3bd678c908cfbde4905afd95e5e767f84e1c
EBUILD simdjson-0.4.7.ebuild 622 BLAKE2B 591dc46e83afe30ff0aca4594a199302a237b078be207e3f7634bb76b1694319caf14ae83b3b7fff22c5bdd93cad5292c0e57ed5935c8c28c9931fae6bf75f80 SHA512 0bda85cfeb83a52657c9a127ae8711af162a92fe247f00e957896ba077509634654df11619c628cafc75fcd5efe528e57c69f69819582c91610e5e7b063d5cac
EBUILD simdjson-0.6.1.ebuild 928 BLAKE2B c672740e77bc519b647d2f72efec2262b46629c3b9bdc429a647c0f08ecdb2fe3dd76ce81209d0359cdf9978086fe87e9428853369fd6f08de2698ccceb90364 SHA512 08daa7a4bae1325d3cd4dcc8bed8d44f86c2971404310dc013a0bc5ce4ccb9c61cead4dbc478cdc97f9bcb360289901ffa81abb7c29c592074f16de720f2da87
EBUILD simdjson-0.7.0-r3.ebuild 1038 BLAKE2B 0aea6fa87992593836dd852a8982bb5fdaec652a629d4fd2e5783cd2a5823539a0b0227f77aa0ee6077d9f20f0fe44209d0564ed4c80c60e5ad05010a346d0df SHA512 ac317104a1255436a41cc860f854fc2e2054ac2adc0866cd5b86b289833f8823d7360b72433dfedd91208e828a45d7fccc135e24fefa0f4c4ef964832f0ded1b
EBUILD simdjson-0.7.1.ebuild 1038 BLAKE2B 0aea6fa87992593836dd852a8982bb5fdaec652a629d4fd2e5783cd2a5823539a0b0227f77aa0ee6077d9f20f0fe44209d0564ed4c80c60e5ad05010a346d0df SHA512 ac317104a1255436a41cc860f854fc2e2054ac2adc0866cd5b86b289833f8823d7360b72433dfedd91208e828a45d7fccc135e24fefa0f4c4ef964832f0ded1b
MISC metadata.xml 335 BLAKE2B cb4ee46df6139081ed8708a3e4c6f999cfd822a5c2c986aa90d54945beb0c09c60c1ce9582b876809032f096921f1b4b79d5a53197e89b765eaf060425fc9279 SHA512 654e393f40c10289bca4d8afae54e4ca987e963a8a5b0f86e7976176d45d5c12c19b9830e7d275de7eabed8dc8d3325b6b581ac9cc694e64e6c39b0762081d32

Binary file not shown.

@ -4,5 +4,5 @@ AUX ecls-16.1.3-headers-gentoo.patch 446 BLAKE2B db2adc332867435e799e2779fbad5eb
DIST ecl-16.1.3.tgz 7459212 BLAKE2B 4f9d6ad2bd92ede4b5b20857b95a48bad5002049e83611865d9cf13e7131adfaad147a31f22f9a3f6a2c06e46db1996aa98135c28b97bf5ef16e17b5eba0dc4b SHA512 5d743f422f6bc24671abf4c739cde8273d08f056906a1ef8aed5145c703b6d52c7fa4b5e0be8c125f32240c20ce053007786bb3ae81cc34d47791f6fae0819c1
DIST ecl-20.4.24.tgz 7815444 BLAKE2B 11b908b028beaaf9243dc0f2ceaa178918ae4763a907af4424ba21e6bdf3474aaa36c96e9a3ef1ce780e50649c2453b52b7c46b5e9dc1453281dc522417ad78c SHA512 4c127e0d6a99e38f3a926135ae92d92899058c5a5e99b90f28d4a47b58d94ee89a958cfb4bfd2b9e6ad7b3c57867cd13119b2a4dd6bb1aa3bb5ec42a96bfa788
EBUILD ecls-16.1.3.ebuild 2358 BLAKE2B ea2aeb0477a427e45e7f282a2da31f43c45b9b64189ec5d7bfeb5e7297a39307dcb162e594cca93c2aea53809452fe1f57609bcd6c446325781bb9a9bb388ae2 SHA512 5fc28521dd43df3560398c9782274b6fbe5421b96e1138173f8b033c5047dd24b5aeb61151423619a5369f88418f3b21bd9bc79b73554b8f99ae58d33756c4dd
EBUILD ecls-20.4.24.ebuild 2376 BLAKE2B a66772b53908f0143cfca2f95e19ce4de4c53f6e1d0482e1a898db00f0531665700639d4383dbb922a2c25a0648e941474f89edf98c203bbab0c64ea18a27e51 SHA512 85a63a97f76a1ee3c6db0cd2a9e407e352882e3444c4c60ece7b1bf61e7ba99cda6a94f31f463dba933277adfa2ffdadf9e8ba0299d6d893488847fb477e87b9
EBUILD ecls-20.4.24.ebuild 2389 BLAKE2B 4e3347c4d9aaafdf7a3f7f1454bbb18b3fa04762f23e909684fe39dddb18df05e92d79326918f2ddfbb0dbc8dcdb94530b0195cbcf86d5232b534ed5b70a5618 SHA512 9114c138fb74a15f80ca25230b68290f057e1aed205bf3ed5ba7d7109c15ab4a6c7e4db951d1e122dc2cbffac869294ceb557ef0150d7f6630c2cbefdf42d302
MISC metadata.xml 901 BLAKE2B 96892af45b0d5c6b7c0e0ee20010ce7ac068a25d024d31f2dae1acd730aaa62f7589f322d7ad0ade27a03cdae7eeef5297adcd9fb821ca67d4e1ba88de1c2a17 SHA512 15403f25533646601eb454946599d1d97353038286df0d075f923b598fe44047e525745a33f7e3dbc15fee717d6311abbe546371ecbc4c9df347771dd5c007e9

@ -16,7 +16,7 @@ SRC_URI="https://common-lisp.net/project/ecl/static/files/release/${MY_P}.tgz"
LICENSE="BSD-2 LGPL-2.1+"
SLOT="0/${PV}"
KEYWORDS="~amd64 ~ppc ~sparc ~x86"
KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux"
IUSE="cxx debug emacs gengc precisegc cpu_flags_x86_sse +threads +unicode +libatomic X"
CDEPEND="dev-libs/gmp:0

@ -3,9 +3,9 @@
EAPI=7
LUA_COMPAT=( lua5-{1..2} )
LUA_COMPAT=( lua5-{1..2} luajit )
inherit lua multilib-minimal toolchain-funcs
inherit lua toolchain-funcs
DESCRIPTION="Bit Operations Library for the Lua Programming Language"
HOMEPAGE="http://bitop.luajit.org"
@ -28,11 +28,10 @@ src_prepare() {
default
lua_copy_sources
lua_foreach_impl multilib_copy_sources
}
lua_multilib_src_compile() {
pushd "${WORKDIR}/${P}-${ELUA/./-}-${MULTILIB_ABI_FLAG}.${ABI}" || die
lua_src_compile() {
pushd "${BUILD_DIR}" || die
local myemakeargs=(
"CC=$(tc-getCC)"
@ -45,12 +44,12 @@ lua_multilib_src_compile() {
popd
}
multilib_src_compile() {
lua_foreach_impl lua_multilib_src_compile
src_compile() {
lua_foreach_impl lua_src_compile
}
lua_multilib_src_test() {
pushd "${WORKDIR}/${P}-${ELUA/./-}-${MULTILIB_ABI_FLAG}.${ABI}" || die
lua_src_test() {
pushd "${BUILD_DIR}" || die
local mytests=(
"bitbench.lua"
@ -66,12 +65,12 @@ lua_multilib_src_test() {
popd
}
multilib_src_test() {
multilib_is_native_abi && lua_foreach_impl lua_multilib_src_test
src_test() {
lua_foreach_impl lua_src_test
}
lua_multilib_src_install() {
pushd "${WORKDIR}/${P}-${ELUA/./-}-${MULTILIB_ABI_FLAG}.${ABI}" || die
lua_src_install() {
pushd "${BUILD_DIR}" || die
exeinto $(lua_get_cmod_dir)
doexe bit.so
@ -79,10 +78,8 @@ lua_multilib_src_install() {
popd
}
multilib_src_install() {
lua_foreach_impl lua_multilib_src_install
}
src_install() {
lua_foreach_impl lua_src_install
multilib_src_install_all() {
einstalldocs
}

@ -1,4 +1,4 @@
DIST LuaBitOp-1.0.2.tar.gz 23127 BLAKE2B 97b2ded135903f7bf2165a03d611fc2864336929706eb67097b5d67d0a0ec156c855a1637bc309d8dd03cb68beeda350b33eed7678b82540da54502cf981333a SHA512 a652050ea5c6fbeb8a28b05e2bc4a3550c854cc45f7f42c8c1b0a81f5b76773cdf061e6a839cdb339614118169e578b6e3efa5a3efbe59a2f01874b2fa2b4f2e
EBUILD LuaBitOp-1.0.2-r101.ebuild 1631 BLAKE2B 2c52919195e7da8c81e2b6427fbb693af05318f8077f0272d12589d40bd806ef02e113d708df689c7bab9aa2aca036a6bfe8ed6006c40d203605a3ed31a4648c SHA512 f073997ad8187b8ae4594a12c37475d0923dec5b497354065648ef0ab35fef39f7b94945642224686f8b2974fbec72e349bb9be55a449cec0716e8b9170d94cc
EBUILD LuaBitOp-1.0.2-r102.ebuild 1314 BLAKE2B c269057aea56127df9ee08cb46684933089116797df3dc110621a50fd389cdc15a7460fa84971ab839d7f78156ccb36867f4cb429cbf5baf43f423c15ce2cb2f SHA512 7c6856d1f1c484832398f6a1bfbbcc144c7474953e31eb069f8f4b5a20ee1062a1f3b67872f39d36be80dcf5d181fc58b27c07806e4910214d1afb6d5f5d1251
EBUILD LuaBitOp-1.0.2-r2.ebuild 917 BLAKE2B 704b906d79e32b01ec82e5fddeb95cabd2edddc1fcb9069f893a34a088bb198c8b277b42e748bfcf5893f5cf6c8b39662b5548f5c0b01807e7c331dca74a6ed3 SHA512 b1cb3b831bc3a60f5dbb840158100c97b91c0cc9fc0f902f60921852c93296116b3977f1d197fa61aac0f562cc4c76f1290ba711e2ef03dadde8eef2336197fb
MISC metadata.xml 359 BLAKE2B 79db34737be833f5be7d7cfcfbee74d93b016909b64a8cfeeac382b70f1ef9487630c5dc64dde58d37ae98a16d0ee96f4dbff8667d125f4d0af4a97275a72b78 SHA512 21a61aecfde180a1f2d721eefc332780f6fcabadcecf5d19a00534e65c84e8c538c988239bfc938e4c7c6a60a5915f6f685b882314067521f7c293f37197b96a

Binary file not shown.

@ -3,8 +3,8 @@ AUX luaexpat-1.3.3_makefile.patch 621 BLAKE2B 8c04a2324668ab13e2279df8754c64d5ff
AUX luaexpat-1.3.3_restore_functionality.patch 3944 BLAKE2B d6e502f44039110cfc8eabc3a83405b0c72522ec43628af16f72d21d0976d617e7280818259258c15cb8582f917e5fdadd81bc2ce35c052a951fec0ccd200e5c SHA512 f6e56fc84550af781c40d8bd004c3f840021a730cccd988f5547b83e2ccc89072ebd09f49631442b25fac8a81a4d7e7f5d4163d7f62dedc876356dee94d96b41
DIST luaexpat-1.3.0.tar.gz 29567 BLAKE2B 176cb107e6047b15338ff45751af82389920e4210d40bd0b4400e549130a4983c843f7a64bb7b2fba37e36eb592e850d06efe196f8e837e79e50c8d135dbe763 SHA512 91884653310e2dc89ade6d1653875ac8607640a21853d3ccb1fd0f833812e41981fad5c40101732ec249104d2c50c9a332208d1e44423b8428065a223c60b4ae
DIST luaexpat-1.3.3.tar.gz 32099 BLAKE2B 7fdec97932db4f7d582f651b9a7215f2ef0f6e23022d4013f37e62a0ba3e257e44211266ee4cbbc84d190bf9828e0e028ab3eecf9fc6e619ae3175fd5fe23ddb SHA512 aa3f730c64cae3791fc1125302178ec2398d2380e8ec0e65ca4b29f532f181f149baaf555bf687e502b28726d3fd0baafd4f73cf26f04f625d18bbaddb043d63
EBUILD luaexpat-1.3.0-r101.ebuild 1581 BLAKE2B 816e833cbb778c2316bf85bb153113cb1d16ccbc820e2be64c17ea71d2c5467726d1e5e9cce7da19bb01b9608558befbb384e31dc20956201a4563efbfa22f70 SHA512 593005ef0cbea267297b0b9d124294b557392235e911b62ad3e34614874158e4b9b348b54a59196d5e0642e2e49100c35e808f1fb772c191f216324226b137b9
EBUILD luaexpat-1.3.0-r102.ebuild 1307 BLAKE2B b6d868b911198feb7e43feb4ef33076315755c776f64953967efc0b8ef56405ba4acdbfa121d2a572a9ef00f1329182d7438378a2e720a7908b3a275d5314c45 SHA512 4b0ebeb8fe24b4644e3fab77972be0a51aaa4ecfb3b7bdc72d8b11ee7d268677bac2b42d219964a242c232ecad6cb6ae834588cf7f3afa6be7a7a8a6984e4b69
EBUILD luaexpat-1.3.0-r2.ebuild 1174 BLAKE2B 43efb15693c8c75e115e8976d125a9fdf5c4b30250ac5dfdd9b4c1e5044a5545461203507077e4b8de9d2902808e130a5567e9b881cf22c2613327f16e387e6f SHA512 2b6e0ab5b3b71124b5441776e3be1531a14897ade4c956e68242bea53e21da375c010375471b942d1f1d6cf5e2f56c65ad1fa0bb408825bcae3644de6b8daf20
EBUILD luaexpat-1.3.3-r101.ebuild 1695 BLAKE2B 7b1dfbc44dfef10261a7c29c6ee79ba746895acf18989c6a632f93e9b3679130192777eaf862fd0a782152165ff8310416fc76a32d1430df34d04453991ecce1 SHA512 5445507e3d85b63e7abfb716e62f7215bda602da4533070b5d97ad977a4a5d1c15df7bff20ac81bde1b1b1c6d0e7bbf049f7834a7e0c0c4940600855fa451010
EBUILD luaexpat-1.3.3-r102.ebuild 1421 BLAKE2B 0738c3281a1c145b0d5f86e22721075767579a95ec47083db1d5e20d54cb9c391b482c4db403b5f0da10fac5e455e55437b3fc98889626e8e83b2e82478e8b29 SHA512 059396e7178f0d0ec9caedd1950d0995c3ccebdadf016c72afc034cd3dc2556d3fa1122c54827b49786a55c68a2aa5e8bf62826c4505cada30316db4028b164e
EBUILD luaexpat-1.3.3-r2.ebuild 1265 BLAKE2B 3ddd7ae3f5a75fac07bbb465dc1477c59f6ac950b3cd3d2ef1171444122788d59b4e0e2d865590b52e4e6ecbcbbd0be67285b4137de3a41e3039344c1a6d764f SHA512 681d5ee8233e60ae96d84f6315c9886080dd211bd55c8e3ceb89b679221c0d3bc8871bf96ee8b91c24fa12feecca6f213e6e0f91de94b9b102e4308130ee208c
MISC metadata.xml 575 BLAKE2B d4d3ac883ccfd199e985d1d78be584a14b0233550e41142bdfeda2243d514476daeef6b47d2ccba16525eccc58df0ec58215b810b995d0b83df53c6de58a2895 SHA512 5d1e6633bab522940d2461d230f3eff660d3c0088063ec82c7506aeca071a553d63893851968c20f4073bb2fb554e63deb2da54b405a4c75923e77f4286fe578

@ -3,10 +3,9 @@
EAPI=7
LUA_COMPAT=( lua5-{1..3} )
LUA_REQ_USE="${MULTILIB_USEDEP}"
LUA_COMPAT=( lua5-{1..3} luajit )
inherit lua multilib-minimal toolchain-funcs
inherit lua toolchain-funcs
DESCRIPTION="LuaExpat is a SAX XML parser based on the Expat library"
HOMEPAGE="https://matthewwild.co.uk/projects/luaexpat/"
@ -18,7 +17,7 @@ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
REQUIRED_USE="${LUA_REQUIRED_USE}"
RDEPEND="
dev-libs/expat[${MULTILIB_USEDEP}]
dev-libs/expat
${LUA_DEPS}
"
DEPEND="${RDEPEND}"
@ -34,11 +33,10 @@ src_prepare() {
sed -e 's/-O2/-DLUA_32BITS/g' -i Makefile || die
lua_copy_sources
lua_foreach_impl multilib_copy_sources
}
lua_multilib_src_compile() {
pushd "${WORKDIR}/${P}-${ELUA/./-}-${MULTILIB_ABI_FLAG}.${ABI}" || die
lua_src_compile() {
pushd "${BUILD_DIR}" || die
local myemakeargs=(
"CC=$(tc-getCC)"
@ -50,12 +48,12 @@ lua_multilib_src_compile() {
popd
}
multilib_src_compile() {
lua_foreach_impl lua_multilib_src_compile
src_compile() {
lua_foreach_impl lua_src_compile
}
lua_multilib_src_install() {
pushd "${WORKDIR}/${P}-${ELUA/./-}-${MULTILIB_ABI_FLAG}.${ABI}" || die
lua_src_install() {
pushd "${BUILD_DIR}" || die
local myemakeargs=(
"DESTDIR=${ED}"
@ -69,10 +67,8 @@ lua_multilib_src_install() {
popd
}
multilib_src_install() {
lua_foreach_impl lua_multilib_src_install
}
src_install() {
lua_foreach_impl lua_src_install
multilib_src_install_all() {
einstalldocs
}

@ -3,10 +3,9 @@
EAPI=7
LUA_COMPAT=( lua5-{1..3} )
LUA_REQ_USE="${MULTILIB_USEDEP}"
LUA_COMPAT=( lua5-{1..3} luajit )
inherit lua multilib-minimal toolchain-funcs
inherit lua toolchain-funcs
DESCRIPTION="LuaExpat is a SAX XML parser based on the Expat library"
HOMEPAGE="https://github.com/tomasguisasola/luaexpat"
@ -18,7 +17,7 @@ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
REQUIRED_USE="${LUA_REQUIRED_USE}"
RDEPEND="
dev-libs/expat[${MULTILIB_USEDEP}]
dev-libs/expat
${LUA_DEPS}
"
DEPEND="${RDEPEND}"
@ -39,11 +38,10 @@ src_prepare() {
sed -e 's/-O2//g' -i makefile || die
lua_copy_sources
lua_foreach_impl multilib_copy_sources
}
lua_multilib_src_compile() {
pushd "${WORKDIR}/${P}-${ELUA/./-}-${MULTILIB_ABI_FLAG}.${ABI}" || die
lua_src_compile() {
pushd "${BUILD_DIR}" || die
local myemakeargs=(
"CC=$(tc-getCC) ${CFLAGS}"
@ -55,12 +53,12 @@ lua_multilib_src_compile() {
popd
}
multilib_src_compile() {
lua_foreach_impl lua_multilib_src_compile
src_compile() {
lua_foreach_impl lua_src_compile
}
lua_multilib_src_install() {
pushd "${WORKDIR}/${P}-${ELUA/./-}-${MULTILIB_ABI_FLAG}.${ABI}" || die
lua_src_install() {
pushd "${BUILD_DIR}" || die
local myemakeargs=(
"LUA_DIR=${ED}/$(lua_get_lmod_dir)"
@ -73,10 +71,8 @@ lua_multilib_src_install() {
popd
}
multilib_src_install() {
lua_foreach_impl lua_multilib_src_install
}
src_install() {
lua_foreach_impl lua_src_install
multilib_src_install_all() {
einstalldocs
}

@ -1,5 +1,5 @@
DIST luasec-0.9.tar.gz 52163 BLAKE2B fa95ae63b36f138f923dc412f527ff527e4f7562ad177ca7f450ef889e75c204d1bfec3773523fb68865c3846a0edc583cbf903db5233ff080074147f33bfb30 SHA512 ea601016328232ca0ff12be72897eeedac88a78834a63e1c36d2828a3187039665a2c60597b5af1fa6917b6fe87cd292fbcdfabcd67bab968f587e038d52a933
EBUILD luasec-0.9-r102.ebuild 1569 BLAKE2B b1b658be0eea29ee65475958bc0de8460df7b2986322b37c71be4fba912d963dcc11e973dd891501fd2e1d596d10174e4289c5c7fa8a8575440a865e42c10ebd SHA512 02c167d22737553543c7a17cc5acc2fd256f4976185f371f15046ef46b8334576566b5dce7d3504bda8bb760c03b3c22dc7ade18b8c95d63f821efbcab5ab638
EBUILD luasec-0.9-r102.ebuild 1579 BLAKE2B f92dab9a7a7823ae8c738dfc03449ac9f2f22434db28042ca823ebe79c94dc89a375d9ccbcd11bbe3da8b17d216150d3b71ea56594b0726c98855963589718c8 SHA512 3713916efb58a7989c9728322a9f5996f93d9aff1d87f47c9df7e15936ee50d532fe58b23a0f166e2512da13ab11bc8a3dfd8877b379561d8035f3483d9aedca
EBUILD luasec-0.9.ebuild 997 BLAKE2B 5e7ce2c2a4a1168fb844890fc586b6ee5a3d87651910b8d5c70bd3309cd8ae8796b1b77f9ea3a6c42accd4c912048b9de7ed320c2e2147ed000d1aa9a70260af SHA512 ca19f37bc58becf4f8b592f223c5588146cec6821f6c5ca0c9689419ca57795b6fa4b636841bf9f44efaec4aa751230a9f695d9faabb20e1e9acc7f7d25764b2
EBUILD luasec-9999.ebuild 1103 BLAKE2B 8d32013bb83b774b57beaeebcdd2687c769c34672be5cbf343155954417850592071591b985fd1771fa7633888a2977c0d92326f5e31732ff7ea141b43f55c3d SHA512 c6c9f13f1b8e62b3f1b4ae06374cdfdd6a99fedbcc61fb4bce8911254e9d295fbdd0f7637ef220a0acc2250a7658e29fb91e0182bc50542e49de51b03bc0cc60
MISC metadata.xml 566 BLAKE2B 2a450b74b0f44833f841b701e215721f4055b44a66e43f649e69a4f1c9757985a09a99f8798e7f219349c190f2614733aad757d81e11f610885dbc0fe08b6e6e SHA512 f02b7d7234f4a6d93cd9c734c1b8a8a09b48fb73998d240925329357a6e9dac590aff6ccde697d18698fdbd6f2c69e4d6f5e983affba91b5a84f4f3108e3d660

@ -3,8 +3,8 @@
EAPI=7
LUA_COMPAT=( lua5-{1..3} )
LUA_REQ_USE="deprecated"
LUA_COMPAT=( lua5-{1..3} luajit )
LUA_REQ_USE="deprecated(+)"
inherit lua toolchain-funcs

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

Loading…
Cancel
Save