summaryrefslogtreecommitdiff
path: root/dev-lang
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/Manifest.gzbin17009 -> 17002 bytes
-rw-r--r--dev-lang/moarvm/Manifest12
-rw-r--r--dev-lang/moarvm/moarvm-2020.05.ebuild61
-rw-r--r--dev-lang/moarvm/moarvm-2020.06.ebuild61
-rw-r--r--dev-lang/moarvm/moarvm-2020.07.ebuild61
-rw-r--r--dev-lang/moarvm/moarvm-2020.08.ebuild61
-rw-r--r--dev-lang/moarvm/moarvm-2020.09.ebuild61
-rw-r--r--dev-lang/moarvm/moarvm-2020.10.ebuild61
-rw-r--r--dev-lang/mujs/Manifest4
-rw-r--r--dev-lang/mujs/mujs-1.0.9.ebuild5
-rw-r--r--dev-lang/mujs/mujs-1.1.0.ebuild7
-rw-r--r--dev-lang/nqp/Manifest12
-rw-r--r--dev-lang/nqp/nqp-2020.05.ebuild159
-rw-r--r--dev-lang/nqp/nqp-2020.06.ebuild159
-rw-r--r--dev-lang/nqp/nqp-2020.07.ebuild159
-rw-r--r--dev-lang/nqp/nqp-2020.08.ebuild159
-rw-r--r--dev-lang/nqp/nqp-2020.09.ebuild159
-rw-r--r--dev-lang/nqp/nqp-2020.10.ebuild159
-rw-r--r--dev-lang/php/Manifest7
-rw-r--r--dev-lang/php/files/php80-firebird-warnings.patch56
-rw-r--r--dev-lang/php/php-7.4.15-r1.ebuild753
-rw-r--r--dev-lang/php/php-8.0.2-r1.ebuild748
-rw-r--r--dev-lang/php/php-8.0.2.ebuild749
-rw-r--r--dev-lang/php/php-8.0.3.ebuild5
-rw-r--r--dev-lang/rakudo/Manifest12
-rw-r--r--dev-lang/rakudo/rakudo-2020.05.1.ebuild72
-rw-r--r--dev-lang/rakudo/rakudo-2020.06.ebuild72
-rw-r--r--dev-lang/rakudo/rakudo-2020.07.ebuild72
-rw-r--r--dev-lang/rakudo/rakudo-2020.08.1.ebuild72
-rw-r--r--dev-lang/rakudo/rakudo-2020.09.ebuild72
-rw-r--r--dev-lang/rakudo/rakudo-2020.10.ebuild72
-rw-r--r--dev-lang/spidermonkey/Manifest2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-78.9.0.ebuild439
33 files changed, 510 insertions, 4053 deletions
diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz
index 8d457eab42d1..ba8406ebbb68 100644
--- a/dev-lang/Manifest.gz
+++ b/dev-lang/Manifest.gz
Binary files differ
diff --git a/dev-lang/moarvm/Manifest b/dev-lang/moarvm/Manifest
index 731e026bfa6e..dbf4dcb3c9a9 100644
--- a/dev-lang/moarvm/Manifest
+++ b/dev-lang/moarvm/Manifest
@@ -1,18 +1,6 @@
-DIST MoarVM-2020.05.tar.gz 5309065 BLAKE2B ed33f066cc16382218509dd9cf8f9f252c87a7d8bfeaf11be8ccbf4fe2337e1dd598d7f4368d4edc5fa1b7c704ee2b4dfec66ee8824465e6088ce0bdf7c8fac1 SHA512 10dd2bb8c629ac4d7804a8e64f8883617545930520c61ff34b62b29b81f827c425004bb07c8978df9620da446fa204ccb3b5c8889651e243a1fe4da28350ab66
-DIST MoarVM-2020.06.tar.gz 5325582 BLAKE2B 3cef20e2cf8d35cf4e812c2838963938a059393eddf1b87d4f2a69750b5e3eae81db76c671d3fcc137f63acd0b94ff03a6c5c3c2a772d9d9409348cfb33fe235 SHA512 5dae0abb825d8ac1620a62da44de6a0a6ddbeed6862c728b895ad5922c0142fd305f5d63bef9726490d9bab0afa603e93b0a1cfd7e61f5778dedfca0f016664c
-DIST MoarVM-2020.07.tar.gz 5329508 BLAKE2B a761234baf88bfb5d8bc87e621822cd4cc1c11c383d9a42785a33d6cc6aa2f039a7764923044c028677b75fd849fa785edb2b0b9bd4ba1bd5393dbe7269c6dc1 SHA512 7581dc0b028029f34fdb1035c1db75f9c13637f7ba5a0d85ca8478cc1844bb0f5852822a145df453b28037cb19972dc6112f32d9b443854952761223926f4042
-DIST MoarVM-2020.08.tar.gz 5333410 BLAKE2B 4590576148d26c96eda390c9b66966b10205616b1920d6a7e259fa055240a5627fceb00399942eee512278dfd23cec90c5a1e79ee3f94cdad89e526b83c2888f SHA512 610ac56df2cd0da7b284e967fb2f626fa10583f66ef06d8c4368048883bea0627b5029c56e64fd7281e6e70c3f63ac26dcfa463d2145be83433a8e76226fcb3b
-DIST MoarVM-2020.09.tar.gz 5361349 BLAKE2B 4846f7b44a238f6f2b40e829999c4939cb6cd6988ff11ae68dd2381db3144f2c7b7ec37dd71fa6749b4a0147e20224a801342e3ea8bf03dbd758012723468861 SHA512 3859e96e6861dc7bf3f64708db33bb9a761b7a7bc3a05655424d6c27010cf6f01e73066e26bff7256f58ed4044f9aee2f186c886a419c3d6aff23f75102f6c48
-DIST MoarVM-2020.10.tar.gz 5362845 BLAKE2B 1486fbbe5407aaf010a2b929458750989820e62d9baadcf66ae97df55c93914639bc988ffe30055fee0a0b0f88f73d9de8d253e138b6d594581160d976831280 SHA512 5251d564909313ca7a660d462370e899d415cbd0b493da189abde952d80992c3e04525b2d8ae5066c9c4ea2c99860e38f9a8beaee4ea0d53d9b32973104fa7d3
DIST MoarVM-2020.11.tar.gz 5402860 BLAKE2B f29ec4a8f4979fd65adb24cbfbbed586b69d47dd1176770e1e0e46a8bc35ef90146bae468fd6e088cd19201ba7e43d43d486d569970a81a695d6b642f57c2417 SHA512 c3ffe128db43316f93ad19f2804cd963cd2613dc46ffd29b099a165f122f6e7fdf28ce0b6c226a31f44abaeca72468f6774c39ceac3cea992596e8ce042ae7a5
DIST MoarVM-2020.12.tar.gz 5429137 BLAKE2B dbf9b0b29226dde10b27ddb9195678c86efc77eff16b57745d31dbcef316c8ba4f5233e2c3672b436d089ce59d4ed9acc908e483d081768946c088708caf5711 SHA512 2e95a3336f0b5687f525a5117daf6cd62da6c59fd6d96d508637a30ca5a0bc7a86a35bb21f09f29068e2ec940b859944838eec4c4a2412a3f3bf8320c3d9cfd5
DIST MoarVM-2021.02.tar.gz 5451480 BLAKE2B a714b135296c309812719b7fb14e2ea999820599a23796403e6512952edba327e4f685fb5f8ec8ea3b5ef2fc12c4303a6077a71a5bc325cdd287e27cc87e3e01 SHA512 23f54c0746aec4b4b35adcb07eb7f8cc81751d3552ef537ed29353d3ff9d46544c495475cb2c147bb80cb0917e79216e142ee5cf643fa4e76f72caadb3354f1c
-EBUILD moarvm-2020.05.ebuild 1437 BLAKE2B 52a063055a7d16b74cca5f750a8033c7199f15c6e8406c654814ee490019c067efe360c03131a4f218162ff0e52668f4e5597cbc14e7878546275c979246f6c8 SHA512 79c9cac9ecdcbfed88ea308263ac377044c71f1d89d9cfe28720f2bc95da9cc515e324ab7ae8954c93ab0e4c52c793924dea9354621419ba3ad642e3414fcd47
-EBUILD moarvm-2020.06.ebuild 1467 BLAKE2B c20140017696176cf63a887c76bbd511a693493aa0fcad043a4919871f5eac4ee67d686b8dae5bbdea08576f5d576118064f41cfa4aefca8b55d6121eef20e1f SHA512 db2302a7eee365b212c122eb3389f417d34fd68ef828c705e992cf7e38283fc61343d4fc70a69d9d6677e4047ac698c173d2d2ceb2def85de46389e04803ae93
-EBUILD moarvm-2020.07.ebuild 1467 BLAKE2B c20140017696176cf63a887c76bbd511a693493aa0fcad043a4919871f5eac4ee67d686b8dae5bbdea08576f5d576118064f41cfa4aefca8b55d6121eef20e1f SHA512 db2302a7eee365b212c122eb3389f417d34fd68ef828c705e992cf7e38283fc61343d4fc70a69d9d6677e4047ac698c173d2d2ceb2def85de46389e04803ae93
-EBUILD moarvm-2020.08.ebuild 1467 BLAKE2B c20140017696176cf63a887c76bbd511a693493aa0fcad043a4919871f5eac4ee67d686b8dae5bbdea08576f5d576118064f41cfa4aefca8b55d6121eef20e1f SHA512 db2302a7eee365b212c122eb3389f417d34fd68ef828c705e992cf7e38283fc61343d4fc70a69d9d6677e4047ac698c173d2d2ceb2def85de46389e04803ae93
-EBUILD moarvm-2020.09.ebuild 1467 BLAKE2B c20140017696176cf63a887c76bbd511a693493aa0fcad043a4919871f5eac4ee67d686b8dae5bbdea08576f5d576118064f41cfa4aefca8b55d6121eef20e1f SHA512 db2302a7eee365b212c122eb3389f417d34fd68ef828c705e992cf7e38283fc61343d4fc70a69d9d6677e4047ac698c173d2d2ceb2def85de46389e04803ae93
-EBUILD moarvm-2020.10.ebuild 1467 BLAKE2B c20140017696176cf63a887c76bbd511a693493aa0fcad043a4919871f5eac4ee67d686b8dae5bbdea08576f5d576118064f41cfa4aefca8b55d6121eef20e1f SHA512 db2302a7eee365b212c122eb3389f417d34fd68ef828c705e992cf7e38283fc61343d4fc70a69d9d6677e4047ac698c173d2d2ceb2def85de46389e04803ae93
EBUILD moarvm-2020.11.ebuild 1449 BLAKE2B c54c97f3c62bac54d140d3bd881cc616434fa88909dfa76f1168a22b9ea3acf346e06573cdb082e306bbc9b134b1ce82f3efbb760eedc91552f37cdbcbbc4fee SHA512 125e657028ada97b7e7cc5fcdcfec2a05450a494110aac1698fadd06465518423b5032f42f5a41692b3a8fb98964e3d8d225e1e6956fffb65937d6e637c670fb
EBUILD moarvm-2020.12.ebuild 1449 BLAKE2B c54c97f3c62bac54d140d3bd881cc616434fa88909dfa76f1168a22b9ea3acf346e06573cdb082e306bbc9b134b1ce82f3efbb760eedc91552f37cdbcbbc4fee SHA512 125e657028ada97b7e7cc5fcdcfec2a05450a494110aac1698fadd06465518423b5032f42f5a41692b3a8fb98964e3d8d225e1e6956fffb65937d6e637c670fb
EBUILD moarvm-2021.02.ebuild 1449 BLAKE2B c54c97f3c62bac54d140d3bd881cc616434fa88909dfa76f1168a22b9ea3acf346e06573cdb082e306bbc9b134b1ce82f3efbb760eedc91552f37cdbcbbc4fee SHA512 125e657028ada97b7e7cc5fcdcfec2a05450a494110aac1698fadd06465518423b5032f42f5a41692b3a8fb98964e3d8d225e1e6956fffb65937d6e637c670fb
diff --git a/dev-lang/moarvm/moarvm-2020.05.ebuild b/dev-lang/moarvm/moarvm-2020.05.ebuild
deleted file mode 100644
index 61213389a57a..000000000000
--- a/dev-lang/moarvm/moarvm-2020.05.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic
-
-MY_PN="MoarVM"
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
- inherit git-r3
- S="${WORKDIR}/${P}"
-else
- SRC_URI="http://moarvm.org/releases/${MY_PN}-${PV}.tar.gz"
- KEYWORDS="~amd64 ~x86"
- S="${WORKDIR}/${MY_PN}-${PV}"
-fi
-
-DESCRIPTION="A 6model-based VM for NQP and Rakudo Perl 6"
-HOMEPAGE="http://moarvm.org"
-LICENSE="Artistic-2"
-SLOT="0"
-
-#USE=optimize triggers makefile bug
-IUSE="asan clang debug doc +jit static-libs ubsan"
-
-RDEPEND="dev-libs/libatomic_ops
- >=dev-libs/libuv-1.26
- dev-lang/lua:0=
- dev-libs/libffi"
-DEPEND="${RDEPEND}
- clang? ( >=sys-devel/clang-3.1 )
- dev-lang/perl"
-
-DOCS=( CREDITS README.markdown )
-
-# Tests are conducted via nqp
-RESTRICT=test
-
-src_configure() {
- MAKEOPTS+=" NOISY=1"
- use doc && DOCS+=( docs/* )
- local prefix="${EPREFIX}/usr"
- local libdir="${EPREFIX}/usr/$(get_libdir)"
- einfo "--prefix '${prefix}'"
- einfo "--libdir '${libdir}'"
- local myconfigargs=(
- "--prefix" "${prefix}"
- "--has-libuv"
- "--has-libatomic_ops"
- "--has-libffi"
- "--libdir" "${libdir}"
- "--compiler" "$(usex clang clang gcc)"
- "$(usex asan --asan)"
- "$(usex debug --debug --no-debug)"
- "$(usex static-libs --static)"
- "$(usex ubsan --ubsan)"
- )
-
- perl Configure.pl "${myconfigargs[@]}" moarshared || die
-}
diff --git a/dev-lang/moarvm/moarvm-2020.06.ebuild b/dev-lang/moarvm/moarvm-2020.06.ebuild
deleted file mode 100644
index 5907a8078d0d..000000000000
--- a/dev-lang/moarvm/moarvm-2020.06.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-MY_PN="MoarVM"
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
- inherit git-r3
- S="${WORKDIR}/${P}"
-else
- SRC_URI="http://moarvm.org/releases/${MY_PN}-${PV}.tar.gz"
- KEYWORDS="~amd64 ~x86"
- S="${WORKDIR}/${MY_PN}-${PV}"
-fi
-
-DESCRIPTION="A 6model-based VM for NQP and Rakudo Perl 6"
-HOMEPAGE="http://moarvm.org"
-LICENSE="Artistic-2"
-SLOT="0"
-
-IUSE="asan clang debug doc +jit optimize static-libs ubsan"
-
-RDEPEND="dev-libs/libatomic_ops
- >=dev-libs/libuv-1.26
- dev-lang/lua:0=
- dev-libs/libffi"
-DEPEND="${RDEPEND}
- clang? ( >=sys-devel/clang-3.1 )
- dev-lang/perl"
-
-DOCS=( CREDITS README.markdown )
-
-# Tests are conducted via nqp
-RESTRICT=test
-
-src_configure() {
- MAKEOPTS+=" NOISY=1"
- use doc && DOCS+=( docs/* )
- local prefix="${EPREFIX}/usr"
- local libdir="${EPREFIX}/usr/$(get_libdir)"
- einfo "--prefix '${prefix}'"
- einfo "--libdir '${libdir}'"
- local myconfigargs=(
- "--prefix" "${prefix}"
- "--has-libuv"
- "--has-libatomic_ops"
- "--has-libffi"
- "--libdir" "${libdir}"
- "--compiler" "$(usex clang clang gcc)"
- "$(usex asan --asan)"
- "$(usex debug --debug --no-debug)"
- "$(usex optimize --optimize= --no-optimize)"
- "$(usex static-libs --static)"
- "$(usex ubsan --ubsan)"
- )
-
- perl Configure.pl "${myconfigargs[@]}" moarshared || die
-}
diff --git a/dev-lang/moarvm/moarvm-2020.07.ebuild b/dev-lang/moarvm/moarvm-2020.07.ebuild
deleted file mode 100644
index 5907a8078d0d..000000000000
--- a/dev-lang/moarvm/moarvm-2020.07.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-MY_PN="MoarVM"
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
- inherit git-r3
- S="${WORKDIR}/${P}"
-else
- SRC_URI="http://moarvm.org/releases/${MY_PN}-${PV}.tar.gz"
- KEYWORDS="~amd64 ~x86"
- S="${WORKDIR}/${MY_PN}-${PV}"
-fi
-
-DESCRIPTION="A 6model-based VM for NQP and Rakudo Perl 6"
-HOMEPAGE="http://moarvm.org"
-LICENSE="Artistic-2"
-SLOT="0"
-
-IUSE="asan clang debug doc +jit optimize static-libs ubsan"
-
-RDEPEND="dev-libs/libatomic_ops
- >=dev-libs/libuv-1.26
- dev-lang/lua:0=
- dev-libs/libffi"
-DEPEND="${RDEPEND}
- clang? ( >=sys-devel/clang-3.1 )
- dev-lang/perl"
-
-DOCS=( CREDITS README.markdown )
-
-# Tests are conducted via nqp
-RESTRICT=test
-
-src_configure() {
- MAKEOPTS+=" NOISY=1"
- use doc && DOCS+=( docs/* )
- local prefix="${EPREFIX}/usr"
- local libdir="${EPREFIX}/usr/$(get_libdir)"
- einfo "--prefix '${prefix}'"
- einfo "--libdir '${libdir}'"
- local myconfigargs=(
- "--prefix" "${prefix}"
- "--has-libuv"
- "--has-libatomic_ops"
- "--has-libffi"
- "--libdir" "${libdir}"
- "--compiler" "$(usex clang clang gcc)"
- "$(usex asan --asan)"
- "$(usex debug --debug --no-debug)"
- "$(usex optimize --optimize= --no-optimize)"
- "$(usex static-libs --static)"
- "$(usex ubsan --ubsan)"
- )
-
- perl Configure.pl "${myconfigargs[@]}" moarshared || die
-}
diff --git a/dev-lang/moarvm/moarvm-2020.08.ebuild b/dev-lang/moarvm/moarvm-2020.08.ebuild
deleted file mode 100644
index 5907a8078d0d..000000000000
--- a/dev-lang/moarvm/moarvm-2020.08.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-MY_PN="MoarVM"
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
- inherit git-r3
- S="${WORKDIR}/${P}"
-else
- SRC_URI="http://moarvm.org/releases/${MY_PN}-${PV}.tar.gz"
- KEYWORDS="~amd64 ~x86"
- S="${WORKDIR}/${MY_PN}-${PV}"
-fi
-
-DESCRIPTION="A 6model-based VM for NQP and Rakudo Perl 6"
-HOMEPAGE="http://moarvm.org"
-LICENSE="Artistic-2"
-SLOT="0"
-
-IUSE="asan clang debug doc +jit optimize static-libs ubsan"
-
-RDEPEND="dev-libs/libatomic_ops
- >=dev-libs/libuv-1.26
- dev-lang/lua:0=
- dev-libs/libffi"
-DEPEND="${RDEPEND}
- clang? ( >=sys-devel/clang-3.1 )
- dev-lang/perl"
-
-DOCS=( CREDITS README.markdown )
-
-# Tests are conducted via nqp
-RESTRICT=test
-
-src_configure() {
- MAKEOPTS+=" NOISY=1"
- use doc && DOCS+=( docs/* )
- local prefix="${EPREFIX}/usr"
- local libdir="${EPREFIX}/usr/$(get_libdir)"
- einfo "--prefix '${prefix}'"
- einfo "--libdir '${libdir}'"
- local myconfigargs=(
- "--prefix" "${prefix}"
- "--has-libuv"
- "--has-libatomic_ops"
- "--has-libffi"
- "--libdir" "${libdir}"
- "--compiler" "$(usex clang clang gcc)"
- "$(usex asan --asan)"
- "$(usex debug --debug --no-debug)"
- "$(usex optimize --optimize= --no-optimize)"
- "$(usex static-libs --static)"
- "$(usex ubsan --ubsan)"
- )
-
- perl Configure.pl "${myconfigargs[@]}" moarshared || die
-}
diff --git a/dev-lang/moarvm/moarvm-2020.09.ebuild b/dev-lang/moarvm/moarvm-2020.09.ebuild
deleted file mode 100644
index 5907a8078d0d..000000000000
--- a/dev-lang/moarvm/moarvm-2020.09.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-MY_PN="MoarVM"
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
- inherit git-r3
- S="${WORKDIR}/${P}"
-else
- SRC_URI="http://moarvm.org/releases/${MY_PN}-${PV}.tar.gz"
- KEYWORDS="~amd64 ~x86"
- S="${WORKDIR}/${MY_PN}-${PV}"
-fi
-
-DESCRIPTION="A 6model-based VM for NQP and Rakudo Perl 6"
-HOMEPAGE="http://moarvm.org"
-LICENSE="Artistic-2"
-SLOT="0"
-
-IUSE="asan clang debug doc +jit optimize static-libs ubsan"
-
-RDEPEND="dev-libs/libatomic_ops
- >=dev-libs/libuv-1.26
- dev-lang/lua:0=
- dev-libs/libffi"
-DEPEND="${RDEPEND}
- clang? ( >=sys-devel/clang-3.1 )
- dev-lang/perl"
-
-DOCS=( CREDITS README.markdown )
-
-# Tests are conducted via nqp
-RESTRICT=test
-
-src_configure() {
- MAKEOPTS+=" NOISY=1"
- use doc && DOCS+=( docs/* )
- local prefix="${EPREFIX}/usr"
- local libdir="${EPREFIX}/usr/$(get_libdir)"
- einfo "--prefix '${prefix}'"
- einfo "--libdir '${libdir}'"
- local myconfigargs=(
- "--prefix" "${prefix}"
- "--has-libuv"
- "--has-libatomic_ops"
- "--has-libffi"
- "--libdir" "${libdir}"
- "--compiler" "$(usex clang clang gcc)"
- "$(usex asan --asan)"
- "$(usex debug --debug --no-debug)"
- "$(usex optimize --optimize= --no-optimize)"
- "$(usex static-libs --static)"
- "$(usex ubsan --ubsan)"
- )
-
- perl Configure.pl "${myconfigargs[@]}" moarshared || die
-}
diff --git a/dev-lang/moarvm/moarvm-2020.10.ebuild b/dev-lang/moarvm/moarvm-2020.10.ebuild
deleted file mode 100644
index 5907a8078d0d..000000000000
--- a/dev-lang/moarvm/moarvm-2020.10.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-MY_PN="MoarVM"
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
- inherit git-r3
- S="${WORKDIR}/${P}"
-else
- SRC_URI="http://moarvm.org/releases/${MY_PN}-${PV}.tar.gz"
- KEYWORDS="~amd64 ~x86"
- S="${WORKDIR}/${MY_PN}-${PV}"
-fi
-
-DESCRIPTION="A 6model-based VM for NQP and Rakudo Perl 6"
-HOMEPAGE="http://moarvm.org"
-LICENSE="Artistic-2"
-SLOT="0"
-
-IUSE="asan clang debug doc +jit optimize static-libs ubsan"
-
-RDEPEND="dev-libs/libatomic_ops
- >=dev-libs/libuv-1.26
- dev-lang/lua:0=
- dev-libs/libffi"
-DEPEND="${RDEPEND}
- clang? ( >=sys-devel/clang-3.1 )
- dev-lang/perl"
-
-DOCS=( CREDITS README.markdown )
-
-# Tests are conducted via nqp
-RESTRICT=test
-
-src_configure() {
- MAKEOPTS+=" NOISY=1"
- use doc && DOCS+=( docs/* )
- local prefix="${EPREFIX}/usr"
- local libdir="${EPREFIX}/usr/$(get_libdir)"
- einfo "--prefix '${prefix}'"
- einfo "--libdir '${libdir}'"
- local myconfigargs=(
- "--prefix" "${prefix}"
- "--has-libuv"
- "--has-libatomic_ops"
- "--has-libffi"
- "--libdir" "${libdir}"
- "--compiler" "$(usex clang clang gcc)"
- "$(usex asan --asan)"
- "$(usex debug --debug --no-debug)"
- "$(usex optimize --optimize= --no-optimize)"
- "$(usex static-libs --static)"
- "$(usex ubsan --ubsan)"
- )
-
- perl Configure.pl "${myconfigargs[@]}" moarshared || die
-}
diff --git a/dev-lang/mujs/Manifest b/dev-lang/mujs/Manifest
index 447bd46a7fb9..5e5edcab984b 100644
--- a/dev-lang/mujs/Manifest
+++ b/dev-lang/mujs/Manifest
@@ -2,6 +2,6 @@ AUX mujs-1.0.5-flags.patch 839 BLAKE2B 843d1bf60167dfb91a5736ee936098c8f6b716f7a
AUX mujs-1.1.0-flags.patch 376 BLAKE2B 6bcfc39f97b35ae2230aa33ca99d4338915224a9b1ffbc39d747bb9e1ec566d36510cefc75906695c729ea2b44b2c118519ba25998aebb09dee51ad622bd1f3e SHA512 fc86b1422db6b3a934bf6e0da5c18a7a61fbf8c691c2dbf1355c0b7fc669d7f324af81d7e39c6042b0006ad294e4b21cb4c16bf77b3f1be18a07fc9037e09039
DIST mujs-1.0.9.tar.gz 123113 BLAKE2B c55deaf14508c412394bf5fe3a53ef581d4e4726024d65f2ba5155eb2400a6e2f043c9f6721b170d19297e2cd38c62c462f3b4e102eb4bfe6e7857b40156c18b SHA512 a3dbc8dbf5c16b7de9803954fe38ea9f77c0e5b7de3895966ec0877e063d463c9950499791ea0d102e464bd0426413689f3edb15e38db3f13915d72f27556725
DIST mujs-1.1.0.tar.gz 123450 BLAKE2B e7bc05d35566ff26346e713645e0f417a9acd1a73b5fb5c7f0c35bf940765fba1ab04199f4ed1dd6ce0e3bb2bf1547703335a1c125353da24de72f2b1adfb243 SHA512 10b61453f8483e3e67c95a742aa7868e255816b2ce25c84d8e24c5c737bad1f23ade67531c5c5bb914804be446da33c0cbe8e95a6d5889250dd8520ce56f23a0
-EBUILD mujs-1.0.9.ebuild 1366 BLAKE2B 1b15c2443c8e1129e37607d419a26fcefe8f878a72be1bb48ba75d397dce75fd40cc5f0c5fcc0b1a8455d4c670fcc8e991b6b5892a347d49e995b820fc31b63d SHA512 e521e558017aba8623eee10ea1992524423661fcb2adf1ac5f9a4449ba70c4091067e0c270c5bb2c8db44e12e69b023ebf987c9bccf4fb937bde9dd9f8f5b9e1
-EBUILD mujs-1.1.0.ebuild 1374 BLAKE2B 9ff2daf4c70862e967e0b1484a9d19bc381e51e18d8171079bb2cde612e558caa375cc9c61d68b0aee74a2464ac889901c175ffa397b250c8728970ff6484a3c SHA512 27a48528e47345ef57f54175a4d39e87f86616643e4c20787bc16e77afd874665b9207c628f46172e7e80ac53d86326702aa0a0847a809b752d47d39f39d4fa4
+EBUILD mujs-1.0.9.ebuild 1364 BLAKE2B e0682dcdbead4c69eace7aeae2ec28ffe16053b3a6c1cd1acd131f578e7eceee66a21b6c010d577d5a6348678fb1b26ef54259e839cb0ef522b2b223fc8aa044 SHA512 57fe108671f8c38bdf5a1383ffcffda90e4a9bea73e3088cd9b77167e776754edcf4a0eddcf52f3be9a1f59abcf2c4f60cd72f615172b2aadec5e4bcf6568fc5
+EBUILD mujs-1.1.0.ebuild 1365 BLAKE2B e1be97d705ead3695cf59b68f89d44e0ff5da225055371b0001fcba75d7079f48b72d67ceea81fd90e3bde0c62daafbe411725c5d20b6dde322e4172eb5a3b60 SHA512 65946b1e7be60e890a921a5cc0ff3e96c4c3b2bc311af6332ce94497874a685c98801c45cab30a849d3d00cb8ffcb8ba0c3c2d967f2d2fbb09e3235d77ee4ff2
MISC metadata.xml 547 BLAKE2B fcf818d9a103347b5b47f7b7c77654e84db6aa2a8dd12f169d58522cb47a455f02f0bf66fc85057a2a10916c4a24dcdca87a5f2e12c54d184ea8d5af1db65810 SHA512 e6bac32e74df77c2ded4e9a9e6200ab76e06217b9a236d6bf5f0df23a031eab2519f26e3d402ff106f9506a4dbe3baf66cae5f961f6d016e7c42fe83fc532799
diff --git a/dev-lang/mujs/mujs-1.0.9.ebuild b/dev-lang/mujs/mujs-1.0.9.ebuild
index 5d2b197be958..352f7eef3635 100644
--- a/dev-lang/mujs/mujs-1.0.9.ebuild
+++ b/dev-lang/mujs/mujs-1.0.9.ebuild
@@ -39,16 +39,15 @@ src_compile() {
}
src_install() {
- local myeconfargs=(
+ local myemakeargs=(
DESTDIR="${ED}"
- install-shared
libdir="/usr/$(get_libdir)"
prefix="/usr"
VERSION="${PV}"
$(usex static-libs install-static '')
)
- emake "${myeconfargs[@]}"
+ emake "${myemakeargs[@]}" install-shared
mv -v "${ED}"/usr/$(get_libdir)/lib${PN}.so{,.${PV}} || die
diff --git a/dev-lang/mujs/mujs-1.1.0.ebuild b/dev-lang/mujs/mujs-1.1.0.ebuild
index 6488566e188c..3d30abd6e9bf 100644
--- a/dev-lang/mujs/mujs-1.1.0.ebuild
+++ b/dev-lang/mujs/mujs-1.1.0.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://github.com/ccxvii/mujs/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="ISC"
# subslot matches SONAME
SLOT="0/${PV}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~ppc-macos ~x64-macos"
IUSE="static-libs"
RDEPEND="sys-libs/readline:0="
@@ -39,16 +39,15 @@ src_compile() {
}
src_install() {
- local myeconfargs=(
+ local myemakeargs=(
DESTDIR="${ED}"
- install-shared
libdir="/usr/$(get_libdir)"
prefix="/usr"
VERSION="${PV}"
$(usex static-libs install-static '')
)
- emake "${myeconfargs[@]}"
+ emake "${myemakeargs[@]}" install-shared
mv -v "${ED}"/usr/$(get_libdir)/lib${PN}.so{,.${PV}} || die
diff --git a/dev-lang/nqp/Manifest b/dev-lang/nqp/Manifest
index acc0422e76f8..6774f78a333a 100644
--- a/dev-lang/nqp/Manifest
+++ b/dev-lang/nqp/Manifest
@@ -1,18 +1,6 @@
-DIST nqp-2020.05.tar.gz 3945402 BLAKE2B d73bb5cf5dcd2f0e0d42928fb12382428355f3c19bbcd015950c2a9e49ab73c215ce8ce21f3686283866c387823f1cbb3ba8179de8f7a66dca43afae94a45a42 SHA512 a60e9bcf9ef8d4c0492cc193893d398d0c62a114e829375ac9a7601336bc2cc820b8f486b10f8b647302d473f3e85ebd13559d4089d38ef6c95b0b7e8778c5cd
-DIST nqp-2020.06.tar.gz 3945129 BLAKE2B 0cc378bd5be89bdc8e8b1a72ae64a8d93ccd189811540fc29a72105df1024790deab649349fdc96087f2ce8f3b57eef97e0edf56ee98d7ba3c329e6d47386c46 SHA512 f9a930f7bc9197a9e79ba5f2f72009b4d7ceafe8e3cd7902eb3f04ffb264228b1fba2a826a7ab686322e611557e624c8dbc271dc9eac067a9cc482fc0c6b9460
-DIST nqp-2020.07.tar.gz 3949070 BLAKE2B 194cd52dabe307dab41bec8508a28d00f05c043c16d2ba1beec4a9da63be0d26be3303cb95647ab4f028985ce8913b16f6724f79a395fdf3a6878a2953d33958 SHA512 70b8fa525abc5b6d0749b3e1f090ace60095517d78f9ec84425f12496e46454f89e8f5ea0cbdd77e5f891a6abaa894c9dbc7be955652dfde1cc8d034aec237d3
-DIST nqp-2020.08.tar.gz 3951313 BLAKE2B 0eda6b50268cd4faf49a7311e4d94d9846e223072a54d0ce5c4b2095abe47645924ce6a256edafd6301380ca99b8268a97551cbc6013210e9058713d5a8b1321 SHA512 6acc8d4b443b67a2731d30b4ed81c3ff654189dc51c463d7e4f30ca1a2ac4791b3393238b6370f8bc915278ecdb1bbc403427eb2292b41717ec7d01605a3de4b
-DIST nqp-2020.09.tar.gz 3951646 BLAKE2B 9ec1d121f9dc276ad52ea22d43fb24fefeda009f648b64f330669d7f9aaaef599522cca708b3671f982969cba0a1346cc078c55c98247545408b3a929899edd1 SHA512 dcebf63ea062c0fec95d701b1f20c492c845060599f4524fa87758ce5f8e52f6eae9a409c31b238783285f30a497acffd97242dc2ca7fbe4b8dd20291104b261
-DIST nqp-2020.10.tar.gz 3954398 BLAKE2B 5c44a20c3696bb596bd1d3088fba8db8c63ce6e612f00c2d24456dc7d908b12a214b4bde7e4e79505c39f6237a6f91578de47778185fa6cc3b6287c90e6c370e SHA512 279715fa0b2012852cc31b9e7898092510a1ba76005576a3ffe38f9dc8e9c002a4161be8f0b66e38c501e656a8124a320dbf2c90c89f53e57d0950e1baa1ea2b
DIST nqp-2020.11.tar.gz 3954688 BLAKE2B d273c78c8f2083908b2815dc10787fec31404eb13c1e64253e7e5ae896d27a3755cf5c8045d47c4f465178568731e0d74951db6e45d103cf3ee18470124e97e0 SHA512 51b5e7f9d290bca7ada24cf9c12c61608be92269fc848976cada49f7445694e0f26929b5f9e90a9153eb379f0d74a6bb8068cd5ebf383d4501f75535b70e7605
DIST nqp-2020.12.tar.gz 3957981 BLAKE2B d45ad66ebb0788db6e7191b4b7af4093b73e63e5f66ab4ccab62163b0285adb7d4e18a7c906c34f99dd63e0920f4d6e16e11005eb5df1d726796e9f106f9c4f8 SHA512 4ce87dc868c91565ebe896db766403bb018b2f5ea919bd0fb5b173498ba124712ffa795ec4e219240e5aabb59c55285bee5e46d3ac3d5869fc445b0ab3ea8485
DIST nqp-2021.02.tar.gz 3987077 BLAKE2B 3f67e33b948805a7c4dad1999e310d36da0cd8d4663b20ada5af6079c8ad2966c1f65e9f24c620f16480b7dea42a166f73fec61f3849e2cdd79b28ec017b0d7f SHA512 ff6cf66f4c1d9bccbd4cc5f52e49d380aaeef3fa060ced9e1da6c233e674fa90c08a5f1fa86e1a7beb5661d1271454934b520ba3e07e27cebaece343be84bdfe
-EBUILD nqp-2020.05.ebuild 3634 BLAKE2B 5d8351300dcfe9ead4467a1253f0cafc2ea23afcc3c2200711fd8acbee95048c08adc10ed44978c496b3d1e79071dc4755d7c005d1045bd871d068525b69c167 SHA512 d6c66b3e9d127586524e368560afc6ba49e5f8a48b3054ef8dcbacfe6fe7e81325269f3eeeb72e2237cbeaa203b85797d636944459e55378490ce98df2ca2fb8
-EBUILD nqp-2020.06.ebuild 3634 BLAKE2B 5d8351300dcfe9ead4467a1253f0cafc2ea23afcc3c2200711fd8acbee95048c08adc10ed44978c496b3d1e79071dc4755d7c005d1045bd871d068525b69c167 SHA512 d6c66b3e9d127586524e368560afc6ba49e5f8a48b3054ef8dcbacfe6fe7e81325269f3eeeb72e2237cbeaa203b85797d636944459e55378490ce98df2ca2fb8
-EBUILD nqp-2020.07.ebuild 3634 BLAKE2B 5d8351300dcfe9ead4467a1253f0cafc2ea23afcc3c2200711fd8acbee95048c08adc10ed44978c496b3d1e79071dc4755d7c005d1045bd871d068525b69c167 SHA512 d6c66b3e9d127586524e368560afc6ba49e5f8a48b3054ef8dcbacfe6fe7e81325269f3eeeb72e2237cbeaa203b85797d636944459e55378490ce98df2ca2fb8
-EBUILD nqp-2020.08.ebuild 3634 BLAKE2B 5d8351300dcfe9ead4467a1253f0cafc2ea23afcc3c2200711fd8acbee95048c08adc10ed44978c496b3d1e79071dc4755d7c005d1045bd871d068525b69c167 SHA512 d6c66b3e9d127586524e368560afc6ba49e5f8a48b3054ef8dcbacfe6fe7e81325269f3eeeb72e2237cbeaa203b85797d636944459e55378490ce98df2ca2fb8
-EBUILD nqp-2020.09.ebuild 3634 BLAKE2B 5d8351300dcfe9ead4467a1253f0cafc2ea23afcc3c2200711fd8acbee95048c08adc10ed44978c496b3d1e79071dc4755d7c005d1045bd871d068525b69c167 SHA512 d6c66b3e9d127586524e368560afc6ba49e5f8a48b3054ef8dcbacfe6fe7e81325269f3eeeb72e2237cbeaa203b85797d636944459e55378490ce98df2ca2fb8
-EBUILD nqp-2020.10.ebuild 3634 BLAKE2B 5d8351300dcfe9ead4467a1253f0cafc2ea23afcc3c2200711fd8acbee95048c08adc10ed44978c496b3d1e79071dc4755d7c005d1045bd871d068525b69c167 SHA512 d6c66b3e9d127586524e368560afc6ba49e5f8a48b3054ef8dcbacfe6fe7e81325269f3eeeb72e2237cbeaa203b85797d636944459e55378490ce98df2ca2fb8
EBUILD nqp-2020.11.ebuild 3634 BLAKE2B 5d8351300dcfe9ead4467a1253f0cafc2ea23afcc3c2200711fd8acbee95048c08adc10ed44978c496b3d1e79071dc4755d7c005d1045bd871d068525b69c167 SHA512 d6c66b3e9d127586524e368560afc6ba49e5f8a48b3054ef8dcbacfe6fe7e81325269f3eeeb72e2237cbeaa203b85797d636944459e55378490ce98df2ca2fb8
EBUILD nqp-2020.12.ebuild 3634 BLAKE2B 5d8351300dcfe9ead4467a1253f0cafc2ea23afcc3c2200711fd8acbee95048c08adc10ed44978c496b3d1e79071dc4755d7c005d1045bd871d068525b69c167 SHA512 d6c66b3e9d127586524e368560afc6ba49e5f8a48b3054ef8dcbacfe6fe7e81325269f3eeeb72e2237cbeaa203b85797d636944459e55378490ce98df2ca2fb8
EBUILD nqp-2021.02.ebuild 3634 BLAKE2B 5d8351300dcfe9ead4467a1253f0cafc2ea23afcc3c2200711fd8acbee95048c08adc10ed44978c496b3d1e79071dc4755d7c005d1045bd871d068525b69c167 SHA512 d6c66b3e9d127586524e368560afc6ba49e5f8a48b3054ef8dcbacfe6fe7e81325269f3eeeb72e2237cbeaa203b85797d636944459e55378490ce98df2ca2fb8
diff --git a/dev-lang/nqp/nqp-2020.05.ebuild b/dev-lang/nqp/nqp-2020.05.ebuild
deleted file mode 100644
index 81e93919b90b..000000000000
--- a/dev-lang/nqp/nqp-2020.05.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2 multibuild
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/perl6/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler"
-HOMEPAGE="https://rakudo.org"
-
-LICENSE="Artistic-2"
-SLOT="0"
-IUSE="doc clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="java? (
- dev-java/asm:4
- dev-java/jline:0
- dev-java/jna:4
- )
- moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.8 )"
-DEPEND="${CDEPEND}"
-BDEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.8 )
- dev-lang/perl"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo || has_version dev-lang/nqp; then
- ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP"
- ewarn "already being installed. So if it fails, try uninstalling both"
- ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-java_prepare() {
- # Don't clean stage0 jars.
- einfo "Cleaning upstream jars"
- java-pkg_clean 3rdparty/
-
- # Don't use jars we just deleted.
- sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \
- src/vm/jvm/runners/nqp-j || die
-}
-
-src_prepare() {
- MULTIBUILD_VARIANTS=()
- use moar && MULTIBUILD_VARIANTS+=( moar )
- use java && MULTIBUILD_VARIANTS+=( jvm )
-
- multibuild_copy_sources
-
- # This will pull in conditional java_prepare
- default
-}
-
-nqp_configure() {
- pushd "${BUILD_DIR}" > /dev/null || die
- local myconfargs=(
- "--backend=${MULTIBUILD_VARIANT}"
- "--prefix=${EPREFIX}/usr" )
-
- perl Configure.pl "${myconfargs[@]}" || die
- popd || die
-}
-
-nqp_compile() {
- if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then
- emake -j1 \
- -C "${BUILD_DIR}" \
- THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \
- JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
- elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then
- emake -j1 \
- -C "${BUILD_DIR}"
- fi
-}
-
-nqp_test() {
- emake -j1 \
- -C "${BUILD_DIR}" \
- test
-}
-
-nqp_install() {
- # This is the actual reason we need multibuild.eclass.
- # We need to distinguish the install procedure for MoarVM and JVM backends.
- case "${MULTIBUILD_VARIANT}" in
- moar)
- emake \
- DESTDIR="${ED}" \
- -C "${BUILD_DIR}" \
- install
- ;;
- jvm)
- pushd "${BUILD_DIR}" > /dev/null || die
- # Set JAVA_PKG_JARDEST early.
- java-pkg_init_paths_
-
- # Upstream sets the classpath to this location. Perhaps it's
- # used to locate the additional libraries?
- java-pkg_addcp "${JAVA_PKG_JARDEST}"
-
- insinto "${JAVA_PKG_JARDEST}"
- local jar
-
- for jar in *.jar; do
- if has ${jar} ${PN}.jar ${PN}-runtime.jar; then
- # jars for NQP itself.
- java-pkg_dojar ${jar}
- else
- # jars used by NQP.
- doins ${jar}
- fi
- done
-
- # Upstream uses -Xbootclasspath/a, which is faster due to lack
- # of verification, but gjl isn't flexible enough yet. :(
- java-pkg_dolauncher ${PN}-j --main ${PN}
- dosym ${PN}-j /usr/bin/${PN}
- dobin tools/jvm/eval-client.pl
- popd > /dev/null || die
- ;;
- *)
- die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}."
- ;;
- esac
-}
-
-src_configure() {
- multibuild_foreach_variant nqp_configure
-}
-
-src_compile() {
- multibuild_foreach_variant nqp_compile
-}
-
-src_test() {
- multibuild_foreach_variant nqp_test
-}
-
-src_install() {
- multibuild_foreach_variant nqp_install
-
- dodoc CREDITS README.pod
- use doc && dodoc -r docs/*
-}
diff --git a/dev-lang/nqp/nqp-2020.06.ebuild b/dev-lang/nqp/nqp-2020.06.ebuild
deleted file mode 100644
index 81e93919b90b..000000000000
--- a/dev-lang/nqp/nqp-2020.06.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2 multibuild
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/perl6/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler"
-HOMEPAGE="https://rakudo.org"
-
-LICENSE="Artistic-2"
-SLOT="0"
-IUSE="doc clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="java? (
- dev-java/asm:4
- dev-java/jline:0
- dev-java/jna:4
- )
- moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.8 )"
-DEPEND="${CDEPEND}"
-BDEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.8 )
- dev-lang/perl"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo || has_version dev-lang/nqp; then
- ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP"
- ewarn "already being installed. So if it fails, try uninstalling both"
- ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-java_prepare() {
- # Don't clean stage0 jars.
- einfo "Cleaning upstream jars"
- java-pkg_clean 3rdparty/
-
- # Don't use jars we just deleted.
- sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \
- src/vm/jvm/runners/nqp-j || die
-}
-
-src_prepare() {
- MULTIBUILD_VARIANTS=()
- use moar && MULTIBUILD_VARIANTS+=( moar )
- use java && MULTIBUILD_VARIANTS+=( jvm )
-
- multibuild_copy_sources
-
- # This will pull in conditional java_prepare
- default
-}
-
-nqp_configure() {
- pushd "${BUILD_DIR}" > /dev/null || die
- local myconfargs=(
- "--backend=${MULTIBUILD_VARIANT}"
- "--prefix=${EPREFIX}/usr" )
-
- perl Configure.pl "${myconfargs[@]}" || die
- popd || die
-}
-
-nqp_compile() {
- if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then
- emake -j1 \
- -C "${BUILD_DIR}" \
- THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \
- JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
- elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then
- emake -j1 \
- -C "${BUILD_DIR}"
- fi
-}
-
-nqp_test() {
- emake -j1 \
- -C "${BUILD_DIR}" \
- test
-}
-
-nqp_install() {
- # This is the actual reason we need multibuild.eclass.
- # We need to distinguish the install procedure for MoarVM and JVM backends.
- case "${MULTIBUILD_VARIANT}" in
- moar)
- emake \
- DESTDIR="${ED}" \
- -C "${BUILD_DIR}" \
- install
- ;;
- jvm)
- pushd "${BUILD_DIR}" > /dev/null || die
- # Set JAVA_PKG_JARDEST early.
- java-pkg_init_paths_
-
- # Upstream sets the classpath to this location. Perhaps it's
- # used to locate the additional libraries?
- java-pkg_addcp "${JAVA_PKG_JARDEST}"
-
- insinto "${JAVA_PKG_JARDEST}"
- local jar
-
- for jar in *.jar; do
- if has ${jar} ${PN}.jar ${PN}-runtime.jar; then
- # jars for NQP itself.
- java-pkg_dojar ${jar}
- else
- # jars used by NQP.
- doins ${jar}
- fi
- done
-
- # Upstream uses -Xbootclasspath/a, which is faster due to lack
- # of verification, but gjl isn't flexible enough yet. :(
- java-pkg_dolauncher ${PN}-j --main ${PN}
- dosym ${PN}-j /usr/bin/${PN}
- dobin tools/jvm/eval-client.pl
- popd > /dev/null || die
- ;;
- *)
- die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}."
- ;;
- esac
-}
-
-src_configure() {
- multibuild_foreach_variant nqp_configure
-}
-
-src_compile() {
- multibuild_foreach_variant nqp_compile
-}
-
-src_test() {
- multibuild_foreach_variant nqp_test
-}
-
-src_install() {
- multibuild_foreach_variant nqp_install
-
- dodoc CREDITS README.pod
- use doc && dodoc -r docs/*
-}
diff --git a/dev-lang/nqp/nqp-2020.07.ebuild b/dev-lang/nqp/nqp-2020.07.ebuild
deleted file mode 100644
index 81e93919b90b..000000000000
--- a/dev-lang/nqp/nqp-2020.07.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2 multibuild
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/perl6/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler"
-HOMEPAGE="https://rakudo.org"
-
-LICENSE="Artistic-2"
-SLOT="0"
-IUSE="doc clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="java? (
- dev-java/asm:4
- dev-java/jline:0
- dev-java/jna:4
- )
- moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.8 )"
-DEPEND="${CDEPEND}"
-BDEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.8 )
- dev-lang/perl"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo || has_version dev-lang/nqp; then
- ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP"
- ewarn "already being installed. So if it fails, try uninstalling both"
- ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-java_prepare() {
- # Don't clean stage0 jars.
- einfo "Cleaning upstream jars"
- java-pkg_clean 3rdparty/
-
- # Don't use jars we just deleted.
- sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \
- src/vm/jvm/runners/nqp-j || die
-}
-
-src_prepare() {
- MULTIBUILD_VARIANTS=()
- use moar && MULTIBUILD_VARIANTS+=( moar )
- use java && MULTIBUILD_VARIANTS+=( jvm )
-
- multibuild_copy_sources
-
- # This will pull in conditional java_prepare
- default
-}
-
-nqp_configure() {
- pushd "${BUILD_DIR}" > /dev/null || die
- local myconfargs=(
- "--backend=${MULTIBUILD_VARIANT}"
- "--prefix=${EPREFIX}/usr" )
-
- perl Configure.pl "${myconfargs[@]}" || die
- popd || die
-}
-
-nqp_compile() {
- if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then
- emake -j1 \
- -C "${BUILD_DIR}" \
- THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \
- JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
- elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then
- emake -j1 \
- -C "${BUILD_DIR}"
- fi
-}
-
-nqp_test() {
- emake -j1 \
- -C "${BUILD_DIR}" \
- test
-}
-
-nqp_install() {
- # This is the actual reason we need multibuild.eclass.
- # We need to distinguish the install procedure for MoarVM and JVM backends.
- case "${MULTIBUILD_VARIANT}" in
- moar)
- emake \
- DESTDIR="${ED}" \
- -C "${BUILD_DIR}" \
- install
- ;;
- jvm)
- pushd "${BUILD_DIR}" > /dev/null || die
- # Set JAVA_PKG_JARDEST early.
- java-pkg_init_paths_
-
- # Upstream sets the classpath to this location. Perhaps it's
- # used to locate the additional libraries?
- java-pkg_addcp "${JAVA_PKG_JARDEST}"
-
- insinto "${JAVA_PKG_JARDEST}"
- local jar
-
- for jar in *.jar; do
- if has ${jar} ${PN}.jar ${PN}-runtime.jar; then
- # jars for NQP itself.
- java-pkg_dojar ${jar}
- else
- # jars used by NQP.
- doins ${jar}
- fi
- done
-
- # Upstream uses -Xbootclasspath/a, which is faster due to lack
- # of verification, but gjl isn't flexible enough yet. :(
- java-pkg_dolauncher ${PN}-j --main ${PN}
- dosym ${PN}-j /usr/bin/${PN}
- dobin tools/jvm/eval-client.pl
- popd > /dev/null || die
- ;;
- *)
- die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}."
- ;;
- esac
-}
-
-src_configure() {
- multibuild_foreach_variant nqp_configure
-}
-
-src_compile() {
- multibuild_foreach_variant nqp_compile
-}
-
-src_test() {
- multibuild_foreach_variant nqp_test
-}
-
-src_install() {
- multibuild_foreach_variant nqp_install
-
- dodoc CREDITS README.pod
- use doc && dodoc -r docs/*
-}
diff --git a/dev-lang/nqp/nqp-2020.08.ebuild b/dev-lang/nqp/nqp-2020.08.ebuild
deleted file mode 100644
index 81e93919b90b..000000000000
--- a/dev-lang/nqp/nqp-2020.08.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2 multibuild
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/perl6/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler"
-HOMEPAGE="https://rakudo.org"
-
-LICENSE="Artistic-2"
-SLOT="0"
-IUSE="doc clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="java? (
- dev-java/asm:4
- dev-java/jline:0
- dev-java/jna:4
- )
- moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.8 )"
-DEPEND="${CDEPEND}"
-BDEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.8 )
- dev-lang/perl"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo || has_version dev-lang/nqp; then
- ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP"
- ewarn "already being installed. So if it fails, try uninstalling both"
- ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-java_prepare() {
- # Don't clean stage0 jars.
- einfo "Cleaning upstream jars"
- java-pkg_clean 3rdparty/
-
- # Don't use jars we just deleted.
- sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \
- src/vm/jvm/runners/nqp-j || die
-}
-
-src_prepare() {
- MULTIBUILD_VARIANTS=()
- use moar && MULTIBUILD_VARIANTS+=( moar )
- use java && MULTIBUILD_VARIANTS+=( jvm )
-
- multibuild_copy_sources
-
- # This will pull in conditional java_prepare
- default
-}
-
-nqp_configure() {
- pushd "${BUILD_DIR}" > /dev/null || die
- local myconfargs=(
- "--backend=${MULTIBUILD_VARIANT}"
- "--prefix=${EPREFIX}/usr" )
-
- perl Configure.pl "${myconfargs[@]}" || die
- popd || die
-}
-
-nqp_compile() {
- if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then
- emake -j1 \
- -C "${BUILD_DIR}" \
- THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \
- JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
- elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then
- emake -j1 \
- -C "${BUILD_DIR}"
- fi
-}
-
-nqp_test() {
- emake -j1 \
- -C "${BUILD_DIR}" \
- test
-}
-
-nqp_install() {
- # This is the actual reason we need multibuild.eclass.
- # We need to distinguish the install procedure for MoarVM and JVM backends.
- case "${MULTIBUILD_VARIANT}" in
- moar)
- emake \
- DESTDIR="${ED}" \
- -C "${BUILD_DIR}" \
- install
- ;;
- jvm)
- pushd "${BUILD_DIR}" > /dev/null || die
- # Set JAVA_PKG_JARDEST early.
- java-pkg_init_paths_
-
- # Upstream sets the classpath to this location. Perhaps it's
- # used to locate the additional libraries?
- java-pkg_addcp "${JAVA_PKG_JARDEST}"
-
- insinto "${JAVA_PKG_JARDEST}"
- local jar
-
- for jar in *.jar; do
- if has ${jar} ${PN}.jar ${PN}-runtime.jar; then
- # jars for NQP itself.
- java-pkg_dojar ${jar}
- else
- # jars used by NQP.
- doins ${jar}
- fi
- done
-
- # Upstream uses -Xbootclasspath/a, which is faster due to lack
- # of verification, but gjl isn't flexible enough yet. :(
- java-pkg_dolauncher ${PN}-j --main ${PN}
- dosym ${PN}-j /usr/bin/${PN}
- dobin tools/jvm/eval-client.pl
- popd > /dev/null || die
- ;;
- *)
- die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}."
- ;;
- esac
-}
-
-src_configure() {
- multibuild_foreach_variant nqp_configure
-}
-
-src_compile() {
- multibuild_foreach_variant nqp_compile
-}
-
-src_test() {
- multibuild_foreach_variant nqp_test
-}
-
-src_install() {
- multibuild_foreach_variant nqp_install
-
- dodoc CREDITS README.pod
- use doc && dodoc -r docs/*
-}
diff --git a/dev-lang/nqp/nqp-2020.09.ebuild b/dev-lang/nqp/nqp-2020.09.ebuild
deleted file mode 100644
index 81e93919b90b..000000000000
--- a/dev-lang/nqp/nqp-2020.09.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2 multibuild
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/perl6/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler"
-HOMEPAGE="https://rakudo.org"
-
-LICENSE="Artistic-2"
-SLOT="0"
-IUSE="doc clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="java? (
- dev-java/asm:4
- dev-java/jline:0
- dev-java/jna:4
- )
- moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.8 )"
-DEPEND="${CDEPEND}"
-BDEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.8 )
- dev-lang/perl"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo || has_version dev-lang/nqp; then
- ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP"
- ewarn "already being installed. So if it fails, try uninstalling both"
- ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-java_prepare() {
- # Don't clean stage0 jars.
- einfo "Cleaning upstream jars"
- java-pkg_clean 3rdparty/
-
- # Don't use jars we just deleted.
- sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \
- src/vm/jvm/runners/nqp-j || die
-}
-
-src_prepare() {
- MULTIBUILD_VARIANTS=()
- use moar && MULTIBUILD_VARIANTS+=( moar )
- use java && MULTIBUILD_VARIANTS+=( jvm )
-
- multibuild_copy_sources
-
- # This will pull in conditional java_prepare
- default
-}
-
-nqp_configure() {
- pushd "${BUILD_DIR}" > /dev/null || die
- local myconfargs=(
- "--backend=${MULTIBUILD_VARIANT}"
- "--prefix=${EPREFIX}/usr" )
-
- perl Configure.pl "${myconfargs[@]}" || die
- popd || die
-}
-
-nqp_compile() {
- if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then
- emake -j1 \
- -C "${BUILD_DIR}" \
- THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \
- JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
- elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then
- emake -j1 \
- -C "${BUILD_DIR}"
- fi
-}
-
-nqp_test() {
- emake -j1 \
- -C "${BUILD_DIR}" \
- test
-}
-
-nqp_install() {
- # This is the actual reason we need multibuild.eclass.
- # We need to distinguish the install procedure for MoarVM and JVM backends.
- case "${MULTIBUILD_VARIANT}" in
- moar)
- emake \
- DESTDIR="${ED}" \
- -C "${BUILD_DIR}" \
- install
- ;;
- jvm)
- pushd "${BUILD_DIR}" > /dev/null || die
- # Set JAVA_PKG_JARDEST early.
- java-pkg_init_paths_
-
- # Upstream sets the classpath to this location. Perhaps it's
- # used to locate the additional libraries?
- java-pkg_addcp "${JAVA_PKG_JARDEST}"
-
- insinto "${JAVA_PKG_JARDEST}"
- local jar
-
- for jar in *.jar; do
- if has ${jar} ${PN}.jar ${PN}-runtime.jar; then
- # jars for NQP itself.
- java-pkg_dojar ${jar}
- else
- # jars used by NQP.
- doins ${jar}
- fi
- done
-
- # Upstream uses -Xbootclasspath/a, which is faster due to lack
- # of verification, but gjl isn't flexible enough yet. :(
- java-pkg_dolauncher ${PN}-j --main ${PN}
- dosym ${PN}-j /usr/bin/${PN}
- dobin tools/jvm/eval-client.pl
- popd > /dev/null || die
- ;;
- *)
- die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}."
- ;;
- esac
-}
-
-src_configure() {
- multibuild_foreach_variant nqp_configure
-}
-
-src_compile() {
- multibuild_foreach_variant nqp_compile
-}
-
-src_test() {
- multibuild_foreach_variant nqp_test
-}
-
-src_install() {
- multibuild_foreach_variant nqp_install
-
- dodoc CREDITS README.pod
- use doc && dodoc -r docs/*
-}
diff --git a/dev-lang/nqp/nqp-2020.10.ebuild b/dev-lang/nqp/nqp-2020.10.ebuild
deleted file mode 100644
index 81e93919b90b..000000000000
--- a/dev-lang/nqp/nqp-2020.10.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2 multibuild
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/perl6/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="Not Quite Perl, a Perl 6 bootstrapping compiler"
-HOMEPAGE="https://rakudo.org"
-
-LICENSE="Artistic-2"
-SLOT="0"
-IUSE="doc clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="java? (
- dev-java/asm:4
- dev-java/jline:0
- dev-java/jna:4
- )
- moar? ( ~dev-lang/moarvm-${PV}[clang=] )"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.8 )"
-DEPEND="${CDEPEND}"
-BDEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.8 )
- dev-lang/perl"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo || has_version dev-lang/nqp; then
- ewarn "NQP is known to fail compilation/installation with Rakudo and/or NQP"
- ewarn "already being installed. So if it fails, try uninstalling both"
- ewarn "dev-lang/nqp and dev-lang/rakudo, then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-java_prepare() {
- # Don't clean stage0 jars.
- einfo "Cleaning upstream jars"
- java-pkg_clean 3rdparty/
-
- # Don't use jars we just deleted.
- sed -i -r 's/(:3rdparty[^:]*)+/:${THIRDPARTY_JARS}/g' \
- src/vm/jvm/runners/nqp-j || die
-}
-
-src_prepare() {
- MULTIBUILD_VARIANTS=()
- use moar && MULTIBUILD_VARIANTS+=( moar )
- use java && MULTIBUILD_VARIANTS+=( jvm )
-
- multibuild_copy_sources
-
- # This will pull in conditional java_prepare
- default
-}
-
-nqp_configure() {
- pushd "${BUILD_DIR}" > /dev/null || die
- local myconfargs=(
- "--backend=${MULTIBUILD_VARIANT}"
- "--prefix=${EPREFIX}/usr" )
-
- perl Configure.pl "${myconfargs[@]}" || die
- popd || die
-}
-
-nqp_compile() {
- if [[ "${MULTIBUILD_VARIANT}" = jvm ]]; then
- emake -j1 \
- -C "${BUILD_DIR}" \
- THIRDPARTY_JARS=$(java-pkg_getjars --with-dependencies asm-4,jline,jna-4) \
- JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
- elif [[ "${MULTIBUILD_VARIANT}" = moar ]]; then
- emake -j1 \
- -C "${BUILD_DIR}"
- fi
-}
-
-nqp_test() {
- emake -j1 \
- -C "${BUILD_DIR}" \
- test
-}
-
-nqp_install() {
- # This is the actual reason we need multibuild.eclass.
- # We need to distinguish the install procedure for MoarVM and JVM backends.
- case "${MULTIBUILD_VARIANT}" in
- moar)
- emake \
- DESTDIR="${ED}" \
- -C "${BUILD_DIR}" \
- install
- ;;
- jvm)
- pushd "${BUILD_DIR}" > /dev/null || die
- # Set JAVA_PKG_JARDEST early.
- java-pkg_init_paths_
-
- # Upstream sets the classpath to this location. Perhaps it's
- # used to locate the additional libraries?
- java-pkg_addcp "${JAVA_PKG_JARDEST}"
-
- insinto "${JAVA_PKG_JARDEST}"
- local jar
-
- for jar in *.jar; do
- if has ${jar} ${PN}.jar ${PN}-runtime.jar; then
- # jars for NQP itself.
- java-pkg_dojar ${jar}
- else
- # jars used by NQP.
- doins ${jar}
- fi
- done
-
- # Upstream uses -Xbootclasspath/a, which is faster due to lack
- # of verification, but gjl isn't flexible enough yet. :(
- java-pkg_dolauncher ${PN}-j --main ${PN}
- dosym ${PN}-j /usr/bin/${PN}
- dobin tools/jvm/eval-client.pl
- popd > /dev/null || die
- ;;
- *)
- die "Unknown MULTIBUILD_VARIANT ${MULTIBUILD_VARIANT}."
- ;;
- esac
-}
-
-src_configure() {
- multibuild_foreach_variant nqp_configure
-}
-
-src_compile() {
- multibuild_foreach_variant nqp_compile
-}
-
-src_test() {
- multibuild_foreach_variant nqp_test
-}
-
-src_install() {
- multibuild_foreach_variant nqp_install
-
- dodoc CREDITS README.pod
- use doc && dodoc -r docs/*
-}
diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest
index 4c561b726a18..83f7cde5e85c 100644
--- a/dev-lang/php/Manifest
+++ b/dev-lang/php/Manifest
@@ -3,17 +3,14 @@ AUX php-fpm_at-simple.service 316 BLAKE2B 0ba10f3e3b004fbf14956e1e4f04f59b8a127e
AUX php-fpm_at.service 317 BLAKE2B f13fc38fcc0575a8517ee8d07b120efda37eabd2355061d0fdc303604c6b02ad42d7301180d86c977d5e585f5dd685343c592e37a6e0f44933707be79e0b77e0 SHA512 27982f9e2d958bfa75c89c7d3531e48d17fc388b1cdcbc8e09051b236b1184ee2baabdfcc567c19d9fcd067d4b3b86f171015616d8da42fccdabd89432d865e8
AUX php-freetype-2.9.1.patch 7667 BLAKE2B efc8f829bbad11b3e7b654d0882213ecb9aae766060d51f93446a6293a2f607339faba484c7b0b2f9318a5c5442da3c09e25aeda20dbc5e3258bf1009f8625b4 SHA512 0a06189f6fb3513cd2dcf9ddb590360475e2dd9a7aa8b13ab66c389c1ed40ce2361681f017cd3c6219f5b40a0a9d4978e57ca3ee4bacb7657db3285136fd2875
AUX php-iodbc-header-location.patch 481 BLAKE2B 9ea6a5d529dc7a8c78eeee800900372bc14309a05e352b2838da32e1384b61b507fdb623c9400094aa5b637eb1a87da92c72600eff79b18b8989ef90af56a0fa SHA512 86469f657d8807f005c28fd2149770c881add8f243fdfea087956c7987277597fe400a7af23f624f26da270356604717ed9cd04771154d7cf2ffe7237972372b
+AUX php80-firebird-warnings.patch 1949 BLAKE2B ab1b693afe26b6529aab8628f9a614478c388ed23603ad1dd4d17b63154d535a3e4c2db04fe27fb22a3d7e1335e368ffd383ed24647ac53ac05170ec3e1beb75 SHA512 d37815ea529167d4959aef056a3a0be6902ee4cda809a48c24299b05ff6477ee82e8ed8dcf49051b8e74ba5c31e3985454591ea751d4550df3d2e3639ec0d616
DIST php-7.3.27.tar.xz 12137924 BLAKE2B f4648fdc2b8903ce1b68221eeb49e7764c5446a3d0d0d93e9cd2d8b4cb08e57229261f6fac4ebf35127e94afd5f157ec8f27659ce463e281784c755a3759481e SHA512 a5c186663d656b473f6165b433077057972b1454013ca0f99831be61bd7b7f1c841b8dae69951fa371f678ea3f0e5410518427ee08cb20611bfc00f263d4d47a
DIST php-7.4.15.tar.xz 10332360 BLAKE2B 3217378a2fa9e3cd030f585696ac48c50bf4f2509401276783ceb3c757155fb4a06dde8fbb93588e96b16f1f8bbcb32337f58a31c2c0c2009d3659136453c4e1 SHA512 51a815852c08518d6706fc719e3bafd214889580cc5ca0e5049ae7e8f6173e83b9486bc9a69afd1ea4ab1778bb2879bd917595cd04cbcc50b182a10230f08175
DIST php-7.4.16.tar.xz 10334672 BLAKE2B 685717509115e9607fb8ff4ae439bd3b70e5c1f2a11ab83f4944be74cb1502868b9e3aceb6898288ae6e5cdd50c8dba294c03618eaa7accd10c0b425069ef0cb SHA512 a7845fe0a7c334829bfa9518d3f2947036e1b03c8f4346622f9ab37563ff3af03f6559878b83aa0e6ad69e9919b6478345a0cc6ec59161ef36c64a5073e83f84
-DIST php-8.0.2.tar.xz 10650500 BLAKE2B cd087768e007e042f172d59b4c9f323b9ce98207c1a4d740a75f569e16eaaf4f1ac18ccc3fdaedde38c142435498a7fdb503a53e1c119d1b046c59ee403ef606 SHA512 a61056f07e55360fa0219a8fbe73bf559eef64bb854f968cf3d139c9375c399969dea6383a0da276539fbb70d6eaa93d26983f1696cc341aca7ca0fff25c1f08
DIST php-8.0.3.tar.xz 10755796 BLAKE2B 5dd6afe985b4f5e33f456f05edda0207d8dfffbdc35d0b2290e1bd30a93bcfd94d6ef23e7d2c8d77b774a7ff95f49832687c75593d7ab38704b60ba3d9331598 SHA512 9b3631fea5280ed11c14a3ef1badb3da5b8ab19f29faa6b828ab033008ebebc487013d74d401d10b9cf21f354cd81100ba83562f3f080e23220ad38c02fb5a0d
EBUILD php-7.3.27-r1.ebuild 22744 BLAKE2B 39fbd1e495a4e762a84c93ced0a2913c8b86e854696334b981519c9f1d6ee980fcc6b44d34b34aa1b08d9d1ab2ea82361499592904bc7b8a8176522a55e675fc SHA512 7e8e761f5bc4a4d382c02f32e08d2b68f045e8cc2743c3585229bbb9848f92de240e309646b9ca04ecb46ba37513cfd713cdf1784d6644398d75b4da58976179
EBUILD php-7.3.27.ebuild 22759 BLAKE2B bfb0104269b9e643ba32476c0550eddd783691c14ddbd89df066425ffe234b145d06c1ee52a5cc1a9f4ab3cf4f827eaea308d21c8ad8d9d08482af7dcee6066b SHA512 b764f5506307c814e4b29c715efea17256622f8051417d70cbe71060f449d2476e915d2763fad1cef5dcce55213c305e773967a092de50db8ea7fac7f6dee840
-EBUILD php-7.4.15-r1.ebuild 21453 BLAKE2B 629dc0a0602ae451d269a9b05ab26e3186697aaee45a9bf272fe24ad9f4b73351bba4551fc857deee8356ec6a41be0104fbf202ea2080906a4e3ed5a77e5d056 SHA512 c387c6a9980f58737fa74d7af882682176e13fc6a9c5c6876c12b72a0078e5ada67662e43a0616318cd4038ba51ffaf6a44cfd8a4b8407375d6e27f569230859
EBUILD php-7.4.15.ebuild 21468 BLAKE2B a43b557f0f058e3962ec3dd3e4246accc12ff5e7799991584388220e57c120066f22065a110fe6d08830175daf153627567f15b3be7174aeef5afb86a05f199b SHA512 4510aa73586001ffc08a0c69565ae2a8ac3b0213454fb3d2a3e9bf4fd06aed2eb5a65cac7eb29eeb4af491997ad4847fb0775f038f1fe56302065d0611d70b35
EBUILD php-7.4.16.ebuild 21453 BLAKE2B 629dc0a0602ae451d269a9b05ab26e3186697aaee45a9bf272fe24ad9f4b73351bba4551fc857deee8356ec6a41be0104fbf202ea2080906a4e3ed5a77e5d056 SHA512 c387c6a9980f58737fa74d7af882682176e13fc6a9c5c6876c12b72a0078e5ada67662e43a0616318cd4038ba51ffaf6a44cfd8a4b8407375d6e27f569230859
-EBUILD php-8.0.2-r1.ebuild 21346 BLAKE2B 9ae81367fa95b5df8b4cd5f76bbe49679d7c6ef895f765daad692659a73d5b0eb1dbbf155d30c5c6b9a5ad34b246c5785348b29c9588bf2b72e8aaf299b060ee SHA512 6cb977fc9a557d4dbd673fadaf3d17c5593e4865a65a7ea4dead66b16139c604975e1e6c36b9366a4282f240ca277d57249576e804d6322556cea855f03b2f30
-EBUILD php-8.0.2.ebuild 21368 BLAKE2B ff1fb57ee7b522ae9003852fd238cffed128acb87db481abac775c55d8859c4943f7d6ab078eccca90a682df78c713e474f8a86595a797d4d0d98a78769aca28 SHA512 e15c099844c196ac30d926dfba56233d9f998764c2e65c358448703d90fdeeee61424b879fe1d6895afd82c43733c188c9c854529cf6cf7513132a362cbff3ee
-EBUILD php-8.0.3.ebuild 21346 BLAKE2B 9ae81367fa95b5df8b4cd5f76bbe49679d7c6ef895f765daad692659a73d5b0eb1dbbf155d30c5c6b9a5ad34b246c5785348b29c9588bf2b72e8aaf299b060ee SHA512 6cb977fc9a557d4dbd673fadaf3d17c5593e4865a65a7ea4dead66b16139c604975e1e6c36b9366a4282f240ca277d57249576e804d6322556cea855f03b2f30
+EBUILD php-8.0.3.ebuild 21392 BLAKE2B dba30b32e5a574198eab90a8a52e64c02a7983da5219be20a6a27ef1c631d058506f5b08f9c36d8b5c75f273f0900ceb3956ba747d90789a5d4f7c27abe3db27 SHA512 9597474ff15ffed8ccab0828d1df68820582c6100b6227981126cde2acd12728f6bc1ea4f2ac1258ae88b1ca54678121a37b7dd802348507772c0d99602197a7
MISC metadata.xml 3268 BLAKE2B 4abc96d858186ab5bc6f0797fb3f1cf7f5aaa0b07a4652dcc16aa65e197bd73803f6bac717084c0c9a194e7da5b6632523105205011a0d39221aabc16ade8e2e SHA512 1413edb5293cb93ad8f94376f11b9952ca6369b667ae23baed56d9cbaa68cb9cfa5a80da7dd7184ba84f08d5a4054068da1c10daca81d1730e7b6edebba8b29f
diff --git a/dev-lang/php/files/php80-firebird-warnings.patch b/dev-lang/php/files/php80-firebird-warnings.patch
new file mode 100644
index 000000000000..48e38c2135f8
--- /dev/null
+++ b/dev-lang/php/files/php80-firebird-warnings.patch
@@ -0,0 +1,56 @@
+From c288b5294bb0e13ad2904a3ec79265f727baaea3 Mon Sep 17 00:00:00 2001
+From: Nikita Popov <nikita.ppv@gmail.com>
+Date: Mon, 14 Dec 2020 10:36:36 +0100
+Subject: [PATCH] Fix compile warnings in PDO Firebird
+
+---
+ ext/pdo_firebird/firebird_driver.c | 9 +++++----
+ ext/pdo_firebird/php_pdo_firebird_int.h | 3 +--
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/ext/pdo_firebird/firebird_driver.c b/ext/pdo_firebird/firebird_driver.c
+index c299907f0fea1..390871cc200c8 100644
+--- a/ext/pdo_firebird/firebird_driver.c
++++ b/ext/pdo_firebird/firebird_driver.c
+@@ -171,10 +171,11 @@ static const char classes_array[] = {
+ /* 127 */ 0
+ };
+
+-inline char classes(char idx)
++static inline char classes(char idx)
+ {
+- if (idx > 127) return 0;
+- return classes_array[idx];
++ unsigned char uidx = (unsigned char) idx;
++ if (uidx > 127) return 0;
++ return classes_array[uidx];
+ }
+
+ typedef enum {
+@@ -1085,7 +1086,7 @@ static int pdo_firebird_handle_factory(pdo_dbh_t *dbh, zval *driver_options) /*
+ char errmsg[512];
+ const ISC_STATUS *s = H->isc_status;
+ fb_interpret(errmsg, sizeof(errmsg),&s);
+- zend_throw_exception_ex(php_pdo_get_exception(), H->isc_status[1], "SQLSTATE[%s] [%d] %s",
++ zend_throw_exception_ex(php_pdo_get_exception(), H->isc_status[1], "SQLSTATE[%s] [%ld] %s",
+ "HY000", H->isc_status[1], errmsg);
+ }
+
+diff --git a/ext/pdo_firebird/php_pdo_firebird_int.h b/ext/pdo_firebird/php_pdo_firebird_int.h
+index 094767fa355d3..70a895b4b9f83 100644
+--- a/ext/pdo_firebird/php_pdo_firebird_int.h
++++ b/ext/pdo_firebird/php_pdo_firebird_int.h
+@@ -34,12 +34,11 @@
+ #define SHORT_MAX (1 << (8*sizeof(short)-1))
+
+ #if SIZEOF_ZEND_LONG == 8 && !defined(PHP_WIN32)
+-# define LL_MASK "l"
+ # define LL_LIT(lit) lit ## L
+ #else
+-# define LL_MASK "ll"
+ # define LL_LIT(lit) lit ## LL
+ #endif
++#define LL_MASK "ll"
+
+ /* Firebird API has a couple of missing const decls in its API */
+ #define const_cast(s) ((char*)(s))
diff --git a/dev-lang/php/php-7.4.15-r1.ebuild b/dev-lang/php/php-7.4.15-r1.ebuild
deleted file mode 100644
index 592c09770ef7..000000000000
--- a/dev-lang/php/php-7.4.15-r1.ebuild
+++ /dev/null
@@ -1,753 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-WANT_AUTOMAKE="none"
-
-inherit flag-o-matic systemd autotools
-
-MY_PV=${PV/_rc/RC}
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://www.php.net/"
-SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- gd? ( gd )
- 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"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
- coverage +ctype curl debug
- enchant exif ffi +fileinfo +filter firebird
- +flatfile ftp gd gdbm gmp +iconv imap inifile
- intl iodbc ipv6 +jit +json kerberos ldap ldap-sasl libedit libressl lmdb
- mhash mssql mysql mysqli nls
- oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
- readline selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp
- +xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-# The Oracle instant client provides its own incompatible ldap library.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- cli? ( ^^ ( readline libedit ) )
- !cli? ( ?? ( readline libedit ) )
- truetype? ( gd zlib )
- webp? ( gd zlib )
- cjk? ( gd zlib )
- exif? ( gd zlib )
- xpm? ( gd zlib )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- xmlrpc? ( xml iconv )
- xmlreader? ( xml )
- xmlwriter? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- oci8-instant-client? ( !ldap )
- qdbm? ( !gdbm )
- session-mm? ( session !threads )
- mysql? ( || ( mysqli pdo ) )
- firebird? ( pdo )
- mssql? ( pdo )
-"
-
-RESTRICT="!test? ( test )"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- >=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
- >=dev-libs/libpcre2-10.30[jit?,unicode]
- fpm? ( acl? ( sys-apps/acl ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- berkdb? ( || ( sys-libs/db:5.3
- sys-libs/db:5.1
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5 ) )
- bzip2? ( app-arch/bzip2:0= )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- coverage? ( dev-util/lcov )
- curl? ( >=net-misc/curl-7.10.5 )
- enchant? ( <app-text/enchant-2.0:0 )
- ffi? ( >=dev-libs/libffi-3.0.11 )
- firebird? ( dev-db/firebird )
- gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= )
- gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- kerberos? ( virtual/krb5 )
- ldap? ( >=net-nds/openldap-1.2.11 )
- ldap-sasl? ( dev-libs/cyrus-sasl )
- libedit? ( dev-libs/libedit )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- oci8-instant-client? ( dev-db/oracle-instantclient[sdk] )
- odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
- postgres? ( dev-db/postgresql:* )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- session-mm? ( dev-libs/mm )
- snmp? ( >=net-analyzer/net-snmp-5.2 )
- sodium? ( dev-libs/libsodium:= )
- spell? ( >=app-text/aspell-0.50 )
- sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.1:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( =media-libs/freetype-2* )
- unicode? ( dev-libs/oniguruma:= )
- webp? ( media-libs/libwebp:0= )
- xml? ( >=dev-libs/libxml2-2.7.6 )
- xpm? ( x11-libs/libXpm )
- xslt? ( dev-libs/libxslt )
- zip? ( >=dev-libs/libzip-1.2.0:= )
- zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- >=sys-devel/bison-3.0.1"
-
-BDEPEND="virtual/pkgconfig"
-
-PHP_MV="$(ver_cut 1)"
-
-PATCHES=(
- "${FILESDIR}"/php-iodbc-header-location.patch
-)
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # default to /tmp for save_path, bug #282768
- sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
-
- # Set the extension dir
- sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
- -i "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR packages
- sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "../ext/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # Emulate buildconf to support cross-compilation
- rm -fr aclocal.m4 autom4te.cache config.cache \
- configure main/php_config.h.in || die
- eautoconf --force
- eautoheader
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- $(use_enable threads maintainer-zts)
- )
-
- our_conf+=(
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_enable bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar)
- $(use_enable coverage gcov)
- $(use_enable ctype)
- $(use_with curl)
- $(use_enable xml dom)
- $(use_with enchant)
- $(use_enable exif)
- $(use_with ffi)
- $(use_enable fileinfo)
- $(use_enable filter)
- $(use_enable ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
- $(use_enable intl)
- $(use_enable ipv6)
- $(use_enable json)
- $(use_with kerberos)
- $(use_with xml libxml)
- $(use_enable unicode mbstring)
- $(use_with ssl openssl)
- $(use_enable pcntl)
- $(use_enable phar)
- $(use_enable pdo)
- $(use_enable opcache)
- $(use_with postgres pgsql "${EPREFIX}/usr")
- $(use_enable posix)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_enable simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap)
- $(use_enable sockets)
- $(use_with sodium)
- $(use_with sqlite sqlite3)
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer)
- $(use_enable xml)
- $(use_enable xmlreader)
- $(use_enable xmlwriter)
- $(use_with xmlrpc)
- $(use_with xslt xsl)
- $(use_with zip)
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug)
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with tokyocabinet tcadb "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Support for the GD graphics library
- our_conf+=(
- $(use_with truetype freetype)
- $(use_enable cjk gd-jis-conv)
- $(use_with gd jpeg)
- $(use_with xpm)
- $(use_with webp)
- )
- # enable gd last, so configure can pick up the previous settings
- our_conf+=( $(use_enable gd) )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl)
- )
- fi
-
- # MySQL support
- local mysqllib="mysqlnd"
- local mysqlilib="mysqlnd"
-
- our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- if use odbc && use iodbc ; then
- our_conf+=(
- --without-unixODBC
- --with-iodbc
- $(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
- )
- elif use odbc ; then
- our_conf+=(
- --with-unixODBC="${EPREFIX}/usr"
- --without-iodbc
- $(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
- )
- else
- our_conf+=(
- --without-unixODBC
- --without-iodbc
- --without-pdo-odbc
- )
- fi
-
- # Oracle support
- our_conf+=( $(use_with oci8-instant-client oci8) )
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "${mysqllib}")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite)
- $(use_with firebird pdo-firebird "${EPREFIX}/usr")
- $(use_with oci8-instant-client pdo-oci)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit)
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-external-pcre affects ext/pcre
- our_conf+=(
- --with-external-pcre
- $(use_with jit pcre-jit)
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- local one_sapi
- local sapi
- mkdir -p "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
- cd "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- local sapi
- for sapi in ${SAPIS} ; do
- if use "${sapi}"; then
- cd "${WORKDIR}/sapis-build/$sapi" || \
- die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
- emake
- fi
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi="", sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Makefile forgets to create this before trying to write to it...
- dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
-
- # Install php environment (without any sapis)
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
-
- local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local file=""
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
- newins ".libs/libphp${PHP_MV}$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#${EPREFIX}}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- # Install the "phar" archive utility.
- if use phar ; then
- emake INSTALL_ROOT="${D}" install-pharcmd
- dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
- fi
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp${PHP_MV}$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#${EPREFIX}}"
- dolib.so "modules/opcache$(get_libname)"
- fi
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
- PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
- if [[ ! -x "${PHP_BIN}" ]] ; then
- ewarn "Test phase requires USE=cli, skipping"
- return
- else
- export TEST_PHP_EXECUTABLE="${PHP_BIN}"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
- "session.save_path=${T}" \
- "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
- "session.save_path=${T}"
-
- for name in ${EXPECTED_TEST_FAILURES}; do
- mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
- done
-
- local failed="$(find -name '*.out')"
- if [[ ${failed} != "" ]] ; then
- ewarn "The following test cases failed unexpectedly:"
- for name in ${failed}; do
- ewarn " ${name/.out/}"
- done
- else
- einfo "No unexpected test failures, all fine"
- fi
-
- if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
- local passed=""
- for name in ${EXPECTED_TEST_FAILURES}; do
- [[ -f "${name}.diff" ]] && continue
- passed="${passed} ${name}"
- done
- if [[ ${passed} != "" ]] ; then
- einfo "The following test cases passed unexpectedly:"
- for name in ${passed}; do
- ewarn " ${passed}"
- done
- else
- einfo "None of the known-to-fail tests passed, all fine"
- fi
- fi
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- local m
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-8.0.2-r1.ebuild b/dev-lang/php/php-8.0.2-r1.ebuild
deleted file mode 100644
index c3b57be91fa5..000000000000
--- a/dev-lang/php/php-8.0.2-r1.ebuild
+++ /dev/null
@@ -1,748 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-WANT_AUTOMAKE="none"
-
-inherit flag-o-matic systemd autotools
-
-MY_PV=${PV/_rc/rc}
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://www.php.net/"
-SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- gd? ( gd )
- 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"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
- coverage +ctype curl debug
- enchant exif ffi +fileinfo +filter firebird
- +flatfile ftp gd gdbm gmp +iconv imap inifile
- intl iodbc ipv6 +jit kerberos ldap ldap-sasl libedit libressl lmdb
- mhash mssql mysql mysqli nls
- oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
- readline selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp
- +xml xmlreader xmlwriter xpm xslt zip zlib"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-# The Oracle instant client provides its own incompatible ldap library.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- cli? ( ^^ ( readline libedit ) )
- !cli? ( ?? ( readline libedit ) )
- truetype? ( gd zlib )
- webp? ( gd zlib )
- cjk? ( gd zlib )
- exif? ( gd zlib )
- xpm? ( gd zlib )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- xmlreader? ( xml )
- xmlwriter? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- oci8-instant-client? ( !ldap )
- qdbm? ( !gdbm )
- session-mm? ( session !threads )
- mysql? ( || ( mysqli pdo ) )
- firebird? ( pdo )
- mssql? ( pdo )
-"
-
-RESTRICT="!test? ( test )"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- >=app-eselect/eselect-php-0.9.7[apache2?,fpm?]
- >=dev-libs/libpcre2-10.30[jit?,unicode]
- fpm? ( acl? ( sys-apps/acl ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- berkdb? ( || ( sys-libs/db:5.3
- sys-libs/db:5.1
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5 ) )
- bzip2? ( app-arch/bzip2:0= )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- coverage? ( dev-util/lcov )
- curl? ( >=net-misc/curl-7.29.0 )
- enchant? ( app-text/enchant:2 )
- ffi? ( >=dev-libs/libffi-3.0.11 )
- firebird? ( dev-db/firebird )
- gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= )
- gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- kerberos? ( virtual/krb5 )
- ldap? ( >=net-nds/openldap-1.2.11 )
- ldap-sasl? ( dev-libs/cyrus-sasl )
- libedit? ( dev-libs/libedit )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- oci8-instant-client? ( dev-db/oracle-instantclient[sdk] )
- odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
- postgres? ( >=dev-db/postgresql-9.1:* )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- session-mm? ( dev-libs/mm )
- snmp? ( >=net-analyzer/net-snmp-5.2 )
- sodium? ( dev-libs/libsodium:= )
- spell? ( >=app-text/aspell-0.50 )
- sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.1:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( =media-libs/freetype-2* )
- unicode? ( dev-libs/oniguruma:= )
- webp? ( media-libs/libwebp:0= )
- xml? ( >=dev-libs/libxml2-2.9.0 )
- xpm? ( x11-libs/libXpm )
- xslt? ( dev-libs/libxslt )
- zip? ( >=dev-libs/libzip-1.2.0:= )
- zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- >=sys-devel/bison-3.0.1"
-
-BDEPEND="virtual/pkgconfig"
-
-PHP_MV="$(ver_cut 1)"
-
-PATCHES=( "${FILESDIR}/php-iodbc-header-location.patch" )
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # default to /tmp for save_path, bug #282768
- sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
-
- # Set the extension dir
- sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
- -i "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR packages
- sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "../ext/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # Emulate buildconf to support cross-compilation
- rm -fr aclocal.m4 autom4te.cache config.cache \
- configure main/php_config.h.in || die
- eautoconf --force
- eautoheader
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- $(use_enable threads zts)
- )
-
- our_conf+=(
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_enable bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar)
- $(use_enable coverage gcov)
- $(use_enable ctype)
- $(use_with curl)
- $(use_enable xml dom)
- $(use_with enchant)
- $(use_enable exif)
- $(use_with ffi)
- $(use_enable fileinfo)
- $(use_enable filter)
- $(use_enable ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
- $(use_enable intl)
- $(use_enable ipv6)
- $(use_with kerberos)
- $(use_with xml libxml)
- $(use_enable unicode mbstring)
- $(use_with ssl openssl)
- $(use_enable pcntl)
- $(use_enable phar)
- $(use_enable pdo)
- $(use_enable opcache)
- $(use_with postgres pgsql "${EPREFIX}/usr")
- $(use_enable posix)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_enable simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap)
- $(use_enable sockets)
- $(use_with sodium)
- $(use_with sqlite sqlite3)
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer)
- $(use_enable xml)
- $(use_enable xmlreader)
- $(use_enable xmlwriter)
- $(use_with xslt xsl)
- $(use_with zip)
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug)
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with tokyocabinet tcadb "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Support for the GD graphics library
- our_conf+=(
- $(use_with truetype freetype)
- $(use_enable cjk gd-jis-conv)
- $(use_with gd jpeg)
- $(use_with xpm)
- $(use_with webp)
- )
- # enable gd last, so configure can pick up the previous settings
- our_conf+=( $(use_enable gd) )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl)
- )
- fi
-
- # MySQL support
- local mysqllib="mysqlnd"
- local mysqlilib="mysqlnd"
-
- our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- if use odbc && use iodbc ; then
- our_conf+=(
- --without-unixODBC
- --with-iodbc
- $(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
- )
- elif use odbc ; then
- our_conf+=(
- --with-unixODBC="${EPREFIX}/usr"
- --without-iodbc
- $(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
- )
- else
- our_conf+=(
- --without-unixODBC
- --without-iodbc
- --without-pdo-odbc
- )
- fi
-
- # Oracle support
- our_conf+=( $(use_with oci8-instant-client oci8) )
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "${mysqllib}")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite)
- $(use_with firebird pdo-firebird "${EPREFIX}/usr")
- $(use_with oci8-instant-client pdo-oci)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit)
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-external-pcre affects ext/pcre
- our_conf+=(
- --with-external-pcre
- $(use_with jit pcre-jit)
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- local one_sapi
- local sapi
- mkdir -p "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
- cd "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- local sapi
- for sapi in ${SAPIS} ; do
- if use "${sapi}"; then
- cd "${WORKDIR}/sapis-build/$sapi" || \
- die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
- emake
- fi
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi="", sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Makefile forgets to create this before trying to write to it...
- dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
-
- # Install php environment (without any sapis)
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
-
- local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local file=""
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
- newins ".libs/libphp$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#${EPREFIX}}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- # Install the "phar" archive utility.
- if use phar ; then
- emake INSTALL_ROOT="${D}" install-pharcmd
- dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
- fi
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#${EPREFIX}}"
- dolib.so "modules/opcache$(get_libname)"
- fi
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
- PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
- if [[ ! -x "${PHP_BIN}" ]] ; then
- ewarn "Test phase requires USE=cli, skipping"
- return
- else
- export TEST_PHP_EXECUTABLE="${PHP_BIN}"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
- "session.save_path=${T}" \
- "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
- "session.save_path=${T}"
-
- for name in ${EXPECTED_TEST_FAILURES}; do
- mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
- done
-
- local failed="$(find -name '*.out')"
- if [[ ${failed} != "" ]] ; then
- ewarn "The following test cases failed unexpectedly:"
- for name in ${failed}; do
- ewarn " ${name/.out/}"
- done
- else
- einfo "No unexpected test failures, all fine"
- fi
-
- if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
- local passed=""
- for name in ${EXPECTED_TEST_FAILURES}; do
- [[ -f "${name}.diff" ]] && continue
- passed="${passed} ${name}"
- done
- if [[ ${passed} != "" ]] ; then
- einfo "The following test cases passed unexpectedly:"
- for name in ${passed}; do
- ewarn " ${passed}"
- done
- else
- einfo "None of the known-to-fail tests passed, all fine"
- fi
- fi
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- local m
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-8.0.2.ebuild b/dev-lang/php/php-8.0.2.ebuild
deleted file mode 100644
index cdcf7cd4d0cf..000000000000
--- a/dev-lang/php/php-8.0.2.ebuild
+++ /dev/null
@@ -1,749 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-WANT_AUTOMAKE="none"
-
-inherit flag-o-matic systemd autotools
-
-MY_PV=${PV/_rc/rc}
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://www.php.net/"
-SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- gd? ( gd )
- 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"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
- coverage +ctype curl debug
- enchant exif ffi +fileinfo +filter firebird
- +flatfile ftp gd gdbm gmp +iconv imap inifile
- intl iodbc ipv6 kerberos ldap ldap-sasl libedit libressl lmdb
- mhash mssql mysql mysqli nls
- oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
- readline selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp
- +xml xmlreader xmlwriter xpm xslt zip zlib"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-# The Oracle instant client provides its own incompatible ldap library.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- cli? ( ^^ ( readline libedit ) )
- !cli? ( ?? ( readline libedit ) )
- truetype? ( gd zlib )
- webp? ( gd zlib )
- cjk? ( gd zlib )
- exif? ( gd zlib )
- xpm? ( gd zlib )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- xmlreader? ( xml )
- xmlwriter? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- oci8-instant-client? ( !ldap )
- qdbm? ( !gdbm )
- session-mm? ( session !threads )
- mysql? ( || ( mysqli pdo ) )
- firebird? ( pdo )
- mssql? ( pdo )
-"
-
-RESTRICT="!test? ( test )"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- >=app-eselect/eselect-php-0.9.7[apache2?,fpm?]
- >=dev-libs/libpcre2-10.30[unicode]
- fpm? ( acl? ( sys-apps/acl ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- berkdb? ( || ( sys-libs/db:5.3
- sys-libs/db:5.1
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5 ) )
- bzip2? ( app-arch/bzip2:0= )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- coverage? ( dev-util/lcov )
- curl? ( >=net-misc/curl-7.29.0 )
- enchant? ( app-text/enchant:2 )
- ffi? ( >=dev-libs/libffi-3.0.11 )
- firebird? ( dev-db/firebird )
- gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= )
- gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- kerberos? ( virtual/krb5 )
- ldap? ( >=net-nds/openldap-1.2.11 )
- ldap-sasl? ( dev-libs/cyrus-sasl )
- libedit? ( dev-libs/libedit )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- oci8-instant-client? ( dev-db/oracle-instantclient[sdk] )
- odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
- postgres? ( >=dev-db/postgresql-9.1:* )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- session-mm? ( dev-libs/mm )
- snmp? ( >=net-analyzer/net-snmp-5.2 )
- sodium? ( dev-libs/libsodium:= )
- spell? ( >=app-text/aspell-0.50 )
- sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.1:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( =media-libs/freetype-2* )
- unicode? ( dev-libs/oniguruma:= )
- webp? ( media-libs/libwebp:0= )
- xml? ( >=dev-libs/libxml2-2.9.0 )
- xpm? ( x11-libs/libXpm )
- xslt? ( dev-libs/libxslt )
- zip? ( >=dev-libs/libzip-1.2.0:= )
- zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- >=sys-devel/bison-3.0.1"
-
-BDEPEND="virtual/pkgconfig"
-
-PHP_MV="$(ver_cut 1)"
-
-PATCHES=( "${FILESDIR}/php-iodbc-header-location.patch" )
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # default to /tmp for save_path, bug #282768
- sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
-
- # Set the extension dir
- sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
- -i "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR packages
- sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "../ext/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # Emulate buildconf to support cross-compilation
- rm -fr aclocal.m4 autom4te.cache config.cache \
- configure main/php_config.h.in || die
- eautoconf --force
- eautoheader
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- $(use_enable threads zts)
- )
-
- our_conf+=(
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_enable bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar)
- $(use_enable coverage gcov)
- $(use_enable ctype)
- $(use_with curl)
- $(use_enable xml dom)
- $(use_with enchant)
- $(use_enable exif)
- $(use_with ffi)
- $(use_enable fileinfo)
- $(use_enable filter)
- $(use_enable ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
- $(use_enable intl)
- $(use_enable ipv6)
- $(use_with kerberos)
- $(use_with xml libxml)
- $(use_enable unicode mbstring)
- $(use_with ssl openssl)
- $(use_enable pcntl)
- $(use_enable phar)
- $(use_enable pdo)
- $(use_enable opcache)
- $(use_with postgres pgsql "${EPREFIX}/usr")
- $(use_enable posix)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_enable simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap)
- $(use_enable sockets)
- $(use_with sodium)
- $(use_with sqlite sqlite3)
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer)
- $(use_enable xml)
- $(use_enable xmlreader)
- $(use_enable xmlwriter)
- $(use_with xslt xsl)
- $(use_with zip)
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug)
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with tokyocabinet tcadb "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Support for the GD graphics library
- our_conf+=(
- $(use_with truetype freetype)
- $(use_enable cjk gd-jis-conv)
- $(use_with gd jpeg)
- $(use_with xpm)
- $(use_with webp)
- )
- # enable gd last, so configure can pick up the previous settings
- our_conf+=( $(use_enable gd) )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl)
- )
- fi
-
- # MySQL support
- local mysqllib="mysqlnd"
- local mysqlilib="mysqlnd"
-
- our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- if use odbc && use iodbc ; then
- our_conf+=(
- --without-unixODBC
- --with-iodbc
- $(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
- )
- elif use odbc ; then
- our_conf+=(
- --with-unixODBC="${EPREFIX}/usr"
- --without-iodbc
- $(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
- )
- else
- our_conf+=(
- --without-unixODBC
- --without-iodbc
- --without-pdo-odbc
- )
- fi
-
- # Oracle support
- our_conf+=( $(use_with oci8-instant-client oci8) )
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "${mysqllib}")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite)
- $(use_with firebird pdo-firebird "${EPREFIX}/usr")
- $(use_with oci8-instant-client pdo-oci)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit)
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-external-pcre affects ext/pcre
- # Many arches don't support pcre-jit
- our_conf+=(
- --with-external-pcre
- --without-pcre-jit
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- local one_sapi
- local sapi
- mkdir -p "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
- cd "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- local sapi
- for sapi in ${SAPIS} ; do
- if use "${sapi}"; then
- cd "${WORKDIR}/sapis-build/$sapi" || \
- die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
- emake
- fi
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi="", sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Makefile forgets to create this before trying to write to it...
- dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
-
- # Install php environment (without any sapis)
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
-
- local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local file=""
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
- newins ".libs/libphp$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#${EPREFIX}}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- # Install the "phar" archive utility.
- if use phar ; then
- emake INSTALL_ROOT="${D}" install-pharcmd
- dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
- fi
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#${EPREFIX}}"
- dolib.so "modules/opcache$(get_libname)"
- fi
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
- PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
- if [[ ! -x "${PHP_BIN}" ]] ; then
- ewarn "Test phase requires USE=cli, skipping"
- return
- else
- export TEST_PHP_EXECUTABLE="${PHP_BIN}"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
- "session.save_path=${T}" \
- "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
- "session.save_path=${T}"
-
- for name in ${EXPECTED_TEST_FAILURES}; do
- mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
- done
-
- local failed="$(find -name '*.out')"
- if [[ ${failed} != "" ]] ; then
- ewarn "The following test cases failed unexpectedly:"
- for name in ${failed}; do
- ewarn " ${name/.out/}"
- done
- else
- einfo "No unexpected test failures, all fine"
- fi
-
- if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
- local passed=""
- for name in ${EXPECTED_TEST_FAILURES}; do
- [[ -f "${name}.diff" ]] && continue
- passed="${passed} ${name}"
- done
- if [[ ${passed} != "" ]] ; then
- einfo "The following test cases passed unexpectedly:"
- for name in ${passed}; do
- ewarn " ${passed}"
- done
- else
- einfo "None of the known-to-fail tests passed, all fine"
- fi
- fi
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- local m
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-8.0.3.ebuild b/dev-lang/php/php-8.0.3.ebuild
index c3b57be91fa5..599f1188e1c0 100644
--- a/dev-lang/php/php-8.0.3.ebuild
+++ b/dev-lang/php/php-8.0.3.ebuild
@@ -151,7 +151,10 @@ BDEPEND="virtual/pkgconfig"
PHP_MV="$(ver_cut 1)"
-PATCHES=( "${FILESDIR}/php-iodbc-header-location.patch" )
+PATCHES=(
+ "${FILESDIR}/php-iodbc-header-location.patch"
+ "${FILESDIR}/php80-firebird-warnings.patch"
+)
php_install_ini() {
local phpsapi="${1}"
diff --git a/dev-lang/rakudo/Manifest b/dev-lang/rakudo/Manifest
index fea101a02047..4d862f59ac2e 100644
--- a/dev-lang/rakudo/Manifest
+++ b/dev-lang/rakudo/Manifest
@@ -1,19 +1,7 @@
AUX rakudo-2016.04-jna-lib.patch 970 BLAKE2B 28947a57089f3e53333d6dad83b9ff62411b1bb090f2301d6d415cf9e3eef5b6a96dfbaf94020c249e24cca707655522929114ecb032bb4e701d6a3c7ad46810 SHA512 3e76c33e08911fc9105fc8e6f046a8af133ec956aad1537653ee335f0068d4428a9c8be45af45ed3eccae58f1be38579614bac278deb00ea143829e6d98d38c6
-DIST rakudo-2020.05.1.tar.gz 4802231 BLAKE2B ead9db815bb29d78f4a92157ff65e43c28f19e52e19f3972783b2a8d6c1814576c30d5b612e12f1500a7ae436c66b70d9774aa69f2ea421cc4382341cbd40498 SHA512 20d0818fc9f13693f098c41799cceb39e21442ac652993981fcab1fc1c7158058b42746f3ca3b145938fb6adb03f045f4784e77bf11da672c5908d0a5a36975f
-DIST rakudo-2020.06.tar.gz 4828268 BLAKE2B 5be85b3379f8f859ccff860cfbb5cbab23befd3f25175ae300acf414477f73ef9c2da8ea66a4516339a6dcddbef79d18ee3789e009619bdde44eff6a69cb765c SHA512 2eb6f4eecb2b8fe2cf94ef0309baf4f91cd4cdc7adb428e1023e5b84d804e34a5249448915b40d8120afe21dfb5bb1cb65c128d2b2f1afa3d98d84c97c84caea
-DIST rakudo-2020.07.tar.gz 4729727 BLAKE2B 131d4aaee21c7e38fb8f2c3091336597a4cb583be648979f41b6c025e65eb1f17aef81117d5bbddc4e7283ebb3af083443c4710532979a87c89caf2387126266 SHA512 05da50ed201054718136ae6ae3867c8cc54720a4e62e34867d082d9ac7d74a190c04b8a60f29b264273e641c31b9ee839d6189d41bad573c9c77f9bb58db233f
-DIST rakudo-2020.08.1.tar.gz 4740608 BLAKE2B be1b1f755690493483ba001407a89de69d64d0959d99bd28cdc4cbbacbcc56e884aa6244b2046c0ff6f6c4374b8edc86016c3c6b9719926a71eb5640092d16d1 SHA512 0142a5df29d4bd1c5a0e8cd37d59242b552dc523966293293fb643f4ce65a004457d81f76823db15bec1508a12c631eec324623cb3b8d60bc14d55b626959b11
-DIST rakudo-2020.09.tar.gz 4743378 BLAKE2B 4ccac6fa59ca80868e7525eabc05d358da9265a87aced24af2c25fae6c0e386aae18c5f44d9d3dd6db377f155b481e003c91c6e51bb6a89ee9a380e749e0c847 SHA512 c838b7a42670a99860184464b22b1cb3c9a27988eb6e982f4367df883afe06608199bf363164965c1199027eeed880f237771c1e8580a80e585f1fd67d0c0574
-DIST rakudo-2020.10.tar.gz 4755030 BLAKE2B 869f6dc6569093f7ad39d9c250d6564b6311cdefda2950784e54263bed6faca4b8653a9578b19f52819eb8e9f24e1f5f831468bf4620d885d4bb26944e22e8f4 SHA512 fcd00ac782ca28243ca2c6ceb45ff99322952086749aea01ccdfb5ae8c525cb6304fe5d20e7905a9808b1b7a1a96d7c4406847b10c0e4ea8b5fd7d053870f46a
DIST rakudo-2020.11.tar.gz 5678270 BLAKE2B 314da91b516d509fcfcfff16e46444243083bdeb21294bc33a2996f1883317b663cc3442cbb6090c8339c5607b4e64a4c8c3c9f2fa5d728bd5c6513d6ef20bcf SHA512 d6c0f7849570b82611db311445f6b60000ecf1c0773d1bb5f4da0d27a9e0d443149ab72f954da2e75a8323d9be9c31f655dee1183a8ca714d89c63baa6e2489e
DIST rakudo-2020.12.tar.gz 5690849 BLAKE2B 2f2bae068419279346d4dd49b734221d9a8bbeaac94b8fd44f03812ed33fbf8d4e096ba768388cb56571970d41f8ef319bf12d1f33a1cf36fe3ebb7ec6da40be SHA512 dfb94d1c8f75ec16e0149a37b57a9d9fc80ddaf256526edd3d3a23c0435881a187efbe88fd95a2174a9e9d93820987e561bb77745c7492e7ac50eb72879b4ab8
DIST rakudo-2021.02.tar.gz 7530228 BLAKE2B 9b70b737abfe18ea43aea4c45d965567357ef811ab719b9013b8e31e610c91e2868dcdb978abe7a62a5e375ea81e1f914d8031b36c5947f73d32824c12f83dd2 SHA512 067abbc2d9f11251486c30aa70a7961f0864dd08aac12aaadf47c5d019066fb38433b2bcc27f5f70a50f6d213462df9fe6631c22e6ea0148f348659fb5030329
-EBUILD rakudo-2020.05.1.ebuild 1619 BLAKE2B 6e3d91ed55484a91a9e3cc82461ecb32a610fcd8bd5a46c39f8bf58a2719cc3d55ad3edc26f2f0069e51c964179f5eccb3a3d5d4b0da25d22faa60b797aac0aa SHA512 49a99a1d8cdf558929e91293718c3dccd40e066ec884027bfe9ea116b04874ac85b947153cce6d133b6159c305101f9c13b68160d2543a85d46852e48c7a0524
-EBUILD rakudo-2020.06.ebuild 1619 BLAKE2B 784695f08e4227ed2461f039f5c497999d96c996f4c9eaa17e6825964beb77e4a5876f004523140c5b2003973064abc1795d856abce4ed21c27df8ec935911fa SHA512 6f86d97d79027d3498ae37ba13877ee59ea8548302d2958a869f2660188c0b90fcee893f53922bee4d1944dba30d4df1942ce874ced06e12b86295282b350b94
-EBUILD rakudo-2020.07.ebuild 1619 BLAKE2B 784695f08e4227ed2461f039f5c497999d96c996f4c9eaa17e6825964beb77e4a5876f004523140c5b2003973064abc1795d856abce4ed21c27df8ec935911fa SHA512 6f86d97d79027d3498ae37ba13877ee59ea8548302d2958a869f2660188c0b90fcee893f53922bee4d1944dba30d4df1942ce874ced06e12b86295282b350b94
-EBUILD rakudo-2020.08.1.ebuild 1619 BLAKE2B 784695f08e4227ed2461f039f5c497999d96c996f4c9eaa17e6825964beb77e4a5876f004523140c5b2003973064abc1795d856abce4ed21c27df8ec935911fa SHA512 6f86d97d79027d3498ae37ba13877ee59ea8548302d2958a869f2660188c0b90fcee893f53922bee4d1944dba30d4df1942ce874ced06e12b86295282b350b94
-EBUILD rakudo-2020.09.ebuild 1615 BLAKE2B 11d22170b2a2a91c405db0e16e099a670a50c981c289c30cef897294cce48022fee2aa7d7f51161bbda52850d6e9878c423877f47fcdd8aeda5bdbbfc2533f7e SHA512 781d36e3c0aee054795c8f9a4ebf40b28fdac7fb83eaefa1ce65d9b9cad3d224bd8a6a241820d2e779f1d397f8e2a677dcbbcb5b52acf389369e05b2747ac558
-EBUILD rakudo-2020.10.ebuild 1615 BLAKE2B 11d22170b2a2a91c405db0e16e099a670a50c981c289c30cef897294cce48022fee2aa7d7f51161bbda52850d6e9878c423877f47fcdd8aeda5bdbbfc2533f7e SHA512 781d36e3c0aee054795c8f9a4ebf40b28fdac7fb83eaefa1ce65d9b9cad3d224bd8a6a241820d2e779f1d397f8e2a677dcbbcb5b52acf389369e05b2747ac558
EBUILD rakudo-2020.11.ebuild 1615 BLAKE2B 11d22170b2a2a91c405db0e16e099a670a50c981c289c30cef897294cce48022fee2aa7d7f51161bbda52850d6e9878c423877f47fcdd8aeda5bdbbfc2533f7e SHA512 781d36e3c0aee054795c8f9a4ebf40b28fdac7fb83eaefa1ce65d9b9cad3d224bd8a6a241820d2e779f1d397f8e2a677dcbbcb5b52acf389369e05b2747ac558
EBUILD rakudo-2020.12.ebuild 1615 BLAKE2B 11d22170b2a2a91c405db0e16e099a670a50c981c289c30cef897294cce48022fee2aa7d7f51161bbda52850d6e9878c423877f47fcdd8aeda5bdbbfc2533f7e SHA512 781d36e3c0aee054795c8f9a4ebf40b28fdac7fb83eaefa1ce65d9b9cad3d224bd8a6a241820d2e779f1d397f8e2a677dcbbcb5b52acf389369e05b2747ac558
EBUILD rakudo-2021.02.ebuild 1615 BLAKE2B 11d22170b2a2a91c405db0e16e099a670a50c981c289c30cef897294cce48022fee2aa7d7f51161bbda52850d6e9878c423877f47fcdd8aeda5bdbbfc2533f7e SHA512 781d36e3c0aee054795c8f9a4ebf40b28fdac7fb83eaefa1ce65d9b9cad3d224bd8a6a241820d2e779f1d397f8e2a677dcbbcb5b52acf389369e05b2747ac558
diff --git a/dev-lang/rakudo/rakudo-2020.05.1.ebuild b/dev-lang/rakudo/rakudo-2020.05.1.ebuild
deleted file mode 100644
index 7bea6a703259..000000000000
--- a/dev-lang/rakudo/rakudo-2020.05.1.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit java-pkg-opt-2
-
-DESCRIPTION="A compiler for the Perl 6 programming language"
-HOMEPAGE="https://rakudo.org"
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/rakudo/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://rakudo.org/dl/${PN}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-LICENSE="Artistic-2"
-SLOT="0"
-# TODO: add USE="javascript" once that's usable in nqp
-IUSE="clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="~dev-lang/nqp-${PV/.1/}:${SLOT}=[java?,moar?,clang=]"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.7 )"
-DEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.7 )
- >=dev-lang/perl-5.10"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo; then
- ewarn "Rakudo is known to fail compilation/installation with Rakudo"
- ewarn "already being installed. So if it fails, try unmerging dev-lang/rakudo,"
- ewarn "then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-src_configure() {
- local backends
- use moar && backends+="moar,"
- use java && backends+="jvm"
-
- local myargs=(
- "--prefix=/usr"
- "--sysroot=/"
- "--sdkroot=/"
- "--backends=${backends}"
- )
-
- perl Configure.pl "${myargs[@]}" || die
-
- if use java; then
- NQP=$(java-pkg_getjars --with-dependencies nqp)
- fi
-}
-
-src_compile() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}"
-}
-
-src_install() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}" install
-}
-
-src_test() {
- RAKUDO_PRECOMP_PREFIX=$(mktemp -d) default
-}
diff --git a/dev-lang/rakudo/rakudo-2020.06.ebuild b/dev-lang/rakudo/rakudo-2020.06.ebuild
deleted file mode 100644
index 1a79ddccb62d..000000000000
--- a/dev-lang/rakudo/rakudo-2020.06.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2
-
-DESCRIPTION="A compiler for the Perl 6 programming language"
-HOMEPAGE="https://rakudo.org"
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/rakudo/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://rakudo.org/dl/${PN}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-LICENSE="Artistic-2"
-SLOT="0"
-# TODO: add USE="javascript" once that's usable in nqp
-IUSE="clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="~dev-lang/nqp-${PV/.1/}:${SLOT}=[java?,moar?,clang=]"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.7 )"
-DEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.7 )
- >=dev-lang/perl-5.10"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo; then
- ewarn "Rakudo is known to fail compilation/installation with Rakudo"
- ewarn "already being installed. So if it fails, try unmerging dev-lang/rakudo,"
- ewarn "then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-src_configure() {
- local backends
- use moar && backends+="moar,"
- use java && backends+="jvm"
-
- local myargs=(
- "--prefix=/usr"
- "--sysroot=/"
- "--sdkroot=/"
- "--backends=${backends}"
- )
-
- perl Configure.pl "${myargs[@]}" || die
-
- if use java; then
- NQP=$(java-pkg_getjars --with-dependencies nqp)
- fi
-}
-
-src_compile() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}"
-}
-
-src_install() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}" install
-}
-
-src_test() {
- RAKUDO_PRECOMP_PREFIX=$(mktemp -d) default
-}
diff --git a/dev-lang/rakudo/rakudo-2020.07.ebuild b/dev-lang/rakudo/rakudo-2020.07.ebuild
deleted file mode 100644
index 1a79ddccb62d..000000000000
--- a/dev-lang/rakudo/rakudo-2020.07.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2
-
-DESCRIPTION="A compiler for the Perl 6 programming language"
-HOMEPAGE="https://rakudo.org"
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/rakudo/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://rakudo.org/dl/${PN}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-LICENSE="Artistic-2"
-SLOT="0"
-# TODO: add USE="javascript" once that's usable in nqp
-IUSE="clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="~dev-lang/nqp-${PV/.1/}:${SLOT}=[java?,moar?,clang=]"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.7 )"
-DEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.7 )
- >=dev-lang/perl-5.10"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo; then
- ewarn "Rakudo is known to fail compilation/installation with Rakudo"
- ewarn "already being installed. So if it fails, try unmerging dev-lang/rakudo,"
- ewarn "then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-src_configure() {
- local backends
- use moar && backends+="moar,"
- use java && backends+="jvm"
-
- local myargs=(
- "--prefix=/usr"
- "--sysroot=/"
- "--sdkroot=/"
- "--backends=${backends}"
- )
-
- perl Configure.pl "${myargs[@]}" || die
-
- if use java; then
- NQP=$(java-pkg_getjars --with-dependencies nqp)
- fi
-}
-
-src_compile() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}"
-}
-
-src_install() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}" install
-}
-
-src_test() {
- RAKUDO_PRECOMP_PREFIX=$(mktemp -d) default
-}
diff --git a/dev-lang/rakudo/rakudo-2020.08.1.ebuild b/dev-lang/rakudo/rakudo-2020.08.1.ebuild
deleted file mode 100644
index 1a79ddccb62d..000000000000
--- a/dev-lang/rakudo/rakudo-2020.08.1.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2
-
-DESCRIPTION="A compiler for the Perl 6 programming language"
-HOMEPAGE="https://rakudo.org"
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/rakudo/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://rakudo.org/dl/${PN}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-LICENSE="Artistic-2"
-SLOT="0"
-# TODO: add USE="javascript" once that's usable in nqp
-IUSE="clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="~dev-lang/nqp-${PV/.1/}:${SLOT}=[java?,moar?,clang=]"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.7 )"
-DEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.7 )
- >=dev-lang/perl-5.10"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo; then
- ewarn "Rakudo is known to fail compilation/installation with Rakudo"
- ewarn "already being installed. So if it fails, try unmerging dev-lang/rakudo,"
- ewarn "then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-src_configure() {
- local backends
- use moar && backends+="moar,"
- use java && backends+="jvm"
-
- local myargs=(
- "--prefix=/usr"
- "--sysroot=/"
- "--sdkroot=/"
- "--backends=${backends}"
- )
-
- perl Configure.pl "${myargs[@]}" || die
-
- if use java; then
- NQP=$(java-pkg_getjars --with-dependencies nqp)
- fi
-}
-
-src_compile() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}"
-}
-
-src_install() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}" install
-}
-
-src_test() {
- RAKUDO_PRECOMP_PREFIX=$(mktemp -d) default
-}
diff --git a/dev-lang/rakudo/rakudo-2020.09.ebuild b/dev-lang/rakudo/rakudo-2020.09.ebuild
deleted file mode 100644
index 8337e3f34074..000000000000
--- a/dev-lang/rakudo/rakudo-2020.09.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2
-
-DESCRIPTION="A compiler for the Perl 6 programming language"
-HOMEPAGE="https://rakudo.org"
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/rakudo/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://rakudo.org/dl/${PN}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-LICENSE="Artistic-2"
-SLOT="0"
-# TODO: add USE="javascript" once that's usable in nqp
-IUSE="clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="~dev-lang/nqp-${PV}:${SLOT}=[java?,moar?,clang=]"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.7 )"
-DEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.7 )
- >=dev-lang/perl-5.10"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo; then
- ewarn "Rakudo is known to fail compilation/installation with Rakudo"
- ewarn "already being installed. So if it fails, try unmerging dev-lang/rakudo,"
- ewarn "then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-src_configure() {
- local backends
- use moar && backends+="moar,"
- use java && backends+="jvm"
-
- local myargs=(
- "--prefix=/usr"
- "--sysroot=/"
- "--sdkroot=/"
- "--backends=${backends}"
- )
-
- perl Configure.pl "${myargs[@]}" || die
-
- if use java; then
- NQP=$(java-pkg_getjars --with-dependencies nqp)
- fi
-}
-
-src_compile() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}"
-}
-
-src_install() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}" install
-}
-
-src_test() {
- RAKUDO_PRECOMP_PREFIX=$(mktemp -d) default
-}
diff --git a/dev-lang/rakudo/rakudo-2020.10.ebuild b/dev-lang/rakudo/rakudo-2020.10.ebuild
deleted file mode 100644
index 8337e3f34074..000000000000
--- a/dev-lang/rakudo/rakudo-2020.10.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-opt-2
-
-DESCRIPTION="A compiler for the Perl 6 programming language"
-HOMEPAGE="https://rakudo.org"
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="https://github.com/rakudo/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://rakudo.org/dl/${PN}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-LICENSE="Artistic-2"
-SLOT="0"
-# TODO: add USE="javascript" once that's usable in nqp
-IUSE="clang java +moar test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="|| ( java moar )"
-
-CDEPEND="~dev-lang/nqp-${PV}:${SLOT}=[java?,moar?,clang=]"
-RDEPEND="${CDEPEND}
- java? ( >=virtual/jre-1.7 )"
-DEPEND="${CDEPEND}
- clang? ( sys-devel/clang )
- java? ( >=virtual/jdk-1.7 )
- >=dev-lang/perl-5.10"
-
-pkg_pretend() {
- if has_version dev-lang/rakudo; then
- ewarn "Rakudo is known to fail compilation/installation with Rakudo"
- ewarn "already being installed. So if it fails, try unmerging dev-lang/rakudo,"
- ewarn "then do a new installation."
- ewarn "(see Bug #584394)"
- fi
-}
-
-src_configure() {
- local backends
- use moar && backends+="moar,"
- use java && backends+="jvm"
-
- local myargs=(
- "--prefix=/usr"
- "--sysroot=/"
- "--sdkroot=/"
- "--backends=${backends}"
- )
-
- perl Configure.pl "${myargs[@]}" || die
-
- if use java; then
- NQP=$(java-pkg_getjars --with-dependencies nqp)
- fi
-}
-
-src_compile() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}"
-}
-
-src_install() {
- emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}" install
-}
-
-src_test() {
- RAKUDO_PRECOMP_PREFIX=$(mktemp -d) default
-}
diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest
index 34175f2cbdb9..17bc0290044d 100644
--- a/dev-lang/spidermonkey/Manifest
+++ b/dev-lang/spidermonkey/Manifest
@@ -10,6 +10,7 @@ DIST firefox-68.12.0esr.source.tar.xz 313856956 BLAKE2B eeaa4acc9fabf15ec1b31317
DIST firefox-78.6.0esr.source.tar.xz 338098664 BLAKE2B 9d082b6104bffbd0d918dc1adf2a01ac32613d8048faf399177834c4949714a00c1f4383b778a21d6b6684296d8f9bd44fa547ee2507a8631d206e3764d2ceeb SHA512 a1e2d6af0020784d00ed3cb4d778c136685e7c2f6ae536cc270fbd331d51d483d17dff9acd7ad8e6b3b231b9df894c146092889357b23715814a080c6f08d11a
DIST firefox-78.7.1esr.source.tar.xz 334417504 BLAKE2B c0c90488ef9727363f03707c3d1e83ab5965a32775db9e6832883b94f265a3d95bb468648360fa3f016c34044f4c706db84125f7c5b545aaa1dedcf03196cb0c SHA512 d5828667ab07f5971049092102b7017472a835a3ab8581ba485a528e9b269aafdeeebecb4c882043459c2b901290c5525d795b04c1d4f30f7b74ee6cd7b18646
DIST firefox-78.8.0esr.source.tar.xz 330937116 BLAKE2B dc2476e8bad026589e8889abf3c38b7a7283efefce99dedd8bfb73bdbcdf66c7480d388e9c3ffc28177abb9c4f78cc2c9f6049e7fcb0a161871a99bcc25fa8ea SHA512 0160aa6c408c2af66d24b74cf98e1a07ab1604e7b93ffcde79201f9d68e41e896ef965f1904de52d5dd82ffedae33ac96e93b871727bf5dd5983c5af2f1f439f
+DIST firefox-78.9.0esr.source.tar.xz 332717100 BLAKE2B 91791c8f3022a4f0bde5dd970a34f1a2d8007ff801a43ec4e35f2afe511d430ca01c4c4a0117895c1874deb7522d0ab1f4c6535cfdbe067d8602b0279f0d1524 SHA512 28582fc0a03fb50c0a817deb1083817bb7f2f5d38e98439bf655ed4ee18c83568b3002a59ef76edf357bfb11f55832a221d14130f116aac19d850768fba3ac8b
DIST firefox-78esr-patches-07.tar.xz 66156 BLAKE2B 8f69883432dcbd484b1fb15e3fde1630b1424e502ba78d9ec3cbe70cb2676a6876853d3477c8bfe35e92bca91b200e2d14543de1778d895676a52d2608109af2 SHA512 b4a01d3499002bd33a7fb45a1a80e9e73ba27a0986b6bfa43b3482dd8d82a686a14ae0c5e013402c8c8f359a642632a40bf4c362a0e83a1f53b453914f42e3a7
DIST firefox-78esr-patches-09.tar.xz 67480 BLAKE2B dde764add31a755765df996aeb50bc647881f9956c9b18c87ccc1c79325ec6f4c3a7ae3a8be1a64c5d80a9aece90d05697a8920912a7a37fd62d62bf2e03a536 SHA512 aa0eb6183ead7efe231ecb2922f22d5028a9edb656e65bfebfbb175af868f8c8ae05668e4bc2a982befcd04698cca43d3abb5b261aa2931bc7d8c7808a8495f4
DIST firefox-78esr-patches-10.tar.xz 66396 BLAKE2B c29b723e47c58b10885b220080568aba751e1b73c58e28fce62a2da4c4c3ba8c71b63e60448d17599a3df4446dbd9f9387b4b2b75da5ed1e545591aafe8ec83c SHA512 6bb9caf1f6867b894ab315a73f8ae6f381b5c80c90539f38e786ee653c72c0df055aade854faa23f22cab2253f54abaf918a756945b76ed88f5a224ba8a8f12f
@@ -28,4 +29,5 @@ EBUILD spidermonkey-68.12.0.ebuild 7310 BLAKE2B 78473b652614a2cd4001c40ff9815553
EBUILD spidermonkey-78.6.0.ebuild 12725 BLAKE2B 4e9cae875689a5044f0770714dea7a25ba41f541a1aa9f895f19e1723c7bdcfabc28ef00ce86e70b426a70c629eac1f62e5a383cdc566b1d7bd77fcee4fc47cc SHA512 707ca6ae3095064bc93f92f531ddd6f2fd43d8d5d099f6f0f616f913c336af38ea61932cf0a8bc0e24cd4133d5b357f1fc1e21a80cedd1b76a898445439b186e
EBUILD spidermonkey-78.7.1.ebuild 12728 BLAKE2B e198759328ce6e55251633c7573b7ce8b5664157ba5fbb5883cfd637864cb7aa70161f19aaec89b773436fc8fae02260bba72d98edc8548c667508738a0ab46d SHA512 e782cba74a69d132835d240a654765899ca6860c05c75eb2daf14c8e942e7655878a7362bc9196c780586405cb86ea8b0f4e2ec6bfbc4b1291b5343e7a998f7a
EBUILD spidermonkey-78.8.0.ebuild 12727 BLAKE2B 6c008f2f13a580cc417847435ec1ac1016dfb1de6e958d8a2693ed188202705874c16f9efe2fe3688e03dd610ae08111100e4956817efd097bf40595dfea2903 SHA512 302d1f2ca188e2a8d452f3a0a4ffede83357497dae77d932400ca5fd4cf3d2ff07bb12a380f405b416fbdbb55a99eb4e8c05f2c97e779c760e4d8d72e4509f97
+EBUILD spidermonkey-78.9.0.ebuild 12632 BLAKE2B 0f9a2b4da852a8709bb072cf1e7c8c5e2b856722782d088aea0a40fee62540169ed6f053cd55ae2942c171cc97c06332015bd37a88eb607ca657032118c2f7e2 SHA512 3e9603056c8024ebb270bd81405bb7e17eb2a729ed26359a5296ef63ed9a1b982473d37066cbbd86b28974e44106651751aa6f5cd6b785b0233da153289b5741
MISC metadata.xml 868 BLAKE2B ee529f60bc83af6c54188ab4db2a1e05cbc3fcebf7732580cb5e507afada8560cb8812d4f155ae94c2ec87724bdfafe7312de86b47a95f599655695836c9b806 SHA512 caf3c383cd8109391cbf81baf5e942630bfd84ca6bc2a78430e58e5b0a40428e08b8a3d7c9fadccebaf94fe1aa673df837246fc32d5932b7f60dd43431ee1575
diff --git a/dev-lang/spidermonkey/spidermonkey-78.9.0.ebuild b/dev-lang/spidermonkey/spidermonkey-78.9.0.ebuild
new file mode 100644
index 000000000000..ee0d33709804
--- /dev/null
+++ b/dev-lang/spidermonkey/spidermonkey-78.9.0.ebuild
@@ -0,0 +1,439 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+# Patch version
+FIREFOX_PATCHSET="firefox-78esr-patches-10.tar.xz"
+SPIDERMONKEY_PATCHSET="spidermonkey-78-patches-03.tar.xz"
+
+LLVM_MAX_SLOT=11
+
+PYTHON_COMPAT=( python3_{7..9} )
+
+WANT_AUTOCONF="2.1"
+
+inherit autotools check-reqs flag-o-matic llvm multiprocessing python-any-r1 toolchain-funcs
+
+MY_PN="mozjs"
+MY_PV="${PV/_pre*}" # Handle Gentoo pre-releases
+
+MY_MAJOR=$(ver_cut 1)
+
+MOZ_ESR=yes
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="firefox"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+if [[ ${PV} == *_rc* ]] ; then
+ MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
+fi
+
+PATCH_URIS=(
+ https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${FIREFOX_PATCHSET}
+ https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${SPIDERMONKEY_PATCHSET}
+)
+
+SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
+ ${PATCH_URIS[@]}"
+
+DESCRIPTION="SpiderMonkey is Mozilla's JavaScript engine written in C and C++"
+HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc64 ~s390 ~x86"
+
+SLOT="78"
+LICENSE="MPL-2.0"
+IUSE="clang cpu_flags_arm_neon debug +jit lto test"
+
+RESTRICT="!test? ( test )"
+
+BDEPEND="${PYTHON_DEPS}
+ >=virtual/rust-1.41.0
+ virtual/pkgconfig
+ || (
+ (
+ sys-devel/llvm:11
+ clang? (
+ sys-devel/clang:11
+ lto? ( =sys-devel/lld-11* )
+ )
+ )
+ (
+ sys-devel/llvm:10
+ clang? (
+ sys-devel/clang:10
+ lto? ( =sys-devel/lld-10* )
+ )
+ )
+ )
+ lto? (
+ !clang? ( sys-devel/binutils[gold] )
+ )"
+
+CDEPEND=">=dev-libs/icu-67.1:=
+ >=dev-libs/nspr-4.25
+ sys-libs/readline:0=
+ >=sys-libs/zlib-1.2.3"
+
+DEPEND="${CDEPEND}
+ test? (
+ $(python_gen_any_dep 'dev-python/six[${PYTHON_USEDEP}]')
+ )"
+
+RDEPEND="${CDEPEND}"
+
+S="${WORKDIR}/firefox-${MY_PV}/js/src"
+
+llvm_check_deps() {
+ if use clang ; then
+ if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
+ ewarn "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if use lto ; then
+ if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
+ ewarn "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+ fi
+ fi
+
+ einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+python_check_deps() {
+ if use test ; then
+ has_version "dev-python/six[${PYTHON_USEDEP}]"
+ fi
+}
+
+pkg_pretend() {
+ if use test ; then
+ CHECKREQS_DISK_BUILD="7600M"
+ else
+ CHECKREQS_DISK_BUILD="6400M"
+ fi
+
+ check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ if use test ; then
+ CHECKREQS_DISK_BUILD="7600M"
+ else
+ CHECKREQS_DISK_BUILD="6400M"
+ fi
+
+ check-reqs_pkg_setup
+
+ llvm_pkg_setup
+
+ if use clang && use lto ; then
+ local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
+ [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
+ [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
+
+ # temp fix for https://bugs.gentoo.org/768543
+ # we can assume that rust 1.{49,50}.0 always uses llvm 11
+ local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
+ [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
+ [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
+
+ if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
+ local version_llvm_rust="11"
+ else
+ local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
+ [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
+ [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
+ fi
+
+ if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
+ eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
+ eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
+ eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
+ eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
+ eerror " - Build ${CATEGORY}/${PN} without USE=lto"
+ die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
+ fi
+ fi
+
+ python-any-r1_pkg_setup
+
+ # Build system is using /proc/self/oom_score_adj, bug #604394
+ addpredict /proc/self/oom_score_adj
+
+ if ! mountpoint -q /dev/shm ; then
+ # If /dev/shm is not available, configure is known to fail with
+ # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
+ ewarn "/dev/shm is not mounted -- expect build failures!"
+ fi
+
+ # Ensure we use C locale when building, bug #746215
+ export LC_ALL=C
+ fi
+}
+
+src_prepare() {
+ pushd ../.. &>/dev/null || die
+
+ use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
+
+ eapply "${WORKDIR}"/firefox-patches
+ eapply "${WORKDIR}"/spidermonkey-patches
+
+ default
+
+ # Make LTO respect MAKEOPTS
+ sed -i \
+ -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ build/moz.configure/lto-pgo.configure \
+ || die "sed failed to set num_cores"
+
+ # sed-in toolchain prefix
+ sed -i \
+ -e "s/objdump/${CHOST}-objdump/" \
+ python/mozbuild/mozbuild/configure/check_debug_ranges.py \
+ || die "sed failed to set toolchain prefix"
+
+ einfo "Removing pre-built binaries ..."
+ find third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
+
+ MOZJS_BUILDDIR="${WORKDIR}/build"
+ mkdir "${MOZJS_BUILDDIR}" || die
+
+ popd &>/dev/null || die
+ eautoconf
+}
+
+src_configure() {
+ # Show flags set at the beginning
+ einfo "Current CFLAGS: ${CFLAGS}"
+ einfo "Current CXXFLAGS: ${CXXFLAGS}"
+ einfo "Current LDFLAGS: ${LDFLAGS}"
+ einfo "Current RUSTFLAGS: ${RUSTFLAGS}"
+
+ local have_switched_compiler=
+ if use clang && ! tc-is-clang ; then
+ # Force clang
+ einfo "Enforcing the use of clang due to USE=clang ..."
+ have_switched_compiler=yes
+ AR=llvm-ar
+ CC=${CHOST}-clang
+ CXX=${CHOST}-clang++
+ NM=llvm-nm
+ RANLIB=llvm-ranlib
+ elif ! use clang && ! tc-is-gcc ; then
+ # Force gcc
+ have_switched_compiler=yes
+ einfo "Enforcing the use of gcc due to USE=-clang ..."
+ AR=gcc-ar
+ CC=${CHOST}-gcc
+ CXX=${CHOST}-g++
+ NM=gcc-nm
+ RANLIB=gcc-ranlib
+ fi
+
+ if [[ -n "${have_switched_compiler}" ]] ; then
+ # Because we switched active compiler we have to ensure
+ # that no unsupported flags are set
+ strip-unsupported-flags
+ fi
+
+ # Ensure we use correct toolchain
+ export HOST_CC="$(tc-getBUILD_CC)"
+ export HOST_CXX="$(tc-getBUILD_CXX)"
+ tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
+
+ cd "${MOZJS_BUILDDIR}" || die
+
+ # ../python/mach/mach/mixin/process.py fails to detect SHELL
+ export SHELL="${EPREFIX}/bin/bash"
+
+ local -a myeconfargs=(
+ --host="${CBUILD:-${CHOST}}"
+ --target="${CHOST}"
+ --disable-jemalloc
+ --disable-optimize
+ --disable-strip
+ --enable-readline
+ --enable-shared-js
+ --with-intl-api
+ --with-system-icu
+ --with-system-nspr
+ --with-system-zlib
+ --with-toolchain-prefix="${CHOST}-"
+ $(use_enable debug)
+ $(use_enable jit)
+ $(use_enable test tests)
+ )
+
+ if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
+ myeconfargs+=( --enable-rust-simd )
+ fi
+
+ # Modifications to better support ARM, bug 717344
+ if use cpu_flags_arm_neon ; then
+ myeconfargs+=( --with-fpu=neon )
+
+ if ! tc-is-clang ; then
+ # thumb options aren't supported when using clang, bug 666966
+ myeconfargs+=( --with-thumb=yes )
+ myeconfargs+=( --with-thumb-interwork=no )
+ fi
+ fi
+
+ # Tell build system that we want to use LTO
+ if use lto ; then
+ myeconfargs+=( --enable-lto )
+
+ if use clang ; then
+ myeconfargs+=( --enable-linker=lld )
+ else
+ myeconfargs+=( --enable-linker=gold )
+ fi
+ fi
+
+ # LTO flag was handled via configure
+ filter-flags '-flto*'
+
+ if tc-is-gcc ; then
+ if ver_test $(gcc-fullversion) -ge 10 ; then
+ einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
+ append-cxxflags -fno-tree-loop-vectorize
+ fi
+ fi
+
+ # Show flags we will use
+ einfo "Build CFLAGS: ${CFLAGS}"
+ einfo "Build CXXFLAGS: ${CXXFLAGS}"
+ einfo "Build LDFLAGS: ${LDFLAGS}"
+ einfo "Build RUSTFLAGS: ${RUSTFLAGS}"
+
+ # Forcing system-icu allows us to skip patching bundled ICU for PPC
+ # and other minor arches
+ ECONF_SOURCE="${S}" \
+ econf \
+ ${myeconfargs[@]} \
+ XARGS="${EPREFIX}/usr/bin/xargs"
+}
+
+src_compile() {
+ cd "${MOZJS_BUILDDIR}" || die
+ default
+}
+
+src_test() {
+ if "${MOZJS_BUILDDIR}/js/src/js" -e 'print("Hello world!")'; then
+ einfo "Smoke-test successful, continuing with full test suite"
+ else
+ die "Smoke-test failed: did interpreter initialization fail?"
+ fi
+
+ local -a KNOWN_TESTFAILURES
+ KNOWN_TESTFAILURES+=( non262/Date/reset-time-zone-cache-same-offset.js )
+ KNOWN_TESTFAILURES+=( non262/Date/time-zone-path.js )
+ KNOWN_TESTFAILURES+=( non262/Date/time-zones-historic.js )
+ KNOWN_TESTFAILURES+=( non262/Date/time-zones-imported.js )
+ KNOWN_TESTFAILURES+=( non262/Date/toString-localized.js )
+ KNOWN_TESTFAILURES+=( non262/Date/toString-localized-posix.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/Date/toLocaleString_timeZone.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/Date/toLocaleDateString_timeZone.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/format.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/format_timeZone.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/timeZone_backward_links.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/tz-environment-variable.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/DisplayNames/language.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/DisplayNames/region.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/Locale/likely-subtags.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/Locale/likely-subtags-generated.js )
+ KNOWN_TESTFAILURES+=( test262/intl402/Locale/prototype/minimize/removing-likely-subtags-first-adds-likely-subtags.js )
+
+ if use x86 ; then
+ KNOWN_TESTFAILURES+=( non262/Date/timeclip.js )
+ KNOWN_TESTFAILURES+=( test262/built-ins/Number/prototype/toPrecision/return-values.js )
+ KNOWN_TESTFAILURES+=( test262/language/types/number/S8.5_A2.1.js )
+ KNOWN_TESTFAILURES+=( test262/language/types/number/S8.5_A2.2.js )
+ fi
+
+ if [[ $(tc-endian) == "big" ]] ; then
+ KNOWN_TESTFAILURES+=( test262/built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-other-type.js )
+ fi
+
+ echo "" > "${T}"/known_failures.list || die
+
+ local KNOWN_TESTFAILURE
+ for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do
+ echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list
+ done
+
+ PYTHONPATH="${S}/tests/lib" \
+ ${PYTHON} \
+ "${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
+ --exclude-file="${T}"/known_failures.list \
+ "${MOZJS_BUILDDIR}"/js/src/js \
+ || die
+
+ if use jit ; then
+ KNOWN_TESTFAILURES=()
+
+ echo "" > "${T}"/known_failures.list || die
+
+ for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do
+ echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list
+ done
+
+ PYTHONPATH="${S}/tests/lib" \
+ ${PYTHON} \
+ "${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
+ --exclude-file="${T}"/known_failures.list \
+ "${MOZJS_BUILDDIR}"/js/src/js basic \
+ || die
+ fi
+}
+
+src_install() {
+ cd "${MOZJS_BUILDDIR}" || die
+ default
+
+ # fix soname links
+ pushd "${ED}"/usr/$(get_libdir) &>/dev/null || die
+ mv lib${MY_PN}-${MY_MAJOR}.so lib${MY_PN}-${MY_MAJOR}.so.0.0.0 || die
+ ln -s lib${MY_PN}-${MY_MAJOR}.so.0.0.0 lib${MY_PN}-${MY_MAJOR}.so.0 || die
+ ln -s lib${MY_PN}-${MY_MAJOR}.so.0 lib${MY_PN}-${MY_MAJOR}.so || die
+ popd &>/dev/null || die
+
+ # remove unneeded files
+ rm \
+ "${ED}"/usr/bin/js${MY_MAJOR}-config \
+ "${ED}"/usr/$(get_libdir)/libjs_static.ajs \
+ || die
+
+ # fix permissions
+ chmod -x \
+ "${ED}"/usr/$(get_libdir)/pkgconfig/*.pc \
+ "${ED}"/usr/include/mozjs-${MY_MAJOR}/js-config.h \
+ || die
+}