Sync with portage [Wed Jul 15 21:25:48 MSK 2020].

develop 1717
root 4 years ago
parent bd287d657d
commit aa8484a96d

Binary file not shown.

Binary file not shown.

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,8 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-group
ACCT_GROUP_ID=355

Binary file not shown.

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,13 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
DESCRIPTION="user for openvpn_exporter"
ACCT_USER_ID=355
ACCT_USER_GROUPS=( openvpn_exporter )
ACCT_USER_HOME=/var/lib/openvpn_exporter
acct-user_add_deps

Binary file not shown.

@ -40,6 +40,8 @@ RDEPEND="${CDEPEND}
S=${WORKDIR}
QA_PREBUILT="*"
src_install() {
# conf.d
doconfd etc/default/puppet

Binary file not shown.

@ -1 +1,2 @@
DIST ReText-7.0.4.tar.gz 402934 BLAKE2B bae66a5fb8e81192d692d1a239706e2feee6ee940685cffdf3498880b2c9bd67cc85c6150e372a383e4bad13da210426fff95c06b2861b58020c2c6d298cf5d2 SHA512 cb12666b15414f4bf83f3b07c94d3bcba13dd3e6c3832c66520bfe8caafeeb87cc083a1e74530d98d6e00a00363add55fdf873e6de385e637876454130deebb3
DIST ReText-7.1.0.tar.gz 484989 BLAKE2B 74f07218cba1d76d011e5347c65ec03ef84da29119c177f35cca206cb269ae4755fdb85448562a378d2ab610930d23b4eccb62a39807409c6e80a68102be2034 SHA512 92333f31f7a57440d642246ed30156384285bb44640a0d6e7654e82749681893eaef3cb16e41fa2d7b618aa59f1ea8cb07d431736b00f35cb9130d7294e3d105

@ -0,0 +1,68 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
# no pypy{,3} support as PyQt5 does not support it at 2020-07-05 (towelday)
# https://bitbucket.org/pypy/compatibility/wiki/Home#!gui-library-bindings
PYTHON_COMPAT=( python3_{7,8,9} )
inherit distutils-r1 eutils virtualx xdg-utils
DISTUTILS_USE_SETUPTOOLS=rdepend
MY_PN="ReText"
MY_P="${MY_PN}-${PV/_/~}"
DESCRIPTION="Simple editor for Markdown and reStructuredText"
HOMEPAGE="https://github.com/retext-project/retext https://github.com/retext-project/retext/wiki"
if [[ ${PV} == *9999 ]]
then
inherit git-r3
EGIT_REPO_URI="https://github.com/retext-project/retext.git"
else
SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
KEYWORDS="~amd64 ~x86"
S="${WORKDIR}"/${MY_P}
fi
LICENSE="GPL-2+"
SLOT="0"
RESTRICT="!test? ( test )"
RDEPEND="
dev-python/chardet[${PYTHON_USEDEP}]
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/markdown[${PYTHON_USEDEP}]
dev-python/markups[${PYTHON_USEDEP}]
dev-python/pygments[${PYTHON_USEDEP}]
dev-python/python-markdown-math[${PYTHON_USEDEP}]
dev-python/PyQt5[gui,network,printsupport,widgets,${PYTHON_USEDEP}]
dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}"
src_test() {
virtx distutils-r1_src_test
}
python_test() {
esetup.py test
}
pkg_postinst() {
xdg_desktop_database_update
xdg_icon_cache_update
optfeature "dictionary support" dev-python/pyenchant
einfo "Starting with retext-7.0.4 the markdown-math plugin is installed."
einfo "Note that you can use different math delimiters, e.g. \(...\) for inline math."
einfo "For more details take a look at:"
einfo "https://github.com/mitya57/python-markdown-math#math-delimiters"
}
pkg_postrm() {
xdg_desktop_database_update
xdg_icon_cache_update
}

@ -3,11 +3,12 @@
EAPI=7
# no pypy{,3} support as PyQt5 does not support it at 2019-05-15
# no pypy{,3} support as PyQt5 does not support it at 2020-07-05 (towelday)
# https://bitbucket.org/pypy/compatibility/wiki/Home#!gui-library-bindings
PYTHON_COMPAT=( python3_{6,7} )
PYTHON_COMPAT=( python3_{7,8,9} )
inherit distutils-r1 virtualx xdg-utils
DISTUTILS_USE_SETUPTOOLS=rdepend
MY_PN="ReText"
MY_P="${MY_PN}-${PV/_/~}"
@ -27,7 +28,7 @@ fi
LICENSE="GPL-2+"
SLOT="0"
IUSE="+spell"
RESTRICT="!test? ( test )"
RDEPEND="
dev-python/chardet[${PYTHON_USEDEP}]
@ -37,18 +38,9 @@ RDEPEND="
dev-python/pygments[${PYTHON_USEDEP}]
dev-python/python-markdown-math[${PYTHON_USEDEP}]
dev-python/PyQt5[gui,network,printsupport,widgets,${PYTHON_USEDEP}]
|| (
dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
<dev-python/PyQt5-5.12[webengine]
)
spell? ( dev-python/pyenchant[${PYTHON_USEDEP}] )
"
DEPEND="
${RDEPEND}
"
BDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}"
src_test() {
virtx distutils-r1_src_test
@ -62,6 +54,8 @@ pkg_postinst() {
xdg_desktop_database_update
xdg_icon_cache_update
optfeature "dictionary support" dev-python/pyenchant
einfo "Starting with retext-7.0.4 the markdown-math plugin is installed."
einfo "Note that you can use different math delimiters, e.g. \(...\) for inline math."
einfo "For more details take a look at:"

Binary file not shown.

@ -1,3 +1,19 @@
DIST github.com%2Fbeorn7%2Fperks%2F@v%2Fv0.0.0-20180321164747-3a771d992973.mod 31 BLAKE2B f69b0989e51b0b649f81b044169fe4309f130eba5bcc6ff33aa9666b1b754aa0e524b8c7a627a91000ccc4f93bf93cdee3e97bd3b2184b050878bc3f413f0c72 SHA512 f21fd002853e4435421f8396e6be016f65be1537815c60d23940caf26e3f14dd6f2caac802cb64cd586b1b1f1220b2727de347b3d1816b8e741f68d87ebcf03f
DIST github.com%2Fbeorn7%2Fperks%2F@v%2Fv0.0.0-20180321164747-3a771d992973.zip 15013 BLAKE2B daecbcbb12a60a1423c4f419db44a0d63108fe622cf843593abb16fd75dcea703b3cf56f1c13433959eccbfb2a9bd5640f837f4be3296220366438dd7ed04f86 SHA512 44ccb3d6134742a80ac15830613c169d1b0d43e6ce40c2f2fdea07203bec134e1ba80dc57c6d14a007014ea141dca311b3ebe61b12d2181311665a9ffe83ca39
DIST github.com%2Fgogo%2Fprotobuf%2F@v%2Fv1.1.1.mod 32 BLAKE2B 939b72a591bc5fbb649c21a95b2c4b3f5d3ade273377f1f89407e55f436e7a863f15d708aabfc5435334500c8cb1e3ba057439c8ec81cfde68c1ec6794c6de6e SHA512 ab6c57ada3b0d1e36c91f3e0f45e573b91a4869f230f02a7e5e3e5a8f7e020bf56c63df1cbdc5b552ef9a4229ab739cf76df7f799091a2efa148ab9e5c12b1c5
DIST github.com%2Fgogo%2Fprotobuf%2F@v%2Fv1.1.1.zip 2461758 BLAKE2B e02c6e6512de9be1410923a6b3eec36a087f8de00e1d1e715a61e6f26a18352db169b1dbec49e3d563e294d8c65c51ca5b55361dff70d1e9e20976e46209209e SHA512 7f9d1d2671c82a1df5f79a154340dd1fa1e92952feb03a1ddaedb1f6cea371bde8d6f7c774a4351aa87abc2646f97891d0beb4d175fe9d51e2f761d37f2699ec
DIST github.com%2Fgolang%2Fprotobuf%2F@v%2Fv1.2.0.mod 34 BLAKE2B a4239cba934b6e80714b93d47e88f22ad28ce41d1d984c4261cc3f5f3b857fb28785223fa911b258e2665be2a9d24ffbd925e9e0f374452a2aacd712ad9d5f75 SHA512 e059a34363bb826bbcb8981adbfc10da90e04b86dc5376ab20bdfe1fab135953cff41ef1daa116aff10e9f3e6503168f6baf902f09aa0e8cd9a0da96b932f4b6
DIST github.com%2Fgolang%2Fprotobuf%2F@v%2Fv1.2.0.zip 482403 BLAKE2B 47db66e9c8187c20b27b9aeb8584f0f2289084103ccda25406eb30059147c3bcb867c76d145c4cab7eae801ed4cf76a63efe23f091e05c9206fcadc3358a02f6 SHA512 d102d00618f077f7d677eea9f0d4aff600e4b95caaca6ae6021355e64ed0a8fe418fd731370baa968f6fd338e377b5d3a2077b0b8a1ee399f992b8a7717cf77f
DIST github.com%2Fmatttproud%2Fgolang_protobuf_extensions%2F@v%2Fv1.0.1.mod 56 BLAKE2B 50d2d6dc9c1ee92d629af8c9aae9fe5f70a0c6fe270a95a8232cee3c50132ef90c68218ac64a3b5b72d94e23ecbea5f567fef39a81be3d4585bae3f4f5348545 SHA512 5235188477921a263176fefaffccdaca4bf8175a2e248356a06596e37fa868400203172c7fe9fb80d0a65d335d23d80edefd242657de0eb83d9360589e063bba
DIST github.com%2Fmatttproud%2Fgolang_protobuf_extensions%2F@v%2Fv1.0.1.zip 44378 BLAKE2B 15ccda2b94bb024656859fb8a6968782b9a1bffb786b0b1ed69a3284b01f4a2100b3f3c46b6ebcb8f7febedb5bd4f6762fe333b7d4f1d14c700f8fce60843352 SHA512 e9349ee2a7d5e5b129ec6a1c0507854aebca82cf9ac2d0a681cac2f4630ea35551ede48e1931494362232a83dc9f26b6b4162c6114e0176084c50101b1da46b0
DIST github.com%2Fprometheus%2Fclient_golang%2F@v%2Fv0.9.1.mod 43 BLAKE2B 2bfedb841a10d8d6a861189203de74eb9bc6bc37bb10cdfc2404b1e972b7672568ed27d235e143d831cf2f840943c039398296cb78f1309f00d1ad9e0ce21056 SHA512 191cf6496c41b2b82c9a8f2ab2aeab63ede47807160f7cf746c548b3e92e367fc8f80ff8c6efbb7e91ca5903d5672b235c1ab9f14d3f9f988e8ff1c821d3b8bf
DIST github.com%2Fprometheus%2Fclient_golang%2F@v%2Fv0.9.1.zip 190367 BLAKE2B 3672fecc77f62ce656fd138e1ec906068a300f147f9daef304802a813578dc50b873540e16cdd5fe03940a612c0737a6b67217e8bd6fd19eced29e8c1ed875e1 SHA512 13f04c5c3978426e5961c5d0b2494497149352ddc5cb7a528b69dab2a38edda2df0d3440445270b90d2588bc4d77ea2164815dad475d3a50f0898e8a64999b61
DIST github.com%2Fprometheus%2Fclient_model%2F@v%2Fv0.0.0-20180712105110-5c3871d89910.mod 42 BLAKE2B 5519896b44b7bc3089a8965dc61aae63745c64ba1a390d3fff1202be7f8dd34f59862c04b49e377d6616a93a0341662becce65d431d445703a160ba49eda208b SHA512 c84dfe43954b19c1e4ac5ff8738e79db469f3bc1dc55e69b12503d0a5cf125cc74f4797ddbfe64b2a1bd1e2940575c32678671d51f67161c4f5b53b2a85ac46a
DIST github.com%2Fprometheus%2Fclient_model%2F@v%2Fv0.0.0-20180712105110-5c3871d89910.zip 68325 BLAKE2B 9b783cb98fd4f1ceb158d8a72ffdc7d0c232a8a9740de221b4321b2c7e240d98bb5f2bfca74222c6a7796368d48b1d3e315229a9d2c0436d5590bc200be31817 SHA512 25290d540c185fa2010b06596a70b6d06d4ae14fd92b4e5596b48074e4e5ef5ec6b990c8d0bc39cb44f0c2a83a0a1ac4415f86ea4e3fb69970bb2496f148d0c9
DIST github.com%2Fprometheus%2Fcommon%2F@v%2Fv0.0.0-20181020173914-7e9e6cabbd39.mod 36 BLAKE2B 39120b6af83d45857c990115ff52d8828278a9ce158b01621d8dcc517c23ff139532a2c2e53ec97616f0c65a2e0db3ede7c5fe59eb33be277e2c60650362b232 SHA512 1b262da0100655c3a56c0e551866491b81d2b88fd5fed9cc43a57bce3634c88c82c798ed1a823237011f6be68b5f0e1fe8284526cd68204851de30a44fc34fbf
DIST github.com%2Fprometheus%2Fcommon%2F@v%2Fv0.0.0-20181020173914-7e9e6cabbd39.zip 130419 BLAKE2B 56fadd8d035da2aa2d84be051b0970d4c9ae223c8a0a40f21310007c86e4c32a907aca24ba890ea39270668f7cabaeda3e4a80eddd4bf2677e9f1ffd1c08f9f6 SHA512 9285913d3efd47148d1b3fdf8d3a277408079c07a928f62ae4d8ca7bcadaa815399d21945c0c983998e8ebd5645005ba15b7a892c14c52944edbf241072717ed
DIST github.com%2Fprometheus%2Fprocfs%2F@v%2Fv0.0.0-20181005140218-185b4288413d.mod 36 BLAKE2B 3c6acbd1022261065a321c6f3cfa2946b58011f45fae9b98761397eb7e5e0984dae4ea34c4f837f798ab29ca8e26ed3f07771be10e500a99ce7e5e9f4c401b5c SHA512 05f032eba0c264b186936c2b9831624a01999972d4f1bba6aa15c452407eb10d402f1ac674eb41e2d24fa66e85ae2e56efd2326fc4ecc741169b9908d7935335
DIST github.com%2Fprometheus%2Fprocfs%2F@v%2Fv0.0.0-20181005140218-185b4288413d.zip 100732 BLAKE2B 64f41a173e5e0bd339e41550d2315e822ee55caf25a404a37a1e3141badb537a07a72e1e0ddeff2e8c0d00894ace99091cdd99787dde891efe54b693f89650bb SHA512 a7e2f22710d68dedcbda6f814df16437aaf3bcaa2a19a5bc649413621f94232eca6af5c3e4425983df7eea984d0a1ae36dc51e9b9ccaef61752317f6a75b89d9
DIST github.com-beorn7-perks-3a771d992973f24aa725d07868b467d1ddfceafb.tar.gz 10800 BLAKE2B 5487155a4d010af70b6ea2625d10ae03b6642507902d7dc168edb5d7cf0efa1777b248d0df34ed1a2564950b12613256c1c6ce1d8c9723cc34977ed883b21c8d SHA512 c6aa5df262ab607c0a5f64372fc2fec1ddda9e5624e9d9a22cdd1bc11822c99736d88bdf5e3fc6050217b5084548417cb2926c3940e156da9397d828d59ce277
DIST github.com-golang-protobuf-e09c5db296004fbe3f74490e84dcd62c3c5ddb1b.tar.gz 269725 BLAKE2B a62a3f96c49d77776103a9bece69b615e00d4140c9de8b42fb7edac979c8a8d172bd21062d3d6e24ae01dba10b320ff208ff8c6916da2d84118da448afc8caf7 SHA512 f64fa42e7ed9701860e16b1cdedc9f6b029630b6f534ee403ede1223c0c7542c731735995ea9763f093b56146776902b6633e5b1691b1f1dd4ab84dea0092099
DIST github.com-matttproud-golang_protobuf_extensions-c12348ce28de40eed0136aa2b644d0ee0650e56c.tar.gz 37215 BLAKE2B b3b007f925a4a1c1862c8cbe34c5cd225dfa610ad8c56b5328e6920a44b507680daeea97209370bd6b259654d0ca5791f4bcc54b8bd8970b9aaf994eada16d4f SHA512 2f78290d1448cfc041d10210092d6da6f3df2b9b6c16ff730750e976e450dafe2645ba945319a0a3064c88f9c18652c69c0e0cf69d8931c08d23ffe65a8cc07d
@ -5,4 +21,7 @@ DIST github.com-prometheus-client_golang-f504d69affe11ec1ccb2e5948127f86878c9fd5
DIST github.com-prometheus-client_model-99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c.tar.gz 54718 BLAKE2B 1dec6ac40fc5103117c2cf0538e138fc57c7b9795516c530b3c0dc2f5983f88c2d0eb1b094859815397fb14d50648240556fb6b11a8935586eca29eb66b4e958 SHA512 99bc72ca0887df4c7ab5a006af9c59afdc1281fe6d6d17f2897428a06da80d63d6ccd476deacb933cb208357500f14a7b96e99b9c5a7582e65a7aae87aaf2c50
DIST github.com-prometheus-common-38c53a9f4bfcd932d1b00bfc65e256a7fba6b37a.tar.gz 63007 BLAKE2B a62f727ef9dd42d52f495ab7449cbafbe7c7fcdb1bc171df97c40348dcb7fe12788223d7a2aea3398cae7dd17ec73ae6349b5e5f35f4785f2796cc9a16c2d420 SHA512 4f1ab6cffc309a00ed68959b9372e1d3ea4f8d597b8c462a4e365cf22737245e601b8bda0764bbd1f0172d773805d16e90a8aa90cb95e9462e35320043e04060
DIST github.com-prometheus-procfs-780932d4fbbe0e69b84c34c20f5c8d0981e109ea.tar.gz 56873 BLAKE2B 31ae12d51b6a28c285bd5854b137d2634499d0db3c2c65c0404ca5a902ffec2e9bf689261ea51c2fe1643733f09a780c437f7a7899a5e6c3e3d100a36e07b897 SHA512 a548c6bc71456c9878cb34ad1514d92c8737e01b555e953f848cc1ae7944424b06a14a8ab0c6de4d99dbb189a0f29e2bb9ae09b5adffc327c28f5c50c2819892
DIST golang.org%2Fx%2Fsync%2F@v%2Fv0.0.0-20181108010431-42b317875d0f.mod 25 BLAKE2B 01f7f78a0324ca728efd4d662ea130d7e200ab25805125e472720ca01feaaf2625b15bf53f51837a6913e35e060a19018928a38851d7445f39e6e42e237dfda2 SHA512 a9dd073f69c5be1153aaab6e84dd3bb1610a0df8b9882ca4c486c6625d4b5201e5032f86e5014421358dff564d93c4e67f20e5fd1d21ed5e259ddfbc90af43c0
DIST golang.org%2Fx%2Fsync%2F@v%2Fv0.0.0-20181108010431-42b317875d0f.zip 24743 BLAKE2B 916fbb71a738b80833a6e9ab44ac53568d4bf6e9400b8a63197cfcc96488c60b43d602664366fd82fb686bc9b5ebf80d2d6fda3cb791a83042c03d965ab7efb4 SHA512 cbc53e045f3837deea920bc08867a45c5ef3e0afb99f7f5179653790d36a541f4e96e5f9e3e36560aff2b38ebde5a5004992c09a8e2722d44cfaf81d654de5b4
DIST openvpn_exporter-0.2.1.tar.gz 10126 BLAKE2B 06899bdc151232b6588e865ccdb69c4cc0b4f618de8b8d03240d72c7fe2acade2c65b60597f744936c19c603da0e0f924b8910a5898349a42884f91deb882e59 SHA512 9cbf859be78337e15c1e3ba0c2dc687afc18b4879af68b7b9fe823aebb415c8b430aedb7e31ffdd1685c582632db1427504a1fb874aac49c8ef11df4345ecca1
DIST openvpn_exporter-0.3.0.tar.gz 11505 BLAKE2B 61a991e3ea8001a9481b8207c83316c1e028a68f657f3de191b7d69d7a3fefa753663292c2d77d09ef6024f9392b0077fc5170f2e8a19c0397240281dec09482 SHA512 4bea502e7dfd32e5fea9fc21fbfdb65ddcb381d6d1b5463c361e60026f88693912b998979e9fab3e455196eb7dec1677dc9feb293f4f14609f4352eb9d238cd9

@ -0,0 +1,59 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit go-module
EGO_PN="github.com/kumina/openvpn_exporter"
DESCRIPTION="Prometheus Exporter for OpenVPN"
HOMEPAGE="https://github.com/kumina/openvpn_exporter"
EGO_SUM=(
"github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973"
"github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod"
"github.com/gogo/protobuf v1.1.1"
"github.com/gogo/protobuf v1.1.1/go.mod"
"github.com/golang/protobuf v1.2.0"
"github.com/golang/protobuf v1.2.0/go.mod"
"github.com/matttproud/golang_protobuf_extensions v1.0.1"
"github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod"
"github.com/prometheus/client_golang v0.9.1"
"github.com/prometheus/client_golang v0.9.1/go.mod"
"github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910"
"github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod"
"github.com/prometheus/common v0.0.0-20181020173914-7e9e6cabbd39"
"github.com/prometheus/common v0.0.0-20181020173914-7e9e6cabbd39/go.mod"
"github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d"
"github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod"
"golang.org/x/sync v0.0.0-20181108010431-42b317875d0f"
"golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod"
)
go-module_set_globals
SRC_URI="https://github.com/kumina/openvpn_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz
${EGO_SUM_SRC_URI}"
LICENSE="Apache-2.0 BSD MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
COMMON_DEPEND="acct-group/openvpn_exporter
acct-group/openvpn_exporter"
DEPEND="${COMMON_DEPEND}"
RDEPEND="${COMMON_DEPEND}"
src_compile() {
go build -o ${PN} || die
}
src_install() {
dobin ${PN}
dodoc {CHANGELOG,README}.md
keepdir "/var/log/${PN}"
fowners ${PN}:${PN} "/var/log/${PN}"
newinitd "${FILESDIR}"/${PN}.initd ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotated" "${PN}"
}

Binary file not shown.

@ -1 +1,2 @@
DIST gnote-3.36.1.tar.xz 3512000 BLAKE2B 00f5f8049085c855722f92fb3231684d53c4a15b96b7148a2a810d8fdd4c02b22510f4c4f9296fd7e2f4ba96e44d55215f71a2eb78ecb60170f8bb7ffbdef6ef SHA512 4c0c9d469836366a7886928beb0b47c48e60ee41591de193b9af597214f373c2c14b25745f6238ccbede8df8e7d4d83f39a34aed1b155895479bba3e043d2cce
DIST gnote-3.36.2.tar.xz 3511244 BLAKE2B d7b8859ec47f8da2d37f285141d4c7fc0f591751a1ebea70339d6cdb727c74a6ca711515f8169130e1b46c1653c0c98da3bc4bce691b8d7a7f2794745e8db2a7 SHA512 6d2e32954836b4ac2800071385eedd6ad391936ee52626b7d51b077e4b4a3e071149804281e645b0fd88dc18e9f3c0f8d53e0994d33875ce5375d6b50b14d5e1

@ -0,0 +1,71 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
GNOME2_LA_PUNT="yes"
inherit gnome2 readme.gentoo-r1
DESCRIPTION="Desktop note-taking application"
HOMEPAGE="https://wiki.gnome.org/Apps/Gnote"
LICENSE="GPL-3+ FDL-1.1"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="debug"
# Automagic:
# glib-2.32 dep
# >=dev-libs/unittest++-1.5.1 (but not detected due to missing .pc)
COMMON_DEPEND="
>=app-crypt/libsecret-0.8
>=app-text/gspell-1.6.0:=
>=dev-cpp/glibmm-2.62.0:2
>=dev-cpp/gtkmm-3.18:3.0
>=dev-libs/glib-2.32:2[dbus]
>=dev-libs/libxml2-2:2
dev-libs/libxslt
>=sys-apps/util-linux-2.16:=
>=x11-libs/gtk+-3.20:3
"
RDEPEND="${COMMON_DEPEND}
gnome-base/gsettings-desktop-schemas
"
DEPEND="${DEPEND}
app-text/docbook-xml-dtd:4.1.2
>=dev-util/intltool-0.35.0
dev-util/itstool
virtual/pkgconfig
"
src_prepare() {
# Do not alter CFLAGS
sed 's/-DDEBUG -g/-DDEBUG/' -i configure.ac configure || die
gnome2_src_prepare
if has_version net-fs/wdfs; then
DOC_CONTENTS="You have net-fs/wdfs installed. app-misc/gnote will use it to
synchronize notes."
else
DOC_CONTENTS="Gnote can use net-fs/wdfs to synchronize notes.
If you want to use that functionality just emerge net-fs/wdfs.
Gnote will automatically detect that you did and let you use it."
fi
}
src_configure() {
gnome2_src_configure \
--disable-static \
$(use_enable debug)
}
src_install() {
gnome2_src_install
readme.gentoo_create_doc
}
pkg_postinst() {
gnome2_pkg_postinst
readme.gentoo_print_elog
}

@ -1,5 +1,5 @@
--- src/zyGrib.pro.orig 2017-01-16 21:55:32.459388028 +0100
+++ src/zyGrib.pro 2017-01-16 22:17:18.509256966 +0100
--- a/src/zyGrib.pro 2017-01-16 21:55:32.459388028 +0100
+++ b/src/zyGrib.pro 2017-01-16 22:17:18.509256966 +0100
@@ -8,7 +8,7 @@
TARGET = zyGrib

@ -0,0 +1,20 @@
From 481e9d3f8f8086afa7deb4ac6db60a2575dc2203 Mon Sep 17 00:00:00 2001
From: KIVACHUK Valentin <valentin.kivachuk@irt-saintexupery.com>
Date: Tue, 10 Sep 2019 11:29:37 +0200
Subject: [PATCH] Fix proj build error
---
proj_deprecated_api.patch | 2 ++
1 files changed, 2 insertions(+)
--- a/src/map/Projection.h 2016-11-09 17:27:38.000000000 +0100
+++ b/src/map/Projection.h 2019-09-10 10:20:27.440134499 +0200
@@ -21,6 +21,8 @@
#include <QObject>
#include <cstdio>
+#define ACCEPT_USE_OF_DEPRECATED_PROJ_API_H
+
#include "proj_api.h"
class Projection : public QObject

@ -0,0 +1,38 @@
From 73b1e8a9b622a27a03425db03bdbaee0eb88b8b7 Mon Sep 17 00:00:00 2001
From: Andreas Sturmlechner <asturm@gentoo.org>
Date: Wed, 15 Jul 2020 14:21:13 +0200
Subject: [PATCH] Fix build with Qt 5.15 (missing headers)
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
---
src/IacPlot.h | 1 +
src/SkewT.h | 1 +
2 files changed, 2 insertions(+)
diff --git a/src/IacPlot.h b/src/IacPlot.h
index dab76b6..59f6deb 100644
--- a/src/IacPlot.h
+++ b/src/IacPlot.h
@@ -30,6 +30,7 @@ Lecture mise en mémoire d'un fichier IAC (fleetcodes)
#include <QApplication>
#include <QPainter>
+#include <QPainterPath>
#include <QString>
#include "DataMeteoAbstract.h"
diff --git a/src/SkewT.h b/src/SkewT.h
index eb70372..36d4df8 100644
--- a/src/SkewT.h
+++ b/src/SkewT.h
@@ -16,6 +16,7 @@
#include <QMainWindow>
#include <QFrame>
#include <QPainter>
+#include <QPainterPath>
#include <QLayout>
#include <QKeyEvent>
#include <QPrintDialog>
--
2.27.0

@ -1,11 +1,10 @@
# Copyright 1999-2018 Gentoo Foundation
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils qmake-utils
EAPI=7
MY_PN="zyGrib"
inherit desktop eutils qmake-utils
DESCRIPTION="GRIB File Viewer - Weather data visualization"
HOMEPAGE="http://www.zygrib.org/"
@ -14,15 +13,14 @@ HOMEPAGE="http://www.zygrib.org/"
#SRC_URI="http://www.zygrib.org/getfile.php?file=${MY_PN}-${PV}.tgz -> ${P}.tgz
SRC_URI="https://dev.gentoo.org/~mschiff/distfiles/${MY_PN}-${PV}.tgz -> ${P}.tgz
https://dev.gentoo.org/~mschiff/distfiles/${PN}-icon.png
maps? (
maps? (
http://zygrib.org/getfile.php?file=zyGrib_maps2.4.tgz -> zygrib-maps2.4.tgz
http://www.zygrib.org/getfile.php?file=cities_1k-3k.txt.gz -> zygrib-cities_1k-3k.txt.gz
http://www.zygrib.org/getfile.php?file=cities_300-1k.txt.gz -> zygrib-cities_300-1k.txt.gz
http://www.zygrib.org/getfile.php?file=cities_0-300.txt.gz -> zygrib-cities_0-300.txt.gz
)"
LICENSE="GPL-3
public-domain"
LICENSE="GPL-3 public-domain"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="+maps"
@ -40,20 +38,25 @@ RDEPEND="${DEPEND}"
S="${WORKDIR}/${MY_PN}-${PV}"
PATCHES=(
"${FILESDIR}/${P}-libs.patch"
"${FILESDIR}/${P}-proj-6.patch" # bug 686078
"${FILESDIR}/${P}-qt-5.15.patch" # bug 732732
)
src_prepare() {
sed -i 's,INSTALLDIR=$(HOME)/zyGrib,INSTALLDIR=$(DESTDIR)/opt/zyGrib,' Makefile
sed -i "s,QMAKE=/usr/bin/qmake,QMAKE=$(qt5_get_bindir)/qmake," Makefile
sed -i "/QWTDIR/d" Makefile
sed -i 's,INSTALLDIR=$(HOME)/zyGrib,INSTALLDIR=$(DESTDIR)/opt/zyGrib,' Makefile || die
sed -i "s,QMAKE=/usr/bin/qmake,QMAKE=$(qt5_get_bindir)/qmake," Makefile || die
sed -i "/QWTDIR/d" Makefile || die
#use jpeg2k || sed -i '/^DEFS=/ s/-DUSE_JPEG2000//' src/g2clib/makefile
sed -i '/^DEFS=/ s/-DUSE_JPEG2000//' src/g2clib/makefile
sed -i '/^LIBS +=/ s/-ljasper//' src/zyGrib.pro
epatch "${FILESDIR}/${P}-libs.patch"
sed -i '/^DEFS=/ s/-DUSE_JPEG2000//' src/g2clib/makefile || die
sed -i '/^LIBS +=/ s/-ljasper//' src/zyGrib.pro || die
default
}
src_install() {
default
rm zyGrib
rm zyGrib || die
doicon -s 32 "${DISTDIR}/zygrib-icon.png"
make_wrapper "${PN}" "./bin/${MY_PN}" "/opt/${MY_PN}"
domenu "${FILESDIR}/zygrib.desktop"
@ -62,7 +65,7 @@ src_install() {
insinto "/opt/${MY_PN}"
doins -r "${WORKDIR}/data"
insinto "/opt/${MY_PN}/data/gis"
gzip "${WORKDIR}"/*.txt
gzip "${WORKDIR}"/*.txt || die
doins "${WORKDIR}"/*.txt.gz
fi
}

Binary file not shown.

@ -18,7 +18,7 @@ RDEPEND=">=dev-libs/libical-0.48:=
dev-libs/popt:=
>=x11-libs/gtk+-2.10:2=
berkdb? ( >=sys-libs/db-4:= )
clock-panel-plugin? ( >=xfce-base/xfce4-panel-4.10:= )
clock-panel-plugin? ( <xfce-base/xfce4-panel-4.15:=[gtk2(+)] )
dbus? ( >=dev-libs/dbus-glib-0.100:= )
libnotify? ( >=x11-libs/libnotify-0.7:= )"
DEPEND="${RDEPEND}

Binary file not shown.

@ -12,7 +12,7 @@ SRC_URI="mirror://gnu-alpha/gv/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ppc64 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ppc ppc64 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
IUSE="xinerama"
RDEPEND="

@ -1 +1,2 @@
DIST pytextile-3.0.3.tar.gz 48560 BLAKE2B f8d3077e2b8e4de7157dcd9ed17f7889301946c2d3034dbbb0171b4930bd7268c65ce1f950552db2b783aa48acae639d5f4ccfcbca96807562b4a6377c3dd220 SHA512 142fe77c8858b0444428f9ca0f24d1a054a1566f85f00fd5cf860bb705a19666249cd03420d258d5acfc9f45052dd25e52767492a60a10d986d86b711b54612f
DIST pytextile-4.0.1.tar.gz 49282 BLAKE2B b51220ff33fe43b83d0aefee840b5170747015073fbe88934798c2505c3455e9805eee8815ec8068521c88a44a309bd0eb32e84757d088536f1c12a1f9bc0ca0 SHA512 e299663fd71b935e9c948649baba80584b1339dd3393a3f37b39475fe1d6a4addaaa2adcd16ba57b4c5db43ab9f8de6e9332871915b1fff7b7882ad5e8d64580

@ -0,0 +1,55 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{7,8,9} )
DISTUTILS_USE_SETUPTOOLS=rdepend
inherit distutils-r1
MY_PN="python-textile"
MY_P="${MY_PN}-${PV}"
DESCRIPTION="A Python port of Textile, A humane web text generator"
HOMEPAGE="https://github.com/textile/python-textile"
SRC_URI="https://github.com/textile/python-textile/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
dev-python/html5lib[${PYTHON_USEDEP}]
dev-python/regex[${PYTHON_USEDEP}]
dev-python/six[${PYTHON_USEDEP}]"
DEPEND="
test? (
${RDEPEND}
dev-python/pytest[${PYTHON_USEDEP}]
)"
S="${WORKDIR}/${MY_P}"
src_prepare() {
default
# remove useless --cov arg injection
rm pytest.ini || die
# remove useless pytest-runner dep
sed -e "s/pytest-runner//g" -i setup.py || die
# remove tests that need network access
local my_drop_tests=(
test_getimagesize.py
test_imagesize.py
test_textile.py
)
for test in ${my_drop_tests[@]};
do rm "tests/$test" || die
done
}
python_test() {
pytest || die "Testsuite failed under ${EPYTHON}"
}

Binary file not shown.

@ -22,7 +22,7 @@ fi
LICENSE="public-domain"
SLOT="3"
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"
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"
IUSE="debug doc icu +readline secure-delete static-libs tcl test tools"
if [[ "${PV}" == "9999" ]]; then
PROPERTIES="live"

Binary file not shown.

@ -1,7 +1,11 @@
DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.7_10.tar.gz 190134743 BLAKE2B 294ff3be6e68f14e9c53df04e7c4092a73fc27bfb5e1c35ab686ce6a30c69d0f7e9133815ddfdc0217098af287e1cd50353aaa204d3a813052d7c4375a8b8f1b SHA512 71054ff5c996a2ab4409d06d84900525ddd66e6b68bb2c558f0054343fb5fdc92efb4727ef6d9b91b1359e2b9c719ff3eb224eb1a9c5096753e723f12604535b
DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.8_10.tar.gz 190206674 BLAKE2B 1e5ac030b23cdcd16e9efb696bf4f22da1178234241c4951b36d19e9567c8e838e99311be0aafe336b92cd5cecd2a53bb4dcfdd40f7ad13a26abaf41dddc5cbc SHA512 e81cc6a0d3aa3afdf021b8a5c39fc821827eba3010c437d97ad219336749b15cbb057bc92b129b0899da104066003554065e5591a6fda622b9852db2ad895237
DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.7_10.tar.gz 178497327 BLAKE2B 59d84c0c09368e4bae499469efb0bc2f1f9c6f518fbcfbf75190e6e06eb4592b9da021b9101c769e6e6bd4c83e88217f177b489103f36f0ba92ba757df216989 SHA512 1ecc0b25295708af3011a5428f811a5c6c14f7edf17f853c7ed286687a3b2f982d4f8b0a45d9c7c24b476ccc60143f5e71c75464fab4d2d8be16c186f1e48341
DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.8_10.tar.gz 182327847 BLAKE2B ad71bfd979f27ffd05abea804069402a7a47906cff70cbe68c29a8185d97043e4e28471d6444af757955c9be5d73d8d17f3f73120b8d2997dc5fb5b21f9045dc SHA512 32843b32d89125da14c8e77509e4dfb86b1aae55407edabb52a592a29ecb3ba17d300b91751f937189f370edfd57d60fa622cb9da2a9e190f35b219d0cd58774
DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.7_10.tar.gz 176497292 BLAKE2B 2bf45400c5d201cb6530d01b234da28078cf3a8e8bb23470a3c698b982ca700828baf653d00cf4aa1933193742474fc81b5df9054f33706545c46733a1ccc79d SHA512 adc40402de81f49fd691c7c07e805f6ee3a4298353417c5e92dd14d791253f4eaafcdb68837d614d7850f82006701b048df04cd6a1d25a16d125a2a38bc277d5
DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.8_10.tar.gz 176566452 BLAKE2B 584adc02d816cda72e5396d9e2a34768fe9c1ad3f6b37ad4b599ee45ee008389d7bec93ca983aec3e91995fa05548137f4ecb5c84b524333e0c7a35c5fc917ec SHA512 ab7768556488f0d13c3868e65ee22bedfaffc904d2b6af6d1c0ad48a382c2bc761dce99bd3a196e4ddd2a67f56019774a84edeab7db3e9e4650ef020f0d2e0a5
DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.7_10.tar.gz 193346198 BLAKE2B 506fc32c3c1ea729e79a044f31bafad995aaf7ac23bda47b21926493aa8d473195067a2d7989b0eafb91d7054222ebd5d924567b1d4b6935be7cff9fd25b1e90 SHA512 fa19880289ce8fa4a72fddd5633cf86a33d9f81346a5a7e51c06d7fc48f1953da01f020d15151d74a624ecc22a9f8f2c8ee4f996a4b3ac2ec79f0fb5207a40f8
DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.8_10.tar.gz 193398310 BLAKE2B 079f48381bf58edb7b9b75f4305df72184710c90101588fccce4edb0535b976b2f6332b66fdd8cf8b442eebbeee5a6044e0445519f9bbd8ed20b02f50e9fc203 SHA512 115b5627d6d1245f8393e3cd869bdb7accb42c35bc0e9030fb60701f61253ea8ce382edec75ded85ff5b0a0c8bbfbecdec81b16aef87fb6fc76c684628abf1e5
DIST OpenJDK8U-jdk_aarch64_linux_hotspot_8u252b09.tar.gz 102238546 BLAKE2B ffa0aec56e4f6fe03cab88e0423e5b1ee24ccbe9eb0bd37d37449c596095d69e7fcb9044c0846a750d3d1a842c2f719d18a28510bd226a8aa9b383e4ae29993b SHA512 a6ef9864cde15e96abcb94f2e72db77f473e609fd162934fc3d35225223a20e20c464e44ce0c022dbf15f6d68d25bf2187271d8643e5cff2894f1839929050ae
DIST OpenJDK8U-jdk_arm_linux_hotspot_8u252b09.tar.gz 96925784 BLAKE2B 3e294a9a38729e453dd74d691bad4abd043fefd2a850a1d8fa142e5e5c2b908a1c7a0d9f2ebf1760ecf065cb615a59a930c84e86e86a339da01a794f1f3319ed SHA512 a361cb07b43ebaf7d1aa277c15ee41493fb25ff78dcad1801436ef68a54c4a89f2361c3f57ce328c507b9f36c81a301d95d9315d32aa888163d533d7d741effd
DIST OpenJDK8U-jdk_ppc64le_linux_hotspot_8u252b09.tar.gz 99444051 BLAKE2B 87f691298c7335c0adb285db6eff8ecb3897bb7b229bc6491b992375bd63c93eef126702ee461609b3a781240747d3f1372b4ed711a420cca1248878a82a2b6f SHA512 875d0d74088744a0a56a4706cd86a78ef2c5eb1a5792ba94ef2f51bf894a94123e761ab8fa0e5e74272c2f350a881073e4054e9f1c504421f43bb93b837d26a4

@ -0,0 +1,115 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit java-vm-2 toolchain-funcs
abi_uri() {
echo "${2-$1}? (
https://github.com/AdoptOpenJDK/openjdk${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jdk_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
)"
}
MY_PV=${PV/_p/+}
SLOT=${MY_PV%%[.+]*}
SRC_URI="
$(abi_uri arm)
$(abi_uri aarch64 arm64)
$(abi_uri ppc64le ppc64)
$(abi_uri x64 amd64)
"
DESCRIPTION="Prebuilt Java JDK binaries provided by AdoptOpenJDK"
HOMEPAGE="https://adoptopenjdk.net"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64"
IUSE="alsa cups doc +gentoo-vm headless-awt nsplugin selinux source webstart"
RDEPEND="
media-libs/fontconfig:1.0
media-libs/freetype:2
>=sys-apps/baselayout-java-0.1.0-r1
>=sys-libs/glibc-2.2.5:*
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
cups? ( net-print/cups )
doc? ( dev-java/java-sdk-docs:${SLOT} )
selinux? ( sec-policy/selinux-java )
!headless-awt? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
x11-libs/libXtst
)"
PDEPEND="webstart? ( >=dev-java/icedtea-web-1.6.1:0 )
nsplugin? ( >=dev-java/icedtea-web-1.6.1:0[nsplugin] )"
RESTRICT="preserve-libs splitdebug"
QA_PREBUILT="*"
S="${WORKDIR}/jdk-${MY_PV}"
pkg_pretend() {
if [[ "$(tc-is-softfloat)" != "no" ]]; then
die "These binaries require a hardfloat system."
fi
}
src_install() {
local dest="/opt/${P}"
local ddest="${ED%/}/${dest#/}"
# Not sure why they bundle this as it's commonly available and they
# only do so on x86_64. It's needed by libfontmanager.so. IcedTea
# also has an explicit dependency while Oracle seemingly dlopens it.
rm -vf lib/libfreetype.so || die
# Oracle and IcedTea have libjsoundalsa.so depending on
# libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
if ! use alsa ; then
rm -v lib/libjsound.* || die
fi
if use headless-awt ; then
rm -v lib/lib*{[jx]awt,splashscreen}* || die
fi
if ! use source ; then
rm -v lib/src.zip || die
fi
rm -v lib/security/cacerts || die
dosym ../../../../etc/ssl/certs/java/cacerts \
"${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
# provide stable symlink
dosym "${P}" "/opt/${PN}-${SLOT}"
use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}
pkg_postinst() {
java-vm-2_pkg_postinst
if use gentoo-vm ; then
ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JDK"
ewarn "recognised by the system. This will almost certainly break"
ewarn "many java ebuilds as they are not ready for openjdk-11"
else
ewarn "The experimental gentoo-vm USE flag has not been enabled so this JDK"
ewarn "will not be recognised by the system. For example, simply calling"
ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
ewarn "fully supports Java 11. This JDK must therefore be invoked using its"
ewarn "absolute location under ${EPREFIX}/opt/${P}."
fi
}

Binary file not shown.

@ -1,7 +1,5 @@
DIST perl-5.30.0-patches-1.tar.xz 17352 BLAKE2B 67eb1c4ce6ada27e05962d06fa9c5675ca1d22623b5fd172ce8ceaa17f2e51d61f9451955f9f6acf6d97ea7d71c72b583be1378ccbf9174c88580baec2049a48 SHA512 4fe1f2de5e72e56890858148d20b772df63dce34cb3977ec47d8ed5323c4843929130f660f1558c282c97e65efa1c6d2fdacf9e2dcc0ef1d487a0b69dbb5bbb4
DIST perl-5.30.1.tar.xz 12367844 BLAKE2B 7e5dafb218a993301b986d198c02179d2d93d7418b910f813c7e5bc44ca4d22f004d4d768273ab5d4b6f16103d8a1896237ee14e195d2644fc4c05f5ade5404b SHA512 8f3339efdcd1bb58fa58a90042181bef86bb09e4598c737e446ed43b56d2ab23d67eced5e36fb08fc61e076acfdb572a12e46a1277f5299a3f412054df0b88bf
DIST perl-5.30.2.tar.xz 12373480 BLAKE2B b34344221409fad8aad5c24a9851a95521720bfd85ff150fec02a70d78188cd3a4d6327931b955323c86eab6b16979128dd323f78b797cf3244518df840f70b0 SHA512 b945c95f44a58b9cc920c926e23017c4270c0dc8daf0bf8169cd7c8f6b8f980f1780bee4fbd525df518edc50f08364ba65988cb17e72a1667f50226459b65087
DIST perl-5.30.3.tar.xz 12375128 BLAKE2B ff0668c896e46ea35a1b8bd4a7d800c8668d6995185cd8c43fca332da2fa63965bb5276b2d5cf9738c0b7fb735140f6e33f1b4582899017903f86753065f417b SHA512 0ea62cf17532ee99217a218c39aa530472857c7a1982494f3a01693683062b4cdebe383a79f7b64452c713337b554ed5e0fd6eda018ea29e83c3538a13c24f3c
DIST perl-cross-1.3.1.tar.gz 106723 BLAKE2B 473d90dbfe5d69e17d088664c365190982db400b0617d951fb7a4ccb84dd269fd9e861a6255c0469fbf288125db67ed9fc692251f14c31181f6e9dd1dba447bb SHA512 4715c1f65e39a7d0c605558b345a0a037e61afa992b3f723d66277d5ff7f1c7368ff1dfdb726895d75c4afdb6f710743708fdd9e79569a7d14a2d7002cc9f3b2
DIST perl-5.32.0.tar.xz 12717336 BLAKE2B 4abad9f1ddabaad5f2bbfe8ab6d061aeb8c558e458d4bf1bcf737a8ecc1cf20f7dffaddd0bc867578b457787ec284fa81be3fae1edd7f72d58aeec7b5cd744e5 SHA512 1540247415893bbd94dfeede7b4fba6052688dc0bf27ced817f448246fcdc6e9a6486abc34577dec5b00bf02ed607b2d24ccd4977c3b3c51e8e6edfc0b81c760
DIST perl-cross-1.3.2.tar.gz 108350 BLAKE2B ddb352fdbec66a04de62425f5cae1aaa3bc7251b9d6f4837b66a0bd79c53c60212fad3997dad4c38055774a2769d45b5b83927bf48b0fb00a130fee429eba702 SHA512 d61d25066a8d87c34aeacc5b9bd86fab964b33c4c65e84a89e4077fe1d8011c0bdf810a304631af44fae32edcffd6c99fc17b0c584ea83d1ce5ce492aaedfea5
DIST perl-cross-1.3.4.tar.gz 108461 BLAKE2B 28f207d235f51ebf681598cf85f7f16923574aafb593426a59d67578135ee3632efb12b9e1a672759195a79f80e49f5c929ec42b2b4571b1d36f5d8c8dceadc2 SHA512 7e1fc7b2b19d8c2e2fb8615e074e218b2e1a4d276b563ffabccfd0c7398bc8680fca96da89cc61d611993f38a2c67dfbb0201c58658e05437395ad8c00d31874

@ -1,654 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
PATCH_VER=1
CROSS_VER=1.3.1
PATCH_BASE="perl-5.30.0-patches-${PATCH_VER}"
PATCH_DEV=dilfridge
DIST_AUTHOR=SHAY
# Greatest first, don't include yourself
# Devel point-releases are not ABI-intercompatible, but stable point releases are
# BIN_OLDVERSEN is contains only C-ABI-intercompatible versions
PERL_BIN_OLDVERSEN="5.30.0"
if [[ "${PV##*.}" == "9999" ]]; then
DIST_VERSION=5.30.0
else
DIST_VERSION="${PV/_rc/-RC}"
fi
SHORT_PV="${DIST_VERSION%.*}"
# Even numbered major versions are ABI intercompatible
# Odd numbered major versions are not
if [[ $(( ${SHORT_PV#*.} % 2 )) == 1 ]]; then
SUBSLOT="${DIST_VERSION%-RC*}"
else
SUBSLOT="${DIST_VERSION%.*}"
fi
# Used only in tar paths
MY_P="perl-${DIST_VERSION}"
# Used in library paths
MY_PV="${DIST_VERSION%-RC*}"
DESCRIPTION="Larry Wall's Practical Extraction and Report Language"
SRC_URI="
mirror://cpan/src/5.0/${MY_P}.tar.xz
mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz
https://github.com/gentoo-perl/perl-patchset/releases/download/${PATCH_BASE}/${PATCH_BASE}.tar.xz
mirror://gentoo/${PATCH_BASE}.tar.xz
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.xz
https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz
"
HOMEPAGE="https://www.perl.org/"
LICENSE="|| ( Artistic GPL-1+ )"
SLOT="0/${SUBSLOT}"
if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then
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"
fi
IUSE="berkdb debug doc gdbm ithreads"
RDEPEND="
berkdb? ( sys-libs/db:= )
gdbm? ( >=sys-libs/gdbm-1.8.3:= )
app-arch/bzip2
sys-libs/zlib
"
DEPEND="${RDEPEND}"
PDEPEND="
>=app-admin/perl-cleaner-2.5
>=virtual/perl-File-Temp-0.230.400-r2
>=virtual/perl-Data-Dumper-2.154.0
virtual/perl-Test-Harness
"
# bug 390719, bug 523624
# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker
S="${WORKDIR}/${MY_P}"
dual_scripts() {
src_remove_dual perl-core/Archive-Tar 2.320.0 ptar ptardiff ptargrep
src_remove_dual perl-core/CPAN 2.220.0 cpan
src_remove_dual perl-core/Digest-SHA 6.20.0 shasum
src_remove_dual perl-core/Encode 3.10.0 enc2xs piconv
src_remove_dual perl-core/ExtUtils-MakeMaker 7.340.0 instmodsh
src_remove_dual perl-core/ExtUtils-ParseXS 3.400.0 xsubpp
src_remove_dual perl-core/IO-Compress 2.84.0 zipdetails
src_remove_dual perl-core/JSON-PP 4.20.0 json_pp
src_remove_dual perl-core/Module-CoreList 5.201.910.270 corelist
src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect
src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc
src_remove_dual perl-core/Test-Harness 3.420.0 prove
src_remove_dual perl-core/podlators 4.110.0 pod2man pod2text
src_remove_dual_man perl-core/podlators 4.110.0 /usr/share/man/man1/perlpodstyle.1
}
check_rebuild() {
# Fresh install
if [[ -z "${REPLACING_VERSIONS}" ]]; then
return 0;
# Major Upgrade
# doesn't matter if there's multiple copies, it still needs a rebuild
# if the string is anything other than "5.CURRENTMAJOR"
elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then
echo ""
ewarn "UPDATE THE PERL MODULES:"
ewarn "After updating dev-lang/perl the installed Perl modules"
ewarn "have to be re-installed. In most cases, this is done automatically"
ewarn "by the package manager, but subsequent steps are still recommended"
ewarn "to ensure system consistency."
ewarn
ewarn "You should start with a depclean to remove any unused perl dependencies"
ewarn "that may confuse portage in future. Regular depcleans are also encouraged"
ewarn "as part of your regular update cycle, as that will keep perl upgrades working."
ewarn "Recommended: emerge --depclean -va"
ewarn
ewarn "You should then call perl-cleaner to clean up any old files and trigger any"
ewarn "remaining rebuilds portage may have missed."
ewarn "Use: perl-cleaner --all"
return 0;
# Reinstall w/ USE Change
elif ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \
( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \
( use debug && ! has_version dev-lang/perl[debug] ) || \
( ! use debug && has_version dev-lang/perl[debug] ) ; then
echo ""
ewarn "TOGGLED USE-FLAGS WARNING:"
ewarn "You changed one of the use-flags ithreads or debug."
ewarn "You must rebuild all perl-modules installed."
ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl"
fi
}
pkg_setup() {
case ${CHOST} in
*-freebsd*) osname="freebsd" ;;
*-dragonfly*) osname="dragonfly" ;;
*-netbsd*) osname="netbsd" ;;
*-openbsd*) osname="openbsd" ;;
*-darwin*) osname="darwin" ;;
*-solaris*) osname="solaris" ;;
*-interix*) osname="interix" ;;
*-aix*) osname="aix" ;;
*-cygwin*) osname="cygwin" ;;
*) osname="linux" ;;
esac
myarch="${CHOST%%-*}-${osname}"
if use debug ; then
myarch+="-debug"
fi
if use ithreads ; then
mythreading="-multi"
myarch+="-thread"
fi
PRIV_BASE="/usr/$(get_libdir)/perl5"
SITE_BASE="/usr/local/$(get_libdir)/perl5"
VENDOR_BASE="/usr/$(get_libdir)/perl5/vendor_perl"
LIBPERL="libperl$(get_libname ${MY_PV} )"
PRIV_LIB="${PRIV_BASE}/${MY_PV}"
ARCH_LIB="${PRIV_BASE}/${MY_PV}/${myarch}${mythreading}"
SITE_LIB="${SITE_BASE}/${MY_PV}"
SITE_ARCH="${SITE_BASE}/${MY_PV}/${myarch}${mythreading}"
VENDOR_LIB="${VENDOR_BASE}/${MY_PV}"
VENDOR_ARCH="${VENDOR_BASE}/${MY_PV}/${myarch}${mythreading}"
dual_scripts
}
src_remove_dual_file() {
local i pkg ver
pkg="$1"
ver="$2"
shift 2
case "${EBUILD_PHASE:-none}" in
postinst|postrm)
for i in "$@" ; do
alternatives_auto_makesym "${i}" "${i}-[0-9]*"
done
;;
setup)
for i in "$@" ; do
if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then
has_version ${pkg} && ewarn "You must reinstall ${pkg} !"
break
fi
done
;;
install)
for i in "$@" ; do
if ! [[ -f "${ED}"${i} ]] ; then
ewarn "${i} does not exist!"
continue
fi
mv "${ED}"${i}{,-${ver}-${P}} || die
done
;;
esac
}
src_remove_dual_man() {
local i pkg ver ff
pkg="$1"
ver="$2"
shift 2
case "${EBUILD_PHASE:-none}" in
postinst|postrm)
for i in "$@" ; do
ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*`
ff=${ff##*${i#${i%.[0-9]}}}
alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*"
done
;;
install)
for i in "$@" ; do
if ! [[ -f "${ED}"${i} ]] ; then
ewarn "${i} does not exist!"
continue
fi
mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die
done
;;
esac
}
src_remove_dual() {
local i pkg ver
pkg="$1"
ver="$2"
shift 2
for i in "$@" ; do
src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}"
src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1"
done
}
src_prepare_update_patchlevel_h() {
# Copied and modified from debian:
# Copyright 2011 Niko Tyni
# This program is free software; you can redistribute it and/or modify
# it under the same terms as Perl itself.
local patchdir="${WORKDIR}/patches"
local prefix
local patchoutput="patchlevel-gentoo.h"
[[ -f ${patchdir}/series ]] || return 0
while read patch
do
patchname=$(echo $patch | sed 's/\.diff$//')
< $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e '
# massage the patch headers
s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend;
s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend;
s|^Bug-Gentoo: ||; tprepend;
s/^\(Subject\|Description\): //; tappend;
s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend;
# post-process at the end of input
$ { x;
# include the version number in the patchlevel.h description (if available)
s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/;
# escape any backslashes and double quotes
s|\\|\\\\|g; s|"|\\"|g;
# add a prefix
s|^|\t,"'"$prefix$patchname"' - |;
# newlines away
s/\n/ /g; s/ */ /g;
# add a suffix
s/ *$/"/; p
};
# stop all processing
d;
# label: append to the hold space
:append H; d;
# label: prepend to the hold space
:prepend x; H; d;
'
done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}"
echo "${patchoutput}" >> "${S}/MANIFEST"
}
src_prepare_perlcross() {
cp -a ../perl-cross-${CROSS_VER}/* . || die
# bug 604072
MAKEOPTS+=" -j1"
export MAKEOPTS
}
src_prepare_dynamic() {
ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die
ln -s ${LIBPERL} libperl$(get_libname ) || die
}
src_prepare() {
local patch
EPATCH_OPTS+=" -p1"
if use hppa ; then
epatch "${FILESDIR}/${PN}-5.26.2-hppa.patch" # bug 634162
fi
eapply "${FILESDIR}"/${PN}-5.30.1-gcc-10.patch # bug 708744
if [[ ${CHOST} == *-solaris* ]] ; then
# do NOT mess with nsl, on Solaris this is always necessary,
# when -lsocket is used e.g. to get h_errno
sed -i '/gentoo\/no-nsl-cl\.patch/d' "${WORKDIR}/patches/series" || die
fi
einfo "Applying patches from ${PATCH_BASE} ..."
while read patch ; do
EPATCH_SINGLE_MSG=" ${patch} ..."
epatch "${WORKDIR}"/patches/${patch}
done < "${WORKDIR}"/patches/series
src_prepare_update_patchlevel_h
tc-is-cross-compiler && src_prepare_perlcross
tc-is-static-only || src_prepare_dynamic
if use gdbm; then
sed -i "s:INC => .*:INC => \"-I${EROOT}usr/include/gdbm\":g" \
ext/NDBM_File/Makefile.PL || die
fi
# Use errno.h from prefix rather than from host system, bug #645804
if use prefix && [[ -e "${EPREFIX}"/usr/include/errno.h ]] ; then
sed -i "/my..sysroot/s:'':'${EPREFIX}':" ext/Errno/Errno_pm.PL || die
fi
if [[ ${CHOST} == *-solaris* ]] ; then
# set a soname, fix linking against just built libperl
sed -i -e 's/netbsd\*/netbsd*|solaris*/' Makefile.SH || die
fi
if [[ ${CHOST} == *-darwin* ]] ; then
# fix install_name (soname) not to reference $D
sed -i -e '/install_name `pwd/s/`pwd`/\\$(shrpdir)/' Makefile.SH || die
fi
default
}
myconf() {
# the myconf array is declared in src_configure
myconf=( "${myconf[@]}" "$@" )
}
src_configure() {
declare -a myconf
export LC_ALL="C"
[[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091
# Perl has problems compiling with -Os in your flags with glibc
use elibc_uclibc || replace-flags "-Os" "-O2"
# xlocale.h is going away in glibc-2.26, so it's counterproductive
# if we use it and include it in CORE/perl.h ... Perl builds just
# fine with glibc and locale.h only.
# However, the darwin prefix people have no locale.h ...
use elibc_glibc && myconf -Ui_xlocale
# This flag makes compiling crash in interesting ways
filter-flags "-malign-double"
# Generic LTO broken since 5.28, triggers EUMM failures
filter-flags "-flto"
use sparc && myconf -Ud_longdbl
export BUILD_BZIP2=0
export BZIP2_INCLUDE=${EROOT}/usr/include
export BZIP2_LIB=${EROOT}/usr/$(get_libdir)
export BUILD_ZLIB=False
export ZLIB_INCLUDE=${EROOT}/usr/include
export ZLIB_LIB=${EROOT}/usr/$(get_libdir)
# allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1
myndbm='U'
mygdbm='U'
mydb='U'
if use gdbm ; then
mygdbm='D'
if use berkdb ; then
myndbm='D'
fi
fi
if use berkdb ; then
mydb='D'
has_version '=sys-libs/db-1*' && myndbm='D'
fi
myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db"
if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then
ewarn "Perl will not be built with berkdb support, use gcc if you needed it..."
myconf -Ui_db -Ui_ndbm
fi
use ithreads && myconf -Dusethreads
if use debug ; then
append-cflags "-g"
myconf -DDEBUGGING
elif [[ ${CFLAGS} == *-g* ]] ; then
myconf -DDEBUGGING=-g
else
myconf -DDEBUGGING=none
fi
# Autodiscover all old version directories, some of them will even be newer
# if you downgrade
if [[ -z ${PERL_OLDVERSEN} ]]; then
PERL_OLDVERSEN="$(
find "${EROOT%/}${PRIV_BASE}" "${EROOT%/}${SITE_BASE}" "${EROOT%/}${VENDOR_BASE}" \
-maxdepth 1 -mindepth 1 -type d -regex '.*/5[.][0-9]+[.][0-9]+$' \
-printf "%f " 2>/dev/null )"
fi
# Fixup versions, removing self match, fixing order and dupes
PERL_OLDVERSEN="$(
echo "${PERL_OLDVERSEN}" |\
tr " " "\n" |\
grep -vF "${DIST_VERSION%-RC}" |\
sort -u -nr -t'.' -k1,1 -k2,2 -k3,3
)"
# Experts who want a "Pure" install can set PERL_OLDVERSEN to an empty string
if [[ -n "${PERL_OLDVERSEN// }" ]]; then
local inclist="$(
for v in ${PERL_OLDVERSEN}; do
has "${v}" ${PERL_BIN_OLDVERSEN} && echo -n "${v}/${myarch}${mythreading} ";
echo -n "${v} ";
done )"
einfo "This version of perl may partially support modules previously"
einfo "installed in any of the following paths:"
for incpath in ${inclist}; do
[[ -e "${EROOT%/}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${VENDOR_BASE}/${incpath}"
[[ -e "${EROOT%/}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROO%/T}${PRIV_BASE}/${incpath}"
[[ -e "${EROOT%/}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${SITE_BASE}/${incpath}"
done
einfo "This is a temporary measure and you should aim to cleanup these paths"
einfo "via world updates and perl-cleaner"
myconf -Dinc_version_list="${inclist}"
fi
[[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a"
# Make sure we can do the final link #523730, need to set deployment
# target to override hardcoded 10.3 which breaks on modern OSX
[[ ${CHOST} == *-darwin* ]] && \
myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)"
# Older macOS with non-Apple GCC chokes on inline in system headers
# using c89 mode as injected by cflags.SH
[[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] && tc-is-gcc && \
append-cflags -Dinline=__inline__
# fix unaligned access misdetection
# https://rt.perl.org/Public/Bug/Display.html?id=133495
# https://rt.perl.org/Public/Bug/Display.html?id=133803
# bug #676062, bug #688432
use hppa || use sparc || [[ ${CHOST} == sparc*-solaris* ]] || \
[[ ${CHOST} == armv5tel* ]] \
&& myconf "-Dd_u32align='define'"
# Prefix: the host system needs not to follow Gentoo multilib stuff, and in
# Prefix itself we don't do multilib either, so make sure perl can find
# something compatible.
if use prefix ; then
# Set a hook to check for each detected library whether it actually works.
export libscheck="
( echo 'main(){}' > '${T}'/conftest.c &&
$(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null
) || xxx=/dev/null"
# Use all host paths that might contain useful stuff, the hook above will filter out bad choices.
local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib"
myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}"
elif [[ $(get_libdir) != "lib" ]] ; then
# We need to use " and not ', as the written config.sh use ' ...
myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)"
fi
# don't try building ODBM, bug #354453
disabled_extensions="ODBM_File"
if ! use gdbm ; then
# workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm"
disabled_extensions="${disabled_extensions} GDBM_File NDBM_File"
fi
myconf -Dnoextensions="${disabled_extensions}"
[[ "${PV##*.}" == "9999" ]] && myconf -Dusedevel -Uversiononly
[[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF}
# allow fiddling via EXTRA_ECONF, bug 558070
eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})"
myconf \
-Duseshrplib \
-Darchname="${myarch}" \
-Dcc="$(tc-getCC)" \
-Doptimize="${CFLAGS}" \
-Dldflags="${LDFLAGS}" \
-Dprefix="${EPREFIX}"'/usr' \
-Dsiteprefix="${EPREFIX}"'/usr/local' \
-Dvendorprefix="${EPREFIX}"'/usr' \
-Dscriptdir="${EPREFIX}"'/usr/bin' \
-Dprivlib="${EPREFIX}${PRIV_LIB}" \
-Darchlib="${EPREFIX}${ARCH_LIB}" \
-Dsitelib="${EPREFIX}${SITE_LIB}" \
-Dsitearch="${EPREFIX}${SITE_ARCH}" \
-Dvendorlib="${EPREFIX}${VENDOR_LIB}" \
-Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \
-Dman1dir="${EPREFIX}"/usr/share/man/man1 \
-Dman3dir="${EPREFIX}"/usr/share/man/man3 \
-Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \
-Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \
-Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \
-Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \
-Dman1ext='1' \
-Dman3ext='3pm' \
-Dlibperl="${LIBPERL}" \
-Dlocincpth="${EPREFIX}"'/usr/include ' \
-Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \
-Duselargefiles \
-Dd_semctl_semun \
-Dcf_by='Gentoo' \
-Dmyhostname='localhost' \
-Dperladmin='root@localhost' \
-Ud_csh \
-Dsh="${EPREFIX}"/bin/sh \
-Dtargetsh="${EPREFIX}"/bin/sh \
-Uusenm \
"${myconf[@]}" \
"${EXTRA_ECONF[@]}"
if tc-is-cross-compiler; then
./configure \
--target="${CHOST}" \
--build="${CBUILD}" \
-Dinstallprefix='' \
-Dinstallusrbinperl='undef' \
-Dusevendorprefix='define' \
"${myconf[@]}" \
|| die "Unable to configure"
else
sh Configure \
-des \
-Dinstallprefix="${EPREFIX}"'/usr' \
-Dinstallusrbinperl='n' \
"${myconf[@]}" \
|| die "Unable to configure"
fi
}
src_test() {
export NO_GENTOO_NETWORK_TESTS=1;
export GENTOO_ASSUME_SANDBOXED="${GENTOO_ASSUME_SANDBOXED:-1}"
export GENTOO_NO_PORTING_TESTS="${GENTOO_NO_PORTING_TESTS:-1}"
if [[ ${EUID} == 0 ]] ; then
ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..."
return 0
fi
use elibc_uclibc && export MAKEOPTS+=" -j1"
TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed"
}
src_install() {
local i
local coredir="${ARCH_LIB}/CORE"
emake DESTDIR="${D}" install
rm -f "${ED}/usr/bin/perl${MY_PV}"
ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die
if ! tc-is-static-only ; then
dolib.so "${ED}"${coredir}/${LIBPERL}
rm -f "${ED}"${coredir}/${LIBPERL}
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die
ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die
ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die
ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die
fi
rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages"
# This removes ${D} from Config.pm
for i in $(find "${D}" -iname "Config.pm" ) ; do
einfo "Removing ${D} from ${i}..."
sed -i -e "s:${D}::" "${i}" || die "Sed failed"
done
dodoc Changes* README AUTHORS
if use doc ; then
# HTML Documentation
# We expect errors, warnings, and such with the following.
dodir /usr/share/doc/${PF}/html
LD_LIBRARY_PATH=. ./perl installhtml \
--podroot='.' \
--podpath='lib:ext:pod:vms' \
--recurse \
--htmldir="${ED}/usr/share/doc/${PF}/html"
fi
[[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local
dual_scripts
}
pkg_preinst() {
check_rebuild
}
pkg_postinst() {
dual_scripts
if [[ "${ROOT}" = "/" ]] ; then
local INC DIR file
INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }')
einfo "Removing old .ph files"
for DIR in ${INC} ; do
if [[ -d "${DIR}" ]] ; then
for file in $(find "${DIR}" -name "*.ph" -type f ) ; do
rm -f "${file}"
einfo "<< ${file}"
done
fi
done
# Silently remove the now empty dirs
for DIR in ${INC} ; do
if [[ -d "${DIR}" ]] ; then
find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
fi
done
fi
}
pkg_postrm() {
dual_scripts
}

@ -1,654 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
PATCH_VER=1
CROSS_VER=1.3.2
PATCH_BASE="perl-5.30.0-patches-${PATCH_VER}"
PATCH_DEV=dilfridge
DIST_AUTHOR=SHAY
# Greatest first, don't include yourself
# Devel point-releases are not ABI-intercompatible, but stable point releases are
# BIN_OLDVERSEN is contains only C-ABI-intercompatible versions
PERL_BIN_OLDVERSEN="5.30.0 5.30.1"
if [[ "${PV##*.}" == "9999" ]]; then
DIST_VERSION=5.30.0
else
DIST_VERSION="${PV/_rc/-RC}"
fi
SHORT_PV="${DIST_VERSION%.*}"
# Even numbered major versions are ABI intercompatible
# Odd numbered major versions are not
if [[ $(( ${SHORT_PV#*.} % 2 )) == 1 ]]; then
SUBSLOT="${DIST_VERSION%-RC*}"
else
SUBSLOT="${DIST_VERSION%.*}"
fi
# Used only in tar paths
MY_P="perl-${DIST_VERSION}"
# Used in library paths
MY_PV="${DIST_VERSION%-RC*}"
DESCRIPTION="Larry Wall's Practical Extraction and Report Language"
SRC_URI="
mirror://cpan/src/5.0/${MY_P}.tar.xz
mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz
https://github.com/gentoo-perl/perl-patchset/releases/download/${PATCH_BASE}/${PATCH_BASE}.tar.xz
mirror://gentoo/${PATCH_BASE}.tar.xz
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.xz
https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz
"
HOMEPAGE="https://www.perl.org/"
LICENSE="|| ( Artistic GPL-1+ )"
SLOT="0/${SUBSLOT}"
if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then
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"
fi
IUSE="berkdb debug doc gdbm ithreads"
RDEPEND="
berkdb? ( sys-libs/db:= )
gdbm? ( >=sys-libs/gdbm-1.8.3:= )
app-arch/bzip2
sys-libs/zlib
"
DEPEND="${RDEPEND}"
PDEPEND="
>=app-admin/perl-cleaner-2.5
>=virtual/perl-File-Temp-0.230.400-r2
>=virtual/perl-Data-Dumper-2.154.0
virtual/perl-Test-Harness
"
# bug 390719, bug 523624
# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker
S="${WORKDIR}/${MY_P}"
dual_scripts() {
src_remove_dual perl-core/Archive-Tar 2.320.0 ptar ptardiff ptargrep
src_remove_dual perl-core/CPAN 2.220.0 cpan
src_remove_dual perl-core/Digest-SHA 6.20.0 shasum
src_remove_dual perl-core/Encode 3.10.0 enc2xs piconv
src_remove_dual perl-core/ExtUtils-MakeMaker 7.340.0 instmodsh
src_remove_dual perl-core/ExtUtils-ParseXS 3.400.0 xsubpp
src_remove_dual perl-core/IO-Compress 2.84.0 zipdetails
src_remove_dual perl-core/JSON-PP 4.20.0 json_pp
src_remove_dual perl-core/Module-CoreList 5.202.003.140 corelist
src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect
src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc
src_remove_dual perl-core/Test-Harness 3.420.0 prove
src_remove_dual perl-core/podlators 4.110.0 pod2man pod2text
src_remove_dual_man perl-core/podlators 4.110.0 /usr/share/man/man1/perlpodstyle.1
}
check_rebuild() {
# Fresh install
if [[ -z "${REPLACING_VERSIONS}" ]]; then
return 0;
# Major Upgrade
# doesn't matter if there's multiple copies, it still needs a rebuild
# if the string is anything other than "5.CURRENTMAJOR"
elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then
echo ""
ewarn "UPDATE THE PERL MODULES:"
ewarn "After updating dev-lang/perl the installed Perl modules"
ewarn "have to be re-installed. In most cases, this is done automatically"
ewarn "by the package manager, but subsequent steps are still recommended"
ewarn "to ensure system consistency."
ewarn
ewarn "You should start with a depclean to remove any unused perl dependencies"
ewarn "that may confuse portage in future. Regular depcleans are also encouraged"
ewarn "as part of your regular update cycle, as that will keep perl upgrades working."
ewarn "Recommended: emerge --depclean -va"
ewarn
ewarn "You should then call perl-cleaner to clean up any old files and trigger any"
ewarn "remaining rebuilds portage may have missed."
ewarn "Use: perl-cleaner --all"
return 0;
# Reinstall w/ USE Change
elif ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \
( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \
( use debug && ! has_version dev-lang/perl[debug] ) || \
( ! use debug && has_version dev-lang/perl[debug] ) ; then
echo ""
ewarn "TOGGLED USE-FLAGS WARNING:"
ewarn "You changed one of the use-flags ithreads or debug."
ewarn "You must rebuild all perl-modules installed."
ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl"
fi
}
pkg_setup() {
case ${CHOST} in
*-freebsd*) osname="freebsd" ;;
*-dragonfly*) osname="dragonfly" ;;
*-netbsd*) osname="netbsd" ;;
*-openbsd*) osname="openbsd" ;;
*-darwin*) osname="darwin" ;;
*-solaris*) osname="solaris" ;;
*-interix*) osname="interix" ;;
*-aix*) osname="aix" ;;
*-cygwin*) osname="cygwin" ;;
*) osname="linux" ;;
esac
myarch="${CHOST%%-*}-${osname}"
if use debug ; then
myarch+="-debug"
fi
if use ithreads ; then
mythreading="-multi"
myarch+="-thread"
fi
PRIV_BASE="/usr/$(get_libdir)/perl5"
SITE_BASE="/usr/local/$(get_libdir)/perl5"
VENDOR_BASE="/usr/$(get_libdir)/perl5/vendor_perl"
LIBPERL="libperl$(get_libname ${MY_PV} )"
PRIV_LIB="${PRIV_BASE}/${MY_PV}"
ARCH_LIB="${PRIV_BASE}/${MY_PV}/${myarch}${mythreading}"
SITE_LIB="${SITE_BASE}/${MY_PV}"
SITE_ARCH="${SITE_BASE}/${MY_PV}/${myarch}${mythreading}"
VENDOR_LIB="${VENDOR_BASE}/${MY_PV}"
VENDOR_ARCH="${VENDOR_BASE}/${MY_PV}/${myarch}${mythreading}"
dual_scripts
}
src_remove_dual_file() {
local i pkg ver
pkg="$1"
ver="$2"
shift 2
case "${EBUILD_PHASE:-none}" in
postinst|postrm)
for i in "$@" ; do
alternatives_auto_makesym "${i}" "${i}-[0-9]*"
done
;;
setup)
for i in "$@" ; do
if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then
has_version ${pkg} && ewarn "You must reinstall ${pkg} !"
break
fi
done
;;
install)
for i in "$@" ; do
if ! [[ -f "${ED}"${i} ]] ; then
ewarn "${i} does not exist!"
continue
fi
mv "${ED}"${i}{,-${ver}-${P}} || die
done
;;
esac
}
src_remove_dual_man() {
local i pkg ver ff
pkg="$1"
ver="$2"
shift 2
case "${EBUILD_PHASE:-none}" in
postinst|postrm)
for i in "$@" ; do
ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*`
ff=${ff##*${i#${i%.[0-9]}}}
alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*"
done
;;
install)
for i in "$@" ; do
if ! [[ -f "${ED}"${i} ]] ; then
ewarn "${i} does not exist!"
continue
fi
mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die
done
;;
esac
}
src_remove_dual() {
local i pkg ver
pkg="$1"
ver="$2"
shift 2
for i in "$@" ; do
src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}"
src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1"
done
}
src_prepare_update_patchlevel_h() {
# Copied and modified from debian:
# Copyright 2011 Niko Tyni
# This program is free software; you can redistribute it and/or modify
# it under the same terms as Perl itself.
local patchdir="${WORKDIR}/patches"
local prefix
local patchoutput="patchlevel-gentoo.h"
[[ -f ${patchdir}/series ]] || return 0
while read patch
do
patchname=$(echo $patch | sed 's/\.diff$//')
< $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e '
# massage the patch headers
s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend;
s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend;
s|^Bug-Gentoo: ||; tprepend;
s/^\(Subject\|Description\): //; tappend;
s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend;
# post-process at the end of input
$ { x;
# include the version number in the patchlevel.h description (if available)
s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/;
# escape any backslashes and double quotes
s|\\|\\\\|g; s|"|\\"|g;
# add a prefix
s|^|\t,"'"$prefix$patchname"' - |;
# newlines away
s/\n/ /g; s/ */ /g;
# add a suffix
s/ *$/"/; p
};
# stop all processing
d;
# label: append to the hold space
:append H; d;
# label: prepend to the hold space
:prepend x; H; d;
'
done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}"
echo "${patchoutput}" >> "${S}/MANIFEST"
}
src_prepare_perlcross() {
cp -a ../perl-cross-${CROSS_VER}/* . || die
# bug 604072
MAKEOPTS+=" -j1"
export MAKEOPTS
}
src_prepare_dynamic() {
ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die
ln -s ${LIBPERL} libperl$(get_libname ) || die
}
src_prepare() {
local patch
EPATCH_OPTS+=" -p1"
if use hppa ; then
epatch "${FILESDIR}/${PN}-5.26.2-hppa.patch" # bug 634162
fi
if [[ ${CHOST} == *-solaris* ]] ; then
# do NOT mess with nsl, on Solaris this is always necessary,
# when -lsocket is used e.g. to get h_errno
sed -i '/gentoo\/no-nsl-cl\.patch/d' "${WORKDIR}/patches/series" || die
fi
einfo "Applying patches from ${PATCH_BASE} ..."
while read patch ; do
EPATCH_SINGLE_MSG=" ${patch} ..."
epatch "${WORKDIR}"/patches/${patch}
done < "${WORKDIR}"/patches/series
src_prepare_update_patchlevel_h
tc-is-cross-compiler && src_prepare_perlcross
tc-is-static-only || src_prepare_dynamic
if use gdbm; then
sed -i "s:INC => .*:INC => \"-I${EROOT}usr/include/gdbm\":g" \
ext/NDBM_File/Makefile.PL || die
fi
# Use errno.h from prefix rather than from host system, bug #645804
if use prefix && [[ -e "${EPREFIX}"/usr/include/errno.h ]] ; then
sed -i "/my..sysroot/s:'':'${EPREFIX}':" ext/Errno/Errno_pm.PL || die
fi
if [[ ${CHOST} == *-solaris* ]] ; then
# set a soname, fix linking against just built libperl
sed -i -e 's/netbsd\*/netbsd*|solaris*/' Makefile.SH || die
fi
if [[ ${CHOST} == *-darwin* ]] ; then
# fix install_name (soname) not to reference $D
sed -i -e '/install_name `pwd/s/`pwd`/\\$(shrpdir)/' Makefile.SH || die
fi
default
}
myconf() {
# the myconf array is declared in src_configure
myconf=( "${myconf[@]}" "$@" )
}
src_configure() {
declare -a myconf
export LC_ALL="C"
[[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091
# Perl has problems compiling with -Os in your flags with glibc
use elibc_uclibc || replace-flags "-Os" "-O2"
# xlocale.h is going away in glibc-2.26, so it's counterproductive
# if we use it and include it in CORE/perl.h ... Perl builds just
# fine with glibc and locale.h only.
# However, the darwin prefix people have no locale.h ...
use elibc_glibc && myconf -Ui_xlocale
# This flag makes compiling crash in interesting ways
filter-flags "-malign-double"
# Generic LTO broken since 5.28, triggers EUMM failures
filter-flags "-flto"
use sparc && myconf -Ud_longdbl
export BUILD_BZIP2=0
export BZIP2_INCLUDE=${EROOT}/usr/include
export BZIP2_LIB=${EROOT}/usr/$(get_libdir)
export BUILD_ZLIB=False
export ZLIB_INCLUDE=${EROOT}/usr/include
export ZLIB_LIB=${EROOT}/usr/$(get_libdir)
# allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1
myndbm='U'
mygdbm='U'
mydb='U'
if use gdbm ; then
mygdbm='D'
if use berkdb ; then
myndbm='D'
fi
fi
if use berkdb ; then
mydb='D'
has_version '=sys-libs/db-1*' && myndbm='D'
fi
myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db"
if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then
ewarn "Perl will not be built with berkdb support, use gcc if you needed it..."
myconf -Ui_db -Ui_ndbm
fi
use ithreads && myconf -Dusethreads
if use debug ; then
append-cflags "-g"
myconf -DDEBUGGING
elif [[ ${CFLAGS} == *-g* ]] ; then
myconf -DDEBUGGING=-g
else
myconf -DDEBUGGING=none
fi
# Autodiscover all old version directories, some of them will even be newer
# if you downgrade
if [[ -z ${PERL_OLDVERSEN} ]]; then
PERL_OLDVERSEN="$(
find "${EROOT%/}${PRIV_BASE}" "${EROOT%/}${SITE_BASE}" "${EROOT%/}${VENDOR_BASE}" \
-maxdepth 1 -mindepth 1 -type d -regex '.*/5[.][0-9]+[.][0-9]+$' \
-printf "%f " 2>/dev/null )"
fi
# Fixup versions, removing self match, fixing order and dupes
PERL_OLDVERSEN="$(
echo "${PERL_OLDVERSEN}" |\
tr " " "\n" |\
grep -vF "${DIST_VERSION%-RC}" |\
sort -u -nr -t'.' -k1,1 -k2,2 -k3,3
)"
# Experts who want a "Pure" install can set PERL_OLDVERSEN to an empty string
if [[ -n "${PERL_OLDVERSEN// }" ]]; then
local inclist="$(
for v in ${PERL_OLDVERSEN}; do
has "${v}" ${PERL_BIN_OLDVERSEN} && echo -n "${v}/${myarch}${mythreading} ";
echo -n "${v} ";
done )"
einfo "This version of perl may partially support modules previously"
einfo "installed in any of the following paths:"
for incpath in ${inclist}; do
[[ -e "${EROOT%/}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${VENDOR_BASE}/${incpath}"
[[ -e "${EROOT%/}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROO%/T}${PRIV_BASE}/${incpath}"
[[ -e "${EROOT%/}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${SITE_BASE}/${incpath}"
done
einfo "This is a temporary measure and you should aim to cleanup these paths"
einfo "via world updates and perl-cleaner"
myconf -Dinc_version_list="${inclist}"
fi
[[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a"
# Make sure we can do the final link #523730, need to set deployment
# target to override hardcoded 10.3 which breaks on modern OSX
[[ ${CHOST} == *-darwin* ]] && \
myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)"
# Older macOS with non-Apple GCC chokes on inline in system headers
# using c89 mode as injected by cflags.SH
[[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] && tc-is-gcc && \
append-cflags -Dinline=__inline__
# fix unaligned access misdetection
# https://rt.perl.org/Public/Bug/Display.html?id=133495
# https://rt.perl.org/Public/Bug/Display.html?id=133803
# bug #676062, bug #688432
use hppa || use sparc || [[ ${CHOST} == sparc*-solaris* ]] || \
[[ ${CHOST} == armv5tel* ]] \
&& myconf "-Dd_u32align='define'"
# Prefix: the host system needs not to follow Gentoo multilib stuff, and in
# Prefix itself we don't do multilib either, so make sure perl can find
# something compatible.
if use prefix ; then
# Set a hook to check for each detected library whether it actually works.
export libscheck="
( echo 'main(){}' > '${T}'/conftest.c &&
$(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null
) || xxx=/dev/null"
# Use all host paths that might contain useful stuff, the hook above will filter out bad choices.
local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib"
myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}"
elif [[ $(get_libdir) != "lib" ]] ; then
# We need to use " and not ', as the written config.sh use ' ...
myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)"
fi
# don't try building ODBM, bug #354453
disabled_extensions="ODBM_File"
if ! use gdbm ; then
# workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm"
disabled_extensions="${disabled_extensions} GDBM_File NDBM_File"
fi
myconf -Dnoextensions="${disabled_extensions}"
[[ "${PV##*.}" == "9999" ]] && myconf -Dusedevel -Uversiononly
[[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF}
# allow fiddling via EXTRA_ECONF, bug 558070
eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})"
myconf \
-Duseshrplib \
-Darchname="${myarch}" \
-Dcc="$(tc-getCC)" \
-Dar="$(tc-getAR)" \
-Doptimize="${CFLAGS}" \
-Dldflags="${LDFLAGS}" \
-Dprefix="${EPREFIX}"'/usr' \
-Dsiteprefix="${EPREFIX}"'/usr/local' \
-Dvendorprefix="${EPREFIX}"'/usr' \
-Dscriptdir="${EPREFIX}"'/usr/bin' \
-Dprivlib="${EPREFIX}${PRIV_LIB}" \
-Darchlib="${EPREFIX}${ARCH_LIB}" \
-Dsitelib="${EPREFIX}${SITE_LIB}" \
-Dsitearch="${EPREFIX}${SITE_ARCH}" \
-Dvendorlib="${EPREFIX}${VENDOR_LIB}" \
-Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \
-Dman1dir="${EPREFIX}"/usr/share/man/man1 \
-Dman3dir="${EPREFIX}"/usr/share/man/man3 \
-Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \
-Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \
-Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \
-Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \
-Dman1ext='1' \
-Dman3ext='3pm' \
-Dlibperl="${LIBPERL}" \
-Dlocincpth="${EPREFIX}"'/usr/include ' \
-Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \
-Duselargefiles \
-Dd_semctl_semun \
-Dcf_by='Gentoo' \
-Dmyhostname='localhost' \
-Dperladmin='root@localhost' \
-Ud_csh \
-Dsh="${EPREFIX}"/bin/sh \
-Dtargetsh="${EPREFIX}"/bin/sh \
-Uusenm \
"${myconf[@]}" \
"${EXTRA_ECONF[@]}"
if tc-is-cross-compiler; then
./configure \
--target="${CHOST}" \
--build="${CBUILD}" \
-Dinstallprefix='' \
-Dinstallusrbinperl='undef' \
-Dusevendorprefix='define' \
"${myconf[@]}" \
|| die "Unable to configure"
else
sh Configure \
-des \
-Dinstallprefix="${EPREFIX}"'/usr' \
-Dinstallusrbinperl='n' \
"${myconf[@]}" \
|| die "Unable to configure"
fi
}
src_test() {
export NO_GENTOO_NETWORK_TESTS=1;
export GENTOO_ASSUME_SANDBOXED="${GENTOO_ASSUME_SANDBOXED:-1}"
export GENTOO_NO_PORTING_TESTS="${GENTOO_NO_PORTING_TESTS:-1}"
if [[ ${EUID} == 0 ]] ; then
ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..."
return 0
fi
use elibc_uclibc && export MAKEOPTS+=" -j1"
TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed"
}
src_install() {
local i
local coredir="${ARCH_LIB}/CORE"
emake DESTDIR="${D}" install
rm -f "${ED}/usr/bin/perl${MY_PV}"
ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die
if ! tc-is-static-only ; then
dolib.so "${ED}"${coredir}/${LIBPERL}
rm -f "${ED}"${coredir}/${LIBPERL}
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die
ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die
ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die
ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die
fi
rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages"
# This removes ${D} from Config.pm
for i in $(find "${D}" -iname "Config.pm" ) ; do
einfo "Removing ${D} from ${i}..."
sed -i -e "s:${D}::" "${i}" || die "Sed failed"
done
dodoc Changes* README AUTHORS
if use doc ; then
# HTML Documentation
# We expect errors, warnings, and such with the following.
dodir /usr/share/doc/${PF}/html
LD_LIBRARY_PATH=. ./perl installhtml \
--podroot='.' \
--podpath='lib:ext:pod:vms' \
--recurse \
--htmldir="${ED}/usr/share/doc/${PF}/html"
fi
[[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local
dual_scripts
}
pkg_preinst() {
check_rebuild
}
pkg_postinst() {
dual_scripts
if [[ "${ROOT}" = "/" ]] ; then
local INC DIR file
INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }')
einfo "Removing old .ph files"
for DIR in ${INC} ; do
if [[ -d "${DIR}" ]] ; then
for file in $(find "${DIR}" -name "*.ph" -type f ) ; do
rm -f "${file}"
einfo "<< ${file}"
done
fi
done
# Silently remove the now empty dirs
for DIR in ${INC} ; do
if [[ -d "${DIR}" ]] ; then
find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
fi
done
fi
}
pkg_postrm() {
dual_scripts
}

@ -1,653 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
PATCH_VER=1
CROSS_VER=1.3.2
PATCH_BASE="perl-5.30.0-patches-${PATCH_VER}"
PATCH_DEV=dilfridge
DIST_AUTHOR=SHAY
# Greatest first, don't include yourself
# Devel point-releases are not ABI-intercompatible, but stable point releases are
# BIN_OLDVERSEN is contains only C-ABI-intercompatible versions
PERL_BIN_OLDVERSEN="5.30.0 5.30.1"
if [[ "${PV##*.}" == "9999" ]]; then
DIST_VERSION=5.30.0
else
DIST_VERSION="${PV/_rc/-RC}"
fi
SHORT_PV="${DIST_VERSION%.*}"
# Even numbered major versions are ABI intercompatible
# Odd numbered major versions are not
if [[ $(( ${SHORT_PV#*.} % 2 )) == 1 ]]; then
SUBSLOT="${DIST_VERSION%-RC*}"
else
SUBSLOT="${DIST_VERSION%.*}"
fi
# Used only in tar paths
MY_P="perl-${DIST_VERSION}"
# Used in library paths
MY_PV="${DIST_VERSION%-RC*}"
DESCRIPTION="Larry Wall's Practical Extraction and Report Language"
SRC_URI="
mirror://cpan/src/5.0/${MY_P}.tar.xz
mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz
https://github.com/gentoo-perl/perl-patchset/releases/download/${PATCH_BASE}/${PATCH_BASE}.tar.xz
mirror://gentoo/${PATCH_BASE}.tar.xz
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.xz
https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz
"
HOMEPAGE="https://www.perl.org/"
LICENSE="|| ( Artistic GPL-1+ )"
SLOT="0/${SUBSLOT}"
if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then
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"
fi
IUSE="berkdb debug doc gdbm ithreads"
RDEPEND="
berkdb? ( sys-libs/db:= )
gdbm? ( >=sys-libs/gdbm-1.8.3:= )
app-arch/bzip2
sys-libs/zlib
"
DEPEND="${RDEPEND}"
PDEPEND="
>=app-admin/perl-cleaner-2.5
>=virtual/perl-File-Temp-0.230.400-r2
>=virtual/perl-Data-Dumper-2.154.0
virtual/perl-Test-Harness
"
# bug 390719, bug 523624
# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker
S="${WORKDIR}/${MY_P}"
dual_scripts() {
src_remove_dual perl-core/Archive-Tar 2.320.0 ptar ptardiff ptargrep
src_remove_dual perl-core/CPAN 2.220.0 cpan
src_remove_dual perl-core/Digest-SHA 6.20.0 shasum
src_remove_dual perl-core/Encode 3.10.0 enc2xs piconv
src_remove_dual perl-core/ExtUtils-MakeMaker 7.340.0 instmodsh
src_remove_dual perl-core/ExtUtils-ParseXS 3.400.0 xsubpp
src_remove_dual perl-core/IO-Compress 2.84.0 zipdetails
src_remove_dual perl-core/JSON-PP 4.20.0 json_pp
src_remove_dual perl-core/Module-CoreList 5.202.003.140 corelist
src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect
src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc
src_remove_dual perl-core/Test-Harness 3.420.0 prove
src_remove_dual perl-core/podlators 4.110.0 pod2man pod2text
src_remove_dual_man perl-core/podlators 4.110.0 /usr/share/man/man1/perlpodstyle.1
}
check_rebuild() {
# Fresh install
if [[ -z "${REPLACING_VERSIONS}" ]]; then
return 0;
# Major Upgrade
# doesn't matter if there's multiple copies, it still needs a rebuild
# if the string is anything other than "5.CURRENTMAJOR"
elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then
echo ""
ewarn "UPDATE THE PERL MODULES:"
ewarn "After updating dev-lang/perl the installed Perl modules"
ewarn "have to be re-installed. In most cases, this is done automatically"
ewarn "by the package manager, but subsequent steps are still recommended"
ewarn "to ensure system consistency."
ewarn
ewarn "You should start with a depclean to remove any unused perl dependencies"
ewarn "that may confuse portage in future. Regular depcleans are also encouraged"
ewarn "as part of your regular update cycle, as that will keep perl upgrades working."
ewarn "Recommended: emerge --depclean -va"
ewarn
ewarn "You should then call perl-cleaner to clean up any old files and trigger any"
ewarn "remaining rebuilds portage may have missed."
ewarn "Use: perl-cleaner --all"
return 0;
# Reinstall w/ USE Change
elif ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \
( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \
( use debug && ! has_version dev-lang/perl[debug] ) || \
( ! use debug && has_version dev-lang/perl[debug] ) ; then
echo ""
ewarn "TOGGLED USE-FLAGS WARNING:"
ewarn "You changed one of the use-flags ithreads or debug."
ewarn "You must rebuild all perl-modules installed."
ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl"
fi
}
pkg_setup() {
case ${CHOST} in
*-freebsd*) osname="freebsd" ;;
*-dragonfly*) osname="dragonfly" ;;
*-netbsd*) osname="netbsd" ;;
*-openbsd*) osname="openbsd" ;;
*-darwin*) osname="darwin" ;;
*-solaris*) osname="solaris" ;;
*-interix*) osname="interix" ;;
*-aix*) osname="aix" ;;
*-cygwin*) osname="cygwin" ;;
*) osname="linux" ;;
esac
myarch="${CHOST%%-*}-${osname}"
if use debug ; then
myarch+="-debug"
fi
if use ithreads ; then
mythreading="-multi"
myarch+="-thread"
fi
PRIV_BASE="/usr/$(get_libdir)/perl5"
SITE_BASE="/usr/local/$(get_libdir)/perl5"
VENDOR_BASE="/usr/$(get_libdir)/perl5/vendor_perl"
LIBPERL="libperl$(get_libname ${MY_PV} )"
PRIV_LIB="${PRIV_BASE}/${MY_PV}"
ARCH_LIB="${PRIV_BASE}/${MY_PV}/${myarch}${mythreading}"
SITE_LIB="${SITE_BASE}/${MY_PV}"
SITE_ARCH="${SITE_BASE}/${MY_PV}/${myarch}${mythreading}"
VENDOR_LIB="${VENDOR_BASE}/${MY_PV}"
VENDOR_ARCH="${VENDOR_BASE}/${MY_PV}/${myarch}${mythreading}"
dual_scripts
}
src_remove_dual_file() {
local i pkg ver
pkg="$1"
ver="$2"
shift 2
case "${EBUILD_PHASE:-none}" in
postinst|postrm)
for i in "$@" ; do
alternatives_auto_makesym "${i}" "${i}-[0-9]*"
done
;;
setup)
for i in "$@" ; do
if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then
has_version ${pkg} && ewarn "You must reinstall ${pkg} !"
break
fi
done
;;
install)
for i in "$@" ; do
if ! [[ -f "${ED}"${i} ]] ; then
ewarn "${i} does not exist!"
continue
fi
mv "${ED}"${i}{,-${ver}-${P}} || die
done
;;
esac
}
src_remove_dual_man() {
local i pkg ver ff
pkg="$1"
ver="$2"
shift 2
case "${EBUILD_PHASE:-none}" in
postinst|postrm)
for i in "$@" ; do
ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*`
ff=${ff##*${i#${i%.[0-9]}}}
alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*"
done
;;
install)
for i in "$@" ; do
if ! [[ -f "${ED}"${i} ]] ; then
ewarn "${i} does not exist!"
continue
fi
mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die
done
;;
esac
}
src_remove_dual() {
local i pkg ver
pkg="$1"
ver="$2"
shift 2
for i in "$@" ; do
src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}"
src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1"
done
}
src_prepare_update_patchlevel_h() {
# Copied and modified from debian:
# Copyright 2011 Niko Tyni
# This program is free software; you can redistribute it and/or modify
# it under the same terms as Perl itself.
local patchdir="${WORKDIR}/patches"
local prefix
local patchoutput="patchlevel-gentoo.h"
[[ -f ${patchdir}/series ]] || return 0
while read patch
do
patchname=$(echo $patch | sed 's/\.diff$//')
< $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e '
# massage the patch headers
s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend;
s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend;
s|^Bug-Gentoo: ||; tprepend;
s/^\(Subject\|Description\): //; tappend;
s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend;
# post-process at the end of input
$ { x;
# include the version number in the patchlevel.h description (if available)
s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/;
# escape any backslashes and double quotes
s|\\|\\\\|g; s|"|\\"|g;
# add a prefix
s|^|\t,"'"$prefix$patchname"' - |;
# newlines away
s/\n/ /g; s/ */ /g;
# add a suffix
s/ *$/"/; p
};
# stop all processing
d;
# label: append to the hold space
:append H; d;
# label: prepend to the hold space
:prepend x; H; d;
'
done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}"
echo "${patchoutput}" >> "${S}/MANIFEST"
}
src_prepare_perlcross() {
cp -a ../perl-cross-${CROSS_VER}/* . || die
# bug 604072
MAKEOPTS+=" -j1"
export MAKEOPTS
}
src_prepare_dynamic() {
ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die
ln -s ${LIBPERL} libperl$(get_libname ) || die
}
src_prepare() {
local patch
EPATCH_OPTS+=" -p1"
if use hppa ; then
epatch "${FILESDIR}/${PN}-5.26.2-hppa.patch" # bug 634162
fi
if [[ ${CHOST} == *-solaris* ]] ; then
# do NOT mess with nsl, on Solaris this is always necessary,
# when -lsocket is used e.g. to get h_errno
sed -i '/gentoo\/no-nsl-cl\.patch/d' "${WORKDIR}/patches/series" || die
fi
einfo "Applying patches from ${PATCH_BASE} ..."
while read patch ; do
EPATCH_SINGLE_MSG=" ${patch} ..."
epatch "${WORKDIR}"/patches/${patch}
done < "${WORKDIR}"/patches/series
src_prepare_update_patchlevel_h
tc-is-cross-compiler && src_prepare_perlcross
tc-is-static-only || src_prepare_dynamic
if use gdbm; then
sed -i "s:INC => .*:INC => \"-I${EROOT}usr/include/gdbm\":g" \
ext/NDBM_File/Makefile.PL || die
fi
# Use errno.h from prefix rather than from host system, bug #645804
if use prefix && [[ -e "${EPREFIX}"/usr/include/errno.h ]] ; then
sed -i "/my..sysroot/s:'':'${EPREFIX}':" ext/Errno/Errno_pm.PL || die
fi
if [[ ${CHOST} == *-solaris* ]] ; then
# set a soname, fix linking against just built libperl
sed -i -e 's/netbsd\*/netbsd*|solaris*/' Makefile.SH || die
fi
if [[ ${CHOST} == *-darwin* ]] ; then
# fix install_name (soname) not to reference $D
sed -i -e '/install_name `pwd/s/`pwd`/\\$(shrpdir)/' Makefile.SH || die
fi
default
}
myconf() {
# the myconf array is declared in src_configure
myconf=( "${myconf[@]}" "$@" )
}
src_configure() {
declare -a myconf
export LC_ALL="C"
[[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091
# Perl has problems compiling with -Os in your flags with glibc
use elibc_uclibc || replace-flags "-Os" "-O2"
# xlocale.h is going away in glibc-2.26, so it's counterproductive
# if we use it and include it in CORE/perl.h ... Perl builds just
# fine with glibc and locale.h only.
# However, the darwin prefix people have no locale.h ...
use elibc_glibc && myconf -Ui_xlocale
# This flag makes compiling crash in interesting ways
filter-flags "-malign-double"
# Generic LTO broken since 5.28, triggers EUMM failures
filter-flags "-flto"
use sparc && myconf -Ud_longdbl
export BUILD_BZIP2=0
export BZIP2_INCLUDE=${EROOT}/usr/include
export BZIP2_LIB=${EROOT}/usr/$(get_libdir)
export BUILD_ZLIB=False
export ZLIB_INCLUDE=${EROOT}/usr/include
export ZLIB_LIB=${EROOT}/usr/$(get_libdir)
# allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1
myndbm='U'
mygdbm='U'
mydb='U'
if use gdbm ; then
mygdbm='D'
if use berkdb ; then
myndbm='D'
fi
fi
if use berkdb ; then
mydb='D'
has_version '=sys-libs/db-1*' && myndbm='D'
fi
myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db"
if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then
ewarn "Perl will not be built with berkdb support, use gcc if you needed it..."
myconf -Ui_db -Ui_ndbm
fi
use ithreads && myconf -Dusethreads
if use debug ; then
append-cflags "-g"
myconf -DDEBUGGING
elif [[ ${CFLAGS} == *-g* ]] ; then
myconf -DDEBUGGING=-g
else
myconf -DDEBUGGING=none
fi
# Autodiscover all old version directories, some of them will even be newer
# if you downgrade
if [[ -z ${PERL_OLDVERSEN} ]]; then
PERL_OLDVERSEN="$(
find "${EROOT%/}${PRIV_BASE}" "${EROOT%/}${SITE_BASE}" "${EROOT%/}${VENDOR_BASE}" \
-maxdepth 1 -mindepth 1 -type d -regex '.*/5[.][0-9]+[.][0-9]+$' \
-printf "%f " 2>/dev/null )"
fi
# Fixup versions, removing self match, fixing order and dupes
PERL_OLDVERSEN="$(
echo "${PERL_OLDVERSEN}" |\
tr " " "\n" |\
grep -vF "${DIST_VERSION%-RC}" |\
sort -u -nr -t'.' -k1,1 -k2,2 -k3,3
)"
# Experts who want a "Pure" install can set PERL_OLDVERSEN to an empty string
if [[ -n "${PERL_OLDVERSEN// }" ]]; then
local inclist="$(
for v in ${PERL_OLDVERSEN}; do
has "${v}" ${PERL_BIN_OLDVERSEN} && echo -n "${v}/${myarch}${mythreading} ";
echo -n "${v} ";
done )"
einfo "This version of perl may partially support modules previously"
einfo "installed in any of the following paths:"
for incpath in ${inclist}; do
[[ -e "${EROOT%/}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${VENDOR_BASE}/${incpath}"
[[ -e "${EROOT%/}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROO%/T}${PRIV_BASE}/${incpath}"
[[ -e "${EROOT%/}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${SITE_BASE}/${incpath}"
done
einfo "This is a temporary measure and you should aim to cleanup these paths"
einfo "via world updates and perl-cleaner"
myconf -Dinc_version_list="${inclist}"
fi
[[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a"
# Make sure we can do the final link #523730, need to set deployment
# target to override hardcoded 10.3 which breaks on modern OSX
[[ ${CHOST} == *-darwin* ]] && \
myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)"
# Older macOS with non-Apple GCC chokes on inline in system headers
# using c89 mode as injected by cflags.SH
[[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] && tc-is-gcc && \
append-cflags -Dinline=__inline__
# fix unaligned access misdetection
# https://rt.perl.org/Public/Bug/Display.html?id=133495
# https://rt.perl.org/Public/Bug/Display.html?id=133803
# bug #676062, bug #688432
use hppa || use sparc || [[ ${CHOST} == sparc*-solaris* ]] || \
[[ ${CHOST} == armv5tel* ]] \
&& myconf "-Dd_u32align='define'"
# Prefix: the host system needs not to follow Gentoo multilib stuff, and in
# Prefix itself we don't do multilib either, so make sure perl can find
# something compatible.
if use prefix ; then
# Set a hook to check for each detected library whether it actually works.
export libscheck="
( echo 'main(){}' > '${T}'/conftest.c &&
$(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null
) || xxx=/dev/null"
# Use all host paths that might contain useful stuff, the hook above will filter out bad choices.
local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib"
myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}"
elif [[ $(get_libdir) != "lib" ]] ; then
# We need to use " and not ', as the written config.sh use ' ...
myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)"
fi
# don't try building ODBM, bug #354453
disabled_extensions="ODBM_File"
if ! use gdbm ; then
# workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm"
disabled_extensions="${disabled_extensions} GDBM_File NDBM_File"
fi
myconf -Dnoextensions="${disabled_extensions}"
[[ "${PV##*.}" == "9999" ]] && myconf -Dusedevel -Uversiononly
[[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF}
# allow fiddling via EXTRA_ECONF, bug 558070
eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})"
myconf \
-Duseshrplib \
-Darchname="${myarch}" \
-Dcc="$(tc-getCC)" \
-Doptimize="${CFLAGS}" \
-Dldflags="${LDFLAGS}" \
-Dprefix="${EPREFIX}"'/usr' \
-Dsiteprefix="${EPREFIX}"'/usr/local' \
-Dvendorprefix="${EPREFIX}"'/usr' \
-Dscriptdir="${EPREFIX}"'/usr/bin' \
-Dprivlib="${EPREFIX}${PRIV_LIB}" \
-Darchlib="${EPREFIX}${ARCH_LIB}" \
-Dsitelib="${EPREFIX}${SITE_LIB}" \
-Dsitearch="${EPREFIX}${SITE_ARCH}" \
-Dvendorlib="${EPREFIX}${VENDOR_LIB}" \
-Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \
-Dman1dir="${EPREFIX}"/usr/share/man/man1 \
-Dman3dir="${EPREFIX}"/usr/share/man/man3 \
-Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \
-Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \
-Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \
-Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \
-Dman1ext='1' \
-Dman3ext='3pm' \
-Dlibperl="${LIBPERL}" \
-Dlocincpth="${EPREFIX}"'/usr/include ' \
-Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \
-Duselargefiles \
-Dd_semctl_semun \
-Dcf_by='Gentoo' \
-Dmyhostname='localhost' \
-Dperladmin='root@localhost' \
-Ud_csh \
-Dsh="${EPREFIX}"/bin/sh \
-Dtargetsh="${EPREFIX}"/bin/sh \
-Uusenm \
"${myconf[@]}" \
"${EXTRA_ECONF[@]}"
if tc-is-cross-compiler; then
./configure \
--target="${CHOST}" \
--build="${CBUILD}" \
-Dinstallprefix='' \
-Dinstallusrbinperl='undef' \
-Dusevendorprefix='define' \
"${myconf[@]}" \
|| die "Unable to configure"
else
sh Configure \
-des \
-Dinstallprefix="${EPREFIX}"'/usr' \
-Dinstallusrbinperl='n' \
"${myconf[@]}" \
|| die "Unable to configure"
fi
}
src_test() {
export NO_GENTOO_NETWORK_TESTS=1;
export GENTOO_ASSUME_SANDBOXED="${GENTOO_ASSUME_SANDBOXED:-1}"
export GENTOO_NO_PORTING_TESTS="${GENTOO_NO_PORTING_TESTS:-1}"
if [[ ${EUID} == 0 ]] ; then
ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..."
return 0
fi
use elibc_uclibc && export MAKEOPTS+=" -j1"
TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed"
}
src_install() {
local i
local coredir="${ARCH_LIB}/CORE"
emake DESTDIR="${D}" install
rm -f "${ED}/usr/bin/perl${MY_PV}"
ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die
if ! tc-is-static-only ; then
dolib.so "${ED}"${coredir}/${LIBPERL}
rm -f "${ED}"${coredir}/${LIBPERL}
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die
ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die
ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die
ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die
ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die
fi
rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages"
# This removes ${D} from Config.pm
for i in $(find "${D}" -iname "Config.pm" ) ; do
einfo "Removing ${D} from ${i}..."
sed -i -e "s:${D}::" "${i}" || die "Sed failed"
done
dodoc Changes* README AUTHORS
if use doc ; then
# HTML Documentation
# We expect errors, warnings, and such with the following.
dodir /usr/share/doc/${PF}/html
LD_LIBRARY_PATH=. ./perl installhtml \
--podroot='.' \
--podpath='lib:ext:pod:vms' \
--recurse \
--htmldir="${ED}/usr/share/doc/${PF}/html"
fi
[[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local
dual_scripts
}
pkg_preinst() {
check_rebuild
}
pkg_postinst() {
dual_scripts
if [[ "${ROOT}" = "/" ]] ; then
local INC DIR file
INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }')
einfo "Removing old .ph files"
for DIR in ${INC} ; do
if [[ -d "${DIR}" ]] ; then
for file in $(find "${DIR}" -name "*.ph" -type f ) ; do
rm -f "${file}"
einfo "<< ${file}"
done
fi
done
# Silently remove the now empty dirs
for DIR in ${INC} ; do
if [[ -d "${DIR}" ]] ; then
find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
fi
done
fi
}
pkg_postrm() {
dual_scripts
}

@ -6,16 +6,16 @@ EAPI=6
inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
PATCH_VER=1
CROSS_VER=1.3.2
CROSS_VER=1.3.4
PATCH_BASE="perl-5.30.0-patches-${PATCH_VER}"
PATCH_DEV=dilfridge
DIST_AUTHOR=SHAY
DIST_AUTHOR=XSAWYERX
# Greatest first, don't include yourself
# Devel point-releases are not ABI-intercompatible, but stable point releases are
# BIN_OLDVERSEN is contains only C-ABI-intercompatible versions
PERL_BIN_OLDVERSEN="5.30.0 5.30.1"
PERL_BIN_OLDVERSEN=""
if [[ "${PV##*.}" == "9999" ]]; then
DIST_VERSION=5.30.0
@ -51,7 +51,8 @@ LICENSE="|| ( Artistic GPL-1+ )"
SLOT="0/${SUBSLOT}"
if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then
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"
#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"
KEYWORDS=""
fi
IUSE="berkdb debug doc gdbm ithreads"
@ -83,7 +84,7 @@ dual_scripts() {
src_remove_dual perl-core/ExtUtils-ParseXS 3.400.0 xsubpp
src_remove_dual perl-core/IO-Compress 2.84.0 zipdetails
src_remove_dual perl-core/JSON-PP 4.20.0 json_pp
src_remove_dual perl-core/Module-CoreList 5.202.003.140 corelist
src_remove_dual perl-core/Module-CoreList 5.202.6.13.0_rc corelist
src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect
src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc
src_remove_dual perl-core/Test-Harness 3.420.0 prove

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

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

@ -0,0 +1,336 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
RUBY_OPTIONAL="yes"
USE_RUBY="ruby26"
PHP_EXT_NAME="IcePHP"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
PHP_EXT_OPTIONAL_USE=php
USE_PHP="php7-4"
# This variable does not belong to any eclass. It is solely used in this ebuild
BERKDB_SLOTS=( 6.2 6.1 5.3 5.1 4.8 )
inherit db-use mono-env php-ext-source-r3 python-r1 ruby-ng toolchain-funcs
DESCRIPTION="ICE middleware C++ library and generator tools"
HOMEPAGE="https://zeroc.com/products/ice"
SRC_URI="https://github.com/zeroc-ice/ice/archive/v${PV}.tar.gz -> ${P}.tar.gz
doc? ( https://download.zeroc.com/Ice/$(ver_cut 1-2)/${PN}-3.6.4.pdf )"
LICENSE="GPL-2"
SLOT="0/36"
KEYWORDS="~amd64 ~arm ~x86"
IUSE="debug doc examples libressl +readline mono php python ruby test"
RESTRICT="test"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND=">=dev-libs/expat-2.0.1
>=app-arch/bzip2-1.0.5
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
|| (
$(for slot in ${BERKDB_SLOTS[@]} ; do printf '%s\n' "sys-libs/db:${slot}[cxx]" ; done)
)
dev-cpp/libmcpp
python? ( ${PYTHON_DEPS} )
ruby? ( $(ruby_implementation_depend ruby26) )
mono? ( dev-lang/mono )"
DEPEND="${RDEPEND}
readline? ( sys-libs/readline:0= )
test? (
${PYTHON_DEPS}
dev-python/passlib[${PYTHON_USEDEP}]
)"
# Maintainer notes:
# TODO: java bindings
S="${WORKDIR}/${P,}"
PHP_EXT_S="${S}/php"
PATCHES=(
"${FILESDIR}/${PN}-3.6.3-no-arch-opts.patch"
"${FILESDIR}/${P}-db6.patch"
"${FILESDIR}/${P}-csharp.patch"
)
pkg_setup() {
# prevent ruby-ng.eclass from messing with pkg_setup
return
}
src_unpack() {
# prevent ruby-ng.eclass from messing with src_unpack
default
}
src_prepare() {
default
sed -i \
-e 's|-L\$\(libdir\)||' \
cpp/config/Make.rules || die
sed -i \
-e 's|-O2 ||g' \
-e 's|-Werror ||g' \
cpp/config/Make.rules.Linux || die
sed -i \
-e 's|install-common||' \
{cpp,csharp,php,python,ruby}/Makefile || die
sed -i \
-e 's|-f -root|-f -gacdir $(GAC_DIR) -root|' \
csharp/config/Make.rules.cs || die
# skip mono tests, bug #498484
sed -i \
-e '/SUBDIRS/s|\ test||' \
csharp/Makefile || die
# skip udp test due to multicast
# skip IceGrid/admin bug #649850
# skip IceSSL tests due to requirement of internet connection
# skip IceStorm/single bug #636834
# IceUtil/stacktrace and IceStorm/stress fail with USE=debug
# Glacier2/staticFiltering requires network access
sed -i \
-e 's|allTests.py|allTests.py --rfilter=udp --rfilter=IceGrid\/admin --rfilter=IceSSL --rfilter=IceStorm\/single --rfilter=IceStorm\/stress --rfilter=IceUtil\/stacktrace --rfilter=Glacier2\/staticFiltering|' \
cpp/Makefile || die
# fails even on unicode locale
sed -i \
-e 's|allTests.py|allTests.py --rfilter=Slice\/unicodePaths|' \
ruby/Makefile || die
# fix for x86 IceBox test
sed -i \
-e 's|"32"|""|' \
scripts/TestUtil.py || die
}
src_configure() {
suitable_db_version() {
local ver
for ver in "${BERKDB_SLOTS[@]}"; do
if [[ -n $(db_findver sys-libs/db:${ver}) ]]; then
echo "${ver}"
return 0
fi
done
die "No suitable BerkDB versions found, aborting"
}
MAKE_RULES=(
"prefix=\"${ED}/usr\""
"install_docdir=\"${ED}/usr/share/doc/${PF}\""
"install_configdir=\"${ED}/usr/share/${P}/config\""
"install_mandir=\"${ED}/usr/share/man/man1\""
"embedded_runpath_prefix=\"${EPREFIX}/usr\""
"LP64=yes"
"new_dtags=yes"
"NOTEST=$(usex !test)"
"USE_READLINE=$(usex readline)"
"OPTIMIZE=$(usex !debug)"
)
local BERKDB_VERSION="$(suitable_db_version)"
MAKE_RULES+=("DB_FLAGS=-I$(db_includedir ${BERKDB_VERSION})")
sed -i \
-e "s|g++|$(tc-getCXX)|" \
-e "s|\(CFLAGS[[:space:]]*=\)|\1 ${CFLAGS}|" \
-e "s|\(CXXFLAGS[[:space:]]*=\)|\1 ${CXXFLAGS}|" \
-e "s|\(LDFLAGS[[:space:]]*=\)|\1 ${LDFLAGS}|" \
-e "s|\(DB_LIBS[[:space:]]*=\) \-ldb_cxx|\1 -ldb_cxx-$(db_findver sys-libs/db:${BERKDB_VERSION})|" \
cpp/config/Make.rules{,.Linux} python/config/Make.rules || die
if use python; then
local S="${S}/python"
python_copy_sources
fi
if use ruby; then
SITERUBY="$(ruby26 -r rbconfig -e 'print RbConfig::CONFIG["sitelibdir"]')"
SITERUBYARCH="$(ruby26 -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')"
MAKE_RULES_RUBY=(
"install_rubydir=\"${ED}/${SITERUBY}\""
"install_libdir=\"${ED}/${SITERUBYARCH}\""
)
# make it use ruby26 only
sed -i \
-e 's|RUBY = ruby|\026|' \
ruby/config/Make.rules || die
sed -i \
-e 's|env ruby|\026|' \
ruby/config/s2rb.rb || die
sed -i \
-e 's|env ruby|\026|' \
ruby/scripts/slice2rb || die
sed -i \
-e 's|output.write("ruby|\026|' \
scripts/TestUtil.py || die
fi
MAKE_RULES_MONO=(
"GACINSTALL=yes"
"GAC_ROOT=\"${ED}/usr/$(get_libdir)\""
"GAC_DIR=\"${EPREFIX}/usr/$(get_libdir)\""
"install_libdir=\"${ED}/usr/$(get_libdir)\""
"install_pkgconfigdir=\"${ED}/usr/$(get_libdir)/pkgconfig\""
)
if has_version ">dev-lang/mono-4"; then
MAKE_RULES_MONO+=("MCS=mcs")
fi
use test && python_setup
}
src_compile() {
# Do not remove this export or build will break!
tc-export CXX
emake -C cpp "${MAKE_RULES[@]}"
if use php; then
local i
for i in $(php_get_slots); do
mkdir -p "${WORKDIR}/${i}" || die
cp -r "${PHP_EXT_S}" "${WORKDIR}/${i}/" || die "Failed to copy source ${PHP_EXT_S} to PHP target directory"
pushd "${WORKDIR}/${i}" >/dev/null || die
ln -s "${S}/cpp" || die
ln -s "${S}/config" || die
ln -s "${S}/slice" || die
ln -s "${S}/Makefile" || die
emake -C php "${MAKE_RULES[@]}" USE_NAMESPACES=yes "PHP_CONFIG=\"${EPREFIX}/usr/$(get_libdir)/${i}/bin/php-config\""
popd >/dev/null || die
done
fi
if use python; then
building() {
emake -C "${BUILD_DIR}" "${MAKE_RULES[@]}" PYTHON="${EPYTHON}"
}
local S="${S}/python"
python_foreach_impl building
fi
if use ruby; then
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}"
fi
if use mono; then
emake -C csharp "${MAKE_RULES[@]}" "${MAKE_RULES_MONO[@]}"
fi
}
src_test() {
local -x LD_LIBRARY_PATH="${S}/cpp/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
emake -C cpp "${MAKE_RULES[@]}" test
# php tests require the extension loaded and are therefore skipped
if use python; then
testing() {
PYTHONPATH="${BUILD_DIR}"/python emake -C "${BUILD_DIR}" \
"${MAKE_RULES[@]}" \
PYTHON="${EPYTHON}" \
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
install_libdir="\"${D}/$(python_get_sitedir)\"" test
}
local S="${S}/python"
python_foreach_impl testing
fi
if use ruby; then
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}" test
fi
if use mono; then
# skip mono tests, bug #498484
ewarn "Tests for C# are currently disabled."
#emake -C csharp "${MAKE_RULES[@]}" "${MAKE_RULES_MONO[@]}" test
fi
}
src_install() {
local DOCS=( CHANGELOG*.md README.md )
use doc && DOCS+=( "${DISTDIR}/${PN}-3.6.4.pdf" )
einstalldocs
insinto /usr/share/${P}
doins -r slice
emake -C cpp "${MAKE_RULES[@]}" install
if use examples; then
docinto examples-cpp
dodoc cpp/config/*.cfg
docompress -x /usr/share/doc/${PF}/examples-cpp
fi
if use php; then
insinto "/usr/share/php/${PN}"
local i
while IFS="" read -d $'\0' -r i; do
doins "${i}"
done < <(find "${S}/php/lib/" -name '*.php' -print0)
pushd "${ED}/usr/share/${P}/slice" >/dev/null || die
local -x LD_LIBRARY_PATH="${ED}/usr/$(get_libdir):${LD_LIBRARY_PATH}"
for i in *; do
mkdir -p "${ED}/usr/share/php/${i}" || die
"${ED}"/usr/bin/slice2php \
-I"${ED}/usr/share/${P}/slice/" --all \
--output-dir "${ED}/usr/share/php/${i}" \
--ice "${ED}/usr/share/${P}/slice/${i}"/*
done
for i in $(php_get_slots); do
php_init_slot_env "${i}"
insinto "${EXT_DIR}"
newins "php/lib/${PHP_EXT_NAME}.so" "${PHP_EXT_NAME}.so"
done
php-ext-source-r3_createinifiles
popd >/dev/null || die
fi
if use python; then
installation() {
mkdir -p "${D}/$(python_get_sitedir)" || die
emake -C "${BUILD_DIR}" \
"${MAKE_RULES[@]}" \
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
install_libdir="\"${D}/$(python_get_sitedir)\"" \
install
python_optimize
}
local S="${S}/python"
python_foreach_impl installation
fi
if use ruby; then
dodir "${SITERUBY}"
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}" install
fi
if use mono; then
emake -C csharp "${MAKE_RULES[@]}" "${MAKE_RULES_MONO[@]}" install
fi
}

@ -0,0 +1,336 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
RUBY_OPTIONAL="yes"
USE_RUBY="ruby25"
PHP_EXT_NAME="IcePHP"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
PHP_EXT_OPTIONAL_USE=php
USE_PHP="php7-4"
# This variable does not belong to any eclass. It is solely used in this ebuild
BERKDB_SLOTS=( 6.2 6.1 5.3 5.1 4.8 )
inherit db-use mono-env php-ext-source-r3 python-r1 ruby-ng toolchain-funcs
DESCRIPTION="ICE middleware C++ library and generator tools"
HOMEPAGE="https://zeroc.com/products/ice"
SRC_URI="https://github.com/zeroc-ice/ice/archive/v${PV}.tar.gz -> ${P}.tar.gz
doc? ( https://download.zeroc.com/Ice/$(ver_cut 1-2)/${PN}-3.6.4.pdf )"
LICENSE="GPL-2"
SLOT="0/36"
KEYWORDS="~amd64 ~arm ~x86"
IUSE="debug doc examples libressl +readline mono php python ruby test"
RESTRICT="test"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND=">=dev-libs/expat-2.0.1
>=app-arch/bzip2-1.0.5
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
|| (
$(for slot in ${BERKDB_SLOTS[@]} ; do printf '%s\n' "sys-libs/db:${slot}[cxx]" ; done)
)
dev-cpp/libmcpp
python? ( ${PYTHON_DEPS} )
ruby? ( $(ruby_implementation_depend ruby25) )
mono? ( dev-lang/mono )"
DEPEND="${RDEPEND}
readline? ( sys-libs/readline:0= )
test? (
${PYTHON_DEPS}
dev-python/passlib[${PYTHON_USEDEP}]
)"
# Maintainer notes:
# TODO: java bindings
S="${WORKDIR}/${P,}"
PHP_EXT_S="${S}/php"
PATCHES=(
"${FILESDIR}/${PN}-3.6.3-no-arch-opts.patch"
"${FILESDIR}/${P}-db6.patch"
"${FILESDIR}/${P}-csharp.patch"
)
pkg_setup() {
# prevent ruby-ng.eclass from messing with pkg_setup
return
}
src_unpack() {
# prevent ruby-ng.eclass from messing with src_unpack
default
}
src_prepare() {
default
sed -i \
-e 's|-L\$\(libdir\)||' \
cpp/config/Make.rules || die
sed -i \
-e 's|-O2 ||g' \
-e 's|-Werror ||g' \
cpp/config/Make.rules.Linux || die
sed -i \
-e 's|install-common||' \
{cpp,csharp,php,python,ruby}/Makefile || die
sed -i \
-e 's|-f -root|-f -gacdir $(GAC_DIR) -root|' \
csharp/config/Make.rules.cs || die
# skip mono tests, bug #498484
sed -i \
-e '/SUBDIRS/s|\ test||' \
csharp/Makefile || die
# skip udp test due to multicast
# skip IceGrid/admin bug #649850
# skip IceSSL tests due to requirement of internet connection
# skip IceStorm/single bug #636834
# IceUtil/stacktrace and IceStorm/stress fail with USE=debug
# Glacier2/staticFiltering requires network access
sed -i \
-e 's|allTests.py|allTests.py --rfilter=udp --rfilter=IceGrid\/admin --rfilter=IceSSL --rfilter=IceStorm\/single --rfilter=IceStorm\/stress --rfilter=IceUtil\/stacktrace --rfilter=Glacier2\/staticFiltering|' \
cpp/Makefile || die
# fails even on unicode locale
sed -i \
-e 's|allTests.py|allTests.py --rfilter=Slice\/unicodePaths|' \
ruby/Makefile || die
# fix for x86 IceBox test
sed -i \
-e 's|"32"|""|' \
scripts/TestUtil.py || die
}
src_configure() {
suitable_db_version() {
local ver
for ver in "${BERKDB_SLOTS[@]}"; do
if [[ -n $(db_findver sys-libs/db:${ver}) ]]; then
echo "${ver}"
return 0
fi
done
die "No suitable BerkDB versions found, aborting"
}
MAKE_RULES=(
"prefix=\"${ED}/usr\""
"install_docdir=\"${ED}/usr/share/doc/${PF}\""
"install_configdir=\"${ED}/usr/share/${P}/config\""
"install_mandir=\"${ED}/usr/share/man/man1\""
"embedded_runpath_prefix=\"${EPREFIX}/usr\""
"LP64=yes"
"new_dtags=yes"
"NOTEST=$(usex !test)"
"USE_READLINE=$(usex readline)"
"OPTIMIZE=$(usex !debug)"
)
local BERKDB_VERSION="$(suitable_db_version)"
MAKE_RULES+=("DB_FLAGS=-I$(db_includedir ${BERKDB_VERSION})")
sed -i \
-e "s|g++|$(tc-getCXX)|" \
-e "s|\(CFLAGS[[:space:]]*=\)|\1 ${CFLAGS}|" \
-e "s|\(CXXFLAGS[[:space:]]*=\)|\1 ${CXXFLAGS}|" \
-e "s|\(LDFLAGS[[:space:]]*=\)|\1 ${LDFLAGS}|" \
-e "s|\(DB_LIBS[[:space:]]*=\) \-ldb_cxx|\1 -ldb_cxx-$(db_findver sys-libs/db:${BERKDB_VERSION})|" \
cpp/config/Make.rules{,.Linux} python/config/Make.rules || die
if use python; then
local S="${S}/python"
python_copy_sources
fi
if use ruby; then
SITERUBY="$(ruby25 -r rbconfig -e 'print RbConfig::CONFIG["sitelibdir"]')"
SITERUBYARCH="$(ruby25 -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')"
MAKE_RULES_RUBY=(
"install_rubydir=\"${ED}/${SITERUBY}\""
"install_libdir=\"${ED}/${SITERUBYARCH}\""
)
# make it use ruby25 only
sed -i \
-e 's|RUBY = ruby|\025|' \
ruby/config/Make.rules || die
sed -i \
-e 's|env ruby|\025|' \
ruby/config/s2rb.rb || die
sed -i \
-e 's|env ruby|\025|' \
ruby/scripts/slice2rb || die
sed -i \
-e 's|output.write("ruby|\025|' \
scripts/TestUtil.py || die
fi
MAKE_RULES_MONO=(
"GACINSTALL=yes"
"GAC_ROOT=\"${ED}/usr/$(get_libdir)\""
"GAC_DIR=\"${EPREFIX}/usr/$(get_libdir)\""
"install_libdir=\"${ED}/usr/$(get_libdir)\""
"install_pkgconfigdir=\"${ED}/usr/$(get_libdir)/pkgconfig\""
)
if has_version ">dev-lang/mono-4"; then
MAKE_RULES_MONO+=("MCS=mcs")
fi
use test && python_setup
}
src_compile() {
# Do not remove this export or build will break!
tc-export CXX
emake -C cpp "${MAKE_RULES[@]}"
if use php; then
local i
for i in $(php_get_slots); do
mkdir -p "${WORKDIR}/${i}" || die
cp -r "${PHP_EXT_S}" "${WORKDIR}/${i}/" || die "Failed to copy source ${PHP_EXT_S} to PHP target directory"
pushd "${WORKDIR}/${i}" >/dev/null || die
ln -s "${S}/cpp" || die
ln -s "${S}/config" || die
ln -s "${S}/slice" || die
ln -s "${S}/Makefile" || die
emake -C php "${MAKE_RULES[@]}" USE_NAMESPACES=yes "PHP_CONFIG=\"${EPREFIX}/usr/$(get_libdir)/${i}/bin/php-config\""
popd >/dev/null || die
done
fi
if use python; then
building() {
emake -C "${BUILD_DIR}" "${MAKE_RULES[@]}" PYTHON="${EPYTHON}"
}
local S="${S}/python"
python_foreach_impl building
fi
if use ruby; then
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}"
fi
if use mono; then
emake -C csharp "${MAKE_RULES[@]}" "${MAKE_RULES_MONO[@]}"
fi
}
src_test() {
local -x LD_LIBRARY_PATH="${S}/cpp/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
emake -C cpp "${MAKE_RULES[@]}" test
# php tests require the extension loaded and are therefore skipped
if use python; then
testing() {
PYTHONPATH="${BUILD_DIR}"/python emake -C "${BUILD_DIR}" \
"${MAKE_RULES[@]}" \
PYTHON="${EPYTHON}" \
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
install_libdir="\"${D}/$(python_get_sitedir)\"" test
}
local S="${S}/python"
python_foreach_impl testing
fi
if use ruby; then
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}" test
fi
if use mono; then
# skip mono tests, bug #498484
ewarn "Tests for C# are currently disabled."
#emake -C csharp "${MAKE_RULES[@]}" "${MAKE_RULES_MONO[@]}" test
fi
}
src_install() {
local DOCS=( CHANGELOG*.md README.md )
use doc && DOCS+=( "${DISTDIR}/${PN}-3.6.4.pdf" )
einstalldocs
insinto /usr/share/${P}
doins -r slice
emake -C cpp "${MAKE_RULES[@]}" install
if use examples; then
docinto examples-cpp
dodoc cpp/config/*.cfg
docompress -x /usr/share/doc/${PF}/examples-cpp
fi
if use php; then
insinto "/usr/share/php/${PN}"
local i
while IFS="" read -d $'\0' -r i; do
doins "${i}"
done < <(find "${S}/php/lib/" -name '*.php' -print0)
pushd "${ED}/usr/share/${P}/slice" >/dev/null || die
local -x LD_LIBRARY_PATH="${ED}/usr/$(get_libdir):${LD_LIBRARY_PATH}"
for i in *; do
mkdir -p "${ED}/usr/share/php/${i}" || die
"${ED}"/usr/bin/slice2php \
-I"${ED}/usr/share/${P}/slice/" --all \
--output-dir "${ED}/usr/share/php/${i}" \
--ice "${ED}/usr/share/${P}/slice/${i}"/*
done
for i in $(php_get_slots); do
php_init_slot_env "${i}"
insinto "${EXT_DIR}"
newins "php/lib/${PHP_EXT_NAME}.so" "${PHP_EXT_NAME}.so"
done
php-ext-source-r3_createinifiles
popd >/dev/null || die
fi
if use python; then
installation() {
mkdir -p "${D}/$(python_get_sitedir)" || die
emake -C "${BUILD_DIR}" \
"${MAKE_RULES[@]}" \
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
install_libdir="\"${D}/$(python_get_sitedir)\"" \
install
python_optimize
}
local S="${S}/python"
python_foreach_impl installation
fi
if use ruby; then
dodir "${SITERUBY}"
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}" install
fi
if use mono; then
emake -C csharp "${MAKE_RULES[@]}" "${MAKE_RULES_MONO[@]}" install
fi
}

@ -1,2 +1,3 @@
DIST Ice-3.6.4.pdf 8907736 BLAKE2B 5a631c1e2e147c8ed3b31a84192210c92bbe83e8644ec9d7d164d1b94a20069ce77f6baf54910ac00c7216cbc2979caac6fa78457e9292a84407e93000f9903a SHA512 9bd2d373eb83e08e563cab174a53063a490367dea3e4b910f93f0477c3817282c859f07e46e503006e9bd37678fb6da31a58b88bfabd217b5e371fff685321a0
DIST Ice-3.6.4.tar.gz 5523841 BLAKE2B 4e50dcf0f004f14a38c173f181cabb97fdc201786c338800b9750dc0cf6ce9b1397ea26b4357de1f6e1ac6b4e69abbe2bf464a5f9c2926f6ae45abbf5a69803b SHA512 fdb412ce591bca7aede2ac7d70600184f3b67279e8ffdfee3649f517d5531d2dfee54b37d0cc6de2ef5de8ecd281c39d6c951781b68f9a36316a7607cefb9e57
DIST Ice-3.6.5.tar.gz 5505499 BLAKE2B e16e8932f09270ac6bb86984ab47fa229ad873ee343ac4f56bb48b6f9547387ded0392a76302afac2c98b6d31da7c1faf294574cdba52654e7dea0af16b4169d SHA512 3431928e6168d716919aa9b3126d17a8ae14895bb78a369902a2bb350b2e82923f38ee17965ed3696512a016fcd34dc128e9aaca40fb2b032e7f7eb07bcb903b

@ -0,0 +1,50 @@
--- ice-3.6.5/csharp/src/Makefile~ 2015-06-23 17:30:20.000000000 +0200
+++ ice-3.6.5/csharp/src/Makefile 2015-06-27 20:07:04.217188211 +0200
@@ -11,7 +11,7 @@
include $(top_srcdir)/config/Make.rules.cs
-SUBDIRS = Ice IceStorm Glacier2 IcePatch2 IceGrid IceBox IceDiscovery IceLocatorDiscovery
+SUBDIRS = Ice IceStorm Glacier2 IcePatch2 IceGrid IceBox IceSSL IceDiscovery IceLocatorDiscovery
$(EVERYTHING)::
@for subdir in $(SUBDIRS); \
--- /dev/null 2015-06-27 16:44:15.733558105 +0200
+++ ice-3.6.5/csharp/lib/pkgconfig/IceSSL.pc 2015-06-27 20:19:30.731894653 +0200
@@ -0,0 +1,10 @@
+version = 3.6.5
+mono_root = /usr
+
+name = IceSSL
+
+Name: ${name}
+Description: IceSSL run-time support
+Version: ${version}
+Libs: -r:${mono_root}/lib/mono/${name}/${name}.dll
+Requires: Ice = ${version}
--- /dev/null 2015-06-27 16:44:15.733558105 +0200
+++ ice-3.6.5/csharp/lib/pkgconfig/IceDiscovery.pc 2015-06-27 20:20:44.312515987 +0200
@@ -0,0 +1,10 @@
+version = 3.6.5
+mono_root = /usr
+
+name = IceDiscovery
+
+Name: ${name}
+Description: IceDiscovery run-time support
+Version: ${version}
+Libs: -r:${mono_root}/lib/mono/${name}/${name}.dll
+Requires: Ice = ${version}
--- /dev/null 2015-06-27 16:44:15.733558105 +0200
+++ ice-3.6.5/csharp/lib/pkgconfig/IceLocatorDiscovery.pc 2015-06-27 20:21:22.206185123 +0200
@@ -0,0 +1,10 @@
+version = 3.6.5
+mono_root = /usr
+
+name = IceLocatorDiscovery
+
+Name: ${name}
+Description: IceLocatorDiscovery run-time support
+Version: ${version}
+Libs: -r:${mono_root}/lib/mono/${name}/${name}.dll
+Requires: Ice = ${version}

@ -0,0 +1,48 @@
Avoid ambiguous ctor call (uint32_t vs DB_ENV*) with db 6.x.
--- ice-3.6.3/cpp/src/Freeze/SharedDbEnv.cpp.orig 2016-10-05 16:59:08.000000000 +0200
+++ ice-3.6.3/cpp/src/Freeze/SharedDbEnv.cpp 2017-06-28 18:42:43.411869639 +0200
@@ -530,7 +530,7 @@
{
if(_env == 0)
{
- _envHolder.reset(new DbEnv(0));
+ _envHolder.reset(new DbEnv(0u));
_env = _envHolder.get();
if(_trace >= 1)
--- ice-3.6.3/cpp/src/FreezeScript/transformdb.cpp.orig 2016-10-05 16:59:08.000000000 +0200
+++ ice-3.6.3/cpp/src/FreezeScript/transformdb.cpp 2017-06-28 19:15:03.928514164 +0200
@@ -766,8 +766,8 @@
//
// Transform the database.
//
- DbEnv dbEnv(0);
- DbEnv dbEnvNew(0);
+ DbEnv dbEnv(0u);
+ DbEnv dbEnvNew(0u);
Freeze::TransactionPtr txNew;
Freeze::ConnectionPtr connection;
Freeze::ConnectionPtr connectionNew;
--- ice-3.6.3/cpp/src/FreezeScript/Util.cpp.orig 2016-10-05 16:59:08.000000000 +0200
+++ ice-3.6.3/cpp/src/FreezeScript/Util.cpp 2017-06-28 19:22:29.318509063 +0200
@@ -209,7 +209,7 @@
{
CatalogDataMap result;
- DbEnv dbEnv(0);
+ DbEnv dbEnv(0u);
try
{
#ifdef _WIN32
--- ice-3.6.3/cpp/src/FreezeScript/DumpDB.cpp.orig 2016-10-05 16:59:08.000000000 +0200
+++ ice-3.6.3/cpp/src/FreezeScript/DumpDB.cpp 2017-06-28 19:33:38.555168088 +0200
@@ -481,7 +481,7 @@
FreezeScript::ObjectFactoryPtr objectFactory = new FreezeScript::ObjectFactory;
communicator->addObjectFactory(objectFactory, "");
- DbEnv dbEnv(0);
+ DbEnv dbEnv(0u);
DbTxn* txn = 0;
Freeze::ConnectionPtr connection;
int status = EXIT_SUCCESS;

Binary file not shown.

@ -0,0 +1 @@
DIST clipper-6.4.2.zip 2535706 BLAKE2B 755dcfd759888bda7114af784d9e684f36ce8f6e43dcadf07f5797e3723d392aab2ea9b80cb212b7eb3177bfb306ca20a797546cb2c382132887e62fa0dffd93 SHA512 ffc88818c44a38aa278d5010db6cfd505796f39664919f1e48c7fa9267563f62135868993e88f7246dcd688241d1172878e4a008a390648acb99738452e3e5dd

@ -0,0 +1,33 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
inherit cmake
MY_PV="ver${PV}"
MY_P="${PN}_${MY_PV}"
DESCRIPTION="Polygon and line clipping and offsetting library (C++, C#, Delphi)"
HOMEPAGE="http://www.angusj.com/delphi/clipper.php"
SRC_URI="mirror://sourceforge/project/polyclipping/${MY_P}.zip -> ${P}.zip"
LICENSE="Boost-1.0"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
RDEPEND=""
BDEPEND="app-arch/unzip"
S="${WORKDIR}/cpp"
src_configure() {
local mycmakeargs=(
-DBUILD_SHARED_LIBS=ON
)
cmake_src_configure
}

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>3dprint@gentoo.org</email>
<name>Gentoo 3D Printer Project</name>
</maintainer>
<longdescription>
The Clipper library performs line &amp; polygon clipping - intersection, union, difference &amp; exclusive-or,
and line &amp; polygon offsetting. The library is based on Vatti's clipping algorithm.
</longdescription>
<upstream>
<remote-id type="sourceforge">polyclipping</remote-id>
</upstream>
</pkgmetadata>

@ -21,6 +21,11 @@
<email>perlovka@gmail.com</email>
<name>Michael Perlov</name>
</maintainer>
<longdescription>
This library contains C++ code and Python3 bindings for creating a socket in a thread and using this socket to
send and receive messages based on the Protocol Buffers library.
It is designed to facilitate the communication between Cura and its backend and similar code.
</longdescription>
<slots>
<subslots>soname major version number</subslots>
</slots>

@ -0,0 +1,16 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=TYEMQ
DIST_VERSION=1.0101
DIST_A_EXT=tgz
inherit perl-module
DESCRIPTION="Simple, ad-hoc access to elements of deeply nested structures"
# NO LICENSE DECLARED UPSTREAM
# Bug: https://bugs.gentoo.org/732710
SLOT="0"
KEYWORDS="~amd64 ~mips ~x86"

@ -0,0 +1,24 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=GAAS
DIST_VERSION=1.23
inherit perl-module
DESCRIPTION="Pretty printing of data structures"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
virtual/perl-MIME-Base64
"
BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
test? (
virtual/perl-Test
)
"

@ -0,0 +1,22 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=GAAS
DIST_VERSION=1.06
inherit perl-module
DESCRIPTION="Dump arbitrary data structures as XML"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~sparc-solaris"
RDEPEND="
>=dev-perl/Array-RefElem-0.10.0
>=virtual/perl-MIME-Base64-2
>=dev-perl/XML-Parser-2
"
BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
"

@ -0,0 +1,14 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=JV
DIST_VERSION=1.00
inherit perl-module
DESCRIPTION="Perl extension for hexdumping arbitrary data"
SLOT="0"
KEYWORDS="~amd64 ~arm ~mips ~x86 ~amd64-linux"

@ -0,0 +1,21 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=CLKAO
DIST_VERSION=0.34
inherit perl-module
DESCRIPTION="Handle data in a hierarchical structure"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~ia64 ~mips ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="
test? (
dev-perl/Test-Exception
)
"

@ -0,0 +1,39 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=BPS
DIST_VERSION=0.24
inherit perl-module
DESCRIPTION="Generates iCalendar (RFC 2445) calendar files"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
dev-perl/Class-Accessor
dev-perl/Class-ReturnValue
virtual/perl-MIME-Base64
dev-perl/Text-vFile-asData
"
BDEPEND="${RDEPEND}
>=virtual/perl-ExtUtils-MakeMaker-6.360.0
test? (
dev-perl/Test-LongString
dev-perl/Test-NoWarnings
virtual/perl-Test-Simple
dev-perl/Test-Warn
)
"
PERL_RM_FILES=(
"t/pod.t"
"t/pod-coverage.t"
)
PATCHES=(
"${FILESDIR}/${PN}-0.24-no-autoinstall.patch"
"${FILESDIR}/${PN}-0.24-no-dot-inc.patch"
)

@ -1 +1,2 @@
DIST Data-ICal-0.22.tar.gz 119116 BLAKE2B 5288c6c32a1225a6fbe587bc07650d94895f937516a82a1781777ec79827d80040b1fb3f10542d52fa5985c4b26ef38f374d7fbe4761bc2d1bc7afa4769e1671 SHA512 a02364dfb0a1e24efcf2efdb7240bb6c47ad5ed3a99ada51ddb9817b4e433038d57113699c6875f7d592cd3af46f5b074a1ac50cf951b7af449bde1765ed5d55
DIST Data-ICal-0.24.tar.gz 120451 BLAKE2B 5f96ae3a625eb4e5823b9250673d4ae7c2b4addf80ab9543d1152cd45462fa901d3a76419f66b2eda4532b48eb380262ceedf6356cc72844e3dd2765d836af53 SHA512 592cc76dd8dd00d8ce365a7105c6b732ecb94838876d6b430f1f3078e8674f9584c5a6248c5ec5ebbee9d35f3758d9709d45e70728899c528d030424abe81d9e

@ -0,0 +1,24 @@
From 6d28e03e9c5bc92ddfb92d2787af6a7d3baff24d Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentnl@gentoo.org>
Date: Wed, 15 Jul 2020 23:59:05 +1200
Subject: Disable autoinstall and sign functionality
These aren't helpful for Gentoo
---
Makefile.PL | 2 --
1 file changed, 2 deletions(-)
diff --git a/Makefile.PL b/Makefile.PL
index c3d895e..ea29f9b 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -13,6 +13,4 @@ requires('Class::Accessor');
requires('Text::vFile::asData');
requires('MIME::QuotedPrint');
requires('Class::ReturnValue');
-auto_install();
-sign();
WriteAll;
--
2.27.0

@ -0,0 +1,21 @@
From 976b06737710d78fc0aef76b8251d0e138ebbc18 Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentnl@gentoo.org>
Date: Thu, 16 Jul 2020 00:19:16 +1200
Subject: Include '.' in @INC for perl 5.26+
---
Makefile.PL | 1 +
1 file changed, 1 insertion(+)
diff --git a/Makefile.PL b/Makefile.PL
index ea29f9b..44fb3b8 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -1,3 +1,4 @@
+use lib '.';
use inc::Module::Install;
name ('Data-ICal');
--
2.27.0

@ -9,10 +9,13 @@
<remote-id type="cpan">Data-ICal</remote-id>
<remote-id type="cpan-module">Data::ICal</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry::Alarm</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry::Alarm::Audio</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry::Alarm::Display</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry::Alarm::Email</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry::Alarm::None</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry::Alarm::Procedure</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry::Alarm::URI</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry::Event</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry::FreeBusy</remote-id>
<remote-id type="cpan-module">Data::ICal::Entry::Journal</remote-id>

Binary file not shown.

Binary file not shown.

@ -3,7 +3,7 @@
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
PYTHON_COMPAT=( python3_{6..9} pypy3 )
inherit distutils-r1
DESCRIPTION="CFFI bindings to the Argon2 password hashing library"

@ -0,0 +1,50 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
DISTUTILS_USE_SETUPTOOLS=bdepend
inherit distutils-r1
DESCRIPTION="Amazon Web Services API"
HOMEPAGE="https://github.com/boto/boto https://pypi.org/project/boto/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 ~arm64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
PATCHES=(
# taken from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=909545
"${FILESDIR}/boto-try-to-add-SNI-support-v2.patch"
"${FILESDIR}"/${P}-py38.patch
)
BDEPEND="
test? (
dev-python/httpretty[${PYTHON_USEDEP}]
dev-python/keyring[${PYTHON_USEDEP}]
dev-python/lxml[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
dev-python/paramiko[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
dev-python/rsa[${PYTHON_USEDEP}]
dev-python/selenium[${PYTHON_USEDEP}]
)"
distutils_enable_tests nose
src_prepare() {
# broken, not worth fixing
rm tests/unit/cloudfront/test_signed_urls.py || die
# fix tests
mkdir -p "${HOME}"/.ssh || die
: > "${HOME}"/.ssh/known_hosts || die
distutils-r1_src_prepare
}
python_test() {
nosetests -v tests/unit ||
die "Tests fail with ${EPYTHON}"
}

@ -1 +1,2 @@
DIST cachetools-3.1.1.tar.gz 22055 BLAKE2B 9141adb9cff5e7f76a370666c24664de09b1562a9e40636b8103157cc65b146dca96ad871065191618e2d458078cb7da30c80da21b4fded73097bda7916f4819 SHA512 23a7d9c91f97727984585745169dbf94922288e464196d5c05f442226cbff4efeb3588ed463f481bd75892824188bd3ab8031f4f2f8e52924c74428b1034714a
DIST cachetools-4.1.1.tar.gz 23574 BLAKE2B 5777d243ae87635766811fd2aea8789f9f1674ae3a7ddcc08bb3c8d4345002d65cdbd00cbaf75ba801dccffb1896a75688a6e97f984e1d498a93726854398196 SHA512 254e8821feaaf4fff656aa2beaf0b2c1c6dbe8698148be783bb18a6476f758061471906e4774f47bd8722dbbbc09745088a8f61eb5c455fbe85ef17a3816ce7d

@ -3,7 +3,7 @@
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
@ -15,8 +15,4 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 x86"
RDEPEND=""
DEPEND="${RDEPEND}
dev-python/setuptools[${PYTHON_USEDEP}]"
distutils_enable_tests pytest

@ -0,0 +1,18 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
DESCRIPTION="Extensible memoizing collections and decorators"
HOMEPAGE="https://pypi.org/project/cachetools/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
distutils_enable_tests pytest

@ -3,7 +3,7 @@
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_COMPAT=( python3_{6..9} )
PYTHON_REQ_USE="xml(+)"
inherit distutils-r1

@ -24,6 +24,7 @@ RDEPEND="
BDEPEND="
test? (
$(python_gen_impl_dep sqlite)
dev-python/freezegun[${PYTHON_USEDEP}]
dev-python/qrcode[${PYTHON_USEDEP}]
${RDEPEND}
)"

@ -0,0 +1 @@
DIST findimports-1.5.2.gh.tar.gz 32211 BLAKE2B ea3110925085d466df7f95eaa06dce9e331ecba52c1772b76b05e51c633a8adc1ff91295db441049dab39129606e3927f69834376cc5fb864f5f3b62ac68bac2 SHA512 86432d29d180d4299ba789b69601722a6a15eed9badbf2f930e8867be06c64a2f1f8123ae182d7c6b73339287d04c2cdb4a18a31662ea72e86283ee165dc4d45

@ -0,0 +1,20 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DISTUTILS_USE_SETUPTOOLS=rdepend
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
DESCRIPTION="Python module import analysis tool"
HOMEPAGE="https://github.com/mgedmin/findimports"
SRC_URI="
https://github.com/mgedmin/findimports/archive/${PV}.tar.gz
-> ${P}.gh.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
distutils_enable_tests setup.py

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mgorny@gentoo.org</email>
<name>Michał Górny</name>
</maintainer>
</pkgmetadata>

@ -1 +1,2 @@
DIST Flask-Security-3.0.0.tar.gz 160367 BLAKE2B c2e1449dc2807c2c40519fa3afb894157e17ecc9ff3f6dcf5ef0d02839a5988f827afd26c1d31af86d5e240e0ea8bfb8ed86354bb6a83535436b08721cac8f26 SHA512 09b94f0850372513add5c054c07aa465ecb95e8d1c414647e3ebee571ec08c94a29f0c138d092c02a55e242c422bc53f929ca066d671c082dcb29834ac753984
DIST flask-security-3.4.3.gh.tar.gz 346540 BLAKE2B ab3b037282bc5b7777ceeaaaf869996f471bc3b954f0b2cf6d17ba44d4014c8c3ac8e34618bc7347bbd1cd6b1c649b49407cb05aad9bd748191c08b7326f679a SHA512 23ad8bc91df418361a556827ff8369777f3716dfd1c97fef6237ba9cb07813eac4033eb3fed80e9ebadeab4f2d2a956b5a652bec80825f939a9fc7d817aa3d90

@ -0,0 +1,63 @@
From 8943f49c3e6064839bd1e3c2c73a750b2b476ae3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Wed, 15 Jul 2020 09:02:15 +0200
Subject: [PATCH 1/2] tests: Skip tests requiring specific data backends if not
available
Skip tests that require a specific database backend if the respective
package is not available. This is mostly intended to make it possible
to test flask-security on Python 3.9 since Pony does not support this
Python version but there is no harm in extending it to other backends.
Technically, Flask-SQLAlchemy is still required due to other tests.
---
tests/conftest.py | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/tests/conftest.py b/tests/conftest.py
index 3305d92..a48f480 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -218,6 +218,7 @@ def mongoengine_datastore(request, app, tmpdir, realdburl):
def mongoengine_setup(request, app, tmpdir, realdburl):
+ pytest.importorskip('flask_mongoengine')
from flask_mongoengine import MongoEngine
from mongoengine.fields import (
BooleanField,
@@ -282,6 +283,7 @@ def sqlalchemy_datastore(request, app, tmpdir, realdburl):
def sqlalchemy_setup(request, app, tmpdir, realdburl):
+ pytest.importorskip('flask_sqlalchemy')
from flask_sqlalchemy import SQLAlchemy
from flask_security.models import fsqla_v2 as fsqla
@@ -326,6 +328,7 @@ def sqlalchemy_session_datastore(request, app, tmpdir, realdburl):
def sqlalchemy_session_setup(request, app, tmpdir, realdburl):
+ pytest.importorskip('sqlalchemy')
from sqlalchemy import create_engine
from sqlalchemy.orm import scoped_session, sessionmaker, relationship, backref
from sqlalchemy.ext.declarative import declarative_base
@@ -426,6 +429,7 @@ def peewee_datastore(request, app, tmpdir, realdburl):
def peewee_setup(request, app, tmpdir, realdburl):
+ pytest.importorskip('peewee')
from peewee import (
TextField,
DateTimeField,
@@ -522,6 +526,7 @@ def pony_datastore(request, app, tmpdir, realdburl):
def pony_setup(request, app, tmpdir, realdburl):
+ pytest.importorskip('pony')
from pony.orm import Database, Optional, Required, Set
from pony.orm.core import SetInstance
--
2.27.0

@ -0,0 +1,73 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
DESCRIPTION="Simple security for Flask apps"
HOMEPAGE="
https://github.com/Flask-Middleware/flask-security/
https://pypi.org/project/Flask-Security-Too/"
SRC_URI="
https://github.com/Flask-Middleware/flask-security/archive/${PV}.tar.gz
-> ${P}.gh.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
RDEPEND="
dev-python/cachetools[${PYTHON_USEDEP}]
>=dev-python/flask-1.1.1[${PYTHON_USEDEP}]
>=dev-python/flask-babelex-0.9.3[${PYTHON_USEDEP}]
>=dev-python/flask-login-0.4.1[${PYTHON_USEDEP}]
>=dev-python/flask-principal-0.4.0[${PYTHON_USEDEP}]
>=dev-python/flask-wtf-0.14.2[${PYTHON_USEDEP}]
>=dev-python/itsdangerous-1.1.0[${PYTHON_USEDEP}]
>=dev-python/passlib-1.7.2[${PYTHON_USEDEP}]
>=dev-python/python-email-validator-1.0.5[${PYTHON_USEDEP}]
"
BDEPEND="
dev-python/Babel[${PYTHON_USEDEP}]
test? (
>=dev-python/argon2-cffi-19.1.0[${PYTHON_USEDEP}]
>=dev-python/bcrypt-3.1.5[${PYTHON_USEDEP}]
>=dev-python/cryptography-2.3.1[${PYTHON_USEDEP}]
>=dev-python/flask-mail-0.9.1[${PYTHON_USEDEP}]
>=dev-python/flask-mongoengine-0.9.5[${PYTHON_USEDEP}]
>=dev-python/flask-sqlalchemy-2.3[${PYTHON_USEDEP}]
>=dev-python/mongomock-3.19.0[${PYTHON_USEDEP}]
>=dev-python/peewee-3.11.2[${PYTHON_USEDEP}]
>=dev-python/phonenumbers-8.11.1[${PYTHON_USEDEP}]
>=dev-python/psycopg-2.8.4:2[${PYTHON_USEDEP}]
>=dev-python/pymysql-0.9.3[${PYTHON_USEDEP}]
>=dev-python/pyqrcode-1.2[${PYTHON_USEDEP}]
>=dev-python/zxcvbn-4.4.28[${PYTHON_USEDEP}]
$(python_gen_cond_dep '
>=dev-python/pony-0.7.11[${PYTHON_USEDEP}]
' python3_{6,7})
)"
distutils_enable_tests pytest
PATCHES=(
"${FILESDIR}"/${P}-optional-deps.patch
)
src_prepare() {
sed -i -e '/setup_requires/d' setup.py || die
sed -e 's:--cov flask_security::' \
-e 's:--cov-report term-missing::' \
-e 's:--black::' \
-e 's:--flake8::' \
-e 's:--cache-clear::' \
-i pytest.ini || die
distutils-r1_src_prepare
}
python_configure_all() {
esetup.py compile_catalog
}

@ -4,7 +4,7 @@
EAPI=7
DISTUTILS_USE_SETUPTOOLS=rdepend
PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
inherit distutils-r1
@ -21,6 +21,7 @@ SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="doc"
# importlib_metadata is only necessary for <python:3.8 according to setup.py
RDEPEND="
$(python_gen_cond_dep '
dev-python/importlib_metadata[${PYTHON_USEDEP}]

@ -0,0 +1,42 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{7,8,9} )
DISTUTILS_USE_SETUPTOOLS=rdepend
inherit distutils-r1
MY_P=${P^}
DESCRIPTION="A wrapper around various text markups"
HOMEPAGE="
https://pymarkups.readthedocs.io/en/latest/
https://github.com/retext-project/pymarkups
https://pypi.org/project/Markups/
"
SRC_URI="mirror://pypi/${MY_P:0:1}/${PN^}/${MY_P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
dev-python/markdown[${PYTHON_USEDEP}]
dev-python/python-markdown-math[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}"
BDEPEND="
test? (
app-text/pytextile[${PYTHON_USEDEP}]
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/pygments[${PYTHON_USEDEP}]
)
"
distutils_enable_tests unittest
S="${WORKDIR}/${MY_P}"

@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
@ -14,9 +14,6 @@ S="${WORKDIR}"/${P/_p/-post}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 x86 ~amd64-linux ~x86-linux"
IUSE="test"
RESTRICT="!test? ( test )"
REQUIRED_USE="|| ( $(python_gen_useflags 'python*') )"
RDEPEND="
>=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
@ -27,14 +24,15 @@ RDEPEND="
dev-python/keyring[${PYTHON_USEDEP}]
!<=dev-python/google-api-python-client-1.1[${PYTHON_USEDEP}]
"
BDEPEND="${RDEPEND}
dev-python/setuptools[${PYTHON_USEDEP}]
test? ( ${RDEPEND}
BDEPEND="
test? (
dev-python/flask[${PYTHON_USEDEP}]
dev-python/sqlalchemy[${PYTHON_USEDEP}]
)
"
distutils_enable_tests nose
PATCHES=(
"${FILESDIR}/oauth2client-4.1.3-py38.patch"
)

@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_COMPAT=( python3_{6..9} )
PYTHON_REQ_USE="sqlite"
inherit distutils-r1

@ -1 +1,2 @@
DIST phonenumbers-8.12.4.tar.gz 2269009 BLAKE2B 102630893595fa34f8e5bf3dc5122f43393e26ada216df02e843a40345aa40df83aa6fbf115d71e986a7e57e6a55bd6fd4eb4af14c4872bfe717cb0ec5be604c SHA512 5d93de2b7b6e974593659fb8909c05f2f6f8c29766deea914472b01dde38abdfc9f4f6ee8c718e2ad11e840070b350b623cb9ca58368f24cf1e03804712fa38d
DIST phonenumbers-8.12.6.tar.gz 2249614 BLAKE2B 5dd062cecf424bba0263e92c847161069e998e1b1ee26e273939996dadc1cca302ee4b567f083d58791717633db2ddd6263e625db01639e7fdb61187092f26d2 SHA512 1f79e7bd469861c6100ab4ea88f0b20cb5534e97a8da39f8681b4d201d21d2bbac1948bd49c08c474cb0b129a2c1228f7c5b664dc6033e6f4d2dd79d130897d2

@ -3,7 +3,7 @@
EAPI=7
PYTHON_COMPAT=( python3_{6..8} )
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
@ -14,13 +14,7 @@ SRC_URI="mirror://pypi/p/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="test"
RESTRICT="!test? ( test )"
DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
DOCS=(README.md)
DOCS="README.md"
python_test() {
esetup.py test
}
distutils_enable_tests setup.py

@ -0,0 +1,20 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
DESCRIPTION="Python port of Google's libphonenumber"
HOMEPAGE="https://github.com/daviddrysdale/python-phonenumbers"
SRC_URI="mirror://pypi/p/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
DOCS=(README.md)
distutils_enable_tests setup.py

@ -0,0 +1 @@
DIST pony-0.7.13.gh.tar.gz 302541 BLAKE2B a1e6f82c6eb72f8626238cbfcc0bc01d1ad3498a75a5ce4c3b8a4511e6d1fbfdd39a239f0462458ae1d64dc9446b338bbaea33d6bbdd861c8d0738e50d58a717 SHA512 431d19e3297ba1cdae5313948123d8b8cd71ee8ad5868b8cc2f5447eb435875fdbcdc3768834b9afe22ce8e4c1abaabeb597f3e6974b00aab33aa61e497d6390

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>python@gentoo.org</email>
</maintainer>
</pkgmetadata>

@ -0,0 +1,26 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..8} )
inherit distutils-r1
DESCRIPTION="Python ORM with beautiful query syntax"
HOMEPAGE="
https://ponyorm.org/
https://github.com/ponyorm/pony/"
SRC_URI="
https://github.com/ponyorm/pony/archive/v${PV}.tar.gz
-> ${P}.gh.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="
test? ( $(python_gen_impl_dep sqlite) )"
distutils_enable_tests unittest

@ -16,7 +16,7 @@ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ppc ~ppc64 ~sparc x86"
IUSE="doc examples midi opengl test X"
RESTRICT="!test? ( test )"
DEPEND="dev-python/numpy[${PYTHON_USEDEP}]
RDEPEND="dev-python/numpy[${PYTHON_USEDEP}]
>=media-libs/sdl-image-1.2.2[png,jpeg]
>=media-libs/sdl-mixer-1.2.4
>=media-libs/sdl-ttf-2.0.6
@ -24,10 +24,20 @@ DEPEND="dev-python/numpy[${PYTHON_USEDEP}]
midi? ( media-libs/portmidi )
X? ( >=media-libs/libsdl-1.2.5[opengl?,video,X] )
!X? ( >=media-libs/libsdl-1.2.5 )"
RDEPEND="${DEPEND}"
DEPEND="${RDEPEND}
test? (
media-libs/sdl-image[gif,png,jpeg]
media-libs/sdl-mixer[mp3,vorbis,wav]
)"
# fontconfig used for fc-list
RDEPEND+="
media-libs/fontconfig"
# util-linux provides script
BDEPEND="
test? ( sys-apps/util-linux )"
test? (
media-libs/fontconfig
sys-apps/util-linux
)"
src_prepare() {
# segfaults on Xvfb

@ -22,7 +22,7 @@ IUSE="doc examples midi opengl test X"
RESTRICT="!test? ( test )"
RDEPEND="dev-python/numpy[${PYTHON_USEDEP}]
>=media-libs/sdl2-image-1.2.2[jpeg,png]
>=media-libs/sdl2-image-1.2.2
>=media-libs/sdl2-mixer-1.2.4
>=media-libs/sdl2-ttf-2.0.6
>=media-libs/smpeg2-0.4.4-r1
@ -34,9 +34,15 @@ DEPEND="${RDEPEND}
media-libs/sdl2-image[gif,jpeg,png]
media-libs/sdl2-mixer[mp3,vorbis,wav]
)"
# fontconfig used for fc-list
RDEPEND+="
media-libs/fontconfig"
# util-linux provides script
BDEPEND="
test? ( sys-apps/util-linux )"
test? (
media-libs/fontconfig
sys-apps/util-linux
)"
PATCHES=(
"${FILESDIR}"/${P}-py39.patch

@ -17,7 +17,7 @@ IUSE="doc examples midi opengl test X"
RESTRICT="!test? ( test )"
RDEPEND="dev-python/numpy[${PYTHON_USEDEP}]
>=media-libs/sdl2-image-1.2.2[jpeg,png]
>=media-libs/sdl2-image-1.2.2
>=media-libs/sdl2-mixer-1.2.4
>=media-libs/sdl2-ttf-2.0.6
>=media-libs/smpeg2-0.4.4-r1
@ -29,9 +29,15 @@ DEPEND="${RDEPEND}
media-libs/sdl2-image[gif,jpeg,png]
media-libs/sdl2-mixer[mp3,vorbis,wav]
)"
# fontconfig used for fc-list
RDEPEND+="
media-libs/fontconfig"
# util-linux provides script
BDEPEND="
test? ( sys-apps/util-linux )"
test? (
media-libs/fontconfig
sys-apps/util-linux
)"
python_configure() {
PORTMIDI_INC_PORTTIME=1 LOCALBASE="${EPREFIX}/usr" \

@ -0,0 +1,34 @@
From fe9c973c5e92f24746dfa1be8796c14a2befec4f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Wed, 15 Jul 2020 07:54:53 +0200
Subject: [PATCH] test_png: Use array.tobytes to fix py3.9 compatibility
The deprecated array.tostring() method has been removed in Python 3.9.
Use .tobytes() instead.
---
code/test_png.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/code/test_png.py b/code/test_png.py
index c858d18..447c314 100644
--- a/code/test_png.py
+++ b/code/test_png.py
@@ -448,13 +448,13 @@ class Test(unittest.TestCase):
def test_interlaced_array(self):
"""Reading an interlaced PNG yields each row as an array."""
r = png.Reader(bytes=pngsuite.basi0g08)
- list(r.read()[2])[0].tostring
+ list(r.read()[2])[0].tobytes
def test_trns_array(self):
"""A type 2 PNG with tRNS chunk yields each row
as an array (using asDirect)."""
r = png.Reader(bytes=pngsuite.tbrn2c08)
- list(r.asDirect()[2])[0].tostring
+ list(r.asDirect()[2])[0].tobytes
def test_flat(self):
"""Test read_flat."""
--
2.27.0

@ -4,7 +4,7 @@
EAPI=7
DISTUTILS_USE_SETUPTOOLS=no
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
@ -16,6 +16,10 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm ~arm64 x86"
PATCHES=(
"${FILESDIR}"/${P}-py39.patch
)
python_test() {
"${EPYTHON}" code/test_png.py -v || die "Tests fail with ${EPYTHON}"
}

@ -3,7 +3,7 @@
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
# upstream doesn't do tags

@ -1 +1,2 @@
DIST python-markdown-math-0.6.tar.gz 6406 BLAKE2B 43172ba4b36b697f196bd569c93d56d1a3a05aaa306b1f149f3b70372e624e35fc0d3f3ea3c58c6b86e00c68408a5ebfe9fcc6562fe5065c7f8a7aa8683ee084 SHA512 af5773dc5b6d8968d811487a86fd027042d381b8b5b37683b519f03f21097bafd3d174881d8201cb6524e0975cd6868781e116cec6406fa20ffd3c6b9f9d4e87
DIST python-markdown-math-0.7.tar.gz 8320 BLAKE2B b402a6c1c3ef93f8716b88c0ba356109e6b483ce26b4a7923c16642a7a7fe69b25ee00e4f537d26b6fa743e81fef05871c447f9e5d3a986ff52bf7095bcdd436 SHA512 05bfff71c758785591c388a95b176205a8707428cbda91734c4f1b5d39cd030d9106782e92aca8f1de18be227b1489ad2cb09981b4455ba1d1177974cd0cbecd

@ -0,0 +1,40 @@
# 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} pypy3 )
inherit distutils-r1
MY_PN="python-${PN}"
DESCRIPTION="Math extension for Python-Markdown"
HOMEPAGE="https://github.com/mitya57/python-markdown-math"
if [[ ${PV} == **9999 ]]
then
inherit git-r3
EGIT_REPO_URI="https://github.com/mitya57/python-markdown-math.git"
else
SRC_URI="mirror://pypi/${MY_PN:0:1}/${PN}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="BSD"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
# Tests for python2.7 ran fine even with dev-python/markdown-2.6.5,
# but only python3.7 is supported with $PV >= 3.x.
DEPEND="
>=dev-python/markdown-3.0.1[${PYTHON_USEDEP}]
dev-python/setuptools[${PYTHON_USEDEP}]
"
RDEPEND="${DEPEND}"
BDEPEND=""
python_test() {
esetup.py test
}

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

@ -25,6 +25,7 @@ RDEPEND="
BDEPEND="
>=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
test? (
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/testtools[${PYTHON_USEDEP}]
)
"

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

Loading…
Cancel
Save