summaryrefslogtreecommitdiff
path: root/dev-lang
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-12-25 23:06:25 +0000
committerV3n3RiX <venerix@redcorelinux.org>2020-12-25 23:06:25 +0000
commit441d1370330332b7d78f238d2f5e13f7aed5e4e0 (patch)
tree6a5171dd615dfeee62a45044144c66e864738fb0 /dev-lang
parentab3da91fb6c91a9df52fff8f991570f456fd3c7a (diff)
gentoo christmass resync : 25.12.2020
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/Manifest.gzbin17007 -> 17003 bytes
-rw-r--r--dev-lang/ghc/Manifest8
-rw-r--r--dev-lang/ghc/ghc-8.10.2.ebuild4
-rw-r--r--dev-lang/ghc/ghc-8.10.3.ebuild797
-rw-r--r--dev-lang/julia-bin/Manifest23
-rw-r--r--dev-lang/julia-bin/julia-bin-1.3.0.ebuild47
-rw-r--r--dev-lang/julia-bin/julia-bin-1.4.0.ebuild46
-rw-r--r--dev-lang/julia-bin/julia-bin-1.5.2.ebuild1
-rw-r--r--dev-lang/julia-bin/julia-bin-1.5.3.ebuild (renamed from dev-lang/julia-bin/julia-bin-1.2.0.ebuild)17
-rw-r--r--dev-lang/julia/Manifest19
-rw-r--r--dev-lang/julia/julia-1.2.0.ebuild200
-rw-r--r--dev-lang/julia/julia-1.3.0.ebuild201
-rw-r--r--dev-lang/julia/julia-1.4.0-r1.ebuild192
-rw-r--r--dev-lang/julia/julia-1.5.2-r1.ebuild (renamed from dev-lang/julia/julia-1.5.2.ebuild)3
-rw-r--r--dev-lang/julia/julia-1.5.3.ebuild (renamed from dev-lang/julia/julia-1.4.0-r2.ebuild)38
-rw-r--r--dev-lang/lua/Manifest8
-rw-r--r--dev-lang/lua/lua-5.1.5-r105.ebuild4
-rw-r--r--dev-lang/lua/lua-5.2.4-r2.ebuild4
-rw-r--r--dev-lang/lua/lua-5.3.6-r1.ebuild4
-rw-r--r--dev-lang/lua/lua-5.4.1-r1.ebuild4
-rw-r--r--dev-lang/mujs/Manifest6
-rw-r--r--dev-lang/mujs/metadata.xml1
-rw-r--r--dev-lang/mujs/mujs-1.0.6.ebuild58
-rw-r--r--dev-lang/mujs/mujs-1.0.7.ebuild58
-rw-r--r--dev-lang/php/Manifest3
-rw-r--r--dev-lang/php/files/php-7.2.34-use-after-free-bug76047.patch174
-rw-r--r--dev-lang/php/php-7.2.34-r1.ebuild (renamed from dev-lang/php/php-7.2.34.ebuild)7
-rw-r--r--dev-lang/python/Manifest4
-rw-r--r--dev-lang/python/python-2.7.18-r5.ebuild2
-rw-r--r--dev-lang/python/python-3.8.7.ebuild355
-rw-r--r--dev-lang/ruby/Manifest6
-rw-r--r--dev-lang/ruby/ruby-2.6.6-r1.ebuild232
-rw-r--r--dev-lang/ruby/ruby-2.6.6.ebuild232
-rw-r--r--dev-lang/ruby/ruby-2.7.1-r1.ebuild235
-rw-r--r--dev-lang/ruby/ruby-2.7.1-r2.ebuild237
-rw-r--r--dev-lang/ruby/ruby-2.7.1.ebuild235
-rw-r--r--dev-lang/rust/Manifest2
-rw-r--r--dev-lang/rust/rust-1.48.0.ebuild4
-rw-r--r--dev-lang/spidermonkey/Manifest8
-rw-r--r--dev-lang/spidermonkey/spidermonkey-78.4.1.ebuild303
-rw-r--r--dev-lang/spidermonkey/spidermonkey-78.5.0.ebuild303
-rw-r--r--dev-lang/spidermonkey/spidermonkey-78.6.0.ebuild20
-rw-r--r--dev-lang/vala/Manifest6
-rw-r--r--dev-lang/vala/vala-0.48.12.ebuild49
-rw-r--r--dev-lang/vala/vala-0.50.2.ebuild (renamed from dev-lang/vala/vala-0.50.1.ebuild)0
45 files changed, 1487 insertions, 2673 deletions
diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz
index 1ad1d606c7bf..d28e39ce5028 100644
--- a/dev-lang/Manifest.gz
+++ b/dev-lang/Manifest.gz
Binary files differ
diff --git a/dev-lang/ghc/Manifest b/dev-lang/ghc/Manifest
index 8ff2cfe6f8eb..34aae95b2afb 100644
--- a/dev-lang/ghc/Manifest
+++ b/dev-lang/ghc/Manifest
@@ -49,6 +49,8 @@ DIST ghc-8.10.1-src.tar.xz 19781652 BLAKE2B 61ff73d3a895cfa0c836e25a684d7a31cf09
DIST ghc-8.10.1-testsuite.tar.xz 2091988 BLAKE2B 88796f0fb6ea2bdd749161c84ec88768f3bf87063d2224a083db24f69282e615227626fe3c7b41d4abec10883e22042abed6a231582bab4ea530feffd683ed0b SHA512 35147f98301c5bfb6c939e108de48b2a1133adc1028aaa720ce49d60faa06a4b486a9eded658295e3f203731b4dd53475b57e8213491c45b05959430030be269
DIST ghc-8.10.2-src.tar.xz 21880680 BLAKE2B 0c1b67c1576cfd1067d11838301f96041cabf66b94cfd546cfe6bef57babe940fc3814918ff9327e59fe73a8e230fa1d62d7816d7c6cae274dd8c53de6e81736 SHA512 6c3f1311feab3665419a301b17fcb09d303ec822f8eb8c4021edfacff00d9b52e71895bed0e58f11d8f7970415bd8c6f95ffde1294afe795e15607199b20cefc
DIST ghc-8.10.2-testsuite.tar.xz 2101788 BLAKE2B 0d4528223471dfd68cadcda47931d53508c9eafa415716ca5990ea519eb89bfa2bdd444280057be33467382dd3d178887262d54ef633aa8ce88ea91eb9d58ece SHA512 043faaf2f0dc34a868c481b284b94afd78aa1ec1a4056d1f3c97ca3f7dadb3e9cff0517a4cfb378fe5187389db7c9027763bf066328e7dcfd264b737f6d09e41
+DIST ghc-8.10.3-src.tar.xz 19872356 BLAKE2B 043f41a21becc826b3cd13ee81b138cf2edfa18484f98361dc85b12f784df85571522347d5fafe40a19ea8ddf12390cd766db8fc21cf4971e797bc61404304cc SHA512 6f3248e728d3677dfddf2f02609167c67a194750418f2a5e34ed68f1135960761c5a5768255bfc8b2ef5640395609424878375184d2dde8e2d69021a3baf9ec8
+DIST ghc-8.10.3-testsuite.tar.xz 2261376 BLAKE2B cd03d569c30637d531d9a13fa926a28f854a37d48ef0d4e2fde684664ae000f3c941b5113ccafd42fec019428bafb5344b1ddf8f84a71b21bca8831ed4784907 SHA512 4c9d20a27ed71eb7c73bd86c1049ea5adcc8a0b12040386b7d0dddb46b3cf704c52a3392e19ae4ff1c76b8868665c599391d47e47dba516fcadf8abbc30e28df
DIST ghc-8.2.1-src.tar.xz 10736016 BLAKE2B 60993cfc9569e83b0c383591ef30a7280e0138fbb7bd696ad62d87e68dcbccf31c0b8ba211b6647922b8595c7aec2c783648f12c67da53e0766b71c7d7c923fc SHA512 d9aa2aa7f9414db8f4e51d6c275694b46df515e68331a1a2b6018256333a2c63ebd877b75ee90407ecce5be672ec9afc6bebd62aadbf8ae06b94f1760d1736be
DIST ghc-8.2.2-src.tar.xz 10753272 BLAKE2B 6fd792390d3df20f84836466705c3f3c931ba2d594dcbe2b808ea0ae284460000b443df8aae74903eabf05ff9064d68a303086cf888ea68222eb1c60959c8f21 SHA512 6549416f470b599973d409fa45f59c25b07e6a94798cef1a19ad432547dc225338cf4dbc4a4793114b4a417798a3b59b122b92b020251074405c5302b7ffe799
DIST ghc-8.4.1-src.tar.xz 11301528 BLAKE2B 6dcf467d04cace856b68315c85b80f19b517dcbc8ae6e2a08c60afa141c9e0261e012738452c9ca208f9fc40c48bd1a0817e5e0fe9f4737383cd7b44ca65c8d9 SHA512 f8ae11f498bf2911fb92635534c6906c96f1fbe5072c7b7447bd3f69e408026b674564515af02a8aaddc57ee6905ce78d10005b12478a39c220580aaec13a9f7
@@ -89,7 +91,10 @@ DIST ghc-bin-8.0.2-ppc64.tbz2 117432068 BLAKE2B cae202f0d6e825127d543996b2fe7ae0
DIST ghc-bin-8.0.2-x86_64-pc-linux-gnu.tbz2 130852973 BLAKE2B 24d2032bbfc664d924800c1a317334e2342c8ec1e529178f9d1bb99bb4772a9cc100603bf70111b8cfafa715c1cccc643f115c77cf6adcdfb17d1f1735ee6682 SHA512 c36e0e2600fc7c284562a323d396a03062cb6e8fa63c353e672be61e76d2ec5c7698485e3a370a57cf512db9e5ba6a68338fff2ab404d9fe67b1a468ed72638f
DIST ghc-bin-8.10.1-i686-pc-linux-gnu.tbz2 123398571 BLAKE2B 3650f9dbaaa5af684abad589953bcef5b1684a91a4cc2695d0ef735536057bb031231fe3d73dd74bc38a199f0890ef91764b551e5e158c120affc0d7bc3175b7 SHA512 52cc172de08ef30d6e89384e86eda1b8bbdef2bbff526041eb47d85d77b70ab49314ac7f33f18b40864c16fa546256f1b4c7964e65aa5d3cfbb7f9cbec505dc9
DIST ghc-bin-8.10.1-x86_64-pc-linux-gnu.tbz2 122227601 BLAKE2B 84340866c70044eb1444a70b0cbed6814808037b697db28f567d2b14bb791cbe7d9bf2a327cc47ae85ce3c4970ba039854b4a6df44eb85cdc18040c5a4d15f4f SHA512 81df9de95aec47d60ad8d699756ad323eb525c3a16536fac8c6717e1754272061bd8d7d70cd38f5c509a2fc323305333e4f898c9b6dc27645521bb29ee218bdb
+DIST ghc-bin-8.10.2-i686-pc-linux-gnu.tbz2 123683156 BLAKE2B a486076ea6e67f124c850e037be0e63a873181c3fd746f437861f7367a968e0df6723afc934c966432274a55936c0fe48a9a43a48199840b37636843da4caccc SHA512 29cc1703bbdbfcbef8aa2a5a563b83b0663970f5902a1fc70230515a128ef47e27a3a6df2b47a01009c3976b4936cf8e64e5da4dfdda0c1bcf73ab7ea5ac0b6d
DIST ghc-bin-8.10.2-x86_64-pc-linux-gnu.tbz2 122818630 BLAKE2B 030a68e2aca0eb0a273e0d48a3e180d92b219b2d1826d1d58fa133d0a6cae1316b3ccceadb55a4fa5870f87c3df85df2998e7611b93dbc1fea592437748b2daf SHA512 23bf47ee45fae54a843de9e6991b67fccb79c14ad8d08eff9f38a68a3530496c8ce4bc8cae8a731bb690ddd6cd0bf36d6d5bf37eb68ddae8ce646a0bf3916d8f
+DIST ghc-bin-8.10.3-i686-pc-linux-gnu.tbz2 123802832 BLAKE2B a770dd43bee7a1d60fec2eb9aaa7de715eed01c19d9514e04678801827879977a5c91f5e191d026ca83aa5e5fc5f518593053b2e78b27b08df64b39058dbaec3 SHA512 f810432a56ddcd773e6118f038cdacd2f5e3a508d87bfa468ee861aef0cfc434ec5766a8a74360d8cec6cb9c664928290901c025496100e7c8465408635227f5
+DIST ghc-bin-8.10.3-x86_64-pc-linux-gnu.tbz2 122993247 BLAKE2B e3395ebc7e87b4ae8f66dbbd9441c214c4d9535e55bfb14f78ebb92d30b1e100efc4893b3cdc65564d47bd53a21cb30106572b3fce13be022946171112c3218e SHA512 2ea4295bcaf6e3fd0db54ba67465e979cd85d3370c6c49f2381478ae9824ad89df53d7d93ccf06bdff5f4849f14306c9f50c13e6f6ba45f79e5b8c13ad63ae4f
DIST ghc-bin-8.2.1-i686-pc-linux-gnu.tbz2 96157437 BLAKE2B 2b9608845db8cea78db07209fa054b3b05085d5c3ac07cbe3de02a93c87fb0cff12b1820f08757221c59c8a0a9e7a5563c44266b181525d916825e5cf5bac34c SHA512 e891e76557fa61853e28829b8bedc4a6abb92954f90cc1ebcf22a13cc137556bbe9262e7398b7e1aedbabeb997916b008bf1561a52f16a569f3d58ea9404f41e
DIST ghc-bin-8.2.1-x86_64-pc-linux-gnu.tbz2 97490496 BLAKE2B 3666ea70cb8b3645db071040d2069fe244042c11954b34e5d92aaa90132d2316c0ee8c176cd4e674772bea3b99df150404f62bd8745c046cdaf102ecf0a0fa54 SHA512 52630a185d0eab56bce0469a612a54109895bfee041ec362ced59a9b35ba3b9c185e86bc7dbf0a5939081d3626baa19fbb3306e36d1857530248a7b9bfc100bb
DIST ghc-bin-8.2.2-i686-pc-linux-gnu.tbz2 96638908 BLAKE2B b470f838e77330969f162196b0f1035fa764f5d123687fbf67c14323280bfe55216af0e16f8b79c62f290905d96abc8bfafee650f8d27c81608853e78329b2c9 SHA512 15b1525890477539878385efc15ce5f1cf2f126cc785c42923be958cabe3298cebe73526a2370cf4c630124160a7ca0f0f9062aebbf035dce807a0374eaddd14
@@ -120,7 +125,8 @@ EBUILD ghc-7.10.3.ebuild 21673 BLAKE2B 9bddf804dbe6e8ee1ab8a21e8d31c50ed40c4b264
EBUILD ghc-7.8.4.ebuild 19808 BLAKE2B ce921fa76b8f089e80a2766c46939e0b11bf1ba992aa23bb91cf1ad03adb7cae222c2690c4273dd4f9b47912d678bdd6484df2c1f26643b0221a0b70792c6de6 SHA512 ddb849f7682d5e9a98745227c99bfcd54555b0740802641ec444e3933f8ecb9a2f26e0a4c41d532eb7a6643d42d932028120424efcfac771ddf17bb7230e6294
EBUILD ghc-8.0.2.ebuild 21608 BLAKE2B 7cfbdaf9fa3f2fc2771e48a32d235c50aad5f7db427df443d141c5b32cee52c80a216a0e856eae57bdbf1d115bd1e15056516412172b95757f7f904c15d2a26e SHA512 aa48e12a06818945fed9f4b13a25bd287d988b7fb8aedde7cb32ec35ffbf2f9780c4ea9285fe9b0ff71486467c4fcaf7f97f2455955d8373e7393902a85bf869
EBUILD ghc-8.10.1.ebuild 25824 BLAKE2B 9c925cb8412805abe8c90c09dfabb50239bf48e76d5a10434f8dc076229230a08a46be0d093f809426997baa20adc96816558d32d120f61538060a34c3c5c8bb SHA512 78f98718c8a2de96932012be35b8bbb14e0eb64b2b76539d6e88978620d1812ae186f391b248e5493ffcaddc4f78f8c9445f890c29cec0bcf0d2cbf07c1a2c7d
-EBUILD ghc-8.10.2.ebuild 25851 BLAKE2B 6c598decf2e2e737cb2683189f867d6925bc33d3cd98bf410e85dea46010acf68dd17ede42af0687c7239b88d66ec4bc5ae89d15b8b862f21aae48e7d3b686eb SHA512 f2e2a9d90944ccf524e74be6f8a8120c75d37cdf805fde51359c693eb799d8d63301accffdf7cf27538535ff0b508f73a92bcbc9288421050ebcda7816297232
+EBUILD ghc-8.10.2.ebuild 25849 BLAKE2B 3711a29cbcdc6a88f0c8c28e17da3c1245ae7008c64ded69489fd43e85a5cef86e789874f3a63ba6760c4c64459954318fc97084da9856587a05a093fcc1971a SHA512 4de790bfcd4ac0757235ee481498c921e2d8c6c6768fe5f71b63447561524bd1f78c7d00e7d2a9a95a7a6d25046486398554b7336134b4e287ee25e3e2e72cd0
+EBUILD ghc-8.10.3.ebuild 25774 BLAKE2B 525fb5b481ce0cdabc9194fd967871a5aa9293975f8d409e5143a4393f9148cb32ef808a00fc0eaa9e646958a1468b25985aeb627ce65f2487ce8f75b50317d4 SHA512 e3c9b73a4b9474a8f218d8e8345446add117277a7aad96a4f07c4535d8f032555e2b1180ab254cd227c5697db3e2c73b201ce96b929ef177ea39faec455ff81b
EBUILD ghc-8.2.1.ebuild 24841 BLAKE2B cefde1d2763d9e33b151a3a8ef1f9f5e8cdd308314301bd4ca5420a71c4237f9f8291ed37db88eae9d7d0606277fd3f4e45a15c31e17062e5acca3b989cd5331 SHA512 205a0ec31af711eb874fb2f356d2d3a64e0b5d8b8135ccc96eb9601e61765bf6ff4a4ceac027fef63994a8d17e76957c1ba498e5db9a1ba46ace819f82ec9d4b
EBUILD ghc-8.2.2.ebuild 24810 BLAKE2B 57e39bfa9674dc7fd83fcb3cc80067c29a16f700bfde7027397fdd211679424aca00fd40f41df539f0c998b79b6a536f8d72320c58b134a5fcd55397347b0437 SHA512 fb4fcf882896d527db7ca442fad5f06b2e335a9b33a393d52d9b6cef7d5b186c7918ef2787b2489a8a649b8d65142a35ca93068cf48e89b12cea47ab2b4853f5
EBUILD ghc-8.4.1.ebuild 24628 BLAKE2B a10b6221aea42908be8f79b8c932a7d1dfa756bffd2174d232b6c6a7e27f0e13e477ce262349b79c1042bd279e2e8db8b4a1700f8020543fca6dafa03fbb4472 SHA512 bc4a20691ff721281964b26d8bab83da9de663cd793f6457ed8ffe00a80aa34a65fa2caa133b198874a85b85ed6cb456d5a13c73233e014d1124202f4107afc9
diff --git a/dev-lang/ghc/ghc-8.10.2.ebuild b/dev-lang/ghc/ghc-8.10.2.ebuild
index 567a3225311e..8f5cdd922f31 100644
--- a/dev-lang/ghc/ghc-8.10.2.ebuild
+++ b/dev-lang/ghc/ghc-8.10.2.ebuild
@@ -33,7 +33,7 @@ arch_binaries="$arch_binaries amd64? ( https://slyfox.uni.cx/~slyfox/distfiles/g
#arch_binaries="$arch_binaries ppc64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-ppc64.tbz2 )"
#arch_binaries="$arch_binaries ppc64? ( !big-endian? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-powerpc64le-unknown-linux-gnu.tbz2 ) )"
#arch_binaries="$arch_binaries sparc? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-sparc.tbz2 )"
-#arch_binaries="$arch_binaries x86? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-i686-pc-linux-gnu.tbz2 )"
+arch_binaries="$arch_binaries x86? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-i686-pc-linux-gnu.tbz2 )"
# various ports:
#arch_binaries="$arch_binaries x86-fbsd? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-x86-fbsd.tbz2 )"
@@ -52,7 +52,7 @@ yet_binary() {
# return 0
# ;;
#sparc) return 0 ;;
- #x86) return 0 ;;
+ x86) return 0 ;;
*) return 1 ;;
esac
}
diff --git a/dev-lang/ghc/ghc-8.10.3.ebuild b/dev-lang/ghc/ghc-8.10.3.ebuild
new file mode 100644
index 000000000000..1f1c51fca854
--- /dev/null
+++ b/dev-lang/ghc/ghc-8.10.3.ebuild
@@ -0,0 +1,797 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# to make make a crosscompiler use crossdev and symlink ghc tree into
+# cross overlay. result would look like 'cross-sparc-unknown-linux-gnu/ghc'
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} = ${CHOST} ]] ; then
+ if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then
+ export CTARGET=${CATEGORY/cross-}
+ fi
+fi
+
+inherit autotools bash-completion-r1 eutils flag-o-matic ghc-package
+inherit multilib multiprocessing pax-utils toolchain-funcs prefix
+inherit check-reqs
+DESCRIPTION="The Glasgow Haskell Compiler"
+HOMEPAGE="https://www.haskell.org/ghc/"
+
+# we don't have any binaries yet
+arch_binaries=""
+
+BIN_PV=${PV}
+# sorted!
+#arch_binaries="$arch_binaries alpha? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-alpha.tbz2 )"
+#arch_binaries="$arch_binaries arm? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-armv7a-hardfloat-linux-gnueabi.tbz2 )"
+#arch_binaries="$arch_binaries arm64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-aarch64-unknown-linux-gnu.tbz2 )"
+arch_binaries="$arch_binaries amd64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-x86_64-pc-linux-gnu.tbz2 )"
+#arch_binaries="$arch_binaries ia64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-ia64-fixed-fiw.tbz2 )"
+#arch_binaries="$arch_binaries ppc? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-ppc.tbz2 )"
+#arch_binaries="$arch_binaries ppc64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-ppc64.tbz2 )"
+#arch_binaries="$arch_binaries ppc64? ( !big-endian? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-powerpc64le-unknown-linux-gnu.tbz2 ) )"
+#arch_binaries="$arch_binaries sparc? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-sparc.tbz2 )"
+arch_binaries="$arch_binaries x86? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-i686-pc-linux-gnu.tbz2 )"
+
+# various ports:
+#arch_binaries="$arch_binaries x86-fbsd? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-x86-fbsd.tbz2 )"
+
+# 0 - yet
+yet_binary() {
+ case "${ARCH}" in
+ #alpha) return 0 ;;
+ #arm64) return 0 ;;
+ #arm) return 0 ;;
+ amd64) return 0 ;;
+ #ia64) return 0 ;;
+ #ppc) return 0 ;;
+ #ppc64)
+ # use big-endian && return 0
+ # return 0
+ # ;;
+ #sparc) return 0 ;;
+ x86) return 0 ;;
+ *) return 1 ;;
+ esac
+}
+
+GHC_PV=${PV}
+#GHC_PV=8.10.0.20200123 # uncomment only for -alpha, -beta, -rc ebuilds
+GHC_P=${PN}-${GHC_PV} # using ${P} is almost never correct
+
+SRC_URI="!binary? (
+ https://downloads.haskell.org/ghc/${PV/_/-}/${GHC_P}-src.tar.xz
+ test? ( https://downloads.haskell.org/ghc/${PV/_/-}/${GHC_P}-testsuite.tar.xz )
+)"
+S="${WORKDIR}"/${GHC_P}
+
+[[ -n $arch_binaries ]] && SRC_URI+=" !ghcbootstrap? ( $arch_binaries )"
+
+BUMP_LIBRARIES=(
+ # "hackage-name hackage-version"
+)
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+#KEYWORDS="~amd64 ~x86"
+IUSE="big-endian doc elfutils ghcbootstrap ghcmakebinary +gmp numa profile test"
+IUSE+=" binary"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/perl-5.6.1
+ dev-libs/gmp:0=
+ sys-libs/ncurses:0=[unicode]
+ elfutils? ( dev-libs/elfutils )
+ !ghcmakebinary? ( dev-libs/libffi:= )
+ numa? ( sys-process/numactl )
+"
+
+# This set of dependencies is needed to run
+# prebuilt ghc. We specifically avoid ncurses
+# dependency with:
+# utils/ghc-pkg_HC_OPTS += -DBOOTSTRAPPING
+PREBUILT_BINARY_DEPENDS="
+ !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.17 ) )
+"
+# This set of dependencies is needed to install
+# ghc[binary] in system. terminfo package is linked
+# against ncurses.
+PREBUILT_BINARY_RDEPENDS="${PREBUILT_BINARY_DEPENDS}
+ sys-libs/ncurses:0/6
+"
+
+RDEPEND+="binary? ( ${PREBUILT_BINARY_RDEPENDS} )"
+
+DEPEND="${RDEPEND}
+ doc? ( app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-python/sphinx
+ >=dev-libs/libxslt-1.1.2 )
+ !ghcbootstrap? ( ${PREBUILT_BINARY_DEPENDS} )"
+
+# we build binaries without profiling support
+REQUIRED_USE="
+ ?? ( ghcbootstrap binary )
+ ?? ( profile binary )
+"
+
+# haskell libraries built with cabal in configure mode, #515354
+QA_CONFIGURE_OPTIONS+=" --with-compiler --with-gcc"
+
+is_crosscompile() {
+ [[ ${CHOST} != ${CTARGET} ]]
+}
+
+is_native() {
+ [[ ${CHOST} == ${CBUILD} ]] && [[ ${CHOST} == ${CTARGET} ]]
+}
+
+if ! is_crosscompile; then
+ PDEPEND="!ghcbootstrap? ( >=app-admin/haskell-updater-1.2 )"
+fi
+
+# returns tool prefix for crosscompiler.
+# Example:
+# CTARGET=armv7a-unknown-linux-gnueabi
+# CHOST=x86_64-pc-linux-gnu
+# "armv7a-unknown-linux-gnueabi-"
+# CTARGET=${CHOST}
+# ""
+# Used in tools and library prefix:
+# "${ED}"/usr/bin/$(cross)haddock
+# "${ED}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d"
+
+cross() {
+ if is_crosscompile; then
+ echo "${CTARGET}-"
+ else
+ echo ""
+ fi
+}
+
+append-ghc-cflags() {
+ local persistent compile assemble link
+ local flag ghcflag
+
+ for flag in $*; do
+ case ${flag} in
+ persistent) persistent="yes";;
+ compile) compile="yes";;
+ assemble) assemble="yes";;
+ link) link="yes";;
+ *)
+ [[ ${compile} ]] && ghcflag="-optc${flag}" CFLAGS+=" ${flag}" && GHC_FLAGS+=" ${ghcflag}" &&
+ [[ ${persistent} ]] && GHC_PERSISTENT_FLAGS+=" ${ghcflag}"
+ [[ ${assemble} ]] && ghcflag="-opta${flag}" CFLAGS+=" ${flag}" && GHC_FLAGS+=" ${ghcflag}" &&
+ [[ ${persistent} ]] && GHC_PERSISTENT_FLAGS+=" ${ghcflag}"
+ [[ ${link} ]] && ghcflag="-optl${flag}" LDFLAGS+=" ${flag}" && GHC_FLAGS+=" ${ghcflag}" &&
+ [[ ${persistent} ]] && GHC_PERSISTENT_FLAGS+=" ${ghcflag}"
+ ;;
+ esac
+ done
+}
+
+# $1 - lib name (under libraries/)
+# $2 - lib version
+# example: bump_lib "transformers" "0.4.2.0"
+bump_lib() {
+ local pn=$1 pv=$2
+ local p=${pn}-${pv}
+ local f
+
+ einfo "Bumping ${pn} up to ${pv}"
+
+ for f in ghc.mk GNUmakefile; do
+ mv libraries/"${pn}"/$f "${WORKDIR}"/"${p}"/$f || die
+ done
+ mv libraries/"${pn}" "${WORKDIR}"/"${pn}".old || die
+ mv "${WORKDIR}"/"${p}" libraries/"${pn}" || die
+}
+
+update_SRC_URI() {
+ local p pn pv
+ for p in "${BUMP_LIBRARIES[@]}"; do
+ set -- $p
+ pn=$1 pv=$2
+
+ SRC_URI+=" https://hackage.haskell.org/package/${pn}-${pv}/${pn}-${pv}.tar.gz"
+ done
+}
+
+update_SRC_URI
+
+bump_libs() {
+ local p pn pv
+ for p in "${BUMP_LIBRARIES[@]}"; do
+ set -- $p
+ pn=$1 pv=$2
+
+ bump_lib "${pn}" "${pv}"
+ done
+}
+
+ghc_setup_cflags() {
+ # TODO: plumb CFLAGS and BUILD_CFLAGS to respective CONF_CC_OPTS_STAGE<N>
+ if ! is_native; then
+ export CFLAGS=${GHC_CFLAGS-"-O2 -pipe"}
+ export LDFLAGS=${GHC_LDFLAGS-"-Wl,-O1"}
+ einfo "Crosscompiling mode:"
+ einfo " CHOST: ${CHOST}"
+ einfo " CTARGET: ${CTARGET}"
+ einfo " CFLAGS: ${CFLAGS}"
+ einfo " LDFLAGS: ${LDFLAGS}"
+ einfo " prefix: $(cross)"
+ return
+ fi
+ # We need to be very careful with the CFLAGS we ask ghc to pass through to
+ # gcc. There are plenty of flags which will make gcc produce output that
+ # breaks ghc in various ways. The main ones we want to pass through are
+ # -mcpu / -march flags. These are important for arches like alpha & sparc.
+ # We also use these CFLAGS for building the C parts of ghc, ie the rts.
+ strip-flags
+ strip-unsupported-flags
+
+ # Cmm can't parse line numbers #482086
+ replace-flags -ggdb[3-9] -ggdb2
+
+ GHC_FLAGS=""
+ GHC_PERSISTENT_FLAGS=""
+ for flag in ${CFLAGS}; do
+ case ${flag} in
+
+ # Ignore extra optimisation (ghc passes -O to gcc anyway)
+ # -O2 and above break on too many systems
+ -O*) ;;
+
+ # Arch and ABI flags are what we're really after
+ -m*) append-ghc-cflags compile assemble ${flag};;
+
+ # Sometimes it's handy to see backtrace of RTS
+ # to get an idea what happens there
+ -g*) append-ghc-cflags compile ${flag};;
+
+ # Ignore all other flags, including all -f* flags
+ esac
+ done
+
+ for flag in ${LDFLAGS}; do
+ append-ghc-cflags link ${flag}
+ done
+
+ # GHC uses ${CBUILD}-gcc, ${CHOST}-gcc and ${CTARGET}-gcc at a single build.
+ # Skip any gentoo-specific tweaks for cross-case to avoid passing unsupported
+ # options to gcc.
+ if is_native; then
+ # prevent from failing to build unregisterised ghc:
+ # https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg171602.html
+ use ppc64 && append-ghc-cflags persistent compile -mminimal-toc
+ fi
+}
+
+# substitutes string $1 to $2 in files $3 $4 ...
+relocate_path() {
+ local from=$1
+ local to=$2
+ shift 2
+ local file=
+ for file in "$@"
+ do
+ sed -i -e "s|$from|$to|g" \
+ "$file" || die "path relocation failed for '$file'"
+ done
+}
+
+# changes hardcoded ghc paths and updates package index
+# $1 - new absolute root path
+relocate_ghc() {
+ local to=$1 ghc_v=${BIN_PV}
+
+ # libdir for prebuilt binary and for current system may mismatch
+ # It does for prefix installation for example: bug #476998
+ local bin_ghc_prefix=${WORKDIR}/usr
+ local bin_libpath=$(echo "${bin_ghc_prefix}"/lib*)
+ local bin_libdir=${bin_libpath#${bin_ghc_prefix}/}
+
+ # backup original script to use it later after relocation
+ local gp_back="${T}/ghc-pkg-${ghc_v}-orig"
+ cp "${WORKDIR}/usr/bin/ghc-pkg-${ghc_v}" "$gp_back" || die "unable to backup ghc-pkg wrapper"
+
+ if [[ ${bin_libdir} != $(get_libdir) ]]; then
+ einfo "Relocating '${bin_libdir}' to '$(get_libdir)' (bug #476998)"
+ # moving the dir itself is not strictly needed
+ # but then USE=binary would result in installing
+ # in '${bin_libdir}'
+ mv "${bin_ghc_prefix}/${bin_libdir}" "${bin_ghc_prefix}/$(get_libdir)" || die
+
+ relocate_path "/usr/${bin_libdir}" "/usr/$(get_libdir)" \
+ "${WORKDIR}/usr/bin/ghc-${ghc_v}" \
+ "${WORKDIR}/usr/bin/ghci-${ghc_v}" \
+ "${WORKDIR}/usr/bin/ghc-pkg-${ghc_v}" \
+ "${WORKDIR}/usr/bin/hsc2hs" \
+ "${WORKDIR}/usr/bin/runghc-${ghc_v}" \
+ "$gp_back" \
+ "${WORKDIR}/usr/$(get_libdir)/${PN}-${ghc_v}/package.conf.d/"*
+ fi
+
+ # Relocate from /usr to ${EPREFIX}/usr
+ relocate_path "/usr" "${to}/usr" \
+ "${WORKDIR}/usr/bin/ghc-${ghc_v}" \
+ "${WORKDIR}/usr/bin/ghci-${ghc_v}" \
+ "${WORKDIR}/usr/bin/ghc-pkg-${ghc_v}" \
+ "${WORKDIR}/usr/bin/haddock-ghc-${ghc_v}" \
+ "${WORKDIR}/usr/bin/hp2ps" \
+ "${WORKDIR}/usr/bin/hpc" \
+ "${WORKDIR}/usr/bin/hsc2hs" \
+ "${WORKDIR}/usr/bin/runghc-${ghc_v}" \
+ "${WORKDIR}/usr/$(get_libdir)/${PN}-${ghc_v}/package.conf.d/"*
+
+ # this one we will use to regenerate cache
+ # so it should point to current tree location
+ relocate_path "/usr" "${WORKDIR}/usr" "$gp_back"
+
+ if use prefix; then
+ hprefixify "${bin_libpath}"/${PN}*/settings
+ fi
+
+ # regenerate the binary package cache
+ "$gp_back" recache || die "failed to update cache after relocation"
+ rm "$gp_back"
+}
+
+ghc-check-reqs() {
+ # These are pessimistic values (slightly bigger than worst-case)
+ # Worst case is UNREG USE=profile ia64. See bug #611866 for some
+ # numbers on various arches.
+ CHECKREQS_DISK_BUILD=8G
+ CHECKREQS_DISK_USR=2G
+ # USE=binary roughly takes
+ use binary && CHECKREQS_DISK_BUILD=4G
+
+ "$@"
+}
+
+pkg_pretend() {
+ ghc-check-reqs check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+ ghc-check-reqs check-reqs_pkg_setup
+
+ # quiet portage about prebuilt binaries
+ use binary && QA_PREBUILT="*"
+
+ [[ ${MERGE_TYPE} == binary ]] && return
+
+ if use ghcbootstrap; then
+ ewarn "You requested ghc bootstrapping, this is usually only used"
+ ewarn "by Gentoo developers to make binary .tbz2 packages."
+
+ [[ -z $(type -P ghc) ]] && \
+ die "Could not find a ghc to bootstrap with."
+ else
+ if ! yet_binary; then
+ eerror "Please try emerging with USE=ghcbootstrap and report build"
+ eerror "sucess or failure to the haskell team (haskell@gentoo.org)"
+ die "No binary available for '${ARCH}' arch yet, USE=ghcbootstrap"
+ fi
+ fi
+}
+
+src_unpack() {
+ # Create the ${S} dir if we're using the binary version
+ use binary && mkdir "${S}"
+
+ # the Solaris and Darwin binaries from ghc (maeder) need to be
+ # unpacked separately, so prevent them from being unpacked
+ local ONLYA=${A}
+ case ${CHOST} in
+ *-darwin* | *-solaris*) ONLYA=${GHC_P}-src.tar.xz ;;
+ esac
+ unpack ${ONLYA}
+}
+
+src_prepare() {
+ ghc_setup_cflags
+
+ if ! use ghcbootstrap && [[ ${CHOST} != *-darwin* && ${CHOST} != *-solaris* ]]; then
+ # Modify the wrapper script from the binary tarball to use GHC_PERSISTENT_FLAGS.
+ # See bug #313635.
+ sed -i -e "s|\"\$topdir\"|\"\$topdir\" ${GHC_PERSISTENT_FLAGS}|" \
+ "${WORKDIR}/usr/bin/ghc-${BIN_PV}"
+
+ # allow hardened users use vanilla binary to bootstrap ghc
+ # ghci uses mmap with rwx protection at it implements dynamic
+ # linking on it's own (bug #299709)
+ pax-mark -m "${WORKDIR}/usr/$(get_libdir)/${PN}-${BIN_PV}/bin/ghc"
+ fi
+
+ if use binary; then
+ if use prefix; then
+ relocate_ghc "${EPREFIX}"
+ fi
+
+ # Move unpacked files to the expected place
+ mv "${WORKDIR}/usr" "${S}"
+ eapply_user
+ else
+ if ! use ghcbootstrap; then
+ case ${CHOST} in
+ *-darwin* | *-solaris*)
+ # UPDATE ME for ghc-7
+ mkdir "${WORKDIR}"/ghc-bin-installer || die
+ pushd "${WORKDIR}"/ghc-bin-installer > /dev/null || die
+ use sparc-solaris && unpack ghc-6.10.4-sparc-sun-solaris2.tar.bz2
+ use x86-solaris && unpack ghc-7.0.3-i386-unknown-solaris2.tar.bz2
+ use x86-macos && unpack ghc-7.4.1-i386-apple-darwin.tar.bz2
+ use x64-macos && unpack ghc-7.4.1-x86_64-apple-darwin.tar.bz2
+ popd > /dev/null
+
+ pushd "${WORKDIR}"/ghc-bin-installer/ghc-[67].?*.? > /dev/null || die
+ # fix the binaries so they run, on Solaris we need an
+ # LD_LIBRARY_PATH which has our prefix libdirs, on
+ # Darwin we need to replace the frameworks with our libs
+ # from the prefix fix before installation, because some
+ # of the tools are actually used during configure/make
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ export LD_LIBRARY_PATH="${EPREFIX}/$(get_libdir):${EPREFIX}/usr/$(get_libdir):${LD_LIBRARY_PATH}"
+ elif [[ ${CHOST} == *-darwin* ]] ; then
+ local readline_framework=GNUreadline.framework/GNUreadline
+ local gmp_framework=/opt/local/lib/libgmp.10.dylib
+ local ncurses_file=/opt/local/lib/libncurses.5.dylib
+ for binary in $(scanmacho -BRE MH_EXECUTE -F '%F' .) ; do
+ install_name_tool -change \
+ ${readline_framework} \
+ "${EPREFIX}"/lib/libreadline.dylib \
+ ${binary} || die
+ install_name_tool -change \
+ ${gmp_framework} \
+ "${EPREFIX}"/usr/lib/libgmp.dylib \
+ ${binary} || die
+ install_name_tool -change \
+ ${ncurses_file} \
+ "${EPREFIX}"/usr/lib/libncurses.dylib \
+ ${binary} || die
+ done
+ # we don't do frameworks!
+ sed -i \
+ -e 's/\(frameworks = \)\["GMP"\]/\1[]/g' \
+ -e 's/\(extraLibraries = \)\["m"\]/\1["m","gmp"]/g' \
+ rts/package.conf.in || die
+ fi
+
+ # it is autoconf, but we really don't want to give it too
+ # many arguments, in fact we do the make in-place anyway
+ ./configure --prefix="${WORKDIR}"/usr || die
+ make install || die
+ popd > /dev/null
+ ;;
+ *)
+ relocate_ghc "${WORKDIR}"
+ ;;
+ esac
+ fi
+
+ sed -i -e "s|\"\$topdir\"|\"\$topdir\" ${GHC_PERSISTENT_FLAGS}|" \
+ "${S}/ghc/ghc.wrapper"
+
+ cd "${S}" # otherwise eapply will break
+
+ eapply "${FILESDIR}"/${PN}-7.0.4-CHOST-prefix.patch
+ eapply "${FILESDIR}"/${PN}-8.2.1-darwin.patch
+ eapply "${FILESDIR}"/${PN}-7.8.3-prim-lm.patch
+ eapply "${FILESDIR}"/${PN}-8.8.1-revert-CPP.patch
+ eapply "${FILESDIR}"/${PN}-8.10.1-allow-cross-bootstrap.patch
+
+ # a bunch of crosscompiler patches
+ # needs newer version:
+ #eapply "${FILESDIR}"/${PN}-8.2.1_rc1-hp2ps-cross.patch
+
+ # mingw32 target
+ pushd "${S}/libraries/Win32"
+ eapply "${FILESDIR}"/${PN}-8.2.1_rc1-win32-cross-2-hack.patch # bad workaround
+ popd
+
+ bump_libs
+
+ eapply_user
+ # as we have changed the build system
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ if ! use binary; then
+ # initialize build.mk
+ echo '# Gentoo changes' > mk/build.mk
+
+ # Put docs into the right place, ie /usr/share/doc/ghc-${GHC_PV}
+ echo "docdir = ${EPREFIX}/usr/share/doc/$(cross)${P}" >> mk/build.mk
+ echo "htmldir = ${EPREFIX}/usr/share/doc/$(cross)${P}" >> mk/build.mk
+
+ # We also need to use the GHC_FLAGS flags when building ghc itself
+ echo "SRC_HC_OPTS+=${HCFLAGS} ${GHC_FLAGS}" >> mk/build.mk
+ echo "SRC_CC_OPTS+=${CFLAGS}" >> mk/build.mk
+ echo "SRC_LD_OPTS+=${LDFLAGS}" >> mk/build.mk
+ # Speed up initial Cabal bootstrap
+ echo "utils/ghc-cabal_dist_EXTRA_HC_OPTS+=$(ghc-make-args)" >> mk/build.mk
+
+ # We can't depend on haddock except when bootstrapping when we
+ # must build docs and include them into the binary .tbz2 package
+ # app-text/dblatex is not in portage, can not build PDF or PS
+ echo "BUILD_SPHINX_PDF = NO" >> mk/build.mk
+ echo "BUILD_SPHINX_HTML = $(usex doc YES NO)" >> mk/build.mk
+ echo "BUILD_MAN = $(usex doc YES NO)" >> mk/build.mk
+
+ # this controls presence on 'xhtml' and 'haddock' in final install
+ echo "HADDOCK_DOCS = YES" >> mk/build.mk
+
+ # not used outside of ghc's test
+ if [[ -n ${GHC_BUILD_DPH} ]]; then
+ echo "BUILD_DPH = YES" >> mk/build.mk
+ else
+ echo "BUILD_DPH = NO" >> mk/build.mk
+ fi
+
+ # Any non-native build has to skip as it needs
+ # target haddock binary to be runnabine.
+ if ! is_native; then
+ # disable docs generation as it requires running stage2
+ echo "HADDOCK_DOCS=NO" >> mk/build.mk
+ echo "BUILD_SPHINX_HTML=NO" >> mk/build.mk
+ echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
+ fi
+
+ if is_crosscompile; then
+ # Install ghc-stage1 crosscompiler instead of
+ # ghc-stage2 cross-built compiler.
+ echo "Stage1Only=YES" >> mk/build.mk
+ fi
+
+ # allows overriding build flavours for libraries:
+ # v - vanilla (static libs)
+ # p - profiled
+ # dyn - shared libraries
+ # example: GHC_LIBRARY_WAYS="v dyn"
+ if [[ -n ${GHC_LIBRARY_WAYS} ]]; then
+ echo "GhcLibWays=${GHC_LIBRARY_WAYS}" >> mk/build.mk
+ fi
+ echo "BUILD_PROF_LIBS = $(usex profile YES NO)" >> mk/build.mk
+
+ # Get ghc from the unpacked binary .tbz2
+ # except when bootstrapping we just pick ghc up off the path
+ if ! use ghcbootstrap; then
+ export PATH="${WORKDIR}/usr/bin:${PATH}"
+ fi
+
+ echo "INTEGER_LIBRARY = $(usex gmp integer-gmp integer-simple)" >> mk/build.mk
+
+ # don't strip anything. Very useful when stage2 SIGSEGVs on you
+ echo "STRIP_CMD = :" >> mk/build.mk
+
+ local econf_args=()
+
+ # GHC embeds toolchain it was built by and uses it later.
+ # Don't allow things like ccache or versioned binary slip.
+ # We use stable thing across gcc upgrades.
+ # User can use EXTRA_ECONF=CC=... to override this default.
+ econf_args+=(
+ AR=${CTARGET}-ar
+ CC=${CTARGET}-gcc
+ # these should be inferred by GHC but ghc defaults
+ # to using bundled tools on windows.
+ Windres=${CTARGET}-windres
+ DllWrap=${CTARGET}-dllwrap
+ # we set the linker explicitly below
+ --disable-ld-override
+ )
+ case ${CTARGET} in
+ arm*)
+ # ld.bfd-2.28 does not work for ghc. Force ld.gold
+ # instead. This should be removed once gentoo gets
+ # a fix for R_ARM_COPY bug: https://sourceware.org/PR16177
+ econf_args+=(LD=${CTARGET}-ld.gold)
+ ;;
+ sparc*)
+ # ld.gold-2.28 does not work for ghc. Force ld.bfd
+ # instead. This should be removed once gentoo gets
+ # a fix for missing --no-relax support bug:
+ # https://sourceware.org/ml/binutils/2017-07/msg00183.html
+ econf_args+=(LD=${CTARGET}-ld.bfd)
+ ;;
+ *)
+ econf_args+=(LD=${CTARGET}-ld)
+ esac
+
+ if [[ ${CBUILD} != ${CHOST} ]]; then
+ # GHC bug: ghc claims not to support cross-building.
+ # It does, but does not distinct --host= value
+ # for stage1 and stage2 compiler.
+ econf_args+=(--host=${CBUILD})
+ fi
+
+ if use ghcmakebinary; then
+ # When building booting libary we are trying to
+ # bundle or restrict most of external depends
+ # with unstable ABI:
+ # - embed libffi (default GHC behaviour)
+ # - disable ncurses support for ghci (via haskeline)
+ # https://bugs.gentoo.org/557478
+ # - disable ncurses support for ghc-pkg
+ echo "libraries/haskeline_CONFIGURE_OPTS += --flag=-terminfo" >> mk/build.mk
+ echo "utils/ghc-pkg_HC_OPTS += -DBOOTSTRAPPING" >> mk/build.mk
+ elif is_native; then
+ # using ${GTARGET}'s libffi is not supported yet:
+ # GHC embeds full path for ffi includes without /usr/${CTARGET} account.
+ econf_args+=(--with-system-libffi)
+ econf_args+=(--with-ffi-includes=$($(tc-getPKG_CONFIG) libffi --cflags-only-I | sed -e 's@^-I@@'))
+ fi
+
+ einfo "Final mk/build.mk:"
+ cat mk/build.mk || die
+
+ econf ${econf_args[@]} \
+ --enable-bootstrap-with-devel-snapshot \
+ $(use_enable elfutils dwarf-unwind) \
+ $(use_enable numa)
+
+ if [[ ${PV} == *9999* ]]; then
+ GHC_PV="$(grep 'S\[\"PACKAGE_VERSION\"\]' config.status | sed -e 's@^.*=\"\(.*\)\"@\1@')"
+ GHC_P=${PN}-${GHC_PV}
+ fi
+ fi # ! use binary
+}
+
+src_compile() {
+ if ! use binary; then
+ # Stage1Only crosscompiler does not build stage2
+ if ! is_crosscompile; then
+ # 1. build/pax-mark compiler binary first
+ emake ghc/stage2/build/tmp/ghc-stage2
+ # 2. pax-mark (bug #516430)
+ pax-mark -m ghc/stage2/build/tmp/ghc-stage2
+ # 2. build/pax-mark haddock using ghc-stage2
+ if is_native; then
+ # non-native build does not build haddock
+ # due to HADDOCK_DOCS=NO, but it could.
+ emake utils/haddock/dist/build/tmp/haddock
+ pax-mark -m utils/haddock/dist/build/tmp/haddock
+ fi
+ fi
+ # 3. and then all the rest
+ emake all
+ fi # ! use binary
+}
+
+src_test() {
+ # TODO: deal with:
+ # - sandbox (pollutes environment)
+ # - extra packages (to extend testsuite coverage)
+ # bits are taken from 'validate'
+ local make_test_target='test' # can be fulltest
+ # not 'emake' as testsuite uses '$MAKE' without jobserver available
+ make $make_test_target stage=2 THREADS=$(makeopts_jobs)
+}
+
+src_install() {
+ if use binary; then
+ use prefix && mkdir -p "${ED}"
+ mv "${S}/usr" "${ED}"
+ else
+ [[ -f VERSION ]] || emake VERSION
+
+ # -j1 due to a rare race in install script:
+ # make --no-print-directory -f ghc.mk phase=final install
+ # /usr/lib/portage/python3.4/ebuild-helpers/xattr/install -c -m 755 \
+ # -d "/tmp/portage-tmpdir/portage/cross-armv7a-unknown-linux-gnueabi/ghc-9999/image/usr/lib64/armv7a-unknown-linux-gnueabi-ghc-8.3.20170404/include"
+ # /usr/lib/portage/python3.4/ebuild-helpers/xattr/install -c -m 644 utils/hsc2hs/template-hsc.h \
+ # "/tmp/portage-tmpdir/portage/cross-armv7a-unknown-linux-gnueabi/ghc-9999/image/usr/lib64/armv7a-unknown-linux-gnueabi-ghc-8.3.20170404"
+ # /usr/bin/install: cannot create regular file \
+ # '/tmp/portage-tmpdir/portage/cross-armv7a-unknown-linux-gnueabi/ghc-9999/image/usr/lib64/armv7a-unknown-linux-gnueabi-ghc-8.3.20170404': No such file or directory
+ emake -j1 install DESTDIR="${D}"
+
+ # Skip for cross-targets as they all share target location:
+ # /usr/share/doc/ghc-9999/
+ if ! is_crosscompile; then
+ dodoc "distrib/README" "LICENSE" "VERSION"
+ fi
+
+ # rename ghc-shipped files to avoid collision
+ # of external packages. Motivating example:
+ # user had installed:
+ # dev-lang/ghc-7.8.4-r0 (with transformers-0.3.0.0)
+ # dev-haskell/transformers-0.4.2.0
+ # then user tried to update to
+ # dev-lang/ghc-7.8.4-r1 (with transformers-0.4.2.0)
+ # this will lead to single .conf file collision.
+ local shipped_conf renamed_conf
+ local package_confdir="${ED}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d"
+ for shipped_conf in "${package_confdir}"/*.conf; do
+ # rename 'pkg-ver-id.conf' to 'pkg-ver-id-gentoo-${PF}.conf'
+ renamed_conf=${shipped_conf%.conf}-gentoo-${PF}.conf
+ mv "${shipped_conf}" "${renamed_conf}" || die
+ done
+
+ # remove link, but leave 'haddock-${GHC_P}'
+ rm -f "${ED}"/usr/bin/$(cross)haddock
+
+ if ! is_crosscompile; then
+ newbashcomp "${FILESDIR}"/ghc-bash-completion ghc-pkg
+ newbashcomp utils/completion/ghc.bash ghc
+ fi
+ fi
+
+ # path to the package.cache
+ local package_confdir="${ED}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d"
+ PKGCACHE="${package_confdir}"/package.cache
+ # copy the package.conf.d, including timestamp, save it so we can help
+ # users that have a broken package.conf.d
+ cp -pR "${package_confdir}"{,.initial} || die "failed to backup intial package.conf.d"
+
+ # copy the package.conf, including timestamp, save it so we later can put it
+ # back before uninstalling, or when upgrading.
+ cp -p "${PKGCACHE}"{,.shipped} \
+ || die "failed to copy package.conf.d/package.cache"
+
+ if is_crosscompile; then
+ # When we build a cross-compiler the layout is the following:
+ # usr/lib/${CTARGET}-ghc-${VER}/ contains target libraries
+ # but
+ # usr/lib/${CTARGET}-ghc-${VER}/bin/ directory
+ # containst host binaries (modulo bugs).
+
+ # Portage's stripping mechanism does not skip stripping
+ # foreign binaries. This frequently causes binaries to be
+ # broken.
+ #
+ # Thus below we disable stripping of target libraries and allow
+ # stripping hosts executables.
+ dostrip -x "/usr/$(get_libdir)/$(cross)${GHC_P}"
+ dostrip "/usr/$(get_libdir)/$(cross)${GHC_P}/bin"
+ fi
+}
+
+pkg_preinst() {
+ # have we got an earlier version of ghc installed?
+ if has_version "<${CATEGORY}/${PF}"; then
+ haskell_updater_warn="1"
+ fi
+}
+
+pkg_postinst() {
+ ghc-reregister
+
+ # path to the package.cache
+ PKGCACHE="${EROOT}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d/package.cache"
+
+ # give the cache a new timestamp, it must be as recent as
+ # the package.conf.d directory.
+ touch "${PKGCACHE}"
+
+ if [[ "${haskell_updater_warn}" == "1" ]]; then
+ ewarn
+ ewarn "\e[1;31m************************************************************************\e[0m"
+ ewarn
+ ewarn "You have just upgraded from an older version of GHC."
+ ewarn "You may have to run"
+ ewarn " 'haskell-updater'"
+ ewarn "to rebuild all ghc-based Haskell libraries."
+ ewarn
+ ewarn "\e[1;31m************************************************************************\e[0m"
+ ewarn
+ fi
+}
+
+pkg_prerm() {
+ PKGCACHE="${EROOT}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d/package.cache"
+ rm -rf "${PKGCACHE}"
+
+ cp -p "${PKGCACHE}"{.shipped,}
+}
+
+pkg_postrm() {
+ ghc-package_pkg_postrm
+}
diff --git a/dev-lang/julia-bin/Manifest b/dev-lang/julia-bin/Manifest
index e26005f7e5ae..58ce2802de2c 100644
--- a/dev-lang/julia-bin/Manifest
+++ b/dev-lang/julia-bin/Manifest
@@ -1,22 +1,13 @@
-DIST julia-1.2.0-freebsd-x86_64.tar.gz 82750080 BLAKE2B 2b95fedc8dbbc138c0794f42518cce280c62bb2442d6a0d53b809f21768497937b037e1e886cff19cb40d7a63f3e2ee8da0314250cab52e8b139724baff3ee91 SHA512 9c9af2e2346553ea5658ab5a9fe88539605774cd2737ac9bfb240b7fa3f9fd46f746d5dbdff2dd7405e8fbd33208c12a335b7d80cd0c78c62287ae5eb470fc8e
-DIST julia-1.2.0-linux-i686.tar.gz 87810731 BLAKE2B 1d72bf469f1dd3667ea00d038d18e20c10d9ceb579c61b2f30603bcd7ea55875423e4d54cbb774cfcc20044528f3ccd196131bb17cbaf7bf780fc5667c387e1e SHA512 ecd62047a0e36fe85a0442733949b19ca5d877fc2d2bced80566d1fcd6906345f66fb9114b6e687594e514b8c952d0352de5982f77f127e5196288431a1f64a9
-DIST julia-1.2.0-linux-x86_64.tar.gz 91990555 BLAKE2B 125313e7e53bddfcd64251fa2794e5b9d4bbbadb6100c1dc8f86039e13520859117f8ffcc2611d085805c9a80ad3544e88dd0e37803609e3b8b4097867fa8a5c SHA512 47e966d12204ffbefcdd8a60e850994df2247c37ee601f4147710d80e8e576672daaffe6d35d37fef644ea725f46d893832f096e24d938af856328299ad920d5
-DIST julia-1.3.0-freebsd-x86_64.tar.gz 86423604 BLAKE2B 5e36e49ebb708c4ec1c998b23861f69238b9bb2af337b0977df1a2de170869037577d422d3d2ddb359e537b9c75ba8cbe8e5963d42a832dba19f8bb4022a264d SHA512 b2c4a0e5ce379523ee606067d50b980fb9be6977f7d3d576b131183edfc72098be71bf0bede20d44f72ad7d0b414fe56eeaa67ca1cb47d36823721784da8526b
-DIST julia-1.3.0-linux-aarch64.tar.gz 78426016 BLAKE2B da758349e342a92194ff24e74dfb89ed9676bb97d8ffc15b80a305a5d75627b08a8939349b6de6aea294d64dd1386d1d24f5a8c793b368df38b86d06282222b7 SHA512 fa2a34aecbf83bd17f6ea24b55d30cfaab1916ea1c17b16271bbffaf93f430c262eb6d0ee9a9737a361a8dfad47126478ffa841c70cf9899e426607e12913e8b
-DIST julia-1.3.0-linux-armv7l.tar.gz 84672004 BLAKE2B e8d20943195a909d2db821f30df79f5020eb21ded179b795518db77772f5216fd04d88a7e21ef518b819349f6c3d5b681b1b7c7ff2ff2bf89a14d6ad48456f5f SHA512 2f6328a66f24aae0e6ed0ed5abb504805cf4a719a7ba30009966a1774f4e72630734c661c4de49cca37f5fa0fa766fa2eda29f01ee21ee3e2e3af81d2291f2dc
-DIST julia-1.3.0-linux-i686.tar.gz 90629130 BLAKE2B 027b045d71c209c3a935ac37d07fa89201d55b63e374038f5891fa751a87546aff63ffa0641f6b5041b4fbf1ed018cc6a809b56d3f732c134e3b98501fe92885 SHA512 fd772d0d3dbc11c357df26f980569315893a391604755e81421b6001b09e8e939f9a8e4bd0e0faa428fb4b08ac8f24a39bbe0875417630bf127d8b41324a9116
-DIST julia-1.3.0-linux-x86_64.tar.gz 95497903 BLAKE2B 2f67eb538c0277edaa97e95122bccf0f5822b7fc7a64a843aad7d421a22167de758a94011bf0e95a2b8b29c7d04e2b65451807bb36742206e88fcceab304f019 SHA512 4b286172622a2817378dae0720fa0a08d4f361b60adfb9685136fabc83d42bf439a22147051fb69d501e14947e42d2999ab081cfb3f60c44ee5d6a906758aaf3
-DIST julia-1.4.0-freebsd-x86_64.tar.gz 90034224 BLAKE2B 3150870a630c43d21520a52a9c009b777105f978f5b735c22ac1fa2a7599e30e09b1b7064149a83fedc52e7783b429e470358b82f21c51239b7761506269f066 SHA512 9f8cbe2065e05198f2a3edfdae17e2afa31c4a4c08ba4c3bcc31215ff6541c75a147009f87bd1028b6cdfac1f8616e07a948c8f8ee2586e61eacac53e33e3e87
-DIST julia-1.4.0-linux-aarch64.tar.gz 81685205 BLAKE2B 1a07a3ef94423d327e88b5cccb38360b23540806defeee1c64dc0656beee1b39008ca529e3d0cef7aab1e8947adb62fbbb1c6d248a0de2c63f3a5d14b3a5b684 SHA512 51b79e7b1fc85f67a26a595e84f88b656996cb8e14cd634076621b07690fc4f5d1ff1d71ce3a75243501bb7853bffda5d7428f03797570913cd3170dc13f651f
-DIST julia-1.4.0-linux-i686.tar.gz 94549552 BLAKE2B b058d81f55e7e579cff5b31054def68193be5032de02f09f6c4239e13bd73a630eee8ebd5f9ccd712f0e3be406932de51951202ec37b1534f20962db4eff5472 SHA512 f0363103713900a682fef900a745732714cd3dcbedbe2aa368afff768c24603241fc2f4be7419caf674e086f6cac59a8b14f3770e578959b7296cd5e26d6d5c9
-DIST julia-1.4.0-linux-x86_64.tar.gz 98969249 BLAKE2B bf0a79a8a8f1ed8c5668f2b2836414f8c0ae10199ee96eefea3d5bfefc0dde0902659556a572c3de6982477183d91f8e2f6d38f7334c50872f3257055a5310e3 SHA512 e2ac637d2bbe9ec4b900bc8f59263fdaa573cbe39ffbafd0e8280a5ba1906052f72816e4b5a12fab34f5b05ffd3f5cf95703c00d88f2f6ab6f022c3504cf1c95
DIST julia-1.5.2-freebsd-x86_64.tar.gz 95898744 BLAKE2B dddafa63acc943bfc06eeae3fa9a3ef9b7484b29b88d37bf064ded255c836678f5d02dec0f7fa788bb763894acae5c51937882ed0391dcf66792198fec7dbce7 SHA512 13e4d1a7e01cd759d64c8ec3d85501904439fde5a9e2cb394963a8977035cd33b241fab27bf0642b069f202ead1d6c84f633002df3b27c4aa60e7adf45a3a8b1
DIST julia-1.5.2-linux-aarch64.tar.gz 97088109 BLAKE2B 01aa5337cd1fc15655b596959cef8e54b56d8bb11fbced728df301a197aad550f0113b50c0b9e3cab34ea1082e176ced0398cde4e1d7c6d14a72b9a9cab937ea SHA512 09ac5360faae81eb9c78da5831d20f1f2d2c7a93561f6f2857015b579796a059cdecf529c283c9c37dd55163ce3e7b6cd175ee02734f1e11aa12f1163bd6587c
DIST julia-1.5.2-linux-i686.tar.gz 101473619 BLAKE2B a87cb4cb38236e87041fac1012841d5aed25383bfb212188f4c23f4a961654d8a3b03b85dd5563f83620aa98323e2d2692107eda47559cf9ae332006453a139d SHA512 2ceb56bcae051815d585d3f36b4ae323ad7a3e383e75c07d87cb555fc2463d1a6017fd120f52a1f7110b803bfa546a34e62e8958765b52124612782ac3daf403
DIST julia-1.5.2-linux-x86_64.tar.gz 105324048 BLAKE2B 410db75cb5b7ed269fd0d8f827773f50ff127ded3346e2f5fe908a1f9c0dd0f00b7600c5343853aaa0dfec3a616f657c52c96290f9c6ea012efcbc2a2b72e701 SHA512 5d14369b6296aa5fa0f7a58ce6b85dc25612ef508ee8dc1dcce7fe3a64de62b77daf419ea5d3a0a78345345787cb3ed563717ecc04df0c4d68b6d60593750f62
DIST julia-1.5.2-musl-x86_64.tar.gz 101730667 BLAKE2B 1b213a246779815b79f47e6c287f0c7eb438dce42bc9e3e39681dcc0818c7a8c81f7040443c06fd323adb693c96b61cc69099c5df375cae119020ba9d0bb11cd SHA512 5cfbf7938f50286077e132815e10ce4e1e5a589a772ae3b946488d3126713e72ba393e1a45b3bc38b5bc43fc183e7f99b622c8c0d9d939330b142cdee24fccb3
-EBUILD julia-bin-1.2.0.ebuild 1034 BLAKE2B b179f39c2fd588cbe734a4c358e767344c01093cbdfd95cfcebff0a897fd3e57e754f3a7f1c200ebbb18635ba559eec305fde87db76a91db0e0b2a9f17cc6fd8 SHA512 d2e3b6da22ceac83f11a7a9e98f51183654bc08b60bada2dd7a889c73176cb914c9831b4b2c37c2b0a3cbb17abddfce5e5a1e2f1392de92fbaf44a26c555c422
-EBUILD julia-bin-1.3.0.ebuild 1284 BLAKE2B ade35ecb39d7389ba540615931495aa1f4e36eaefb575e3df7bd40efebab72682ab0e8ae02137e310c73ac499444698b46981da3ce550e7541b8ad01a5ad3cf5 SHA512 e3dccb628355689f766f0a8c689c577f430d8bd9dec4d8721e6352f7497507256646ec5cf745562dc3a75366ec5d4333b14cce5f33faf526ce447ebde4790143
-EBUILD julia-bin-1.4.0.ebuild 1180 BLAKE2B a5609546cd9a4ce53ffae2bb4d763edc63af157caad83bad62a008e5535204018b0d26c17fde28f8bb2f27a6a4c08e03311ddb4fea57fabb4b6a37465390a276 SHA512 60a3a680eaef3210f7a1716bfb29e526c0062879bb09b80023567d897db5fbef1cc1549c7de39e10ac4f42ecd43284e530a247fcebca2c684b8c09a072040254
-EBUILD julia-bin-1.5.2.ebuild 1224 BLAKE2B c9cda2c05d4eb4c5b732c6df675cfb148a0dbda6c31699245e4e92b1d4fc37173036027d49813cdbfd909457f4b6a80502d6b88acd0dc4da5f07d67738910743 SHA512 bd619fa0b3d0048f049da2931c39bdb0147bd6b7a72076049679ee7b32a2061332c37a20589672ffb955e01a755dbbf4636ce43f728415cf07d7f87e167d2f09
+DIST julia-1.5.3-freebsd-x86_64.tar.gz 95919875 BLAKE2B 620c295a3d0fa9a31ed01b936ddabd001cee621969f61a9165e03ebee05cd1384c62bccd95f4df15ba49f9d6feec16f05c367820c0907919f67809ca136b70bc SHA512 e767bfb3cef034262dc12e0da4006e80d20cc7c971906f5ad355c971e7c751830972a2f4aa47d18fc2a79eb5454f8f160c0c38d536510291690fa6e1da3c83a3
+DIST julia-1.5.3-linux-aarch64.tar.gz 97086173 BLAKE2B 5353a516f24c151d6213ed4c6e189a8ac68933012bcda06084b5e6c1f3a230ebca896b1e8dd29b345c312f323283b4f9045efcece655ef055a797cd5eefbd774 SHA512 0988e229dc9f44230af84796dfb059aa87809c6af5d0e8a7debc4b696e98c45ccc042f956f678819e71afe29d5619421106208c6dce5dfe47aea98482b22c1e3
+DIST julia-1.5.3-linux-i686.tar.gz 101362522 BLAKE2B aba1270fc85cc1afc19856768a39d1cf1c40fb32b676be5da47dc7747294299a044a5202c547d19ad8aa56060b04d7583d7e7c19176f2fdbcccb863593fffccb SHA512 0abaab22626cbd4da4a2389b2aca639f993aa442a8423cba2fda3d9693e0dab4f5b82592691ad74bb7ddf1ae48739406b61fe76b7da626a1f22fe01077b011d2
+DIST julia-1.5.3-linux-x86_64.tar.gz 105260711 BLAKE2B b132fbe090ca4a4cba518efcf2e475f0ceaebcbe2e5ef4eee33697909995ea58d97c3e5015b96eaf2ff23e5ff6b5b67eed62b94a34580961d5671c4f019d4847 SHA512 f0460da198797c92d39d361278be6959e90b2b3d08e070b705c1a5de3a17c0e6b0b010a397d0b02e613d060959fff14c074cf12fdeb956e8f8565989f084d86b
+DIST julia-1.5.3-musl-x86_64.tar.gz 101802400 BLAKE2B da69c1b4ff5bde8692c3fc9ed3d60fd655a32121a0e11a4d1f00b5e4494cc4bcdb0e323a2644cca3a291fa7f7604925d387204df90cc19fee89048c4ba83b2d5 SHA512 e98c74ce2a49532a491a46efe81a2edc85103f9ec04347fe6b052cffdaecadcecb48a02b15ad71853fff6ebb2281498000e89d44732f36d31b6252a1a88bd0a6
+EBUILD julia-bin-1.5.2.ebuild 1238 BLAKE2B 1f20fe4f0fabe3953a53fc3f810992bc545dd4d56d92a49628486a3d65fa2e9fb671619560d6a0409e398d441249df0c74448eb6fbfd70c49a955292c70a8016 SHA512 2174cc671417ff92eeb245a1bce7a722f8b76b37dbee11f72b1503e494b1c9a15eb0936e0bb9b4437546be64d4a2377573f76bd364977293f422261c98b8a177
+EBUILD julia-bin-1.5.3.ebuild 1238 BLAKE2B 1f20fe4f0fabe3953a53fc3f810992bc545dd4d56d92a49628486a3d65fa2e9fb671619560d6a0409e398d441249df0c74448eb6fbfd70c49a955292c70a8016 SHA512 2174cc671417ff92eeb245a1bce7a722f8b76b37dbee11f72b1503e494b1c9a15eb0936e0bb9b4437546be64d4a2377573f76bd364977293f422261c98b8a177
MISC metadata.xml 1269 BLAKE2B c7ca56d7660c41df452725bae9526d587d79754a3e7b0cb0584bacc588b63523e4fbae113b26f48290d874bc49fac1eb2ecfc97946e516212cc511346f876e26 SHA512 8e0325b241bc76162b843b64e2fdac98873cba21e8e39d2ddd439647466d94e163fe315eeeae78435398db17635d3447ec9c713bf53d894487ac6acb67c5afdf
diff --git a/dev-lang/julia-bin/julia-bin-1.3.0.ebuild b/dev-lang/julia-bin/julia-bin-1.3.0.ebuild
deleted file mode 100644
index 00cad5f42072..000000000000
--- a/dev-lang/julia-bin/julia-bin-1.3.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-MY_PN=${PN/-bin/}
-MY_P=${MY_PN}-${PV}
-MY_PV=$(ver_cut 1-2)
-
-DESCRIPTION="High-performance programming language for technical computing"
-HOMEPAGE="https://julialang.org/"
-SRC_URI="
- x86? ( https://julialang-s3.julialang.org/bin/linux/x86/${MY_PV}/${MY_P}-linux-i686.tar.gz )
- amd64? ( https://julialang-s3.julialang.org/bin/linux/x64/${MY_PV}/${MY_P}-linux-x86_64.tar.gz )
- amd64-fbsd? ( https://julialang-s3.julialang.org/bin/freebsd/x64/${MY_PV}/${MY_P}-freebsd-x86_64.tar.gz )
- arm? ( https://julialang-s3.julialang.org/bin/linux/armv7l/${MY_PV}/${MY_P}-linux-armv7l.tar.gz )
- arm64? ( https://julialang-s3.julialang.org/bin/linux/aarch64/${MY_PV}/${MY_P}-linux-aarch64.tar.gz )
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~arm ~arm64 ~x86"
-IUSE="elibc_glibc elibc_FreeBSD"
-
-RDEPEND="!dev-lang/julia"
-DEPEND="${RDEPEND}"
-
-RESTRICT="strip"
-
-QA_PREBUILT="*"
-
-S="${WORKDIR}/${MY_P}"
-
-src_install() {
- insinto "/usr/$(get_libdir)/${MY_P}/"
- doins -r ./etc
- doins -r ./include
- doins -r ./lib
- doins -r ./share
-
- exeinto "/usr/$(get_libdir)/${MY_P}/bin"
- doexe bin/julia
-
- cat > 99julia-bin <<-EOF
- PATH="${EROOT}/usr/$(get_libdir)/${MY_P}/bin"
- EOF
- doenvd 99julia-bin
-}
diff --git a/dev-lang/julia-bin/julia-bin-1.4.0.ebuild b/dev-lang/julia-bin/julia-bin-1.4.0.ebuild
deleted file mode 100644
index e7387d094629..000000000000
--- a/dev-lang/julia-bin/julia-bin-1.4.0.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-MY_PN=${PN/-bin/}
-MY_P=${MY_PN}-${PV}
-MY_PV=$(ver_cut 1-2)
-
-DESCRIPTION="High-performance programming language for technical computing"
-HOMEPAGE="https://julialang.org/"
-SRC_URI="
- x86? ( https://julialang-s3.julialang.org/bin/linux/x86/${MY_PV}/${MY_P}-linux-i686.tar.gz )
- amd64? ( https://julialang-s3.julialang.org/bin/linux/x64/${MY_PV}/${MY_P}-linux-x86_64.tar.gz )
- amd64-fbsd? ( https://julialang-s3.julialang.org/bin/freebsd/x64/${MY_PV}/${MY_P}-freebsd-x86_64.tar.gz )
- arm64? ( https://julialang-s3.julialang.org/bin/linux/aarch64/${MY_PV}/${MY_P}-linux-aarch64.tar.gz )
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~arm64 ~x86"
-IUSE="elibc_glibc elibc_FreeBSD"
-
-RDEPEND="!dev-lang/julia"
-DEPEND="${RDEPEND}"
-
-RESTRICT="strip"
-
-QA_PREBUILT="*"
-
-S="${WORKDIR}/${MY_P}"
-
-src_install() {
- insinto "/usr/$(get_libdir)/${MY_P}/"
- doins -r ./etc
- doins -r ./include
- doins -r ./lib
- doins -r ./share
-
- exeinto "/usr/$(get_libdir)/${MY_P}/bin"
- doexe bin/julia
-
- cat > 99julia-bin <<-EOF
- PATH="${EROOT}/usr/$(get_libdir)/${MY_P}/bin"
- EOF
- doenvd 99julia-bin
-}
diff --git a/dev-lang/julia-bin/julia-bin-1.5.2.ebuild b/dev-lang/julia-bin/julia-bin-1.5.2.ebuild
index acbc1acd341a..61861f476e93 100644
--- a/dev-lang/julia-bin/julia-bin-1.5.2.ebuild
+++ b/dev-lang/julia-bin/julia-bin-1.5.2.ebuild
@@ -30,6 +30,7 @@ DEPEND="${RDEPEND}"
RESTRICT="strip"
QA_PREBUILT="*"
+QA_SONAME="*"
S="${WORKDIR}/${MY_P}"
diff --git a/dev-lang/julia-bin/julia-bin-1.2.0.ebuild b/dev-lang/julia-bin/julia-bin-1.5.3.ebuild
index 848c6a2b7010..61861f476e93 100644
--- a/dev-lang/julia-bin/julia-bin-1.2.0.ebuild
+++ b/dev-lang/julia-bin/julia-bin-1.5.3.ebuild
@@ -3,20 +3,26 @@
EAPI=7
MY_PN=${PN/-bin/}
-MY_P=${MY_PN}-${PV}
+MY_P=${MY_PN}-${PV/_/-}
+MY_PV=$(ver_cut 1-2)
+BASE_SRC_URI="https://julialang-s3.julialang.org/bin"
DESCRIPTION="High-performance programming language for technical computing"
HOMEPAGE="https://julialang.org/"
SRC_URI="
- x86? ( https://julialang-s3.julialang.org/bin/linux/x86/1.2/${MY_P}-linux-i686.tar.gz )
- amd64? ( https://julialang-s3.julialang.org/bin/linux/x64/1.2/${MY_P}-linux-x86_64.tar.gz )
- amd64-fbsd? ( https://julialang-s3.julialang.org/bin/freebsd/x64/1.2/${MY_P}-freebsd-x86_64.tar.gz )
+ x86? ( ${BASE_SRC_URI}/linux/x86/${MY_PV}/${MY_P}-linux-i686.tar.gz )
+ amd64? (
+ elibc_glibc? ( ${BASE_SRC_URI}/linux/x64/${MY_PV}/${MY_P}-linux-x86_64.tar.gz )
+ elibc_musl? ( ${BASE_SRC_URI}/musl/x64/${MY_PV}/${MY_P}-musl-x86_64.tar.gz )
+ )
+ amd64-fbsd? ( ${BASE_SRC_URI}/freebsd/x64/${MY_PV}/${MY_P}-freebsd-x86_64.tar.gz )
+ arm64? ( ${BASE_SRC_URI}/linux/aarch64/${MY_PV}/${MY_P}-linux-aarch64.tar.gz )
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="-* ~amd64 ~x86"
-IUSE="elibc_glibc elibc_FreeBSD"
+IUSE="elibc_glibc"
RDEPEND="!dev-lang/julia"
DEPEND="${RDEPEND}"
@@ -24,6 +30,7 @@ DEPEND="${RDEPEND}"
RESTRICT="strip"
QA_PREBUILT="*"
+QA_SONAME="*"
S="${WORKDIR}/${MY_P}"
diff --git a/dev-lang/julia/Manifest b/dev-lang/julia/Manifest
index 2afce8570b24..3596c417f5e2 100644
--- a/dev-lang/julia/Manifest
+++ b/dev-lang/julia/Manifest
@@ -1,27 +1,16 @@
AUX julia-1.1.0-fix_build_system.patch 1651 BLAKE2B 62123d16fe25bd6d77ac7af05297bc2cb5529b58943fcd13060f0b2b3f329571ebbd82208793651ac5120cd4ed19b6eca6c3d0c829509288460a9e0e78817b48 SHA512 70f5cf43261216e16001acc2c64e0bc1457e1fd48a918b218f8b0b21877a44c274f3aad81f68f7176665ec94c2d17f89a880e1c0a9332beae9d25668f9a85a25
AUX julia-1.1.0-fix_llvm_install.patch 680 BLAKE2B ca0d95c503b8f6e76722d54147f7a64cda5781cefc6e05ed7cfc631b356c3131d43ce6703da6c61b791da08836d9a6b5b494556c2a0ecba8960f8a9395b2d66a SHA512 4d474c1ab1d74aeb98367d55ec557e22e43a3e3d35615b7cde20fb9a194b94f24237735ad431800ded6e120beae9d2d3706b778ea7f26409790e3649ba39117b
AUX julia-1.4.0-no_symlink_llvm.patch 335 BLAKE2B 0df56ed45619df80b669bc790e0f93e475c94dac39fc8efcbdaa677a6ab02a6a3f832abf07990e8f50df8d900147f5e0ac9e2896edbbc4a015e49e74864315fa SHA512 563ed79132655b8c28a01d17fb8765ed774c069e00d29847f864152f7641b53758c6d8ba5544789e8d3aeb0e1686ea946c31837b1e1b0a6f4bce6d531d5511ed
-DIST julia-1.2.0.tar.gz 8255435 BLAKE2B 286b7bd93cae247c545d9c384e244115f84daee977839022993e91c69013eb4107ac77d86f996ec7a8e9f863bf5cab29fb063437b822e5da79e72bc9e0db4b65 SHA512 c99b0b744508b43df4ee334f588dbb57a633969d7cb164d41b76d552c1d14f5ff6f06a8d0da7f7a48fd1e3a3b3c2379998c5af1bfdff4b0c17045132b82a40b8
-DIST julia-1.3.0.tar.gz 8793136 BLAKE2B e469d80c94e3b15b198011e62f591a699ec7218c755cf3e0c1be8f94e2a28e9800a10599a152f6865f534652d22f118bb14cd1886d257a96e6875562bce56f0c SHA512 c7fdc5c4435c82688fe608a7009ccee6d622f51a62578bf2323ad623acfd58bfb6ed1252f81481708b5b428c37292e078ce72b10df3fe32d29158b0726be2c2e
-DIST julia-1.4.0.tar.gz 7239281 BLAKE2B f11467cf91c2a72f03f77421537f4089bab6a1596ede27963551819453bea2a3a46cad9a43951df8857120a00a44f2f04eb5e23659ea4d1772feddb00ba85d2c SHA512 f8152a595f13932f6cad186cf2fdf2fb0bd64cc49bbb11a76d8299f4745ca6428823ead0e73a7bae1347f1b99bf1181d1f457587d13a7bfc7324ca81afc35cc1
DIST julia-1.5.2.tar.gz 6945862 BLAKE2B 9dd9f83fb9ae251f66ae65e14a252b662c3c7d6f92638d91ef6e286032020052e1812f2891270854e0ddeda474afff55c8f87d300550503c1093f4c5e0a51959 SHA512 aa177d03bbde4f368dd2fb14f64d21130531616bcd544af7babbb7fb7c9ee5ea7528c756e10f78468aaffebbcbc6f48e92397c1c13dc3f130b64a82e478f43dc
+DIST julia-1.5.3.tar.gz 6949901 BLAKE2B 08f8496980a9bbb9effc0c72cb6b7a5ce1dbd1774735caa366ddc1bb5404117111c624a639f6eb48360061f9fc597a7b37dff24f8555f03ebc4a22524cbeb3b8 SHA512 9e644a64fd6e2caf0390a2bc470084406c078244e65b70a2e3b031d5806c1dff780273ccccfe4bccfd8c03778b7d3a44de7a84bd13f3512afe6864efa5a730fc
DIST julia-Pkg-49908bffe83790bc7cf3c5d46faf3667f8902ad4.tar.gz 389738 BLAKE2B 1ed9201badf0a1db5142e0566bfe085b364e4681670937ac5fa53c15312ff8eb29d5e783b75fe3f4f379b041ba38c66ce94962fa7d98fcfd0b7b49acd1749d69 SHA512 a85aa80b3080794a8e3ae5ce54856e63457c461659c12fde5dde1b5ec33176ea06af49ee516d01ccd7b78d8358de2fe0ffcd5c6a6d5a5088cdcd76a0133780eb
DIST julia-UnicodeData-13.0.0.txt 1851767 BLAKE2B 72bbcf352f2f6a004abb3f351fe5da160e83644feea8de0ca154b5a1aa78f36cb04b252d0c7b64a5eeca388e600b2875bb76bc2746ee799a1a6eff97c1fe8b06 SHA512 1a4a662e2ab33469976bf5f91aa6933ed9b73f6d4179a2daffb349e1869d7d6cfa885b164e82d15dcdad7458cd451c81add58d875eb0c70de854589dc97b2055
-DIST julia-cacert-2020-01-01.pem 223687 BLAKE2B 29d2ce73380897a5841deef1c7eb5e61ff3f5c278ab95286bbfdf5b1c4d41ae94402dc5cb376975977f2d31030e0df872273942a1b6cc91b7ff35ecfd7efc1c2 SHA512 cc129ae1a4377a43a74b0854b6eccb2b315cdfce018142d1dd5524fb64c8945cde067cb18f366351fa7d6af3f9f36cf21bc1f626f987f9e4627878472ea59cde
DIST julia-dsfmt-2.2.3.tar.gz 291773 BLAKE2B 6ffae90494d72527920c80fc0fb005da1c7b84f8a03a7ecb0789434c0fff97359e5098e85431896dffccc7d5148c414e847aaba5feef648b8788421a466ff65e SHA512 6d8ddcd01aab3f9039f4f0288a8af53e290cc2f293ed8c4a8c9f3b3f12398e7eedfce8016117b425766ba89c61c86c13b3e420035b5f9bf91315b8b814c03662
-DIST julia-libgit2-b3e1a56ebb2b9291e82dc027ba9cbcfc3ead54d3.tar.gz 4981505 BLAKE2B b2a414690de2c8eea5247260d76a3ff447e4f925a3c749e88cb9bfe96d1e3086be04534801fdf9d1eb1f8d84c6a6dc0eb4b6401be311ed3d5391ec9d481b1dda SHA512 7384a7eeeb36ac79d4e7e1336546e48f8fc820653f887f944c3902fcaae4e59d855679b39c5279b7372995934e549e34c526e1459a82032206913f9747b3dd08
-DIST julia-libuv-2348256acf5759a544e5ca7935f638d2bc091d60.tar.gz 1555710 BLAKE2B 31ce57d23765c142799dd985a5511751d63238cf7e082fd1ad5574bf62201e9d6cb53b8da5dcc724765ccb4abd63da3ca6d6cbd45e078310c2ffa3859d09b8e4 SHA512 c8bf3c736a60feb0c6994aa7cd1b80e1a45bd6096aa66db320ddfc27b59a0797d303338ea75978619173e4f0a680254f3db29c9f6d1b84361030cc11c7729c98
+DIST julia-libuv-1fcc6d66f9df74189c74d3d390f02202bb7db953.tar.gz 1590342 BLAKE2B eca658f74421587aec78cb38f5a712033afb072e6425a6ce28fd5d4bac61e41cacbd5a850c1f2b29c386b944d1d9c4f16b7d090f7d2dd6b963b5dbc94ae18981 SHA512 70b0c738a60b4e476750b7de8d120e735359e2c36fcb3a8a38628a0ae326210ed3b15d793dfd5443d7aa5603e83e7d99f567aa4c1696846d950df9f83648669c
DIST julia-libuv-35b1504507a7a4168caae3d78db54d1121b121e1.tar.gz 1577394 BLAKE2B 8ab36f781619f710a64ddc6cf257a4c2f6d27ac22e33ed6f184902d0c6cc3a3941254e0a825071fcd57f869e3ccc5eaf71856539cf6b484358d5aafe383000a9 SHA512 5932e9105346e952fd0f51f79898e5b9c993261ec1558408437647ab3b3ce282562f1e0a16db5704cb66e7aa7a4c6a75dd7f0da498a98b1b6af48da88b4869f0
DIST julia-libwhich-81e9723c0273d78493dc8c8ed570f68d9ce7e89e.tar.gz 4183 BLAKE2B c932e23b1b476d3fd16cf6f451efd5fc6d9c1ec2c53e8ac086340a100817d9b30dae3eff50b284a42c09b2bbae30b9e2fd38b2881f8cbf4974a89f3bd0c87599 SHA512 6fb77b715d70d9bc95a8546c3bf97bd3677c7ea344b88bb5bc3bbfac9dceabe8a8cde7a0f64dec884cde802e4a3000e30837d3f824b5a9242348c4fe061526a3
DIST julia-utf8proc-0890a538bf8238cded9be0c81171f57e43f2c755.tar.gz 155521 BLAKE2B 32dc1a8fb641e89057d317e579f1802b7f7dfbdbea7f91c01b282b9a88c2fc6143743d5e45f46d6d465857cfe1b28bd39e9a0da19e80516536c57cb62b139d27 SHA512 95d6dba2bbdfc5003f6d21fd02c926c7db9661895010041aacee55fa11dc2524bcffaa90965e2a9a8f2a9e49e93ec7572d6a4de6d5d9f9e075b787537864ea20
-DIST julia-utf8proc-454f60150c7f023526d353e1e6b386f93ee0b116.tar.gz 154318 BLAKE2B 6173490aa458f300f29d6fc0f22b80ccff436f4c52df2ac54786a3f518a140ab6624cef0a7221c8e3800307c9b8490a604215fcb028001b1b95e7630b62ed85d SHA512 50a19aa56edc5c023611c40e75862f4c9c08e1bfad0bac9ec64413406cff8f409ff106a37f8c66202e563cbe3ae1d5a40036b14fd309651b50c30d3f205f08f5
-DIST julia-utf8proc-5c632c57426f2e4246e3b64dd2fd088d3920f9e5.tar.gz 154973 BLAKE2B 9696fae33c408abbddd2c5741a0c98b11474c7615d6610e53be919a3cce4a58f129de4ae36bb02636e94d1e57504103e8dd3a3faad3ce7c38e1dba0f513d2d47 SHA512 dec5d7e976bd808bc8edc39dda62b85ecb462b98b6059ace4acee27ec75f6839e0a2899a9baa225379ae5ffb5b568c63a666f52c9958075e5af0376f8a284534
-DIST llvm-6.0.1.src.tar.xz 25306628 BLAKE2B 60232d4d22f8096b565cc8d81fea0639f24f14e8fc4f66ade69fa15479181f07f655f26dff3fa24bf105762b495da316c5c9352db234bd0af6b9c3fff6d4d881 SHA512 cbbb00eb99cfeb4aff623ee1a5ba075e7b5a76fc00c5f9f539ff28c108598f5708a0369d5bd92683def5a20c2fe60cab7827b42d628dbfcc79b57e0e91b84dd9
-DIST llvm-8.0.1.src.tar.xz 30477608 BLAKE2B 4319c837b36111401e3b0f9659b8d875c89463bcc7816df1aefe1e3ff989860bbaa92504718f8e15416cfd9f3491c13777cd5cb661877b237b342b0e515b93f5 SHA512 82e120be5cabdfd5111aebbea68a663fe229c8861d73802d6ab09a3bf48f60de333e07e61f8fb61beaa14ac2bea24fcd74fa6f761acaf62469f536b79fcb1e16
DIST llvm-9.0.1.src.tar.xz 33035112 BLAKE2B 5ae7ac42507cb14983eec0785dfc9b9c788cae75d5493ddf6734da55d3733cc90e35634aa39aa536654d4b68c3ccb7c2f989746f21c634c8989a57d9d32a15b2 SHA512 bfb6960a4dd1e18f4005f324f478a781c69e8ec7c20569d9b243fcb9372dc7733b254f26c683373537990cc9c109c78eaf0f65449629ee17caca1bce9b9ccccd
-EBUILD julia-1.2.0.ebuild 5338 BLAKE2B 60f77129192f392a3abf31556de86df1bf16564e7c1597bacffe601edc231715db077903b32d244504e7672b9971d19cf22d735808e51983fa0793666aa4b6f4 SHA512 727270ae0b4c99c2da7cdf9f877f194bb2976be6b633aefde56381657bef6521dee6ca047bcdf9a7ebe736fe44871e23a45c7c81ad592759e604c58a20836744
-EBUILD julia-1.3.0.ebuild 5352 BLAKE2B a1d48a441ab61c2f0e55e8f3bc1d58568553360c6f3c91b05e0a718af40285625ab4b334ea5d80fb0e5806ffe56adf709744526af18f8bcdadcb010d403c00be SHA512 ce44a6606975e98b2be9d32db4d9d4badb9701f8512055f38f43dbbfe99057a4951fc7633a82ebce6d2d431595553c7c1d4358cd1627174d03b0f1dc3f58c2b1
-EBUILD julia-1.4.0-r1.ebuild 5258 BLAKE2B cf21aaaf7695742795dfaf1dbfb1d8b3cabd76335c0e5a770b66783ce9150769a0db89fcbb95812b30920a40e7d49246e300952768621c3810d6584271f73865 SHA512 5fd13e8da396a9c355a00f3fe13abfa219d48b663b5fdfb2b4c94c3b858e6dbfd308b55357fef551f6f48170fa3fbbf9851c1e7aa4b5821dc7c42994cee76da7
-EBUILD julia-1.4.0-r2.ebuild 5771 BLAKE2B c7b03606cde5f9414172128a16041122e7d2f154dd8fc1f6f0d7f63135556bdad1b215bfc9672d867156134d7b9870cae495bb906bf4a9e582c32efdd236863a SHA512 8d629496f63cd7dfa2f8a42354b8170adddc1ee6c0a5f6679c3aa23902c56cc61732bddeca720698ff0919c1b23382e6770fb579bd0347bc6253e7038b55aea2
-EBUILD julia-1.5.2.ebuild 5769 BLAKE2B 54c790de6e2fa9ff3a168e2facabb70da5aa2a2696fc752002b63ba4f875079e8758892b7219dd231028723f15a0743536375460dca955d1744364556834cd12 SHA512 824f64802d16b05837eec6ef1d4ce56ad3dac20035bdc03c579c418d25ab5e2f2b36d629cd695eb5940b8347c05d089ca424d19025228fff5d787b0158eb4880
+EBUILD julia-1.5.2-r1.ebuild 5851 BLAKE2B 2adae861d29bbdf096b8958cd0f6fa29d79ebdf75e2f1ca186d079f500aec2b43eab57c2e9c49c0b53be3ea34d9f8c7b5bed23b9c82da5e7c3ed2ad13f224535 SHA512 7a006f9960b6e203da663e763faf606cebfdec5a21a5feedca6c282cd32a7c86635d5bd9a384a8a7bff9c2c284e16162f185854c139ea544b7a406f5e676f77e
+EBUILD julia-1.5.3.ebuild 6019 BLAKE2B c5177b6c69d9f90ea2bd6a55f880b1fbbb179ffaab5522f66ea2f35d58ef493f8f567cad779b5bdf6d085c03e3902bffbbf34a6b883f4d2e3d6a6ee6681719ac SHA512 66a2e5e9c0aa55006d032848a46c2ebae341c301f0750c382b976d4d9c3d7b55616935f201d14d286f9378fbc4ec6aa8155b60e5919a51f74661c8ecdecef2a8
MISC metadata.xml 1388 BLAKE2B b58f320281f3b56151e4f647b3124b2bd915c9194041c7aa3e228cceb56f1d4d6625b9b86394a39c1fb7c0bb524e792cd60576ec76a766dba41204297d792ddd SHA512 91835d230909a2d10ac26280e49d3538e57fc708f141ce366d55d21dc66b588e551aa4e054e76a44695c065a82e6aa09962b84e86eb1f4f12b87ecd90ca256b5
diff --git a/dev-lang/julia/julia-1.2.0.ebuild b/dev-lang/julia/julia-1.2.0.ebuild
deleted file mode 100644
index cf072ca65b33..000000000000
--- a/dev-lang/julia/julia-1.2.0.ebuild
+++ /dev/null
@@ -1,200 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-RESTRICT="test"
-
-inherit pax-utils toolchain-funcs
-
-MY_PV="${PV//_rc/-rc}"
-MY_LIBUV_V="2348256acf5759a544e5ca7935f638d2bc091d60"
-MY_UTF8PROC_V="454f60150c7f023526d353e1e6b386f93ee0b116"
-MY_LIBWHICH_V="81e9723c0273d78493dc8c8ed570f68d9ce7e89e"
-MY_DSFMT_V="2.2.3"
-MY_LLVM="6.0.1"
-
-DESCRIPTION="High-performance programming language for technical computing"
-HOMEPAGE="https://julialang.org/"
-SRC_URI="
- https://github.com/JuliaLang/${PN}/releases/download/v${MY_PV}/${PN}-${MY_PV}.tar.gz
- https://api.github.com/repos/JuliaLang/libuv/tarball/${MY_LIBUV_V} -> ${PN}-libuv-${MY_LIBUV_V}.tar.gz
- https://api.github.com/repos/JuliaLang/utf8proc/tarball/${MY_UTF8PROC_V} -> ${PN}-utf8proc-${MY_UTF8PROC_V}.tar.gz
- https://api.github.com/repos/vtjnash/libwhich/tarball/${MY_LIBWHICH_V} -> ${PN}-libwhich-${MY_LIBWHICH_V}.tar.gz
- http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/dSFMT-src-${MY_DSFMT_V}.tar.gz -> ${PN}-dsfmt-${MY_DSFMT_V}.tar.gz
- http://releases.llvm.org/${MY_LLVM}/llvm-${MY_LLVM}.src.tar.xz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND+="
- dev-libs/double-conversion:0=
- dev-libs/gmp:0=
- dev-libs/libgit2:0=
- >=dev-libs/libpcre2-10.23:0=[jit]
- dev-libs/mpfr:0=
- dev-libs/openspecfun
- sci-libs/amd:0=
- sci-libs/arpack:0=
- sci-libs/camd:0=
- sci-libs/ccolamd:0=
- sci-libs/cholmod:0=
- sci-libs/colamd:0=
- sci-libs/fftw:3.0=[threads]
- sci-libs/openlibm:0=
- sci-libs/spqr:0=
- sci-libs/umfpack:0=
- sci-mathematics/glpk:0=
- >=sys-libs/libunwind-1.1:0=
- sys-libs/readline:0=
- sys-libs/zlib:0=
- >=virtual/blas-3.6
- virtual/lapack"
-
-DEPEND="${RDEPEND}
- dev-vcs/git
- dev-util/patchelf
- virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.1.0-fix_build_system.patch
- "${FILESDIR}"/${PN}-1.1.0-fix_llvm_install.patch
-)
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-src_unpack() {
- tounpack=(${A})
- # the main source tree, followed by deps
- unpack "${A/%\ */}"
-
- mkdir -p "${S}/deps/srccache/"
- for i in "${tounpack[@]:1}"; do
- cp "${DISTDIR}/${i}" "${S}/deps/srccache/${i#julia-}" || die
- done
-}
-
-src_prepare() {
- default
-
- # Sledgehammer:
- # - prevent fetching of bundled stuff in compile and install phase
- # - respect CFLAGS
- # - respect EPREFIX and Gentoo specific paths
- # - fix BLAS and LAPACK link interface
-
- sed -i \
- -e 's|git submodule|${EPREFIX}/bin/true|g' \
- -e "s|GENTOOCFLAGS|${CFLAGS}|g" \
- -e "s|/usr/include|${EPREFIX}/usr/include|g" \
- deps/Makefile || die
-
- local libblas="$($(tc-getPKG_CONFIG) --libs-only-l blas)"
- libblas="${libblas%% *}"
- libblas="lib${libblas#-l}"
- local liblapack="$($(tc-getPKG_CONFIG) --libs-only-l lapack)"
- liblapack="${liblapack%% *}"
- liblapack="lib${liblapack#-l}"
-
- sed -i \
- -e "s|GENTOOCFLAGS|${CFLAGS}|g" \
- -e "s|GENTOOLIBDIR|$(get_libdir)|" \
- -e "s|^JULIA_COMMIT = .*|JULIA_COMMIT = v${PV}|" \
- -e "s|-lblas|$($(tc-getPKG_CONFIG) --libs blas)|" \
- -e "s|= libblas|= ${libblas}|" \
- -e "s|-llapack|$($(tc-getPKG_CONFIG) --libs lapack)|" \
- -e "s|= liblapack|= ${liblapack}|" \
- Make.inc || die
-
- sed -i \
- -e "s|,lib)|,$(get_libdir))|g" \
- -e "s|\$(BUILD)/lib|\$(BUILD)/$(get_libdir)|g" \
- Makefile || die
-
- sed -i \
- -e "s|ar -rcs|$(tc-getAR) -rcs|g" \
- src/Makefile || die
-
- # disable doc install starting git fetching
- sed -i -e 's~install: $(build_depsbindir)/stringreplace $(BUILDROOT)/doc/_build/html/en/index.html~install: $(build_depsbindir)/stringreplace~' Makefile || die
-}
-
-src_configure() {
- # julia does not play well with the system versions of dsfmt, libuv,
- # and utf8proc
-
- # USE_SYSTEM_LIBM=0 implies using external openlibm
- cat <<-EOF > Make.user
- USE_SYSTEM_ARPACK:=1
- USE_SYSTEM_BLAS:=1
- USE_SYSTEM_DSFMT:=0
- USE_SYSTEM_GMP:=1
- USE_SYSTEM_GRISU:=1
- USE_SYSTEM_LAPACK:=1
- USE_SYSTEM_LIBGIT2:=1
- USE_SYSTEM_LIBM:=0
- USE_SYSTEM_LIBUNWIND:=1
- USE_SYSTEM_LIBUV:=0
- USE_SYSTEM_LLVM:=0
- USE_SYSTEM_MPFR:=1
- USE_SYSTEM_OPENLIBM:=1
- USE_SYSTEM_OPENSPECFUN:=1
- USE_SYSTEM_PATCHELF:=1
- USE_SYSTEM_PCRE:=1
- USE_SYSTEM_READLINE:=1
- USE_SYSTEM_RMATH:=0
- USE_SYSTEM_SUITESPARSE:=1
- USE_SYSTEM_UTF8PROC:=0
- USE_SYSTEM_ZLIB=1
- VERBOSE=1
- libdir="${EROOT}/usr/$(get_libdir)"
- EOF
-
-}
-
-src_compile() {
-
- # Julia accesses /proc/self/mem on Linux
- addpredict /proc/self/mem
-
- emake cleanall
- emake julia-release \
- prefix="${EPREFIX}/usr" DESTDIR="${D}" \
- CC="$(tc-getCC)" CXX="$(tc-getCXX)" \
- USE_BINARYBUILDER=0
- pax-mark m $(file usr/bin/julia-* | awk -F : '/ELF/ {print $1}')
- emake USE_BINARYBUILDER=0
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- # Julia is special. It tries to find a valid git repository (that would
- # normally be cloned during compilation/installation). Just make it
- # happy...
- git init && \
- git config --local user.email "whatyoudoing@example.com" && \
- git config --local user.name "Whyyyyyy" && \
- git commit -a --allow-empty -m "initial" || die "git failed"
-
- emake install \
- prefix="${EPREFIX}/usr" DESTDIR="${D}" \
- CC="$(tc-getCC)" CXX="$(tc-getCXX)" \
- USE_BINARYBUILDER=0
- cat > 99julia <<-EOF
- LDPATH=${EROOT}/usr/$(get_libdir)/julia
- EOF
- doenvd 99julia
-
- dodoc README.md
-
- mv "${ED}"/usr/etc/julia "${ED}"/etc || die
- rmdir "${ED}"/usr/etc || die
- mv "${ED}"/usr/share/doc/julia/html "${ED}"/usr/share/doc/${PF} || die
- rmdir "${ED}"/usr/share/doc/julia || die
-}
diff --git a/dev-lang/julia/julia-1.3.0.ebuild b/dev-lang/julia/julia-1.3.0.ebuild
deleted file mode 100644
index 8f63c97d7e5f..000000000000
--- a/dev-lang/julia/julia-1.3.0.ebuild
+++ /dev/null
@@ -1,201 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-RESTRICT="test"
-
-inherit pax-utils toolchain-funcs
-
-MY_PV="${PV//_rc/-rc}"
-MY_LIBUV_V="35b1504507a7a4168caae3d78db54d1121b121e1"
-MY_UTF8PROC_V="5c632c57426f2e4246e3b64dd2fd088d3920f9e5"
-MY_LIBWHICH_V="81e9723c0273d78493dc8c8ed570f68d9ce7e89e"
-MY_DSFMT_V="2.2.3"
-MY_LLVM="6.0.1"
-
-DESCRIPTION="High-performance programming language for technical computing"
-HOMEPAGE="https://julialang.org/"
-SRC_URI="
- https://github.com/JuliaLang/${PN}/releases/download/v${MY_PV}/${PN}-${MY_PV}.tar.gz
- https://api.github.com/repos/JuliaLang/libuv/tarball/${MY_LIBUV_V} -> ${PN}-libuv-${MY_LIBUV_V}.tar.gz
- https://api.github.com/repos/JuliaLang/utf8proc/tarball/${MY_UTF8PROC_V} -> ${PN}-utf8proc-${MY_UTF8PROC_V}.tar.gz
- https://api.github.com/repos/vtjnash/libwhich/tarball/${MY_LIBWHICH_V} -> ${PN}-libwhich-${MY_LIBWHICH_V}.tar.gz
- http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/dSFMT-src-${MY_DSFMT_V}.tar.gz -> ${PN}-dsfmt-${MY_DSFMT_V}.tar.gz
- http://releases.llvm.org/${MY_LLVM}/llvm-${MY_LLVM}.src.tar.xz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND+="
- dev-libs/double-conversion:0=
- dev-libs/gmp:0=
- dev-libs/libgit2:0=
- >=dev-libs/libpcre2-10.23:0=[jit]
- dev-libs/mpfr:0=
- dev-libs/openspecfun
- >=net-libs/mbedtls-2.2
- net-libs/libssh2
- sci-libs/amd:0=
- sci-libs/arpack:0=
- sci-libs/camd:0=
- sci-libs/ccolamd:0=
- sci-libs/cholmod:0=
- sci-libs/colamd:0=
- sci-libs/fftw:3.0=[threads]
- sci-libs/openlibm:0=
- sci-libs/spqr:0=
- sci-libs/umfpack:0=
- sci-mathematics/glpk:0=
- >=sys-libs/libunwind-1.1:0=
- sys-libs/readline:0=
- sys-libs/zlib:0=
- >=virtual/blas-3.6
- virtual/lapack"
-
-DEPEND="${RDEPEND}
- dev-vcs/git
- dev-util/patchelf
- virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.1.0-fix_build_system.patch
- "${FILESDIR}"/${PN}-1.1.0-fix_llvm_install.patch
-)
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-src_unpack() {
- tounpack=(${A})
- # the main source tree, followed by deps
- unpack "${A/%\ */}"
-
- mkdir -p "${S}/deps/srccache/"
- for i in "${tounpack[@]:1}"; do
- cp "${DISTDIR}/${i}" "${S}/deps/srccache/${i#julia-}" || die
- done
-}
-
-src_prepare() {
- default
-
- # Sledgehammer:
- # - prevent fetching of bundled stuff in compile and install phase
- # - respect CFLAGS
- # - respect EPREFIX and Gentoo specific paths
- # - fix BLAS and LAPACK link interface
-
- sed -i \
- -e 's|git submodule|${EPREFIX}/bin/true|g' \
- -e "s|GENTOOCFLAGS|${CFLAGS}|g" \
- -e "s|/usr/include|${EPREFIX}/usr/include|g" \
- deps/Makefile || die
-
- local libblas="$($(tc-getPKG_CONFIG) --libs-only-l blas)"
- libblas="${libblas%% *}"
- libblas="lib${libblas#-l}"
- local liblapack="$($(tc-getPKG_CONFIG) --libs-only-l lapack)"
- liblapack="${liblapack%% *}"
- liblapack="lib${liblapack#-l}"
-
- sed -i \
- -e "s|GENTOOCFLAGS|${CFLAGS}|g" \
- -e "s|GENTOOLIBDIR|$(get_libdir)|" \
- -e "s|^JULIA_COMMIT = .*|JULIA_COMMIT = v${PV}|" \
- -e "s|-lblas|$($(tc-getPKG_CONFIG) --libs blas)|" \
- -e "s|= libblas|= ${libblas}|" \
- -e "s|-llapack|$($(tc-getPKG_CONFIG) --libs lapack)|" \
- -e "s|= liblapack|= ${liblapack}|" \
- Make.inc || die
-
- sed -i \
- -e "s|,lib)|,$(get_libdir))|g" \
- -e "s|\$(BUILD)/lib|\$(BUILD)/$(get_libdir)|g" \
- Makefile || die
-
- sed -i \
- -e "s|ar -rcs|$(tc-getAR) -rcs|g" \
- src/Makefile || die
-
- # disable doc install starting git fetching
- sed -i -e 's~install: $(build_depsbindir)/stringreplace $(BUILDROOT)/doc/_build/html/en/index.html~install: $(build_depsbindir)/stringreplace~' Makefile || die
-}
-
-src_configure() {
- # julia does not play well with the system versions of dsfmt, libuv,
- # and utf8proc
-
- # USE_SYSTEM_LIBM=0 implies using external openlibm
- cat <<-EOF > Make.user
- USE_SYSTEM_LLVM:=0
- USE_SYSTEM_LIBUNWIND:=1
- USE_SYSTEM_PCRE:=1
- USE_SYSTEM_LIBM:=0
- USE_SYSTEM_OPENLIBM:=1
- USE_SYSTEM_DSFMT:=0
- USE_SYSTEM_BLAS:=1
- USE_SYSTEM_LAPACK:=1
- USE_SYSTEM_GMP:=1
- USE_SYSTEM_MPFR:=1
- USE_SYSTEM_SUITESPARSE:=1
- USE_SYSTEM_LIBUV:=0
- USE_SYSTEM_UTF8PROC:=0
- USE_SYSTEM_MBEDTLS:=1
- USE_SYSTEM_LIBSSH2:=1
- USE_SYSTEM_CURL:=1
- USE_SYSTEM_LIBGIT2:=1
- USE_SYSTEM_PATCHELF:=1
- USE_SYSTEM_ZLIB:=1
- USE_SYSTEM_P7ZIP:=1
- VERBOSE=1
- libdir="${EROOT}/usr/$(get_libdir)"
- EOF
-
-}
-
-src_compile() {
-
- # Julia accesses /proc/self/mem on Linux
- addpredict /proc/self/mem
-
- emake cleanall
- emake julia-release \
- prefix="${EPREFIX}/usr" DESTDIR="${D}" \
- CC="$(tc-getCC)" CXX="$(tc-getCXX)" \
- USE_BINARYBUILDER=0
- pax-mark m $(file usr/bin/julia-* | awk -F : '/ELF/ {print $1}')
- emake USE_BINARYBUILDER=0
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- # Julia is special. It tries to find a valid git repository (that would
- # normally be cloned during compilation/installation). Just make it
- # happy...
- git init && \
- git config --local user.email "whatyoudoing@example.com" && \
- git config --local user.name "Whyyyyyy" && \
- git commit -a --allow-empty -m "initial" || die "git failed"
-
- emake install \
- prefix="${EPREFIX}/usr" DESTDIR="${D}" \
- CC="$(tc-getCC)" CXX="$(tc-getCXX)" \
- USE_BINARYBUILDER=0
- cat > 99julia <<-EOF
- LDPATH=${EROOT}/usr/$(get_libdir)/julia
- EOF
- doenvd 99julia
-
- dodoc README.md
-
- mv "${ED}"/usr/etc/julia "${ED}"/etc || die
- rmdir "${ED}"/usr/etc || die
- mv "${ED}"/usr/share/doc/julia/html "${ED}"/usr/share/doc/${PF} || die
- rmdir "${ED}"/usr/share/doc/julia || die
-}
diff --git a/dev-lang/julia/julia-1.4.0-r1.ebuild b/dev-lang/julia/julia-1.4.0-r1.ebuild
deleted file mode 100644
index 5be70d02402f..000000000000
--- a/dev-lang/julia/julia-1.4.0-r1.ebuild
+++ /dev/null
@@ -1,192 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-RESTRICT="splitdebug"
-
-inherit llvm pax-utils toolchain-funcs
-
-MY_PV="${PV//_rc/-rc}"
-MY_CACERT_V="2020-01-01"
-MY_DSFMT_V="2.2.3"
-MY_LIBGIT2_V="b3e1a56ebb2b9291e82dc027ba9cbcfc3ead54d3"
-MY_LIBUV_V="35b1504507a7a4168caae3d78db54d1121b121e1"
-MY_LIBWHICH_V="81e9723c0273d78493dc8c8ed570f68d9ce7e89e"
-MY_PKG_V="49908bffe83790bc7cf3c5d46faf3667f8902ad4"
-MY_UTF8PROC_V="5c632c57426f2e4246e3b64dd2fd088d3920f9e5"
-
-DESCRIPTION="High-performance programming language for technical computing"
-HOMEPAGE="https://julialang.org/"
-SRC_URI="
- https://github.com/JuliaLang/${PN}/releases/download/v${MY_PV}/${PN}-${MY_PV}.tar.gz
- https://api.github.com/repos/JuliaLang/libuv/tarball/${MY_LIBUV_V} -> ${PN}-libuv-${MY_LIBUV_V}.tar.gz
- https://api.github.com/repos/JuliaLang/utf8proc/tarball/${MY_UTF8PROC_V} -> ${PN}-utf8proc-${MY_UTF8PROC_V}.tar.gz
- https://api.github.com/repos/libgit2/libgit2/tarball/${MY_LIBGIT2_V} -> ${PN}-libgit2-${MY_LIBGIT2_V}.tar.gz
- https://api.github.com/repos/vtjnash/libwhich/tarball/${MY_LIBWHICH_V} -> ${PN}-libwhich-${MY_LIBWHICH_V}.tar.gz
- https://curl.haxx.se/ca/cacert-${MY_CACERT_V}.pem -> ${PN}-cacert-${MY_CACERT_V}.pem
- http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/dSFMT-src-${MY_DSFMT_V}.tar.gz -> ${PN}-dsfmt-${MY_DSFMT_V}.tar.gz
- https://dev.gentoo.org/~tamiko/distfiles/Pkg-${MY_PKG_V}.tar.gz -> ${PN}-Pkg-${MY_PKG_V}.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND="
- sys-devel/llvm:9=[llvm_targets_NVPTX(-)]
-"
-LLVM_MAX_SLOT=9
-
-RDEPEND+="
- dev-libs/double-conversion:0=
- dev-libs/gmp:0=
- >=dev-libs/libpcre2-10.23:0=[jit,unicode]
- dev-libs/mpfr:0=
- dev-libs/openspecfun
- >=net-libs/mbedtls-2.2
- net-libs/libssh2
- sci-libs/amd:0=
- sci-libs/arpack:0=
- sci-libs/camd:0=
- sci-libs/ccolamd:0=
- sci-libs/cholmod:0=
- sci-libs/colamd:0=
- sci-libs/fftw:3.0=[threads]
- sci-libs/openlibm:0=
- sci-libs/spqr:0=
- sci-libs/umfpack:0=
- sci-mathematics/glpk:0=
- >=sys-libs/libunwind-1.1:0=
- sys-libs/readline:0=
- sys-libs/zlib:0=
- >=virtual/blas-3.6
- virtual/lapack"
-
-DEPEND="${RDEPEND}
- dev-util/patchelf
- virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.1.0-fix_build_system.patch
- "${FILESDIR}"/${PN}-1.1.0-fix_llvm_install.patch
- "${FILESDIR}"/${PN}-1.4.0-no_symlink_llvm.patch
-)
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-src_unpack() {
- tounpack=(${A})
- # the main source tree, followed by deps
- unpack "${A/%\ */}"
-
- mkdir -p "${S}/deps/srccache/"
- for i in "${tounpack[@]:1}"; do
- if [[ $i == *Pkg* ]] || [[ $i = *Statistics* ]]; then
- # Bundled Pkg and Statistics packages go into ./stdlib
- local tarball="${i#julia-}"
- cp "${DISTDIR}/${i}" "${S}/stdlib/srccache/${tarball}" || die
- # and we have to fix up the sha1sum
- local name="${tarball%-*}"
- local sha1="${tarball#*-}"
- sha1="${sha1%.tar*}"
- einfo "using patched stdlib package \"${name}\""
- sed -i -e "s/PKG_SHA1 = .*/PKG_SHA1 = ${sha1}/" "${S}/stdlib/${name}.version" || die
- else
- cp "${DISTDIR}/${i}" "${S}/deps/srccache/${i#julia-}" || die
- fi
- done
-}
-
-src_prepare() {
- default
-
- # Sledgehammer:
- # - prevent fetching of bundled stuff in compile and install phase
- # - respect CFLAGS
- # - respect EPREFIX and Gentoo specific paths
-
- sed -i \
- -e "s|git submodule|${EPREFIX}/bin/true|g" \
- -e "s|GENTOOCFLAGS|${CFLAGS}|g" \
- -e "s|/usr/include|${EPREFIX}/usr/include|g" \
- deps/Makefile || die
-
- sed -i \
- -e "s|GENTOOCFLAGS|${CFLAGS}|g" \
- -e "s|GENTOOLIBDIR|$(get_libdir)|" \
- Make.inc || die
-
- sed -i \
- -e "s|,lib)|,$(get_libdir))|g" \
- -e "s|\$(BUILD)/lib|\$(BUILD)/$(get_libdir)|g" \
- Makefile || die
-
- sed -i \
- -e "s|ar -rcs|$(tc-getAR) -rcs|g" \
- src/Makefile || die
-
- # disable doc install starting git fetching
- sed -i -e 's~install: $(build_depsbindir)/stringreplace $(BUILDROOT)/doc/_build/html/en/index.html~install: $(build_depsbindir)/stringreplace~' Makefile || die
-}
-
-src_configure() {
- # julia does not play well with the system versions of dsfmt, libuv,
- # and utf8proc
-
- # USE_SYSTEM_LIBM=0 implies using external openlibm
- cat <<-EOF > Make.user
- USE_BINARYBUILDER:=0
- USE_SYSTEM_LLVM:=1
- USE_SYSTEM_LIBUNWIND:=1
- USE_SYSTEM_PCRE:=1
- USE_SYSTEM_LIBM:=0
- USE_SYSTEM_OPENLIBM:=1
- USE_SYSTEM_DSFMT:=0
- USE_SYSTEM_BLAS:=1
- USE_SYSTEM_LAPACK:=1
- USE_SYSTEM_GMP:=1
- USE_SYSTEM_MPFR:=1
- USE_SYSTEM_SUITESPARSE:=1
- USE_SYSTEM_LIBUV:=0
- USE_SYSTEM_UTF8PROC:=0
- USE_SYSTEM_MBEDTLS:=1
- USE_SYSTEM_LIBSSH2:=1
- USE_SYSTEM_CURL:=1
- USE_SYSTEM_PATCHELF:=1
- USE_SYSTEM_ZLIB:=1
- USE_SYSTEM_P7ZIP:=1
- VERBOSE=1
- libdir="${EROOT}/usr/$(get_libdir)"
- EOF
-}
-
-src_compile() {
-
- # Julia accesses /proc/self/mem on Linux
- addpredict /proc/self/mem
-
- emake julia-release \
- prefix="${EPREFIX}/usr" DESTDIR="${D}" \
- CC="$(tc-getCC)" CXX="$(tc-getCXX)"
- pax-mark m "$(file usr/bin/julia-* | awk -F : '/ELF/ {print $1}')"
- emake
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- emake install \
- prefix="${EPREFIX}/usr" DESTDIR="${D}" \
- CC="$(tc-getCC)" CXX="$(tc-getCXX)"
-
- dodoc README.md
-
- mv "${ED}"/usr/etc/julia "${ED}"/etc || die
- rmdir "${ED}"/usr/etc || die
- mv "${ED}"/usr/share/doc/julia/html "${ED}"/usr/share/doc/${PF} || die
- rmdir "${ED}"/usr/share/doc/julia || die
-}
diff --git a/dev-lang/julia/julia-1.5.2.ebuild b/dev-lang/julia/julia-1.5.2-r1.ebuild
index 04e4922a411a..5460b616b194 100644
--- a/dev-lang/julia/julia-1.5.2.ebuild
+++ b/dev-lang/julia/julia-1.5.2-r1.ebuild
@@ -198,6 +198,9 @@ src_install() {
rmdir "${ED}"/usr/etc || die
mv "${ED}"/usr/share/doc/julia/html "${ED}"/usr/share/doc/"${PF}" || die
rmdir "${ED}"/usr/share/doc/julia || die
+
+ # The appdata directory is deprecated.
+ mv usr/share/{appdata,metainfo}/ || die
}
pkg_postinst() {
diff --git a/dev-lang/julia/julia-1.4.0-r2.ebuild b/dev-lang/julia/julia-1.5.3.ebuild
index 6041c13573d6..58e0c6d0bba6 100644
--- a/dev-lang/julia/julia-1.4.0-r2.ebuild
+++ b/dev-lang/julia/julia-1.5.3.ebuild
@@ -3,19 +3,19 @@
EAPI=7
-RESTRICT="splitdebug"
-
inherit llvm pax-utils toolchain-funcs
+# correct versions for stdlibs are in deps/checksums
+# for everything else, run with network-sandbox and wait for the crash
+
MY_PV="${PV//_rc/-rc}"
-MY_CACERT_V="2020-01-01"
MY_DSFMT_V="2.2.3"
-MY_LIBGIT2_V="b3e1a56ebb2b9291e82dc027ba9cbcfc3ead54d3"
-MY_LIBUV_V="35b1504507a7a4168caae3d78db54d1121b121e1"
+MY_LIBUV_V="1fcc6d66f9df74189c74d3d390f02202bb7db953"
MY_LIBWHICH_V="81e9723c0273d78493dc8c8ed570f68d9ce7e89e"
-MY_LLVM_V="8.0.1"
+MY_LLVM_V="9.0.1"
MY_PKG_V="49908bffe83790bc7cf3c5d46faf3667f8902ad4"
-MY_UTF8PROC_V="5c632c57426f2e4246e3b64dd2fd088d3920f9e5"
+MY_UNICODE_V="13.0.0"
+MY_UTF8PROC_V="0890a538bf8238cded9be0c81171f57e43f2c755"
DESCRIPTION="High-performance programming language for technical computing"
HOMEPAGE="https://julialang.org/"
@@ -23,12 +23,11 @@ SRC_URI="
https://github.com/JuliaLang/${PN}/releases/download/v${MY_PV}/${PN}-${MY_PV}.tar.gz
https://api.github.com/repos/JuliaLang/libuv/tarball/${MY_LIBUV_V} -> ${PN}-libuv-${MY_LIBUV_V}.tar.gz
https://api.github.com/repos/JuliaLang/utf8proc/tarball/${MY_UTF8PROC_V} -> ${PN}-utf8proc-${MY_UTF8PROC_V}.tar.gz
- https://api.github.com/repos/libgit2/libgit2/tarball/${MY_LIBGIT2_V} -> ${PN}-libgit2-${MY_LIBGIT2_V}.tar.gz
https://api.github.com/repos/vtjnash/libwhich/tarball/${MY_LIBWHICH_V} -> ${PN}-libwhich-${MY_LIBWHICH_V}.tar.gz
- https://curl.haxx.se/ca/cacert-${MY_CACERT_V}.pem -> ${PN}-cacert-${MY_CACERT_V}.pem
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/dSFMT-src-${MY_DSFMT_V}.tar.gz -> ${PN}-dsfmt-${MY_DSFMT_V}.tar.gz
+ http://www.unicode.org/Public/${MY_UNICODE_V}/ucd/UnicodeData.txt -> ${PN}-UnicodeData-${MY_UNICODE_V}.txt
https://dev.gentoo.org/~tamiko/distfiles/Pkg-${MY_PKG_V}.tar.gz -> ${PN}-Pkg-${MY_PKG_V}.tar.gz
- !system-llvm? ( http://releases.llvm.org/${MY_LLVM_V}/llvm-${MY_LLVM_V}.src.tar.xz )
+ !system-llvm? ( https://github.com/llvm/llvm-project/releases/download/llvmorg-${MY_LLVM_V}/llvm-${MY_LLVM_V}.src.tar.xz )
"
LICENSE="MIT"
@@ -38,12 +37,18 @@ IUSE="system-llvm"
RDEPEND="
system-llvm? ( sys-devel/llvm:9=[llvm_targets_NVPTX(-)] )
+ !system-llvm? ( dev-util/cmake )
"
LLVM_MAX_SLOT=9
+# Silence some QA warnings. The julia build system does not use user
+# defined CFLAGS for some of the generated binary modules.
+QA_FLAGS_IGNORED='.*'
+
RDEPEND+="
dev-libs/double-conversion:0=
dev-libs/gmp:0=
+ dev-libs/libgit2:0
>=dev-libs/libpcre2-10.23:0=[jit,unicode]
dev-libs/mpfr:0=
dev-libs/openspecfun
@@ -114,7 +119,6 @@ src_prepare() {
# - respect EPREFIX and Gentoo specific paths
sed -i \
- -e "s|git submodule|${EPREFIX}/bin/true|g" \
-e "s|GENTOOCFLAGS|${CFLAGS}|g" \
-e "s|/usr/include|${EPREFIX}/usr/include|g" \
deps/Makefile || die
@@ -162,6 +166,7 @@ src_configure() {
USE_SYSTEM_MBEDTLS:=1
USE_SYSTEM_LIBSSH2:=1
USE_SYSTEM_CURL:=1
+ USE_SYSTEM_LIBGIT2:=1
USE_SYSTEM_PATCHELF:=1
USE_SYSTEM_ZLIB:=1
USE_SYSTEM_P7ZIP:=1
@@ -177,15 +182,11 @@ src_compile() {
emake julia-release \
prefix="${EPREFIX}/usr" DESTDIR="${D}" \
- CC="$(tc-getCC)" CXX="$(tc-getCXX)"
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" AR="$(tc-getAR)"
pax-mark m "$(file usr/bin/julia-* | awk -F : '/ELF/ {print $1}')"
emake
}
-src_test() {
- emake test
-}
-
src_install() {
emake install \
prefix="${EPREFIX}/usr" DESTDIR="${D}" \
@@ -199,8 +200,11 @@ src_install() {
mv "${ED}"/usr/etc/julia "${ED}"/etc || die
rmdir "${ED}"/usr/etc || die
- mv "${ED}"/usr/share/doc/julia/html "${ED}"/usr/share/doc/${PF} || die
+ mv "${ED}"/usr/share/doc/julia/html "${ED}"/usr/share/doc/"${PF}" || die
rmdir "${ED}"/usr/share/doc/julia || die
+
+ # The appdata directory is deprecated.
+ mv usr/share/{appdata,metainfo}/ || die
}
pkg_postinst() {
diff --git a/dev-lang/lua/Manifest b/dev-lang/lua/Manifest
index 9ec5817eefd5..bfc13415a53a 100644
--- a/dev-lang/lua/Manifest
+++ b/dev-lang/lua/Manifest
@@ -32,10 +32,10 @@ DIST lua-5.3.4-tests.tar.gz 103438 BLAKE2B ac82708022e7729039111c3df4fe24302c8d0
DIST lua-5.3.6.tar.gz 303770 BLAKE2B 07c37c56f43095a4f6ca8eb8b3adf19afd53107c02b62b2bcb3619565cb2100d5f823493eef93092d5e312b30fc28885a6d9e8f0ba5a23b5bed86dc4515a5d61 SHA512 ccc380d5e114d54504de0bfb0321ca25ec325d6ff1bfee44b11870b660762d1a9bf120490c027a0088128b58bb6b5271bbc648400cab84d2dc22b512c4841681
DIST lua-5.4.1-tests.tar.gz 128646 BLAKE2B 2dae666e89bacf986228a33fc665bbc510e738d9f8791933f5048e4bbecaf6cd59c5e70e488d332b16960225aac3b9fae46e500f3b54856bb6aabe8cd3a5c932 SHA512 ac7cf113d96f8fe2af4f104297a70debd3bede5997627fc18db6b5d9c78ff49e05a165f5855894def5656c6dcc2d7d9ccce741c90da17698a5c714a33828f49a
DIST lua-5.4.1.tar.gz 353965 BLAKE2B e5b46fcf2eb2ea9bd235793cefec2bf19f185ed51b11bc6133bda4e3639f09194378b2fd55544972ee32576751e80bba87b3b61ec3d4a0910592d6e5cb4a4c77 SHA512 49ffbe814ec41e515fc8502b6958151c6c56aa171412f0b211ad9de934be2c958c3709d49435885ddea0fa6765ed511dafb3537558950ff3b4261338214f1571
-EBUILD lua-5.1.5-r105.ebuild 3999 BLAKE2B 69d5c5489393d7df3932d5b8fdbe6879ae860642b6827b30adca280c5780ec932db977286b1001e015da6e31f6bd37dd0d9ebbf7611f076f417ca24eabc99416 SHA512 4348b4976ddc1635d9478a1e869641431e1838aff1b28cc047ad4a8ac5780ba1ece2e96aa8304580c73c5bf434b5a14273da61e2b1a71fe64dc217c31b8f24b0
+EBUILD lua-5.1.5-r105.ebuild 4047 BLAKE2B 91971f1b59e3a7c94a2ef4f7585a6925e54e74ae5a677c2880c97a2ba839ed43e4fdcea1e48ab09a0e029fa6699e830350326329298c63375624aa5973da3861 SHA512 dc3642a6527797d706ad2413efb9be5e4079cbcdf8d7d59684ae59364f18a342cddff5d92596de42d2b34c316e9127446521c9f18026ad56686031746d0d9fb7
EBUILD lua-5.1.5-r4.ebuild 3626 BLAKE2B b8940a7010239a29ad1920fe7d9e9f799ac1472c10ec92f4b24f122afbc9dce6bc807e93b4e1f4f0c4413661dc28d5205a2e53c5228a34e2e26b26d184e2d24e SHA512 89721d186390aae36b3b64f0c12ddbd14f8dec843e4f46b0ac6e384c39f6c70d657827ac0af24db51733f8fc534168859391178804c0c06920071f66c2e14235
EBUILD lua-5.1.5-r5.ebuild 3181 BLAKE2B 190ef3d7da2eaada3c3eb25e5d524e4b3efb81d77d7ae566b25713b50cad8f2c7822eb490a4ebdf0ab6eb3f6f6d9a5ac0c6bc813f7d0329905b9f98e6ca04213 SHA512 7497bf82661f2c17c4cf07ff6511b8595f06336defbad1feb2ac483ef024ae6473bec3cdcb925b9d18eaa5091980f1c10c21ea1d48418af1d0cd5ced4cc3b349
-EBUILD lua-5.2.4-r2.ebuild 5767 BLAKE2B 420ac64f300c1aee86945bcd06cf214cae6cf696129a5cd9a697f1dab8440e6870d4601ddea39829a4b053cd3119aa3bfdbdc9b4c2110468e708b1cb6581f50f SHA512 7eedb9aeedb966acaa2512c98b50617e849b61693c1622617d0d2e2f1db79832fa64d03cff62e234f92ce4810f67674e988f0ca81610b04eea90553b22315dd3
-EBUILD lua-5.3.6-r1.ebuild 5752 BLAKE2B 09377d6f44d647adcc820e26448cf9020885020bd4501f458add142d50f31584a31e12e2c111c06dcf894b75521e1c6c94214da7bc388fefd66bc1b097b59b5d SHA512 526a6bf723702f02f4e079ecd0eba98e7a26be5b57f01861efe5b5d83ff0a8193c0280e80847323529e329b97ef6d9d0b957c2dcfeeaa3b16c9e4e5027cc5040
-EBUILD lua-5.4.1-r1.ebuild 5715 BLAKE2B ccb7a8033e1c10a9e341435c9a5e9bd334057ec64449e4b7179a7fa7fc5ee975497f1400536ec9486c6b94e3367205103dab707fd0fa66d28edd46120ed57df5 SHA512 4b7e180cdd830dac7a7886fbd3703f6296d97046b0ee898dd82eda97df9459d5e586f60bc5535f5ff383c4e54e653cb850fafa7bd4137d161d96d94101177153
+EBUILD lua-5.2.4-r2.ebuild 5815 BLAKE2B e3741fe56b47d500f6bf9ed09a9b4345564e9beaeae4546860223d5bf97d6099db6cd5e4799f2e85b793fe67f3233e291476a9dca68b1a5389a15a3be69667d8 SHA512 1d07f7d52b8c6a773d486d83dfdb2a13b8504c065a68cf500fca4fc086c9a49bbe489e03151b05af42d74e20627a13b879131aade0a941439c923efa69014041
+EBUILD lua-5.3.6-r1.ebuild 5800 BLAKE2B d3ba9b65ef465fd0ba3350eacc83d282618591c72e4866c7f1730406c118f2956cb53e2f0b015d14cfe2ed601820e44cd415658f518512fe6f811438b9d15c6a SHA512 e25977c341752f4f3e65aac0746969df628009e288bb81545e4b7897e6a4d56da0f6021c59162ad7473ff0487e2aa71015f2ca75d893c84fe883f447e911c241
+EBUILD lua-5.4.1-r1.ebuild 5763 BLAKE2B c36fbfbfe4d672a96334fc9a8d02ebe727490b3bc674a9895a9e90a315a2d507e04925392f9a02a848e0514de5eb2937680c3fb32da863f2f0fa5f90d2d330b0 SHA512 7469c2131d815a830eee6822623022ea29ae6526534eff52ad983955ae521e2165a07c15ada3daec2547b633d22f1b99cb5d5a8ebf158a9a98948ab864f2b294
MISC metadata.xml 524 BLAKE2B 688341a9dfa433bbc2e3fc1edb8a44d53dcee036afeb5b2c7c8fbfa0f81d1e53a6c7910b32bec637ad1cd518e48afdd0806a286dadbb6c7a88853a93aa7f3545 SHA512 92ee6e13c3fcc5ba1d2cf3ec58a54b051f1fae8646b64fae25923108a78abc77b05992abbed5a04afbc2043ea0b47749544e348506ab554d57b19bcf3b435e52
diff --git a/dev-lang/lua/lua-5.1.5-r105.ebuild b/dev-lang/lua/lua-5.1.5-r105.ebuild
index b3446900028f..31cf0b445a0f 100644
--- a/dev-lang/lua/lua-5.1.5-r105.ebuild
+++ b/dev-lang/lua/lua-5.1.5-r105.ebuild
@@ -15,7 +15,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~
IUSE="+deprecated readline static"
RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1:0=[${MULTILIB_USEDEP}] )
- app-eselect/eselect-lua
+ >=app-eselect/eselect-lua-3
!dev-lang/lua:0"
DEPEND="${RDEPEND}
sys-devel/libtool"
@@ -140,6 +140,8 @@ multilib_src_test() {
}
pkg_postinst() {
+ eselect lua set --if-unset "${PN}${SLOT}"
+
if has_version "app-editor/emacs"; then
if ! has_version "app-emacs/lua-mode"; then
einfo "Install app-emacs/lua-mode for lua support for emacs"
diff --git a/dev-lang/lua/lua-5.2.4-r2.ebuild b/dev-lang/lua/lua-5.2.4-r2.ebuild
index e9de80efdfb9..79355e284ced 100644
--- a/dev-lang/lua/lua-5.2.4-r2.ebuild
+++ b/dev-lang/lua/lua-5.2.4-r2.ebuild
@@ -21,7 +21,7 @@ IUSE="+deprecated readline static test test-complete"
RESTRICT="!test? ( test )"
RDEPEND="readline? ( sys-libs/readline:0= )
- app-eselect/eselect-lua
+ >=app-eselect/eselect-lua-3
!dev-lang/lua:0"
DEPEND="${RDEPEND}
sys-devel/libtool"
@@ -192,6 +192,8 @@ src_test() {
}
pkg_postinst() {
+ eselect lua set --if-unset "${PN}${SLOT}"
+
if has_version "app-editor/emacs"; then
if ! has_version "app-emacs/lua-mode"; then
einfo "Install app-emacs/lua-mode for lua support for emacs"
diff --git a/dev-lang/lua/lua-5.3.6-r1.ebuild b/dev-lang/lua/lua-5.3.6-r1.ebuild
index a65d701dcd53..f6968026e01c 100644
--- a/dev-lang/lua/lua-5.3.6-r1.ebuild
+++ b/dev-lang/lua/lua-5.3.6-r1.ebuild
@@ -21,7 +21,7 @@ IUSE="+deprecated readline static test test-complete"
RESTRICT="!test? ( test )"
RDEPEND="readline? ( sys-libs/readline:0= )
- app-eselect/eselect-lua
+ >=app-eselect/eselect-lua-3
!dev-lang/lua:0"
DEPEND="${RDEPEND}
sys-devel/libtool"
@@ -192,6 +192,8 @@ src_test() {
}
pkg_postinst() {
+ eselect lua set --if-unset "${PN}${SLOT}"
+
if has_version "app-editor/emacs"; then
if ! has_version "app-emacs/lua-mode"; then
einfo "Install app-emacs/lua-mode for lua support for emacs"
diff --git a/dev-lang/lua/lua-5.4.1-r1.ebuild b/dev-lang/lua/lua-5.4.1-r1.ebuild
index 898ba67e1e45..e21e767c10b0 100644
--- a/dev-lang/lua/lua-5.4.1-r1.ebuild
+++ b/dev-lang/lua/lua-5.4.1-r1.ebuild
@@ -18,7 +18,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~
IUSE="+deprecated readline static test test-complete"
COMMON_DEPEND="
- app-eselect/eselect-lua
+ >=app-eselect/eselect-lua-3
readline? ( sys-libs/readline:0= )
!dev-lang/lua:0"
DEPEND="${COMMON_DEPEND}"
@@ -189,6 +189,8 @@ src_test() {
}
pkg_postinst() {
+ eselect lua set --if-unset "${PN}${SLOT}"
+
if has_version "app-editor/emacs"; then
if ! has_version "app-emacs/lua-mode"; then
einfo "Install app-emacs/lua-mode for lua support for emacs"
diff --git a/dev-lang/mujs/Manifest b/dev-lang/mujs/Manifest
index 7d665ab768ae..7e8e94758baa 100644
--- a/dev-lang/mujs/Manifest
+++ b/dev-lang/mujs/Manifest
@@ -1,8 +1,4 @@
AUX mujs-1.0.5-flags.patch 839 BLAKE2B 843d1bf60167dfb91a5736ee936098c8f6b716f7a70118512d102adb3dc00223d5a3f1fb8da3a57b89797d5b26ebf8120cc1ef2013162aeff288be07cb99d99f SHA512 35681b868e129edffe27e41b793ef073b9ebeb5842212116f9740257515a3fb0d2f00d828a72d96b630c7632184ff9340325a5d79503e5a4c5a52892bd26f4bd
-DIST mujs-1.0.6.tar.gz 121385 BLAKE2B b74da9cc9df6c51d81fe4b6170fddd9bfd3e37cc1c48509ddbcc9b657feb7169cfa98427770a118fb9c0923e70320668198739ea111cbd5d1c2303b2ada7093d SHA512 c3062348dcc79b8ea3726fc528b3ba765d3462232059617b9ab221ba47fa904cc81a305a6199a9a2cea24a2d891ca63d475b4884cd4e53fa715b3a55f51ca4d9
-DIST mujs-1.0.7.tar.xz 93928 BLAKE2B 3c29ad3c23b75ee310824a36c0b08ede07b4ebaebff78558d07bc0eda55d6a994551502089cebd5b53ae24364ec1170e0865b7f1560d909dd15a18040666fea2 SHA512 30cc06ce4a608e091d46ba903ffc2eda29972cf583eb077d7824627fa20423c4721a406bf4271ebd5e5cade74f34e19acc9cffbc6d4d44314085a5525e91564f
DIST mujs-1.0.9.tar.gz 123113 BLAKE2B c55deaf14508c412394bf5fe3a53ef581d4e4726024d65f2ba5155eb2400a6e2f043c9f6721b170d19297e2cd38c62c462f3b4e102eb4bfe6e7857b40156c18b SHA512 a3dbc8dbf5c16b7de9803954fe38ea9f77c0e5b7de3895966ec0877e063d463c9950499791ea0d102e464bd0426413689f3edb15e38db3f13915d72f27556725
-EBUILD mujs-1.0.6.ebuild 1306 BLAKE2B 3b8443a25740336511efe985d48079fccb76a8c8c5e9bf69ca307c0393923423339a673eab22310cec31739e88bf62799126a17f4b6fa6e52de111978731a0dd SHA512 cbd0bfdccee68ea8d01c5438fc6f27169f3afade7f5fb809c117b4d9fe8fcc3dff98473480983c17fc7ca6ba6969e474e6ddc021ab966eb5895fc740ccddb537
-EBUILD mujs-1.0.7.ebuild 1277 BLAKE2B 6fe2022d19344c58d2ca3c69fab015aee765eca4b7818249e8c7b064cad5a95256563707766d4d02d2c87e963884afc97ac976dfbc68e2120148ec7898fdf396 SHA512 18da4d979159a1cbb1051d1bcacece833b4b0a311960411cfe0185c2ae931a64a352429d2797450e495f681f5a52529ec1eb4af7be7ce6df4f3ae7213f2d7fb0
EBUILD mujs-1.0.9.ebuild 1382 BLAKE2B 20eb932acd9e393a3180105580dedeb681e9f577ea7ffd2474909342fdadf22424b594ed72ffff16d1df303a467b6f25f43b8a699caac35c010f72109b5846dc SHA512 eb702eee9ff0a5e1036a72d02a4841b5fd7b5326788c75a6cb2456687aa1fe8334cca5f70eee806dc42affbd666722490b19339e54836634fdc1c78969c81d18
-MISC metadata.xml 615 BLAKE2B 6eaeafe3a3827b4df244d65ebad6f90b1340ea690679d4b98bfd30ac36d985797a06d511c24fbbb8a458df7dbea1270e2ebe789b8eb2222fccdb2d7192059b49 SHA512 47d65a0ab37ab4defb5b2d5bba8f7a9b4abe263c59c65884da1d9eb895eab5a90e49a6e849e71ed0e54826988301ece5f973a54bb19c06ae771a2b104d3f9c56
+MISC metadata.xml 547 BLAKE2B fcf818d9a103347b5b47f7b7c77654e84db6aa2a8dd12f169d58522cb47a455f02f0bf66fc85057a2a10916c4a24dcdca87a5f2e12c54d184ea8d5af1db65810 SHA512 e6bac32e74df77c2ded4e9a9e6200ab76e06217b9a236d6bf5f0df23a031eab2519f26e3d402ff106f9506a4dbe3baf66cae5f961f6d016e7c42fe83fc532799
diff --git a/dev-lang/mujs/metadata.xml b/dev-lang/mujs/metadata.xml
index 20d9220869e6..e253a1b97495 100644
--- a/dev-lang/mujs/metadata.xml
+++ b/dev-lang/mujs/metadata.xml
@@ -4,7 +4,6 @@
<maintainer type="person">
<email>sam@gentoo.org</email>
<name>Sam James</name>
- <description>Caretaker; feel free to share this pkg</description>
</maintainer>
<longdescription>
MuJS is a lightweight Javascript interpreter designed for embedding in
diff --git a/dev-lang/mujs/mujs-1.0.6.ebuild b/dev-lang/mujs/mujs-1.0.6.ebuild
deleted file mode 100644
index c6663ac60e38..000000000000
--- a/dev-lang/mujs/mujs-1.0.6.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="An embeddable Javascript interpreter in C."
-HOMEPAGE="
- https://mujs.com/
- https://github.com/ccxvii/mujs/
-"
-SRC_URI="https://github.com/ccxvii/${PN}/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 ~x86-macos"
-IUSE="static-libs"
-
-RDEPEND="sys-libs/readline:0="
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.0.5-flags.patch"
-)
-
-src_prepare() {
- default
-
- tc-export AR CC
-
- # library's ABI (and API) changes in ~each release:
- # diff 'usr/includemujs.h' across releases to validate
- append-cflags -fPIC -Wl,-soname=lib${PN}.so.${PV}
-}
-
-src_compile() {
- emake VERSION=${PV} prefix=/usr shared
-}
-
-src_install() {
- local myeconfargs=(
- DESTDIR="${ED}"
- install-shared
- libdir="/usr/$(get_libdir)"
- prefix="/usr"
- VERSION="${PV}"
- $(usex static-libs install-static '')
- )
-
- emake "${myeconfargs[@]}"
-
- mv -v "${ED}"/usr/$(get_libdir)/lib${PN}.so{,.${PV}} || die
-
- dosym lib${PN}.so.${PV} /usr/$(get_libdir)/lib${PN}.so
- dosym lib${PN}.so.${PV} /usr/$(get_libdir)/lib${PN}.so.${PV:0:1}
-}
diff --git a/dev-lang/mujs/mujs-1.0.7.ebuild b/dev-lang/mujs/mujs-1.0.7.ebuild
deleted file mode 100644
index b95335f324a9..000000000000
--- a/dev-lang/mujs/mujs-1.0.7.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="An embeddable Javascript interpreter in C."
-HOMEPAGE="
- https://mujs.com/
- https://github.com/ccxvii/mujs/
-"
-SRC_URI="https://mujs.com/downloads/${P}.tar.xz"
-
-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 ~x86-macos"
-IUSE="static-libs"
-
-RDEPEND="sys-libs/readline:0="
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.0.5-flags.patch"
-)
-
-src_prepare() {
- default
-
- tc-export AR CC
-
- # library's ABI (and API) changes in ~each release:
- # diff 'usr/includemujs.h' across releases to validate
- append-cflags -fPIC -Wl,-soname=lib${PN}.so.${PV}
-}
-
-src_compile() {
- emake VERSION=${PV} prefix=/usr shared
-}
-
-src_install() {
- local myeconfargs=(
- DESTDIR="${ED}"
- install-shared
- libdir="/usr/$(get_libdir)"
- prefix="/usr"
- VERSION="${PV}"
- $(usex static-libs install-static '')
- )
-
- emake "${myeconfargs[@]}"
-
- mv -v "${ED}"/usr/$(get_libdir)/lib${PN}.so{,.${PV}} || die
-
- dosym lib${PN}.so.${PV} /usr/$(get_libdir)/lib${PN}.so
- dosym lib${PN}.so.${PV} /usr/$(get_libdir)/lib${PN}.so.${PV:0:1}
-}
diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest
index 3817c3166f7e..6d3971e8db51 100644
--- a/dev-lang/php/Manifest
+++ b/dev-lang/php/Manifest
@@ -1,5 +1,6 @@
AUX 20php5-envd 145 BLAKE2B 06476b8fc04d1e835496b417ac752f0834ddbe8584e4fddc6db0aa5e6845b82cdea0a1355c77125375dcdd0f0a3c19de5f3a8a64ee93950f96c437a16f971567 SHA512 581aa86479e3cd584ee1bc6dc6d4a135fe8ec343fe5519566d728d81f7018cfb23658bd0c0368951d380982c75adbb4f45acf3c146868aaf4e4ec8e9f2fad1ce
AUX php-7.2.13-intl-use-icu-namespace.patch 11499 BLAKE2B 0dca597d5afd0309595499e3ff860e2d83183e570d02f202a1e2966d430606f09b8dc7427c4007e791914c8ee093a2e7cbf7372baa7896ac06d1912f2e707c09 SHA512 1332eb76feda2100685e319ae046512cf12b55a0d2be537c2172ccf035b547d851f84fb7941389882d7e3d674d91441e018c7b8f1e3f0d4cced05c314d5821fe
+AUX php-7.2.34-use-after-free-bug76047.patch 5542 BLAKE2B ccdabbe7a45f10f7a6666afabf27f2ab18ed011989447d950debe703e5f210d86a728c11bf883c74dc4ce88d634a8f10d1c9130a6e2dfb486ab92ebc1fb15e3c SHA512 8e2cc3dab0e3f3d7ba9b4a8cf4a16daa9cd908a5c1dc42ee1dfc44be82b4faffbb46b5bb0a88d15252edf4c95e05b4877c94aeaa05e9c511f3a49adafbc62c73
AUX php-7.4.13-issue80368.patch 746 BLAKE2B 1523fe9a451022dab7261c1e1866af702ff8bf9163f67cb99ec7617e3304e23f29ba8c54f36e5e154fc6e6563e660229b4bbf481263c4f34978a656e57f335f4 SHA512 744a9d81a7a0c6a7ac8ffd78678681a671c6a611ce36d56b53bb5fb4ed84a671e6eade85604c9adca4e2b48499ecc2046cd295dce4cdd4fa56952a4bae45c2e7
AUX php-fpm_at-simple.service 316 BLAKE2B 0ba10f3e3b004fbf14956e1e4f04f59b8a127e6717fe6b92c09b9f931033a11551c75fbbee9010f6b694c5a8758ca0eec9eed457ae304ba0dea8f2c256c3b8d4 SHA512 7367a3f8d3874f8e0c76f331ba613a0250db02f60ad9f87affaf448dcb5bc34bcecb91d88f415764a12b24b46ae3d1b738a002af9f77a4b707e916e83a0021fd
AUX php-fpm_at.service 317 BLAKE2B f13fc38fcc0575a8517ee8d07b120efda37eabd2355061d0fdc303604c6b02ad42d7301180d86c977d5e585f5dd685343c592e37a6e0f44933707be79e0b77e0 SHA512 27982f9e2d958bfa75c89c7d3531e48d17fc388b1cdcbc8e09051b236b1184ee2baabdfcc567c19d9fcd067d4b3b86f171015616d8da42fccdabd89432d865e8
@@ -9,7 +10,7 @@ DIST php-7.2.34.tar.xz 12309432 BLAKE2B 50522786d39296bc7411931c4f357d53c7a25da2
DIST php-7.3.25.tar.xz 12136668 BLAKE2B b9bfb1de15a3f02bf5d228a2cf9b307c9eeadaea10cac22d40647db0147f4f93b41858ea4affa0701478dd397f0a87cae4e2f29a378f7c6730fdf7da5c48e0e8 SHA512 30b27deab12cf2544671afbbdaefd4bfea308eeed8e9c2150751c5bc9ece18d981bcc020eace35cbdbe88b45cffba8a1fca718fc4e74c3a7903d8b038015d31e
DIST php-7.4.13.tar.xz 10319848 BLAKE2B c1da97eb605f1fc2b36190bfe92feb1fd527f4aaf1483865561a08cf990e70445f5520c8abcea7d9c6482dc47e500507644e0cd2cc756cfa99adfec0359cd795 SHA512 3525f4fd4ea6d97ed75ed8360d2a851e8577c09247ae3c6eb7e7b43265ee418297d91c1022bf5bbb64d1eecdebbbc2e0f6d42b560f584a741b475db2c6897ea7
DIST php-8.0.0.tar.xz 10726788 BLAKE2B 16c4aa075ba5dee6d47086323cd152b33dc7b62ac6b3ab6637ec386c1048e256a160d72e72cbc88450af1e84389042ebf2d644d3361c9a34879cc494d5b9b64f SHA512 65630940c95436f3e3ecb71b9f1ca15bb4118267dbda604ed1ee009d528c21a3ec21f48a15e4dd3529fe9cd2b354c211a7b4975b5de43e1f2afa6656cabe1fd0
-EBUILD php-7.2.34.ebuild 22651 BLAKE2B 9431a6e26752b96101826946c969e4ac1a2a1c04b9b42ad7f2b8f4733d8e3ec0614b75dddb2a54c40868d76e7a9b3a46001dc0b2a5152ac540175b0875753603 SHA512 bb61083533a443fe07b76c30028a3b7b8657a7c51ece6003ebc44a5e53224a70e8cad6d82fadcd509ea1ae4e4383ddad1c8d7edea7f200c5d37e445a88913d41
+EBUILD php-7.2.34-r1.ebuild 22873 BLAKE2B 116336b7a675c939dd7eb690012ac49a4f47451caaa3ebab8f2aef2f1fd70bb971d51c4a4fc1995b66089d29abd0e358cc1fb9c21b21676ca308565c1cdf1b64 SHA512 1b82aa52cf0b9d53bd0b8753578c18ef88f999bf479f5c7ae2a9a6a43d8dc880169f485c11bc4fd4a53c153e3a5dfbad5f0bea369b9945dbeb067cd645a6306c
EBUILD php-7.3.25.ebuild 22664 BLAKE2B 2191d27cc589cf5b0d85c33c3c81cddec0389719973c82b2665b4ae5be145e08c427fe4d59978ba07d04e3b3026f54c5471a51f20ce8ab02e55f4e6a269a3e47 SHA512 70a1783a530b13c38f1a9ecb8c381cd34ae9cad6124ff96cf7b28bdb97c447f133acbdd9bbe515b799eecfdc201d7d3524079a405fa989d07e7b9661916b374b
EBUILD php-7.4.13.ebuild 21413 BLAKE2B 274ac296e7874ec14d3f458672156dc127c83d6627419856ddf762cd66e2ddb2b081a671d7f135e8827b5f718508b4cee016d52c93e759cc1dacb364f945cfdb SHA512 2be6393ecc2d877ccd13c7731794c1fbd817594ac33576e04e7d1510d8c6f1e8fbf49a6d4dd00e7e65e266853e12c9042fb94d1e4cf12d7ad2999fc1b85a4979
EBUILD php-8.0.0.ebuild 21276 BLAKE2B e58d02e2c685bd56435360a6c3801c1c6e1f7d27f9614cac40737efefc62e8e62c168556a7c139b7e3b49171f6f3d2f65dc9f0de77848362dc8be0a7af22517b SHA512 5f4a494f280fd5079d80ea27ea25b6bf14a4cfc33380cefbdfd9f5b92367eb734bcc7fcf0cd4bc75740113e73531449d77b0af1c748701034845cbf19aaf1be4
diff --git a/dev-lang/php/files/php-7.2.34-use-after-free-bug76047.patch b/dev-lang/php/files/php-7.2.34-use-after-free-bug76047.patch
new file mode 100644
index 000000000000..b3a864ee82a8
--- /dev/null
+++ b/dev-lang/php/files/php-7.2.34-use-after-free-bug76047.patch
@@ -0,0 +1,174 @@
+Backport of https://git.php.net/?p=php-src.git;a=commit;h=ef1e4891b47949c8dc0f9482eef9454a0ecdfa1d
+
+--- a/Zend/tests/bug52361.phpt
++++ b/Zend/tests/bug52361.phpt
+@@ -25,9 +25,8 @@ try {
+ --EXPECTF--
+ 1. Exception: aaa in %sbug52361.php:5
+ Stack trace:
+-#0 %sbug52361.php(13): aaa->__destruct()
+-#1 %sbug52361.php(16): bbb()
+-#2 {main}
++#0 %sbug52361.php(16): aaa->__destruct()
++#1 {main}
+ 2. Exception: bbb in %sbug52361.php:13
+ Stack trace:
+ #0 %sbug52361.php(16): bbb()
+--- /dev/null
++++ b/Zend/tests/bug76047.phpt
+@@ -0,0 +1,68 @@
++--TEST--
++Bug #76047: Use-after-free when accessing already destructed backtrace arguments
++--FILE--
++<?php
++
++class Vuln {
++ public $a;
++ public function __destruct() {
++ unset($this->a);
++ $backtrace = (new Exception)->getTrace();
++ var_dump($backtrace);
++ }
++}
++
++function test($arg) {
++ $arg = str_shuffle(str_repeat('A', 79));
++ $vuln = new Vuln();
++ $vuln->a = $arg;
++}
++
++function test2($arg) {
++ $$arg = 1; // Trigger symbol table
++ $arg = str_shuffle(str_repeat('A', 79));
++ $vuln = new Vuln();
++ $vuln->a = $arg;
++}
++
++test('x');
++test2('x');
++
++?>
++--EXPECTF--
++array(1) {
++ [0]=>
++ array(6) {
++ ["file"]=>
++ string(%d) "%s"
++ ["line"]=>
++ int(%d)
++ ["function"]=>
++ string(10) "__destruct"
++ ["class"]=>
++ string(4) "Vuln"
++ ["type"]=>
++ string(2) "->"
++ ["args"]=>
++ array(0) {
++ }
++ }
++}
++array(1) {
++ [0]=>
++ array(6) {
++ ["file"]=>
++ string(%d) "%s"
++ ["line"]=>
++ int(%d)
++ ["function"]=>
++ string(10) "__destruct"
++ ["class"]=>
++ string(4) "Vuln"
++ ["type"]=>
++ string(2) "->"
++ ["args"]=>
++ array(0) {
++ }
++ }
++}
+--- a/Zend/zend_vm_def.h
++++ b/Zend/zend_vm_def.h
+@@ -2366,9 +2366,9 @@ ZEND_VM_HELPER(zend_leave_helper, ANY, ANY)
+ uint32_t call_info = EX_CALL_INFO();
+
+ if (EXPECTED((call_info & (ZEND_CALL_CODE|ZEND_CALL_TOP|ZEND_CALL_HAS_SYMBOL_TABLE|ZEND_CALL_FREE_EXTRA_ARGS|ZEND_CALL_ALLOCATED)) == 0)) {
++ EG(current_execute_data) = EX(prev_execute_data);
+ i_free_compiled_variables(execute_data);
+
+- EG(current_execute_data) = EX(prev_execute_data);
+ if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) {
+ zend_object *object = Z_OBJ(execute_data->This);
+ #if 0
+@@ -2394,12 +2394,12 @@ ZEND_VM_HELPER(zend_leave_helper, ANY, ANY)
+ LOAD_NEXT_OPLINE();
+ ZEND_VM_LEAVE();
+ } else if (EXPECTED((call_info & (ZEND_CALL_CODE|ZEND_CALL_TOP)) == 0)) {
++ EG(current_execute_data) = EX(prev_execute_data);
+ i_free_compiled_variables(execute_data);
+
+ if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) {
+ zend_clean_and_cache_symbol_table(EX(symbol_table));
+ }
+- EG(current_execute_data) = EX(prev_execute_data);
+
+ /* Free extra args before releasing the closure,
+ * as that may free the op_array. */
+@@ -2449,6 +2449,7 @@ ZEND_VM_HELPER(zend_leave_helper, ANY, ANY)
+ ZEND_VM_LEAVE();
+ } else {
+ if (EXPECTED((call_info & ZEND_CALL_CODE) == 0)) {
++ EG(current_execute_data) = EX(prev_execute_data);
+ i_free_compiled_variables(execute_data);
+ if (UNEXPECTED(call_info & (ZEND_CALL_HAS_SYMBOL_TABLE|ZEND_CALL_FREE_EXTRA_ARGS))) {
+ if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) {
+@@ -2456,7 +2457,6 @@ ZEND_VM_HELPER(zend_leave_helper, ANY, ANY)
+ }
+ zend_vm_stack_free_extra_args_ex(call_info, execute_data);
+ }
+- EG(current_execute_data) = EX(prev_execute_data);
+ if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) {
+ OBJ_RELEASE((zend_object*)EX(func)->op_array.prototype);
+ }
+--- a/Zend/zend_vm_execute.h
++++ b/Zend/zend_vm_execute.h
+@@ -434,9 +434,9 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_leave_helper_SPEC(ZEND_OPCODE_
+ uint32_t call_info = EX_CALL_INFO();
+
+ if (EXPECTED((call_info & (ZEND_CALL_CODE|ZEND_CALL_TOP|ZEND_CALL_HAS_SYMBOL_TABLE|ZEND_CALL_FREE_EXTRA_ARGS|ZEND_CALL_ALLOCATED)) == 0)) {
++ EG(current_execute_data) = EX(prev_execute_data);
+ i_free_compiled_variables(execute_data);
+
+- EG(current_execute_data) = EX(prev_execute_data);
+ if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) {
+ zend_object *object = Z_OBJ(execute_data->This);
+ #if 0
+@@ -462,12 +462,12 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_leave_helper_SPEC(ZEND_OPCODE_
+ LOAD_NEXT_OPLINE();
+ ZEND_VM_LEAVE();
+ } else if (EXPECTED((call_info & (ZEND_CALL_CODE|ZEND_CALL_TOP)) == 0)) {
++ EG(current_execute_data) = EX(prev_execute_data);
+ i_free_compiled_variables(execute_data);
+
+ if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) {
+ zend_clean_and_cache_symbol_table(EX(symbol_table));
+ }
+- EG(current_execute_data) = EX(prev_execute_data);
+
+ /* Free extra args before releasing the closure,
+ * as that may free the op_array. */
+@@ -517,6 +517,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_leave_helper_SPEC(ZEND_OPCODE_
+ ZEND_VM_LEAVE();
+ } else {
+ if (EXPECTED((call_info & ZEND_CALL_CODE) == 0)) {
++ EG(current_execute_data) = EX(prev_execute_data);
+ i_free_compiled_variables(execute_data);
+ if (UNEXPECTED(call_info & (ZEND_CALL_HAS_SYMBOL_TABLE|ZEND_CALL_FREE_EXTRA_ARGS))) {
+ if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) {
+@@ -524,7 +525,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_leave_helper_SPEC(ZEND_OPCODE_
+ }
+ zend_vm_stack_free_extra_args_ex(call_info, execute_data);
+ }
+- EG(current_execute_data) = EX(prev_execute_data);
+ if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) {
+ OBJ_RELEASE((zend_object*)EX(func)->op_array.prototype);
+ }
+
diff --git a/dev-lang/php/php-7.2.34.ebuild b/dev-lang/php/php-7.2.34-r1.ebuild
index 07f0645b8d80..a534bc594e5f 100644
--- a/dev-lang/php/php-7.2.34.ebuild
+++ b/dev-lang/php/php-7.2.34-r1.ebuild
@@ -3,7 +3,7 @@
EAPI="7"
-inherit flag-o-matic systemd autotools
+inherit flag-o-matic systemd autotools toolchain-funcs
DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="https://www.php.net/"
@@ -157,6 +157,7 @@ RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/php-freetype-2.9.1.patch"
"${FILESDIR}/php-7.2.13-intl-use-icu-namespace.patch"
+ "${FILESDIR}/php-7.2.34-use-after-free-bug76047.patch"
)
PHP_MV="$(ver_cut 1)"
@@ -239,6 +240,10 @@ src_configure() {
addpredict /usr/share/snmp/mibs/.index #nowarn
addpredict /var/lib/net-snmp/mib_indexes #nowarn
+ # Fix building against >=ICU-68, https://bugs.php.net/80310
+ append-cflags -DU_DEFINE_FALSE_AND_TRUE=1
+ append-cxxflags -DU_DEFINE_FALSE_AND_TRUE=1
+
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
# The php-fpm config file wants localstatedir to be ${EPREFIX}/var
diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
index 9adbc28204d2..da63f21d558f 100644
--- a/dev-lang/python/Manifest
+++ b/dev-lang/python/Manifest
@@ -10,6 +10,7 @@ DIST Python-3.7.9.tar.xz 17389636 BLAKE2B 484833aa2aa4e29051a02969294f72099ff6f1
DIST Python-3.8.4.tar.xz 18020412 BLAKE2B cfcfb293c413b25fc3ca48116cf8ffaba7bee18e9af9accf26be9b4373a0c62dd8e9da70e5a8a38ba6da4d1afbdbd589ae5ea4b618b65130ae061698b445908c SHA512 37a36d014a8372742be9d0bd9dd3a275e100dc21b1515c145bc62425d4d157327b6e63ad99bc888c0b36c1da4c05676c40eb086e75072d1906e3210ec3043dcb
DIST Python-3.8.5.tar.xz 18019640 BLAKE2B bb3e0566afe28759e4ab129ad0986a0fc5103514f2e2b22ff4aa3973c3173ebdd24d4267fbaf903841814a611fd9ea122673e5a1918934366e5c0efaef9d7517 SHA512 460cee65d7df7150694590575502d7f22e548ebfc99c8f8b363eef8bf30ee72e58d8ffacb1d607824f877f880eb9fd6775a508388029583e1e1df3380f3f9587
DIST Python-3.8.6.tar.xz 18233864 BLAKE2B c8a8ef6055e344dda30eb808804cfa62016b4f840257cffd5a495e5932f5696e50579d49b8181a487c9cd4a89bdb95656e80981039783a21d20f7980aa2c9883 SHA512 22faec84f6e172e1ac7c6bd6fd37e9b6ae4afc91cf5136aa8cac8ebbed8d18793f9196e8749b8ccc43447cb6c41cb450f65ea72dd363c06dfaeb14e0455f5560
+DIST Python-3.8.7.tar.xz 18261096 BLAKE2B 6ac20efef41e828cb796aabcb7808400d494b9b48759950c8c15ee90762394f6763163d8e37ab407c1c79ebb9cda09189eaa969a75f96c86a96ccee962443924 SHA512 6a27d8eab3076930df46b0cf127f9b664f8d4147349b2b98132f464deb7f69d87e0167e8ee8e6c64249125ad73760d965ecbc81c252b63a1e7aac95594c62b74
DIST Python-3.8.7rc1.tar.xz 18258688 BLAKE2B cd18abf3a2f97856581735fc6ab98882c3839edd84f736b2f681a227694319f410154201e5e09938ec45ba00b69a593737da22263560080da72625f8611f14c6 SHA512 0c42622433b968dc0943894bff6e90603bdfc4e49ab4373e2686a158e1d4b3450e60aa16d8203ce3d0e0e8bb0ebcaad281ccd7eb03b355eeeb7c811a4cd799ec
DIST Python-3.9.0.tar.xz 18866140 BLAKE2B 8e12b64e187a65461473ac3b281dc489f0abac586e0755f6dbeceb236b34bdc008085eeac9ee1a19d76f5ec6a2fbda623985454c9d0164c4888a97b8cd940034 SHA512 b141039c9701a8cb0d15cd11a279153077524af4d0599e7d2c7279d4c18d05fda06b33ef82342d875de996c7117b7dc6eb154dc3669d38a1efa99801aeec6c5e
DIST Python-3.9.1.tar.xz 18897104 BLAKE2B bcbce176510e8e7c6ba6070588bedc52121c21c5271f59b3d629dfb542c51ee62622b2ca53a6e2041f1a51b2d089368cc4de9bb749e8ebad9a2c4eb4de83538e SHA512 b90029d6825751685983e9dcf0e0ec9e46f18e6c7d37b0dd7a245a94316f8c0090308ad7c2b2b49ed2514b0b909177231dd5bcad03031bf4624e37136fcf8019
@@ -29,7 +30,7 @@ DIST python-gentoo-patches-3.8.6.tar.xz 10956 BLAKE2B e3241d97f886d0a37f85735102
DIST python-gentoo-patches-3.9.0-r1.tar.xz 13728 BLAKE2B 50e85194c6bafefb8a0ddc4c9dea39227fc2c170db37ab44fa1e068340fa2fc5a59489f50431f0792024df551fc54a20de594579b57717c89fa134b3f000bb6d SHA512 a38c2800e3a0740af79f75f4120c925c7a891aa1f14a71ab56ad97fbabca3573c571140da3f34050bd9f97bd854a704453a910fa6883162196e6d1335a965b61
DIST python-gentoo-patches-3.9.0rc1.tar.xz 8856 BLAKE2B 7bd032dfd047640c6a53633b5b9ee7b24199106b985230f772dda978d3b79fe0406eea64c4a842603a20afb71a90469befa7ec59a5ef1f793e4c901aa85952d1 SHA512 85a7d4397abf2a0f3c3d07a94a3e184ba3dcb347f3b70ee2cb77e81aac63846b01323a0228afd0fd1d32b3cafb64b18f82e6f5bfd88e4d564261ddae11e747eb
EBUILD python-2.7.18-r4.ebuild 10624 BLAKE2B 3981c0899d899e4dfbe198618e005bc9190af8cfbc6ca5b85911c717127bfa19ca546e0dcbf7b0317497e7f4d3fd8498e4b153f38468f31f83008c1f39da2067 SHA512 e3aee3d42db1539233a2a543818cd8a733dcb7c2a33a804d7f6b45cd1d087cd1e665e150ef308e61f49e969477fc1d3f8bd55ba5e9117a274e7e9645e65a3f3d
-EBUILD python-2.7.18-r5.ebuild 10628 BLAKE2B f32e660cba19a249cb56db7b9d8b50f86df80a98df23451bd59e7a620b16262955cd5ffa843cc001a02ccfbce68a7349cc00cd70b545177e4a5d339f5d138807 SHA512 46645265f815014399e7f83b5424dd03285d8eab9c513629243780e5a63fc118dc103c28f4729521b750c0cc105262a58c339decac683d09fa0f019dd64fe334
+EBUILD python-2.7.18-r5.ebuild 10627 BLAKE2B 1d50d2743f31982e24caa2107317883a1a2bd8f83201e7626aa09c744b5cd68436b22becffa1901753673622ab0967fd4d0954d99625571e651fb4e54f5e6aab SHA512 f6a4b0ee545be19fbceace65bfa5286fbca301c4744b923e6a969981d536b955a494bb71f6e9f271ff5dab9efd3cd95d2f48e5e99151c3601ba089f16c67b335
EBUILD python-3.10.0_alpha1.ebuild 9548 BLAKE2B 7f7fadcf9b5f9b09764229ee2c1a4d5be6fc4bc90da7555cafecb16d2690df9098cf28fe3bb719533ad9a608424ed389b17518091d130cd9e0ced7bcf3e787b9 SHA512 fb0e052eef6ba52360903b4112f30f1ea255ba9a56061079124fd7a6379ddce708efc1d2d9241f268f370f0c8158532a83e014d305c469e643ed74392181a301
EBUILD python-3.10.0_alpha3.ebuild 9548 BLAKE2B 7f7fadcf9b5f9b09764229ee2c1a4d5be6fc4bc90da7555cafecb16d2690df9098cf28fe3bb719533ad9a608424ed389b17518091d130cd9e0ced7bcf3e787b9 SHA512 fb0e052eef6ba52360903b4112f30f1ea255ba9a56061079124fd7a6379ddce708efc1d2d9241f268f370f0c8158532a83e014d305c469e643ed74392181a301
EBUILD python-3.6.11-r2.ebuild 10610 BLAKE2B d9074e767b11ed420c843665b87c466f0014713221c0db4a026fbd91a39debc69689a1674db8a0c0b80dc3eb8df7bc86fe92972918f4c95ef8a52da2936bf631 SHA512 693795866815e724267877e4f97e14d09eda9f321b5c2b481f54952fcefc0859072ab42306eb03b81bd8b3e0a2d71435367452330caabf6bfebbcd2062d1ced0
@@ -42,6 +43,7 @@ EBUILD python-3.8.4-r1.ebuild 9928 BLAKE2B 9ebf074bef412756a79b6a9995f8eebdb9223
EBUILD python-3.8.5.ebuild 10256 BLAKE2B 63447912d09c28b3774d717a82ac6e275197de69fa00e3af7faf6e6eb09c60917480635035a71dbf3401fe8daeef62c4a130c64ccef7d47eed9607c2cf3d5b21 SHA512 fda9f806cac3c1019af06550f6ba2270993395f8cbf47da31771e0ae0a315282b5335bce91cb8d2ca95861ca50c316bd62ae8b7cf537624765e8359b11ce9ce4
EBUILD python-3.8.6-r1.ebuild 10261 BLAKE2B 22fd9fa2595850cf8c7a0f3cf5e89b405c72f04f6e766d30204f6c7268682b5a69650216c4ed728b82afab68b1872e7df23a3f054f69390897bc78e0d2317bae SHA512 9d7f0eb2ce79592fd3121c82474d0b5669a430bd5c9ff32c8f0d3ad32f354a42045681e10b2aa379e5d55cfe098aa5e10e81b0b5b7747eab4df7f51648fa2ae2
EBUILD python-3.8.6.ebuild 10257 BLAKE2B b118a84fd01fe4b410264840ff22e14996e96b61ce672a5856a21d31664f0caa89f03264c780665d3ba5e7922e3984e0df667667f346f3907e9e175622a118da SHA512 f8369eb3bf704366b187202b6f883ff8d5a9585b4a1aedf281c3e76f9d4009d169bfb62ccaa7489726ea8af692a7fbf1e79264f5bb4aa4339fad202ba6bffb79
+EBUILD python-3.8.7.ebuild 10264 BLAKE2B 539ee3af4b4820dd7677e351f16e50d706d6de8d45b7b48374653a024fa948f1945e97339bb7f961653c2d2ef52b5ba9216c86ef39cee9af16317535c298c515 SHA512 36e79faa5468446b33322c7a4bb1c4142307f51525690c3cdb99cfbefad362535c637635027af904215130c0ad6095cef27b600b9894cc4fc846bc93ee4603f2
EBUILD python-3.8.7_rc1.ebuild 10276 BLAKE2B 5baaa0050d1c1fbbff68ff43f622a609678b40b7db953f7355edd5ffdbec38e1b6d922362ee6cd1c47cba9e050e94317417f8fd2e1b7d9394010f24c92d9e949 SHA512 cc84aa79891e1c0e26249f5c7bf7c63ccea625258ffff7d09e0d17404a866075ca0948fd910a9480f1c2447cb35cab090de2ccf26df63e3533b5680935bde771
EBUILD python-3.9.0-r1.ebuild 9536 BLAKE2B 71ffd602605e2c311a97b842fa117974b89f29b625c22626eac0b2b650d2516022a749815bfecf486b62fdfb2737e0c21dbc95cde9680859ed96d2c02fa544b5 SHA512 5fab1557abcf3fd6ec2d5437f75f2a88e994ead37243bba40e00523ff91eefc44b2fde85b26ad39576992fcb9bb6368ed5051381e3768e295e261d50e7457f0e
EBUILD python-3.9.0.ebuild 9533 BLAKE2B b4efc6b65f8fa865aa9f16484866b5f385a8c70e5276ee9e8c06772e16c23c8f9c058b4dfc891fd44daefd8d66a932155a02028bfeeaae283ba9d9a7bd9e3b0d SHA512 e21249bdd74e0304cf813f99a00dbc618dc8b5a358e0ca8547e631ff2a3d40cebe8c91313d07b3c992373b7cfb06fb00123016c5870d787bca14377cceff0ce5
diff --git a/dev-lang/python/python-2.7.18-r5.ebuild b/dev-lang/python/python-2.7.18-r5.ebuild
index 96ab96cf4a88..a9a3f73e8e05 100644
--- a/dev-lang/python/python-2.7.18-r5.ebuild
+++ b/dev-lang/python/python-2.7.18-r5.ebuild
@@ -18,7 +18,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
-KEYWORDS="~alpha ~amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~s390 ~sparc x86"
+KEYWORDS="~alpha ~amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~s390 sparc x86"
IUSE="-berkdb bluetooth build elibc_uclibc examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
# Do not add a dependency on dev-lang/python to this ebuild.
diff --git a/dev-lang/python/python-3.8.7.ebuild b/dev-lang/python/python-3.8.7.ebuild
new file mode 100644
index 000000000000..eaee9eaef9c5
--- /dev/null
+++ b/dev-lang/python/python-3.8.7.ebuild
@@ -0,0 +1,355 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+WANT_LIBTOOL="none"
+
+inherit autotools flag-o-matic multiprocessing pax-utils \
+ python-utils-r1 toolchain-funcs
+
+MY_P="Python-${PV}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-3.8.6"
+
+DESCRIPTION="An interpreted, interactive, object-oriented programming language"
+HOMEPAGE="https://www.python.org/"
+SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
+RESTRICT="!test? ( test )"
+
+# Do not add a dependency on dev-lang/python to this ebuild.
+# If you need to apply a patch which requires python for bootstrapping, please
+# run the bootstrap code on your dev box and include the results in the
+# patchset. See bug 447752.
+
+RDEPEND="app-arch/bzip2:=
+ app-arch/xz-utils:=
+ dev-libs/libffi:=
+ sys-apps/util-linux:=
+ >=sys-libs/zlib-1.1.3:=
+ virtual/libcrypt:=
+ virtual/libintl
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ ncurses? ( >=sys-libs/ncurses-5.2:= )
+ readline? ( >=sys-libs/readline-4.1:= )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3= )
+ ssl? (
+ !libressl? ( dev-libs/openssl:= )
+ libressl? ( dev-libs/libressl:= )
+ )
+ tk? (
+ >=dev-lang/tcl-8.0:=
+ >=dev-lang/tk-8.0:=
+ dev-tcltk/blt:=
+ dev-tcltk/tix
+ )
+ xml? ( >=dev-libs/expat-2.1:= )"
+# bluetooth requires headers from bluez
+DEPEND="${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ test? ( app-arch/xz-utils[extra-filters(+)] )
+ virtual/pkgconfig
+ !sys-devel/gcc[libffi(-)]"
+RDEPEND+=" !build? ( app-misc/mime-types )"
+PDEPEND=">=app-eselect/eselect-python-20140125-r1"
+
+src_prepare() {
+ # Ensure that internal copies of expat, libffi and zlib are not used.
+ rm -fr Modules/expat || die
+ rm -fr Modules/_ctypes/libffi* || die
+ rm -fr Modules/zlib || die
+
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+
+ sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
+ setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
+
+ # force correct number of jobs
+ # https://bugs.gentoo.org/737660
+ local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+ sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
+ sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
+
+ eautoreconf
+}
+
+src_configure() {
+ local disable
+ # disable automagic bluetooth headers detection
+ use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
+ use gdbm || disable+=" gdbm"
+ use ncurses || disable+=" _curses _curses_panel"
+ use readline || disable+=" readline"
+ use sqlite || disable+=" _sqlite3"
+ use ssl || export PYTHON_DISABLE_SSL="1"
+ use tk || disable+=" _tkinter"
+ use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
+ export PYTHON_DISABLE_MODULES="${disable}"
+
+ if ! use xml; then
+ ewarn "You have configured Python without XML support."
+ ewarn "This is NOT a recommended configuration as you"
+ ewarn "may face problems parsing any XML documents."
+ fi
+
+ if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
+ einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
+ fi
+
+ if [[ "$(gcc-major-version)" -ge 4 ]]; then
+ append-flags -fwrapv
+ fi
+
+ filter-flags -malign-double
+
+ # https://bugs.gentoo.org/show_bug.cgi?id=50309
+ if is-flagq -O3; then
+ is-flagq -fstack-protector-all && replace-flags -O3 -O2
+ use hardened && replace-flags -O3 -O2
+ fi
+
+ # https://bugs.gentoo.org/700012
+ if is-flagq -flto || is-flagq '-flto=*'; then
+ append-cflags $(test-flags-CC -ffat-lto-objects)
+ fi
+
+ # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
+ tc-export CXX
+
+ # Set LDFLAGS so we link modules with -lpython3.2 correctly.
+ # Needed on FreeBSD unless Python 3.2 is already installed.
+ # Please query BSD team before removing this!
+ append-ldflags "-L."
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+
+ local dbmliborder
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+
+ local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
+ --enable-shared
+ $(use_enable ipv6)
+ --infodir='${prefix}/share/info'
+ --mandir='${prefix}/share/man'
+ --with-computed-gotos
+ --with-dbmliborder="${dbmliborder}"
+ --with-libc=
+ --enable-loadable-sqlite-extensions
+ --without-ensurepip
+ --with-system-expat
+ --with-system-ffi
+ )
+
+ OPT="" econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+
+ emake CPPFLAGS= CFLAGS= LDFLAGS=
+
+ # Work around bug 329499. See also bug 413751 and 457194.
+ if has_version dev-libs/libffi[pax_kernel]; then
+ pax-mark E python
+ else
+ pax-mark m python
+ fi
+}
+
+src_test() {
+ # Tests will not work when cross compiling.
+ if tc-is-cross-compiler; then
+ elog "Disabling tests due to crosscompiling."
+ return
+ fi
+
+ # Skip failing tests.
+ local skipped_tests="gdb"
+
+ for test in ${skipped_tests}; do
+ mv "${S}"/Lib/test/test_${test}.py "${T}"
+ done
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+
+ local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+
+ emake test EXTRATESTOPTS="-u-network -j${jobs}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local result=$?
+
+ for test in ${skipped_tests}; do
+ mv "${T}/test_${test}.py" "${S}"/Lib/test
+ done
+
+ elog "The following tests have been skipped:"
+ for test in ${skipped_tests}; do
+ elog "test_${test}.py"
+ done
+
+ elog "If you would like to run them, you may:"
+ elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
+ elog "and run the tests separately."
+
+ if [[ ${result} -ne 0 ]]; then
+ die "emake test failed"
+ fi
+}
+
+src_install() {
+ local libdir=${ED}/usr/lib/python${PYVER}
+
+ emake DESTDIR="${D}" altinstall
+
+ # Remove static library
+ rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
+
+ sed \
+ -e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
+ -e "s/\(PY_LDFLAGS=\).*/\1/" \
+ -i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax_kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
+ use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+
+ use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
+
+ dodoc Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ docinto examples
+ find Tools -name __pycache__ -exec rm -fr {} + || die
+ dodoc -r Tools
+ fi
+ insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
+ local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
+ emake --no-print-directory -s -f - 2>/dev/null)
+ newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${PYVER}:" \
+ -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
+ "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
+
+ local -x EPYTHON=python${PYVER}
+ # if not using a cross-compiler, use the fresh binary
+ if ! tc-is-cross-compiler; then
+ local -x PYTHON=./python
+ local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
+ else
+ local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
+ fi
+
+ echo "EPYTHON='${EPYTHON}'" > epython.py || die
+ python_domodule epython.py
+
+ # python-exec wrapping support
+ local pymajor=${PYVER%.*}
+ local scriptdir=${D}$(python_get_scriptdir)
+ mkdir -p "${scriptdir}" || die
+ # python and pythonX
+ ln -s "../../../bin/${abiver}" \
+ "${scriptdir}/python${pymajor}" || die
+ ln -s "python${pymajor}" "${scriptdir}/python" || die
+ # python-config and pythonX-config
+ # note: we need to create a wrapper rather than symlinking it due
+ # to some random dirname(argv[0]) magic performed by python-config
+ cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
+ #!/bin/sh
+ exec "${abiver}-config" "\${@}"
+ EOF
+ chmod +x "${scriptdir}/python${pymajor}-config" || die
+ ln -s "python${pymajor}-config" \
+ "${scriptdir}/python-config" || die
+ # 2to3, pydoc
+ ln -s "../../../bin/2to3-${PYVER}" \
+ "${scriptdir}/2to3" || die
+ ln -s "../../../bin/pydoc${PYVER}" \
+ "${scriptdir}/pydoc" || die
+ # idle
+ if use tk; then
+ ln -s "../../../bin/idle${PYVER}" \
+ "${scriptdir}/idle" || die
+ fi
+}
+
+pkg_preinst() {
+ if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
+ python_updater_warning="1"
+ fi
+}
+
+eselect_python_update() {
+ if [[ -z "$(eselect python show)" || \
+ ! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
+ eselect python update
+ fi
+
+ if [[ -z "$(eselect python show --python${PV%%.*})" || \
+ ! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
+ then
+ eselect python update --python${PV%%.*}
+ fi
+}
+
+pkg_postinst() {
+ eselect_python_update
+
+ if [[ "${python_updater_warning}" == "1" ]]; then
+ ewarn "You have just upgraded from an older version of Python."
+ ewarn
+ ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
+ fi
+}
+
+pkg_postrm() {
+ eselect_python_update
+}
diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest
index 079a9a231ae9..1be5c16339e3 100644
--- a/dev-lang/ruby/Manifest
+++ b/dev-lang/ruby/Manifest
@@ -15,15 +15,9 @@ AUX 2.6/010-default-gem-location.patch 688 BLAKE2B 4c2074d69b9fe5258a2fe0e38bb50
AUX 2.7/010-default-gem-location.patch 688 BLAKE2B 4c2074d69b9fe5258a2fe0e38bb501a39f34ad1fa08ef338224edba1f06073138cbe3d831ecdf9910c989a7f0a1c6c6b73ced0d8ff212207a3a3df5f4d90b5de SHA512 65206a6ca42ade0413ae1467f41082f4a93b3166644d2504cff3d280d23da02fd41aea5aca69dd43f6081b436db90a5b1e98725d8fa51519ca302c02ec526ad7
DIST ruby-2.5.8.tar.xz 11298404 BLAKE2B 3256c0448e72b63c0bd89f89a27fa9c09c8feed54d42cd79899b7d5cfe9dbc29ca708d12c630b3f52ff85b0c6a4011ae7ff0483d64b2fd445700a72a91028035 SHA512 2886be764a454425c5beef2777c64a70ee0d048b07896b327633d904f5077fea4299526689f9e2ac4dcd2fc4811cf9a6c8ce75367ed35d29dfe1a54222872e0d
DIST ruby-2.6.6.tar.xz 11567284 BLAKE2B 45e910dd9b128c46bff3003834c4fdcbbc2e2e4d3e44f298ff4356a285de2c375d6b6021a3aa28d89336b32a1655fa4a7c086d07f4a0f6bcd578a11dd4a894da SHA512 86caf93dbf61d03781767ab5375a7edf4761f13ba08ccfefe16c0a7550499237e7390c2f72a95d42670d4fe76b2401b4218936187c62ec1572799e9e04c50d62
-DIST ruby-2.7.1.tar.xz 12003684 BLAKE2B 90a35c3e246cfe982a146be29a3d121d6e2c251ed96703dbc46b98c21e0e43e5445132e6119e584ae35f7193f063ff1b14822f947a4e07037c37fbba5e4038da SHA512 79f98b1ea98e0b10ec79da1883e8fc84d48ffe5c09ae945cbebde94365e35a589d919aac965f74d70ca7e21370ecee631ac5a8f9c4eac61d62f5aa629f27bf31
DIST ruby-2.7.2.tar.xz 12037052 BLAKE2B a4ad22295b3fed4e8064fc6e77adb8642d1fa7ae1f4ef912d7bde19c735cb25b1a3e3aefba53dad944046d844d608bcefba61c314cf1e52747f50d7d91f4c436 SHA512 7972278b096aa768c7adf2befd26003e18781a29ca317640317d30d93d6e963ded197724c8e2f1dfe1e838c5647176d414a74732a62e931fb50d6f2e0f777349
EBUILD ruby-2.5.8-r1.ebuild 7100 BLAKE2B 912195706cc476e52dd0e20005d4a04a11b286312de1129a91e281e291fa3caeb7de083e296db8384de3816198f3c1c02168bfc09120628cef95cece93345ad8 SHA512 1f20bab421047c622053d7e07a873e1e8c35bac6b5d938ed1d72e33cf7f99be7ec1f300eac9da38651fcc7b3761a81140f630cf1039cde78c3858e2942e01728
EBUILD ruby-2.5.8.ebuild 6189 BLAKE2B aa04b9f393085468d3452bfcc55a45c721bcbe51c9602d6f44510d1f936369f1c741ade879d24c619b1722270a460ba20bc679f0714a98d310d8293bc84c3678 SHA512 156ac0da5b5e6d1240bcb42ad9a7ce455a17077a3bfd66610d5425216ff7436462e8e1362764c8614900376eef146b168e1dd4691cddd9f13ded5a4a30204c9e
-EBUILD ruby-2.6.6-r1.ebuild 6614 BLAKE2B b4862b320dbb557bde3b3c6e86b0d178a3421587afdb848ecf5991d48525c20b0012cf88cd31cc5f130088127b6c6ea5dd121cb461c842cab183f3db02260356 SHA512 28f23b21a389e90a59738a4debb38ed0eb30e44eac1dd3df0037fdd37d6e1467ee61beaa5dd35460cd767b743ef48c6c31b243cb207ffdef3b94bb3ef6d6241e
EBUILD ruby-2.6.6-r2.ebuild 7508 BLAKE2B 57e533cae47720895e1c5b09489df0895540cafe9b6601c2434f73de8fba58fefc24ccc3d9c60c0b729eafb0200e4e28657ad10f20c578c6fc6f2a67950fd99a SHA512 a4c5caf911449ca64d801de6e44c9431d7934f885905040a830b90fe7c87ee50c8cf1e8fc838ab50af6856ac96c9b85f4e251408ea7aeeb8ebd335708e7d17eb
-EBUILD ruby-2.6.6.ebuild 6614 BLAKE2B af5f7d759a8676db12091569871bf5d39a430715b1bba11c6f8a7fafb210039d0966797c5b2974fb56e91e670b65710adb73dbcc64cf20f2473c1b02f84bd4ba SHA512 ca639f0b01b4618f876d6473aa4a6756a97d66b8194a623865f8f96758016e3d4109ca5905570bbd0c7ad680c66722fffa91fc6c506083fd8e0ea418e354ffe9
-EBUILD ruby-2.7.1-r1.ebuild 6777 BLAKE2B 6f2bf65a51e784c931b962b7e1430655dc194801a2fd0ea63eff7c6ff97dd624939ff5f37ed6a2fa9aaec27ab0cad94281d4172051cc5e298e4df3b15d6deb41 SHA512 733c164d8d1a70a68d313ec764807386df22cbefa04346e788b3701e7a242899cb086ae18096002c3dee0c3f6459752a3f751c032320a9b0ae947e0ab2d16cc4
-EBUILD ruby-2.7.1-r2.ebuild 6857 BLAKE2B e4ed8cbe491edcc6123435383ead38cbe968f388acd35a0b9aa4e2ce556b8ac15e4c8ae5057678c5ef3c9e552b2a285953e85792fef8d45b0242dc4a52a59bb1 SHA512 1ac8a7d752fd80d4b70833acb059f650b0e79df376a6c956dd1f47857ef418e8ba5a7ff3cdf893eec17dd7afef901b95dec25eab8b1bda0e7f907ca658933453
-EBUILD ruby-2.7.1.ebuild 6777 BLAKE2B 987421adeb916bed61606194e0c4eff5d26e4da8e7d973bcc4ee2983fdbfb38c030a256b5327d23af3e2fd44dd2287cbeb4fd7072d375a3723fc16b1e18a5430 SHA512 3b733ece468748c72245c0cd83f8cb603e279db33aefa224f52c3441143332939b35f773a1d2d4a2cca688a74875f32537209b15cffbb5b4d7c1f6618f8a4a6b
EBUILD ruby-2.7.2.ebuild 7679 BLAKE2B b4b0172836ea666a7e74d2cce467b7a19f449c702c49254a9a58f90925110207d9a9b183e285c63d8034eba931a30738fb935db129eece6ccafe1ff2615b4b73 SHA512 7dcac5ddecc5bd150a3b1c6a9ea29d34565fd242689c94d4101a5ff1e923f9917dc3ba0e8f32985092b21d067263f2cc08ca25d15808260c8100a9bffc76b29a
MISC metadata.xml 523 BLAKE2B 4ed08360a279c8d44fe87f677cdc24a76eda6d37c591186951e16321f464d4451d0d1299c4e1d996bffe15a8cca672d4c5c1bc5fb0aa6cda69b8eff90ec31df8 SHA512 f74c386a3d6314d630aff11c40314db40b7f9fb202910480b37aa65b7bac62d6e87fa7590b2a26aa1713bb65be486ed84138e1273eaf7c8b966d7414e6b55464
diff --git a/dev-lang/ruby/ruby-2.6.6-r1.ebuild b/dev-lang/ruby/ruby-2.6.6-r1.ebuild
deleted file mode 100644
index 7a67e1a482c5..000000000000
--- a/dev-lang/ruby/ruby-2.6.6-r1.ebuild
+++ /dev/null
@@ -1,232 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools flag-o-matic multilib
-
-MY_P="${PN}-$(ver_cut 1-3)"
-S=${WORKDIR}/${MY_P}
-
-SLOT=$(ver_cut 1-2)
-MY_SUFFIX=$(ver_rs 1 '' ${SLOT})
-RUBYVERSION=${SLOT}.0
-
-DESCRIPTION="An object-oriented scripting language"
-HOMEPAGE="https://www.ruby-lang.org/"
-SRC_URI="https://cache.ruby-lang.org/pub/ruby/${SLOT}/${MY_P}.tar.xz"
-
-LICENSE="|| ( Ruby-BSD BSD-2 )"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="berkdb debug doc examples gdbm ipv6 jemalloc jit libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
-
-RDEPEND="
- berkdb? ( sys-libs/db:= )
- gdbm? ( sys-libs/gdbm:= )
- jemalloc? ( dev-libs/jemalloc )
- jit? ( || ( sys-devel/gcc:* sys-devel/clang:* ) )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl )
- )
- socks5? ( >=net-proxy/dante-1.1.13 )
- tk? (
- dev-lang/tcl:0=[threads]
- dev-lang/tk:0=[threads]
- )
- dev-libs/libyaml
- dev-libs/libffi:=
- sys-libs/readline:0=
- sys-libs/zlib
- >=app-eselect/eselect-ruby-20181225
-"
-
-DEPEND="${RDEPEND}"
-
-BUNDLED_GEMS="
- >=dev-ruby/did_you_mean-1.2.1[ruby_targets_ruby26]
- >=dev-ruby/minitest-5.11.3[ruby_targets_ruby26]
- >=dev-ruby/net-telnet-0.2.0[ruby_targets_ruby26]
- >=dev-ruby/power_assert-1.1.3[ruby_targets_ruby26]
- >=dev-ruby/rake-12.3.2[ruby_targets_ruby26]
- >=dev-ruby/test-unit-3.2.9[ruby_targets_ruby26]
- >=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby26]
-"
-
-PDEPEND="
- ${BUNDLED_GEMS}
- virtual/rubygems[ruby_targets_ruby26]
- >=dev-ruby/bundler-1.17.2[ruby_targets_ruby26]
- >=dev-ruby/json-2.0.2[ruby_targets_ruby26]
- rdoc? ( >=dev-ruby/rdoc-6.1.2[ruby_targets_ruby26] )
- xemacs? ( app-xemacs/ruby-modes )"
-
-src_prepare() {
- # 005 does not compile bigdecimal and is questionable because it
- # compiles ruby in a non-standard way, may be dropped
- eapply "${FILESDIR}"/2.6/010*.patch
-
- einfo "Unbundling gems..."
- cd "$S"
- # Remove bundled gems that we will install via PDEPEND, bug
- # 539700.
- rm -fr gems/* || die
-
- einfo "Removing bundled libraries..."
- rm -fr ext/fiddle/libffi-3.2.1 || die
-
- eapply_user
-
- eautoreconf
-}
-
-src_configure() {
- local modules= myconf=
-
- # -fomit-frame-pointer makes ruby segfault, see bug #150413.
- filter-flags -fomit-frame-pointer
- # In many places aliasing rules are broken; play it safe
- # as it's risky with newer compilers to leave it as it is.
- append-flags -fno-strict-aliasing
-
- # Socks support via dante
- if use socks5 ; then
- # Socks support can't be disabled as long as SOCKS_SERVER is
- # set and socks library is present, so need to unset
- # SOCKS_SERVER in that case.
- unset SOCKS_SERVER
- fi
-
- # Increase GC_MALLOC_LIMIT if set (default is 8000000)
- if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
- append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
- fi
-
- # ipv6 hack, bug 168939. Needs --enable-ipv6.
- use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
-
- # Determine which modules *not* to build depending in the USE flags.
- if ! use berkdb ; then
- modules="${modules},dbm"
- fi
- if ! use gdbm ; then
- modules="${modules},gdbm"
- fi
- if ! use ssl ; then
- modules="${modules},openssl"
- fi
- if ! use tk ; then
- modules="${modules},tk"
- fi
-
- # Provide an empty LIBPATHENV because we disable rpath but we do not
- # need LD_LIBRARY_PATH by default since that breaks USE=multitarget
- # #564272
- INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
- --program-suffix=${MY_SUFFIX} \
- --with-soname=ruby${MY_SUFFIX} \
- --enable-shared \
- --enable-pthread \
- --disable-rpath \
- --with-out-ext="${modules}" \
- $(use_with jemalloc jemalloc) \
- $(use_enable jit jit-support ) \
- $(use_enable socks5 socks) \
- $(use_enable doc install-doc) \
- --enable-ipv6 \
- $(use_enable static-libs static) \
- $(use_enable static-libs install-static-library) \
- $(use_with static-libs static-linked-ext) \
- $(use_enable debug) \
- ${myconf} \
- --enable-option-checking=no
-
- # Makefile is broken because it lacks -ldl
- rm -rf ext/-test-/popen_deadlock || die
-}
-
-src_compile() {
- emake V=1 EXTLDFLAGS="${LDFLAGS}" MJIT_CFLAGS="${CFLAGS}" MJIT_OPTFLAGS="" MJIT_DEBUGFLAGS=""
-}
-
-src_test() {
- emake -j1 V=1 test
-
- elog "Ruby's make test has been run. Ruby also ships with a make check"
- elog "that cannot be run until after ruby has been installed."
- elog
- if use rubytests; then
- elog "You have enabled rubytests, so they will be installed to"
- elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
- elog "than root, and you must place them into a writeable directory."
- elog "Then call: "
- elog
- elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
- else
- elog "Enable the rubytests USE flag to install the make check tests"
- fi
-}
-
-src_install() {
- # Remove the remaining bundled gems. We do this late in the process
- # since they are used during the build to e.g. create the
- # documentation.
- rm -rf ext/json || die
- rm -rf lib/bundler* lib/rdoc/rdoc.gemspec || die
-
- # Ruby is involved in the install process, we don't want interference here.
- unset RUBYOPT
-
- local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
-
- LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
- RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
- for d in $(find "${S}/ext" -type d) ; do
- RUBYLIB="${RUBYLIB}:$d"
- done
- export LD_LIBRARY_PATH RUBYLIB
-
- # Create directory for the default gems
- local gem_home="${EPREFIX}/usr/$(get_libdir)/ruby/gems/${RUBYVERSION}"
- mkdir -p "${D}/${gem_home}" || die "mkdir gem home failed"
-
- emake V=1 DESTDIR="${D}" GEM_DESTDIR=${gem_home} install
-
- # Remove installed rubygems and rdoc copy
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
- rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
- rm -rf "${ED}/usr/bin/"{bundle,bundler,ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
-
- if use doc; then
- emake DESTDIR="${D}" GEM_DESTDIR=${gem_home} install-doc
- fi
-
- if use examples; then
- dodoc -r sample
- fi
-
- dodoc ChangeLog NEWS doc/NEWS* README*
-
- if use rubytests; then
- pushd test
- insinto /usr/share/${PN}-${SLOT}/test
- doins -r .
- popd
- fi
-}
-
-pkg_postinst() {
- if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then
- eselect ruby set ruby${MY_SUFFIX}
- fi
-
- elog
- elog "To switch between available Ruby profiles, execute as root:"
- elog "\teselect ruby set ruby(23|24|...)"
- elog
-}
-
-pkg_postrm() {
- eselect ruby cleanup
-}
diff --git a/dev-lang/ruby/ruby-2.6.6.ebuild b/dev-lang/ruby/ruby-2.6.6.ebuild
deleted file mode 100644
index e7c55656994f..000000000000
--- a/dev-lang/ruby/ruby-2.6.6.ebuild
+++ /dev/null
@@ -1,232 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools flag-o-matic multilib
-
-MY_P="${PN}-$(ver_cut 1-3)"
-S=${WORKDIR}/${MY_P}
-
-SLOT=$(ver_cut 1-2)
-MY_SUFFIX=$(ver_rs 1 '' ${SLOT})
-RUBYVERSION=${SLOT}.0
-
-DESCRIPTION="An object-oriented scripting language"
-HOMEPAGE="https://www.ruby-lang.org/"
-SRC_URI="https://cache.ruby-lang.org/pub/ruby/${SLOT}/${MY_P}.tar.xz"
-
-LICENSE="|| ( Ruby-BSD BSD-2 )"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="berkdb debug doc examples gdbm ipv6 jemalloc jit libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
-
-RDEPEND="
- berkdb? ( sys-libs/db:= )
- gdbm? ( sys-libs/gdbm:= )
- jemalloc? ( dev-libs/jemalloc )
- jit? ( || ( sys-devel/gcc:* sys-devel/clang:* ) )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl )
- )
- socks5? ( >=net-proxy/dante-1.1.13 )
- tk? (
- dev-lang/tcl:0=[threads]
- dev-lang/tk:0=[threads]
- )
- dev-libs/libyaml
- dev-libs/libffi:=
- sys-libs/readline:0=
- sys-libs/zlib
- >=app-eselect/eselect-ruby-20171225
-"
-
-DEPEND="${RDEPEND}"
-
-BUNDLED_GEMS="
- >=dev-ruby/did_you_mean-1.2.1[ruby_targets_ruby26]
- >=dev-ruby/minitest-5.11.3[ruby_targets_ruby26]
- >=dev-ruby/net-telnet-0.2.0[ruby_targets_ruby26]
- >=dev-ruby/power_assert-1.1.3[ruby_targets_ruby26]
- >=dev-ruby/rake-12.3.2[ruby_targets_ruby26]
- >=dev-ruby/test-unit-3.2.9[ruby_targets_ruby26]
- >=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby26]
-"
-
-PDEPEND="
- ${BUNDLED_GEMS}
- virtual/rubygems[ruby_targets_ruby26]
- >=dev-ruby/bundler-1.17.2[ruby_targets_ruby26]
- >=dev-ruby/json-2.0.2[ruby_targets_ruby26]
- rdoc? ( >=dev-ruby/rdoc-6.1.2[ruby_targets_ruby26] )
- xemacs? ( app-xemacs/ruby-modes )"
-
-src_prepare() {
- # 005 does not compile bigdecimal and is questionable because it
- # compiles ruby in a non-standard way, may be dropped
- eapply "${FILESDIR}"/2.6/010*.patch
-
- einfo "Unbundling gems..."
- cd "$S"
- # Remove bundled gems that we will install via PDEPEND, bug
- # 539700.
- rm -fr gems/* || die
-
- einfo "Removing bundled libraries..."
- rm -fr ext/fiddle/libffi-3.2.1 || die
-
- eapply_user
-
- eautoreconf
-}
-
-src_configure() {
- local modules= myconf=
-
- # -fomit-frame-pointer makes ruby segfault, see bug #150413.
- filter-flags -fomit-frame-pointer
- # In many places aliasing rules are broken; play it safe
- # as it's risky with newer compilers to leave it as it is.
- append-flags -fno-strict-aliasing
-
- # Socks support via dante
- if use socks5 ; then
- # Socks support can't be disabled as long as SOCKS_SERVER is
- # set and socks library is present, so need to unset
- # SOCKS_SERVER in that case.
- unset SOCKS_SERVER
- fi
-
- # Increase GC_MALLOC_LIMIT if set (default is 8000000)
- if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
- append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
- fi
-
- # ipv6 hack, bug 168939. Needs --enable-ipv6.
- use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
-
- # Determine which modules *not* to build depending in the USE flags.
- if ! use berkdb ; then
- modules="${modules},dbm"
- fi
- if ! use gdbm ; then
- modules="${modules},gdbm"
- fi
- if ! use ssl ; then
- modules="${modules},openssl"
- fi
- if ! use tk ; then
- modules="${modules},tk"
- fi
-
- # Provide an empty LIBPATHENV because we disable rpath but we do not
- # need LD_LIBRARY_PATH by default since that breaks USE=multitarget
- # #564272
- INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
- --program-suffix=${MY_SUFFIX} \
- --with-soname=ruby${MY_SUFFIX} \
- --enable-shared \
- --enable-pthread \
- --disable-rpath \
- --with-out-ext="${modules}" \
- $(use_with jemalloc jemalloc) \
- $(use_enable jit jit-support ) \
- $(use_enable socks5 socks) \
- $(use_enable doc install-doc) \
- --enable-ipv6 \
- $(use_enable static-libs static) \
- $(use_enable static-libs install-static-library) \
- $(use_with static-libs static-linked-ext) \
- $(use_enable debug) \
- ${myconf} \
- --enable-option-checking=no
-
- # Makefile is broken because it lacks -ldl
- rm -rf ext/-test-/popen_deadlock || die
-}
-
-src_compile() {
- emake V=1 EXTLDFLAGS="${LDFLAGS}" MJIT_CFLAGS="${CFLAGS}" MJIT_OPTFLAGS="" MJIT_DEBUGFLAGS=""
-}
-
-src_test() {
- emake -j1 V=1 test
-
- elog "Ruby's make test has been run. Ruby also ships with a make check"
- elog "that cannot be run until after ruby has been installed."
- elog
- if use rubytests; then
- elog "You have enabled rubytests, so they will be installed to"
- elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
- elog "than root, and you must place them into a writeable directory."
- elog "Then call: "
- elog
- elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
- else
- elog "Enable the rubytests USE flag to install the make check tests"
- fi
-}
-
-src_install() {
- # Remove the remaining bundled gems. We do this late in the process
- # since they are used during the build to e.g. create the
- # documentation.
- rm -rf ext/json || die
- rm -rf lib/bundler* lib/rdoc/rdoc.gemspec || die
-
- # Ruby is involved in the install process, we don't want interference here.
- unset RUBYOPT
-
- local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
-
- LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
- RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
- for d in $(find "${S}/ext" -type d) ; do
- RUBYLIB="${RUBYLIB}:$d"
- done
- export LD_LIBRARY_PATH RUBYLIB
-
- # Create directory for the default gems
- local gem_home="${EPREFIX}/usr/$(get_libdir)/ruby/gems/${RUBYVERSION}"
- mkdir -p "${D}/${gem_home}" || die "mkdir gem home failed"
-
- emake V=1 DESTDIR="${D}" GEM_DESTDIR=${gem_home} install
-
- # Remove installed rubygems and rdoc copy
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
- rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
- rm -rf "${ED}/usr/bin/"{bundle,bundler,ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
-
- if use doc; then
- emake DESTDIR="${D}" GEM_DESTDIR=${gem_home} install-doc
- fi
-
- if use examples; then
- dodoc -r sample
- fi
-
- dodoc ChangeLog NEWS doc/NEWS* README*
-
- if use rubytests; then
- pushd test
- insinto /usr/share/${PN}-${SLOT}/test
- doins -r .
- popd
- fi
-}
-
-pkg_postinst() {
- if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then
- eselect ruby set ruby${MY_SUFFIX}
- fi
-
- elog
- elog "To switch between available Ruby profiles, execute as root:"
- elog "\teselect ruby set ruby(23|24|...)"
- elog
-}
-
-pkg_postrm() {
- eselect ruby cleanup
-}
diff --git a/dev-lang/ruby/ruby-2.7.1-r1.ebuild b/dev-lang/ruby/ruby-2.7.1-r1.ebuild
deleted file mode 100644
index c1b75c35766f..000000000000
--- a/dev-lang/ruby/ruby-2.7.1-r1.ebuild
+++ /dev/null
@@ -1,235 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools flag-o-matic multilib
-
-MY_P="${PN}-$(ver_cut 1-3)"
-S=${WORKDIR}/${MY_P}
-
-SLOT=$(ver_cut 1-2)
-MY_SUFFIX=$(ver_rs 1 '' ${SLOT})
-RUBYVERSION=${SLOT}.0
-
-DESCRIPTION="An object-oriented scripting language"
-HOMEPAGE="https://www.ruby-lang.org/"
-SRC_URI="https://cache.ruby-lang.org/pub/ruby/${SLOT}/${MY_P}.tar.xz"
-
-LICENSE="|| ( Ruby-BSD BSD-2 )"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="berkdb debug doc examples gdbm ipv6 jemalloc jit libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
-
-RDEPEND="
- berkdb? ( sys-libs/db:= )
- gdbm? ( sys-libs/gdbm:= )
- jemalloc? ( dev-libs/jemalloc )
- jit? ( || ( sys-devel/gcc:* sys-devel/clang:* ) )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl )
- )
- socks5? ( >=net-proxy/dante-1.1.13 )
- tk? (
- dev-lang/tcl:0=[threads]
- dev-lang/tk:0=[threads]
- )
- dev-libs/libyaml
- dev-libs/libffi:=
- sys-libs/readline:0=
- sys-libs/zlib
- >=app-eselect/eselect-ruby-20191222
-"
-
-DEPEND="${RDEPEND}"
-
-BUNDLED_GEMS="
- >=dev-ruby/minitest-5.13.0[ruby_targets_ruby27]
- >=dev-ruby/net-telnet-0.2.0[ruby_targets_ruby27]
- >=dev-ruby/power_assert-1.1.7[ruby_targets_ruby27]
- >=dev-ruby/rake-13.0.1[ruby_targets_ruby27]
- >=dev-ruby/test-unit-3.3.4[ruby_targets_ruby27]
- >=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby27]
-"
-
-PDEPEND="
- ${BUNDLED_GEMS}
- virtual/rubygems[ruby_targets_ruby27]
- >=dev-ruby/bundler-2.1.4[ruby_targets_ruby27]
- >=dev-ruby/did_you_mean-1.3.1[ruby_targets_ruby27]
- >=dev-ruby/json-2.0.2[ruby_targets_ruby27]
- rdoc? ( >=dev-ruby/rdoc-6.1.2[ruby_targets_ruby27] )
- xemacs? ( app-xemacs/ruby-modes )"
-
-src_prepare() {
- # 005 does not compile bigdecimal and is questionable because it
- # compiles ruby in a non-standard way, may be dropped
- eapply "${FILESDIR}"/2.7/010*.patch
-
- einfo "Unbundling gems..."
- cd "$S"
- # Remove bundled gems that we will install via PDEPEND, bug
- # 539700.
- rm -fr gems/* || die
- # Don't install CLI tools since they will clash with the gem
- rm -f bin/{racc,racc2y,y2racc} || die
- sed -i -e '/executables/ s:^:#:' lib/racc/racc.gemspec || die
-
- einfo "Removing bundled libraries..."
- rm -fr ext/fiddle/libffi-3.2.1 || die
-
- eapply_user
-
- eautoreconf
-}
-
-src_configure() {
- local modules= myconf=
-
- # -fomit-frame-pointer makes ruby segfault, see bug #150413.
- filter-flags -fomit-frame-pointer
- # In many places aliasing rules are broken; play it safe
- # as it's risky with newer compilers to leave it as it is.
- append-flags -fno-strict-aliasing
-
- # Socks support via dante
- if use socks5 ; then
- # Socks support can't be disabled as long as SOCKS_SERVER is
- # set and socks library is present, so need to unset
- # SOCKS_SERVER in that case.
- unset SOCKS_SERVER
- fi
-
- # Increase GC_MALLOC_LIMIT if set (default is 8000000)
- if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
- append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
- fi
-
- # ipv6 hack, bug 168939. Needs --enable-ipv6.
- use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
-
- # Determine which modules *not* to build depending in the USE flags.
- if ! use berkdb ; then
- modules="${modules},dbm"
- fi
- if ! use gdbm ; then
- modules="${modules},gdbm"
- fi
- if ! use ssl ; then
- modules="${modules},openssl"
- fi
- if ! use tk ; then
- modules="${modules},tk"
- fi
-
- # Provide an empty LIBPATHENV because we disable rpath but we do not
- # need LD_LIBRARY_PATH by default since that breaks USE=multitarget
- # #564272
- INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
- --program-suffix=${MY_SUFFIX} \
- --with-soname=ruby${MY_SUFFIX} \
- --enable-shared \
- --enable-pthread \
- --disable-rpath \
- --with-out-ext="${modules}" \
- $(use_with jemalloc jemalloc) \
- $(use_enable jit jit-support ) \
- $(use_enable socks5 socks) \
- $(use_enable doc install-doc) \
- --enable-ipv6 \
- $(use_enable static-libs static) \
- $(use_enable static-libs install-static-library) \
- $(use_with static-libs static-linked-ext) \
- $(use_enable debug) \
- ${myconf} \
- --enable-option-checking=no
-
- # Makefile is broken because it lacks -ldl
- rm -rf ext/-test-/popen_deadlock || die
-}
-
-src_compile() {
- emake V=1 EXTLDFLAGS="${LDFLAGS}" MJIT_CFLAGS="${CFLAGS}" MJIT_OPTFLAGS="" MJIT_DEBUGFLAGS=""
-}
-
-src_test() {
- emake -j1 V=1 test
-
- elog "Ruby's make test has been run. Ruby also ships with a make check"
- elog "that cannot be run until after ruby has been installed."
- elog
- if use rubytests; then
- elog "You have enabled rubytests, so they will be installed to"
- elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
- elog "than root, and you must place them into a writeable directory."
- elog "Then call: "
- elog
- elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
- else
- elog "Enable the rubytests USE flag to install the make check tests"
- fi
-}
-
-src_install() {
- # Remove the remaining bundled gems. We do this late in the process
- # since they are used during the build to e.g. create the
- # documentation.
- rm -rf ext/json || die
- rm -rf lib/bundler* lib/rdoc/rdoc.gemspec || die
-
- # Ruby is involved in the install process, we don't want interference here.
- unset RUBYOPT
-
- local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
-
- LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
- RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
- for d in $(find "${S}/ext" -type d) ; do
- RUBYLIB="${RUBYLIB}:$d"
- done
- export LD_LIBRARY_PATH RUBYLIB
-
- # Create directory for the default gems
- local gem_home="${EPREFIX}/usr/$(get_libdir)/ruby/gems/${RUBYVERSION}"
- mkdir -p "${D}/${gem_home}" || die "mkdir gem home failed"
-
- emake V=1 DESTDIR="${D}" GEM_DESTDIR=${gem_home} install
-
- # Remove installed rubygems and rdoc copy
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
- rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
- rm -rf "${ED}/usr/bin/"{bundle,bundler,ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
-
- if use doc; then
- emake DESTDIR="${D}" GEM_DESTDIR=${gem_home} install-doc
- fi
-
- if use examples; then
- dodoc -r sample
- fi
-
- dodoc ChangeLog NEWS doc/NEWS* README*
-
- if use rubytests; then
- pushd test
- insinto /usr/share/${PN}-${SLOT}/test
- doins -r .
- popd
- fi
-}
-
-pkg_postinst() {
- if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then
- eselect ruby set ruby${MY_SUFFIX}
- fi
-
- elog
- elog "To switch between available Ruby profiles, execute as root:"
- elog "\teselect ruby set ruby(23|24|...)"
- elog
-}
-
-pkg_postrm() {
- eselect ruby cleanup
-}
diff --git a/dev-lang/ruby/ruby-2.7.1-r2.ebuild b/dev-lang/ruby/ruby-2.7.1-r2.ebuild
deleted file mode 100644
index e4e8048e083a..000000000000
--- a/dev-lang/ruby/ruby-2.7.1-r2.ebuild
+++ /dev/null
@@ -1,237 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools flag-o-matic multilib
-
-MY_P="${PN}-$(ver_cut 1-3)"
-S=${WORKDIR}/${MY_P}
-
-SLOT=$(ver_cut 1-2)
-MY_SUFFIX=$(ver_rs 1 '' ${SLOT})
-RUBYVERSION=${SLOT}.0
-
-DESCRIPTION="An object-oriented scripting language"
-HOMEPAGE="https://www.ruby-lang.org/"
-SRC_URI="https://cache.ruby-lang.org/pub/ruby/${SLOT}/${MY_P}.tar.xz"
-
-LICENSE="|| ( Ruby-BSD BSD-2 )"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="berkdb debug doc examples gdbm ipv6 jemalloc jit libressl +rdoc rubytests socks5 +ssl static-libs systemtap tk xemacs"
-
-RDEPEND="
- berkdb? ( sys-libs/db:= )
- gdbm? ( sys-libs/gdbm:= )
- jemalloc? ( dev-libs/jemalloc )
- jit? ( || ( sys-devel/gcc:* sys-devel/clang:* ) )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl )
- )
- socks5? ( >=net-proxy/dante-1.1.13 )
- systemtap? ( dev-util/systemtap )
- tk? (
- dev-lang/tcl:0=[threads]
- dev-lang/tk:0=[threads]
- )
- dev-libs/libyaml
- dev-libs/libffi:=
- sys-libs/readline:0=
- sys-libs/zlib
- >=app-eselect/eselect-ruby-20191222
-"
-
-DEPEND="${RDEPEND}"
-
-BUNDLED_GEMS="
- >=dev-ruby/minitest-5.13.0[ruby_targets_ruby27]
- >=dev-ruby/net-telnet-0.2.0[ruby_targets_ruby27]
- >=dev-ruby/power_assert-1.1.7[ruby_targets_ruby27]
- >=dev-ruby/rake-13.0.1[ruby_targets_ruby27]
- >=dev-ruby/test-unit-3.3.4[ruby_targets_ruby27]
- >=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby27]
-"
-
-PDEPEND="
- ${BUNDLED_GEMS}
- virtual/rubygems[ruby_targets_ruby27]
- >=dev-ruby/bundler-2.1.4[ruby_targets_ruby27]
- >=dev-ruby/did_you_mean-1.3.1[ruby_targets_ruby27]
- >=dev-ruby/json-2.0.2[ruby_targets_ruby27]
- rdoc? ( >=dev-ruby/rdoc-6.1.2[ruby_targets_ruby27] )
- xemacs? ( app-xemacs/ruby-modes )"
-
-src_prepare() {
- # 005 does not compile bigdecimal and is questionable because it
- # compiles ruby in a non-standard way, may be dropped
- eapply "${FILESDIR}"/2.7/010*.patch
-
- einfo "Unbundling gems..."
- cd "$S"
- # Remove bundled gems that we will install via PDEPEND, bug
- # 539700.
- rm -fr gems/* || die
- # Don't install CLI tools since they will clash with the gem
- rm -f bin/{racc,racc2y,y2racc} || die
- sed -i -e '/executables/ s:^:#:' lib/racc/racc.gemspec || die
-
- einfo "Removing bundled libraries..."
- rm -fr ext/fiddle/libffi-3.2.1 || die
-
- eapply_user
-
- eautoreconf
-}
-
-src_configure() {
- local modules= myconf=
-
- # -fomit-frame-pointer makes ruby segfault, see bug #150413.
- filter-flags -fomit-frame-pointer
- # In many places aliasing rules are broken; play it safe
- # as it's risky with newer compilers to leave it as it is.
- append-flags -fno-strict-aliasing
-
- # Socks support via dante
- if use socks5 ; then
- # Socks support can't be disabled as long as SOCKS_SERVER is
- # set and socks library is present, so need to unset
- # SOCKS_SERVER in that case.
- unset SOCKS_SERVER
- fi
-
- # Increase GC_MALLOC_LIMIT if set (default is 8000000)
- if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
- append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
- fi
-
- # ipv6 hack, bug 168939. Needs --enable-ipv6.
- use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
-
- # Determine which modules *not* to build depending in the USE flags.
- if ! use berkdb ; then
- modules="${modules},dbm"
- fi
- if ! use gdbm ; then
- modules="${modules},gdbm"
- fi
- if ! use ssl ; then
- modules="${modules},openssl"
- fi
- if ! use tk ; then
- modules="${modules},tk"
- fi
-
- # Provide an empty LIBPATHENV because we disable rpath but we do not
- # need LD_LIBRARY_PATH by default since that breaks USE=multitarget
- # #564272
- INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
- --program-suffix=${MY_SUFFIX} \
- --with-soname=ruby${MY_SUFFIX} \
- --enable-shared \
- --enable-pthread \
- --disable-rpath \
- --with-out-ext="${modules}" \
- $(use_with jemalloc jemalloc) \
- $(use_enable jit jit-support ) \
- $(use_enable socks5 socks) \
- $(use_enable systemtap dtrace) \
- $(use_enable doc install-doc) \
- --enable-ipv6 \
- $(use_enable static-libs static) \
- $(use_enable static-libs install-static-library) \
- $(use_with static-libs static-linked-ext) \
- $(use_enable debug) \
- ${myconf} \
- --enable-option-checking=no
-
- # Makefile is broken because it lacks -ldl
- rm -rf ext/-test-/popen_deadlock || die
-}
-
-src_compile() {
- emake V=1 EXTLDFLAGS="${LDFLAGS}" MJIT_CFLAGS="${CFLAGS}" MJIT_OPTFLAGS="" MJIT_DEBUGFLAGS=""
-}
-
-src_test() {
- emake -j1 V=1 test
-
- elog "Ruby's make test has been run. Ruby also ships with a make check"
- elog "that cannot be run until after ruby has been installed."
- elog
- if use rubytests; then
- elog "You have enabled rubytests, so they will be installed to"
- elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
- elog "than root, and you must place them into a writeable directory."
- elog "Then call: "
- elog
- elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
- else
- elog "Enable the rubytests USE flag to install the make check tests"
- fi
-}
-
-src_install() {
- # Remove the remaining bundled gems. We do this late in the process
- # since they are used during the build to e.g. create the
- # documentation.
- rm -rf ext/json || die
- rm -rf lib/bundler* lib/rdoc/rdoc.gemspec || die
-
- # Ruby is involved in the install process, we don't want interference here.
- unset RUBYOPT
-
- local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
-
- LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
- RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
- for d in $(find "${S}/ext" -type d) ; do
- RUBYLIB="${RUBYLIB}:$d"
- done
- export LD_LIBRARY_PATH RUBYLIB
-
- # Create directory for the default gems
- local gem_home="${EPREFIX}/usr/$(get_libdir)/ruby/gems/${RUBYVERSION}"
- mkdir -p "${D}/${gem_home}" || die "mkdir gem home failed"
-
- emake V=1 DESTDIR="${D}" GEM_DESTDIR=${gem_home} install
-
- # Remove installed rubygems and rdoc copy
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
- rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
- rm -rf "${ED}/usr/bin/"{bundle,bundler,ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
-
- if use doc; then
- emake DESTDIR="${D}" GEM_DESTDIR=${gem_home} install-doc
- fi
-
- if use examples; then
- dodoc -r sample
- fi
-
- dodoc ChangeLog NEWS doc/NEWS* README*
-
- if use rubytests; then
- pushd test
- insinto /usr/share/${PN}-${SLOT}/test
- doins -r .
- popd
- fi
-}
-
-pkg_postinst() {
- if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then
- eselect ruby set ruby${MY_SUFFIX}
- fi
-
- elog
- elog "To switch between available Ruby profiles, execute as root:"
- elog "\teselect ruby set ruby(23|24|...)"
- elog
-}
-
-pkg_postrm() {
- eselect ruby cleanup
-}
diff --git a/dev-lang/ruby/ruby-2.7.1.ebuild b/dev-lang/ruby/ruby-2.7.1.ebuild
deleted file mode 100644
index 49b0ce2ee2e1..000000000000
--- a/dev-lang/ruby/ruby-2.7.1.ebuild
+++ /dev/null
@@ -1,235 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools flag-o-matic multilib
-
-MY_P="${PN}-$(ver_cut 1-3)"
-S=${WORKDIR}/${MY_P}
-
-SLOT=$(ver_cut 1-2)
-MY_SUFFIX=$(ver_rs 1 '' ${SLOT})
-RUBYVERSION=${SLOT}.0
-
-DESCRIPTION="An object-oriented scripting language"
-HOMEPAGE="https://www.ruby-lang.org/"
-SRC_URI="https://cache.ruby-lang.org/pub/ruby/${SLOT}/${MY_P}.tar.xz"
-
-LICENSE="|| ( Ruby-BSD BSD-2 )"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE="berkdb debug doc examples gdbm ipv6 jemalloc jit libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
-
-RDEPEND="
- berkdb? ( sys-libs/db:= )
- gdbm? ( sys-libs/gdbm:= )
- jemalloc? ( dev-libs/jemalloc )
- jit? ( || ( sys-devel/gcc:* sys-devel/clang:* ) )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl )
- )
- socks5? ( >=net-proxy/dante-1.1.13 )
- tk? (
- dev-lang/tcl:0=[threads]
- dev-lang/tk:0=[threads]
- )
- dev-libs/libyaml
- dev-libs/libffi:=
- sys-libs/readline:0=
- sys-libs/zlib
- >=app-eselect/eselect-ruby-20171225
-"
-
-DEPEND="${RDEPEND}"
-
-BUNDLED_GEMS="
- >=dev-ruby/minitest-5.13.0[ruby_targets_ruby27]
- >=dev-ruby/net-telnet-0.2.0[ruby_targets_ruby27]
- >=dev-ruby/power_assert-1.1.7[ruby_targets_ruby27]
- >=dev-ruby/rake-13.0.1[ruby_targets_ruby27]
- >=dev-ruby/test-unit-3.3.4[ruby_targets_ruby27]
- >=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby27]
-"
-
-PDEPEND="
- ${BUNDLED_GEMS}
- virtual/rubygems[ruby_targets_ruby27]
- >=dev-ruby/bundler-2.1.4[ruby_targets_ruby27]
- >=dev-ruby/did_you_mean-1.3.1[ruby_targets_ruby27]
- >=dev-ruby/json-2.0.2[ruby_targets_ruby27]
- rdoc? ( >=dev-ruby/rdoc-6.1.2[ruby_targets_ruby27] )
- xemacs? ( app-xemacs/ruby-modes )"
-
-src_prepare() {
- # 005 does not compile bigdecimal and is questionable because it
- # compiles ruby in a non-standard way, may be dropped
- eapply "${FILESDIR}"/2.7/010*.patch
-
- einfo "Unbundling gems..."
- cd "$S"
- # Remove bundled gems that we will install via PDEPEND, bug
- # 539700.
- rm -fr gems/* || die
- # Don't install CLI tools since they will clash with the gem
- rm -f bin/{racc,racc2y,y2racc} || die
- sed -i -e '/executables/ s:^:#:' lib/racc/racc.gemspec || die
-
- einfo "Removing bundled libraries..."
- rm -fr ext/fiddle/libffi-3.2.1 || die
-
- eapply_user
-
- eautoreconf
-}
-
-src_configure() {
- local modules= myconf=
-
- # -fomit-frame-pointer makes ruby segfault, see bug #150413.
- filter-flags -fomit-frame-pointer
- # In many places aliasing rules are broken; play it safe
- # as it's risky with newer compilers to leave it as it is.
- append-flags -fno-strict-aliasing
-
- # Socks support via dante
- if use socks5 ; then
- # Socks support can't be disabled as long as SOCKS_SERVER is
- # set and socks library is present, so need to unset
- # SOCKS_SERVER in that case.
- unset SOCKS_SERVER
- fi
-
- # Increase GC_MALLOC_LIMIT if set (default is 8000000)
- if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
- append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
- fi
-
- # ipv6 hack, bug 168939. Needs --enable-ipv6.
- use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
-
- # Determine which modules *not* to build depending in the USE flags.
- if ! use berkdb ; then
- modules="${modules},dbm"
- fi
- if ! use gdbm ; then
- modules="${modules},gdbm"
- fi
- if ! use ssl ; then
- modules="${modules},openssl"
- fi
- if ! use tk ; then
- modules="${modules},tk"
- fi
-
- # Provide an empty LIBPATHENV because we disable rpath but we do not
- # need LD_LIBRARY_PATH by default since that breaks USE=multitarget
- # #564272
- INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
- --program-suffix=${MY_SUFFIX} \
- --with-soname=ruby${MY_SUFFIX} \
- --enable-shared \
- --enable-pthread \
- --disable-rpath \
- --with-out-ext="${modules}" \
- $(use_with jemalloc jemalloc) \
- $(use_enable jit jit-support ) \
- $(use_enable socks5 socks) \
- $(use_enable doc install-doc) \
- --enable-ipv6 \
- $(use_enable static-libs static) \
- $(use_enable static-libs install-static-library) \
- $(use_with static-libs static-linked-ext) \
- $(use_enable debug) \
- ${myconf} \
- --enable-option-checking=no
-
- # Makefile is broken because it lacks -ldl
- rm -rf ext/-test-/popen_deadlock || die
-}
-
-src_compile() {
- emake V=1 EXTLDFLAGS="${LDFLAGS}" MJIT_CFLAGS="${CFLAGS}" MJIT_OPTFLAGS="" MJIT_DEBUGFLAGS=""
-}
-
-src_test() {
- emake -j1 V=1 test
-
- elog "Ruby's make test has been run. Ruby also ships with a make check"
- elog "that cannot be run until after ruby has been installed."
- elog
- if use rubytests; then
- elog "You have enabled rubytests, so they will be installed to"
- elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
- elog "than root, and you must place them into a writeable directory."
- elog "Then call: "
- elog
- elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
- else
- elog "Enable the rubytests USE flag to install the make check tests"
- fi
-}
-
-src_install() {
- # Remove the remaining bundled gems. We do this late in the process
- # since they are used during the build to e.g. create the
- # documentation.
- rm -rf ext/json || die
- rm -rf lib/bundler* lib/rdoc/rdoc.gemspec || die
-
- # Ruby is involved in the install process, we don't want interference here.
- unset RUBYOPT
-
- local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
-
- LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
- RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
- for d in $(find "${S}/ext" -type d) ; do
- RUBYLIB="${RUBYLIB}:$d"
- done
- export LD_LIBRARY_PATH RUBYLIB
-
- # Create directory for the default gems
- local gem_home="${EPREFIX}/usr/$(get_libdir)/ruby/gems/${RUBYVERSION}"
- mkdir -p "${D}/${gem_home}" || die "mkdir gem home failed"
-
- emake V=1 DESTDIR="${D}" GEM_DESTDIR=${gem_home} install
-
- # Remove installed rubygems and rdoc copy
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
- rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
- rm -rf "${ED}/usr/bin/"{bundle,bundler,ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
-
- if use doc; then
- emake DESTDIR="${D}" GEM_DESTDIR=${gem_home} install-doc
- fi
-
- if use examples; then
- dodoc -r sample
- fi
-
- dodoc ChangeLog NEWS doc/NEWS* README*
-
- if use rubytests; then
- pushd test
- insinto /usr/share/${PN}-${SLOT}/test
- doins -r .
- popd
- fi
-}
-
-pkg_postinst() {
- if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then
- eselect ruby set ruby${MY_SUFFIX}
- fi
-
- elog
- elog "To switch between available Ruby profiles, execute as root:"
- elog "\teselect ruby set ruby(23|24|...)"
- elog
-}
-
-pkg_postrm() {
- eselect ruby cleanup
-}
diff --git a/dev-lang/rust/Manifest b/dev-lang/rust/Manifest
index 7ede91133a53..167441e8a73a 100644
--- a/dev-lang/rust/Manifest
+++ b/dev-lang/rust/Manifest
@@ -53,5 +53,5 @@ DIST rustc-1.47.0-src.tar.xz 104143736 BLAKE2B 0454094dde35275488046826da87655e5
DIST rustc-1.48.0-src.tar.xz 105951736 BLAKE2B 42468fc5ac5e80c4793cfe0913cbb8e43a8def28cc8cf5ed25ab989561e2bf33e155c83e180183362535cbc9008f341eb1273087a2364672b1a4032ac2d6ca45 SHA512 4e12baa6893238a8d336ec9ebe891477d18676f271b32763474fa7a6a8b58fb3187dd4e2aa95bce482989b692cc2e1360221669d6811eec71b326f22a1756c23
EBUILD rust-1.46.0.ebuild 17326 BLAKE2B b43d06f2b122762ce157174cfe821d4d1c93e5050d982ae2a29b9fea8a14744fdea755b5e98f49d66a87d1736a6457172193f4ca7e01cedc3469018daf46d28e SHA512 d1ac91bd59796b6f4b136cddffd404dee48ad00bb9c72b6bd9992b0a9950924c3f65d4df66a59f27b5522b01a54141df4b707db7d285d10cd10b2d1581358fe2
EBUILD rust-1.47.0-r2.ebuild 18737 BLAKE2B 1f9295e1356bc3b64ed50650d0436da91121d4b998e2c89f60021f6d5b927b914a7c641cd88853df5c8a8de041e61bf85701229d158b629f52bacfc8272c6f43 SHA512 48760ec9a6ae193f81c0748184e955aa138decb91a0612c6e0da791517f09ca0b2ff383e89d4dcd4946bbbbf23fc2ef36011f18fd8cdf61f26a97ce53590385e
-EBUILD rust-1.48.0.ebuild 18057 BLAKE2B b59c23dfad5f6be2fa654f955e14bb4838d0dd75aba5a53bd4dfa1347a996f2d54ac9a20bde5219df8fe1070c64111f46cdb91002b439fb7b5cc80ac553b5da6 SHA512 e2d9e47a57275cdeb4ea62f54067d7a3b301f380f0e467a87c6fb516e651e064f25d77f268578d45aa5bf750855a53f1bd7e545b4c103d5d7c967537d3d0cd26
+EBUILD rust-1.48.0.ebuild 18059 BLAKE2B 0ca1b790ea5a9b4a0458402ed94eb52dfb90dc318b1e34777d92ff7ebd2fa580f03aec8d7e69b6598465c6b0ae85610d69faef170530d40c977ac3486e012430 SHA512 adef4683e24d7e04ee10bff683f1eeea6639ae97871f727094af18ee50bfb9b517e5d8ab0d0131c930fe3bf2265265b9199b345e91605e552478be6a10756c11
MISC metadata.xml 1083 BLAKE2B 7a7b093c22dcaef58bd67f9c2fd84a000696b234d2bc27315999bf6751cfd2a79441fd22efc284a542ecc84ce1a12ff9ca3495d249eaffa5bc1722b385c6109e SHA512 bfe8c140753e93db67244c92e9a7d193691ceb67de796c30a851966a1262bc5c897ead6e13d728775fa524215b6851609dcbee582022d9d75bb8d1e6fabc4ef4
diff --git a/dev-lang/rust/rust-1.48.0.ebuild b/dev-lang/rust/rust-1.48.0.ebuild
index 19da77c7c399..779372ba4e66 100644
--- a/dev-lang/rust/rust-1.48.0.ebuild
+++ b/dev-lang/rust/rust-1.48.0.ebuild
@@ -510,8 +510,8 @@ src_install() {
)
# bug #689562, #689160
- rm -v "${D}/usr/lib/${PN}/${PV}/etc/bash_completion.d/cargo" || die
- rmdir -v "${D}/usr/lib/${PN}/${PV}"/etc{/bash_completion.d,} || die
+ rm -v "${ED}/usr/lib/${PN}/${PV}/etc/bash_completion.d/cargo" || die
+ rmdir -v "${ED}/usr/lib/${PN}/${PV}"/etc{/bash_completion.d,} || die
dobashcomp build/tmp/dist/cargo-image/etc/bash_completion.d/cargo
local symlinks=(
diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest
index d23f0f163cfe..d21c188a81ff 100644
--- a/dev-lang/spidermonkey/Manifest
+++ b/dev-lang/spidermonkey/Manifest
@@ -7,10 +7,7 @@ AUX spidermonkey-60.5.2-ia64-support.patch 1615 BLAKE2B bd2ae36194bdb6a17638ec50
AUX spidermonkey-perl-defined-array-check.patch 341 BLAKE2B e11a74cc2afbea5e39ec5f3fb4c108278a8b71b57ce71644184bc4e19188059f6cb9c164ab87877605028241ed0b68a1447414f1aa0f5453fa26a603ecd4f6a6 SHA512 5d178b68cf0744da874624da79cd31555bd882aed205e697a3f0bfc3cb91a149d74da79b7af5883ea5a23e1d1692753ebfda0d83e7a25ac000105849db5c1548
DIST firefox-68.0-patches-15.tar.xz 16060 BLAKE2B f9e6cd58ea51bed1af90a9d30fd551dc7e939afcd1b4d00de1271bd4bda94021c6f1799fd9945962c14ffa1fd0b6a6429369c4e45efc2000f179b9b2e46971e7 SHA512 9cb2479637dd8b84e0ab68dc0fe144acd2dc74feca282fd3c4b485ca6f0de8190244587622713a5421b243ccda153f738e9a8f463e87e15e93e9b725d943e128
DIST firefox-68.12.0esr.source.tar.xz 313856956 BLAKE2B eeaa4acc9fabf15ec1b313170a30cee8e1fc10a8b08512b915b83b7d6a81c09b365733ed94638bd434864fd7b0cb8cbf1bc2e43441be69e31117e8e6a099234c SHA512 839b02422e4c87bdb12e0995cd35ca8c1996f3fba00bbb46b419e46b67df5ec48a264cb14632db777ce29166ee4fdcb06e2ee3ce847e64328c58c9a2f9129f4c
-DIST firefox-78.4.1esr.source.tar.xz 334673424 BLAKE2B 3ba8bf545c4c2b92914bf7f63b539ba61dc2ee6c14fb8995a6d75adb4bd11988f1d47d2c64639cbecf7a4b01b99085e63af4eb3afc7a27047f03048ffa9c2c2d SHA512 287096ad67e86b307554475c3b5d1003a325d6d13987bfbec2ec79aa0f8004dce1614ab62585ba5cf153545618906ab640cd4657d5a910085afb3d8ceb46e8de
-DIST firefox-78.5.0esr.source.tar.xz 333995288 BLAKE2B 35140afb6b4d15052858e7864753ca74099edb24ed5e459f1f48114f0946f5e007486b5561ba9a545566033d71a69f0e6163dd17204cab717c441323972f089e SHA512 0d16013342b6e8d67adb5c111177ea4796db4fb593da8aa254d0d95bdf33fad798c2dbb235d44db4177c32dd2d7b3ac26b938b476342753ee8d6c83d968d0281
DIST firefox-78.6.0esr.source.tar.xz 338098664 BLAKE2B 9d082b6104bffbd0d918dc1adf2a01ac32613d8048faf399177834c4949714a00c1f4383b778a21d6b6684296d8f9bd44fa547ee2507a8631d206e3764d2ceeb SHA512 a1e2d6af0020784d00ed3cb4d778c136685e7c2f6ae536cc270fbd331d51d483d17dff9acd7ad8e6b3b231b9df894c146092889357b23715814a080c6f08d11a
-DIST firefox-78esr-patches-04.tar.xz 171504 BLAKE2B d51e55c255d1f5cfa0c7c030b1ea50cb54951bed3bc21b21f5cb3b1e4b8b2ad406b3d12db2baabd4a90e3c88a38f187f277e7a4afe441ea6cf82c48f84bb0ac5 SHA512 6f00ec898fafb34d7c7e0ff2a6fb5c1cbf1205458845e14eb39c131125c5bf6b2418fea1050bb72449ec40e18fd775fc844437ce0290281d66961de40a53235a
DIST firefox-78esr-patches-07.tar.xz 66156 BLAKE2B 8f69883432dcbd484b1fb15e3fde1630b1424e502ba78d9ec3cbe70cb2676a6876853d3477c8bfe35e92bca91b200e2d14543de1778d895676a52d2608109af2 SHA512 b4a01d3499002bd33a7fb45a1a80e9e73ba27a0986b6bfa43b3482dd8d82a686a14ae0c5e013402c8c8f359a642632a40bf4c362a0e83a1f53b453914f42e3a7
DIST js185-1.0.0.tar.gz 6164605 BLAKE2B 76a37f0ceae05d3475853875bd0ce4be6e525e4114816f8f281ea6fc6b60a71060975a0fa1cb843f57ad1e2f842dfb26b24244fa0fd6c20f6ae2ebbe430f70be SHA512 2af7122a7c7007fd7b6668776fe1222515a810b3e43bbf0f76b8f94e1ef406ffd3fb5ccec393021b00274c05b38a77235bc8d6886994c56762fcaf0aa7cf6718
DIST mozjs-52.9.1pre1.tar.bz2 30178574 BLAKE2B 0920432b5140e78297a9bcbccb54268d75a223d5e75e4ff90b3b01aab4f7736b4a4e05c47b3a925ff0a74607a0abad3b6583c75d070ef5142009b20ebaf6e4bf SHA512 187b231b246a5ae09e55c0fef77866b316d75f38f4c2e066d5d4325d8da63433027020c929439cab46af3253ac63ab2f780223a8fd2c6ff535b3409bb6c4aa0f
@@ -18,14 +15,11 @@ DIST mozjs-60.5.2.tar.bz2 32816585 BLAKE2B 45ac4c9646e1275faf60eeedbf486f802cd10
DIST spidermonkey-52.0-patches-1.tar.xz 3112 BLAKE2B d8f4c44cb2ae290fa51efc4725a2c1b3cd85dd9f04f4ccfa5681ba6df5f37f5d8d4ad6859316a70d0f7647ac2cee014d126f88b7d4ca74a82796f35b141200ef SHA512 5328403e3b9ecd1c456037e7cca374c2453d9331752c48b9466e498e22fd8d4ca6e1804e51140ee0be027fcef7d0c3f26822b1f569305a3b2f03209b7fb15499
DIST spidermonkey-60.0-patches-04.tar.xz 4428 BLAKE2B af78049cd9b3ee6a9b689e6253486c4670fd3b506faade7d745dafaa7af329c0bd15cd35e95528a4c96688230f4803130967fb09b97aae2bda0ce0f73acaaf3e SHA512 fb1326a81512146ba98773d4f7e0c4bc1bff0f076897c13f576fcf63b56f6965efeff633eea9160bca9f9bc4546505901084eabc33bc955de0b7ab3d6334387a
DIST spidermonkey-68.6.0-patches-04.tar.xz 5956 BLAKE2B b1250391a5173e676272d5926b710c06b0e9de1ff03b130a57fdac30f2deefbee3fa92250b37e28087572fe5cce73eb112ef4e1fb0c0401d6ecdb22ab9868998 SHA512 94575b11b4f006c6ee0c8d64b315734a173cecb68e9128ca61ba1a28177e3c149b8cf1f3b3c47a7a263fad8da6196fc0101df87392f016686a827e0cd24fdc74
-DIST spidermonkey-78-patches-02.tar.xz 3432 BLAKE2B 3ac46306f1740e704ed1aa8cb0f2a963d0b94bee60349ce31bc0ac477942781c9cdfa1d791a22e31c9258ade5d955cf6d32696ced73247777a908cb3e5c464c2 SHA512 d94c33d327d07072aa5ca66135ab2100e86acf38e091bf5b9644c537f77fb734433246a2f4bf58bf76d884510bce565b6ab75c23472be7e9d1f566dc4e812b5c
DIST spidermonkey-78-patches-03.tar.xz 3732 BLAKE2B 5dc47527581c010994a102e6458119c762ec3836f57e403cbaac88c457f5f119bd75ae1a067307b20d229536f75db4b2b797408874d28156667ac63b61de8501 SHA512 f0921562dcd0ea519bf3f5ef2da43f87565e92493781d56e6e0b73d4124f41e7aadd34d8285bbb181f4286160dde0c9684920e98058f0683143a2687eb93cc1a
DIST spidermonkey-slot0-patches-02.tar.xz 10952 BLAKE2B fb7bf5cdac6c821a48d407ff172fe0ec7297e047d3b3bab952f226f413b83ea70325175b41c1680725ff588111b424efc97a0c66e392989da510c43d38528ff1 SHA512 cd62890c4b58658d99fc1b52f05ccb35c07da835b168bb9d5e6b219de5021122c199cc2255c5b0be01ef582f53dd51c9975921e6bde9f14e9b43536e2bee85f2
EBUILD spidermonkey-1.8.5-r9.ebuild 3995 BLAKE2B fb52ebb4287a3209ad318d8cd73687ddb6222e033b4b54311a99819805af89e095e3db95977713b54bb2adf694017fbc2e806760746d30df10a182860cd5e9f4 SHA512 faa9f16336a5326ee586f3d5b15fd92668d6fc22bf3e2342f5686157ca76afb4372e605248bd5cbfb09a5ed1b38a399725dda0bc321a98184593d43eac1613ca
EBUILD spidermonkey-52.9.1_pre1-r2.ebuild 4591 BLAKE2B b8fe23279548903b66139d3310f041eb45f114c3012867cd01160155f6e8732e6d914a07346697d1a719439e351b891809bda603a842b8b220160d1d73db03ad SHA512 8f950866d7406a2a8626b2fd45a32cd89dfc4b4322c793cbfbab694ffc8eb7b752d032435302f1eae01d5e4882dca595e06b304ee1dc8b3fb095c1df88eb9287
EBUILD spidermonkey-60.5.2_p0-r4.ebuild 4238 BLAKE2B a5f3d1bcb0c12a678795d2e632822687e2d025bbb679daf0a5ffc2d262118bd5120f0a112ed39cf1feda178b609c6a2395e3d424c9e796b824a048bcb7385deb SHA512 3961fce1b9984e3929005a4d0ce3e0494ff1de7d42d07c70023b57d4e45f2d3cca1c6c8d8c803b95dcacf5a56ef9a66a339fe891bef594d079f275861d16b035
EBUILD spidermonkey-68.12.0.ebuild 7310 BLAKE2B 9808f81f5adcd34331a2ae9db9c00303f13493e9a3dfdd007f89b8a87ce86c8626cd6041116ed0347f1675558363097c1d8727b36e92ed8dc76af2f2584a186d SHA512 c7ada8f749bf7fb5de92653730d54a1b1af32cce2486766606eae6cb3b592967c0fca37d43375250fa924ee9fdc275f923c0bd620cc25d21d51b8ba4be8587fc
-EBUILD spidermonkey-78.4.1.ebuild 8097 BLAKE2B d8a3a67996d503b6e36294304817a76b04f86f767407a1207fe1362933f3a6f8fc1c6b8303daec733f6255e13628c4df1612a096a78059e20839949e0e73a4af SHA512 215a96406246d5b55cc991658d15c614c4a53774fe3bdfbe8d721d63e8671ec0971512884249ed4f4ad6967523f791177ede536809ee0b42fdbda1462a061111
-EBUILD spidermonkey-78.5.0.ebuild 8097 BLAKE2B 787658a3bf3725197c49ba82cb5e9dfbf7393f4f5bc5d48bd772ec487df73c8cf0c03577d66cb2f216cd194ecb587f56424b1b744f463ec8d490afe419c8c4f3 SHA512 e34cd0087db8b2bc9366c708268d7664f961191b8c9f37a41fb45cc9066c7bda22fb70bb0db1b5e1022046e987c0ff0a284076459a15f6daaba0b8510db843ba
-EBUILD spidermonkey-78.6.0.ebuild 11482 BLAKE2B c9c6000fea277560d4052e92613c965bbcb900bc046a757a6f183bd084d5766b63af01400acd006a12dd9b1f8c6a74408cd1e16459702f8102b17fe3fd92adab SHA512 eb31ce503eee3f7e86d1465a169e0384293416c4a03539de4128bf6231f6194edc7c00dd669407e58af3c0e5a7fddd3f01d49fb3374590bd38d050c4b3765286
+EBUILD spidermonkey-78.6.0.ebuild 12231 BLAKE2B 23f377bc3119c5c7597d792f47f4dbd12f069e35471b5f46391e8bd5f5cc173eb72c535daddd80cf0a264a2b101678c62ca3299946e38a8987b2cf9546af5582 SHA512 53731ca5668eb62120fabe901ab65d6d7cf337fcadea77e1e79b43d1fb8adbd669caf7514d028fbc55decb46291977c4553adcda8e0f68f7c628e11bce56860d
MISC metadata.xml 868 BLAKE2B ee529f60bc83af6c54188ab4db2a1e05cbc3fcebf7732580cb5e507afada8560cb8812d4f155ae94c2ec87724bdfafe7312de86b47a95f599655695836c9b806 SHA512 caf3c383cd8109391cbf81baf5e942630bfd84ca6bc2a78430e58e5b0a40428e08b8a3d7c9fadccebaf94fe1aa673df837246fc32d5932b7f60dd43431ee1575
diff --git a/dev-lang/spidermonkey/spidermonkey-78.4.1.ebuild b/dev-lang/spidermonkey/spidermonkey-78.4.1.ebuild
deleted file mode 100644
index 51c99770b037..000000000000
--- a/dev-lang/spidermonkey/spidermonkey-78.4.1.ebuild
+++ /dev/null
@@ -1,303 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-# Patch version
-FIREFOX_PATCHSET="firefox-78esr-patches-04.tar.xz"
-SPIDERMONKEY_PATCHSET="spidermonkey-78-patches-02.tar.xz"
-
-PYTHON_COMPAT=( python3_{6..9} )
-
-WANT_AUTOCONF="2.1"
-
-inherit autotools check-reqs flag-o-matic 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="cpu_flags_arm_neon debug +jit lto test"
-
-RESTRICT="!test? ( test )"
-
-BDEPEND="${PYTHON_DEPS}
- sys-devel/llvm
- >=virtual/rust-1.41.0
- virtual/pkgconfig"
-
-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"
-
-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 use test ; then
- CHECKREQS_DISK_BUILD="7600M"
- else
- CHECKREQS_DISK_BUILD="6400M"
- fi
-
- check-reqs_pkg_setup
-
- 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
-}
-
-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() {
- tc-export CC CXX LD AR RANLIB
-
- 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 )
- fi
-
- # LTO flag was handled via configure
- filter-flags '-flto*'
-
- # Forcing system-icu allows us to skip patching bundled ICU for PPC
- # and other minor arches
- ECONF_SOURCE="${S}" \
- econf \
- ${myeconfargs[@]} \
- XARGS="${EPREFIX}/usr/bin/xargs"
-}
-
-src_compile() {
- cd "${MOZJS_BUILDDIR}" || die
- default
-}
-
-src_test() {
- if "${MOZJS_BUILDDIR}/js/src/js" -e 'print("Hello world!")'; then
- einfo "Smoke-test successful, continuing with full test suite"
- else
- die "Smoke-test failed: did interpreter initialization fail?"
- fi
-
- local -a KNOWN_TESTFAILURES
- KNOWN_TESTFAILURES+=( non262/Date/reset-time-zone-cache-same-offset.js )
- KNOWN_TESTFAILURES+=( non262/Date/time-zone-path.js )
- KNOWN_TESTFAILURES+=( non262/Date/time-zones-historic.js )
- KNOWN_TESTFAILURES+=( non262/Date/time-zones-imported.js )
- KNOWN_TESTFAILURES+=( non262/Date/toString-localized.js )
- KNOWN_TESTFAILURES+=( non262/Date/toString-localized-posix.js )
- KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/timeZone_backward_links.js )
- KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/tz-environment-variable.js )
- KNOWN_TESTFAILURES+=( non262/Intl/Locale/likely-subtags.js )
- KNOWN_TESTFAILURES+=( test262/intl402/Locale/prototype/minimize/removing-likely-subtags-first-adds-likely-subtags.js )
-
- if use x86 ; then
- KNOWN_TESTFAILURES+=( non262/Date/timeclip.js )
- KNOWN_TESTFAILURES+=( test262/built-ins/Number/prototype/toPrecision/return-values.js )
- KNOWN_TESTFAILURES+=( test262/language/types/number/S8.5_A2.1.js )
- KNOWN_TESTFAILURES+=( test262/language/types/number/S8.5_A2.2.js )
- fi
-
- if [[ $(tc-endian) == "big" ]] ; then
- KNOWN_TESTFAILURES+=( test262/built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-other-type.js )
- fi
-
- echo "" > "${T}"/known_failures.list || die
-
- local KNOWN_TESTFAILURE
- for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do
- echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list
- done
-
- PYTHONPATH="${S}/tests/lib" \
- ${PYTHON} \
- "${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
- --exclude-file="${T}"/known_failures.list \
- "${MOZJS_BUILDDIR}"/js/src/js \
- || die
-
- if use jit ; then
- KNOWN_TESTFAILURES=()
-
- echo "" > "${T}"/known_failures.list || die
-
- for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do
- echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list
- done
-
- PYTHONPATH="${S}/tests/lib" \
- ${PYTHON} \
- "${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
- --exclude-file="${T}"/known_failures.list \
- "${MOZJS_BUILDDIR}"/js/src/js basic \
- || die
- fi
-}
-
-src_install() {
- cd "${MOZJS_BUILDDIR}" || die
- default
-
- # fix soname links
- pushd "${ED}"/usr/$(get_libdir) &>/dev/null || die
- mv lib${MY_PN}-${MY_MAJOR}.so lib${MY_PN}-${MY_MAJOR}.so.0.0.0 || die
- ln -s lib${MY_PN}-${MY_MAJOR}.so.0.0.0 lib${MY_PN}-${MY_MAJOR}.so.0 || die
- ln -s lib${MY_PN}-${MY_MAJOR}.so.0 lib${MY_PN}-${MY_MAJOR}.so || die
- popd &>/dev/null || die
-
- # remove unneeded files
- rm \
- "${ED}"/usr/bin/js${MY_MAJOR}-config \
- "${ED}"/usr/$(get_libdir)/libjs_static.ajs \
- || die
-
- # fix permissions
- chmod -x \
- "${ED}"/usr/$(get_libdir)/pkgconfig/*.pc \
- "${ED}"/usr/include/mozjs-${MY_MAJOR}/js-config.h \
- || die
-}
diff --git a/dev-lang/spidermonkey/spidermonkey-78.5.0.ebuild b/dev-lang/spidermonkey/spidermonkey-78.5.0.ebuild
deleted file mode 100644
index cf316804750b..000000000000
--- a/dev-lang/spidermonkey/spidermonkey-78.5.0.ebuild
+++ /dev/null
@@ -1,303 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-# Patch version
-FIREFOX_PATCHSET="firefox-78esr-patches-07.tar.xz"
-SPIDERMONKEY_PATCHSET="spidermonkey-78-patches-02.tar.xz"
-
-PYTHON_COMPAT=( python3_{6..9} )
-
-WANT_AUTOCONF="2.1"
-
-inherit autotools check-reqs flag-o-matic 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="cpu_flags_arm_neon debug +jit lto test"
-
-RESTRICT="!test? ( test )"
-
-BDEPEND="${PYTHON_DEPS}
- sys-devel/llvm
- >=virtual/rust-1.41.0
- virtual/pkgconfig"
-
-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"
-
-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 use test ; then
- CHECKREQS_DISK_BUILD="7600M"
- else
- CHECKREQS_DISK_BUILD="6400M"
- fi
-
- check-reqs_pkg_setup
-
- 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
-}
-
-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() {
- tc-export CC CXX LD AR RANLIB
-
- 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 )
- fi
-
- # LTO flag was handled via configure
- filter-flags '-flto*'
-
- # Forcing system-icu allows us to skip patching bundled ICU for PPC
- # and other minor arches
- ECONF_SOURCE="${S}" \
- econf \
- ${myeconfargs[@]} \
- XARGS="${EPREFIX}/usr/bin/xargs"
-}
-
-src_compile() {
- cd "${MOZJS_BUILDDIR}" || die
- default
-}
-
-src_test() {
- if "${MOZJS_BUILDDIR}/js/src/js" -e 'print("Hello world!")'; then
- einfo "Smoke-test successful, continuing with full test suite"
- else
- die "Smoke-test failed: did interpreter initialization fail?"
- fi
-
- local -a KNOWN_TESTFAILURES
- KNOWN_TESTFAILURES+=( non262/Date/reset-time-zone-cache-same-offset.js )
- KNOWN_TESTFAILURES+=( non262/Date/time-zone-path.js )
- KNOWN_TESTFAILURES+=( non262/Date/time-zones-historic.js )
- KNOWN_TESTFAILURES+=( non262/Date/time-zones-imported.js )
- KNOWN_TESTFAILURES+=( non262/Date/toString-localized.js )
- KNOWN_TESTFAILURES+=( non262/Date/toString-localized-posix.js )
- KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/timeZone_backward_links.js )
- KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/tz-environment-variable.js )
- KNOWN_TESTFAILURES+=( non262/Intl/Locale/likely-subtags.js )
- KNOWN_TESTFAILURES+=( test262/intl402/Locale/prototype/minimize/removing-likely-subtags-first-adds-likely-subtags.js )
-
- if use x86 ; then
- KNOWN_TESTFAILURES+=( non262/Date/timeclip.js )
- KNOWN_TESTFAILURES+=( test262/built-ins/Number/prototype/toPrecision/return-values.js )
- KNOWN_TESTFAILURES+=( test262/language/types/number/S8.5_A2.1.js )
- KNOWN_TESTFAILURES+=( test262/language/types/number/S8.5_A2.2.js )
- fi
-
- if [[ $(tc-endian) == "big" ]] ; then
- KNOWN_TESTFAILURES+=( test262/built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-other-type.js )
- fi
-
- echo "" > "${T}"/known_failures.list || die
-
- local KNOWN_TESTFAILURE
- for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do
- echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list
- done
-
- PYTHONPATH="${S}/tests/lib" \
- ${PYTHON} \
- "${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
- --exclude-file="${T}"/known_failures.list \
- "${MOZJS_BUILDDIR}"/js/src/js \
- || die
-
- if use jit ; then
- KNOWN_TESTFAILURES=()
-
- echo "" > "${T}"/known_failures.list || die
-
- for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do
- echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list
- done
-
- PYTHONPATH="${S}/tests/lib" \
- ${PYTHON} \
- "${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
- --exclude-file="${T}"/known_failures.list \
- "${MOZJS_BUILDDIR}"/js/src/js basic \
- || die
- fi
-}
-
-src_install() {
- cd "${MOZJS_BUILDDIR}" || die
- default
-
- # fix soname links
- pushd "${ED}"/usr/$(get_libdir) &>/dev/null || die
- mv lib${MY_PN}-${MY_MAJOR}.so lib${MY_PN}-${MY_MAJOR}.so.0.0.0 || die
- ln -s lib${MY_PN}-${MY_MAJOR}.so.0.0.0 lib${MY_PN}-${MY_MAJOR}.so.0 || die
- ln -s lib${MY_PN}-${MY_MAJOR}.so.0 lib${MY_PN}-${MY_MAJOR}.so || die
- popd &>/dev/null || die
-
- # remove unneeded files
- rm \
- "${ED}"/usr/bin/js${MY_MAJOR}-config \
- "${ED}"/usr/$(get_libdir)/libjs_static.ajs \
- || die
-
- # fix permissions
- chmod -x \
- "${ED}"/usr/$(get_libdir)/pkgconfig/*.pc \
- "${ED}"/usr/include/mozjs-${MY_MAJOR}/js-config.h \
- || die
-}
diff --git a/dev-lang/spidermonkey/spidermonkey-78.6.0.ebuild b/dev-lang/spidermonkey/spidermonkey-78.6.0.ebuild
index 84db6ea9778a..19bc2279f74e 100644
--- a/dev-lang/spidermonkey/spidermonkey-78.6.0.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-78.6.0.ebuild
@@ -60,11 +60,11 @@ SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}
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"
+KEYWORDS="amd64 arm arm64 ~mips ppc64 ~s390 x86"
SLOT="78"
LICENSE="MPL-2.0"
-IUSE="+clang cpu_flags_arm_neon debug +jit lto test"
+IUSE="clang cpu_flags_arm_neon debug +jit lto test"
RESTRICT="!test? ( test )"
@@ -228,6 +228,7 @@ src_prepare() {
src_configure() {
# Show flags set at the beginning
einfo "Current CFLAGS: ${CFLAGS}"
+ einfo "Current CXXFLAGS: ${CXXFLAGS}"
einfo "Current LDFLAGS: ${LDFLAGS}"
einfo "Current RUSTFLAGS: ${RUSTFLAGS}"
@@ -315,8 +316,16 @@ src_configure() {
# 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}"
@@ -347,9 +356,16 @@ src_test() {
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
diff --git a/dev-lang/vala/Manifest b/dev-lang/vala/Manifest
index f344f17567c9..dd474c87ea32 100644
--- a/dev-lang/vala/Manifest
+++ b/dev-lang/vala/Manifest
@@ -9,9 +9,10 @@ DIST vala-0.44.11.tar.xz 3370248 BLAKE2B c111b6175e6339148e30bedc77f62a9ef3ec912
DIST vala-0.46.10.tar.xz 3417400 BLAKE2B 2f78de3e198f994a148e7ed4c82ef2417b70c19af3ce1874ee80aa7d0160691a50db24ad4898a04520e91d67a41bb508d3854ac2f4d90d2507a5a6558854716c SHA512 ae3734036f6a1b7088bac45083b75a49eee76947219f530493f81aa4ee60807cfa5424cf1b982d8d8f28f56119d66f06a9150b67884d80dd4b6724e152e32e62
DIST vala-0.46.13.tar.xz 3434196 BLAKE2B 49b7e0b776e185653c1b8c00747a150ceb42cf89006fd55d37e3efd0824dace379d2c72cdb45d481b0545d0b4b37299bc6161b2d083d3221d2d8d8ca7c10d6dc SHA512 6d8d1acebf4706346d5dc986f5c900cfda929ca59ca3f3907cff56892a496bf524b1f74032ac6c8587b236a473124e15c6f83f949636e28141a55c8abeddf004
DIST vala-0.48.11.tar.xz 3487944 BLAKE2B fe47bba9ddb31c469d63d9ca32d631901d59db19c417d864088bc33aa2845d388e762ecc39b2d9574aafbfc501eb61abb3604e07754b2d8eff63d23c53f1eb84 SHA512 6ddad88ab4d2a34352be9ce0a0c13dc3382ebcb494c08e2531a0195aad21a80db70e7dc3ffd2d27ef03a4ca30ac2bf31869521489ffd95fc520c4085362fc5e7
+DIST vala-0.48.12.tar.xz 3492200 BLAKE2B 0a401ac4349dc1c628fa608b5a89504583d6d2bb05ca74eb507e766cca418121e14adfe6e8cfeb8f42212c717280b9b91426309df415d869896654be626c46c5 SHA512 da7becf8b92985a07b139651c14bd41ec86aed3e2b610029d2b376f70335c98607f39de4a1fa4efe9d51e6088edd4c13d22431cada389679d55f684ad548f4d1
DIST vala-0.48.6.tar.xz 3451004 BLAKE2B 9c880cff885b934e1d82d21285839e040addecb0b3ce81936d5be118a951bd219eea2b8381ea42f13e6e858a1937a3789a3dee6d067735e5ee21eaced38b4646 SHA512 220a916d42cbae3853afdd7c35a72afb446a92fca039d8c660a478fd793686a0c82cbaf90a7c94ae182c1f41eec6df1aedb804013ab38e6e4bcc6d26e40e5375
DIST vala-0.48.9.tar.xz 3472540 BLAKE2B 1c85b5d9a1f3819d5b26b521c7da423adee313b2acacb354e324abd9ccf24707dcfcd1a455bab867043f674c4daa5f1a62210847ac271dfce09a288651220f53 SHA512 076fcbea34dde1a84c15e4e2b6acd009c2fea578d48eb28a99a604eb4edc8bb53ac6883ca93ec906968d43d4b341707abc730d6ac8a7b3682a2fa5f0030d5256
-DIST vala-0.50.1.tar.xz 3508924 BLAKE2B 4a6acd2ac9e098e8da9c1264584f02a22429ed096292ec8baf4c9c5ac2d0be4bf20c6c2eb6a41e31295461e1a7e0929c471512e435245c04228bf67c91f372ed SHA512 2f5d0bee6dcac3031108fffaa3a9a0339c8c79ff92d1824292f266a704bef1cf4f9eed15ebf424b608f09129b3e0577ed8cd7798a4fa12bfd9d06026909de769
+DIST vala-0.50.2.tar.xz 3514208 BLAKE2B f2f7e86b90ac1245d593ba82204667a830843e2fdb8e9a5afaa44453a146461f0ce2b9f9338ef4743bc6055bbce6c023ae92f0bf2ca66757cddd7fc3d7a4db63 SHA512 77069b53037adcd4c3fed2dc4a5c740216b950c52e8a0ed777a5cf9a5d9f078d0abbc4dbce08e122817cd3de0ac75ebd150b0f6f0b0cf4a09cb4a46f96bf4c3e
EBUILD vala-0.36.20.ebuild 801 BLAKE2B 28a0b45feb749184a38652c09c10e4e10fa89e13ae613394fc89395244249783d5d66e63b9a808a3d2b6d0585f6f03c70d418874ab103032502df7830e64ef0f SHA512 fb5d44393b0ecb62098873f25f16ee9f9f2b268faa5524268923ba88258ada9b6e9d74f3ab4d0d9c11d1972d869ae1e97bae848f4005ebbe29069219a4078d47
EBUILD vala-0.40.20.ebuild 1188 BLAKE2B 9754e3990f8b9d97a9db2d475a8338dbad1ac0daa74118a4966d08709bbb8d713817ae4a163bdc79ef2ce26aad00e633418734a2333a4e2c72b8a10b6a53d814 SHA512 d55a8a950eda084f4d527d090fa768436808922b4adafbd756cdaed73fb7214d9a1f74c77fc1c0d232e3dc6bd7548ded04ff3fbe566c609c7c2677404e757636
EBUILD vala-0.40.23.ebuild 1189 BLAKE2B 42ec55f24d20afeb5c3e268c5491be25084e9cd6f94e306568e9a0377c0e2a3197b4a5da9ec5108ce39433d31a339075a26485546d59ce9bc5a845f6efc40500 SHA512 18066dadbb427a8f494fd28402bb3dc71752209f47432e29fa9935c82e8a9f417eeea6fdb5b6e63a2f95ffdf6fae8bc133aa1ac1e79f1bd8ba9a2cb3cf97ffab
@@ -20,7 +21,8 @@ EBUILD vala-0.44.11.ebuild 1110 BLAKE2B caa359b186daa04e09b9f3c2185280dfedabd842
EBUILD vala-0.46.10.ebuild 1304 BLAKE2B 00ff3c6ac28fd59d5a914c4702bfefcb4885c6147dee21ab99bd1f0179844a2e2f919cbb7e1681a44d09a121d3e00ec518a705b3dd11c66158b93462ba6a9ebc SHA512 a014c280ed597aeacc6c1bc754237b6e9d53cc323968aad50c8d1f6c398cacb01319916d3ec13f987b25210aca84e23f1a69a4e7618cda7e4c9b3f4fc1eee237
EBUILD vala-0.46.13.ebuild 1303 BLAKE2B 9eab2887ca949595c7673fb81cd9066bacdcec0a3a3608924ae7d42ce38f8c60609a7ea641d48e379ed882908743d4dd3b62401ec1f97ba12992b5a8ff755efa SHA512 a7d042b51962a8e9d921d2dd04bc4dc6a3e6db4061c894aad3eb60bd142c655f1982f3277224ed85107ee1b20f8d407c2c2f836885f446c9392203cb08b103de
EBUILD vala-0.48.11.ebuild 1312 BLAKE2B 2a5c969f40a6f1ec8869e5de0e41e16ee78db748069bc0016e9b5b5ecb1dbc2be307995939134fe36a37b94e4a89284478d4704c04f32db9ae9c0a2786b875b8 SHA512 7354b9ffa72a263f0035b6803d6ab4071c7870cc90a1c9a57355ca637392420e78be6d5bedb866f327a522c0f852f1c78ea798ba66c62f8b5753fac9ec21a969
+EBUILD vala-0.48.12.ebuild 1312 BLAKE2B 2a5c969f40a6f1ec8869e5de0e41e16ee78db748069bc0016e9b5b5ecb1dbc2be307995939134fe36a37b94e4a89284478d4704c04f32db9ae9c0a2786b875b8 SHA512 7354b9ffa72a263f0035b6803d6ab4071c7870cc90a1c9a57355ca637392420e78be6d5bedb866f327a522c0f852f1c78ea798ba66c62f8b5753fac9ec21a969
EBUILD vala-0.48.6.ebuild 1304 BLAKE2B d90e05ab7274beb9ce6e4893527ce84e9e57d1687a88f71e4a890609d42761bea1b59d718a6cc3c03c7782fa4f10edd0bdbb7b54b045c9e902dd8fd179f18187 SHA512 12e9eea51d27a9863f8697530d4c6b6d8ec352961474d1772823a55facf2cfad18c9d727fcafcd70ae3862e4d52f0315735d983c50bc5a52c8fb33b55c8d1dc8
EBUILD vala-0.48.9.ebuild 1303 BLAKE2B 432d720113f6d171a8131562c9182d55ae92870855b39dca906eb8db9e76371c5b463a3408a9d80242592e5d3684307fb473a371de4b62f53ef4b6ab3c1ea520 SHA512 7966b7114fff3b3424095fb655f1f6181c8cf8893c2b5d24fe59e8ac3566d23553531e93bfe59f6990dc46c43a43019c062a17b7e38ace70509ecf2a3fac5636
-EBUILD vala-0.50.1.ebuild 1312 BLAKE2B 507ce10645273e1b88b85552e019ac819425b5b483fb0ae2d711d8632e4d6c01da13b9a263455e876634aa9671713dc3b88ec7abe7c8187da3d7430ee75f7d29 SHA512 2d85349c7a4ad95d79e44f4c4fb259edbe4f83e44ceda05ad22d74f2fab9d5d745465537aa6f1a06e771f062a4f19d72f597ede88c4efa52bae9627d60c565e3
+EBUILD vala-0.50.2.ebuild 1312 BLAKE2B 507ce10645273e1b88b85552e019ac819425b5b483fb0ae2d711d8632e4d6c01da13b9a263455e876634aa9671713dc3b88ec7abe7c8187da3d7430ee75f7d29 SHA512 2d85349c7a4ad95d79e44f4c4fb259edbe4f83e44ceda05ad22d74f2fab9d5d745465537aa6f1a06e771f062a4f19d72f597ede88c4efa52bae9627d60c565e3
MISC metadata.xml 345 BLAKE2B de3110ae281a87f8cb8f6c10d93705f56f0cfed972cd893a063e66c2629150d491498a29b35b4efe19fa5b6baa740f1d989bad440924befc60ef56423096f108 SHA512 163aa55430a075974d504a5bbb71ad9a249cb215de12a82b3141de18bb05f1e0c2078c02c617cf7d98a97c7f8dd407077183754d8c82c77e80dd0d7b2ec38283
diff --git a/dev-lang/vala/vala-0.48.12.ebuild b/dev-lang/vala/vala-0.48.12.ebuild
new file mode 100644
index 000000000000..1f7c05bd15c1
--- /dev/null
+++ b/dev-lang/vala/vala-0.48.12.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit gnome2
+
+DESCRIPTION="Compiler for the GObject type system"
+HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
+
+LICENSE="LGPL-2.1+"
+SLOT="0.48"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux"
+IUSE="test valadoc"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.48.0:2
+ >=dev-libs/vala-common-${PV}
+ valadoc? ( >=media-gfx/graphviz-2.16 )
+ !<net-libs/libsoup-2.66.2[vala]
+" # Older libsoup generates a libsoup-2.4.vapi that isn't fine for vala:0.46 anymore
+# We block here, so libsoup[vala] consumers wouldn't have to >= it, which would be bad
+# as the newer is not required with older vala when those are picked instead of 0.46.
+# vala-0.45.91 ships a broken libsoup-2.4.vapi copy too, but that'll be fixed by 0.45.92
+DEPEND="${RDEPEND}
+ dev-libs/libxslt
+ sys-devel/flex
+ virtual/pkgconfig
+ virtual/yacc
+ test? (
+ dev-libs/dbus-glib
+ >=dev-libs/glib-2.26:2
+ dev-libs/gobject-introspection )
+"
+
+src_configure() {
+ # weasyprint enables generation of PDF from HTML
+ gnome2_src_configure \
+ --disable-unversioned \
+ $(use_enable valadoc) \
+ VALAC=: \
+ WEASYPRINT=:
+}
+
+src_install() {
+ default
+ find "${D}" -name "*.la" -delete || die
+}
diff --git a/dev-lang/vala/vala-0.50.1.ebuild b/dev-lang/vala/vala-0.50.2.ebuild
index c1a73c907f81..c1a73c907f81 100644
--- a/dev-lang/vala/vala-0.50.1.ebuild
+++ b/dev-lang/vala/vala-0.50.2.ebuild