summaryrefslogtreecommitdiff
path: root/dev-lang
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/Manifest.gzbin17511 -> 17320 bytes
-rw-r--r--dev-lang/R/Manifest10
-rw-r--r--dev-lang/R/R-3.4.1.ebuild2
-rw-r--r--dev-lang/R/R-3.5.3.ebuild204
-rw-r--r--dev-lang/R/R-3.6.0.ebuild204
-rw-r--r--dev-lang/R/R-3.6.3.ebuild (renamed from dev-lang/R/R-3.6.2.ebuild)20
-rw-r--r--dev-lang/bff/Manifest2
-rw-r--r--dev-lang/bff/bff-1.0.5.ebuild4
-rw-r--r--dev-lang/c-intercal/Manifest7
-rw-r--r--dev-lang/c-intercal/c-intercal-30.0.ebuild76
-rw-r--r--dev-lang/c-intercal/c-intercal-31.0.ebuild3
-rw-r--r--dev-lang/c-intercal/files/c-intercal-30.0-version.patch11
-rw-r--r--dev-lang/c-intercal/files/c-intercal-30.0-yywrap.patch17
-rw-r--r--dev-lang/c-intercal/files/c-intercal-31.0-no-common.patch13
-rw-r--r--dev-lang/cfortran/Manifest2
-rw-r--r--dev-lang/cfortran/cfortran-4.4-r3.ebuild2
-rw-r--r--dev-lang/coffee-script/Manifest2
-rw-r--r--dev-lang/coffee-script/metadata.xml5
-rw-r--r--dev-lang/crystal/Manifest9
-rw-r--r--dev-lang/crystal/crystal-0.34.0.ebuild (renamed from dev-lang/crystal/crystal-0.31.1.ebuild)8
-rw-r--r--dev-lang/crystal/files/crystal-0.34.0-no-usr-lib.patch14
-rw-r--r--dev-lang/elixir/Manifest6
-rw-r--r--dev-lang/elixir/elixir-1.10.0.ebuild32
-rw-r--r--dev-lang/elixir/elixir-1.10.1.ebuild2
-rw-r--r--dev-lang/elixir/elixir-1.10.2.ebuild13
-rw-r--r--dev-lang/erlang/Manifest23
-rw-r--r--dev-lang/erlang/erlang-22.1.4.ebuild154
-rw-r--r--dev-lang/erlang/erlang-22.2.6.ebuild155
-rw-r--r--dev-lang/erlang/erlang-22.2.8.ebuild (renamed from dev-lang/erlang/erlang-22.2.1-r1.ebuild)9
-rw-r--r--dev-lang/erlang/erlang-22.3.1.ebuild (renamed from dev-lang/erlang/erlang-22.2.7-r1.ebuild)2
-rw-r--r--dev-lang/erlang/erlang-22.3.2.ebuild (renamed from dev-lang/erlang/erlang-22.1.8-r1.ebuild)9
-rw-r--r--dev-lang/erlang/erlang-22.3.ebuild (renamed from dev-lang/erlang/erlang-22.2.7.ebuild)10
-rw-r--r--dev-lang/gforth/Manifest4
-rw-r--r--dev-lang/gforth/gforth-0.7.3-r1.ebuild7
-rw-r--r--dev-lang/gforth/metadata.xml3
-rw-r--r--dev-lang/ghc/Manifest36
-rw-r--r--dev-lang/ghc/files/ghc-8.10.1-allow-cross-bootstrap.patch17
-rw-r--r--dev-lang/ghc/files/ghc-8.10.1-no-relax-everywhere.patch19
-rw-r--r--dev-lang/ghc/ghc-7.10.3.ebuild6
-rw-r--r--dev-lang/ghc/ghc-7.8.4.ebuild4
-rw-r--r--dev-lang/ghc/ghc-8.0.2.ebuild4
-rw-r--r--dev-lang/ghc/ghc-8.10.1.ebuild794
-rw-r--r--dev-lang/ghc/ghc-8.2.1.ebuild4
-rw-r--r--dev-lang/ghc/ghc-8.2.2.ebuild4
-rw-r--r--dev-lang/ghc/ghc-8.4.1.ebuild4
-rw-r--r--dev-lang/ghc/ghc-8.4.2.ebuild4
-rw-r--r--dev-lang/ghc/ghc-8.4.3.ebuild4
-rw-r--r--dev-lang/ghc/ghc-8.6.4.ebuild4
-rw-r--r--dev-lang/ghc/ghc-8.6.5.ebuild2
-rw-r--r--dev-lang/ghc/ghc-8.8.1.ebuild2
-rw-r--r--dev-lang/ghc/ghc-8.8.2.ebuild2
-rw-r--r--dev-lang/ghc/ghc-8.8.3.ebuild805
-rw-r--r--dev-lang/gnat-gpl/Manifest10
-rw-r--r--dev-lang/gnat-gpl/gnat-gpl-2016-r4.ebuild13
-rw-r--r--dev-lang/gnat-gpl/gnat-gpl-2017-r1.ebuild15
-rw-r--r--dev-lang/gnat-gpl/gnat-gpl-2018-r3.ebuild15
-rw-r--r--dev-lang/gnat-gpl/gnat-gpl-2019-r1.ebuild15
-rw-r--r--dev-lang/gnat-gpl/metadata.xml1
-rw-r--r--dev-lang/go/Manifest16
-rw-r--r--dev-lang/go/go-1.12.13.ebuild246
-rw-r--r--dev-lang/go/go-1.12.15.ebuild246
-rw-r--r--dev-lang/go/go-1.12.17.ebuild2
-rw-r--r--dev-lang/go/go-1.13.7.ebuild197
-rw-r--r--dev-lang/go/go-1.13.9.ebuild (renamed from dev-lang/go/go-1.13.8.ebuild)2
-rw-r--r--dev-lang/go/go-1.14.1.ebuild (renamed from dev-lang/go/go-1.13.6.ebuild)0
-rw-r--r--dev-lang/icon/Manifest2
-rw-r--r--dev-lang/icon/icon-9.5.1-r1.ebuild2
-rw-r--r--dev-lang/janet/Manifest6
-rw-r--r--dev-lang/janet/files/janet-1.7.0-fix-ldflags-in-pkgconfig.patch11
-rw-r--r--dev-lang/janet/janet-1.7.0.ebuild55
-rw-r--r--dev-lang/janet/janet-1.8.1.ebuild55
-rw-r--r--dev-lang/janet/metadata.xml28
-rw-r--r--dev-lang/jimtcl/Manifest4
-rw-r--r--dev-lang/jimtcl/jimtcl-0.76.ebuild4
-rw-r--r--dev-lang/jimtcl/jimtcl-0.78-r2.ebuild4
-rw-r--r--dev-lang/julia-bin/Manifest5
-rw-r--r--dev-lang/julia-bin/julia-bin-1.4.0.ebuild44
-rw-r--r--dev-lang/julia/Manifest12
-rw-r--r--dev-lang/julia/files/julia-1.4.0-no_symlink_llvm.patch10
-rw-r--r--dev-lang/julia/files/julia-9999-fix_build_system.patch104
-rw-r--r--dev-lang/julia/julia-1.2.0.ebuild2
-rw-r--r--dev-lang/julia/julia-1.3.0.ebuild2
-rw-r--r--dev-lang/julia/julia-1.4.0-r1.ebuild191
-rw-r--r--dev-lang/julia/julia-9999.ebuild176
-rw-r--r--dev-lang/lisaac/Manifest2
-rw-r--r--dev-lang/lisaac/lisaac-0.13.1-r2.ebuild31
-rw-r--r--dev-lang/logtalk/Manifest5
-rw-r--r--dev-lang/logtalk/files/logtalk-3.36.0-portage.patch19
-rw-r--r--dev-lang/logtalk/logtalk-3.36.0.ebuild (renamed from dev-lang/logtalk/logtalk-3.11.2.ebuild)50
-rw-r--r--dev-lang/lua/Manifest38
-rw-r--r--dev-lang/lua/lua-5.1.5-r100.ebuild4
-rw-r--r--dev-lang/lua/lua-5.1.5-r101.ebuild4
-rw-r--r--dev-lang/lua/lua-5.1.5-r102.ebuild4
-rw-r--r--dev-lang/lua/lua-5.1.5-r103.ebuild2
-rw-r--r--dev-lang/lua/lua-5.1.5-r4.ebuild2
-rw-r--r--dev-lang/lua/lua-5.1.5-r5.ebuild2
-rw-r--r--dev-lang/lua/lua-5.2.3-r1.ebuild4
-rw-r--r--dev-lang/lua/lua-5.2.3-r2.ebuild4
-rw-r--r--dev-lang/lua/lua-5.2.3-r3.ebuild4
-rw-r--r--dev-lang/lua/lua-5.2.3.ebuild4
-rw-r--r--dev-lang/lua/lua-5.2.4-r1.ebuild4
-rw-r--r--dev-lang/lua/lua-5.2.4-r2.ebuild2
-rw-r--r--dev-lang/lua/lua-5.2.4.ebuild4
-rw-r--r--dev-lang/lua/lua-5.3.3-r1.ebuild4
-rw-r--r--dev-lang/lua/lua-5.3.3-r2.ebuild4
-rw-r--r--dev-lang/lua/lua-5.3.3.ebuild4
-rw-r--r--dev-lang/lua/lua-5.3.5-r1.ebuild4
-rw-r--r--dev-lang/lua/lua-5.3.5-r2.ebuild2
-rw-r--r--dev-lang/lua/lua-5.3.5.ebuild4
-rw-r--r--dev-lang/mercury-extras/Manifest12
-rw-r--r--dev-lang/mercury-extras/mercury-extras-14.01.1.ebuild10
-rw-r--r--dev-lang/mercury-extras/mercury-extras-20.01.1.ebuild317
-rw-r--r--dev-lang/mercury-extras/mercury-extras-20.01.ebuild317
-rw-r--r--dev-lang/mercury-extras/metadata.xml3
-rw-r--r--dev-lang/mercury/Manifest10
-rw-r--r--dev-lang/mercury/mercury-14.01.1-r1.ebuild5
-rw-r--r--dev-lang/mercury/mercury-20.01.1.ebuild201
-rw-r--r--dev-lang/mercury/mercury-20.01.ebuild206
-rw-r--r--dev-lang/mmix/Manifest3
-rw-r--r--dev-lang/mmix/files/mmix-20160804-gcc-10.patch24
-rw-r--r--dev-lang/mmix/mmix-20160804-r1.ebuild3
-rw-r--r--dev-lang/mono/Manifest2
-rw-r--r--dev-lang/mono/mono-6.6.0.161.ebuild2
-rw-r--r--dev-lang/mujs/Manifest2
-rw-r--r--dev-lang/mujs/mujs-1.0.5.ebuild2
-rw-r--r--dev-lang/nim/Manifest2
-rw-r--r--dev-lang/nim/nim-1.2.0.ebuild79
-rw-r--r--dev-lang/ocaml/Manifest4
-rw-r--r--dev-lang/ocaml/ocaml-4.04.2-r1.ebuild2
-rw-r--r--dev-lang/ocaml/ocaml-4.09.0.ebuild2
-rw-r--r--dev-lang/perl/Manifest5
-rw-r--r--dev-lang/perl/files/perl-5.30.1-gcc-10.patch99
-rw-r--r--dev-lang/perl/perl-5.30.1.ebuild7
-rw-r--r--dev-lang/perl/perl-5.30.2.ebuild653
-rw-r--r--dev-lang/php/Manifest24
-rw-r--r--dev-lang/php/php-7.2.26.ebuild750
-rw-r--r--dev-lang/php/php-7.2.27.ebuild750
-rw-r--r--dev-lang/php/php-7.2.29.ebuild (renamed from dev-lang/php/php-7.2.28.ebuild)11
-rw-r--r--dev-lang/php/php-7.3.13.ebuild751
-rw-r--r--dev-lang/php/php-7.3.14.ebuild751
-rw-r--r--dev-lang/php/php-7.3.16.ebuild (renamed from dev-lang/php/php-7.3.15.ebuild)11
-rw-r--r--dev-lang/php/php-7.4.1.ebuild741
-rw-r--r--dev-lang/php/php-7.4.2.ebuild741
-rw-r--r--dev-lang/php/php-7.4.4.ebuild (renamed from dev-lang/php/php-7.4.3.ebuild)13
-rw-r--r--dev-lang/python-exec/Manifest2
-rw-r--r--dev-lang/python-exec/python-exec-2.4.6-r1.ebuild2
-rw-r--r--dev-lang/python/Manifest33
-rw-r--r--dev-lang/python/files/python-2.7.10-cross-compile-warn-test.patch24
-rw-r--r--dev-lang/python/files/python-2.7.10-system-libffi.patch36
-rw-r--r--dev-lang/python/files/python-2.7.5-nonfatal-compileall.patch18
-rw-r--r--dev-lang/python/files/python-2.7.9-ncurses-pkg-config.patch13
-rw-r--r--dev-lang/python/files/python-3.7.5-hashlib.patch25
-rw-r--r--dev-lang/python/files/test.support.unlink-ignore-EACCES.patch28
-rw-r--r--dev-lang/python/files/test.support.unlink-ignore-PermissionError.patch28
-rw-r--r--dev-lang/python/python-2.7.17-r2.ebuild (renamed from dev-lang/python/python-2.7.17-r1.ebuild)7
-rw-r--r--dev-lang/python/python-2.7.17.ebuild361
-rw-r--r--dev-lang/python/python-3.6.10-r1.ebuild (renamed from dev-lang/python/python-3.6.10.ebuild)8
-rw-r--r--dev-lang/python/python-3.6.9.ebuild348
-rw-r--r--dev-lang/python/python-3.7.5-r1.ebuild328
-rw-r--r--dev-lang/python/python-3.7.6.ebuild3
-rw-r--r--dev-lang/python/python-3.7.7-r1.ebuild (renamed from dev-lang/python/python-3.8.1.ebuild)21
-rw-r--r--dev-lang/python/python-3.8.2-r1.ebuild (renamed from dev-lang/python/python-3.8.2.ebuild)8
-rw-r--r--dev-lang/python/python-3.9.0_alpha4.ebuild8
-rw-r--r--dev-lang/python/python-3.9.0_alpha5.ebuild (renamed from dev-lang/python/python-3.9.0_alpha2.ebuild)10
-rw-r--r--dev-lang/qu-prolog/Manifest3
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-10.2-qt5.patch35
-rw-r--r--dev-lang/qu-prolog/qu-prolog-10.2.ebuild100
-rw-r--r--dev-lang/rebol-bin/Manifest4
-rw-r--r--dev-lang/rebol-bin/metadata.xml8
-rw-r--r--dev-lang/rebol-bin/rebol-bin-3_pre20140304.ebuild39
-rw-r--r--dev-lang/rebol/Manifest2
-rw-r--r--dev-lang/rebol/metadata.xml8
-rw-r--r--dev-lang/rebol/rebol-9999.ebuild37
-rw-r--r--dev-lang/ruby/Manifest16
-rw-r--r--dev-lang/ruby/ruby-2.4.10.ebuild227
-rw-r--r--dev-lang/ruby/ruby-2.4.9.ebuild2
-rw-r--r--dev-lang/ruby/ruby-2.5.7.ebuild2
-rw-r--r--dev-lang/ruby/ruby-2.5.8.ebuild222
-rw-r--r--dev-lang/ruby/ruby-2.6.5.ebuild2
-rw-r--r--dev-lang/ruby/ruby-2.6.6.ebuild234
-rw-r--r--dev-lang/ruby/ruby-2.7.0.ebuild2
-rw-r--r--dev-lang/ruby/ruby-2.7.1.ebuild237
-rw-r--r--dev-lang/rust-bin/Manifest94
-rw-r--r--dev-lang/rust-bin/metadata.xml4
-rw-r--r--dev-lang/rust-bin/rust-bin-1.37.0.ebuild167
-rw-r--r--dev-lang/rust-bin/rust-bin-1.39.0.ebuild167
-rw-r--r--dev-lang/rust-bin/rust-bin-1.40.0.ebuild167
-rw-r--r--dev-lang/rust-bin/rust-bin-1.41.0.ebuild167
-rw-r--r--dev-lang/rust-bin/rust-bin-1.41.1.ebuild2
-rw-r--r--dev-lang/rust-bin/rust-bin-1.42.0.ebuild (renamed from dev-lang/rust-bin/rust-bin-1.38.0.ebuild)12
-rw-r--r--dev-lang/rust/Manifest94
-rw-r--r--dev-lang/rust/files/0001-llvm-cmake-Add-additional-headers-only-if-they-exist.patch41
-rw-r--r--dev-lang/rust/files/1.34.2-fix-custom-libdir.patch36
-rw-r--r--dev-lang/rust/files/1.35.0-revert-commits-triggering-multiple-llvm-rebuilds.patch117
-rw-r--r--dev-lang/rust/files/1.36.0-libressl.patch68
-rw-r--r--dev-lang/rust/files/1.38.0-fix-custom-libdir.patch90
-rw-r--r--dev-lang/rust/files/1.38.0-fix-multiple-llvm-rebuilds.patch75
-rw-r--r--dev-lang/rust/files/1.42.0-fix-bootstrap.patch440
-rw-r--r--dev-lang/rust/files/1.42.0-libressl.patch43
-rw-r--r--dev-lang/rust/metadata.xml12
-rw-r--r--dev-lang/rust/rust-1.37.0.ebuild342
-rw-r--r--dev-lang/rust/rust-1.38.0.ebuild342
-rw-r--r--dev-lang/rust/rust-1.39.0.ebuild347
-rw-r--r--dev-lang/rust/rust-1.40.0-r1.ebuild358
-rw-r--r--dev-lang/rust/rust-1.41.1.ebuild6
-rw-r--r--dev-lang/rust/rust-1.42.0.ebuild (renamed from dev-lang/rust/rust-1.41.0.ebuild)62
-rw-r--r--dev-lang/scala-bin/Manifest2
-rw-r--r--dev-lang/scala-bin/scala-bin-2.13.1.ebuild76
-rw-r--r--dev-lang/spidermonkey/Manifest26
-rw-r--r--dev-lang/spidermonkey/metadata.xml3
-rw-r--r--dev-lang/spidermonkey/spidermonkey-1.8.5-r6.ebuild2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-1.8.5-r7.ebuild2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-1.8.5-r9.ebuild2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-38.3.0.ebuild2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-45.0.2.ebuild2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-52.9.1_pre1-r1.ebuild2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-52.9.1_pre1.ebuild2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r2.ebuild2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r3.ebuild2
-rw-r--r--dev-lang/spidermonkey/spidermonkey-68.7.0.ebuild222
-rw-r--r--dev-lang/swi-prolog/Manifest16
-rw-r--r--dev-lang/swi-prolog/swi-prolog-8.1.17.ebuild106
-rw-r--r--dev-lang/swi-prolog/swi-prolog-8.1.18.ebuild106
-rw-r--r--dev-lang/swi-prolog/swi-prolog-8.1.19.ebuild106
-rw-r--r--dev-lang/swi-prolog/swi-prolog-8.1.20.ebuild106
-rw-r--r--dev-lang/swi-prolog/swi-prolog-8.1.25.ebuild (renamed from dev-lang/swi-prolog/swi-prolog-8.1.21.ebuild)8
-rw-r--r--dev-lang/swi-prolog/swi-prolog-8.1.26.ebuild (renamed from dev-lang/swi-prolog/swi-prolog-8.1.22.ebuild)15
-rw-r--r--dev-lang/swig/Manifest4
-rw-r--r--dev-lang/swig/swig-3.0.12.ebuild2
-rw-r--r--dev-lang/swig/swig-4.0.0.ebuild4
-rw-r--r--dev-lang/tcl/Manifest6
-rw-r--r--dev-lang/tcl/tcl-8.5.17-r1.ebuild2
-rw-r--r--dev-lang/tcl/tcl-8.6.8.ebuild2
-rw-r--r--dev-lang/tcl/tcl-8.6.9.ebuild4
-rw-r--r--dev-lang/tk/Manifest8
-rw-r--r--dev-lang/tk/tk-8.5.17-r1.ebuild2
-rw-r--r--dev-lang/tk/tk-8.6.8.ebuild2
-rw-r--r--dev-lang/tk/tk-8.6.9.1.ebuild4
-rw-r--r--dev-lang/tk/tk-8.6.9.ebuild4
-rw-r--r--dev-lang/vala/Manifest24
-rw-r--r--dev-lang/vala/vala-0.36.20.ebuild2
-rw-r--r--dev-lang/vala/vala-0.40.16.ebuild2
-rw-r--r--dev-lang/vala/vala-0.40.18.ebuild2
-rw-r--r--dev-lang/vala/vala-0.40.19.ebuild2
-rw-r--r--dev-lang/vala/vala-0.40.20.ebuild54
-rw-r--r--dev-lang/vala/vala-0.44.11.ebuild2
-rw-r--r--dev-lang/vala/vala-0.44.9.ebuild2
-rw-r--r--dev-lang/vala/vala-0.46.6.ebuild2
-rw-r--r--dev-lang/vala/vala-0.46.7.ebuild49
-rw-r--r--dev-lang/vala/vala-0.48.2.ebuild (renamed from dev-lang/vala/vala-0.47.92.ebuild)2
-rw-r--r--dev-lang/vala/vala-0.48.3.ebuild49
252 files changed, 6633 insertions, 11139 deletions
diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz
index af7b783de022..fe56f3d8edfe 100644
--- a/dev-lang/Manifest.gz
+++ b/dev-lang/Manifest.gz
Binary files differ
diff --git a/dev-lang/R/Manifest b/dev-lang/R/Manifest
index d062d3aa95a1..6959d9c09801 100644
--- a/dev-lang/R/Manifest
+++ b/dev-lang/R/Manifest
@@ -3,12 +3,8 @@ AUX R-3.4.1-rmath-shared.patch 899 BLAKE2B 0aba9c1c5417531647bed3829d53909e6f398
AUX R-3.6.2-no-LDFLAGS-in-libR-pkg-config.patch 469 BLAKE2B ee716b068316bbac0c07fe44bef739a491af5f4e90ba268cf7db428350763d498ab0b1bc9efa02ac885d0ac64aa5d076deaac094725766e340cbcd9d7e839b22 SHA512 cb7bc73fd0f1aa4159b25bc76318074662afddafdef8acc8caf20afb98da6c065c3bd0895c4a7a7f18a174d21d59c0f054a46aa513db1b5b622a110e7c54e171
AUX R-3.6.2-no-gzip-doc.patch 443 BLAKE2B 1154e9f67f08e1d8b286152bd093789a0b94b3a2422bdb54d1d1d03729bd892811e68121309c41ef4323ed31efcea82f3e265b37445e9870bbd88c5413311345 SHA512 99678dbf809761a2991cd5cbe6ff5ba8d1c3e9388f69d94b30726caae4eee29ae50ee74aa24e3851d41559f804381ec18a2cd818b97b5417bf7ae660c93ad2a6
DIST R-3.4.1.tar.gz 30200109 BLAKE2B 03602e9a48759caee8ce047fa6273df7a54af089de4489e21953c0e3fc7bfdf720d924f1e0167d3dbf65f63ed42ac10dea8b45289b921cda1c0e6d25a0063ebb SHA512 19bd50c87dc001ef947c15c1760f27ac8986ff6b43c6d90d3093ae184e42963027ef06faf31ec57ac9e519af7a35a2f53f8ea23ef75d800ebbd02945cedc4651
-DIST R-3.5.3.tar.gz 30205979 BLAKE2B 60dde4c1a7874df0b113630577d943d581d9e0844383a5cb7eda7f62470177d541704a888c33ded216f8b1f088cda493d7716693f5e2451effe3639ce2286dd1 SHA512 077cbd4bc9f19a3a2485afbd4d8e08e0754ddcb9a10164cbc8478f239d5ed0ffaf6796929f154cce1c8aea549c32d460049fc036dc326174d1dbb0a1ddb5f5ef
-DIST R-3.6.0.tar.gz 30449618 BLAKE2B 2fb2f1252f5ead97ab42eb1f71fa0be1e8aec2f6cce182956ec1c35b43b70b58f579faf5f3ca11efb8e9c24a9ed836b5b690cb23858249bc7f575aca4709bc3b SHA512 b2e17b909b6387abb964492e2e9370f913295ca7ac99bab0e965c43ed3c4635e27468c326fb2bca3c529b03c731b0170d9e777a194ad4d6c5a983c050223d8c8
-DIST R-3.6.2.tar.gz 33311930 BLAKE2B 53f344e80e017064a275c271d98be714e210193931a120e7ebc79ee6cf0ebc0c24c090acc25560998f26600c05305147816ab782632d99beaea83b3a9b5e2a21 SHA512 17513e9f4dd27c61c11f7aa45227aeeeefb375bf5d4e193b471724f379a1b2da33e127cbe91aa175cbbbb048b892047e2f610280585c8159242a6c94790b07f9
+DIST R-3.6.3.tar.gz 33308185 BLAKE2B f82751e21d3b502132f8f27d4fc47a921fb085a50c3da3b45e08fbbdd1ab3d42e89b4fa6653a570c21176d79f492277b1d0b86c3c9f4da1386d8b6e4771d4d2c SHA512 9b1dc78922e431bd1af81e6e560b10ad04d121718f680fed32db735d561fd40ea6028759976722db11559f1a78fe684119b766f0567128cb2ee5003aa87a0931
DIST R-78d6830e28ea90a046da79a9b4f70c39594bb6d6.bash_completion 13596 BLAKE2B 53338e4a1c4f68beb69247216e553dbcac47f660fbf032bfebf7a660e32d2cff5b11ed35411c52de7e1fd6e00bbf5b5ea19369a325fa0a38bd93d63dc3288cbd SHA512 9ccd19bb1b0c18a2f13035ccd6809447429e197e298fb4d1df808ef345d723b42f75a1b91c349f6dbb46e4a82e59ef33e11300c495d79b63d670d0c0f2b16a06
-EBUILD R-3.4.1.ebuild 6237 BLAKE2B efab9640126c37a2d84640b21247f6481a3c7f7dfa746bc803c647931a0c15712960d1a5be6a0c33e28c211bad0fddfc3515f550ff19ac6f34d43a696c48dd76 SHA512 29afd79f796e87b97b6b216bfe480ed2d1e492fea11f09eed8fb0eef89bfda3963b586ae27e0d81fd54a9993c8e8accc107dce6d8261e159cb844134965e7192
-EBUILD R-3.5.3.ebuild 6233 BLAKE2B f12f73f67da6acd1924bfe41e2700c2a0d659cfbfdf3950b721d6d4330ccfc77efbff9455b4c443845dbbcef0f836a3ea424b19fba12de52f9c086959d64af6e SHA512 56855a8461d93c9cc18d418ae69a6c2f4b87e420bdd4ed9fd0ece914c0a17f6d28124736bbd35a555537e5400f264428b37ebf56ad150e414cfdb6ba8dae4b9e
-EBUILD R-3.6.0.ebuild 6233 BLAKE2B f12f73f67da6acd1924bfe41e2700c2a0d659cfbfdf3950b721d6d4330ccfc77efbff9455b4c443845dbbcef0f836a3ea424b19fba12de52f9c086959d64af6e SHA512 56855a8461d93c9cc18d418ae69a6c2f4b87e420bdd4ed9fd0ece914c0a17f6d28124736bbd35a555537e5400f264428b37ebf56ad150e414cfdb6ba8dae4b9e
-EBUILD R-3.6.2.ebuild 6314 BLAKE2B 15dc9f85f47794f6ef82c37121046daaa19b36a0b22e0e30bbea7a6e4102deda1f5819b2e4e670a001a5e6fd11cf11108512fb3693ba2bf1037a29313a284db4 SHA512 cd3b7cb01367e3148380b9e912797eec8485f4b53b247be1a69bb6f4896ab2d2050ae7f3eb2a2808080587cd690161989ee53df7cc4710c59f7d80b54f34ff92
+EBUILD R-3.4.1.ebuild 6238 BLAKE2B 92ddb9e8d95509538d9be5048e36a4e084f22a095e77b1caffe840c54af031268819bd0b6cb4c92aa547920ab124ec8df70be7b2e9b4b9c4140256bd9adf38c1 SHA512 f0c5c8ff2c52bb948621aad27a44c9fa815380871f56ec531a645e8122e0b55a210e0e6831619237adc0a49dedec71fad4d9695c78a759e8bfe19ad2cb446c20
+EBUILD R-3.6.3.ebuild 6159 BLAKE2B 1f1dca865a438ff8fb83262b851f09c2b62ad39f2d3e4b703410df0e87dbcdfaa43494bd8b713d647aff0f79a783de25ee9350aeb45e48d8a638bdfb68c3c7ef SHA512 80566dd4e26af3ead691f71d287cafe47d9965d087bb2db0dc588ca4dd56678b354eb4d39287cadc85526d92590fd736778bbc766c2d470447304cee7f5eac4a
MISC metadata.xml 1140 BLAKE2B 774221eb531b4e80f0650b627b9ce53d9a2daf6342b1f19579d2d046e1c83aa497cc764870406b7ea3cf6cbae899cb6d460af92991d62bc6aea8da026a441822 SHA512 297c7e17998f92fb836b0599ce5221aee1ba1e7b1504edb348a602b695faf381d51f32f6118f5ef4bb353f02e92ffc5b3520b8d317d3e30a68a3cce0254fa6b1
diff --git a/dev-lang/R/R-3.4.1.ebuild b/dev-lang/R/R-3.4.1.ebuild
index ae5fc62ba095..b54064371149 100644
--- a/dev-lang/R/R-3.4.1.ebuild
+++ b/dev-lang/R/R-3.4.1.ebuild
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="|| ( GPL-2 GPL-3 ) LGPL-2.1"
SLOT="0"
-KEYWORDS="amd64 arm64 ~hppa ia64 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+KEYWORDS="amd64 arm64 ~hppa ~ia64 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
IUSE="cairo doc icu java jpeg lapack minimal nls openmp perl png prefix profile readline static-libs tiff tk X"
REQUIRED_USE="png? ( || ( cairo X ) ) jpeg? ( || ( cairo X ) ) tiff? ( || ( cairo X ) )"
diff --git a/dev-lang/R/R-3.5.3.ebuild b/dev-lang/R/R-3.5.3.ebuild
deleted file mode 100644
index 66c38fbe2f16..000000000000
--- a/dev-lang/R/R-3.5.3.ebuild
+++ /dev/null
@@ -1,204 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit bash-completion-r1 autotools eutils flag-o-matic fortran-2 multilib toolchain-funcs
-
-# latest git commit for R bash completion: https://github.com/deepayan/rcompletion
-BCPV=78d6830e28ea90a046da79a9b4f70c39594bb6d6
-
-DESCRIPTION="Language and environment for statistical computing and graphics"
-HOMEPAGE="http://www.r-project.org/"
-SRC_URI="
- mirror://cran/src/base/R-3/${P}.tar.gz
- https://raw.githubusercontent.com/deepayan/rcompletion/${BCPV}/bash_completion/R -> ${PN}-${BCPV}.bash_completion"
-
-LICENSE="|| ( GPL-2 GPL-3 ) LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE="cairo doc icu java jpeg lapack minimal nls openmp perl png prefix profile readline static-libs tiff tk X"
-REQUIRED_USE="png? ( || ( cairo X ) ) jpeg? ( || ( cairo X ) ) tiff? ( || ( cairo X ) )"
-
-CDEPEND="
- app-arch/bzip2:0=
- app-arch/xz-utils:0=
- app-text/ghostscript-gpl
- >=dev-libs/libpcre-8.35:3=
- net-libs/libtirpc
- net-misc/curl
- virtual/blas:0
- || ( >=sys-apps/coreutils-8.15 app-misc/realpath )
- cairo? ( x11-libs/cairo:0=[X=] x11-libs/pango:0= )
- icu? ( dev-libs/icu:= )
- jpeg? ( virtual/jpeg:0 )
- lapack? ( virtual/lapack:0 )
- perl? ( dev-lang/perl )
- png? ( media-libs/libpng:0= )
- readline? ( sys-libs/readline:0= )
- tiff? ( media-libs/tiff:0= )
- tk? ( dev-lang/tk:0= )
- X? ( x11-libs/libXmu:0= x11-misc/xdg-utils )"
-
-DEPEND="${CDEPEND}
- virtual/pkgconfig
- doc? (
- virtual/latex-base
- dev-texlive/texlive-fontsrecommended
- )"
-
-RDEPEND="${CDEPEND}
- >=sys-libs/zlib-1.2.5.1-r2:0[minizip]
- java? ( >=virtual/jre-1.5 )"
-
-RESTRICT="minimal? ( test )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.4.1-parallel.patch
- "${FILESDIR}"/${PN}-3.4.1-rmath-shared.patch
-)
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
- if ! tc-check-openmp; then
- ewarn "OpenMP is not available in your current selected compiler"
- die "need openmp capable compiler"
- fi
- FORTRAN_NEED_OPENMP=1
- fi
- fortran-2_pkg_setup
- filter-ldflags -Wl,-Bdirect -Bdirect
- # avoid using existing R installation
- unset R_HOME
- # Temporary fix for bug #419761
- if [[ ($(tc-getCC) == *gcc) && ($(gcc-version) == 4.7) ]]; then
- append-flags -fno-ipa-cp-clone
- fi
-}
-
-src_prepare() {
- default
-
- # fix packages.html for doc (gentoo bug #205103)
- sed -e "s:../../../library:../../../../$(get_libdir)/R/library:g" \
- -i src/library/tools/R/Rd.R || die
-
- # fix Rscript path when installed (gentoo bug #221061)
- sed -e "s:-DR_HOME='\"\$(rhome)\"':-DR_HOME='\"${EROOT}/usr/$(get_libdir)/${PN}\"':" \
- -i src/unix/Makefile.in || die "sed unix Makefile failed"
-
- # fix HTML links to manual (gentoo bug #273957)
- sed -e 's:\.\./manual/:manual/:g' \
- -i $(grep -Flr ../manual/ doc) || die "sed for HTML links failed"
-
- use lapack && \
- export LAPACK_LIBS="$($(tc-getPKG_CONFIG) --libs lapack)"
-
- if use X; then
- export R_BROWSER="$(type -p xdg-open)"
- export R_PDFVIEWER="$(type -p xdg-open)"
- fi
- use perl && \
- export PERL5LIB="${S}/share/perl:${PERL5LIB:+:}${PERL5LIB}"
-
- # don't search /usr/local
- sed -i -e '/FLAGS=.*\/local\//c\: # removed by ebuild' configure.ac || die
- # Fix for Darwin (OS X)
- if use prefix; then
- if [[ ${CHOST} == *-darwin* ]] ; then
- sed -e 's:-install_name libR.dylib:-install_name ${libdir}/R/lib/libR.dylib:' \
- -e 's:-install_name libRlapack.dylib:-install_name ${libdir}/R/lib/libRlapack.dylib:' \
- -e 's:-install_name libRblas.dylib:-install_name ${libdir}/R/lib/libRblas.dylib:' \
- -e "/SHLIB_EXT/s/\.so/.dylib/" \
- -i configure.ac || die
- # sort of "undo" 2.14.1-rmath-shared.patch
- sed -e "s:-Wl,-soname=libRmath.so:-install_name ${EROOT}/usr/$(get_libdir)/libRmath.dylib:" \
- -i src/nmath/standalone/Makefile.in || die
- else
- append-ldflags -Wl,-rpath="${EROOT}/usr/$(get_libdir)/R/lib"
- fi
- fi
- AT_M4DIR=m4
- eautoreconf
-}
-
-src_configure() {
- # --with-system-tre \
- # tre is patched from upstream
- econf \
- --enable-byte-compiled-packages \
- --enable-R-shlib \
- --disable-R-framework \
- --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" \
- rdocdir="${EPREFIX}/usr/share/doc/${PF}" \
- $(use_enable java) \
- $(use_enable nls) \
- $(use_enable openmp) \
- $(use_enable profile R-profiling) \
- $(use_enable profile memory-profiling) \
- $(use_enable static-libs static) \
- $(use_enable static-libs R-static-lib) \
- $(use_with cairo) \
- $(use_with icu ICU) \
- $(use_with jpeg jpeglib) \
- $(use_with lapack) \
- $(use_with !minimal recommended-packages) \
- $(use_with png libpng) \
- $(use_with readline) \
- $(use_with tiff libtiff) \
- $(use_with tk tcltk) \
- $(use_with tk tk-config "${EPREFIX}"/usr/$(get_libdir)/tkConfig.sh) \
- $(use_with tk tcl-config "${EPREFIX}"/usr/$(get_libdir)/tclConfig.sh) \
- $(use_with X x)
-}
-
-src_compile() {
- export VARTEXFONTS="${T}/fonts"
- emake AR="$(tc-getAR)"
- emake -C src/nmath/standalone \
- shared $(use static-libs && echo static) AR="$(tc-getAR)"
- use doc && emake info pdf
-}
-
-src_install() {
- default
- emake -j1 -C src/nmath/standalone DESTDIR="${D}" install
-
- if use doc; then
- emake DESTDIR="${D}" install-info install-pdf
- dosym ../manual /usr/share/doc/${PF}/html/manual
- fi
-
- cat > 99R <<-EOF
- LDPATH=${EROOT}/usr/$(get_libdir)/${PN}/lib
- R_HOME=${EROOT}/usr/$(get_libdir)/${PN}
- EOF
- doenvd 99R
- newbashcomp "${DISTDIR}"/${PN}-${BCPV}.bash_completion ${PN}
- # The buildsystem has a different understanding of install_names than
- # we require. Since it builds modules like shared objects (wrong), many
- # objects (all modules) get an incorrect install_name. Fixing the build
- # system here is not really trivial.
- if [[ ${CHOST} == *-darwin* ]] ; then
- local mod
- pushd "${ED}"/usr/$(get_libdir)/R > /dev/null
- for mod in $(find . -name "*.dylib") ; do
- mod=${mod#./}
- install_name_tool -id "${EPREFIX}/usr/$(get_libdir)/R/${mod}" \
- "${mod}"
- done
- popd > /dev/null
- fi
- docompress -x /usr/share/doc/${PF}/{BioC_mirrors.csv,CRAN_mirrors.csv,KEYWORDS.db,NEWS.rds}
-}
-
-pkg_postinst() {
- if use java; then
- einfo "Re-initializing java paths for ${P}"
- R CMD javareconf
- fi
-}
diff --git a/dev-lang/R/R-3.6.0.ebuild b/dev-lang/R/R-3.6.0.ebuild
deleted file mode 100644
index 66c38fbe2f16..000000000000
--- a/dev-lang/R/R-3.6.0.ebuild
+++ /dev/null
@@ -1,204 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit bash-completion-r1 autotools eutils flag-o-matic fortran-2 multilib toolchain-funcs
-
-# latest git commit for R bash completion: https://github.com/deepayan/rcompletion
-BCPV=78d6830e28ea90a046da79a9b4f70c39594bb6d6
-
-DESCRIPTION="Language and environment for statistical computing and graphics"
-HOMEPAGE="http://www.r-project.org/"
-SRC_URI="
- mirror://cran/src/base/R-3/${P}.tar.gz
- https://raw.githubusercontent.com/deepayan/rcompletion/${BCPV}/bash_completion/R -> ${PN}-${BCPV}.bash_completion"
-
-LICENSE="|| ( GPL-2 GPL-3 ) LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE="cairo doc icu java jpeg lapack minimal nls openmp perl png prefix profile readline static-libs tiff tk X"
-REQUIRED_USE="png? ( || ( cairo X ) ) jpeg? ( || ( cairo X ) ) tiff? ( || ( cairo X ) )"
-
-CDEPEND="
- app-arch/bzip2:0=
- app-arch/xz-utils:0=
- app-text/ghostscript-gpl
- >=dev-libs/libpcre-8.35:3=
- net-libs/libtirpc
- net-misc/curl
- virtual/blas:0
- || ( >=sys-apps/coreutils-8.15 app-misc/realpath )
- cairo? ( x11-libs/cairo:0=[X=] x11-libs/pango:0= )
- icu? ( dev-libs/icu:= )
- jpeg? ( virtual/jpeg:0 )
- lapack? ( virtual/lapack:0 )
- perl? ( dev-lang/perl )
- png? ( media-libs/libpng:0= )
- readline? ( sys-libs/readline:0= )
- tiff? ( media-libs/tiff:0= )
- tk? ( dev-lang/tk:0= )
- X? ( x11-libs/libXmu:0= x11-misc/xdg-utils )"
-
-DEPEND="${CDEPEND}
- virtual/pkgconfig
- doc? (
- virtual/latex-base
- dev-texlive/texlive-fontsrecommended
- )"
-
-RDEPEND="${CDEPEND}
- >=sys-libs/zlib-1.2.5.1-r2:0[minizip]
- java? ( >=virtual/jre-1.5 )"
-
-RESTRICT="minimal? ( test )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.4.1-parallel.patch
- "${FILESDIR}"/${PN}-3.4.1-rmath-shared.patch
-)
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
- if ! tc-check-openmp; then
- ewarn "OpenMP is not available in your current selected compiler"
- die "need openmp capable compiler"
- fi
- FORTRAN_NEED_OPENMP=1
- fi
- fortran-2_pkg_setup
- filter-ldflags -Wl,-Bdirect -Bdirect
- # avoid using existing R installation
- unset R_HOME
- # Temporary fix for bug #419761
- if [[ ($(tc-getCC) == *gcc) && ($(gcc-version) == 4.7) ]]; then
- append-flags -fno-ipa-cp-clone
- fi
-}
-
-src_prepare() {
- default
-
- # fix packages.html for doc (gentoo bug #205103)
- sed -e "s:../../../library:../../../../$(get_libdir)/R/library:g" \
- -i src/library/tools/R/Rd.R || die
-
- # fix Rscript path when installed (gentoo bug #221061)
- sed -e "s:-DR_HOME='\"\$(rhome)\"':-DR_HOME='\"${EROOT}/usr/$(get_libdir)/${PN}\"':" \
- -i src/unix/Makefile.in || die "sed unix Makefile failed"
-
- # fix HTML links to manual (gentoo bug #273957)
- sed -e 's:\.\./manual/:manual/:g' \
- -i $(grep -Flr ../manual/ doc) || die "sed for HTML links failed"
-
- use lapack && \
- export LAPACK_LIBS="$($(tc-getPKG_CONFIG) --libs lapack)"
-
- if use X; then
- export R_BROWSER="$(type -p xdg-open)"
- export R_PDFVIEWER="$(type -p xdg-open)"
- fi
- use perl && \
- export PERL5LIB="${S}/share/perl:${PERL5LIB:+:}${PERL5LIB}"
-
- # don't search /usr/local
- sed -i -e '/FLAGS=.*\/local\//c\: # removed by ebuild' configure.ac || die
- # Fix for Darwin (OS X)
- if use prefix; then
- if [[ ${CHOST} == *-darwin* ]] ; then
- sed -e 's:-install_name libR.dylib:-install_name ${libdir}/R/lib/libR.dylib:' \
- -e 's:-install_name libRlapack.dylib:-install_name ${libdir}/R/lib/libRlapack.dylib:' \
- -e 's:-install_name libRblas.dylib:-install_name ${libdir}/R/lib/libRblas.dylib:' \
- -e "/SHLIB_EXT/s/\.so/.dylib/" \
- -i configure.ac || die
- # sort of "undo" 2.14.1-rmath-shared.patch
- sed -e "s:-Wl,-soname=libRmath.so:-install_name ${EROOT}/usr/$(get_libdir)/libRmath.dylib:" \
- -i src/nmath/standalone/Makefile.in || die
- else
- append-ldflags -Wl,-rpath="${EROOT}/usr/$(get_libdir)/R/lib"
- fi
- fi
- AT_M4DIR=m4
- eautoreconf
-}
-
-src_configure() {
- # --with-system-tre \
- # tre is patched from upstream
- econf \
- --enable-byte-compiled-packages \
- --enable-R-shlib \
- --disable-R-framework \
- --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" \
- rdocdir="${EPREFIX}/usr/share/doc/${PF}" \
- $(use_enable java) \
- $(use_enable nls) \
- $(use_enable openmp) \
- $(use_enable profile R-profiling) \
- $(use_enable profile memory-profiling) \
- $(use_enable static-libs static) \
- $(use_enable static-libs R-static-lib) \
- $(use_with cairo) \
- $(use_with icu ICU) \
- $(use_with jpeg jpeglib) \
- $(use_with lapack) \
- $(use_with !minimal recommended-packages) \
- $(use_with png libpng) \
- $(use_with readline) \
- $(use_with tiff libtiff) \
- $(use_with tk tcltk) \
- $(use_with tk tk-config "${EPREFIX}"/usr/$(get_libdir)/tkConfig.sh) \
- $(use_with tk tcl-config "${EPREFIX}"/usr/$(get_libdir)/tclConfig.sh) \
- $(use_with X x)
-}
-
-src_compile() {
- export VARTEXFONTS="${T}/fonts"
- emake AR="$(tc-getAR)"
- emake -C src/nmath/standalone \
- shared $(use static-libs && echo static) AR="$(tc-getAR)"
- use doc && emake info pdf
-}
-
-src_install() {
- default
- emake -j1 -C src/nmath/standalone DESTDIR="${D}" install
-
- if use doc; then
- emake DESTDIR="${D}" install-info install-pdf
- dosym ../manual /usr/share/doc/${PF}/html/manual
- fi
-
- cat > 99R <<-EOF
- LDPATH=${EROOT}/usr/$(get_libdir)/${PN}/lib
- R_HOME=${EROOT}/usr/$(get_libdir)/${PN}
- EOF
- doenvd 99R
- newbashcomp "${DISTDIR}"/${PN}-${BCPV}.bash_completion ${PN}
- # The buildsystem has a different understanding of install_names than
- # we require. Since it builds modules like shared objects (wrong), many
- # objects (all modules) get an incorrect install_name. Fixing the build
- # system here is not really trivial.
- if [[ ${CHOST} == *-darwin* ]] ; then
- local mod
- pushd "${ED}"/usr/$(get_libdir)/R > /dev/null
- for mod in $(find . -name "*.dylib") ; do
- mod=${mod#./}
- install_name_tool -id "${EPREFIX}/usr/$(get_libdir)/R/${mod}" \
- "${mod}"
- done
- popd > /dev/null
- fi
- docompress -x /usr/share/doc/${PF}/{BioC_mirrors.csv,CRAN_mirrors.csv,KEYWORDS.db,NEWS.rds}
-}
-
-pkg_postinst() {
- if use java; then
- einfo "Re-initializing java paths for ${P}"
- R CMD javareconf
- fi
-}
diff --git a/dev-lang/R/R-3.6.2.ebuild b/dev-lang/R/R-3.6.3.ebuild
index d9a391d0f87a..f797705dcd70 100644
--- a/dev-lang/R/R-3.6.2.ebuild
+++ b/dev-lang/R/R-3.6.3.ebuild
@@ -20,7 +20,12 @@ KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-mac
IUSE="cairo doc icu java jpeg lapack minimal nls openmp perl png prefix profile readline static-libs tiff tk X"
REQUIRED_USE="png? ( || ( cairo X ) ) jpeg? ( || ( cairo X ) ) tiff? ( || ( cairo X ) )"
-CDEPEND="
+BDEPEND="virtual/pkgconfig
+ doc? (
+ virtual/latex-base
+ dev-texlive/texlive-fontsrecommended
+ )"
+DEPEND="
app-arch/bzip2:0=
app-arch/xz-utils:0=
app-text/ghostscript-gpl
@@ -40,14 +45,7 @@ CDEPEND="
tk? ( dev-lang/tk:0= )
X? ( x11-libs/libXmu:0= x11-misc/xdg-utils )"
-DEPEND="${CDEPEND}
- virtual/pkgconfig
- doc? (
- virtual/latex-base
- dev-texlive/texlive-fontsrecommended
- )"
-
-RDEPEND="${CDEPEND}
+RDEPEND="${DEPEND}
sys-libs/zlib:0[minizip]
java? ( >=virtual/jre-1.5 )"
@@ -66,10 +64,6 @@ pkg_pretend() {
pkg_setup() {
if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
- if ! tc-check-openmp; then
- ewarn "OpenMP is not available in your current selected compiler"
- die "need openmp capable compiler"
- fi
FORTRAN_NEED_OPENMP=1
fi
fortran-2_pkg_setup
diff --git a/dev-lang/bff/Manifest b/dev-lang/bff/Manifest
index 99bc1a61ea48..cfb86bec94a0 100644
--- a/dev-lang/bff/Manifest
+++ b/dev-lang/bff/Manifest
@@ -1,3 +1,3 @@
DIST bff-1.0.5.tar.gz 4833 BLAKE2B 9e3b44da9cd001552119e25764b171c86027755583f79a13b1d1035ecbab134df0aa31234c1479370599dd56a76a7f1c67eff61d2c1189430bab6a9a22f629d8 SHA512 78e481f6f371421ce6f046041fe6d48be2e11000ddda82f60244c0100665469c4aff4f151d297bb533140d723f68d5a3844e0c29a256b022ac93cafbd2abe9fd
-EBUILD bff-1.0.5.ebuild 802 BLAKE2B 13b0bd18a7b62a3ddd3a336c56aa7a9ca34e1c2b625a12ef508a7cbc7a75900f94eacf6e4867bbb6abab59488c83433fdf1fab34aa8371474197168a036cae52 SHA512 383df88a00b6027ce21bc27a643a5990156883e0dfa11f16bc7620c609a1b9a9909887793373f4925bd4b8750ea904f6285face1205ed7f50d0fc69d69847d10
+EBUILD bff-1.0.5.ebuild 800 BLAKE2B 70ff3947cdfedd3f3825a141220a02b493ef4f2c1b07e8a18493564cf158e03268be79afe8cc60311a53150f3e409d9cbfd55baf8bceb8aa7820cfe78203725e SHA512 820ecb9b268e147db623d478763539cedf0edb8d21afe3fed5f46737ada66599aef1a75551f10d82cd758be938392dd2682842522ecc441caeff8cddfcba5267
MISC metadata.xml 358 BLAKE2B 475e8fa2af079096f259abc30d2f886eb2b568182394c5fa3a1c081754be7d151a3d10564315d6006232d6f2e7e68103337377db045c13a4fca1e05723d5ff0d SHA512 dc6a26609f65e38ec703c857c686e555170ad4021a994c3a39af131a9f3a38d6207a70558aae46dc5927dda8a9f735795d879a1ac4088ffeac5d09a068627f9c
diff --git a/dev-lang/bff/bff-1.0.5.ebuild b/dev-lang/bff/bff-1.0.5.ebuild
index 152dde43bbbb..a54fc9123c82 100644
--- a/dev-lang/bff/bff-1.0.5.ebuild
+++ b/dev-lang/bff/bff-1.0.5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -10,7 +10,7 @@ HOMEPAGE="https://github.com/apankrat/bff"
SRC_URI="https://github.com/apankrat/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 arm ia64 m68k ppc ppc64 s390 sh x86"
+KEYWORDS="amd64 arm ~ia64 m68k ppc ppc64 s390 x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/c-intercal/Manifest b/dev-lang/c-intercal/Manifest
index 7f0281ebbb3f..ba50d927228e 100644
--- a/dev-lang/c-intercal/Manifest
+++ b/dev-lang/c-intercal/Manifest
@@ -1,9 +1,6 @@
AUX 50c-intercal-gentoo.el 191 BLAKE2B 3575c7ecac45d7023f727e559bbcfeb311c45c720a54c23661ec13a71272b748dbe499d500f0e8bd4aff3d871c96eafbf2f80e4d7bb2c402ffe3b628d2243398 SHA512 957e43fb8ada732ae9224313456d750df25484b8bc8d0d3b1ffcd547542de99ffcffdc8dabbebda0fbaa0a760e799b403a6e1a5160e5359e15072a72e9c19ab2
-AUX c-intercal-30.0-version.patch 279 BLAKE2B 12f448dc7dbc5ede3f6537564f0477b2166e3e456bb750cf75813f30fecf74bd446f04b28def7556d16630f02d5e15e2289f0c39deb07915d39f77ab0856ffe8 SHA512 ba38939f207587ae7b99a2dab63e395c27a01ee6e8495c8b10eee3c9d48ee9848cc2e240cb123abd93e69d1f516cf779f41f5b888ee194641df50001ac446a60
-AUX c-intercal-30.0-yywrap.patch 282 BLAKE2B 0417757240a476c845398db4e2644c5333d851e1107ceb09f3b8f4a7c3d4ade553331ea36663906ecf11dc739d47b66ae1b70f5d32bae34cd42584d68db8552c SHA512 b181da7c93268ece0db9244ed7bc0d085d12dfeb92e6f4b6af9b8fe17fed8e5ef432006bb097fc568a401e74540c97a3afa738510f76f78052332c573ae1999c
+AUX c-intercal-31.0-no-common.patch 311 BLAKE2B 25e260a1e4c7079fb8baac690580505c401870fe60b6c0e398f79a8d1027ea6395b30b8c16244ad147489787606d6b6a27f244e4b8f9e9f7710405b124d3d7a8 SHA512 84db59e1855672260079c39ac066d98d031536019180483002b224c48912472c175bcde20053d37510e6aa07fa2de62beb4161d5a262b5d775742d0d10e7b51e
AUX c-intercal-31.0-version.patch 330 BLAKE2B f7a18b5098c6969ea29c21513221e3dd6f6cce847ceca102f8d3a0713d18bbdfd11b1349b0463f7338ef69ccb2b08aa8162e91860b26338c577647728e1261db SHA512 cfb0c79e76b19938fda232cf508e32812aa4edad2eb6545eef84f6bdfd8304666911ca4042450c4642699a41a140f4e199acf0f8d9ab0f24ab8daa81a89d3393
-DIST intercal-0.30.tar.gz 930759 BLAKE2B c8c9b77c31901da8f7dbd5a76c2d6fa900962c69f4ca56835f750f40370d5161f6311cbe5473cdb7342772c1cc5317e51d91e174cb16985565adacd001fc1f29 SHA512 e82f52082a73e0eb6116026f78fdcc38369f54af828b9ed0d3ca6ed6c40550bfa81db4ca7c4d09015b5db5104a1c06229cfed52e1d202c3a7443f933fbcc0498
DIST intercal-0.31.tar.gz 940950 BLAKE2B 9a23229b1d7f0524b164a4b66bcab4fdf67a04ba1e411365a46a90d646867fe92d6e328935b406673809535a895becde934fb6cf2e8380943eb8f19473fcedab SHA512 ca5c10be880ce2470d7dd3404fa5a314bd7bcab45cf4908f7108eb1baa50339b876e135251d991527881b564027c63dc38d74a154cbd00d606261013d2b01262
-EBUILD c-intercal-30.0.ebuild 1679 BLAKE2B 958eb5d642f9ec4d3dd86f7d92dd5b05d57c0704d2dcb790b9092ca309c27daab6d03e55b79f8456bcac1ac9d4efd007d1c66b906db7d1bdb89d6fbec5479139 SHA512 d2e53e0de70ecca549e65a4dd0862228fb904fc5fcb404dfc76a28f65b2e2f2d6bdc486384f871d178e9036f2af75102b687de03b4eef93f7744ace7a9f6d4fa
-EBUILD c-intercal-31.0.ebuild 1656 BLAKE2B f6a26583c91c48bce21462e54f09528d24eaa3a2ecb85d838df01a7b6cf51a92b323614c3df3d8ad3fab2c50159e388afdee2dc74cddd1b31b6307634c5cc8ac SHA512 feb90dfd415884128597c484b5a3bfb44d511c709452e24e3969908eebc94af0fa7b960f27028e1faae2f8e5fdf336b77097f5015a0d132c596cceadbf80f726
+EBUILD c-intercal-31.0.ebuild 1699 BLAKE2B 829df21397fe5227645f1a3f0bfcd94b18dd7f534e495477d9b6d85711866276f8b22b3ad918875e6bfead1c0a513c1bb5034e3670542d76f45969a306355254 SHA512 16c6b70a7cee43f7f631d7edc24a13df90afa0105b05bdd9bd18cfa97e25929ff1696ab97e1752aa634dcedaae57d383483afe306a8e137cc2c79bab2affdf2f
MISC metadata.xml 592 BLAKE2B 8d07802ff5f3cbedb9643b61c469214284c5d21dbaf7aa2afa1c706cf0c9ebe0af2903f3bada0145fd0fe648fe46678919a730f88a2c38c84d149416a8095b11 SHA512 d2b9dad8dd7a03744904ccee87ba17ed726b0005b6bd685d7b926b4657e57c9456d8a7f57deedf260efd543b42c157c13876cf6942cd1f47fee88f0782dac13d
diff --git a/dev-lang/c-intercal/c-intercal-30.0.ebuild b/dev-lang/c-intercal/c-intercal-30.0.ebuild
deleted file mode 100644
index dc79132dad03..000000000000
--- a/dev-lang/c-intercal/c-intercal-30.0.ebuild
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools elisp-common
-
-# C-INTERCAL uses minor-major ordering of version components and
-# negative version numbers. We map version components -1, -2, ...
-# to 65535, 65534, ..., and subtract one from the next component.
-# For example, upstream version 0.28 is mapped to Gentoo version 28.0
-# and 0.-2.0.29 is mapped to 28.65535.65534.0.
-get_intercal_version() {
- local i=.${1:-${PV}} j k c=0
- while [[ ${i} ]]; do
- (( k = ${i##*.} + c ))
- (( (c = (k >= 32768)) && (k -= 65536) ))
- i=${i%.*}
- j=${j}.${k}
- done
- echo ${j#.}
-}
-
-MY_PN="${PN#c-}"
-MY_PV="$(get_intercal_version)"
-DESCRIPTION="C-INTERCAL - INTERCAL to binary (via C) compiler"
-HOMEPAGE="http://www.catb.org/~esr/intercal/"
-SRC_URI="http://www.catb.org/~esr/intercal/${MY_PN}-${MY_PV}.tar.gz"
-
-LICENSE="GPL-2+ FDL-1.2+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="emacs examples"
-
-RDEPEND="emacs? ( >=app-editors/emacs-23.1:* )"
-DEPEND="${RDEPEND}
- sys-devel/flex
- virtual/yacc"
-
-S="${WORKDIR}/${MY_PN}-${MY_PV}"
-SITEFILE="50${PN}-gentoo.el"
-
-src_prepare() {
- eapply "${FILESDIR}"/${P}-version.patch
- eapply "${FILESDIR}"/${P}-yywrap.patch
- eapply_user
- eautoreconf
-}
-
-src_compile() {
- emake
-
- if use emacs; then
- elisp-compile etc/intercal.el
- fi
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- dodoc BUGS NEWS HISTORY README doc/THEORY.txt
-
- if use emacs; then
- elisp-install ${PN} etc/intercal.{el,elc}
- elisp-site-file-install "${FILESDIR}/${SITEFILE}"
- fi
-
- use examples && dodoc -r pit
-}
-
-pkg_postinst() {
- use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
- use emacs && elisp-site-regen
-}
diff --git a/dev-lang/c-intercal/c-intercal-31.0.ebuild b/dev-lang/c-intercal/c-intercal-31.0.ebuild
index fa55b57e11b6..5f04f53c129f 100644
--- a/dev-lang/c-intercal/c-intercal-31.0.ebuild
+++ b/dev-lang/c-intercal/c-intercal-31.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -42,6 +42,7 @@ SITEFILE="50${PN}-gentoo.el"
src_prepare() {
eapply "${FILESDIR}"/${P}-version.patch
+ eapply "${FILESDIR}"/${P}-no-common.patch
eapply_user
eautoreconf
}
diff --git a/dev-lang/c-intercal/files/c-intercal-30.0-version.patch b/dev-lang/c-intercal/files/c-intercal-30.0-version.patch
deleted file mode 100644
index 3fe8d026e23a..000000000000
--- a/dev-lang/c-intercal/files/c-intercal-30.0-version.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- intercal-0.30-orig/configure.ac
-+++ intercal-0.30/configure.ac
-@@ -14,7 +14,7 @@
- subdir-objects no-texinfo.tex -Wall -Wno-override])
-
- dnl Information about this version of INTERCAL.
--PACKAGE_VERSION=0.29
-+PACKAGE_VERSION=0.30
-
- dnl Checks for programs.
- AC_PROG_YACC
diff --git a/dev-lang/c-intercal/files/c-intercal-30.0-yywrap.patch b/dev-lang/c-intercal/files/c-intercal-30.0-yywrap.patch
deleted file mode 100644
index 9d46a91beceb..000000000000
--- a/dev-lang/c-intercal/files/c-intercal-30.0-yywrap.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://bugs.gentoo.org/604848
-
---- intercal-0.30-orig/src/lexer.l
-+++ intercal-0.30/src/lexer.l
-@@ -38,12 +38,10 @@
- /*#undef wchar_t*/
- /*#define wchar_t unsigned char*/
-
--#ifndef yywrap
- static int yywrap(void)
- {
- return 1;
- }
--#endif /* yywrap */
-
- int iyylineno = 1;
-
diff --git a/dev-lang/c-intercal/files/c-intercal-31.0-no-common.patch b/dev-lang/c-intercal/files/c-intercal-31.0-no-common.patch
new file mode 100644
index 000000000000..ff409aeb2518
--- /dev/null
+++ b/dev-lang/c-intercal/files/c-intercal-31.0-no-common.patch
@@ -0,0 +1,13 @@
+https://bugs.gentoo.org/711902
+
+--- intercal-0.31-orig/src/perpet.c
++++ intercal-0.31/src/perpet.c
+@@ -85,7 +85,7 @@
+ /* function created by yacc */
+ extern int yyparse(void);
+
+-int yydebug;
++extern int yydebug;
+
+ /* compilation options */
+ bool compile_only; /* just compile into C, don't run the linker */
diff --git a/dev-lang/cfortran/Manifest b/dev-lang/cfortran/Manifest
index 934b1e120be7..c8e3417e447b 100644
--- a/dev-lang/cfortran/Manifest
+++ b/dev-lang/cfortran/Manifest
@@ -1,4 +1,4 @@
DIST cfortran_4.4-14.diff.gz 23084 BLAKE2B 8e760b3697869c12e94925c4781318fbe7640f0563a2464bf5d9f51a4afcb4bf9c281bab189542f2342d6dbc6f5524b4a48d9f844459d190e9182a96ebefbf9b SHA512 1e0b267efc17c2ba30ca1108d59ef87d1a401e6b88bea2c7045458f8cfad6ec9a05f6bf4a08c1d6cb314c790a4969a1f0fdf0c7b6abc28bae544928aad5b0218
DIST cfortran_4.4.orig.tar.gz 120119 BLAKE2B df4e0650e2718ed0c2009fb1b85330266308b0b584fcdc85e08cad0913bf063ab38824724b43a005a63a6e6bd5152b35115a68659487a992b96d0d38792e6d0a SHA512 969d0db566ecd7ed7945cac7f8ceea1cbd94ab427734ba83882acf97022c83b1417e32515d847fee89144137f58f7041cf5164fc397f3d7526f3aa958f8b038c
-EBUILD cfortran-4.4-r3.ebuild 1138 BLAKE2B 32fac3ae8027d1ae509972d6c3afe8fe1929fa0adb72399c86773cd0271be89e0be45657b78e9bb8a3af53daa1dca15e59f45b95a98eedcd37aa6bc4880924a7 SHA512 179d2b077cb824899fce8f3254fc6517b9b5df8f05a9f0ca25799f88c88b2db98f7eae2c83b01bd439783edcf34a489dd26e5dfdc234f639ca710034bcc76063
+EBUILD cfortran-4.4-r3.ebuild 1139 BLAKE2B df98cd0527c4d2e8c8c1e588b48a12ec61128ad7c8cf04abff1e82f9eb22b8248d54203f99ac4235c5d33b50ed06f046875442e0cc731e6250e7b81180ac1603 SHA512 f6701f05634dded0839f9b2e17fc24cc79411113ea65c2a466e3e05463ec03fc334b0fdf4993428c29d08681b3c1aead517f6e7cd546b788b446de229a6b6db0
MISC metadata.xml 588 BLAKE2B 9e2c3b0818a3bbc250153d807eb81d08f24d5568fc34eb83aef2a9344c59ca998fe488d27e8d23bc1381e21580015df60519698369394c17361111e470a9313b SHA512 4cc9d7ec3c44afc7e8ca2b43c04ea67c88fa1be09f9c594d83d1d011823566efd4e6b889fc4e95b019885be4223de32d94e0126acf70fe5e7cabf753a9923d40
diff --git a/dev-lang/cfortran/cfortran-4.4-r3.ebuild b/dev-lang/cfortran/cfortran-4.4-r3.ebuild
index d73fd936484f..15332f28a3be 100644
--- a/dev-lang/cfortran/cfortran-4.4-r3.ebuild
+++ b/dev-lang/cfortran/cfortran-4.4-r3.ebuild
@@ -15,7 +15,7 @@ SRC_URI="
SLOT="0"
LICENSE="LGPL-2"
-KEYWORDS="~alpha amd64 ~arm64 hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~x86-macos"
+KEYWORDS="~alpha amd64 ~arm64 hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~x86-macos"
IUSE="examples"
src_unpack() {
diff --git a/dev-lang/coffee-script/Manifest b/dev-lang/coffee-script/Manifest
index 958602dbe0db..517dbcd0daef 100644
--- a/dev-lang/coffee-script/Manifest
+++ b/dev-lang/coffee-script/Manifest
@@ -4,4 +4,4 @@ DIST coffee-script-2.3.2.tar.gz 1754957 BLAKE2B 7a276a16f4db9c2f53258161af0cb1ce
EBUILD coffee-script-1.12.5.ebuild 1122 BLAKE2B 2c961ac6efeffd94b2c2e9ca317bde35e0babdae4e89fe5f0e0743bd1341e96a607304ba380fc1e2d3ccbfd0fde7b1472cf5c08f45062b0aba87808fcd446425 SHA512 df0ec7f9a9423d2d1bf4bdc2ef76e96fffc254ecc46fb21757926fcbcd78abf842c64e5230dfaabc598555af07fb94387b5abc679643c322449ec9fe5f42dc62
EBUILD coffee-script-1.9.3-r1.ebuild 1278 BLAKE2B d4de6504891c550cec367ebfc521062237f351c13842449ed45adec659da177b6b7fdc00f163406bf72790297327f170940e67272b8cefb242cc882dd42eed69 SHA512 324df6f9091f776a4962c2a3f95cdd43e680927b5fe6795eea06ba54fde9f0675fbf4e4a7e00922438efd0e8cfb539c5d8943b30d9b4986aa424045efae6357c
EBUILD coffee-script-2.3.2.ebuild 1438 BLAKE2B 3363928ccd5d058aef97c2a04a8b64a13919acd34579ac0a20d49b5f233b1d8f00ff8ec8abf18e2b95e062bf25c1d7b478f5a068131db797b39bbc2ca1548d1f SHA512 f248461f01b431c6b5bdfb8d5cd9b329fc6fc604ff6af0814c960bed2fd845e6e6c8c45b6ebc8efedb9cf95f10303149ce2dbbced36ec1f87b1280daf2c20a2a
-MISC metadata.xml 343 BLAKE2B 6184b541918376bbe76d529e2afd8f24ae63d7715489c708cebeff2d115fb0e336475e6d5c4e211e443cd6c185d46a79b579f3d14d41b6f66e7d397a85ac922e SHA512 36eec061eb724a7229933450185185c0ac781d1adc1da4a54b067ef34ab7d861cf336c3c7e4b2c7d12a6e1c9400d4bbb960c67a66afd854209a5268e8e3d19f7
+MISC metadata.xml 259 BLAKE2B 60c78ac5d609ff23e35bbae6515359d891cb5f59ecb8770a211686e6a6c4d29a8ff63f1813a40e8544b69d9920a5115e66aceab97770b5ccea1e57f1fc22eee6 SHA512 56a43677125a1e9c2b19a06b7d44aa2582826d3165566af42655c6688383c86656fb74313177abf30df562a8b85c8fde9ecc507db17749f1d271da7f551f8aef
diff --git a/dev-lang/coffee-script/metadata.xml b/dev-lang/coffee-script/metadata.xml
index ac79dcd15f6a..ccff50578dc8 100644
--- a/dev-lang/coffee-script/metadata.xml
+++ b/dev-lang/coffee-script/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>mjo@gentoo.org</email>
- <name>Michael Orlitzky</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">jashkenas/coffeescript</remote-id>
</upstream>
diff --git a/dev-lang/crystal/Manifest b/dev-lang/crystal/Manifest
index e8d98fc83905..8e1a55b297c1 100644
--- a/dev-lang/crystal/Manifest
+++ b/dev-lang/crystal/Manifest
@@ -6,16 +6,17 @@ AUX crystal-0.27.0-gentoo-tests-long-unix.patch 3317 BLAKE2B df1040abdb587ac3fff
AUX crystal-0.27.0-max-age-0-test.patch 632 BLAKE2B d41416f4045b23d0a9c4e11e525d8537277090ee316d01cab9cce0373b07583b9e80a495c8f4db997fc4f1b15b17c080d590f8cb8b6f454dc1c0d1d48015a127 SHA512 7608cb37850e52af406fab0378f0748af7db9239f878720041d56751ce36e0f5874a79b1a971fdc6f261292d23868e3e35c9ddb0d3c10c2bb987767954a77988
AUX crystal-0.29.0-no-usr-lib.patch 431 BLAKE2B 7fbc7e84f2b9f398204270ce7deec29c78853777abea14c7ff6714123aff4f3fa511761dcbb9f41e36c16d3e280590df0a6b21e9ee0fd86b615292576f735cf1 SHA512 3462556b4176d7781e40aca8dd1831fc39597a3621c10eedb18ddce1a1769a3f8a9fce681644f2d819b4cafce4980af2bbcee77b65a40b8e05da8821cbc2be70
AUX crystal-0.31.0-verbose.patch 701 BLAKE2B 34b74f073edf2979074cfa9042c73945b4856c33ae5037a30e8e096c17939d4d041d569ef01236db5162ffd5574b6b5ba591861d7777c3cd70882f224108ce5c SHA512 c78d636ed7646fdab9ca5335ecd43ddaafeb8b7f0749a323e7d495df1e1d08093ab3cac582a7f2ddff1437da326c873d74ca7b474388e6cf3421e1318e2e5484
-DIST crystal-0.31.1-1-linux-i686.tar.gz 28667084 BLAKE2B 50964072d9335f96effce812cd261760dd308ee50628a47e2694f0a34b6dce210d5a00b978b0537bcd24cc2fc6dd82637c05dc0596ba0322e1297b97ea14bc78 SHA512 2353d10bce6983459afae526b516290eba44e2d6b5943911b8da657a36a0bbd422bd4efe61f2205e178355a2898e90ac9927c64ffba1e8edae4615a01ea9ad40
-DIST crystal-0.31.1-1-linux-x86_64.tar.gz 26998394 BLAKE2B 37ecfe9f130b1e9e52686c52474fcef599a348a7d9f1885c3fe41302a1d6d760ada5a153978397c7ec43b2bb4442bb3fc1c2f8d5eed9b4141858455673170544 SHA512 433ac13f9f541dd5b58c1db5e063e23058a87ed325cabc0a4165c42edf18a5f9f126ea4e1d9627357d47c5e3f392131e1f7aab22c34dce3b02e3fdca49658b5b
-DIST crystal-0.31.1.tar.gz 2191156 BLAKE2B 072e14fed34cc411cd6d9a57b8c5184e5974257869ef41f9bd12401ab473186f699bfbac438af97dd8e4e8cf749ebdbf35050882e9dc14be75392d50763902a8 SHA512 d44ce5653aa2877d85685bd897888cd7675eb02897363f71627ac19589447889af8e73a1d8acb2108e0356939cd515022fd2b92d019014714428d92666ad0f37
+AUX crystal-0.34.0-no-usr-lib.patch 506 BLAKE2B 373fbd5c963734a17c53385d36dc37fbe24a0886ac25b3badb56b8da802566499fb838016a3683f2d3c323118b7d0d942fffcdb71b938250b61c822bfc81f6e1 SHA512 2fd7c280a98390efbf7c9993e970dd8d541889ddedd27694d5fe3884860c717bb8304d66d1730ea7bb9ebeaa3b908656ce2c2a1ad4e5d454d0b11181456bcd91
DIST crystal-0.32.1-1-linux-i686.tar.gz 30062609 BLAKE2B 658cd453465a1c4de44c0b010593aa19a68b93569482202baba948dc58f018d38cbefda083592145a141e7dfc574eddb7ccf0a41613a7a7d5ea8d12ed8f72d08 SHA512 34127ad25a1e290b8f17fa7de9465083955ae16a049bab8a927f90df4f2c87c7a59e2c8123f7ec0d0de691130e51749b104ccf11ea68005c267ab98c322156f3
DIST crystal-0.32.1-1-linux-x86_64.tar.gz 27348617 BLAKE2B 96410f00843d21cea4ed6f8d4896438334f577b6e593e72a0be23d3e1a460199bffc456ddb675a257c5a973353c1a8d28f69263b8517e0009e54d2f2f19535fe SHA512 85524c38cd91fbe56ab7d14c3a05a1a3f3e3fc0f618e5fa5af010716f76b1dc0cc415cbc67e16c99fd2e8860412d7e2566f510c751de0ad4373361edbcee0475
DIST crystal-0.32.1.tar.gz 2225383 BLAKE2B 81cdda508945ebea481c3ad784ecdccffe25e4726d2f63feb1a4995b48041fbf2cbe226bebcbf9f9627d2161d167ccb502626a9d51f787dc8e48fd607f310ff8 SHA512 d83575f4c7953054824f13516cdc04bd7576bf7165754d96a9f4970e2a6cbf779b4db6806d3eeac465ed0c223c203ef95fc3bda70d1ef9f7c96ec96cd076283d
DIST crystal-0.33.0-1-linux-i686.tar.gz 29627750 BLAKE2B 284c300eb57e9192c367b1692c95a8da584820ecd068515cf59174106bdcd4341033e68ecdcc64a263dcf1c69ca58f9403e9b4b8e166c86b1b6747e4e0d2ea92 SHA512 8ff065555e5782a84575ddc8210f92bc6d5702692e2674be4fcef470dfeff3ec325954eb665b222cb3f332e335cae4ae49cc06ffe4ce939519d0947225b452b4
DIST crystal-0.33.0-1-linux-x86_64.tar.gz 27553242 BLAKE2B c24ab3e1577c33de9e9de2fa03f0fe831821b70b72ee9fb421eab9aed8b0ba357547160be9fff20c30b2d52e6c6d75bbde19dc322638c5c3f33ba2aa14dbf4c4 SHA512 7c815335ff882effd9dfc22cbeec6cee6e014805bf048bedf4476b1ecdf3a87bd8d53543c78be3493f937659a88041cd5370814eba043c81f23e7ef707ccd834
DIST crystal-0.33.0.tar.gz 2242162 BLAKE2B 0d9dbdd230bb190209772fafaeb1d59008cbe90b0bd33f851886bf90e7ac497c0bcef7609d6295dd4a4bad213fb687dea3d16c42ebe3bc92b3e06df156c53570 SHA512 41f518ec5c8f2f2cffb84105e0cc5096d4ba7ef64887ad0089aa37109fa5fa8e28747fe4f4ca8a74012e7b77d8c7a9d72cd9da787a330a4a62b5e55b40f0e57b
-EBUILD crystal-0.31.1.ebuild 3011 BLAKE2B a97675d76141c4e2fa36b0643cd3174f6cffdb78d5608ffde9eed50627f7d8bd047d828e02bc34d3492736a3b0ae045e08603a50bbaa568709364a8cb69e9e90 SHA512 2989793274aeb9d37a1468c4a419b0fefc463c66fc7dcc97eea6ea59e2fcb7e545897ea4dfb21903210cb0e6da24903f3669a636ce57ea76cb4ed337cf49db8d
+DIST crystal-0.34.0-1-linux-i686.tar.gz 30161592 BLAKE2B b53dd3c3fb36ae7654396bcca305dbdd32c90f72e3e549fd054517230df3fdadcc07056d4a53c600e1fbae14ce79b66268191a3a01f27e1d625451865a414774 SHA512 47874a6a349dcf42b92532c4d454f8c65f2f94d78240f2a5baa865063ed373410be0ff5e457d4d1c3483ce8965e894fa918973fa03ee934f226a56a8a544f8d0
+DIST crystal-0.34.0-1-linux-x86_64.tar.gz 28036344 BLAKE2B dbd9305cadfda3a9d072672c91a0a7e9b230507d69c84735af900c40e602dbd6777b48ddce679935b87cff669d0534a8d65b09dc0fa6d8167f66117ba8468f8a SHA512 291713acb6291c106e60c2b7bcdab33a6df3d6f464c81392ea340b25d01d301c743c0d81f29eb9b32a2099203775a8fc2df9617f90c28699e4864bee16f4252e
+DIST crystal-0.34.0.tar.gz 2270363 BLAKE2B bef2f09ef45ed9c7c9ffc5bcc9e8d6516c799b60ae3d87d5512fcd36634231091c1c534a708059362c3e5bc9db36a377dffd2dbca4290964362ea8740345e4f2 SHA512 6167ca5974d02167fe695cc51fe8ef95e56076a2af88eae39a12b07930b96ca0b30d53fd7c6e2296139d89a1c7eacfce5326f25a8fa3487cdb446ab592723f66
EBUILD crystal-0.32.1.ebuild 3011 BLAKE2B d2d0ad755ccda9eab4d3daedb6771f67732876d9cfb246939b0c1dd6a45c6a8c9af7368163615368210d9b5a33385cb3788b79bd989b1ca821d42ebf349306a1 SHA512 0adb45e03fb600bd4d231ffbd3efe4d9c932d4c2a0044dea5850155eea352c1bd62d57230be2590705d8cfa5221070da073a1139099276085151a372ef51facd
EBUILD crystal-0.33.0.ebuild 3011 BLAKE2B 04a8bfc50370a7b4295712f69736d9ca8dd6206fe49ac91de069e96f7329b16f9bed9771db16ec147d68cfa57bc1ac021194c1771ec14a8661bc1530913fd80c SHA512 e41635a1a14cb4f0d61d37101fc7521404e79d6d163e1963d2eeb3e7f93c9a947ae064ff55a0e094530b14784ea12f27b587a2f717e2af9b34ab8d4253bc7fe5
+EBUILD crystal-0.34.0.ebuild 3100 BLAKE2B ab893593f56f5b4675c0cff0a0c7ab51f94575f72441ce87f4890c10c419bf778489425c5b27c15e3720f670130b06fc0dc55366b04ed9844337e57f2c73bda0 SHA512 69cee692ff35fbf15f6e5f8192777fd8a90a76137e7476b08c06efe76cad5bd9f66a0d3fc827c7ba06d137e1046badb1225d5e28f0f7975176a11d5d5f25f416
MISC metadata.xml 995 BLAKE2B 00f6cfc63cec16ab8c6f983316f5872e63573f2d680da810b9b97d88c2ff6e21c15327a1508d62234e324f7145ca248a9ce1aa7286b0e34d9ee3dcba1481ff25 SHA512 da6a6f834b0d961477b95045756c539df7a968fe240f9f0c1c8183eef3052dddefb8d20547d668b07fece74c96b94bbf18baaac59e7328ff322355227d1adf02
diff --git a/dev-lang/crystal/crystal-0.31.1.ebuild b/dev-lang/crystal/crystal-0.34.0.ebuild
index b67566686cd4..fa18cc6204d5 100644
--- a/dev-lang/crystal/crystal-0.31.1.ebuild
+++ b/dev-lang/crystal/crystal-0.34.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -22,7 +22,9 @@ IUSE="doc debug examples blocking-stdio-hack +xml +yaml"
RESTRICT=test # not stable for day-to-day runs
-LLVM_MAX_SLOT=8
+# On llvm-10 target crashes using USE=-debug codegen.
+# Might be just non-deterministic.
+LLVM_MAX_SLOT=9
# dev-libs/boehm-gc[static-libs] dependency problem, check the issue: https://github.com/manastech/crystal/issues/1382
DEPEND="
@@ -47,7 +49,7 @@ PATCHES=(
#"${FILESDIR}"/${PN}-0.27.0-max-age-0-test.patch
"${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix.patch
"${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix-2.patch
- "${FILESDIR}"/${PN}-0.29.0-no-usr-lib.patch
+ "${FILESDIR}"/${PN}-0.34.0-no-usr-lib.patch
)
src_prepare() {
diff --git a/dev-lang/crystal/files/crystal-0.34.0-no-usr-lib.patch b/dev-lang/crystal/files/crystal-0.34.0-no-usr-lib.patch
new file mode 100644
index 000000000000..4dc0b42d90a0
--- /dev/null
+++ b/dev-lang/crystal/files/crystal-0.34.0-no-usr-lib.patch
@@ -0,0 +1,14 @@
+On amd64 linux /usr/lib does not match default 64-bit ABI.
+
+Let's rely on default compiler and linker paths instead.
+--- a/src/compiler/crystal/codegen/link.cr
++++ b/src/compiler/crystal/codegen/link.cr
+@@ -106,7 +106,7 @@ module Crystal
+
+ private def lib_flags_posix
+ library_path = ENV["LIBRARY_PATH"]?.try(&.split(':', remove_empty: true)) ||
+- ["/usr/lib", "/usr/local/lib"]
++ [] of String
+ has_pkg_config = nil
+
+ String.build do |flags|
diff --git a/dev-lang/elixir/Manifest b/dev-lang/elixir/Manifest
index c8e2c135118e..b0a99a370eca 100644
--- a/dev-lang/elixir/Manifest
+++ b/dev-lang/elixir/Manifest
@@ -1,10 +1,8 @@
AUX elixir-1.9.1-disable-network-tests.patch 569 BLAKE2B fda6b9b99f80e81883723280de31933c1740167d41ef4783dc663bad277cf58b8782326abc4a72e0d989c513afb9cdf4494e7d79754b18d62baf75255a74aa45 SHA512 465831a389891680412d51d9209497d5b750ff0a5ff72d45807a7dba6ec7757156ee96048bbc81f46c9c24a5b13cdd5161539fdeb4ffcea655c407e29f6675fc
-DIST elixir-1.10.0.tar.gz 2322668 BLAKE2B b5f393e406904fe38d1f9bd47811a9fc804109cb4c6ca6b4f512dc8a7af251495536b9238fc85126266150bf9ae869c815d68f6a0dfcafe9ff893b05780b4c54 SHA512 d71ef164f7dc3fe4a94a0b5f5f8709e782caeebba322c0a1aaf67ac129416ca0b01dc9fc0a14c71e37e386d176076f0fb35b4d51b17987d03794a92cbe831cc4
DIST elixir-1.10.1.tar.gz 2322975 BLAKE2B 875948d233a726bdf88db4d64d21d227dd5e90f762f10dcc82103e088a2ed633898489a2f0a870a6c4e09ce22e509d117f05b3b3f8b8be6c742f628d612e3baf SHA512 823a685d62b6181be9f3314c1a86b69606dd3d3528a2053060f83802a561d8e136fb32099d51cb90542ea155a0a5768d7e6fc7aa1ae18d2c9f5fd5a5a2ac9cdc
DIST elixir-1.10.2.tar.gz 2323450 BLAKE2B 2d0897af98864966dabc8760d3551caeae39baddc892239c398f3aecf6b72db0ee9d3c8e03fbc8b7a7da0b0dcb08f200fa145d704b8306190eb47a9ccb862bb4 SHA512 a1d1c7847fc8135865d063c6e014bee970066ba07f979f308bec456a732f5366a9343631239965d1caeeaea5cdb644f35185fdfb23f18fcc8c6735a7e3256c0f
DIST elixir-1.9.4.tar.gz 2250611 BLAKE2B adc363627dc3997684482ac022927aaa4d315afdb8fbc8981e1b88371eb13be80e01084b67288fc88fc51f0015085743d11289e932093d5608e5ac4dfa0823a8 SHA512 c97b93c7438efd7215408525a3b9f2935a1591cce3da3eb31717282d06aff94e8e3d22c405bac40c671bcfe8e73f3dd1ada315f53dee73ceef0bfe2a7c27e86d
-EBUILD elixir-1.10.0.ebuild 762 BLAKE2B 0f96cc7db63ce29cafa7fa04ecebcc90fa4a7b6a7f5480a76ea4c6b97734606724e18e379cdc94ff44eedfc725d5794283619868fa9fdf0bd5f2c8839ff68660 SHA512 dee020c702d4118079930f45a7d7e942151aae491818450aa5ac2bf1f949dc44186ed5d74579d871c1b84661991bfae63a6f8b8878d465d412f564dfbdea3735
-EBUILD elixir-1.10.1.ebuild 762 BLAKE2B 0f96cc7db63ce29cafa7fa04ecebcc90fa4a7b6a7f5480a76ea4c6b97734606724e18e379cdc94ff44eedfc725d5794283619868fa9fdf0bd5f2c8839ff68660 SHA512 dee020c702d4118079930f45a7d7e942151aae491818450aa5ac2bf1f949dc44186ed5d74579d871c1b84661991bfae63a6f8b8878d465d412f564dfbdea3735
-EBUILD elixir-1.10.2.ebuild 762 BLAKE2B 0f96cc7db63ce29cafa7fa04ecebcc90fa4a7b6a7f5480a76ea4c6b97734606724e18e379cdc94ff44eedfc725d5794283619868fa9fdf0bd5f2c8839ff68660 SHA512 dee020c702d4118079930f45a7d7e942151aae491818450aa5ac2bf1f949dc44186ed5d74579d871c1b84661991bfae63a6f8b8878d465d412f564dfbdea3735
+EBUILD elixir-1.10.1.ebuild 759 BLAKE2B 93e0cad090218f2e3af71225afbc654d68afee5b9612e3f03561e4c3d149079dbdcd0fdf8631182511a13e2aaa414f98b18b0619a9be96f02c507a339e5a68ce SHA512 1272bfbb83fa3c47cf5fadfff4e2d3806e4db4ba0bbc666c0ae67dad87c2cff316fa4f83b1b0e2e2847021a12c9db0986466444e40bfa84c3a2485dacfd7a9c7
+EBUILD elixir-1.10.2.ebuild 829 BLAKE2B 9805b802c6273181c809a499a12cd49a0994c83aa7cdc1b76ad71359df347512c457e0e479a58a760df9580737374eca1d8e77a14b8fde73fcdae019f6554b5c SHA512 c2c262ae9cae43be82b4e996ba8ce25ad0cf5211ad287ea85a00572a0763662ef38fbe05cf4f74854648a06069a9a8391d59f661a7a4fff5cd485e86a87d67dd
EBUILD elixir-1.9.4.ebuild 756 BLAKE2B 45337b098daa503ea61e9f8f5d8e4ccb6bbd09babb2457dc85a8e96cb79f76ec31d1ef393d015d8fb878b6c4e0d9c4380f39252d8e67b6da5b5e99dc79b77c5b SHA512 97ee97a4b7aece89c3308aa9efc050562e688e491fc313afd31a6400048c1551f734e5222963b187cc7ae4006d112ace23bee093645acfa96d88839136437e8b
MISC metadata.xml 790 BLAKE2B 33e4a37225c8f5bd142c5cbbe097ad3330f6c5b1115f834c1c20613281bdc0afa0927734ec3b0a2b1da595980abeec2fcf2bb20e725f5701590d1c3629972910 SHA512 5489797d3771c405edb4c9883082f780279470d7821dbdd1a4790bcdc74c0e31327c8f15286dc421bfe426d7371d6be2819e707389f425101e2d0d0577475586
diff --git a/dev-lang/elixir/elixir-1.10.0.ebuild b/dev-lang/elixir/elixir-1.10.0.ebuild
deleted file mode 100644
index d654108e6c09..000000000000
--- a/dev-lang/elixir/elixir-1.10.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Elixir programming language"
-HOMEPAGE="https://elixir-lang.org"
-SRC_URI="https://github.com/elixir-lang/elixir/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0 ErlPL-1.1"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~sparc ~x86"
-IUSE=""
-
-DEPEND=">=dev-lang/erlang-21:0=[ssl]"
-# 'mix' tool collides with sci-biology/phylip, bug #537514
-RDEPEND="${DEPEND}
- !!sci-biology/phylip
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.9.1-disable-network-tests.patch
-)
-
-src_compile() {
- emake Q=""
-}
-
-src_install() {
- emake DESTDIR="${D}" LIBDIR="$(get_libdir)" PREFIX="${EPREFIX}/usr" install
- dodoc README.md CHANGELOG.md CODE_OF_CONDUCT.md
-}
diff --git a/dev-lang/elixir/elixir-1.10.1.ebuild b/dev-lang/elixir/elixir-1.10.1.ebuild
index d654108e6c09..6dbdd3a94b15 100644
--- a/dev-lang/elixir/elixir-1.10.1.ebuild
+++ b/dev-lang/elixir/elixir-1.10.1.ebuild
@@ -9,7 +9,7 @@ SRC_URI="https://github.com/elixir-lang/elixir/archive/v${PV}.tar.gz -> ${P}.tar
LICENSE="Apache-2.0 ErlPL-1.1"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~sparc ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ia64 ppc ~sparc x86"
IUSE=""
DEPEND=">=dev-lang/erlang-21:0=[ssl]"
diff --git a/dev-lang/elixir/elixir-1.10.2.ebuild b/dev-lang/elixir/elixir-1.10.2.ebuild
index d654108e6c09..12dc7c530fe1 100644
--- a/dev-lang/elixir/elixir-1.10.2.ebuild
+++ b/dev-lang/elixir/elixir-1.10.2.ebuild
@@ -9,14 +9,21 @@ SRC_URI="https://github.com/elixir-lang/elixir/archive/v${PV}.tar.gz -> ${P}.tar
LICENSE="Apache-2.0 ErlPL-1.1"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~sparc ~x86"
-IUSE=""
+KEYWORDS="amd64 ~arm ~arm64 ~ia64 ppc ~sparc x86"
+IUSE="test"
-DEPEND=">=dev-lang/erlang-21:0=[ssl]"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ >=dev-lang/erlang-21:0=[ssl]
+"
# 'mix' tool collides with sci-biology/phylip, bug #537514
RDEPEND="${DEPEND}
!!sci-biology/phylip
"
+DEPEND+="
+ test? ( dev-vcs/git )
+"
PATCHES=(
"${FILESDIR}"/${PN}-1.9.1-disable-network-tests.patch
diff --git a/dev-lang/erlang/Manifest b/dev-lang/erlang/Manifest
index 79ee40f1e5c2..582b6571f05e 100644
--- a/dev-lang/erlang/Manifest
+++ b/dev-lang/erlang/Manifest
@@ -13,22 +13,19 @@ AUX erlang-22.2.2-gcc-10.patch 2963 BLAKE2B ea83306f31011d75119c8dc9dba0eb531f09
AUX erlang-add-epmd-pid-file-creation-for-openrc.patch 2359 BLAKE2B 54a3148144bcbb9a4dd68e89fd609a09a9e9a0a9c7a71a4e9eaafc12632e23da44411d72c1590e482fda73d5464b1071386aa564b8d9a73b032b62c474d20570 SHA512 301aed1980a8638a8cd069ecb6e968e5c15d3e82b38580861a0ed6a2fc7a9505d99525a53a6ac19c2d9b786703aac6bf51751275a6a7fafd8f530c07ea0c7e8c
AUX erlang-custom-autoconf.patch 398 BLAKE2B c99d3bc311bbca379786b9e4d29ee4983354a069508328c95e99a62bdfb8d15dbf372124acdf66c603f64acd9cabeb146e5bd5ec1e1ffd09af125fc4a076abdc SHA512 b82e09d0cd686c07b9d370e397edda10bd96435e70f4a0995ec06638e237e3b8fd0e1195ecc036b51367ffa36a0b4db5a2b1fe5d389a0b97e19d32aec51755d9
DIST erlang-21.1.1.tar.gz 53854332 BLAKE2B 32ab508b5a305eb92eac9f49bd513374c573966e7565d98aa6ba986ce42eb955a46130b9f33dbb415f48de5c179b308a8b06b345a844afcb2700f7e3f257f27e SHA512 dc11aace126aad5411b0d583579fe95a7263be328612fdc9f9c02d917aef7ea7a128b1e54ddcf7a52232980d2c81fc8e90ae5a8806ee5ae6ea97f00a9cf3faab
-DIST erlang-22.1.4.tar.gz 54957524 BLAKE2B 8960dd63eb7ae18544d8b6809760543b276ec230d5a9051d1888269770f6c44b379b6ba85ce9106f7d37b76c41b7683a545ba80569e33195e3e9211f6ced4ee3 SHA512 271a188d46a79cd1c43c3b8059b77c0802af624ff88c6916e0b84994040750d9792f0416937ed98e874256562f27d858916239d79f93b545c98b9703e5018f7b
-DIST erlang-22.1.8.tar.gz 54967877 BLAKE2B cb022e3c5f577605872e7689639fced6c1f6cb7600314f5939107605f0767ca080c65c2f9e0695a04bf53a9e0727553d854a9df57f09ce5f4a958ebd035756e7 SHA512 4260fab3f6cd9338ca167371cd982bcf9557729e93d58c3911e485529ed8ee97089e1de3466745d21206c94276f9865ac4fddcb2803afe915494b43feda46dda
-DIST erlang-22.2.1.tar.gz 55742915 BLAKE2B cfb49a07289f66ee8bcdc37452c88ec60c90b92febb7d41538166916989e80b612f13bae4ae2ba305aa12c790a74bcd9dc8412207413ba512537193811d177ad SHA512 4c0e5b963def01e02f8550414bee9e15a79681ac19547c4707d4cf3a67924e252dde7f8f94dfeca5eb3d34730acaffd193603711531bdf7c22d47d8880c5e5f4
-DIST erlang-22.2.6.tar.gz 55746963 BLAKE2B ebd1e11dc817285307add4147fc4f3c1bba4e9b8a19fa3dd61ec321aa4dfdb056406d76216185a39316787efc9bd766a1e7441b8c261bcb98c4b642c87a27357 SHA512 6da4b25340a37daa30d3a27081b782f24a53edfca0070f6c02ca0332bc8db9b3bad917c43d63470a15a86a44a439072f3ee1472b23ff8163730443e4a811c66b
-DIST erlang-22.2.7.tar.gz 55748754 BLAKE2B b090776fead116eb2f53b9a7436c0ad675310e600414cbb705019d0f2a6ae84c28b6795d17d66881cfc70d36b8f984c91ef3d42db73b29296015628789048311 SHA512 1746acd526eda37c769b70bba1ad0f73ee1e658d05d0cbbe4063f34c11f8061932b2cde04df725537f5c5b81b537897ada2f0f9b6b18b7554b0f7596c492906b
+DIST erlang-22.2.8.tar.gz 55747601 BLAKE2B 5ed4adf965515e3897723f63d561119872044d4d9e6229fb7bf98d9c2203bbd10e35e367ffb05214cad8788998b0c0816a3f102f0b1540d4f0b29683de240949 SHA512 ed65067e1cff82eb17e0ea758dac93f860ec4e2b661690cffa6bd43575de23f8dfbd570e13e548faef2ee51c6482faca35e21ea69ac0c585f61105f930df483d
+DIST erlang-22.3.1.tar.gz 55845292 BLAKE2B 2f57adc59a85c63d230676d1881960106e4d1baef4f70d88ae13dd65b973196ff5f76479576ed00914826a7ed8e724fb66a3dc87d70baf088675db2e725dfefc SHA512 1436e967fa829e77dd6dfed9ab67cc5fa6621e02dca0b669da869b0c2df6aa64eaa2a64621e22e205a329370c140d70aa8e695ba36dfc2849f02f5b462d6c319
+DIST erlang-22.3.2.tar.gz 55856668 BLAKE2B d5d2ae17b8fb1b7c3da0c145e4e17d38e47d5291d6bc77228c9280eaa114630003f0e75cc0b6eafd21642a86448d8fd907d95c006cdfe6f18978e796e20585bd SHA512 02333fed57394012834452aff38d9a3340c52b109b14e444b6e7975ac3a65485de1deda6ae6c732a28f75ca2518000de576f70497118306699e35af5f249a0d1
+DIST erlang-22.3.tar.gz 55842212 BLAKE2B a43cecb2d0ddb771073c786b7fc6d21aed7d4ab7d8bb854d151ec7583a2d3d89e79fc3275ae45ef12603be6a82cf057372f399b2b11a419553a69d957a95639d SHA512 138c4807f1116ad507d5ce2899438aebf3e1d5503d0de1cf81535dfa2d7bf9224dc45adeeabe5e479bb83293002c0d03e7f78be9f93394e9b85f1d83a3381446
DIST erlang_doc_html_21.1.tar.gz 32692731 BLAKE2B a7fa8ebe1c876ab7eecd2dd46ffd4d288db6d308e0f131d53c26ee4b67a92cb6fcb89b6c880ef34df395c7ad61fcdc81eac32e0fcf7336be7d517263218146bc SHA512 0d659f55bfb01eecf140a310154724489ef56b6ccbe9ac30f6b053f598276721b80de7b5b3200707cf8a6e77b8854eae5453f655225f431fcc982550539f767f
-DIST erlang_doc_html_22.1.tar.gz 33824830 BLAKE2B 2d50802fff81eba8bcf5f630da49d68d7cb2098175012e12f13941e69949a109c9f601c3cfaa2700b669415cd0c6c15961d8e4dd94b9b228cee17b661fe5400a SHA512 cc24927a4ff98b04d8f93fbc46bb36ffb34570521e4f31154b778dc17cf1cff60869239c26c327d7a9360c06528f9b380a302b39fa47285e50dfd4656b508202
DIST erlang_doc_html_22.2.tar.gz 33943680 BLAKE2B 4a0df88fe99c882272b07b928541f4d1be5b3b0faceb6463a02f627df1a3b8571c26bfb28967c5824879db987d0afa6a11e9487c3ef7d67a9c8206f4987a3608 SHA512 6d57422839d9270129c7eec440c3670c7f075b2b1ccc4ed4c7c08e79104cc4eff1bf788add14be170c94e5d0faad5d153d107844c5a373b5e01c7d03fc6646a8
+DIST erlang_doc_html_22.3.tar.gz 34041790 BLAKE2B 76372acf5d6a581fb97cac9fa8230f1505650e9398d0a8e6ed163718f6d64cbbb3b7c79a1b7129827482345ddf950be4a5d83f0dac44e173f0ef45b148b73faa SHA512 9199b6229b73a22e271c232ce03b83b65c265367062d57ca5babd23a2f0a088fde3054b25c65c1bf2cb714cb70354ce4324aa8e865db72beb1f788c27389558c
DIST erlang_doc_man_21.1.tar.gz 1317726 BLAKE2B 5e5c2b77a41da6ab9ae1264ba5824a9f3bda6d3b7a824b372e01356888db437ed9e45bf987d678aca3fd8d0f0e6dce25080c7a2aaa4e061936f1e6ac4717e843 SHA512 94c6191ba9f42bffeb398e865026fbc79f3b233389c7d471f0c680799aa3669e97ab5305cd53f26d6525aed33d738ebfc4eb79a8f1a0b29dc4b79a2a37a29a4f
-DIST erlang_doc_man_22.1.tar.gz 1355169 BLAKE2B eca02e36709587d59099dd87263b3ffcea55002cbcbf0a9980fface3cc30cb4ce0210fbdf80c8957da7a09a3b866ca81be22fd577f7f948562ef4e4ca516cbf5 SHA512 4f590f82293c97529c827c042bce673e6777c577e52e0e1876a8d6c1a0dc774c09637e85e3562f9a8af44372219d57174c002cc12a9646ae015c7bb1da34c750
DIST erlang_doc_man_22.2.tar.gz 1359216 BLAKE2B 943d8ac1d0ceab41e252cab18248b74592d90305a39a41c21421efb1a0c031b5b2dd430274bb6f23a5334aba87df65975549c83778afa6334826552b1e42e8b0 SHA512 94cdceda3f8710bf44e78eef854e9399a802d82051a49544abd75d9367240b268c5e58b4d62170fa044d850fc04f998594cd1fc312bec867ac6395b292c94ad4
+DIST erlang_doc_man_22.3.tar.gz 1366911 BLAKE2B 89931e9ea4ef54526eb910d3b0a56711e447dffc0463d7583db8875b9be789fd369f701eb7b6fa5da7b63de3f41a8e4ba15db6db02d90642a8b322f3897d7a2b SHA512 b47c66ebd34d2f511a702e97acd67eff7c5d47045a80ffb17b21032a9b9725b015cd171b78c04e3169a95f0acdbdcab57647b31ace751c9019ce3f7c75d743b6
EBUILD erlang-21.1.1.ebuild 4646 BLAKE2B 50adc94870a8efc3d0762bcfd3dd21e9edb746ec0313fd9dd5f30fdffbb4441fd1967a47937c3d23cd7e2b6b10554208448ac52b4a2302e9fa28149226678087 SHA512 66b7743c497112da8a4c56cd6f9279e3ea88c672d0a6d2b311e828e7e057f2ff2950816dc294bd87e98d3f589bb67c0c0c24633a34df183a10ef61967aea2f7e
-EBUILD erlang-22.1.4.ebuild 4404 BLAKE2B 3e722af7749eb9dc1efa339abdcab48875d17504488c1fabf53956f962d8df8b15efad55987ef67d99df9737f6a493208c158a4390d72f55a32637f1ffc27aa8 SHA512 7908c8207cd98ab8ce6a33a1ab2471d7bfaad621eca1b557c85be99de10b426e957d02955c5426dfd11ae307f6387df05813018f14418b2ea313018d36e3e1f4
-EBUILD erlang-22.1.8-r1.ebuild 4409 BLAKE2B ad23a960bf847324e20a0aed506839848335257a9317af46decfb4c4ab7a811f954a0eb2ad16897df323d80d33febc4b371208d466322ac880763300332f4060 SHA512 8ecec73e1cf697ed7e5a7970526466e21e746d64e0c97844c167680a33b44896448125758e2311bcbd53de4c80ae3a697b1a691de59c4df75cc7db4123a02f7d
-EBUILD erlang-22.2.1-r1.ebuild 4404 BLAKE2B 91ce8b061d3ec01768ff8ec67692dcdc90e5147b3b323c4ccf076d79c270773043b1620dcb3ff64b49a3d55ccf70e6716694aba22ff6ca5be0d2436b544cb25e SHA512 b45df17a92975efc6d3c45c4a9c79cbccd06988f4a289722e9373aae59adf530b2eb523c68554bdeb47aaa2384eb8456a62039302e42d135714add87e606991c
-EBUILD erlang-22.2.6.ebuild 4450 BLAKE2B d077fa20d38850d1fd9c8f29a0f4b22e82129af1f21a635f45437e6b841e250e15493f943203756e9746739041dff2476fc36ee92f559c6b1a2eb661bc10f119 SHA512 c7d811297276e91fa327d34023474a28e5fcf056af9da63486f0f589c7582d2f47ae62d255dfac79cfbd8ab8c5a8661beb2a595597f88558fc405e77d8563a2e
-EBUILD erlang-22.2.7-r1.ebuild 4681 BLAKE2B bc1499555c77331711d6458213253e92dd6c7de6befd1e4b926bf0410324321a7c16bca79e59c53c111fed999530fecd9e0278601980530265099c98e68539ab SHA512 0476757f604704dc7a9e5be58292fc0f3f2ea5d2f7831994c2bdbe73397c76de3024e533445d30b3e5b59449b6e4ae33c52c6cfa2f1ba036d1ac2e1c42cfedf6
-EBUILD erlang-22.2.7.ebuild 4450 BLAKE2B d077fa20d38850d1fd9c8f29a0f4b22e82129af1f21a635f45437e6b841e250e15493f943203756e9746739041dff2476fc36ee92f559c6b1a2eb661bc10f119 SHA512 c7d811297276e91fa327d34023474a28e5fcf056af9da63486f0f589c7582d2f47ae62d255dfac79cfbd8ab8c5a8661beb2a595597f88558fc405e77d8563a2e
+EBUILD erlang-22.2.8.ebuild 4676 BLAKE2B 6fd2d7ece3883151079513372855539d51edcdf82abb557c662a334d0b7e3c7e7a66b37e7efb29facb9ca8e0babf69d65eaa64d3857ed6e4c8451866615ec366 SHA512 d7e39cfb67f2633e5d759dda9ea225ff0abe153c64a938a95d49e984d0341cfd96038e4eeb644f8750ffadbb5386a0f40bc75110d6289c26082a373f3e96285b
+EBUILD erlang-22.3.1.ebuild 4597 BLAKE2B 8ec18ffdd47e90c2d85c77d8be0ac3102d44e9f58e4fa9f67832ce5a43d6a35f55d98116684b800ec904e4785201e6cd218ec46ccf1f1bc13a2f1f44801f62df SHA512 207fc0f0d45a5d84ec5b49f212b8d87df831650e3d426db9ce4cd84e40407c19e2574010ef09b62e8d150a4bdbf9f4ea6284be7aaf31319b155d2b4e912f303f
+EBUILD erlang-22.3.2.ebuild 4597 BLAKE2B 8ec18ffdd47e90c2d85c77d8be0ac3102d44e9f58e4fa9f67832ce5a43d6a35f55d98116684b800ec904e4785201e6cd218ec46ccf1f1bc13a2f1f44801f62df SHA512 207fc0f0d45a5d84ec5b49f212b8d87df831650e3d426db9ce4cd84e40407c19e2574010ef09b62e8d150a4bdbf9f4ea6284be7aaf31319b155d2b4e912f303f
+EBUILD erlang-22.3.ebuild 4597 BLAKE2B 8ec18ffdd47e90c2d85c77d8be0ac3102d44e9f58e4fa9f67832ce5a43d6a35f55d98116684b800ec904e4785201e6cd218ec46ccf1f1bc13a2f1f44801f62df SHA512 207fc0f0d45a5d84ec5b49f212b8d87df831650e3d426db9ce4cd84e40407c19e2574010ef09b62e8d150a4bdbf9f4ea6284be7aaf31319b155d2b4e912f303f
MISC metadata.xml 905 BLAKE2B c1277904d14789138212ad1c83291d30301558aba707d1eb43765573c32617bfcb0eea43acc80225870cf2fbab011920b64bbecbdd28d414d73eb3c86a00937c SHA512 f79228f075fc6ac58785bc8a6c574546674b7ddd6c4f7420cb616414cf5178c2fa08284668b0d863ae3638891567184d1e8a490e31c4e093724ebff5c177a461
diff --git a/dev-lang/erlang/erlang-22.1.4.ebuild b/dev-lang/erlang/erlang-22.1.4.ebuild
deleted file mode 100644
index a6aec6a1a12f..000000000000
--- a/dev-lang/erlang/erlang-22.1.4.ebuild
+++ /dev/null
@@ -1,154 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-WX_GTK_VER="3.0"
-
-inherit elisp-common java-pkg-opt-2 systemd wxwidgets
-
-# NOTE: If you need symlinks for binaries please tell maintainers or
-# open up a bug to let it be created.
-
-UPSTREAM_V="$(ver_cut 1-2)"
-
-DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)"
-HOMEPAGE="https://www.erlang.org/"
-SRC_URI="https://github.com/erlang/otp/archive/OTP-${PV}.tar.gz -> ${P}.tar.gz
- http://erlang.org/download/otp_doc_man_${UPSTREAM_V}.tar.gz -> ${PN}_doc_man_${UPSTREAM_V}.tar.gz
- doc? ( http://erlang.org/download/otp_doc_html_${UPSTREAM_V}.tar.gz -> ${PN}_doc_html_${UPSTREAM_V}.tar.gz )"
-
-LICENSE="Apache-2.0"
-# We use this subslot because Compiled HiPE Code can be loaded on the exact
-# same build of ERTS that was used when compiling the code. See
-# http://erlang.org/doc/system_principles/misc.html for more information.
-SLOT="0/${PV}"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
-IUSE="doc emacs +hipe java +kpoll libressl odbc sctp ssl systemd tk wxwidgets"
-
-RDEPEND="
- acct-group/epmd
- acct-user/epmd
- sys-libs/ncurses:0
- sys-libs/zlib
- emacs? ( >=app-editors/emacs-23.1:* )
- java? ( >=virtual/jdk-1.8:* )
- odbc? ( dev-db/unixODBC )
- sctp? ( net-misc/lksctp-tools )
- ssl? (
- !libressl? ( >=dev-libs/openssl-0.9.7d:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- systemd? ( sys-apps/systemd )
- tk? ( dev-lang/tk:0 )
- wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] )
-"
-DEPEND="${RDEPEND}
- dev-lang/perl
-"
-
-S="${WORKDIR}/otp-OTP-${PV}"
-
-PATCHES=(
- "${FILESDIR}/18.2.1-wx3.0.patch"
- "${FILESDIR}/${PN}-22.0-dont-ignore-LDFLAGS.patch"
- "${FILESDIR}/${PN}-22.1.4-asn1-dep.patch"
-)
-
-SITEFILE=50"${PN}"-gentoo.el
-
-src_prepare() {
- default
-
- ./otp_build autoconf || die
-}
-
-src_configure() {
- use wxwidgets && setup-wxwidgets
-
- local myconf=(
- --disable-builtin-zlib
- $(use_enable hipe)
- $(use_enable kpoll kernel-poll)
- $(use_with java javac)
- $(use_enable sctp)
- $(use_with ssl ssl "${EPREFIX}"/usr)
- $(use_enable ssl dynamic-ssl-lib)
- $(use_enable systemd)
- $(usex wxwidgets "--with-wx-config=${WX_CONFIG}" "--with-wxdir=/dev/null")
- )
- econf "${myconf[@]}"
-}
-
-src_compile() {
- emake
-
- if use emacs ; then
- pushd lib/tools/emacs &>/dev/null || die
- elisp-compile *.el
- popd &>/dev/null || die
- fi
-}
-
-extract_version() {
- local path="$1"
- local var_name="$2"
- sed -n -e "/^${var_name} = \(.*\)$/s::\1:p" "${S}/${path}/vsn.mk" || die "extract_version() failed"
-}
-
-src_install() {
- local erl_libdir_rel="$(get_libdir)/erlang"
- local erl_libdir="/usr/${erl_libdir_rel}"
- local erl_interface_ver="$(extract_version lib/erl_interface EI_VSN)"
- local erl_erts_ver="$(extract_version erts VSN)"
- local my_manpath="/usr/share/${PN}/man"
-
- [[ -z "${erl_erts_ver}" ]] && die "Couldn't determine erts version"
- [[ -z "${erl_interface_ver}" ]] && die "Couldn't determine interface version"
-
- emake INSTALL_PREFIX="${D}" install
-
- if use doc ; then
- local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" "${WORKDIR}"/doc/. "${WORKDIR}"/lib/. "${WORKDIR}"/erts-* )
- docompress -x /usr/share/doc/${PF}
- else
- local DOCS=("README.md")
- fi
-
- einstalldocs
-
- dosym "../${erl_libdir_rel}/bin/erl" /usr/bin/erl
- dosym "../${erl_libdir_rel}/bin/erlc" /usr/bin/erlc
- dosym "../${erl_libdir_rel}/bin/escript" /usr/bin/escript
- dosym "../${erl_libdir_rel}/lib/erl_interface-${erl_interface_ver}/bin/erl_call" /usr/bin/erl_call
- dosym "../${erl_libdir_rel}/erts-${erl_erts_ver}/bin/beam.smp" /usr/bin/beam.smp
-
- ## Clean up the no longer needed files
- rm "${ED}/${erl_libdir}/Install" || die
-
- insinto "${my_manpath}"
- doins -r "${WORKDIR}"/man/*
- # extend MANPATH, so the normal man command can find it
- # see bug 189639
- newenvd - "90erlang" <<-_EOF_
- MANPATH="${my_manpath}"
- _EOF_
-
- if use emacs ; then
- elisp-install erlang lib/tools/emacs/*.{el,elc}
- sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \
- "${FILESDIR}/${SITEFILE}" > "${T}/${SITEFILE}" || die
- elisp-site-file-install "${T}/${SITEFILE}"
- fi
-
- newinitd "${FILESDIR}"/epmd.init-r2 epmd
- newconfd "${FILESDIR}"/epmd.confd-r1 epmd
- use systemd && systemd_newunit "${FILESDIR}"/epmd.service-r1 epmd.service
-}
-
-pkg_postinst() {
- use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
- use emacs && elisp-site-regen
-}
diff --git a/dev-lang/erlang/erlang-22.2.6.ebuild b/dev-lang/erlang/erlang-22.2.6.ebuild
deleted file mode 100644
index c52ed00f231a..000000000000
--- a/dev-lang/erlang/erlang-22.2.6.ebuild
+++ /dev/null
@@ -1,155 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-WX_GTK_VER="3.0"
-
-inherit elisp-common java-pkg-opt-2 systemd wxwidgets
-
-# NOTE: If you need symlinks for binaries please tell maintainers or
-# open up a bug to let it be created.
-
-UPSTREAM_V="$(ver_cut 1-2)"
-
-DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)"
-HOMEPAGE="https://www.erlang.org/"
-SRC_URI="https://github.com/erlang/otp/archive/OTP-${PV}.tar.gz -> ${P}.tar.gz
- http://erlang.org/download/otp_doc_man_${UPSTREAM_V}.tar.gz -> ${PN}_doc_man_${UPSTREAM_V}.tar.gz
- doc? ( http://erlang.org/download/otp_doc_html_${UPSTREAM_V}.tar.gz -> ${PN}_doc_html_${UPSTREAM_V}.tar.gz )"
-
-LICENSE="Apache-2.0"
-# We use this subslot because Compiled HiPE Code can be loaded on the exact
-# same build of ERTS that was used when compiling the code. See
-# http://erlang.org/doc/system_principles/misc.html for more information.
-SLOT="0/${PV}"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
-IUSE="doc emacs +hipe java +kpoll libressl odbc sctp ssl systemd tk wxwidgets"
-
-RDEPEND="
- acct-group/epmd
- acct-user/epmd
- sys-libs/ncurses:0
- sys-libs/zlib
- emacs? ( >=app-editors/emacs-23.1:* )
- java? ( >=virtual/jdk-1.8:* )
- odbc? ( dev-db/unixODBC )
- sctp? ( net-misc/lksctp-tools )
- ssl? (
- !libressl? ( >=dev-libs/openssl-0.9.7d:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- systemd? ( sys-apps/systemd )
- tk? ( dev-lang/tk:0 )
- wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] )
-"
-DEPEND="${RDEPEND}
- dev-lang/perl
-"
-
-S="${WORKDIR}/otp-OTP-${PV}"
-
-PATCHES=(
- "${FILESDIR}/18.2.1-wx3.0.patch"
- "${FILESDIR}/${PN}-22.0-dont-ignore-LDFLAGS.patch"
- "${FILESDIR}/${PN}-22.2.2-gcc-10.patch"
- "${FILESDIR}/${PN}-22.1.4-asn1-dep.patch"
-)
-
-SITEFILE=50"${PN}"-gentoo.el
-
-src_prepare() {
- default
-
- ./otp_build autoconf || die
-}
-
-src_configure() {
- use wxwidgets && setup-wxwidgets
-
- local myconf=(
- --disable-builtin-zlib
- $(use_enable hipe)
- $(use_enable kpoll kernel-poll)
- $(use_with java javac)
- $(use_enable sctp)
- $(use_with ssl ssl "${EPREFIX}"/usr)
- $(use_enable ssl dynamic-ssl-lib)
- $(use_enable systemd)
- $(usex wxwidgets "--with-wx-config=${WX_CONFIG}" "--with-wxdir=/dev/null")
- )
- econf "${myconf[@]}"
-}
-
-src_compile() {
- emake
-
- if use emacs ; then
- pushd lib/tools/emacs &>/dev/null || die
- elisp-compile *.el
- popd &>/dev/null || die
- fi
-}
-
-extract_version() {
- local path="$1"
- local var_name="$2"
- sed -n -e "/^${var_name} = \(.*\)$/s::\1:p" "${S}/${path}/vsn.mk" || die "extract_version() failed"
-}
-
-src_install() {
- local erl_libdir_rel="$(get_libdir)/erlang"
- local erl_libdir="/usr/${erl_libdir_rel}"
- local erl_interface_ver="$(extract_version lib/erl_interface EI_VSN)"
- local erl_erts_ver="$(extract_version erts VSN)"
- local my_manpath="/usr/share/${PN}/man"
-
- [[ -z "${erl_erts_ver}" ]] && die "Couldn't determine erts version"
- [[ -z "${erl_interface_ver}" ]] && die "Couldn't determine interface version"
-
- emake INSTALL_PREFIX="${D}" install
-
- if use doc ; then
- local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" "${WORKDIR}"/doc/. "${WORKDIR}"/lib/. "${WORKDIR}"/erts-* )
- docompress -x /usr/share/doc/${PF}
- else
- local DOCS=("README.md")
- fi
-
- einstalldocs
-
- dosym "../${erl_libdir_rel}/bin/erl" /usr/bin/erl
- dosym "../${erl_libdir_rel}/bin/erlc" /usr/bin/erlc
- dosym "../${erl_libdir_rel}/bin/escript" /usr/bin/escript
- dosym "../${erl_libdir_rel}/lib/erl_interface-${erl_interface_ver}/bin/erl_call" /usr/bin/erl_call
- dosym "../${erl_libdir_rel}/erts-${erl_erts_ver}/bin/beam.smp" /usr/bin/beam.smp
-
- ## Clean up the no longer needed files
- rm "${ED}/${erl_libdir}/Install" || die
-
- insinto "${my_manpath}"
- doins -r "${WORKDIR}"/man/*
- # extend MANPATH, so the normal man command can find it
- # see bug 189639
- newenvd - "90erlang" <<-_EOF_
- MANPATH="${my_manpath}"
- _EOF_
-
- if use emacs ; then
- elisp-install erlang lib/tools/emacs/*.{el,elc}
- sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \
- "${FILESDIR}/${SITEFILE}" > "${T}/${SITEFILE}" || die
- elisp-site-file-install "${T}/${SITEFILE}"
- fi
-
- newinitd "${FILESDIR}"/epmd.init-r2 epmd
- newconfd "${FILESDIR}"/epmd.confd-r2 epmd
- use systemd && systemd_newunit "${FILESDIR}"/epmd.service-r1 epmd.service
-}
-
-pkg_postinst() {
- use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
- use emacs && elisp-site-regen
-}
diff --git a/dev-lang/erlang/erlang-22.2.1-r1.ebuild b/dev-lang/erlang/erlang-22.2.8.ebuild
index a7084c0701e3..23c9655ca8e2 100644
--- a/dev-lang/erlang/erlang-22.2.1-r1.ebuild
+++ b/dev-lang/erlang/erlang-22.2.8.ebuild
@@ -51,6 +51,7 @@ S="${WORKDIR}/otp-OTP-${PV}"
PATCHES=(
"${FILESDIR}/18.2.1-wx3.0.patch"
"${FILESDIR}/${PN}-22.0-dont-ignore-LDFLAGS.patch"
+ "${FILESDIR}/${PN}-22.2.2-gcc-10.patch"
"${FILESDIR}/${PN}-22.1.4-asn1-dep.patch"
)
@@ -108,7 +109,13 @@ src_install() {
emake INSTALL_PREFIX="${D}" install
if use doc ; then
- local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" "${WORKDIR}"/doc/. "${WORKDIR}"/lib/. "${WORKDIR}"/erts-* )
+ # Note: we explicitly install docs into:
+ # /usr/share/doc/${PF}/{doc,lib,erts-*}
+ # To maintain that layout we gather everything in 'html-docs'.
+ # See bug #684376.
+ mkdir html-docs || die
+ mv "${WORKDIR}"/doc "${WORKDIR}"/lib "${WORKDIR}"/erts-* html-docs/ || die
+ local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" html-docs/. )
docompress -x /usr/share/doc/${PF}
else
local DOCS=("README.md")
diff --git a/dev-lang/erlang/erlang-22.2.7-r1.ebuild b/dev-lang/erlang/erlang-22.3.1.ebuild
index b3c069a442bf..5a0f4f57d150 100644
--- a/dev-lang/erlang/erlang-22.2.7-r1.ebuild
+++ b/dev-lang/erlang/erlang-22.3.1.ebuild
@@ -51,8 +51,6 @@ S="${WORKDIR}/otp-OTP-${PV}"
PATCHES=(
"${FILESDIR}/18.2.1-wx3.0.patch"
"${FILESDIR}/${PN}-22.0-dont-ignore-LDFLAGS.patch"
- "${FILESDIR}/${PN}-22.2.2-gcc-10.patch"
- "${FILESDIR}/${PN}-22.1.4-asn1-dep.patch"
)
SITEFILE=50"${PN}"-gentoo.el
diff --git a/dev-lang/erlang/erlang-22.1.8-r1.ebuild b/dev-lang/erlang/erlang-22.3.2.ebuild
index 5d1d119a7576..5a0f4f57d150 100644
--- a/dev-lang/erlang/erlang-22.1.8-r1.ebuild
+++ b/dev-lang/erlang/erlang-22.3.2.ebuild
@@ -51,7 +51,6 @@ S="${WORKDIR}/otp-OTP-${PV}"
PATCHES=(
"${FILESDIR}/18.2.1-wx3.0.patch"
"${FILESDIR}/${PN}-22.0-dont-ignore-LDFLAGS.patch"
- "${FILESDIR}/${PN}-22.1.4-asn1-dep.patch"
)
SITEFILE=50"${PN}"-gentoo.el
@@ -108,7 +107,13 @@ src_install() {
emake INSTALL_PREFIX="${D}" install
if use doc ; then
- local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" "${WORKDIR}"/doc/. "${WORKDIR}"/lib/. "${WORKDIR}"/erts-* )
+ # Note: we explicitly install docs into:
+ # /usr/share/doc/${PF}/{doc,lib,erts-*}
+ # To maintain that layout we gather everything in 'html-docs'.
+ # See bug #684376.
+ mkdir html-docs || die
+ mv "${WORKDIR}"/doc "${WORKDIR}"/lib "${WORKDIR}"/erts-* html-docs/ || die
+ local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" html-docs/. )
docompress -x /usr/share/doc/${PF}
else
local DOCS=("README.md")
diff --git a/dev-lang/erlang/erlang-22.2.7.ebuild b/dev-lang/erlang/erlang-22.3.ebuild
index c52ed00f231a..5a0f4f57d150 100644
--- a/dev-lang/erlang/erlang-22.2.7.ebuild
+++ b/dev-lang/erlang/erlang-22.3.ebuild
@@ -51,8 +51,6 @@ S="${WORKDIR}/otp-OTP-${PV}"
PATCHES=(
"${FILESDIR}/18.2.1-wx3.0.patch"
"${FILESDIR}/${PN}-22.0-dont-ignore-LDFLAGS.patch"
- "${FILESDIR}/${PN}-22.2.2-gcc-10.patch"
- "${FILESDIR}/${PN}-22.1.4-asn1-dep.patch"
)
SITEFILE=50"${PN}"-gentoo.el
@@ -109,7 +107,13 @@ src_install() {
emake INSTALL_PREFIX="${D}" install
if use doc ; then
- local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" "${WORKDIR}"/doc/. "${WORKDIR}"/lib/. "${WORKDIR}"/erts-* )
+ # Note: we explicitly install docs into:
+ # /usr/share/doc/${PF}/{doc,lib,erts-*}
+ # To maintain that layout we gather everything in 'html-docs'.
+ # See bug #684376.
+ mkdir html-docs || die
+ mv "${WORKDIR}"/doc "${WORKDIR}"/lib "${WORKDIR}"/erts-* html-docs/ || die
+ local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" html-docs/. )
docompress -x /usr/share/doc/${PF}
else
local DOCS=("README.md")
diff --git a/dev-lang/gforth/Manifest b/dev-lang/gforth/Manifest
index 384da287c8a4..6a0356519f74 100644
--- a/dev-lang/gforth/Manifest
+++ b/dev-lang/gforth/Manifest
@@ -1,5 +1,5 @@
AUX 50gforth-gentoo.el 200 BLAKE2B 1e3faf9b1c8cee5644e49941c0ab46d1f9a53911c50bee6f79f155678c432ce2c0ee27355496d75c489ca61fe2fac74441142eaccd563a4b5e0e426889aa8b30 SHA512 4bb26614777a8147d3bc869ee5db4ebbb594aaf7456c315e077a982dbb9f972cd15ddb977515036ca07594995b623cba35daade1abfcd3a2cdddac7ffbdf4027
AUX gforth-0.7.0-make-elc.patch 437 BLAKE2B 614b8b5a718be0f3cf3802b75ac38e845b3583dab6d8554c9ba08b1768f3818ed760e1b69389fd3cc99418ac30c5579c29491a43778e5cfcfd5f41eeb39e3e20 SHA512 d4d2c0eefe6ecc0fdc8c58147262324292c905e3cafb360a5d7c4e6eac92798ec416fffae21834f9d29c1e9117a500891285e6a0ff5405346d4a5e63c10f1bce
DIST gforth-0.7.3.tar.gz 2523433 BLAKE2B 1ba9095af7958aabf0d671f982c483f2046392fd9872678a58f314357875d286bee7f0d7bc38e9b21331acda80fd285c0489fed44d59c148ff6ec6b6bea7c174 SHA512 f034234acfb0fc727f28b564432219a100b916c6df4b847794a55b2fc3b8ed8714eca6de0df67c7c427b7c2bb4dd00f65cfd34e6eb60181e41ab84fea30304e4
-EBUILD gforth-0.7.3-r1.ebuild 1063 BLAKE2B 7be6a241597f625b9e1d13804fe7623624ee14caccd752d72109b6e811f8d6edb6ed0d07bb88738b87a3f5971c9fd0ec0d39b2ca7ff44a0496e95f2b63a238e3 SHA512 f65986500bfeb9bfe5406656de778148b746d8f57182de43c25b8313c6337b1ee374f6c7dbaba914f7289dc9b54edbb1fa54ca86de36dab85f589e55fe7f5334
-MISC metadata.xml 251 BLAKE2B 9785c4729d0751280d104965bab25a268219a7fee217dcd8c01a5642a13f8abc471a3dff54ae0d34d3cf3dc8267fb483d93bd3b16aa3617e8fa8e9abd1703dfe SHA512 cc2bd3977894946ee4ea5b739cc3998bcd6017b9e7a52aa501409d0988954339a9a22fe751d0a5e967ddac9225d9b23f20b4fb1e2c62ee91d1d23c383d9776dd
+EBUILD gforth-0.7.3-r1.ebuild 1092 BLAKE2B ca4c98d34e4274b3ec24be98b5bf97c9107a2e4b340ab31765d91cc00263c52d325ac16e4875fc4cad121f3a22413b2aad64bd6fab3e5bd0bb31eefd983e97db SHA512 cf6ee4df8081510a4ac9f8de79e13ef37e1e233c76b5ada2c0127ca44eebfdff2fef36978358b49b1744367fed7947f5d82aca356740bf134c881429305f365a
+MISC metadata.xml 326 BLAKE2B 45cd0a4ebaa69033fd5844d0c5b775ae70129eeafb2074faa26e6f5267f959cc21fccead3e55b7624092447b4af42b2adfc4a0815b0b2a4f5f04b822877e1095 SHA512 23c89da79edf3a0886758d0b3c1fd1c45de90b3eddae943614e25e8188891e2f097e03a3beaae36ef0be916fb8ce24f9cec8d5060664929b3d55f910d651dac4
diff --git a/dev-lang/gforth/gforth-0.7.3-r1.ebuild b/dev-lang/gforth/gforth-0.7.3-r1.ebuild
index 2697a44780a7..01598f0f239e 100644
--- a/dev-lang/gforth/gforth-0.7.3-r1.ebuild
+++ b/dev-lang/gforth/gforth-0.7.3-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -12,7 +12,7 @@ SRC_URI="mirror://gnu/gforth/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86 ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris"
-IUSE="emacs"
+IUSE="+check emacs"
DEPEND="dev-libs/ffcall
emacs? ( >=app-editors/emacs-23.1:* )"
@@ -26,7 +26,8 @@ PATCHES=(
src_configure() {
econf \
- $(use emacs || echo "--without-lispdir")
+ $(use emacs || echo "--without-lispdir") \
+ $(use_with check)
}
src_compile() {
diff --git a/dev-lang/gforth/metadata.xml b/dev-lang/gforth/metadata.xml
index c5298995d2d4..03e8585377c7 100644
--- a/dev-lang/gforth/metadata.xml
+++ b/dev-lang/gforth/metadata.xml
@@ -5,4 +5,7 @@
<email>slyfox@gentoo.org</email>
<name>Sergei Trofimovich</name>
</maintainer>
+ <use>
+ <flag name='check'>Enable build-time sanity check.</flag>
+ </use>
</pkgmetadata>
diff --git a/dev-lang/ghc/Manifest b/dev-lang/ghc/Manifest
index 74999bbb2c94..b58f1ba39dce 100644
--- a/dev-lang/ghc/Manifest
+++ b/dev-lang/ghc/Manifest
@@ -20,6 +20,8 @@ AUX ghc-8.0.2-binutils-2.30.patch 2115 BLAKE2B 5affd1954283773ab1f4717b5cc735f86
AUX ghc-8.0.2-libffi-alpha.patch 2133 BLAKE2B 596410d5bead5a3c5f1f4a1e33a767bf2ade92204e469652e3ce005dd275a54e0e084799af2967529008654f4c45148b955e5e0b299a48cd5e78cf1c209e3d7c SHA512 77964b82be47219d709ed4b79ac255c4762986decadef2d65d6643cb2d1b6cb0f3210cce1bd46bc16b6e6c51a4aabc73c5bc5e1bdaa8797a5f23033194f91a4a
AUX ghc-8.0.2-no-relax-everywhere.patch 766 BLAKE2B 76ca925d56a9d2961cd342971ef8fb0165158d707f0089f3726560511e57ee5c08adeaf996595378d1cef3ec7b59ddf1df06d0255bf20da51c5b26e817f4057b SHA512 b729ddc27bbf089324f0b4d7229925226b59c0047cec0c0230e022fb8554389373e309e93a108f0aaa155fd9ff6957a7d41cdd35a90c6ca59b216381ff21483b
AUX ghc-8.0.2_rc2-old-sphinx.patch 434 BLAKE2B ede17cd4e5848b452edeaa3b429a7485f324cf1c9133098c7d9f84a22816eedeaf55143fea082e514b5e987ca40f65b68a476060e0c18d19bb5f8b5b993fda92 SHA512 fc8fd8d40c70a77a3aecfbdb0993bee9ef1582402b7220ed3066e1c6d4bc480c5b569cab44b58b3c54d1e68f506dc5b86ff87518d744a5a846d4de6cb1093db2
+AUX ghc-8.10.1-allow-cross-bootstrap.patch 541 BLAKE2B b77b3c9ebb7a33af6f82ec1b9927664e9bfce04450560a8e436ffa87feca50d606824192b7333e3b98d5552622592b6d39d0b184037ce646d6f7ebd205deb348 SHA512 d87a99ac96846e161d8c939079f8314d380be8e1dc62f956e3afcce1339a76447a14002b30bac1c86c807fd8eba23a0648912a3d074248f3513f9aadacd27489
+AUX ghc-8.10.1-no-relax-everywhere.patch 910 BLAKE2B 3afdc92313cb48a00698b8c4cc8af822b843dd107d546a95d598fa0d7e7fc4507e3e7dc8ab06faaafcb0cd24770df28826987088898a6cc2d1b914fc7576ec75 SHA512 21f1c64ed75c5b062a00f48b7439753aab15083c583a1cbea76b63398873ac14f52a45fe62e4cf3751c5dbb623e75a4f96c416f5e8f7a1f7822798b21cadcbb1
AUX ghc-8.2.1-darwin.patch 910 BLAKE2B 2f1a44dd7ead59301b5dd59c8cab932710655416640f2c8d5273cf07da4a45bf702d840768e2d32822e89f1b07cc9ed3a6110e1847e11468fca5c515e9e26f70 SHA512 0177fda8717d9158a99d96853feb1bf40ff13df8f5c5669c7c48f33accf69d6ddb05876776cda66705e85ee56c5ecff8f81722d8e748b6c2ed6b9bf611e42a2c
AUX ghc-8.2.1_rc1-cgen-constify.patch 14371 BLAKE2B 96f9607cf857bb113b475d173a62998f2b0424f09f14c20ae3cab8497a25ab2df7523850f46e3b2867dcd75a499b3487345376b7cdd8e6f4a5e8008e160cf3d0 SHA512 8715c2f7c497eeefffd13b578ff718f36ec22bfe397501f685db0c781c614ebaa1178a9ca7550a722876d1cf9ace39aaa44493ecb934a828fa5010471672acfa
AUX ghc-8.2.1_rc1-ghci-cross.patch 2828 BLAKE2B 89776c87d4ca8c0b74f0d7ef11680d2cea217774389bf297df1a61f9d95ea515b5f9d44387eac7715fec59d9c91e91bd06215c851c94f091c05b03f84d0b8699 SHA512 55e8f2e6bf69ff26976005e0b89c400df9facda5eb974f7340af89625361adce48371616a5d292dafbd4d98cbfbc0b656d36749f2e16918b275a0469ed88cea2
@@ -42,6 +44,8 @@ DIST ghc-7.10.3-src.tar.bz2 13281867 BLAKE2B 51b0a94cc63269926fd5d04c0fb0871266c
DIST ghc-7.8.4-ia64-CLOSUREs-regenerated.patch.gz 13268 BLAKE2B 35af21163e3a46ee340e29eb88daf617eeb094f02da7fdcb80e947c1d26234232b12d9eb2c38c02c3207c047573521fef3ac5e7b87609e66f0c57072fef1038e SHA512 a655713e06324b56f0041edf70837487e296d28e6f3ee35fe116b9938765aaf3469d25e92645e0940655ed3607dff27d3826fe0f995c84e81b51bfc956816e7d
DIST ghc-7.8.4-src.tar.bz2 10600755 BLAKE2B 6cf27f663178513b25032b648cf36b016e01361966725dbfc219079961e8eb9b1ab3531427c7012dc599e8e102dc87ed6dd43b31e7bd4e231e2d989936eb2c66 SHA512 079a53891d8ebd8d9b88da96170e60981608a619f8282e4b7948f35244e99bd87277649ac7fcebc227a61a4d21960db8d5e5b9e92f2c69c82d8d68d7fd0a41d3
DIST ghc-8.0.2-src.tar.xz 10687760 BLAKE2B 3b2a487c115680342ce308ff1a42d2b6fa6fb1f31e2670b27a305b4d44160056611b77273c9d47f2e37a1ef01b1aba59c36e76b65c83142a5f09812bf3b1ea02 SHA512 58ea3853cd93b556ecdc4abd0be079b2621171b8491f59004ea4e036a4cba4470aaafe6591b942e0a50a64bdc47540e01fe6900212a1ef7087850112d9bfc5ef
+DIST ghc-8.10.1-src.tar.xz 19781652 BLAKE2B 61ff73d3a895cfa0c836e25a684d7a31cf099dcc33d1f308eaf56aa4b2a75b8f38cf963197c11dad9d027270845af20e00a7d81e5417b0fb8b4a98ddbadd53d8 SHA512 e6bb5c326f8354f0892324586c164c6e04168215d8bfeccb594173a838a535e37bac38db6fbdb01fb37150099c12842c53be5e912dfb6a6feeae3c75d4ae24d0
+DIST ghc-8.10.1-testsuite.tar.xz 2091988 BLAKE2B 88796f0fb6ea2bdd749161c84ec88768f3bf87063d2224a083db24f69282e615227626fe3c7b41d4abec10883e22042abed6a231582bab4ea530feffd683ed0b SHA512 35147f98301c5bfb6c939e108de48b2a1133adc1028aaa720ce49d60faa06a4b486a9eded658295e3f203731b4dd53475b57e8213491c45b05959430030be269
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
@@ -55,6 +59,8 @@ DIST ghc-8.8.1-src.tar.xz 28634672 BLAKE2B 3a012db5d9798efddf806542a88cd9fef1d09
DIST ghc-8.8.1-testsuite.tar.xz 1959220 BLAKE2B 8606a6439f7d5b4c837b2325c4ef5705dbcea17c4b59daf7aafd0de68e55179bb2c03ce7a4f376398b185b6dbfb361d18592756558461ee43722d2142370d815 SHA512 e13b651c60deb86522efbfe8aa42679cc81a413475f70580d9ef28dbb711617c523951441a30fb46f3be9418c4c0bb4dbc522b04aaa51313afd2d39027696c30
DIST ghc-8.8.2-src.tar.xz 19365816 BLAKE2B 85dbd2a4696755f43c28ec578d5ecfe706b27ba7f640f66b464b7aa7b959ca5f02b8b51d130299c30d024c46b9ce6a115606bde46be400fb8ee221ff18177d65 SHA512 11eec0bc03254ea848a5c86bc3e2da317801a1227dd91406a157e11cb675891d77d61177b740b6df88bd823063f6cb2af5a928a7540e25392d9d0769ea121069
DIST ghc-8.8.2-testsuite.tar.xz 1976924 BLAKE2B cec6c5dab1782332aca6364f995cffc1e9f3506649c3410b6eaa220e665b66f033dfad8ab6cae7677e15a6a1bd51237ed491b7fd04a19fa1d4f9cd8904617c64 SHA512 0fc41a0b3cb5f172442863c8a3b1cf549f2f660a070965e6083baa2c90c27b6a7c17550625105799010f4329dc189f4e392c86991844a9704a3e3a72a6d4e2f5
+DIST ghc-8.8.3-src.tar.xz 19343672 BLAKE2B 4b33b4a386926f0ee625c7c18a3997f02bf664b8f553d7cdfb231553bf9510f44f72c0b46911539f6209f28ecab52ee520e61e2c9e750cc217b170b3596ffca0 SHA512 7db0d820a288e56bd32935cc03584295900605f6e7cac6fe6adcb3ec6c24d8d2cebf7a8efa421f2d2fa192602d7f24dfad1ddeeba252455e4cb8baa9889dcaa9
+DIST ghc-8.8.3-testsuite.tar.xz 1965236 BLAKE2B 9cd10769336513284d8e0fbca1c3fce9e298ec67eb63eb10d41087fccba0f6281f1509aee684778fd23710ffe65843c43b4042e6692940af67766056c4503273 SHA512 4ebf3eabcd7591762dfcf45716b06293fb14c00b51307f7788c90dcf4e01f67e6bbb7a887b74d8d30272919486441ac236b42a54c4874aac69d90391b76f81c9
DIST ghc-bin-7.10.3-alpha.tbz2 183558856 BLAKE2B 2bb02aafa49c6a91bec016e8bec2d07257d602e53c9df55792ec6fbbf8e2e46de1d5f3f72c0ccf74d6bd7f7987f53412063ccb02ae85455fce11fa928cbf5291 SHA512 08709fe9b4036ab41715c9a637a2a160104e3ab9e0ed9efaaf73428e3cfe19619e50c42b72c60bbbd27be2b9c2ea68f63d72c1a27d4519756e7c0d909f724230
DIST ghc-bin-7.10.3-amd64.tbz2 112040431 BLAKE2B 3e59b70ca309a1cd704266c54a7983f9a58362bf700ced89c5649c780c664c650ec091e14026a7b84e339d2ebff39eba1772eebcd9fb4b99b9c99d179453d5cc SHA512 e1554b3944edbe8e16537de5a29132dc6a22d780d9a700cdc9b76387b94191164398d6f2242bf8199527802572e2bb02545569d4f0930a0ee0dbfdeb25978558
DIST ghc-bin-7.10.3-ia64.tbz2 238680956 BLAKE2B 08593718d376051edfb0c86131e54dafc5c15056757fbeef90c653a7d217e49ff34ffaf7cd4083144c9277e73a290b822a0f889aaf806341375708e4b92654b2 SHA512 3694011aec8a6dc37889418b318993cb82f9b46a5175dd837713f396c8f59a19a920e0b0669fe3b4ec37d5bd8837c115264c0a8fc97c5a4ce06a3bdd52fcfce5
@@ -76,6 +82,8 @@ DIST ghc-bin-8.0.2-ia64-unknown-linux-gnu.tbz2 256581880 BLAKE2B 7a9b41fccf3a097
DIST ghc-bin-8.0.2-ppc.tbz2 144760090 BLAKE2B 32410f3563f7f2555350806db460d2083c7248c57223c9c681d0b4913df942f023c7c1f5fda145179a524ee7ef105a9b8309ba87c20dc393a9f49151579b6767 SHA512 bc6bf8998064ffc1692c3bb83c44d1787760a3f4a1e6b79dedaefda5fe32b9052049a60f0ddd3c0b0bd24a722fb35e310e0189b3511721ff89d4d02b3d7c14bb
DIST ghc-bin-8.0.2-ppc64.tbz2 117432068 BLAKE2B cae202f0d6e825127d543996b2fe7ae02578c47325674cbf22fddc53b1c4c9413f45c60d76ec3d07860cb8d0aae1ec792e4141822cc5c08ef9013308c5d29bf5 SHA512 0eaff0557b68649a15bbeb2019f46fa9e9e7b8a916aa210ab56888090a5b887d20d818e7987177bc6a8e7fde503de560026e6bb55fe39679b8b1ee13c6b7c4f9
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.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
@@ -96,18 +104,22 @@ DIST ghc-bin-8.8.1-powerpc64le-unknown-linux-gnu.tbz2 173653088 BLAKE2B 6c29777b
DIST ghc-bin-8.8.1-x86_64-pc-linux-gnu.tbz2 119317594 BLAKE2B 98f0fb262ac485dcfd6a8a67304912ffad2bf2634111fcc3b60346697a836867006bbacaab1e1be0cd5be34b4595d12bec13af644c451c10f7e3843ebaf5922f SHA512 e6acb11755db18fd86a346de642b8579a6b48b303c19795949757f5e351ad3b8892906e989dc57a7fd4471d0efe30fc8175df5bac741d7faecfe42a855a67980
DIST ghc-bin-8.8.2-i686-pc-linux-gnu.tbz2 120289601 BLAKE2B df65bc6aa4ee22c979b9d8eda29f51188c96700d61fb4cf141ebad8a55e26b6cd959fce3ec0b8d780b68e7baf15a1ce7654dc4ef084aa4671fe05f00f9c4e9aa SHA512 da059f3fea00e14df346143e714da6484ae51d362d9e237607817791e02ec81e29e1ff7f9929fac44044f63196b395287c42f5829884c34391289179b4f6e204
DIST ghc-bin-8.8.2-x86_64-pc-linux-gnu.tbz2 118957404 BLAKE2B cddedbb0fe8d38e9821bd8f51f5177d35922b25bf4fc8a537e921443560f141cdef44e54a0b4ef2dde07dbe33d9c1cba2e67ba80db4313f67e9bac089d967f56 SHA512 b0b801dd6abe9f5e6217e18568e2911dbfea11b1b45ff526950e87c73a34bcd597afc5105fcff2dc46bb13cf95e63db90c0d24ca9babf174b397a53001e8e0ac
+DIST ghc-bin-8.8.3-i686-pc-linux-gnu.tbz2 120243899 BLAKE2B 7f932523a71dcfd4cdd468bf67f470a942c314888c0093c21c211d54b3e158f45f051f027c78644a651047d81e809e1422bbaa5043e8559c6a4622ac0472f7e4 SHA512 12bf08b85652fd061849b9adb528d7a5c6fe9c2260cf02b92fab470fff16c3121bcb4e0f7044d05f252012083d622a1a490fa7f7c949142a3b5d03ccf0dd3ebc
+DIST ghc-bin-8.8.3-x86_64-pc-linux-gnu.tbz2 118988294 BLAKE2B 4e5aa3844934ae2726bf9c8690acd5a887f10cd49386ffadbc536f9309d33b3894b49507964eaf0d8a052747eb33aeabbe4d2cd22493297c295cf9414fcb766c SHA512 dd656157fe744c1df1c8ed34d1129ec358b26f3042c6da68e704e0f6a45d8114789000479e28a06dc16961afb283b3c666b427025590498a3d2da9b741b435c7
DIST hoopl-3.10.2.0.tar.gz 241940 BLAKE2B 0ed7bf80486767c81415f99da8780a525401c388dea0b3f380bbecceae9cc7f66d8b5d0d7b31f8cb41796309b7a93adb113485efd14882f8af321989ce900a9b SHA512 083baa8a5eb53247aff8d5b9b2144e0f63adb9400934297bbd80bfcec607dd90a34def4301045a60472ef10b0fb90ab84692fc08f786e7f806c28afdab1ef66a
DIST transformers-0.4.3.0.tar.gz 28632 BLAKE2B 92cabcb654bb11854a3bffbb1262f5cd62eda1aff447157086a61ebc451ebf2fddec53b6a2cc058174f24f0f0e32df671d3717e30a542c8dc90cb87e327d990c SHA512 c3ec0893ebba4fbd6087c3202e919552c4a9bff3350b5c0589e7ebb18751a515d98b8cac15b0a3252906ea72b5a0eb09b7fe88c8da88b09d6ce4fbf0f50b2780
-EBUILD ghc-7.10.3.ebuild 21693 BLAKE2B 78f2ccf72b5a7b0ab9fb61ad59cb44b602ac0ab4720a4a46d860dd933620f5986172e85be63a67e5a0d2f157fe281f74b7801f07a0fdeb6e26a493e5935a995d SHA512 15591a3661696b6ef2b01445d83cf6f33b1c66e8310c2e38a4c019543a5b5eb8515ce0fabe4ebbcb6f2589c11a19205ef54f7418c968973a4809c3802359215a
-EBUILD ghc-7.8.4.ebuild 19824 BLAKE2B ca021443410d34fe8a67fb4b4124b2ffc7ddbba0156fd9d1d574bcc819c9239e788e4f3a751383f5fba8bf3b13ff46b8c81d1866e880c3b2bbd3a241fdeeb684 SHA512 9cc0ac4c6a4cf6bf11ab73b5c5f37e2e4554b77f98434c648e8429c50ed008519185f5424057d734b595c754ea2170c6542e0e0c9b015c4dfdca721cfa9c6f5d
-EBUILD ghc-8.0.2.ebuild 21608 BLAKE2B b72e44acd3df2a1866f911fbf507b0abdb6f2a42d82bee20fb161084464a5459fd3d747c0f50be561b33dcde1fe895cad97d0a6ea09d3ff840cc1b01eb1be4d9 SHA512 471c80febf2b979be15b3b747cec60fd855ad5a2b4b023c70d3b314122e00b4a6c54b2180f8d25ad0fefcd57bc58e83e6c40b8e87e6b8718d376b78321bddf9d
-EBUILD ghc-8.2.1.ebuild 24831 BLAKE2B 96416bebee7f411a3c047511bfb653ae2f13242f07122db969ee919775c41d6150ea4f49f0c0fc66d97c2be7c69b9e8bce21fab36fc6d0e946aff71fc618630b SHA512 1e85c2cd01069e7a863c264176d3690f26343e3aebcc11a8ccee84be36dbc3673b9fe420e4558eb039fc19ec1d52044fdc2242d38e192331599947e2507a197b
-EBUILD ghc-8.2.2.ebuild 24800 BLAKE2B 5b37be2d91a910d102ab8c1eee628900889e9cb281dcdb1357954b73035fbc46c59ab6acf1e79bff254dc32b14860542923c85accda450d98c89c258e0545c0a SHA512 5956e7ef35528f970b4cba93be8851ee6239e293703a48e3fee445d518b130cb8e9592251080fd25cbeafa3aebc2a8bd8ee78f8bb2f979358f50cf9dab3293ff
-EBUILD ghc-8.4.1.ebuild 24618 BLAKE2B 7a0d7dc1076ae580db5fc42df6bf03d03452ffeffb991b0755ec8dff1e611a08cd41abc18ea3ab35549a3df3ca5914931ece4ab2720c6e704231bae0d35a587f SHA512 010b89559b1f8cd5e7cf55fcdb67d3eb04d6f6d19dae6331db718d2ea056b05717c482c78c87f1b4fd575ecd75e627fcc73e47daea076a44a1f777714d3fdcd9
-EBUILD ghc-8.4.2.ebuild 24843 BLAKE2B 5169665b1042741251bee3518a1f66f04ad0bed20ca90720091d4013e2c335e13b8c267fcd4adfbfbdee03fba7d980a3c377db9f52056c3870cb80785e5125f5 SHA512 88716c59e726b8faf59f444fd6d91a26f839b968fb41f60e96d4ae37a3815745f9220c8ca34a7a9cd79963efd31c1177b023d2dd3d328f70459307889fefdedc
-EBUILD ghc-8.4.3.ebuild 24788 BLAKE2B 898e4ce54eb995a687b812b7a8fecea6c39fdb1bcc3bdf36b621ed880d252c8efeb8c5866828d2c127eb4b2f40bc2e6fa4171e0da264500bec088a72dffa76a2 SHA512 81688cb74ab3860e01d6daa023f295400a51d40c06a1878d05d252589824fdfd56a46841e269a8cad2aef1aaf447c43e922580446ef69981fd8a98eaccaf0d61
-EBUILD ghc-8.6.4.ebuild 25288 BLAKE2B 9465a1b030d93a7f19e342f170adda744b70bbe5c501ce8f67ddfc0ac0e16a63279dfab7b771ccdc280e5533859134dd4c642dd20753c861f97db7c234715ce8 SHA512 e1ab5166aadfaf04dd684bbc3b0cb205c3f657cc78dee1996cdac98dc085387b64d655447ee224b23c063e1c9d92ed1efe8c21fffc20d33407b261bc58b501b0
-EBUILD ghc-8.6.5.ebuild 25606 BLAKE2B 53ebf37e1c8412e086fc483bf3f83c40b2faeca68a0475a15cad38b9f75d94bc885017cca5e607ee766204968b4429c4b6c2acde7b462e367391284cec6c3d17 SHA512 b7d88e4075252c7492e8cc87c3761499b93f43c4858566e47d1929ca2ee68dd05c3560650c319d2cb448687127f90250277dc7c8f756a92290f60722b152edca
-EBUILD ghc-8.8.1.ebuild 26258 BLAKE2B 58f3e1dfd326a36a5f4b1befaf7b70a09f24cb764e722e517ee7e27e35f3df4425b61d56bcc9f582ac1e94ac53f2cd6ede7c01ff8e999980496f11e67267ffce SHA512 45eb991e899bf3d4fe61e98635f78ae9ffecc5435ba7be621b410a2df3be560e1208e0993be5e2a019b79b6ab19a02c1b18e79f4b4d3af1d1dd9d45d2c4d32c5
-EBUILD ghc-8.8.2.ebuild 26214 BLAKE2B 44319d6ca709330c260a89595cd426236474e161212427d2604629d627bab0bf8a67be937a83223c4899cc780567a0a4169cfe2c845dd608b61dd4d527494654 SHA512 54f68171f1c89d998bdc7768f9f731d24c16b3642dddb82b43e3a42d97c9ae5088f9d4c40947cf074173377e4d7c46d56e4d50e1bb8d0520e6f1ea97c2f7ec22
+EBUILD ghc-7.10.3.ebuild 21680 BLAKE2B e66ff4c021021db67975cc979a9e66fedd8d1a06af0bb90b2d5f4bafd53aaf8ff81eed7dd8cdfab02a4dae4bba9e06859a19233423b767aa4aaf16c798407f54 SHA512 0fbe5b28cf59a5a62c9ca4637626f34ecc1c40506062c31ff077b22f4def5b89b2b63a63bdda605e3a0c08780d1ea8a863b041fcfbe10fb8a00b2af22cba968d
+EBUILD ghc-7.8.4.ebuild 19813 BLAKE2B e68fa2cc887773c700082f2931e542643cea5d4e5937966df613ab6162007402a089fa8622ae716812073b10822c503992b5fe06e1212f446f21b0712650349e SHA512 60c2391f3121365dbfe38aabad3498578fa1e62e2f944700a3cc963c0ffbd5fdccc5416c00562ae9aec251586b73ed4dc137cd6ac0b252ede43adff9ed083c61
+EBUILD ghc-8.0.2.ebuild 21603 BLAKE2B ff73c59f0bda917b3697dd616a81b13a20f422e57a0f8953ff9d236bfe454e195f2a5b1c943aaa791c9fad1c1b329d62876e3793caa9633d586d504da741e22a SHA512 caf75e0f0afa2dc6cac50f9ef233eb56ee3a7ee06224f982e92af7308d81b205e5c15939fde7128e23bb340c6631ecad5791c47e8650f85446b019fa35c9f79e
+EBUILD ghc-8.10.1.ebuild 25743 BLAKE2B a300e17111e2b010f3104b390834ce1abef7e93e1b89ec7640f6f86244bb4d8f0dffa186b82c70afd01004c5b362c7adbb5524ddb5e93531f3a45dc564cdefc9 SHA512 194a75123b31b3c325021073edc64b4e1403b9fd66b9b6413e7c49f3c4f0c28774c63ca3e2aaeed068164e4987bb30f91c7285e0b97aacd1c02c38760d17864b
+EBUILD ghc-8.2.1.ebuild 24832 BLAKE2B 7cc220f4b771b73699e7a1c743ffd6833c12fef94b708b8d204ce7df6ad72d309a10279f2f941f29393c096e57244a6e9f7ba9a36784b704916eacb7eff570c3 SHA512 63b3f31cd775b15409ef411004cdb7c54161a33a9c577a282e25de09dfc563d84cbfc21f800111830e1e7b297540f972f4b3e434c4aa92dd4fcc350a37bab636
+EBUILD ghc-8.2.2.ebuild 24801 BLAKE2B 16cce6b61873c9800a0d3da9708617b5d36082bf730f8d7c09490f003f8a5d227ab8fe1c081e3c9803c083e7f334a0dd5bafa8066d8900defce9734df7ee905a SHA512 dbf3e47857474f59bf64f334589db3d9920b25717647cbbf7d7f29420af0f7023a2d6dad3aa91ee7eb2d023558de5758c30242901cbf9885095df4b15e38b717
+EBUILD ghc-8.4.1.ebuild 24619 BLAKE2B e7e4aa8b95f4c227f6ee0416b8577384c90c269a9a01effe5f295772c758f6bb8cfe9c995c7d4719b3ed5e5f0e05071383319ec997365b6652a66ad409496877 SHA512 20377bc82ba6b6da7f5a09313cb6bf3e467361b16e2a294958d61bd3f56eca91c2b92020516071cc25e0533c82869bc50a8d1c83342f990ceec7029c0b4d3082
+EBUILD ghc-8.4.2.ebuild 24844 BLAKE2B 2d815ea8d33027625f0f4f8a75d32e32150d85c9fc783378d0c79af98ac7205cb8bf25e795bb8e7ccd80941b82da8fe1f3a652721f9c31f2a9cb0f667e75ea46 SHA512 fc346dd2d464d3e8265624162ce70e6f160b40b313944602c88b47751a4683ca0bfa507a637d247e34c2905b1e4adaf635f5d3fa0747f0caecbf1ae088a83edb
+EBUILD ghc-8.4.3.ebuild 24789 BLAKE2B 8d4191e4bd518982f8a1f144ac29095cdd5b4f5fe6ba3fe231e3b227127b28016b5c62b83a3c5e3cc6b87ea4a4846f80a7636839c9aebd720d166609618c9da4 SHA512 961a4742ce76470b147f220582ff63d74839051b996928d8367719361e048d1fc5b606ecd02904e21c6cc532b97c3339a9bdedf9461ea6afb6c48b0edf724474
+EBUILD ghc-8.6.4.ebuild 25289 BLAKE2B bf53b84818447bcd942a12f1af974a3f137e910ead6ec877442a1615e26fb1b579fbe2f83998c98dbdc11574d78f0032dc07a6309c5beaf11249bc45cd24f8e8 SHA512 522465b47c2e1c2fc87467f6fac7dac06eff172f71568996ecb4dbac36cfdda23ce10a7e68812de54a4c74433faced696ce39ac54bd9ae45f4c5eada23867704
+EBUILD ghc-8.6.5.ebuild 25607 BLAKE2B 778f0ec72191f6edf04efb5f8fac9a7de8f143ab6bcf0962783fd2f21759d18bd06149129b5ae0070033982d5d38c3a50aa1787834c7b6442690617ab638ce69 SHA512 82f53bf9901189ea7e7d12311db34eb6797a72cffd18011d3f1b1f20c1a3377ac49598b8d8507d2ba3ae72058edb3c51d19d4a1ad645545aa22e86ddf5ae4fd0
+EBUILD ghc-8.8.1.ebuild 26259 BLAKE2B 6ceee4e2783a016ae5bb8fbed41c56813a54bfa52e29848c3493a4cbb7cf56bfb4fb442d65e80678a84fda26d3a3df0f4a070231833ce11da3518a33790bf338 SHA512 422510598addac07b785529d7be3eb8b17a8da602d4394260ae887860cdde08d442736c9a05ec0c09902984ece7d72f4b63249f124971ba63ef926c00d6d8133
+EBUILD ghc-8.8.2.ebuild 26215 BLAKE2B f3b143b12e4d0593327d8fae16cc52386f45409dd3e899c83e1ff039c897ead4fb851237b222b0bff8c742a52c4c064f1ea7994803cb307569b111aa5821a0e0 SHA512 026d6f79d453a679fb885fad3338ad16087ab0c9f6bcd29c8ccd2df24848d8cf5df39843887fe71495076c63d69008390e1f26e410a891ba28b1d4ad994c119e
+EBUILD ghc-8.8.3.ebuild 26277 BLAKE2B f713ba082a0d19f91515e696653adf2eb5a344527b29008e99c5314bec090afbce4af0d005503baba279cb8c83c140495b797bf627ca5ddadcdf642e7cd077d1 SHA512 8cae344ae3791e969f1ee35fdb5134ac36f7c66b26620a529765edb14e5fa2e4f3898da38585168f2fa09beaeec133d7e7d9f145fe4aa62caa3f9830e9af4072
MISC metadata.xml 878 BLAKE2B aa6aa11c4c60763eb1d29253a6b63057ce98b16dce26d46de216064809665330102cb5313258197a95dda4be91ff843fbe778090110460883f5a367fe4837afd SHA512 97c636844d70431fc41a39318d2d29bf686fab362d0f962a95039c740ef91c6642f229539f34493e7a3f300211d6550a5a976d84d0fcef6f7dfaf026bcbc62e2
diff --git a/dev-lang/ghc/files/ghc-8.10.1-allow-cross-bootstrap.patch b/dev-lang/ghc/files/ghc-8.10.1-allow-cross-bootstrap.patch
new file mode 100644
index 000000000000..7495cc8bff8d
--- /dev/null
+++ b/dev-lang/ghc/files/ghc-8.10.1-allow-cross-bootstrap.patch
@@ -0,0 +1,17 @@
+Allow using cross-compilers to bootstrap GHC.
+
+In my case I'm using "cross"-compiler from
+x86_64-unknown-linux to x86_64-HEAD-linux.
+
+Those targets have the same ABI and can boot one another.
+--- a/configure.ac
++++ b/configure.ac
+@@ -219,7 +219,7 @@ then
+ echo "This GHC (${WithGhc}) does not generate code for the build platform"
+ echo " GHC target platform : $bootstrap_target"
+ echo " Desired build platform : $BuildPlatform"
+- exit 1
++ #exit 1
+ fi
+
+ # Testing if we shall enable shared libs support on Solaris.
diff --git a/dev-lang/ghc/files/ghc-8.10.1-no-relax-everywhere.patch b/dev-lang/ghc/files/ghc-8.10.1-no-relax-everywhere.patch
new file mode 100644
index 000000000000..19c8b4bccc48
--- /dev/null
+++ b/dev-lang/ghc/files/ghc-8.10.1-no-relax-everywhere.patch
@@ -0,0 +1,19 @@
+https://github.com/gentoo-haskell/gentoo-haskell/issues/704
+
+Allow users to specify -W,--relax externally and pass
+-Wl,-no-relax unconditonally on all arches.
+
+Reported-by: wmyrda
+--- a/compiler/main/DriverPipeline.hs
++++ b/compiler/main/DriverPipeline.hs
+@@ -2144,9 +2144,7 @@ joinObjectFiles dflags o_files output_fn = do
+ -- gcc on sparc sets -Wl,--relax implicitly, but
+ -- -r and --relax are incompatible for ld, so
+ -- disable --relax explicitly.
+- ++ (if platformArch (targetPlatform dflags)
+- `elem` [ArchSPARC, ArchSPARC64]
+- && ldIsGnuLd
++ ++ (if ldIsGnuLd
+ then [SysTools.Option "-Wl,-no-relax"]
+ else [])
+ -- See Note [Produce big objects on Windows]
diff --git a/dev-lang/ghc/ghc-7.10.3.ebuild b/dev-lang/ghc/ghc-7.10.3.ebuild
index 7726e119c3c3..9a351c0e7641 100644
--- a/dev-lang/ghc/ghc-7.10.3.ebuild
+++ b/dev-lang/ghc/ghc-7.10.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -72,7 +72,7 @@ BUMP_LIBRARIES=(
LICENSE="BSD"
SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 ~ia64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux"
IUSE="doc ghcbootstrap ghcmakebinary +gmp"
IUSE+=" binary"
IUSE+=" elibc_glibc" # system stuff
@@ -81,7 +81,7 @@ RDEPEND="
>=dev-lang/perl-5.6.1
>=dev-libs/gmp-5:=
sys-libs/ncurses:0=[unicode]
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
"
# This set of dependencies is needed to run
diff --git a/dev-lang/ghc/ghc-7.8.4.ebuild b/dev-lang/ghc/ghc-7.8.4.ebuild
index b368f87ec193..bd936355ae3f 100644
--- a/dev-lang/ghc/ghc-7.8.4.ebuild
+++ b/dev-lang/ghc/ghc-7.8.4.ebuild
@@ -65,7 +65,7 @@ S="${WORKDIR}"/${GHC_P}
SRC_URI+=" https://dev.gentoo.org/~slyfox/distfiles/${P}-ia64-CLOSUREs-regenerated.patch.gz"
LICENSE="BSD"
SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 ~ia64 ppc ppc64 x86 ~amd64-linux ~x86-linux"
IUSE="doc ghcbootstrap ghcmakebinary +gmp"
IUSE+=" binary"
IUSE+=" elibc_glibc" # system stuff
@@ -74,7 +74,7 @@ RDEPEND="
>=dev-lang/perl-5.6.1
>=dev-libs/gmp-5:=
sys-libs/ncurses:0=[unicode]
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
"
PREBUILT_BINARY_DEPENDS="
diff --git a/dev-lang/ghc/ghc-8.0.2.ebuild b/dev-lang/ghc/ghc-8.0.2.ebuild
index 853817376276..40cc58192d97 100644
--- a/dev-lang/ghc/ghc-8.0.2.ebuild
+++ b/dev-lang/ghc/ghc-8.0.2.ebuild
@@ -71,7 +71,7 @@ BUMP_LIBRARIES=(
LICENSE="BSD"
SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 ia64 x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 ~ia64 x86 ~amd64-linux ~x86-linux"
IUSE="doc ghcbootstrap ghcmakebinary +gmp +profile"
IUSE+=" binary"
@@ -79,7 +79,7 @@ RDEPEND="
>=dev-lang/perl-5.6.1
dev-libs/gmp:0=
sys-libs/ncurses:0=[unicode]
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
"
# This set of dependencies is needed to run
diff --git a/dev-lang/ghc/ghc-8.10.1.ebuild b/dev-lang/ghc/ghc-8.10.1.ebuild
new file mode 100644
index 000000000000..b9624ca1fcce
--- /dev/null
+++ b/dev-lang/ghc/ghc-8.10.1.ebuild
@@ -0,0 +1,794 @@
+# 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=""
+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} )"
+
+REQUIRED_USE="?? ( ghcbootstrap 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-no-relax-everywhere.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=$(pkg-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/ghc/ghc-8.2.1.ebuild b/dev-lang/ghc/ghc-8.2.1.ebuild
index 266b59e2bfe8..c701609e940a 100644
--- a/dev-lang/ghc/ghc-8.2.1.ebuild
+++ b/dev-lang/ghc/ghc-8.2.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -75,7 +75,7 @@ RDEPEND="
>=dev-lang/perl-5.6.1
dev-libs/gmp:0=
sys-libs/ncurses:0=[unicode]
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
"
# This set of dependencies is needed to run
diff --git a/dev-lang/ghc/ghc-8.2.2.ebuild b/dev-lang/ghc/ghc-8.2.2.ebuild
index 6db8290ea34b..7304fe4bcc2e 100644
--- a/dev-lang/ghc/ghc-8.2.2.ebuild
+++ b/dev-lang/ghc/ghc-8.2.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -75,7 +75,7 @@ RDEPEND="
>=dev-lang/perl-5.6.1
dev-libs/gmp:0=
sys-libs/ncurses:0=[unicode]
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
"
# This set of dependencies is needed to run
diff --git a/dev-lang/ghc/ghc-8.4.1.ebuild b/dev-lang/ghc/ghc-8.4.1.ebuild
index 2fb1025b91f4..bb77c83651a1 100644
--- a/dev-lang/ghc/ghc-8.4.1.ebuild
+++ b/dev-lang/ghc/ghc-8.4.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -75,7 +75,7 @@ RDEPEND="
>=dev-lang/perl-5.6.1
dev-libs/gmp:0=
sys-libs/ncurses:0=[unicode]
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
"
# This set of dependencies is needed to run
diff --git a/dev-lang/ghc/ghc-8.4.2.ebuild b/dev-lang/ghc/ghc-8.4.2.ebuild
index 529e6682ff97..1560843584db 100644
--- a/dev-lang/ghc/ghc-8.4.2.ebuild
+++ b/dev-lang/ghc/ghc-8.4.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -75,7 +75,7 @@ RDEPEND="
>=dev-lang/perl-5.6.1
dev-libs/gmp:0=
sys-libs/ncurses:0=[unicode]
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
"
# This set of dependencies is needed to run
diff --git a/dev-lang/ghc/ghc-8.4.3.ebuild b/dev-lang/ghc/ghc-8.4.3.ebuild
index 238882613374..8d8af4264738 100644
--- a/dev-lang/ghc/ghc-8.4.3.ebuild
+++ b/dev-lang/ghc/ghc-8.4.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -75,7 +75,7 @@ RDEPEND="
>=dev-lang/perl-5.6.1
dev-libs/gmp:0=
sys-libs/ncurses:0=[unicode]
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
"
# This set of dependencies is needed to run
diff --git a/dev-lang/ghc/ghc-8.6.4.ebuild b/dev-lang/ghc/ghc-8.6.4.ebuild
index 9400b701afb3..2d192b4e58e0 100644
--- a/dev-lang/ghc/ghc-8.6.4.ebuild
+++ b/dev-lang/ghc/ghc-8.6.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -81,7 +81,7 @@ RDEPEND="
>=dev-lang/perl-5.6.1
dev-libs/gmp:0=
sys-libs/ncurses:0=[unicode]
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
"
# This set of dependencies is needed to run
diff --git a/dev-lang/ghc/ghc-8.6.5.ebuild b/dev-lang/ghc/ghc-8.6.5.ebuild
index 2e4e523c095c..e95768813eac 100644
--- a/dev-lang/ghc/ghc-8.6.5.ebuild
+++ b/dev-lang/ghc/ghc-8.6.5.ebuild
@@ -85,7 +85,7 @@ RDEPEND="
dev-libs/gmp:0=
sys-libs/ncurses:0=[unicode]
elfutils? ( dev-libs/elfutils )
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
numa? ( sys-process/numactl )
"
diff --git a/dev-lang/ghc/ghc-8.8.1.ebuild b/dev-lang/ghc/ghc-8.8.1.ebuild
index 7b8c9321190f..8d13a22eea76 100644
--- a/dev-lang/ghc/ghc-8.8.1.ebuild
+++ b/dev-lang/ghc/ghc-8.8.1.ebuild
@@ -84,7 +84,7 @@ RDEPEND="
dev-libs/gmp:0=
sys-libs/ncurses:0=[unicode]
elfutils? ( dev-libs/elfutils )
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
numa? ( sys-process/numactl )
"
diff --git a/dev-lang/ghc/ghc-8.8.2.ebuild b/dev-lang/ghc/ghc-8.8.2.ebuild
index 0726cf1c9bc7..4d206d287dd2 100644
--- a/dev-lang/ghc/ghc-8.8.2.ebuild
+++ b/dev-lang/ghc/ghc-8.8.2.ebuild
@@ -84,7 +84,7 @@ RDEPEND="
dev-libs/gmp:0=
sys-libs/ncurses:0=[unicode]
elfutils? ( dev-libs/elfutils )
- !ghcmakebinary? ( virtual/libffi:= )
+ !ghcmakebinary? ( dev-libs/libffi:= )
numa? ( sys-process/numactl )
"
diff --git a/dev-lang/ghc/ghc-8.8.3.ebuild b/dev-lang/ghc/ghc-8.8.3.ebuild
new file mode 100644
index 000000000000..5d6e67ece459
--- /dev/null
+++ b/dev-lang/ghc/ghc-8.8.3.ebuild
@@ -0,0 +1,805 @@
+# 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? ( !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 1
+ # return 0
+ # ;;
+ #sparc) return 0 ;;
+ x86) return 0 ;;
+ *) return 1 ;;
+ esac
+}
+
+GHC_PV=${PV}
+#GHC_PV=8.6.0.20180810 # 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=""
+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} )"
+
+REQUIRED_USE="?? ( ghcbootstrap 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
+ # hardened-gcc needs to be disabled, because our prebuilt binaries/libraries
+ # are not built with fPIC, bug #606666
+ gcc-specs-pie && append-ghc-cflags persistent compile link -nopie
+ tc-is-gcc && ver_test $(gcc-version) -ge 6.3 && if ! use ghcbootstrap; then
+ # gcc-6.3 has support for -no-pie upstream, but spelling differs from
+ # gentoo-specific '-nopie'. We enable it in non-bootstrap to allow
+ # hardened users try '-pie' in USE=ghcbootstrap mode.
+ append-ghc-cflags compile link -no-pie
+ fi
+
+ # 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.0.2-no-relax-everywhere.patch
+ eapply "${FILESDIR}"/${PN}-8.4.2-allow-cross-bootstrap.patch
+ eapply "${FILESDIR}"/${PN}-8.6.5-numa.patch
+ # rumors say this is fixed properly in 8.8.3. Let's check!
+ #eapply "${FILESDIR}"/${PN}-8.8.1-revert-CPP.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=$(pkg-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 elfutils && echo --enable-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" "ANNOUNCE" "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/gnat-gpl/Manifest b/dev-lang/gnat-gpl/Manifest
index f1f1399fab68..b6941504a76c 100644
--- a/dev-lang/gnat-gpl/Manifest
+++ b/dev-lang/gnat-gpl/Manifest
@@ -36,8 +36,8 @@ DIST gnat-gpl-2014-x86_64-linux-bin.tar.gz 236253400 BLAKE2B c1db70db9442ba24688
DIST gnat-gpl-2016-src.tar.gz 8857249 BLAKE2B 3ff0fe247990e2a612ac989aa389e9ccae2e29c16177975c327b53ae1471030d0a70e5a2e3af219ad9a3288c241f2d18da349d0650f7fde01d439f4e4720de88 SHA512 4a5cb58ede5b4ae2887e64f0f2e12e0e06470d320796f06d02f7ddd932ff0d3b40e6d3e98a81138fff6906548a55153c2a186ff4a6e3d23b9dbe01ca582da1f8
DIST gnat-gpl-2017-src.tar.gz 8783473 BLAKE2B b0415b42f4d3a5e8675591a5602ff0a96945670104064671a232c0c12271ee141a3a5d148b8507bdab83cb8a0677c57b78e690060088308c51732bad3715964f SHA512 ae7314a2241107ed4d962dce08306eeb34c5f11e26183935bbb1ccf3a5eb011d6457c1b6fcded93dd0ee9ba31d791971ebe2a5a5a0ae04ff80d87a670325a098
DIST gnat-gpl-2018-src.tar.gz 8706578 BLAKE2B ba245fd91cc5263d5b8c159d9e75caf6bed21dcaa5fa43734af8775a4008ce5f96bfb84a8b5e6e734ff883314ab3219dacec3fe95a5baa33fb712bfb5ff8bce8 SHA512 0ff7e848ef77f7e772e2a1b01905307a91c332f32329456f5238c4b7eb46cc118709e8682a5fc826d98a7d99fd15a92c194f4a278f04bc465165cfa616cc3c2e
-EBUILD gnat-gpl-2016-r4.ebuild 4568 BLAKE2B 0b393f4fd60acae6bf0c735c364a60bee5897ca84875cbbcad0e9282473b454c6eb7ca0deb28db6c8c63adf1191d0be79820940fcda77fd89e7d9c01cd9b6fc2 SHA512 863bb4b5b4a961605d74cce3d5ea0864c1055d1bb32eaa825a1d79c89471152e9d668d23c387b580f1894d60afab6defa7c2196fdfdc9473e62183af555d6366
-EBUILD gnat-gpl-2017-r1.ebuild 4009 BLAKE2B 3b3db2ca06eac7fa1024d78e31e6aa134d7b932547d7b8fb6102a31ad0ad178b9913128451c79d38c6df924622f78d1c26c9f86c3fe765ce7abc55e7cbdbac84 SHA512 618a17058917ba227e52a26f21626e3ba2d2b3abae304d52719bcb10f1314c51efb7c350fc2c82b557e0aa071e59bffac638eede999587aecd5d1faf4745cbc0
-EBUILD gnat-gpl-2018-r3.ebuild 4019 BLAKE2B 3a58368ea3baa6e29f03037d9d3f5865e130315b803432deb3be852dc00ea0e6c02f89387e2ecaa92cc93bd4cf4ca308c47a17f703bc66bd25584c2dec32f9df SHA512 303dcd36a49c2c5d68e80b116f668242ee1f78ede06d8586f3b39eed85ee514ba5ad5d5aadd95a80e8a554e9876137899b3e8bb558ba32a5607882e9b95180e9
-EBUILD gnat-gpl-2019-r1.ebuild 3873 BLAKE2B 8dd0490473434d5b839c8470bfe0107cc19272a0d05d27f0a26f13126c12f85ca3d7df33b076f5d20daf52fdb3db8f4c265622719257214c9ce065f580716cbc SHA512 0dcdd38fba83cf2fd93931a58e509e8cbce4f63168c221e3c4189b994ea2b496610626f5e036eea9273f99beb3fa3106e975d8207a946da7178c33d4b7d2a904
-MISC metadata.xml 2152 BLAKE2B 31bff57d2fd31dd4586511ff401529e315e07eb28f857d2b48c6cbfc2ab1d4269deeb845d70c149c36eaf9d04767e4fab7671aab1b4d31b5c0581361a8ef7ebd SHA512 f16c1bd61c46551986d15a9941a334486092aa32a1e7e922e5d368e57c07ef32fd8ad4f9e14853882f7ad20afc1295062b2578b64d5e6fa4ce9dfd19847299b3
+EBUILD gnat-gpl-2016-r4.ebuild 4316 BLAKE2B 6188e89ac12051f44e9ba487950530ff6a9015b7df36eaca8d429841ee1073d52dac113881a0922fe132328c7ce73a8cd10367bc22a7ac881a5d9690b35d8c65 SHA512 6e21b8e192db5f904712c3c939596abd9c61ba4752fbf65284019a99da11f7c26768ad883692900334a92b62d9bb2872a2a0f70b14f5abab6fdca34e4cd6e89e
+EBUILD gnat-gpl-2017-r1.ebuild 3757 BLAKE2B cd57c0e594381937659b2d8d60b12022e0ffdb2aa2834011e03709c50a69fb9d9e995fab29ada2a65f81f4f548253ad664f1d6dac24f51f75f4ed10d38fdfa44 SHA512 d639e62c1d91ba72fce153acd95edba60e063204637a3df7c21adc0bc50b302c367b0f630e0aed05c41c281b78444fea986dbd4eae6b98984855eda7249805ac
+EBUILD gnat-gpl-2018-r3.ebuild 3767 BLAKE2B 720479ba962055058c5177c64f3a537e0a9ef035619eafbd7257494c82664759f4ac1b9f5980e2ca4e0c206791ba9c8435fba7ccf8ca48075bbf900b43e2a1bf SHA512 01604b11e918c547fe9d3f08ecb16c305b7f13d99d0843598de1609f33544db45393e3f012c1cad2a5ee2a4751ee93200bdd373e7fc5a574611d4930eae2915a
+EBUILD gnat-gpl-2019-r1.ebuild 3621 BLAKE2B c6abf8494e8b562b08c050dc16c982615c3284583a69ffe8c626a20a3911f35c2a931a7cde5b0987a4b2b3eff5148e1068607f93ed1429ab55d52d3ad251555f SHA512 a1e5407e3b0637b6c233b12129129de896344428860fa8f0de045715c243cc508f42e57cbb8ac380be0a889005081ae6a2646fac10f389e3cf2f9a9688f61191
+MISC metadata.xml 2217 BLAKE2B 3862fbb5ca8625a16c4031de574ff280c9aef0522dee6a8578615d5161daefaf636c8564cb4995e0096ff74728c9bb68e61af93c799c736c1f0fb69b34a4d1d3 SHA512 5880952bc0f2de368250178859059204fc527dd8e3b178ef689e5f1cebae90dd65840658afeda3f1ac18115ef6023b9ebea45a485e56dcfec719ce091f36c274
diff --git a/dev-lang/gnat-gpl/gnat-gpl-2016-r4.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2016-r4.ebuild
index 555b2df05631..b10bbb93de4e 100644
--- a/dev-lang/gnat-gpl/gnat-gpl-2016-r4.ebuild
+++ b/dev-lang/gnat-gpl/gnat-gpl-2016-r4.ebuild
@@ -53,7 +53,7 @@ SRC_URI+="
LICENSE+=" GPL-2 GPL-3"
SLOT="${TOOLCHAIN_GCC_PV}"
KEYWORDS="amd64 x86"
-IUSE="+bootstrap"
+IUSE="+ada +bootstrap"
RESTRICT="!test? ( test )"
RDEPEND="!sys-devel/gcc:${TOOLCHAIN_GCC_PV}"
@@ -145,22 +145,11 @@ src_prepare() {
src_configure() {
downgrade_arch_flags "$(gcc-version)"
toolchain_src_configure \
- --enable-languages=ada \
- --disable-libada \
CC=${GCC} \
GNATBIND=${GNATBIND} \
GNATMAKE=yes
}
-src_compile() {
- unset ADAFLAGS
- toolchain_src_compile
- gcc_do_make "-C gcc gnatlib-shared"
- ln -s gcc ../build/prev-gcc || die
- ln -s ${CHOST} ../build/prev-${CHOST} || die
- gcc_do_make "-C gcc gnattools"
-}
-
pkg_postinst() {
toolchain_pkg_postinst
einfo "This provide the GNAT compiler with gcc for ada/c/c++ and more"
diff --git a/dev-lang/gnat-gpl/gnat-gpl-2017-r1.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2017-r1.ebuild
index 8a6cf4555b8c..a0efa9b463c1 100644
--- a/dev-lang/gnat-gpl/gnat-gpl-2017-r1.ebuild
+++ b/dev-lang/gnat-gpl/gnat-gpl-2017-r1.ebuild
@@ -40,7 +40,7 @@ HOMEPAGE="http://libre.adacore.com/"
LICENSE+=" GPL-2 GPL-3"
SLOT="${TOOLCHAIN_GCC_PV}"
KEYWORDS="amd64 x86"
-IUSE="+bootstrap"
+IUSE="+ada +bootstrap"
RESTRICT="!test? ( test )"
RDEPEND="!sys-devel/gcc:${TOOLCHAIN_GCC_PV}"
@@ -130,18 +130,7 @@ src_prepare() {
src_configure() {
export PATH=${PWD}/bin:${PATH}
downgrade_arch_flags "$(gcc-version)"
- toolchain_src_configure \
- --enable-languages=ada \
- --disable-libada
-}
-
-src_compile() {
- unset ADAFLAGS
- toolchain_src_compile
- gcc_do_make "-C gcc gnatlib-shared"
- ln -s gcc ../build/prev-gcc || die
- ln -s ${CHOST} ../build/prev-${CHOST} || die
- gcc_do_make "-C gcc gnattools"
+ toolchain_src_configure
}
pkg_postinst() {
diff --git a/dev-lang/gnat-gpl/gnat-gpl-2018-r3.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2018-r3.ebuild
index 6559a30cfa32..239c00d759da 100644
--- a/dev-lang/gnat-gpl/gnat-gpl-2018-r3.ebuild
+++ b/dev-lang/gnat-gpl/gnat-gpl-2018-r3.ebuild
@@ -39,7 +39,7 @@ HOMEPAGE="http://libre.adacore.com/"
LICENSE+=" GPL-2 GPL-3"
KEYWORDS="amd64 x86"
-IUSE="+bootstrap"
+IUSE="+ada +bootstrap"
RESTRICT="!test? ( test )"
RDEPEND="!sys-devel/gcc:${TOOLCHAIN_GCC_PV}"
@@ -128,18 +128,7 @@ src_prepare() {
src_configure() {
export PATH=${PWD}/bin:${PATH}
downgrade_arch_flags "$(gcc-version)"
- toolchain_src_configure \
- --enable-languages=ada \
- --disable-libada
-}
-
-src_compile() {
- unset ADAFLAGS
- toolchain_src_compile
- gcc_do_make "-C gcc gnatlib-shared"
- ln -s gcc ../build/prev-gcc || die
- ln -s ${CHOST} ../build/prev-${CHOST} || die
- gcc_do_make "-C gcc gnattools"
+ toolchain_src_configure
}
pkg_postinst() {
diff --git a/dev-lang/gnat-gpl/gnat-gpl-2019-r1.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2019-r1.ebuild
index 2d74d35e7a04..34a131541eaa 100644
--- a/dev-lang/gnat-gpl/gnat-gpl-2019-r1.ebuild
+++ b/dev-lang/gnat-gpl/gnat-gpl-2019-r1.ebuild
@@ -41,7 +41,7 @@ HOMEPAGE="http://libre.adacore.com/"
LICENSE+=" GPL-2 GPL-3"
KEYWORDS="amd64 x86"
-IUSE="+bootstrap"
+IUSE="+ada +bootstrap"
RESTRICT="!test? ( test )"
RDEPEND="!sys-devel/gcc:${TOOLCHAIN_GCC_PV}"
@@ -127,18 +127,7 @@ src_prepare() {
src_configure() {
export PATH=${PWD}/bin:${PATH}
downgrade_arch_flags "$(gcc-version)"
- toolchain_src_configure \
- --enable-languages=ada \
- --disable-libada
-}
-
-src_compile() {
- unset ADAFLAGS
- toolchain_src_compile
- gcc_do_make "-C gcc gnatlib-shared"
- ln -s gcc ../build/prev-gcc || die
- ln -s ${CHOST} ../build/prev-${CHOST} || die
- gcc_do_make "-C gcc gnattools"
+ toolchain_src_configure
}
pkg_postinst() {
diff --git a/dev-lang/gnat-gpl/metadata.xml b/dev-lang/gnat-gpl/metadata.xml
index 923cfc961fa4..d3aadec0e515 100644
--- a/dev-lang/gnat-gpl/metadata.xml
+++ b/dev-lang/gnat-gpl/metadata.xml
@@ -5,6 +5,7 @@
<email>ada@gentoo.org</email>
</maintainer>
<use>
+ <flag name="ada">Build the ADA language (GNAT) frontend</flag>
<flag name="awt">Useful only when building GCJ, this enables Abstract
Window Toolkit (AWT) peer support on top of GTK+</flag>
<flag name="bootstrap">Used to bootstrap gnat-gpl</flag>
diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest
index a27679b7318a..54ec2f860ae8 100644
--- a/dev-lang/go/Manifest
+++ b/dev-lang/go/Manifest
@@ -9,17 +9,11 @@ DIST go-linux-ppc64-bootstrap-1.8.tbz 52315782 BLAKE2B 6be0a48e8bc4e5fed4d34f8aa
DIST go-linux-ppc64le-bootstrap-1.8.tbz 52211575 BLAKE2B 7a28ec5a381369c4e9415c8360e904c2545380513afd328077c584e8af0bf6bd818aa03e5a58c350cbb98facc1c9dccb02b06adcb27233875497cf5d33265912 SHA512 6931d999dd0ee1ff44c4cec48acb27af061f57f87aa74802dcebab78553b46bc8ac732f07fe91e5074dbdd32c55b707994875934bfb12bb4276d71eb1d06c4ba
DIST go-linux-s390x-bootstrap-1.8.tbz 57124869 BLAKE2B 920a176b8f4fc3a816e724324bbb30a383d599e31a0d2093d24797dbcd0e799a662a3589dbb87d2f5dd16df07c4cf8f1e444e87b540ec732746bb025dc9271f8 SHA512 d429cae870d66217ab2e07c74209d3031d97baa4f899b4d70ae6283a1a5b1434b037904c4cfca0b2bc798d5ba0b358c3739e000eccbc74809baf564c5686df5a
DIST go-solaris-amd64-bootstrap-1.8.tbz 54926326 BLAKE2B 0a45312f090d81ebf46fe5950cb65c059e2801394231e715e94145d1f918eb59b10472b2385e57ebd5cfb9eca0ad7290fb118436486b665520bb540970f971ab SHA512 52b849e5b9a940e10de7ba3df0ebdf6e1c5d631de9581d936c9edf8f38e6bb3314acbc2b2d5202b0528fde2a359d52bc0c6f39acf9b1b614725e4b4a947ed10d
-DIST go1.12.13.src.tar.gz 21980338 BLAKE2B 205bee35a947ccd08f36547530e3de7928f5f3970be89580ddff80f7710dd1dcf4f292c10ec93c27717ce25ce2575f7151129430b80d1fb927872f891166d8db SHA512 a8210ba909c1bb26799625bbf648204dbef5a9f91af323277f76caee489f5912a08e9de686b71fe97d30c7dc171d5f4bcf8a2c2227d02353cfbb7d292c9efc22
-DIST go1.12.15.src.tar.gz 20726294 BLAKE2B d123fc2328bf9db8f7337108e3d6857c31e10829096d47fb58519861b68bc0e2bdc9f032fc076666124ab418d3f37026107d6a853021fecbf26138bf00963572 SHA512 887e331c73b9d174e4a707a85be389fa0de43c77bc191ef5e0fe326ac7285374404450ca081cb8e92514a973d25d0314ca74eb17c8e53f8386e1798edd9d41aa
DIST go1.12.17.src.tar.gz 20725913 BLAKE2B 2eef7374195302656268a42409619445dfeb3ede1f9218ae4eab195916876b97f7510cc62585a0bfdd9f86dddf8a74000032a84b29bc9891d84fc69db94f0274 SHA512 069f8f445d9d2268ebb14b2446fab34843d56283c04561636d122fd8b4c1ea0b63640a84437db7a7be71039440ffe170cd3f8025b03b0acf95f2a56fa2febec6
-DIST go1.13.6.src.tar.gz 21631050 BLAKE2B 8923021d5ff785f5422ee204ee81c986fc066a878a347bc73625974f05045689f694f76147c9bf7956dc59d6e3d3a543f0970e0716df8cd4f6556c28fe23808b SHA512 dffb6e06eea0b1541901dfbed8d28e8cc1eac3184dc40a19ed3637737df796a67a2e7170b228e1003d36b14e6f0f13bb8be9d2a702834a9c06228d1821659528
-DIST go1.13.7.src.tar.gz 21631267 BLAKE2B 9c3096e7c7658e03be52b76298dd409de292929d95448cb8945fe6f263fda774d9d13e124bb978c91b51a3770c0ca81302098b0e915015cfcac5f26256987796 SHA512 f87dd04befbe32c7ff1eb617a756fcc7d85e4236d4b063bbf6091d8911ef147c070808f7f7db536e7a3b3990f61f6fb4666e665217b0807e7e0703e00c5491fa
-DIST go1.13.8.src.tar.gz 21631178 BLAKE2B 1752a4ecc4fd9409ebbb129f6b6edaacb7d9e140e3b0a8cbbb9b16b64b481a375b4fbe2a4814e2a272be4fdb5929e5d40f40778a07d6ff0b814230b2d4ed9697 SHA512 5df45c4701631e7a70f4f25b07ed00dc9a56bdebeb5ead2d04e0e6b000e8a9f00d193247e626ef5b1e6b7fc54bf27fbc5e8fb21b23ab52ec397f2238c5dfa000
-EBUILD go-1.12.13.ebuild 6436 BLAKE2B 6f52ccf741bd999cca536d599abe82ba955d0563fde091fd4f2244355ac6c12669750c595b0fbb6b8e50afd35f8101fcabc99b28826be77f626a4df0a76b9528 SHA512 5ee9fd4957f0302ecd931ee87b3b6dc30ba4e010bf5c1e33e94a70197af90f3d6d6c198336205d7a13eb6dee39b103d823483ee28281619adefea0ed38c91025
-EBUILD go-1.12.15.ebuild 6436 BLAKE2B 3f4c71b8afebc5943835a0b024e6da5b5f92d3ef70f83484dafbcd562430852fdd5a452b91977f38bb732ac52b469c7c9acf8c51e0170f4834473bc6543bad7e SHA512 4a861011e665d4d62aa8df84c33f24874b6e27b28adc214e55ddce6998183fe813db13576db4143cd6da57e05f91a9f7eff2d9041dd9ff64081a4c6d70650f0a
-EBUILD go-1.12.17.ebuild 6440 BLAKE2B 1db94da86382beb7a80c68d443b32f570d559f97a29d4575d63323b49f67455bc7569492f315549bbe7fd9e231a1cdb58d3201c7c557c35bb884b715424bc3bd SHA512 98812fb174ef381507587d667e0b7a1f91bd222ba8acd82a3a98b6e2c2b0ea4b467cc5bdca17827f328f4cd7a097925ea8e8790a3b418e4a5e731bb090d06d67
-EBUILD go-1.13.6.ebuild 4408 BLAKE2B 6d6528b9f8e3683aeb74f7231f59738f7b27cc651b0a8a2d10dab0010c34481716284f4623480fd619b242cf623e0527ad4bc273d131f4d7edecb8a5c910c6ef SHA512 72807628d3cbb06cf02fd098e911b768c248793363138445beda94192b04df383eb14a699c4657a2e40d35181fd9dd480ef3965de5adf68ff69b8436972c4f87
-EBUILD go-1.13.7.ebuild 4408 BLAKE2B 6d6528b9f8e3683aeb74f7231f59738f7b27cc651b0a8a2d10dab0010c34481716284f4623480fd619b242cf623e0527ad4bc273d131f4d7edecb8a5c910c6ef SHA512 72807628d3cbb06cf02fd098e911b768c248793363138445beda94192b04df383eb14a699c4657a2e40d35181fd9dd480ef3965de5adf68ff69b8436972c4f87
-EBUILD go-1.13.8.ebuild 4408 BLAKE2B 6d6528b9f8e3683aeb74f7231f59738f7b27cc651b0a8a2d10dab0010c34481716284f4623480fd619b242cf623e0527ad4bc273d131f4d7edecb8a5c910c6ef SHA512 72807628d3cbb06cf02fd098e911b768c248793363138445beda94192b04df383eb14a699c4657a2e40d35181fd9dd480ef3965de5adf68ff69b8436972c4f87
+DIST go1.13.9.src.tar.gz 21700289 BLAKE2B 7c58dd89d164913dc85c8dc9e8b86798daad8bd58936b0ced21d3c084e0488306577273a6fa748bfee505fd38b90727a3cd9ab4ceebc1e62a0490b992cfa5bbe SHA512 0034ec394141e2c19941bf839cad93992c175476e3f3fa7b483c919aeea01fa4e0136eb8dd87a3158b911c04ded98a3c4960975a13280f1be076eb8f51464a98
+DIST go1.14.1.src.tar.gz 22451159 BLAKE2B 2b45716cdc82edb94609143bcbb79b313ff3b6b1cc9e0791236a8d968a2fc1d84015037a2cfb75e5b73dac4974b97a1e62f1fd1f5afe0dc633137b73ab15004a SHA512 f0112fbf984e2764cd90d42b2f844b986b421adf8bf68551cccefeb320db7f3490ab1532f770f20c943c68c7185ce139c8248991adb0529527358ffdc8047ad9
+EBUILD go-1.12.17.ebuild 6435 BLAKE2B 3dfb8f6d0a788f56bffcee3809739da3c8cf3662962f3d3a995183c7ec79045719dabb2d9651fbcd4b54502dc676b7d1b80f9cca5b959a16c33ceddda4ff28f9 SHA512 69f0c03af4aafeb4bf2ebaaabef0f4ef663972a029c1ed7c6a4369867b3d661393062cac5a0373104a37a49684e8984ffd916336ebc510d61bb5e4005f57744e
+EBUILD go-1.13.9.ebuild 4403 BLAKE2B 32d5161a96996b1c88213e8c1422d78fb33b32f659bfde3de91b140462442adfff12d4ec2ae82cf90b6a27673b93d0836d4bee8bafdf4db7db792117b99aff84 SHA512 57d5bbfeaa99c73c3c2f7d3cdc6291c5b15957f85a081cac61d5a2ac867af21cf8aac18644e2562dc4b0ca09a5f95093345b53891a8d1f8167ed7e64705964c2
+EBUILD go-1.14.1.ebuild 4408 BLAKE2B 6d6528b9f8e3683aeb74f7231f59738f7b27cc651b0a8a2d10dab0010c34481716284f4623480fd619b242cf623e0527ad4bc273d131f4d7edecb8a5c910c6ef SHA512 72807628d3cbb06cf02fd098e911b768c248793363138445beda94192b04df383eb14a699c4657a2e40d35181fd9dd480ef3965de5adf68ff69b8436972c4f87
EBUILD go-9999.ebuild 4408 BLAKE2B 6d6528b9f8e3683aeb74f7231f59738f7b27cc651b0a8a2d10dab0010c34481716284f4623480fd619b242cf623e0527ad4bc273d131f4d7edecb8a5c910c6ef SHA512 72807628d3cbb06cf02fd098e911b768c248793363138445beda94192b04df383eb14a699c4657a2e40d35181fd9dd480ef3965de5adf68ff69b8436972c4f87
MISC metadata.xml 663 BLAKE2B fc92966e1b4a155b4d442842988d0404c0148b029d187ab7294d49dabad771296d63ca3184128ac27cea4e74e7d6cfc8852084ca8f1d15a1d0755586a0bf68de SHA512 f67b7e312cfb2a896552ae73e835d53ffbb0a7c71c30f0a7cb44c65e2753055e185e7a5c48e2cfff33a42609629cc3c32ee56a9d8f61d8429798c1e8424e36bf
diff --git a/dev-lang/go/go-1.12.13.ebuild b/dev-lang/go/go-1.12.13.ebuild
deleted file mode 100644
index d7b266f0c670..000000000000
--- a/dev-lang/go/go-1.12.13.ebuild
+++ /dev/null
@@ -1,246 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-
-MY_PV=${PV/_/}
-
-inherit toolchain-funcs
-
-BOOTSTRAP_VERSION="bootstrap-1.8"
-BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
-BOOTSTRAP_URI="
- ${BOOTSTRAP_DIST}/go-linux-amd64-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-arm-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-arm64-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-ppc64-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-ppc64le-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-s390x-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-386-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-freebsd-amd64-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-freebsd-386-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-darwin-amd64-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-solaris-amd64-${BOOTSTRAP_VERSION}.tbz
-"
-
-case ${PV} in
-*9999*)
- EGIT_REPO_URI="https://github.com/golang/go.git"
- inherit git-r3
- ;;
-*)
- SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
- S="${WORKDIR}"/go
- case ${PV} in
- *_beta*|*_rc*) ;;
- *)
- KEYWORDS="-* amd64 arm arm64 ~ppc64 ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
- # The upstream tests fail under portage but pass if the build is
- # run according to their documentation [1].
- # I am restricting the tests on released versions until this is
- # solved.
- # [1] https://golang.org/issues/18442
- RESTRICT="test"
- ;;
- esac
-esac
-
-# If gccgo or a previously installed version of dev-lang/go is not being
-# used to build Go, there is no way to know the architecture or operating system
-# of the build machine, so we need to download all of our bootstrap
-# archives to allow this ebuild to work under crossdev.
-#
-# https://bugs.gentoo.org/671394
-SRC_URI+="!gccgo? ( !system-bootstrap? ( ${BOOTSTRAP_URI} ) )"
-
-DESCRIPTION="A concurrent garbage collected and typesafe programming language"
-HOMEPAGE="https://golang.org"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-IUSE="gccgo system-bootstrap"
-
-BDEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
-RDEPEND="!<dev-go/go-tools-0_pre20150902"
-
-# These test data objects have writable/executable stacks.
-QA_EXECSTACK="
- usr/lib/go/src/debug/elf/testdata/*.obj
- usr/lib/go/src/*.gox
- "
-
-# Do not complain about CFLAGS, etc, since Go doesn't use them.
-QA_FLAGS_IGNORED='.*'
-
-REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
-
-# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
-QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
-
-# Do not strip this package. Stripping is unsupported upstream and may
-# fail.
-RESTRICT+=" strip"
-
-DOCS=(
-AUTHORS
-CONTRIBUTING.md
-CONTRIBUTORS
-PATENTS
-README.md
-)
-
-go_arch()
-{
- # By chance most portage arch names match Go
- local portage_arch=$(tc-arch $@)
- case "${portage_arch}" in
- x86) echo 386;;
- x64-*) echo amd64;;
- ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
- s390) echo s390x ;;
- *) echo "${portage_arch}";;
- esac
-}
-
-go_arm()
-{
- case "${1:-${CHOST}}" in
- armv5*) echo 5;;
- armv6*) echo 6;;
- armv7*) echo 7;;
- *)
- die "unknown GOARM for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_os()
-{
- case "${1:-${CHOST}}" in
- *-linux*) echo linux;;
- *-darwin*) echo darwin;;
- *-freebsd*) echo freebsd;;
- *-netbsd*) echo netbsd;;
- *-openbsd*) echo openbsd;;
- *-solaris*) echo solaris;;
- *-cygwin*|*-interix*|*-winnt*)
- echo windows
- ;;
- *)
- die "unknown GOOS for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_tuple()
-{
- echo "$(go_os $@)_$(go_arch $@)"
-}
-
-go_cross_compile()
-{
- [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
-}
-
-pkg_pretend()
-{
- # make.bash does not understand cross-compiling a cross-compiler
- if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
- die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
- fi
- [[ ${MERGE_TYPE} != binary ]] &&
- use system-bootstrap && ! has_version "dev-lang/go" &&
- die "dev-lang/go must be installed to use the system-bootstrap use flag"
-}
-
-src_unpack()
-{
- if [[ ${PV} = 9999 ]]; then
- git-r3_src_unpack
- else
- unpack "go${MY_PV}.src.tar.gz"
- fi
- use gccgo || use system-bootstrap ||
- unpack "go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-${BOOTSTRAP_VERSION}.tbz"
-}
-
-src_compile()
-{
- export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-bootstrap
- if use gccgo; then
- mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
- local go_binary=$(gcc-config --get-bin-path)/go-$(gcc-major-version)
- [[ -x ${go_binary} ]] || go_binary=$(
- find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-$(gcc-major-version) |
- sort -V | tail -n1)
- [[ -x ${go_binary} ]] ||
- die "go-$(gcc-major-version): command not found"
- ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
- elif use system-bootstrap; then
- export GOROOT_BOOTSTRAP="${EPREFIX}"/usr/lib/go
- fi
- export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
- export GOROOT="$(pwd)"
- export GOBIN="${GOROOT}/bin"
-
- # Go's build script does not use BUILD/HOST/TARGET consistently. :(
- export GOHOSTARCH=$(go_arch ${CBUILD})
- export GOHOSTOS=$(go_os ${CBUILD})
- export CC=$(tc-getBUILD_CC)
-
- export GOARCH=$(go_arch)
- export GOOS=$(go_os)
- export CC_FOR_TARGET=$(tc-getCC)
- export CXX_FOR_TARGET=$(tc-getCXX)
- if [[ ${ARCH} == arm ]]; then
- export GOARM=$(go_arm)
- fi
-
- cd src
- ./make.bash || die "build failed"
-}
-
-src_test()
-{
- go_cross_compile && return 0
-
- cd src
- PATH="${GOBIN}:${PATH}" \
- ./run.bash -no-rebuild || die "tests failed"
-}
-
-src_install()
-{
- local bin_path f x
-
- dodir /usr/lib/go
-
- # There is a known issue which requires the source tree to be installed [1].
- # Once this is fixed, we can consider using the doc use flag to control
- # installing the doc and src directories.
- # [1] https://golang.org/issue/2775
- #
- # deliberately use cp to retain permissions
- cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
- if go_cross_compile; then
- bin_path="bin/$(go_tuple)"
- else
- bin_path=bin
- fi
- for x in ${bin_path}/*; do
- f=${x##*/}
- dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
- done
- einstalldocs
-
- if [[ ${CHOST} == *-darwin* ]] ; then
- # fix install_name for test object (binutils_test) on Darwin, it
- # is never used in real circumstances
- local libmac64="${EPREFIX}"/usr/lib/go/src/cmd/vendor/github.com/
- libmac64+=google/pprof/internal/binutils/testdata/lib_mac_64
- install_name_tool -id "${libmac64}" "${D}${libmac64}"
- fi
-}
diff --git a/dev-lang/go/go-1.12.15.ebuild b/dev-lang/go/go-1.12.15.ebuild
deleted file mode 100644
index 3d894c6b9d31..000000000000
--- a/dev-lang/go/go-1.12.15.ebuild
+++ /dev/null
@@ -1,246 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-
-MY_PV=${PV/_/}
-
-inherit toolchain-funcs
-
-BOOTSTRAP_VERSION="bootstrap-1.8"
-BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
-BOOTSTRAP_URI="
- ${BOOTSTRAP_DIST}/go-linux-amd64-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-arm-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-arm64-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-ppc64-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-ppc64le-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-s390x-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-linux-386-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-freebsd-amd64-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-freebsd-386-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-darwin-amd64-${BOOTSTRAP_VERSION}.tbz
- ${BOOTSTRAP_DIST}/go-solaris-amd64-${BOOTSTRAP_VERSION}.tbz
-"
-
-case ${PV} in
-*9999*)
- EGIT_REPO_URI="https://github.com/golang/go.git"
- inherit git-r3
- ;;
-*)
- SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
- S="${WORKDIR}"/go
- case ${PV} in
- *_beta*|*_rc*) ;;
- *)
- KEYWORDS="-* amd64 arm ~arm64 ppc64 ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
- # The upstream tests fail under portage but pass if the build is
- # run according to their documentation [1].
- # I am restricting the tests on released versions until this is
- # solved.
- # [1] https://golang.org/issues/18442
- RESTRICT="test"
- ;;
- esac
-esac
-
-# If gccgo or a previously installed version of dev-lang/go is not being
-# used to build Go, there is no way to know the architecture or operating system
-# of the build machine, so we need to download all of our bootstrap
-# archives to allow this ebuild to work under crossdev.
-#
-# https://bugs.gentoo.org/671394
-SRC_URI+="!gccgo? ( !system-bootstrap? ( ${BOOTSTRAP_URI} ) )"
-
-DESCRIPTION="A concurrent garbage collected and typesafe programming language"
-HOMEPAGE="https://golang.org"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-IUSE="gccgo system-bootstrap"
-
-BDEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
-RDEPEND="!<dev-go/go-tools-0_pre20150902"
-
-# These test data objects have writable/executable stacks.
-QA_EXECSTACK="
- usr/lib/go/src/debug/elf/testdata/*.obj
- usr/lib/go/src/*.gox
- "
-
-# Do not complain about CFLAGS, etc, since Go doesn't use them.
-QA_FLAGS_IGNORED='.*'
-
-REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
-
-# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
-QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
-
-# Do not strip this package. Stripping is unsupported upstream and may
-# fail.
-RESTRICT+=" strip"
-
-DOCS=(
-AUTHORS
-CONTRIBUTING.md
-CONTRIBUTORS
-PATENTS
-README.md
-)
-
-go_arch()
-{
- # By chance most portage arch names match Go
- local portage_arch=$(tc-arch $@)
- case "${portage_arch}" in
- x86) echo 386;;
- x64-*) echo amd64;;
- ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
- s390) echo s390x ;;
- *) echo "${portage_arch}";;
- esac
-}
-
-go_arm()
-{
- case "${1:-${CHOST}}" in
- armv5*) echo 5;;
- armv6*) echo 6;;
- armv7*) echo 7;;
- *)
- die "unknown GOARM for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_os()
-{
- case "${1:-${CHOST}}" in
- *-linux*) echo linux;;
- *-darwin*) echo darwin;;
- *-freebsd*) echo freebsd;;
- *-netbsd*) echo netbsd;;
- *-openbsd*) echo openbsd;;
- *-solaris*) echo solaris;;
- *-cygwin*|*-interix*|*-winnt*)
- echo windows
- ;;
- *)
- die "unknown GOOS for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_tuple()
-{
- echo "$(go_os $@)_$(go_arch $@)"
-}
-
-go_cross_compile()
-{
- [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
-}
-
-pkg_pretend()
-{
- # make.bash does not understand cross-compiling a cross-compiler
- if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
- die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
- fi
- [[ ${MERGE_TYPE} != binary ]] &&
- use system-bootstrap && ! has_version "dev-lang/go" &&
- die "dev-lang/go must be installed to use the system-bootstrap use flag"
-}
-
-src_unpack()
-{
- if [[ ${PV} = 9999 ]]; then
- git-r3_src_unpack
- else
- unpack "go${MY_PV}.src.tar.gz"
- fi
- use gccgo || use system-bootstrap ||
- unpack "go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-${BOOTSTRAP_VERSION}.tbz"
-}
-
-src_compile()
-{
- export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-bootstrap
- if use gccgo; then
- mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
- local go_binary=$(gcc-config --get-bin-path)/go-$(gcc-major-version)
- [[ -x ${go_binary} ]] || go_binary=$(
- find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-$(gcc-major-version) |
- sort -V | tail -n1)
- [[ -x ${go_binary} ]] ||
- die "go-$(gcc-major-version): command not found"
- ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
- elif use system-bootstrap; then
- export GOROOT_BOOTSTRAP="${EPREFIX}"/usr/lib/go
- fi
- export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
- export GOROOT="$(pwd)"
- export GOBIN="${GOROOT}/bin"
-
- # Go's build script does not use BUILD/HOST/TARGET consistently. :(
- export GOHOSTARCH=$(go_arch ${CBUILD})
- export GOHOSTOS=$(go_os ${CBUILD})
- export CC=$(tc-getBUILD_CC)
-
- export GOARCH=$(go_arch)
- export GOOS=$(go_os)
- export CC_FOR_TARGET=$(tc-getCC)
- export CXX_FOR_TARGET=$(tc-getCXX)
- if [[ ${ARCH} == arm ]]; then
- export GOARM=$(go_arm)
- fi
-
- cd src
- ./make.bash || die "build failed"
-}
-
-src_test()
-{
- go_cross_compile && return 0
-
- cd src
- PATH="${GOBIN}:${PATH}" \
- ./run.bash -no-rebuild || die "tests failed"
-}
-
-src_install()
-{
- local bin_path f x
-
- dodir /usr/lib/go
-
- # There is a known issue which requires the source tree to be installed [1].
- # Once this is fixed, we can consider using the doc use flag to control
- # installing the doc and src directories.
- # [1] https://golang.org/issue/2775
- #
- # deliberately use cp to retain permissions
- cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
- if go_cross_compile; then
- bin_path="bin/$(go_tuple)"
- else
- bin_path=bin
- fi
- for x in ${bin_path}/*; do
- f=${x##*/}
- dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
- done
- einstalldocs
-
- if [[ ${CHOST} == *-darwin* ]] ; then
- # fix install_name for test object (binutils_test) on Darwin, it
- # is never used in real circumstances
- local libmac64="${EPREFIX}"/usr/lib/go/src/cmd/vendor/github.com/
- libmac64+=google/pprof/internal/binutils/testdata/lib_mac_64
- install_name_tool -id "${libmac64}" "${D}${libmac64}"
- fi
-}
diff --git a/dev-lang/go/go-1.12.17.ebuild b/dev-lang/go/go-1.12.17.ebuild
index 588849ae5655..b04884336be6 100644
--- a/dev-lang/go/go-1.12.17.ebuild
+++ b/dev-lang/go/go-1.12.17.ebuild
@@ -37,7 +37,7 @@ case ${PV} in
case ${PV} in
*_beta*|*_rc*) ;;
*)
- KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+ KEYWORDS="-* amd64 arm arm64 ppc64 ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
# The upstream tests fail under portage but pass if the build is
# run according to their documentation [1].
# I am restricting the tests on released versions until this is
diff --git a/dev-lang/go/go-1.13.7.ebuild b/dev-lang/go/go-1.13.7.ebuild
deleted file mode 100644
index f7c4c78376b8..000000000000
--- a/dev-lang/go/go-1.13.7.ebuild
+++ /dev/null
@@ -1,197 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-
-MY_PV=${PV/_/}
-
-inherit toolchain-funcs
-
-case ${PV} in
-*9999*)
- EGIT_REPO_URI="https://github.com/golang/go.git"
- inherit git-r3
- ;;
-*)
- SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
- S="${WORKDIR}"/go
- case ${PV} in
- *_beta*|*_rc*) ;;
- *)
- KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
- # The upstream tests fail under portage but pass if the build is
- # run according to their documentation [1].
- # I am restricting the tests on released versions until this is
- # solved.
- # [1] https://golang.org/issues/18442
- RESTRICT="test"
- ;;
- esac
-esac
-
-DESCRIPTION="A concurrent garbage collected and typesafe programming language"
-HOMEPAGE="https://golang.org"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-
-BDEPEND="|| (
- dev-lang/go
- dev-lang/go-bootstrap )"
-RDEPEND="!<dev-go/go-tools-0_pre20150902"
-
-# These test data objects have writable/executable stacks.
-QA_EXECSTACK="
- usr/lib/go/src/debug/elf/testdata/*.obj
- usr/lib/go/src/*.gox
- "
-
-# Do not complain about CFLAGS, etc, since Go doesn't use them.
-QA_FLAGS_IGNORED='.*'
-
-REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
-
-# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
-QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
-
-# Do not strip this package. Stripping is unsupported upstream and may
-# fail.
-RESTRICT+=" strip"
-
-DOCS=(
-AUTHORS
-CONTRIBUTING.md
-CONTRIBUTORS
-PATENTS
-README.md
-)
-
-go_arch()
-{
- # By chance most portage arch names match Go
- local portage_arch=$(tc-arch $@)
- case "${portage_arch}" in
- x86) echo 386;;
- x64-*) echo amd64;;
- ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
- s390) echo s390x ;;
- *) echo "${portage_arch}";;
- esac
-}
-
-go_arm()
-{
- case "${1:-${CHOST}}" in
- armv5*) echo 5;;
- armv6*) echo 6;;
- armv7*) echo 7;;
- *)
- die "unknown GOARM for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_os()
-{
- case "${1:-${CHOST}}" in
- *-linux*) echo linux;;
- *-darwin*) echo darwin;;
- *-freebsd*) echo freebsd;;
- *-netbsd*) echo netbsd;;
- *-openbsd*) echo openbsd;;
- *-solaris*) echo solaris;;
- *-cygwin*|*-interix*|*-winnt*)
- echo windows
- ;;
- *)
- die "unknown GOOS for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_tuple()
-{
- echo "$(go_os $@)_$(go_arch $@)"
-}
-
-go_cross_compile()
-{
- [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
-}
-
-src_compile()
-{
- if has_version -b dev-lang/go; then
- export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go"
- elif has_version -b dev-lang/go-bootstrap; then
- export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap"
- else
- eerror "Go cannot be built without go or go-bootstrap installed"
- die "Should not be here, please report a bug"
- fi
-
- export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
- export GOROOT="$(pwd)"
- export GOBIN="${GOROOT}/bin"
-
- # Go's build script does not use BUILD/HOST/TARGET consistently. :(
- export GOHOSTARCH=$(go_arch ${CBUILD})
- export GOHOSTOS=$(go_os ${CBUILD})
- export CC=$(tc-getBUILD_CC)
-
- export GOARCH=$(go_arch)
- export GOOS=$(go_os)
- export CC_FOR_TARGET=$(tc-getCC)
- export CXX_FOR_TARGET=$(tc-getCXX)
- if [[ ${ARCH} == arm ]]; then
- export GOARM=$(go_arm)
- fi
-
- cd src
- ./make.bash || die "build failed"
-}
-
-src_test()
-{
- go_cross_compile && return 0
-
- cd src
- PATH="${GOBIN}:${PATH}" \
- ./run.bash -no-rebuild || die "tests failed"
-}
-
-src_install()
-{
- local bin_path f x
-
- dodir /usr/lib/go
-
- # There is a known issue which requires the source tree to be installed [1].
- # Once this is fixed, we can consider using the doc use flag to control
- # installing the doc and src directories.
- # [1] https://golang.org/issue/2775
- #
- # deliberately use cp to retain permissions
- cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
- if go_cross_compile; then
- bin_path="bin/$(go_tuple)"
- else
- bin_path=bin
- fi
- for x in ${bin_path}/*; do
- f=${x##*/}
- dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
- done
- einstalldocs
-
- if [[ ${CHOST} == *-darwin* ]] ; then
- # fix install_name for test object (binutils_test) on Darwin, it
- # is never used in real circumstances
- local libmac64="${EPREFIX}"/usr/lib/go/src/cmd/vendor/github.com/
- libmac64+=google/pprof/internal/binutils/testdata/lib_mac_64
- install_name_tool -id "${libmac64}" "${D}${libmac64}"
- fi
-}
diff --git a/dev-lang/go/go-1.13.8.ebuild b/dev-lang/go/go-1.13.9.ebuild
index f7c4c78376b8..8892f5c30954 100644
--- a/dev-lang/go/go-1.13.8.ebuild
+++ b/dev-lang/go/go-1.13.9.ebuild
@@ -21,7 +21,7 @@ case ${PV} in
case ${PV} in
*_beta*|*_rc*) ;;
*)
- KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+ KEYWORDS="-* amd64 arm arm64 ppc64 ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
# The upstream tests fail under portage but pass if the build is
# run according to their documentation [1].
# I am restricting the tests on released versions until this is
diff --git a/dev-lang/go/go-1.13.6.ebuild b/dev-lang/go/go-1.14.1.ebuild
index f7c4c78376b8..f7c4c78376b8 100644
--- a/dev-lang/go/go-1.13.6.ebuild
+++ b/dev-lang/go/go-1.14.1.ebuild
diff --git a/dev-lang/icon/Manifest b/dev-lang/icon/Manifest
index 575198efb318..e2001f439434 100644
--- a/dev-lang/icon/Manifest
+++ b/dev-lang/icon/Manifest
@@ -1,6 +1,6 @@
AUX icon-9.5.1-flags.patch 2148 BLAKE2B 37fcaca92f67be74caddbf7789ca4e666a4e0b98e7cac3a89376bae5c50fd248eae0f0b282a46ec8d6dc55f5c423ad6dc69744d2999e96ec183d9bb369f7e7b0 SHA512 28b201a1347167b028187d6d35cb50450cf6a13b48fbf65a616683fb6c5d3373d9ba9e64c3d6fe397e858388c88a52ab330a00dc5e4ca087567089e8cdd3c897
AUX icon-9.5.1-fpoll.patch 977 BLAKE2B 720fac1a8109d3400b6a718f708904d14e2d4207840a2e4d31888dd4be2d02c241c2f40271b89f6e3273732288e203e9298f061dfb485ca4eb0c24baea02534c SHA512 4b9d471d7d2992a75cccea98790339318b8a622d993a34affc69e0dbbbfa7103e8b994494eb33aaf26168bdb18623c5419f2c34471dee4adb1a004b420b793ab
DIST icon-v951src.tgz 3133040 BLAKE2B 790a66a8210c1b9c55514a560590f08d3e52d7c5115d60554183f1118b5705fc1754b8188dcc3b5b739318374d568b6eafc1e3c4266de5416709e7ce6056925b SHA512 032dc9cfa57af5af2eb84b2116d0537124b5efb87b7cf744ecace2ccf49e461d5be5f91df99d85e8a988520d144fe4ecf06a6e78f7fff997b78afa95355449ad
-EBUILD icon-9.5.1-r1.ebuild 2517 BLAKE2B 17298ea7ff945bc5ccfe52e2f034d81b253c421b2a59130f03778c92e1c6fb32fb03a96d60fdec86cb6a03626fc743732c780973fc87070b9f3e61627cc466b3 SHA512 c76fbcab00e38fb4ef306a107e19f6c359fadc54fe52629dd70a3b3ca314151ef565bd04b746ba379d6028728d9caaf07eb3d1e596ffc500873e8bd005619c9f
+EBUILD icon-9.5.1-r1.ebuild 2518 BLAKE2B d305f28d494f0924035e7b4a6f5d8165741b8b4b782f0aa3133cca9503656c72172a63f8db31e080d238eb527300258654f43a3dfcef9e085b949d7bcb172252 SHA512 49c548061175a7999717b184b4dbfc69ccf9a316a13d8784a586dca68108c324eaf08ca4b9b488445f7fe5fd77d878648d580570b9c30b4163a1c2249f1da3bc
EBUILD icon-9.5.1-r2.ebuild 2677 BLAKE2B 0e4c2c69d4129cca02150a4b99b19e39fafdf70e0cd69399f4799be449498ab9af1fa5e2fff29e15a684aee0ad881e55bb7f81c1157f64af29452013584b8255 SHA512 b60f02abf351ddb63afb4852189983efc46b0888bdaaf20c500a9203e0d11345d07274a22b2c0691b5a87c6c5913efeea7e9f696ce2e868fbd9580929d0fa04e
MISC metadata.xml 467 BLAKE2B b480285505dec662f62038d22a88323f01f21b100de7ee652f2e3d5f5f4cdf4345ad7d303f2713b1a2816157c46610c2f5287cb385c61998f68fd95d09bf9d5b SHA512 1a77000b72ae453ecb2bd4452e32ea917328a61bb882e107b96f013ddaa218e951743569e38e97210a341755bd7c891324123d96e56da9a5a7caa93ad4dbb93a
diff --git a/dev-lang/icon/icon-9.5.1-r1.ebuild b/dev-lang/icon/icon-9.5.1-r1.ebuild
index 1b40a7b839d7..c1cbe633be12 100644
--- a/dev-lang/icon/icon-9.5.1-r1.ebuild
+++ b/dev-lang/icon/icon-9.5.1-r1.ebuild
@@ -13,7 +13,7 @@ SRC_URI="http://www.cs.arizona.edu/icon/ftp/packages/unix/icon-v${MY_PV}src.tgz"
LICENSE="public-domain HPND"
SLOT="0"
-KEYWORDS="~alpha amd64 ~hppa ia64 ~ppc ~ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+KEYWORDS="~alpha amd64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="X iplsrc"
S="${WORKDIR}/icon-v${MY_PV}src"
diff --git a/dev-lang/janet/Manifest b/dev-lang/janet/Manifest
new file mode 100644
index 000000000000..db0e6924d7d3
--- /dev/null
+++ b/dev-lang/janet/Manifest
@@ -0,0 +1,6 @@
+AUX janet-1.7.0-fix-ldflags-in-pkgconfig.patch 473 BLAKE2B d7e99647a8b25b715c9261e3178db5ff024bee48c9a677b70a542e4f60a359ce349e130f15425694315dacc0e6a1151da8026f6f6cf0104e8137645302dae729 SHA512 d935b96d08f03160b88b33b61b2d1aafcce2184b622964ca8ee257978c8466f806e0491ba4e2f36f30c1bedfb7aa1e10df074b32a49a547fe3dee3b6b99adc8d
+DIST janet-1.7.0.tar.gz 968936 BLAKE2B 49e6381d0f632fe43eefd498b9aaca2ec049e1f0d4fa7b3463bc00ac1ece67c8c3d108515702bfead1934434a8039e7c1f6eaae46aec7340330e5cda78eeaca4 SHA512 c180172f3016d1ca55ac39f2116789027bf622f08f585bf702b17acadd99d07bf91320e09ce21be76c3a1e60d1a8923591d0e07acc90884dac823a2c414f65e7
+DIST janet-1.8.1.tar.gz 977929 BLAKE2B 4cdf9e5dd7f4a1128438db8bec43c4f1919392bf6c317e2fca42b73826058cd98cec812c245354cc26f21edd4b9640f94dce1e82daa785b53e7e1e8fb45148a9 SHA512 e2296b16ad7df35e0f6ff0f56b9cd5071e887288df195ac0a14a73284a48f010cc26a413ea836aa3faa4385e25f7f313b183f0fbb8e6eebdc3975b69c62e4ebf
+EBUILD janet-1.7.0.ebuild 1306 BLAKE2B a126e8066b5bb4dc506a66f68140484c9c88980642d99a49de367408701c5c9f58bd71d4be78bf2a0e97649889ccb56fe6d58af9f14cc46c60fcc7740a173e9b SHA512 f726aca8eec331ca1690a0a38553fb609481493b7618df71b5991c3493248379d1f1715a7299e94e41e501e4ba93ade4ca5e4171c71407aa7a0f71f12a6cf057
+EBUILD janet-1.8.1.ebuild 1313 BLAKE2B 7bd321b692a7b8772c610c6705b4ad1cda3e60bb8e1fccde281d60135516320890c9dd4068b0589f9674ae31b999c7ddc9332b9acec56cf958a6913ed96d4aea SHA512 a6250a88f336db50367b9bb23c3c75645e3aa8083937b86577f60a91008fa1afc4bfa9a0ae0be879b242981a4b8a7aa3dd70c8a724b360e460571b423072099d
+MISC metadata.xml 960 BLAKE2B fe836e1f5b7313091bf2c4341a30f7c395056fd4c63a2477a83a55daecede052eea148dc44cb253e8bead356e7b501b7698be4c787f05fdabc08638b2db7163c SHA512 a54e679498bc1239c6eda2302213e220a69eb25e5be02d3c945c89ed3943849adb7043ea6794aa5ad6e3a53026f7b06c16e7ba2ea35d5022d1cc97a9f561a4ba
diff --git a/dev-lang/janet/files/janet-1.7.0-fix-ldflags-in-pkgconfig.patch b/dev-lang/janet/files/janet-1.7.0-fix-ldflags-in-pkgconfig.patch
new file mode 100644
index 000000000000..81df47acc748
--- /dev/null
+++ b/dev-lang/janet/files/janet-1.7.0-fix-ldflags-in-pkgconfig.patch
@@ -0,0 +1,11 @@
+--- ./Makefile 2020-02-02 06:35:17.000000000 +0100
++++ ./Makefile 2020-03-17 23:14:26.172766381 +0100
+@@ -242,7 +242,7 @@
+ echo "Description: Library for the Janet programming language." >> $@
+ $(JANET_TARGET) -e '(print "Version: " janet/version)' >> $@
+ echo 'Cflags: -I$${includedir}' >> $@
+- echo 'Libs: -L$${libdir} -ljanet $(LDFLAGS)' >> $@
++ echo 'Libs: -L$${libdir} -ljanet' >> $@
+ echo 'Libs.private: $(CLIBS)' >> $@
+
+ install: $(JANET_TARGET) build/janet.pc
diff --git a/dev-lang/janet/janet-1.7.0.ebuild b/dev-lang/janet/janet-1.7.0.ebuild
new file mode 100644
index 000000000000..99870fa39172
--- /dev/null
+++ b/dev-lang/janet/janet-1.7.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic
+
+DESCRIPTION="A dynamic Lisp dialect and bytecode vm"
+HOMEPAGE="https://janet-lang.org https://github.com/janet-lang/janet/"
+SRC_URI="https://github.com/janet-lang/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs"
+
+PATCHES=(
+ "${FILESDIR}/${P}"-fix-ldflags-in-pkgconfig.patch
+)
+
+src_configure() {
+ append-ldflags -Wl,-soname,libjanet.so.0
+}
+
+src_compile() {
+ # janet_build is the git hash of the commit related to the
+ # current release - it defines a constant which is then shown
+ # when starting janet
+ local janet_build='\"f7ee8bd\"'
+ emake PREFIX="/usr" JANET_BUILD="${janet_build}"
+ emake PREFIX="/usr" build/janet.pc JANET_BUILD="${janet_build}"
+ emake PREFIX="/usr" docs JANET_BUILD="${janet_build}"
+}
+
+src_install() {
+ dobin "build/janet"
+ dobin "auxbin/jpm"
+
+ doheader "src/include/janet.h"
+ doheader "src/conf/janetconf.h"
+
+ dolib.so "build/libjanet.so"
+ dosym libjanet.so /usr/$(get_libdir)/libjanet.so.0
+
+ if use static-libs; then
+ dolib.a "build/libjanet.a"
+ fi
+ doman "janet.1"
+ doman "jpm.1"
+
+ insinto /usr/$(get_libdir)/pkgconfig/
+ doins "build/janet.pc"
+ dodoc -r examples
+ dodoc "build/doc.html"
+}
diff --git a/dev-lang/janet/janet-1.8.1.ebuild b/dev-lang/janet/janet-1.8.1.ebuild
new file mode 100644
index 000000000000..233b176a7261
--- /dev/null
+++ b/dev-lang/janet/janet-1.8.1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic
+
+DESCRIPTION="A dynamic Lisp dialect and bytecode vm"
+HOMEPAGE="https://janet-lang.org https://github.com/janet-lang/janet/"
+SRC_URI="https://github.com/janet-lang/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.7.0"-fix-ldflags-in-pkgconfig.patch
+)
+
+src_configure() {
+ append-ldflags -Wl,-soname,libjanet.so.0
+}
+
+src_compile() {
+ # janet_build is the git hash of the commit related to the
+ # current release - it defines a constant which is then shown
+ # when starting janet
+ local janet_build='\"5b6b9f1\"'
+ emake PREFIX="/usr" JANET_BUILD="${janet_build}"
+ emake PREFIX="/usr" build/janet.pc JANET_BUILD="${janet_build}"
+ emake PREFIX="/usr" docs JANET_BUILD="${janet_build}"
+}
+
+src_install() {
+ dobin "build/janet"
+ dobin "auxbin/jpm"
+
+ doheader "src/include/janet.h"
+ doheader "src/conf/janetconf.h"
+
+ dolib.so "build/libjanet.so"
+ dosym libjanet.so /usr/$(get_libdir)/libjanet.so.0
+
+ if use static-libs; then
+ dolib.a "build/libjanet.a"
+ fi
+ doman "janet.1"
+ doman "jpm.1"
+
+ insinto /usr/$(get_libdir)/pkgconfig/
+ doins "build/janet.pc"
+ dodoc -r examples
+ dodoc "build/doc.html"
+}
diff --git a/dev-lang/janet/metadata.xml b/dev-lang/janet/metadata.xml
new file mode 100644
index 000000000000..9baceda37874
--- /dev/null
+++ b/dev-lang/janet/metadata.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <name>Oz Tiram</name>
+ <email>oz.tiram@gmail.com</email>
+</maintainer>
+<maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+</maintainer>
+<longdescription lang="en">
+ Janet is a functional and imperative programming language and bytecode
+ interpreter. It is a modern lisp, but lists are replaced by other data
+ structures with better utility and performance
+ (arrays, tables, structs, tuples).
+ The language also supports bridging to native code written in C,
+ meta-programming with macros, and bytecode assembly.
+</longdescription>
+<upstream>
+ <remote-id type="github">janet-lang/janet</remote-id>
+</upstream>
+<use>
+ <flag name="static-libs">install janet static library archive,
+ you must enable this flag for using `jpm build`
+ </flag>
+</use>
+</pkgmetadata>
diff --git a/dev-lang/jimtcl/Manifest b/dev-lang/jimtcl/Manifest
index 0448aa6fd889..deb02b940321 100644
--- a/dev-lang/jimtcl/Manifest
+++ b/dev-lang/jimtcl/Manifest
@@ -2,6 +2,6 @@ AUX jimtcl-0.75-bootstrap.patch 585 BLAKE2B 7d1cce053ae41100764bdc9a7beca121b002
AUX jimtcl-0.78-no-bootstrap.patch 1370 BLAKE2B 1f584727970d7103a183b9099818bafb9a94aa7634463bb47387b4aa0afa330d477a15c50c19f383575251677d42a27d5cec1ede116bbf8d709c32378384eb6a SHA512 827bb679b322da790f68f5c6c3a469362edbb6e0128a439a6f9c98b3877e2d32c67c9826e0cd20762e6f234df332d05b9ccc309bbb4367e3b8d6de3d5d7afa3d
DIST jimtcl-0.76.zip 2326715 BLAKE2B 50ea032cf46d2edeeecde1dc3b4deffcbd09b5dd3a6880963608b3f20616bf162fafc4ec2869bfe5de90231c4c9a29fb04710bd299cc5e8728ff20a86e46f32d SHA512 50763ea897fb5393083749cdd9e57a3f3d2d6dbebc40ee6371b1b86ebfc2f515e9775cd2acd6627f0f81b54bd72cd8c74be5aa9d0dbefc7c16372887e07f6ea4
DIST jimtcl-0.78.tar.gz 3073533 BLAKE2B f0cdaf2807c7dd0e7c64e37cbc8dd019d8460e6a0320c239b0d01549aede8c86a89d84d7a3c5200c8d8cea428dbd1038d57dc66f5b580bdea8fe39710f967bbb SHA512 2a2cff12d7fdc4cf36734e41727eef08f6d74fb13d70bb0a3e01839e66859e57dd927ddedc161a6a7928881d640bd4e20a1bb313ed24aa2bb7bcb00eaf64fbf6
-EBUILD jimtcl-0.76.ebuild 1506 BLAKE2B 675ac6813883875b02d8cc8d14a8e531d2907b94a3c3eb2725157c8da8249f54e8f8f4688cd8b211687d89b522db3b33a5c4aeaeeb10def9e7ee53a671dc726b SHA512 41b03bb2e030f04eaa82a42fec86109d4d5e5712c85db86c79d26c8738161448ca21ffe858d3deea3b55fc8fc104f2d3cc6270e2e8dca53450a4a90ab49ffc1f
-EBUILD jimtcl-0.78-r2.ebuild 1308 BLAKE2B a88642fd912ff845f018d34314c6872a9bb16479ae75eb81abc9b598bbd385b8b5aed0697e9b643c1ad1c2ff0e8eb2f5a21bd3268047be6a422e9b3821397880 SHA512 b801b7c5599ffeece4f1710120cec5cf034cb12ac4e5b5e33ae982221b39ceae6183a27dc612aeba5dc1abf6db6f97fa0fbbfd9752c51c470830d1151d85ab4c
+EBUILD jimtcl-0.76.ebuild 1499 BLAKE2B 84a6faae307b4e6e67e48e5424b7826cf179d9dd3cec74d452559d7e65e6e924f6ac3aa901e5c0e94c4e30cf790f8d07ed8bfdcf9ff9a9ecd25cac40cd45ee63 SHA512 5ef245dc133b79cbc9664c6a7ef63f1a24ad295c2f784d3221d33634b456840d86cd49886d11d8cf67e872591b6bd475c7fca8b2213d22a7e50f9b6c433f73c2
+EBUILD jimtcl-0.78-r2.ebuild 1304 BLAKE2B 0495198d6d33516beb74980f24e4e67cbc5c8c3843ad1f8f36e23051cb1c787e6b100245b3fa7c4e89fbe7c6a0b9e211a6d6b1278f19e74ce513342461762aad SHA512 2795102cc94c6000f803950f0bd074f3cdade85ae48d9d8b5d61a4c5e422f8f7b16977b5f65d329badc67076c088473278f217ccfff54ec31ade4a14e1fdfca4
MISC metadata.xml 251 BLAKE2B f23df3a2dcf096cee2f8d5cf2ef4fcc6c741ae312d2193f1d449aac7cd19126aa8197d4f3e2bd7828abf1aeeabf60f4a3ef8cc05b8152e6f6ce55b4897de5eb0 SHA512 0186a63dbf97f1800694d0bcb67528a7da92d30412398d5916452cc45c17d823f84ba7ffeae533476b7a48e7da19dabd0e431155ab66c19e68b113c910a4c03c
diff --git a/dev-lang/jimtcl/jimtcl-0.76.ebuild b/dev-lang/jimtcl/jimtcl-0.76.ebuild
index 0c0461946919..64ca59df29e6 100644
--- a/dev-lang/jimtcl/jimtcl-0.76.ebuild
+++ b/dev-lang/jimtcl/jimtcl-0.76.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
@@ -11,7 +11,7 @@ if [[ ${PV} == *9999 ]] ; then
else
inherit vcs-snapshot
SRC_URI="https://github.com/msteveb/jimtcl/zipball/${PV} -> ${P}.zip"
- KEYWORDS="amd64 arm ~arm64 ~m68k ~mips ~s390 ~sh x86"
+ KEYWORDS="amd64 arm ~arm64 ~m68k ~mips ~s390 x86"
fi
DESCRIPTION="Small footprint implementation of Tcl programming language"
diff --git a/dev-lang/jimtcl/jimtcl-0.78-r2.ebuild b/dev-lang/jimtcl/jimtcl-0.78-r2.ebuild
index 7a48165e3075..9b531ea12ea2 100644
--- a/dev-lang/jimtcl/jimtcl-0.78-r2.ebuild
+++ b/dev-lang/jimtcl/jimtcl-0.78-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -6,7 +6,7 @@ EAPI="7"
inherit eutils
SRC_URI="https://github.com/msteveb/jimtcl/archive/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~mips ~s390 ~sh ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~mips ~s390 ~x86"
DESCRIPTION="Small footprint implementation of Tcl programming language"
HOMEPAGE="http://jim.tcl.tk/"
diff --git a/dev-lang/julia-bin/Manifest b/dev-lang/julia-bin/Manifest
index d2df8d40d531..b0d737e02156 100644
--- a/dev-lang/julia-bin/Manifest
+++ b/dev-lang/julia-bin/Manifest
@@ -6,6 +6,11 @@ DIST julia-1.3.0-linux-aarch64.tar.gz 78426016 BLAKE2B da758349e342a92194ff24e74
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
EBUILD julia-bin-1.2.0.ebuild 1017 BLAKE2B 386af3cb189a4332d0333ced5b343837bf449767ebf58b326bd66cb90b707bd637f500186abbdcdb40871a23361a0396b4d768f5e08273594ab70a171896a379 SHA512 9e1f66a7fa9e1266509c4b9a751e09cd6ab023087cf06517e40cba8ae170e40a51541ef830384b38179ce9818f5ccd3f3bd6b9ba852210005082ea9dc1cba1c2
EBUILD julia-bin-1.3.0.ebuild 1267 BLAKE2B e76ce485ddd59a3492389dc6ddcc12acf29b46475133ab1b7014d595246b41ce6a2d9f2994b579d62308191a04f11d5190366fd074ae3d18e93b9a9abeaf8487 SHA512 a48b82de177fc2e68d8a2d41865858310019e9e94caf8ff713ce6612b77f35bdcfd14b2e9928e1aa0922f54ee12913ffb8878926299840c40139101d0e574e57
+EBUILD julia-bin-1.4.0.ebuild 1163 BLAKE2B 2cd9686f0dbaf0b4dcf040cceddea48363a177ef1223889e215443b1b2879ed86d2b661624f8922db2eaa5bf89e71bf7b559c0edf72c66066a7bd93897331578 SHA512 1968757fcdd6b77f01a267e21b1f25360bdc730057498ebb9958972b07d66337a0e75459d935e8d1de29b560dbe436a3fb02ffc3afc58d053f3eb9a01a3cd1a6
MISC metadata.xml 1269 BLAKE2B c7ca56d7660c41df452725bae9526d587d79754a3e7b0cb0584bacc588b63523e4fbae113b26f48290d874bc49fac1eb2ecfc97946e516212cc511346f876e26 SHA512 8e0325b241bc76162b843b64e2fdac98873cba21e8e39d2ddd439647466d94e163fe315eeeae78435398db17635d3447ec9c713bf53d894487ac6acb67c5afdf
diff --git a/dev-lang/julia-bin/julia-bin-1.4.0.ebuild b/dev-lang/julia-bin/julia-bin-1.4.0.ebuild
new file mode 100644
index 000000000000..fecb06e30052
--- /dev/null
+++ b/dev-lang/julia-bin/julia-bin-1.4.0.ebuild
@@ -0,0 +1,44 @@
+# 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"
+
+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/Manifest b/dev-lang/julia/Manifest
index d747679dc343..431252be5087 100644
--- a/dev-lang/julia/Manifest
+++ b/dev-lang/julia/Manifest
@@ -1,16 +1,20 @@
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-9999-fix_build_system.patch 3345 BLAKE2B 0a8eeaa3590beb0215c9f696a7dd1d6c614238dbf12f72cd2ccc81a36bfc3bdaae22afe45d95b1868bd211a67c3c483889dfa2feae86816054101c0a6865394f SHA512 edc7fdd6f6844a359368e2356dafabe951304a7b3f144d4a5181003de8f3f2eefc9b8882db6dcd65c049226a2505446d900eda3056e3c6bbe45fbaea3bd3a647
+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-Pkg-49908bffe83790bc7cf3c5d46faf3667f8902ad4.tar.gz 389738 BLAKE2B 1ed9201badf0a1db5142e0566bfe085b364e4681670937ac5fa53c15312ff8eb29d5e783b75fe3f4f379b041ba38c66ce94962fa7d98fcfd0b7b49acd1749d69 SHA512 a85aa80b3080794a8e3ae5ce54856e63457c461659c12fde5dde1b5ec33176ea06af49ee516d01ccd7b78d8358de2fe0ffcd5c6a6d5a5088cdcd76a0133780eb
+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-35b1504507a7a4168caae3d78db54d1121b121e1.tar.gz 1577394 BLAKE2B 8ab36f781619f710a64ddc6cf257a4c2f6d27ac22e33ed6f184902d0c6cc3a3941254e0a825071fcd57f869e3ccc5eaf71856539cf6b484358d5aafe383000a9 SHA512 5932e9105346e952fd0f51f79898e5b9c993261ec1558408437647ab3b3ce282562f1e0a16db5704cb66e7aa7a4c6a75dd7f0da498a98b1b6af48da88b4869f0
DIST julia-libwhich-81e9723c0273d78493dc8c8ed570f68d9ce7e89e.tar.gz 4183 BLAKE2B c932e23b1b476d3fd16cf6f451efd5fc6d9c1ec2c53e8ac086340a100817d9b30dae3eff50b284a42c09b2bbae30b9e2fd38b2881f8cbf4974a89f3bd0c87599 SHA512 6fb77b715d70d9bc95a8546c3bf97bd3677c7ea344b88bb5bc3bbfac9dceabe8a8cde7a0f64dec884cde802e4a3000e30837d3f824b5a9242348c4fe061526a3
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
-EBUILD julia-1.2.0.ebuild 5338 BLAKE2B f085ad22862c2b9b371a1c11312f014d1f5ceda0a0178c49e7ef48b9954957c65148e32c34403641e2bde9e713085458cd96ea5e051a3a915ebede3af36dc3cc SHA512 be8c209117d6be75eb003d1f1646f68cdeb43502472c5cb78273437a62c95b0636f535f470caec9591bf26a9f78fbab7fdf92b8d20932e539f8a274591d671dd
-EBUILD julia-1.3.0.ebuild 5334 BLAKE2B 9619bba7532981e3c997121e46f2e10f4158ec1332c2e142d84d0ee552cd703139fbe61aa1240ca2749119ecb26096a279e1257eecdf39c50fba017b767eec86 SHA512 04ade1214c419788833b0564639f30c48d7ff80d3cf41978b7bd831a38ed22da30b64ac83146df5e2ecb25e5534b0e9e4610777dd066fabe7741ecaf4d552796
-EBUILD julia-9999.ebuild 4082 BLAKE2B fa9f5764fe50605ba24bbc9152d9e3430584025e0231aea7a9cd910d5a99cfd9c64ad3f3304f5f71d11b3d706eccb69e7dcca662432baeeba91326fb6aa44803 SHA512 2ff829c6abac054b513c8a1189e2b955366fbb2e087489cba6adb394d0f5a0b4a833e5c24b317f60b96386307a8ba543136391816befd589770fcda01565b732
+EBUILD julia-1.2.0.ebuild 5338 BLAKE2B 60f77129192f392a3abf31556de86df1bf16564e7c1597bacffe601edc231715db077903b32d244504e7672b9971d19cf22d735808e51983fa0793666aa4b6f4 SHA512 727270ae0b4c99c2da7cdf9f877f194bb2976be6b633aefde56381657bef6521dee6ca047bcdf9a7ebe736fe44871e23a45c7c81ad592759e604c58a20836744
+EBUILD julia-1.3.0.ebuild 5334 BLAKE2B 0b0f07c68075f5418348fc980ea810bad34f100c3c29414347f4c4b9d9f78c943e22bd677c3686deb8846f22c29b7cfcfee3f226550b3fc08827f208fd17c98a SHA512 ed1a6e6f9413e3eb5b7bd1f4d5381a4473fe5ddb2f6a275914e2ab070a03fc3e5cfda60d199cb9f14e5ccfc136ed91fac43ace8416e46692555836b1dd6c2f93
+EBUILD julia-1.4.0-r1.ebuild 5240 BLAKE2B ecf34fe8db9778f2b092ec1db23314ef24f8e3f209129a796bc74b665b3fbacddc0da942f25d26eaf422cfa4a4235d824d81a508ff5b58e56f89ba87d138cf2a SHA512 92722ea1d525b1ce6c92b8bafac1b2436915cbb24243b79f837c65671e4baf0ddfe9d02bc2fbc5567957e70d514b19471fdc80c0d5cc98dd320ea195caaaecc0
MISC metadata.xml 1291 BLAKE2B 98782d71b9f74e628e4e6dc5264b7bcddfb61f4ce42c4e3baa0a2ec0cc6e2ef6368d1c2b1d755972b214823533c3935b4558c79bd920072649d9072b985efcd4 SHA512 0bbe350eef4d0daaa4a971b843b4359d2513dea5e2dc9e8a3b6241ff403c043f605634615c39a3fdb2a4d090851a19d6b20ebd5c7b3886f009ade3b5c16dfaaf
diff --git a/dev-lang/julia/files/julia-1.4.0-no_symlink_llvm.patch b/dev-lang/julia/files/julia-1.4.0-no_symlink_llvm.patch
new file mode 100644
index 000000000000..1b6371b120d9
--- /dev/null
+++ b/dev-lang/julia/files/julia-1.4.0-no_symlink_llvm.patch
@@ -0,0 +1,10 @@
+--- a/base/Makefile 2019-11-17 14:07:20.000000000 -0500
++++ b/base/Makefile 2020-03-28 20:38:40.041571679 -0400
+@@ -223,7 +223,7 @@
+ ln -sf "$$REALPATH" "$@"
+ ifneq ($(USE_SYSTEM_LLVM),0)
+ ifneq ($(USE_LLVM_SHLIB),0)
+-SYMLINK_SYSTEM_LIBRARIES += symlink_libLLVM
++#SYMLINK_SYSTEM_LIBRARIES += symlink_libLLVM
+ endif
+ endif
diff --git a/dev-lang/julia/files/julia-9999-fix_build_system.patch b/dev-lang/julia/files/julia-9999-fix_build_system.patch
deleted file mode 100644
index 13cc8cb19da1..000000000000
--- a/dev-lang/julia/files/julia-9999-fix_build_system.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-diff --git a/Make.inc b/Make.inc
-index e9cb241198..66f3e6afd7 100644
---- a/Make.inc
-+++ b/Make.inc
-@@ -185,7 +185,7 @@ USE_GPL_LIBS ?= 1
- # Directories where said libraries get installed to
- prefix ?= $(BUILDROOT)/julia-$(JULIA_COMMIT)
- bindir := $(prefix)/bin
--libdir := $(prefix)/lib
-+libdir := $(prefix)/GENTOOLIBDIR
- libexecdir := $(prefix)/libexec
- datarootdir := $(prefix)/share
- docdir := $(datarootdir)/doc/julia
-@@ -416,7 +416,7 @@ ifneq ($(OS), WINNT)
- JCXXFLAGS += -pedantic
- endif
- DEBUGFLAGS := -O0 -ggdb2 -DJL_DEBUG_BUILD -fstack-protector-all
--SHIPFLAGS := -O3 -ggdb2 -falign-functions
-+SHIPFLAGS := GENTOOCFLAGS
- endif
-
- ifeq ($(USECLANG),1)
-@@ -427,7 +427,7 @@ JCFLAGS := -pipe $(fPIC) -fno-strict-aliasing -D_FILE_OFFSET_BITS=64
- JCPPFLAGS := -fasynchronous-unwind-tables
- JCXXFLAGS := -pipe $(fPIC) -fno-rtti -pedantic
- DEBUGFLAGS := -O0 -g -DJL_DEBUG_BUILD -fstack-protector-all
--SHIPFLAGS := -O3 -g
-+SHIPFLAGS := GENTOOCFLAGS
- ifeq ($(OS), Darwin)
- ifeq ($(USE_LIBCPP), 1)
- MACOSX_VERSION_MIN := 10.8
-@@ -456,7 +456,7 @@ JCFLAGS := -std=gnu11 -pipe $(fPIC) -fno-strict-aliasing -D_FILE_OFFSET_BITS=64
- JCPPFLAGS :=
- JCXXFLAGS := -pipe $(fPIC) -fno-rtti
- DEBUGFLAGS := -O0 -g -DJL_DEBUG_BUILD -fstack-protector-all
--SHIPFLAGS := -O3 -g -falign-functions
-+SHIPFLAGS := GENTOOCFLAGS
- endif
-
- ifeq ($(USECCACHE), 1)
-diff --git a/base/Makefile b/base/Makefile
-index acdd4bb9f8..4483149b2b 100644
---- a/base/Makefile
-+++ b/base/Makefile
-@@ -216,7 +216,6 @@ $(build_private_libdir)/libLLVM.dylib:
- ln -sf "$$REALPATH" "$@"
- ifneq ($(USE_SYSTEM_LLVM),0)
- ifneq ($(USE_LLVM_SHLIB),0)
--SYMLINK_SYSTEM_LIBRARIES += symlink_libLLVM
- endif
- endif
-
-diff --git a/doc/Makefile b/doc/Makefile
-index 99e60ee665..2027fb5952 100644
---- a/doc/Makefile
-+++ b/doc/Makefile
-@@ -30,7 +30,7 @@ deps: UnicodeData.txt
- $(JLCHECKSUM) UnicodeData.txt
-
- clean:
-- -rm -rf _build/* deps/* docbuild.log UnicodeData.txt
-+ @echo "Do not clean doc/_build/html. Just use it..."
-
- cleanall: clean
-
-diff --git a/src/Makefile b/src/Makefile
-index e4da8c6357..85a411d9b7 100644
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -50,33 +50,7 @@ ifeq ($(USEMSVC), 1)
- SRCS += getopt
- endif
-
--LLVMLINK :=
--
--ifeq ($(JULIACODEGEN),LLVM)
--SRCS += codegen jitlayers disasm debuginfo llvm-simdloop llvm-ptls llvm-muladd \
-- llvm-late-gc-lowering llvm-lower-handlers llvm-gc-invariant-verifier \
-- llvm-propagate-addrspaces llvm-multiversioning llvm-alloc-opt cgmemmgr \
-- llvm-api
--FLAGS += -I$(shell $(LLVM_CONFIG_HOST) --includedir)
--LLVM_LIBS := all
--ifeq ($(USE_POLLY),1)
--LLVMLINK += -lPolly -lPollyISL
--FLAGS += -I$(shell $(LLVM_CONFIG_HOST) --src-root)/tools/polly/include
--FLAGS += -I$(shell $(LLVM_CONFIG_HOST) --obj-root)/tools/polly/include
--FLAGS += -DUSE_POLLY
--ifeq ($(USE_POLLY_OPENMP),1)
--FLAGS += -fopenmp
--endif
--ifeq ($(USE_POLLY_ACC),1)
--LLVMLINK += -lPollyPPCG -lGPURuntime
--FLAGS += -DUSE_POLLY_ACC
--FLAGS += -I$(shell $(LLVM_CONFIG_HOST) --src-root)/tools/polly/tools # Required to find GPURuntime/GPUJIT.h
--endif
--endif
--else
--SRCS += anticodegen
--LLVM_LIBS := support
--endif
-+LLVMLINK = $(call exec,$(LLVM_CONFIG) --ldflags) $(call exec,$(LLVM_CONFIG) --libs) $(call exec,$(LLVM_CONFIG) --ldflags) $(call exec,$(LLVM_CONFIG) --system-libs)
-
- # headers are used for dependency tracking, while public headers will be part of the dist
- UV_HEADERS :=
diff --git a/dev-lang/julia/julia-1.2.0.ebuild b/dev-lang/julia/julia-1.2.0.ebuild
index 3c91154427a3..cf072ca65b33 100644
--- a/dev-lang/julia/julia-1.2.0.ebuild
+++ b/dev-lang/julia/julia-1.2.0.ebuild
@@ -48,7 +48,7 @@ RDEPEND+="
sci-libs/spqr:0=
sci-libs/umfpack:0=
sci-mathematics/glpk:0=
- >=sys-libs/libunwind-1.1:7=
+ >=sys-libs/libunwind-1.1:0=
sys-libs/readline:0=
sys-libs/zlib:0=
>=virtual/blas-3.6
diff --git a/dev-lang/julia/julia-1.3.0.ebuild b/dev-lang/julia/julia-1.3.0.ebuild
index e77a1b9a14ec..86daa027e057 100644
--- a/dev-lang/julia/julia-1.3.0.ebuild
+++ b/dev-lang/julia/julia-1.3.0.ebuild
@@ -49,7 +49,7 @@ RDEPEND+="
sci-libs/spqr:0=
sci-libs/umfpack:0=
sci-mathematics/glpk:0=
- >=sys-libs/libunwind-1.1:7=
+ >=sys-libs/libunwind-1.1:0=
sys-libs/readline:0=
sys-libs/zlib:0=
>=virtual/blas-3.6
diff --git a/dev-lang/julia/julia-1.4.0-r1.ebuild b/dev-lang/julia/julia-1.4.0-r1.ebuild
new file mode 100644
index 000000000000..24fd97a071c1
--- /dev/null
+++ b/dev-lang/julia/julia-1.4.0-r1.ebuild
@@ -0,0 +1,191 @@
+# 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
+ 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-9999.ebuild b/dev-lang/julia/julia-9999.ebuild
deleted file mode 100644
index 384659ad6dab..000000000000
--- a/dev-lang/julia/julia-9999.ebuild
+++ /dev/null
@@ -1,176 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-RESTRICT="test"
-
-inherit git-r3 llvm pax-utils toolchain-funcs
-
-DESCRIPTION="High-performance programming language for technical computing"
-HOMEPAGE="https://julialang.org/"
-SRC_URI=""
-EGIT_REPO_URI="https://github.com/JuliaLang/julia.git"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS=""
-IUSE=""
-
-RDEPEND="
- >=sys-devel/llvm-6.0.0:=
- >=sys-devel/clang-6.0.0:="
-
-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:7=
- sys-libs/readline:0=
- sys-libs/zlib:0=
- >=virtual/blas-3.6
- virtual/lapack"
-
-DEPEND="${RDEPEND}
- dev-util/patchelf
- virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-9999-fix_build_system.patch
-)
-
-src_prepare() {
- default
-
- # Sledgehammer:
- # - respect CFLAGS
- # - respect EPREFIX and Gentoo specific paths
- # - fix BLAS and LAPACK link interface
-
- sed -i \
- -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
-}
-
-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:=1
- USE_LLVM_SHLIB:=1
- 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
-
- # Create symlinks...
- 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}"
- mkdir -p "${S}"/usr/lib/julia || die "mkdir failed"
- for i in ${libblas}.so ${liblapack}.so libumfpack.so libspqr.so; do
- ln -s "${EROOT}/usr/$(get_libdir)/${i}" "${S}"/usr/lib/julia/ || die "ln failed"
- done
-
- emake VERBOSE=1 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)"
- 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/{examples,html} \
- "${ED}"/usr/share/doc/${PF} || die
- rmdir "${ED}"/usr/share/doc/julia || die
-}
diff --git a/dev-lang/lisaac/Manifest b/dev-lang/lisaac/Manifest
index b815d0c67f14..6f4e04dacd11 100644
--- a/dev-lang/lisaac/Manifest
+++ b/dev-lang/lisaac/Manifest
@@ -1,5 +1,5 @@
AUX 50lisaac-gentoo.el 205 BLAKE2B 846e26860287d4ff9ee305a2bf8a614ea1ca3bebc108dad7b6159267db5a99a2bb8ab89ccafaec1d4e312fcb2eaef54772faba7f87190a3e2d486d93086f77f2 SHA512 8ecf7496211067e2a2ffd5458036e7b3964e6528064855905d830e98553d9c190a08fcd0df941625eb8dcfe1f762042186420f00feebcf054d9a499c5cf2d080
AUX lisaac-0.13.1-makefile.patch 1003 BLAKE2B 6eaa34b6a4d2e97ce17e6c5d401f4a8b1e104256f139caa52886620c9b573ad8a58a2079d78be3e73bfbd82fde3c77838df1daa18bb32df07db935ee6c661243 SHA512 4b363a4791468b98e864b641c08886d8070b9c959fdd5fda68ea0c0fa8c8caf0fe80ef7afe99598579c8a7b18222c3846334b6fa6d9c2b3e6fec9fcda6170d6e
DIST lisaac-0.13.1.tar.gz 2141871 BLAKE2B 7461eda320bc778cba5f28724eb1afc9451c26df4d4333b546f72a8d7e4add21f3ff369215a51adf841b967699d2746105a651ef11442d60ca3e7fc70a245e72 SHA512 079137d17fae09d57430d6576e9b2c149ca31ba47c0899513bfc447488ba2b0e3432fff8db4f6b141301798e23472738791cd99900c73a463d92397179a44aa9
-EBUILD lisaac-0.13.1-r2.ebuild 1668 BLAKE2B 5802c598e690975390f41dddaf43452ba547aac537471fc1210edd0b6aa8efdcbdd14d58dcca0d34fc9523cf39bee173d70738dd6bf2b3ce2fa959c1152001b5 SHA512 ab391d1744d03ea451c94babe9c7ed78e6ece9674a48d5423e1795fcb09f52e2eeb1e23ca9f67413acea92b68cf43c5d0568c52c7d5b207ebbca5b9cb2e1ce28
+EBUILD lisaac-0.13.1-r2.ebuild 1565 BLAKE2B a6f9c353c02f32e9a40d14c3b16326e3597ffcc130737fbf00caad36f0733b7435a75fc42abfda13c9387838456310aa0c986847be3eeecb247105177ce6bbd8 SHA512 49d8c3fe322220910be683b7f524d15a0dbdfc0d05d18de6116fc3def85761076ef13c439fda51e60f2278df0c1d04c2542c8e4450aaebf9e7ca96641b49a687
MISC metadata.xml 166 BLAKE2B c254f1fb642881aba57637be14fb0a89b10384f91a128feaec3a8c870d76efc2cbacb92caccc0dee2dd19a5ac5eaf8643080dafa05c4e2ac96a68568927e5afd SHA512 a56648c974a1d14dd4c18237532773c72057a13ab90c58b5da04f185e3c12a8bd8d5c21fb06053507f31766291a82dc7d87b34cd65fd94cfe2af7295c813ef84
diff --git a/dev-lang/lisaac/lisaac-0.13.1-r2.ebuild b/dev-lang/lisaac/lisaac-0.13.1-r2.ebuild
index 7d7646984cb0..10fca08c1796 100644
--- a/dev-lang/lisaac/lisaac-0.13.1-r2.ebuild
+++ b/dev-lang/lisaac/lisaac-0.13.1-r2.ebuild
@@ -1,10 +1,11 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="4"
-inherit versionator elisp-common eutils toolchain-funcs
+EAPI=7
-DESCRIPTION="Lisaac is an object prototype based language"
+inherit elisp-common toolchain-funcs
+
+DESCRIPTION="An object prototype based language"
HOMEPAGE="http://isaacproject.u-strasbg.fr/li.html"
SRC_URI="http://isaacproject.u-strasbg.fr/download/${P}.tar.gz"
@@ -14,29 +15,29 @@ KEYWORDS="~amd64 ~x86"
IUSE="vim-syntax emacs examples"
DEPEND="vim-syntax? ( app-editors/vim )
- emacs? ( >=app-editors/emacs-23.1 )"
+ emacs? ( >=app-editors/emacs-23.1 )"
RDEPEND="${DEPEND}"
SITEFILE=50${PN}-gentoo.el
src_prepare() {
- epatch "${FILESDIR}/${P}-makefile.patch"
- rm lib/number/essai
+ default
+ eapply "${FILESDIR}/${P}-makefile.patch"
+ rm lib/number/essai || die
}
src_compile() {
emake CC="$(tc-getCC)"
- if use emacs; then
- elisp-compile editor/emacs/lisaac-mode.el \
- || die "compiling emacs component failed."
- fi
+ use emacs elisp-compile editor/emacs/lisaac-mode.el
}
src_install() {
emake DESTDIR="${D}" DOC="/usr/share/doc/${PF}" install
+ gzip -d "${D}"/usr/share/man/man1/{lisaac,shorter}.1.gz || die
+
if use vim-syntax; then
insinto /usr/share/vim/vimfiles/syntax/
doins editor/vim/syntax/lisaac.vim
@@ -45,15 +46,13 @@ src_install() {
fi
if use emacs; then
- elisp-install ${PN} editor/emacs/*.{el,elc} \
- || die "installing emacs coponent failed."
- elisp-site-file-install "${FILESDIR}"/${SITEFILE} \
- || die "installing emacs site file failed"
+ elisp-install ${PN} editor/emacs/*.{el,elc}
+ elisp-site-file-install "${FILESDIR}"/${SITEFILE}
fi
if use examples; then
- dodir /usr/share/${PN}/
- cp -r example "${ED}"/usr/share/${PN}/examples
+ dodir /usr/share/${PN}
+ cp -r example "${ED}"/usr/share/${PN}/examples || die
fi
}
diff --git a/dev-lang/logtalk/Manifest b/dev-lang/logtalk/Manifest
index 1c1ba8e0fab3..21aaf7e5c93a 100644
--- a/dev-lang/logtalk/Manifest
+++ b/dev-lang/logtalk/Manifest
@@ -1,7 +1,8 @@
AUX logtalk-3.11.2-portage.patch 920 BLAKE2B d20d393bc10809945d6100aef08610e9cffe5b40f91927448c5fa4ce3b1cd6120613f754438f15b4f008ff32deabf108e2c242d33ef1fe0d574705e93fb8505e SHA512 b1f6f6457e343db0674aad9633dc7d38f9714574372cb1bfb2e9dd72da52710df45b7488329d6e1448bd84aa10550598f73fc4aac182f60168220898423381dc
AUX logtalk-3.18.0-portage.patch 1179 BLAKE2B 25fad57b8969a487a45ab254cfba3f17bd92741f3a49718efca75307af0a269d0aedf847ae6fa93c3495971653c7b442c4f454f61bb9968f5da809b2dd386e85 SHA512 2f2423991fe8e65c058ab295b73e64693a91e99225bb2af953702227a1234b45d89508cb339fbe12143e6a98657c440778b41c701ed333d0e05520705bfe12dc
-DIST logtalk-3.11.2.tar.bz2 3122034 BLAKE2B bb790f6c11f5812337777718f92585f459ba7acb4f66a246d575061bb269db85fc37dd73bd8e185de3fc4cdfe62dcdf1d26782ff1dfe26846d99b39c57e97dc5 SHA512 5c48a4c2165c8b4bfe3047d7dc42f3210a72488fbc2e7349a93ae17ed3590cdd4ff22417f153f163c76605ffc30a5bc8fad2bd91099edf68e675b1d94fb7662b
+AUX logtalk-3.36.0-portage.patch 1179 BLAKE2B aa40ea0df4f01778d01e2f7c174f9587d5d18f7ea80125ff198203081344eca3e050d3612c16627806e36171ca13a7875ccd0f935c4507ca987ef6529e691290 SHA512 5254edf0fced32c64d6848dad300ab48e53f7aa9f160e7b85e11fba5395b83da659134329846f281619b9fce1827ebae7c306fe1832fea8ece755fdfe7df7795
DIST logtalk-3.18.0.tar.bz2 3280635 BLAKE2B 0105c0816d3b265f15f9ba6e82a4e6dbc877869c2ade6deac3f2748da12e14bd5de2e82ca8f1793c6553a635ca8a55138e79645219f09146c8adec4b60f70b30 SHA512 1575a564ff23d35b4d1581e7f5725515a548ea57d128fbfa13f8138e41791c50cc9626bdc26a85f5e676500b3f232faf742e434b1416707134e4c9b3f8afe424
-EBUILD logtalk-3.11.2.ebuild 3891 BLAKE2B 3b8ee7b51a351e741761d9ac9f2bc91f60692cad7fb5a54bd75c69813a0b1038f266b05a879464b1b23be8e2535e2f4ae0882ef5ec9eab5ff5d3f198c7031dcd SHA512 2c473569ac979996e3110222bca555387af264a8126ae870a9792169e7226ef41b6844dedc433ea20339e95f487cac0e04fba2eb07864c76e59bf9aa5ea0166b
+DIST logtalk-3.36.0.tar.bz2 18373894 BLAKE2B 3f4917dea47b32760edfde0538a260e5405b566520c514ec137766d17ad532f1d3e3a7a6d05b4b643b21933073951ed41bf92161ae49545eb458619444b10210 SHA512 0e93f091cb24aed3b08db05df29484e708e14cf58a673a42df70c899f3bafae30896be118d89dfdf3f3cb7d4ba520a815e46d563dd7418f80912b7067ed7da8e
EBUILD logtalk-3.18.0.ebuild 3883 BLAKE2B 46f5263f30f6b10285d292981482e1b74f1f6a726fa3035f90bb29e0b1d420c7220256a10929f308fc0da934b7e39a815cb6c5794de4f16d8e86b365d67cb126 SHA512 7c8699c2cfafae06ef07061e7eb855a622ab1500d591677c3f1cc48edf2a157ff4825435dcc45b53ce0bbf3f331cfe9d4bc983c349468c62f427706cb9d1e8f6
+EBUILD logtalk-3.36.0.ebuild 3880 BLAKE2B 0213ef4aacd286ffa4483286e40dc18ce57d66559fb4f2a146b1c53f743514cd3ba88cab52d43ee0640dd5c078c2aaedafa33a32cf1fb565a9f34b0bc994c3ef SHA512 be98746464a03c93f5509acb377359cdce5d8bcf378c142d68f55b17c03fa09afe734496534c05cc9dec8f99c9e4fe431ad79e0f28b47b5d559717166bcf7a49
MISC metadata.xml 404 BLAKE2B 8eee9851c967beb38e36f649b8eaefc8b8329f06adf298702a06b427edeb9a0e556a2f47e63c2b4cf4219027ed18502336b4a9e032d876bde18897985aea7dd8 SHA512 1faeefef2f7670809936eb73c4e9e4e18f44ee6e5851cc7386e996768ab88dbfa7c24801daa2cf4edca8646427eec1c871136540d71b7e0b0add3d00c78691ed
diff --git a/dev-lang/logtalk/files/logtalk-3.36.0-portage.patch b/dev-lang/logtalk/files/logtalk-3.36.0-portage.patch
new file mode 100644
index 000000000000..8e08a9f2ff7b
--- /dev/null
+++ b/dev-lang/logtalk/files/logtalk-3.36.0-portage.patch
@@ -0,0 +1,19 @@
+--- logtalk-3.36.0.orig/scripts/logtalk_user_setup.sh 2018-06-26 15:11:02.000000000 +0200
++++ logtalk-3.36.0/scripts/logtalk_user_setup.sh 2018-07-22 14:05:50.343406307 +0200
+@@ -131,16 +131,6 @@
+ rm -f "$LOGTALKUSER"/tools/lgtdoc/xml/lgt2*
+ rm -f "$LOGTALKUSER"/tools/lgtdoc/xml/logtalk.dtd
+ rm -f "$LOGTALKUSER"/tools/lgtdoc/xml/logtalk.xsd
+-ln -sf "$LOGTALKHOME"/ACKNOWLEDGMENTS.md "$LOGTALKUSER"/ACKNOWLEDGMENTS.md
+-ln -sf "$LOGTALKHOME"/BIBLIOGRAPHY.bib "$LOGTALKUSER"/BIBLIOGRAPHY.bib
+-ln -sf "$LOGTALKHOME"/CONTRIBUTING.md "$LOGTALKUSER"/CONTRIBUTING.md
+-ln -sf "$LOGTALKHOME"/CUSTOMIZE.md "$LOGTALKUSER"/CUSTOMIZE.md
+-ln -sf "$LOGTALKHOME"/INSTALL.md "$LOGTALKUSER"/INSTALL.md
+-ln -sf "$LOGTALKHOME"/LICENSE.txt "$LOGTALKUSER"/LICENSE.txt
+-ln -sf "$LOGTALKHOME"/QUICK_START.md "$LOGTALKUSER"/QUICK_START.md
+-ln -sf "$LOGTALKHOME"/README.md "$LOGTALKUSER"/README.md
+-ln -sf "$LOGTALKHOME"/RELEASE_NOTES.md "$LOGTALKUSER"/RELEASE_NOTES.md
+-ln -sf "$LOGTALKHOME"/UPGRADING.md "$LOGTALKUSER"/UPGRADING.md
+ ln -sf "$LOGTALKHOME"/adapters "$LOGTALKUSER"/adapters
+ ln -sf "$LOGTALKHOME"/coding "$LOGTALKUSER"/coding
+ ln -sf "$LOGTALKHOME"/integration "$LOGTALKUSER"/integration
diff --git a/dev-lang/logtalk/logtalk-3.11.2.ebuild b/dev-lang/logtalk/logtalk-3.36.0.ebuild
index 6a29f2f8591b..f7a62987873b 100644
--- a/dev-lang/logtalk/logtalk-3.11.2.ebuild
+++ b/dev-lang/logtalk/logtalk-3.36.0.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=6
inherit eutils xdg-utils
@@ -21,6 +21,8 @@ RDEPEND="${DEPEND}
src_prepare() {
epatch "${FILESDIR}"/${P}-portage.patch
+
+ eapply_user
}
src_install() {
@@ -40,53 +42,53 @@ src_install() {
doins scripts/freedesktop/logtalk.xml
# Install documentation
- dodoc ACKNOWLEDGMENTS.md BIBLIOGRAPHY.bib CUSTOMIZE.md \
- INSTALL.md LICENSE.txt QUICK_START.md README.md \
- RELEASE_NOTES.md UPGRADING.md VERSION.txt
+ dodoc ACKNOWLEDGMENTS.md BIBLIOGRAPHY.bib CONTRIBUTING.md \
+ CUSTOMIZE.md INSTALL.md LICENSE.txt QUICK_START.md \
+ README.md RELEASE_NOTES.md UPGRADING.md VERSION.txt
rm -f man/man1/logtalk_backend_select.1
rm -f man/man1/logtalk_version_select.1
doman man/man1/*.1
# Integration symlinks
- dosym /usr/share/${P}/integration/logtalk_user_setup.sh \
+ dosym ../share/${P}/integration/logtalk_user_setup.sh \
/usr/bin/logtalk_user_setup
- dosym /usr/share/${P}/integration/bplgt.sh \
+ dosym ../share/${P}/integration/bplgt.sh \
/usr/bin/bplgt
- dosym /usr/share/${P}/integration/cxlgt.sh \
+ dosym ../share/${P}/integration/cxlgt.sh \
/usr/bin/cxlgt
- dosym /usr/share/${P}/integration/eclipselgt.sh \
+ dosym ../share/${P}/integration/eclipselgt.sh \
/usr/bin/eclipselgt
- dosym /usr/share/${P}/integration/gplgt.sh \
+ dosym ../share/${P}/integration/gplgt.sh \
/usr/bin/gplgt
- dosym /usr/share/${P}/integration/jiplgt.sh \
+ dosym ../share/${P}/integration/jiplgt.sh \
/usr/bin/jiplgt
- dosym /usr/share/${P}/integration/lplgt.sh \
+ dosym ../share/${P}/integration/lplgt.sh \
/usr/bin/lplgt
- dosym /usr/share/${P}/integration/qplgt.sh \
+ dosym ../share/${P}/integration/qplgt.sh \
/usr/bin/qplgt
- dosym /usr/share/${P}/integration/quintuslgt.sh \
+ dosym ../share/${P}/integration/quintuslgt.sh \
/usr/bin/quintuslgt
- dosym /usr/share/${P}/integration/sicstuslgt.sh \
+ dosym ../share/${P}/integration/sicstuslgt.sh \
/usr/bin/sicstuslgt
- dosym /usr/share/${P}/integration/swilgt.sh \
+ dosym ../share/${P}/integration/swilgt.sh \
/usr/bin/swilgt
- dosym /usr/share/${P}/integration/xsblgt.sh \
+ dosym ../share/${P}/integration/xsblgt.sh \
/usr/bin/xsblgt
- dosym /usr/share/${P}/integration/xsbmtlgt.sh \
+ dosym ../share/${P}/integration/xsbmtlgt.sh \
/usr/bin/xsbmtlgt
- dosym /usr/share/${P}/integration/yaplgt.sh \
+ dosym ../share/${P}/integration/yaplgt.sh \
/usr/bin/yaplgt
- dosym /usr/share/${P}/tools/lgtdoc/xml/lgt2xml.sh \
+ dosym ../share/${P}/tools/lgtdoc/xml/lgt2xml.sh \
/usr/bin/lgt2xml
- use xslt && dosym /usr/share/${P}/tools/lgtdoc/xml/lgt2html.sh \
+ use xslt && dosym ../share/${P}/tools/lgtdoc/xml/lgt2html.sh \
/usr/bin/lgt2html
- use xslt && dosym /usr/share/${P}/tools/lgtdoc/xml/lgt2txt.sh \
+ use xslt && dosym ../share/${P}/tools/lgtdoc/xml/lgt2txt.sh \
/usr/bin/lgt2txt
- use xslt && dosym /usr/share/${P}/tools/lgtdoc/xml/lgt2md.sh \
+ use xslt && dosym ../share/${P}/tools/lgtdoc/xml/lgt2md.sh \
/usr/bin/lgt2md
- use fop && dosym /usr/share/${P}/tools/lgtdoc/xml/lgt2pdf.sh \
+ use fop && dosym ../share/${P}/tools/lgtdoc/xml/lgt2pdf.sh \
/usr/bin/lgt2pdf
# Install environment files
diff --git a/dev-lang/lua/Manifest b/dev-lang/lua/Manifest
index 66aeb670572b..b9df4bb1f951 100644
--- a/dev-lang/lua/Manifest
+++ b/dev-lang/lua/Manifest
@@ -31,23 +31,23 @@ DIST lua-5.2.4.tar.gz 252651 BLAKE2B 6f20308d8413438f8446040e8de16274837cb55e626
DIST lua-5.3.3.tar.gz 294290 BLAKE2B 8052d3fa5f34636df314886a62d63e46fc76ada765679da9352e751f484a458404ac55e5b32ad63ced9d2b16d629d62a52240b1b1a509bcdf5d5df85e405646d SHA512 7b8122ed48ea2a9faa47d1b69b4a5b1523bb7be67e78f252bb4339bf75e957a88c5405156e22b4b63ccf607a5407bf017a4cee1ce12b1aa5262047655960a3cc
DIST lua-5.3.4-tests.tar.gz 103438 BLAKE2B ac82708022e7729039111c3df4fe24302c8d0efb224afb4828871ac085a3d64c41d674a6f9369035de01ed1f7f75a3d2ce16917f37e774e923216aac0be03e09 SHA512 79575d100a2efabc8243f55b55d912443e09ef7e8b0219cb93541d85c2ba802fb9538015e1228703f09ca57bdb28a640a8f1fa0735716ba1e4bca2179c712dfb
DIST lua-5.3.5.tar.gz 303543 BLAKE2B 8890fa70fcfb869296bc74c754dc30621a3786d4b38dd35ef9e57ca46ee4b3df12dac1b86109be0823847499ff6b0d95de11f446c4c22de440ae3bb704e5068b SHA512 4f9516acc4659dfd0a9e911bfa00c0788f0ad9348e5724fe8fb17aac59e9c0060a64378f82be86f8534e49c6c013e7488ad17321bafcc787831d3d67406bd0f4
-EBUILD lua-5.1.5-r100.ebuild 3734 BLAKE2B ded64ec91b07eed80ea425e1a6dcb71a3f89f1bad5698f71e6db04090bbb6ade8cc37ac9adf4d31011e71719a28f215f9a54c6c6e142b8064e9449bed8acbb2f SHA512 3d43c51fdf791a825b4e38dc9ac1632971b97b474556cabb2a3d418ded939e1497a3b8c11cac0240149d4964d7199c40cf0e26b87a5cde2a8123ba5c87ce7372
-EBUILD lua-5.1.5-r101.ebuild 3995 BLAKE2B 605130d313f4a07d425ba50b751e03960bcff5271a112c795a10f500776ca98dd7dbb5ad24c4ccc1d93d5341583dec97e45e8fe4e9475b7cb3a92ccde882f105 SHA512 097760baea6eab1c2de9cec35be5c229dc31df8488e2f67499488930be458e02f0992a08e5b8b3c669908146133dda42a3108ae2829a73c888913a40409c1e0f
-EBUILD lua-5.1.5-r102.ebuild 3995 BLAKE2B df7d3f828e39e793885f1a093fa760864c55aaff42cabe7c8fb8b28cbd2de064c09cb9570cd3cc5c1d6d0d5a71698f45fac9fef05b3d40c418416665a5966cb2 SHA512 b663a7e0394aea6ac45a0657f123e41199d8078506b8cc1f02930f780bfac7c957a5912b2064417a660c2a134ea4051e4db6484412addf5ec9b09bfc9a649280
-EBUILD lua-5.1.5-r103.ebuild 4048 BLAKE2B 6226a4f78dce6d88bc7d710790017745055ad2d750c0c9b3192eeb130cdaa03b1426b97a730c5e58c21253f567abdd968c69d032840e788c29e5273f1df7bea0 SHA512 57292a22ed6c4a0705b8117f7a2494136f95c9343ed046c6076bb40007d1e8717675fca676e99c3b7ef8f098ea1426d2e32796e77b1f1ddab7f7e9c22121239c
-EBUILD lua-5.1.5-r4.ebuild 3629 BLAKE2B 10dc72cf0368c1c653c7d34f314d68ce427275a0f266fec62ec9984feb424721bdd2b6b3ff2096f79fa95f9e4a3af20c20ff692fb6b18c7e3ebfbfa3b22f18f8 SHA512 dffc5dd9cd8c1380e94f7347280a4d4b4466335375dd5676552e731270eadff1e9ee9e6b5ff2679d014965ab16b6203ac4e61dea5719d3def3b8a0508a5af3fd
-EBUILD lua-5.1.5-r5.ebuild 3185 BLAKE2B 18736c62c9cbc5607636025c5aed0586e01d4aeecac97c9542aecdd82dad2a6be0cbedb4a8bd84befe04c54a1e5f5a6097e8d1d7077d25158aec7331ff5009a9 SHA512 ea2657eeed7fd71ad06f883fe393259c670418983ab72bfa126aed48fca78fbb0f523e923be49ff7d86d3a610870fb24a33127dee44548edf96622e737fd3e39
-EBUILD lua-5.2.3-r1.ebuild 3757 BLAKE2B f4e8e0c040421db6b212289be1781ea4291c9a468b35f0398307596b14ef3d2d9e65f3df5db466da9c29537d71fa6ca5937e86a2e5c16109f2bab7054c9784e8 SHA512 f2ef9c741bd74c5f0d88845b15c94f604f4c3253a16fc9d4fc819d3f25f6cb46a3bae465bf99b559f498c23eed06143b9747f9800b91f6f68fd5ea9dc661e684
-EBUILD lua-5.2.3-r2.ebuild 4018 BLAKE2B bc094822587e7607bf81c3214da9b1eef8d2eb466ba81523dc5088b0c08b4dea67743822223156ec22e9d70ca658e8133de8e15f26094478997addccbcf3c774 SHA512 28c7644f7cec9dcc912bd1f14be0e89929242a7746e7f4ab75fb305b4bdb7355cf6e3235ee5d96a1257a79ef369395e600dec506d19d960567f5fd7a0c6ba109
-EBUILD lua-5.2.3-r3.ebuild 4018 BLAKE2B 5cd8714a0c6387f00b038f542ab8368facec9475a05b6e53b81f079db3e599dd55b394435fb26ff3d72cac32a9a45459bd4a4631e38415a83c3f757547e21628 SHA512 a80f15e84a00197c87195fab15063f734612e995826b59bfdf656eeab70fd3b89ea8553d276134301f78c8c344f9bd35a8ae299966eaed18f875307163d40a1d
-EBUILD lua-5.2.3.ebuild 3173 BLAKE2B 16e2fbb99a6b2c4a4f59351aab457aecfe219d45fded839956ae7121fb723259040626219c26cedb84778535f5b6d82f02fa8020cc242f4cdc31874eecde260e SHA512 15e82292b3b76aa58033548f0f49f778643d7ec2d0b22b30ef9aeb633c8b36e7fc6d4eefac95291f1b324354fc935f9aca0754c332b75fcc5120415fa433ce00
-EBUILD lua-5.2.4-r1.ebuild 5766 BLAKE2B 5a97ccab82df592f84449202547298afa36293482e7fbcfd654b58c12ecdd7fd248a18e6b4e2d616a74b148ce9657558585c5e4067c7fcfd9ab46b071a4be1c2 SHA512 e95748a60f8254f7bf2db3bb4ac4d7b096d0f48102862857b643bb2fec3e18524c3162bfa20609a6b4210882c0a8e8f13bfab87edb57288bd1f659c327e3ac9f
-EBUILD lua-5.2.4-r2.ebuild 5819 BLAKE2B d83605a7753c5531366da0e08b9dd5f9efd90f411e748a3c20be0a511e6dbe3a9e5971619f9c8001d873f8723b8a9f2e0a94693c92a58f34cb87529cb95dd8c7 SHA512 0ffaf421c2cc6c6ce72e249fcfb8f063e39dd8d91e40b7fce2e78eac8daca3c5ee5c94d5b36ef7bbe3bf26a936d756281bb57d79679befabe12d959a4b7b4334
-EBUILD lua-5.2.4.ebuild 5245 BLAKE2B 59e535668459e64d4124fc631e76ad42e577ca457188d1a34d53fa0dc7e53429f30488f6da07f1821a9f9136042679772221af849efc511a036d6bc8d7d50045 SHA512 6c80a2af0f847d070fea48c4dc907dcdb04abc3d27fee9f36cf954c13169400e2c6a985f1da4da14596ccf0fdc3979ef5a8b68f9dc8d785f537bd0ca71f6fc9c
-EBUILD lua-5.3.3-r1.ebuild 4030 BLAKE2B 5f269701d580cb55915514e3443c53e3d8c225549ce2cca2d93d17b49d716af3eed4f9812898250dfbec3e6b77241e98d2a4f8ebfaa90a03ac0d9319c7c0f95a SHA512 cc5dc832884b3a84612dc46e339a9d634a363cd8a7e003daf61edfda9e64d99fef9906d3cd809abd9fe33b816a0c3510a1d43e83ffcdc2cf142a797961fdbf02
-EBUILD lua-5.3.3-r2.ebuild 4030 BLAKE2B 0052a221f158347b006bb57b24c41f138a28da18d43ae42d641bea072cdad8d7bf45d3d25c0017b94a12d33362505244bc8ff06cdfeab67203b86161231ba736 SHA512 427ea47bc7b91579af1b4e9407bac5ed948992b7191856c0f76718a84dffa2290d22f073035720fcb3b877a583a521c99d1ad68f2acc4237d077bb150f58485d
-EBUILD lua-5.3.3.ebuild 3769 BLAKE2B 2aa484858b240d3b6d3a4054e23e97693dc3f4598e2d6a9c8de18dcfc5f8c4301f10e5e5cf811c6658c18dacd9a181a6315915c22bb426091da3d2ddc841678d SHA512 708a65843b6fdb1192c4ee16e6e322d54c2c7fe1eae7fed3009bb9a1c2f81d09418888024aa17f43303bdce50e1d99e0cbd889dc3e781ec9a18e5075d7e90bbe
-EBUILD lua-5.3.5-r1.ebuild 5766 BLAKE2B 0bc3f2fecf2f60d0f5b6ff735d72463a7451c0f1944019ee4d4e13a1a8594a440044c5e677979a2388e0d6a41095c806107d2725896d1e5d649b95f09c8fc60c SHA512 3d2e2438a638751aad6b015d5afb68c5a06aa995fc3dd09b29c4a5ca1916f6e5fda69afff3d559c26cc3744b7f9057cdd76df1ba22a7eabb0b19fc1a760b312e
-EBUILD lua-5.3.5-r2.ebuild 5819 BLAKE2B 36df3d45d9cca76ce4fadda792db1800f1fb74451fcf5f2ecf50d748d1d0ec314787758410093f17d9cd20eca78bc4e74b3347e2a19cd2cb5a21dbaac96364f5 SHA512 a8df52bfd8de9ffe7ea94b9a02ebba646fa8a6ffb2d49e35d033d5ef10ac19c8caf88111f2f97ce4b4b30eae58da0cfecd3837155083b4fddf1fc45dee5bb4be
-EBUILD lua-5.3.5.ebuild 5257 BLAKE2B 1ebffbe512ed4eb31f79c48b744bc5ea323a42fd8a9eb7b96bfb934d54c065758f6f6da87c7cc161804f6105b01c1988c0fb29c4c0da0367ef78a95cba4d4c08 SHA512 30b93526f3b62478b306936665de93468fe236e7785f2b75c52d9c0222fe4dc32706e2e475bff5abad4f9c6f413942644d6662adeb1d21a4a251a1ca8de55a4c
+EBUILD lua-5.1.5-r100.ebuild 3730 BLAKE2B 8b466ecd089ed0195cf0bfd4b300a2de608c6b410fbec8ba1f230ea5e54ed1640f6a5e9be1c3dd7b98722c1b26a490d1ee01015e07f5d6770b87995dbb2c8bc9 SHA512 9524eca589a7e6d01137e0f2bb992608c3015a682e2c9d64d3b30646862ca586501cfc7602fa669029475ee03ceffaef77c720d89460cb4fa51d9808cd9611c6
+EBUILD lua-5.1.5-r101.ebuild 3991 BLAKE2B a1fb643e5b07c8f398361903d8f9fada914c1a35b009b1d93bd2b1e6125d5e5fae6b70dd25db979ce06105e863bd5c84aa5cb9c165b583615a5fe360c6ef138d SHA512 cea50e3f7b6ceb96bff4ca6679356ecc004d00da99227822a0f2c21b52b341859a5ffcc1c1f7906d6073510b9c58bb7d8d8c94df9546d95b4b7c06ff6ee12ae1
+EBUILD lua-5.1.5-r102.ebuild 3991 BLAKE2B dc457038d4d1f8e7196f120776d18df8407a2155a4dad71754d014be5f68c11f7a135907f3fd1a323367e9f1d7f1745c064d2ee5c13033d3de3221701294c1dd SHA512 8dcdc6928c616fce465d7150f9b77ca32abf74be5a3b934d4ef115c93ee7fba9e5809c1538bf84a6b5e725f7d41bdf6a15f3af25ac6093bab523f9d1f6049b74
+EBUILD lua-5.1.5-r103.ebuild 4044 BLAKE2B 01ad9ea468e84b362e29df4bc4ba6fbf01099b773af9d3b365abf32c666b819e9c89e9e9c3748725ea0eb385191b648b1875ea90ce53c34821fdabdeaddbd742 SHA512 56b61061b8be6f432ae261d0d532f3e3a95fc424fd456dd8b8292535955dd3b7826144b20634252697bf657b1d9431e3211d0e8a194c76b9bd96b186f27c7f61
+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.3-r1.ebuild 3753 BLAKE2B 0b9fc77c87713c202118af0cef98b614460c318e5b1a04b92e2d7a611eb38da94a72a5c3c6d424fcf48e2c63d9cfddaaf1a570ee5c9401990eabf72de696a0d7 SHA512 c2242eb50be798b4d6b425cbb356027fc7775d36e87e18e2fe5e8093905d57807ddd12f3d097ff3f4ebbc26d8169945ca0bb87d22b8f22e1e905e0af7f336304
+EBUILD lua-5.2.3-r2.ebuild 4014 BLAKE2B e73c41b94c3a02abad3d070298fdb8db6107a4bdc83d3ad58591974ba52b7b9e314cd874e09d81cae0d4e08f259e22590bc61b36eeb8655003668c4dc3c79fd4 SHA512 deaa5d92f2c95b0317f5ed4f7282ddabb154ad4e8c6c25a14c4852b9cac102527e21412f2b1acc2c4cd095b427bab6c0d54a507d56283af81d0f00646f52b9ca
+EBUILD lua-5.2.3-r3.ebuild 4014 BLAKE2B 39b26c792689d4fe550e7e416451c79c1a0a7f22c9b782325889c4c5efcc1fbcc1857f6dca32cba944ca55f0ca085545e1d6f59fc4405947c8b2156d72b4e4ed SHA512 e7bfc3365b201ff94a3d016205a420f0bf1a6698ebfb478552eb8886aa98a571b9cb708cd05475f906eed2efdce23383c6a810e95486ce4d5440361b3657187d
+EBUILD lua-5.2.3.ebuild 3169 BLAKE2B 7d6de9aa5994c156842d658fd870415a75fb5a95a023aa7cf681b1b5d47d35ddeabeca8e60ead526cae2570e618419251ead106cba32e9e373a5731dcabdd66a SHA512 e852bddbda3b157269ebb15e4ac4fbfb99bc66e91aa5323753a7981a550537b446db050891da66d6d0f8f9496ca04bbb4fb2de5c6f5491c344ead613628cb509
+EBUILD lua-5.2.4-r1.ebuild 5762 BLAKE2B 483ac3a697c0792bcd5b166c8eebfb9c9225a0e69ad18c1ec0ec04d017f0ccce81e2a72322e11465fe31b16215b267917751cd8f31d093f12d8cd9697539cb93 SHA512 fbfb1197fec46a913da8d29f5db4962b936e20f614a467e87c34b4f7bd7ba62caafce9249abdf1d4cdcb9139b0dfd766bb08cdffc1c6f73f5b1be2e7bbfc76cd
+EBUILD lua-5.2.4-r2.ebuild 5815 BLAKE2B 3cca6a8cfb62eb47819b0c415caaaac569d1158d129df5e4de2b0041d4f048ef84284353caafccb3f19f6ff982145fe9b8d60e47798319065fac310019811785 SHA512 347d95124e3881687c0b82502561d22d37c2be3b5002432079b8e5d4fc854d963e9bd7aa9c577c9d30f043ec901d7e31b223b42e6e8e9afcfd4709fea7832d62
+EBUILD lua-5.2.4.ebuild 5241 BLAKE2B 5e735a2d3d45d5cb331c44dad9add826c472085c427581ee3d959fdef6b4619d40210a9af71d17740a05289f6db68e94c6be2b050dc4d413965833019f1874dc SHA512 e88dbedc355433c4b6375847d6e1cf646a43e9aeeb3507d0abcfca458fc778e8c71948f3165af6e5dd29c4a3c880448c17e8f9a633de10fc112bbe6034545a4f
+EBUILD lua-5.3.3-r1.ebuild 4026 BLAKE2B 70df90013103979de4396e3c9efe4533700a5d3993a6cf484adda53f699bbf7e6dc4862d6fe115d4c4914a55e4b9b18b33c47469230154ba9feaf57326865374 SHA512 ee3b3fa6bb6298db4252773a483ccc5f3c2d0bb530b9316a4eef1c2905176188dd28bc928648fb1fc23c5fc97a32cac036882d7f9b1a6a2bdc9d8ab9f5a70275
+EBUILD lua-5.3.3-r2.ebuild 4026 BLAKE2B eccedac9466a36c8df67673e5de477c2f92b551c4619db51391dbcc6c6e75ae03baa23cb532d0c96360f47425a3f2750f0d39d7cb78bc590eef7fd949866a5a6 SHA512 1a72d315bbb64822b375fccb51bc447e83179ac9432039441111066fcba5ecbc0e3a2c61d8dc307838ff35bfb7fa51b53b9198761649255745103a56c12d9a8b
+EBUILD lua-5.3.3.ebuild 3765 BLAKE2B 04cd7191f3108687adb46884bd36692ab32c7cb622ae3ea8effa4fff7a588790bf139a1c9dd9cc2bd39ae4eda39b9340462e61d78530dee78c1b8304af1a357b SHA512 063298fcf4b1717f65a2505cead87fc44df5110c10ef795ca761308071ad62eb43d315b848b4f8f1fb034dcb72c9707f5bbafcee833c0e72f19a03a79ba9ec6e
+EBUILD lua-5.3.5-r1.ebuild 5762 BLAKE2B 2e2d18711151dffe319659ae92a5fc5739763cc189e52f4919b31d56f6eab1de70eb02b0838a456753c1084f8d9d24678018a6dfbcdb29d8eeca048258328d5c SHA512 cd9ce64c5a5d02daa92b2203d8d17fee4b55bea60c79337da45809938fe7a200d7b032e6bb0288ae2329cda7073d75a645bf6374ec89f40a3ec6945f5a004c10
+EBUILD lua-5.3.5-r2.ebuild 5815 BLAKE2B 9f11080202c539e78e1ff27f9e7819573ead4bb9c52672a982bb6f581fcee649e4923ec43d424754ee29355e128a0aa9ae55e899dbde8983bb2450040dfda449 SHA512 562b61119aee91ca8b61279bfcbd6a1c884f67322f10d9850aa3b5d12082e472f25f7eab16fe204516d0da53d0e6959803aabe2cd212c7b532e7aa17dadbffe1
+EBUILD lua-5.3.5.ebuild 5253 BLAKE2B bdfa2892c3d589c2f32d62031759a6463f24cb7ba09d0a172d09d1474cde25d632cf6dba2c7ca3328022e586cc99ee5a1300bf24ae6cbdac46ee204605eaaa53 SHA512 7922e9cdf4016219a1a71b013c74872194cc6c7a9da65b6d33d4132638223aad1b0620aace0198baa83f7aaa0f69e35e2456d4bb28cbb72ad66d7da9bc30fb6b
MISC metadata.xml 524 BLAKE2B 688341a9dfa433bbc2e3fc1edb8a44d53dcee036afeb5b2c7c8fbfa0f81d1e53a6c7910b32bec637ad1cd518e48afdd0806a286dadbb6c7a88853a93aa7f3545 SHA512 92ee6e13c3fcc5ba1d2cf3ec58a54b051f1fae8646b64fae25923108a78abc77b05992abbed5a04afbc2043ea0b47749544e348506ab554d57b19bcf3b435e52
diff --git a/dev-lang/lua/lua-5.1.5-r100.ebuild b/dev-lang/lua/lua-5.1.5-r100.ebuild
index a94ae714cf69..6cc21a60ce8f 100644
--- a/dev-lang/lua/lua-5.1.5-r100.ebuild
+++ b/dev-lang/lua/lua-5.1.5-r100.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1:0=[${MULTILIB_USEDEP}] )
diff --git a/dev-lang/lua/lua-5.1.5-r101.ebuild b/dev-lang/lua/lua-5.1.5-r101.ebuild
index 2752c9d3f7e3..26b64301f837 100644
--- a/dev-lang/lua/lua-5.1.5-r101.ebuild
+++ b/dev-lang/lua/lua-5.1.5-r101.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1:0=[${MULTILIB_USEDEP}] )
diff --git a/dev-lang/lua/lua-5.1.5-r102.ebuild b/dev-lang/lua/lua-5.1.5-r102.ebuild
index a1285b5ea776..3324637d0371 100644
--- a/dev-lang/lua/lua-5.1.5-r102.ebuild
+++ b/dev-lang/lua/lua-5.1.5-r102.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1:0=[${MULTILIB_USEDEP}] )
diff --git a/dev-lang/lua/lua-5.1.5-r103.ebuild b/dev-lang/lua/lua-5.1.5-r103.ebuild
index 2fddd839ecad..fcdaba404b5c 100644
--- a/dev-lang/lua/lua-5.1.5-r103.ebuild
+++ b/dev-lang/lua/lua-5.1.5-r103.ebuild
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1:0=[${MULTILIB_USEDEP}] )
diff --git a/dev-lang/lua/lua-5.1.5-r4.ebuild b/dev-lang/lua/lua-5.1.5-r4.ebuild
index 6c2d8de2bdb9..224f3123c8ac 100644
--- a/dev-lang/lua/lua-5.1.5-r4.ebuild
+++ b/dev-lang/lua/lua-5.1.5-r4.ebuild
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1:0=[${MULTILIB_USEDEP}] )"
diff --git a/dev-lang/lua/lua-5.1.5-r5.ebuild b/dev-lang/lua/lua-5.1.5-r5.ebuild
index 3ef185cef35a..bd982069373e 100644
--- a/dev-lang/lua/lua-5.1.5-r5.ebuild
+++ b/dev-lang/lua/lua-5.1.5-r5.ebuild
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline doc"
RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1:0=[${MULTILIB_USEDEP}] )"
diff --git a/dev-lang/lua/lua-5.2.3-r1.ebuild b/dev-lang/lua/lua-5.2.3-r1.ebuild
index ea3c4de61253..7e93c849bb27 100644
--- a/dev-lang/lua/lua-5.2.3-r1.ebuild
+++ b/dev-lang/lua/lua-5.2.3-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( sys-libs/readline:0= )
diff --git a/dev-lang/lua/lua-5.2.3-r2.ebuild b/dev-lang/lua/lua-5.2.3-r2.ebuild
index 486551e908b9..5665ddef9041 100644
--- a/dev-lang/lua/lua-5.2.3-r2.ebuild
+++ b/dev-lang/lua/lua-5.2.3-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( sys-libs/readline:0= )
diff --git a/dev-lang/lua/lua-5.2.3-r3.ebuild b/dev-lang/lua/lua-5.2.3-r3.ebuild
index db6e87a6269b..889a162b0e67 100644
--- a/dev-lang/lua/lua-5.2.3-r3.ebuild
+++ b/dev-lang/lua/lua-5.2.3-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( sys-libs/readline:0= )
diff --git a/dev-lang/lua/lua-5.2.3.ebuild b/dev-lang/lua/lua-5.2.3.ebuild
index 06d5e005376f..4a3d04212339 100644
--- a/dev-lang/lua/lua-5.2.3.ebuild
+++ b/dev-lang/lua/lua-5.2.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.2"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-linux"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( sys-libs/readline:0= )
diff --git a/dev-lang/lua/lua-5.2.4-r1.ebuild b/dev-lang/lua/lua-5.2.4-r1.ebuild
index 9c9a43b0628b..726c0c00ecb4 100644
--- a/dev-lang/lua/lua-5.2.4-r1.ebuild
+++ b/dev-lang/lua/lua-5.2.4-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="5.2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static test test-complete"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/lua/lua-5.2.4-r2.ebuild b/dev-lang/lua/lua-5.2.4-r2.ebuild
index 6a28240ccea7..af89f22a59cb 100644
--- a/dev-lang/lua/lua-5.2.4-r2.ebuild
+++ b/dev-lang/lua/lua-5.2.4-r2.ebuild
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="5.2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static test test-complete"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/lua/lua-5.2.4.ebuild b/dev-lang/lua/lua-5.2.4.ebuild
index 00d64576127b..13c512925ffa 100644
--- a/dev-lang/lua/lua-5.2.4.ebuild
+++ b/dev-lang/lua/lua-5.2.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="5.2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static test test-complete"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/lua/lua-5.3.3-r1.ebuild b/dev-lang/lua/lua-5.3.3-r1.ebuild
index d9d3d697400f..fdd72a0c0c8e 100644
--- a/dev-lang/lua/lua-5.3.3-r1.ebuild
+++ b/dev-lang/lua/lua-5.3.3-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.3"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( sys-libs/readline:0= )
diff --git a/dev-lang/lua/lua-5.3.3-r2.ebuild b/dev-lang/lua/lua-5.3.3-r2.ebuild
index 9f1e88dca52f..629104cf608c 100644
--- a/dev-lang/lua/lua-5.3.3-r2.ebuild
+++ b/dev-lang/lua/lua-5.3.3-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.3"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( sys-libs/readline:0= )
diff --git a/dev-lang/lua/lua-5.3.3.ebuild b/dev-lang/lua/lua-5.3.3.ebuild
index cf0f88ce5ad7..04a18b45f761 100644
--- a/dev-lang/lua/lua-5.3.3.ebuild
+++ b/dev-lang/lua/lua-5.3.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -11,7 +11,7 @@ SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.3"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( sys-libs/readline:0= )
diff --git a/dev-lang/lua/lua-5.3.5-r1.ebuild b/dev-lang/lua/lua-5.3.5-r1.ebuild
index de85ecaa336c..42cfd8a332a3 100644
--- a/dev-lang/lua/lua-5.3.5-r1.ebuild
+++ b/dev-lang/lua/lua-5.3.5-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="5.3"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static test test-complete"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/lua/lua-5.3.5-r2.ebuild b/dev-lang/lua/lua-5.3.5-r2.ebuild
index af6dbd999ef3..954451da521b 100644
--- a/dev-lang/lua/lua-5.3.5-r2.ebuild
+++ b/dev-lang/lua/lua-5.3.5-r2.ebuild
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="5.3"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static test test-complete"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/lua/lua-5.3.5.ebuild b/dev-lang/lua/lua-5.3.5.ebuild
index 672f6d77cf1b..963fb72c4f30 100644
--- a/dev-lang/lua/lua-5.3.5.ebuild
+++ b/dev-lang/lua/lua-5.3.5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="5.3"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static test test-complete"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/mercury-extras/Manifest b/dev-lang/mercury-extras/Manifest
index 969fe3c94800..3eb6b722615d 100644
--- a/dev-lang/mercury-extras/Manifest
+++ b/dev-lang/mercury-extras/Manifest
@@ -1,4 +1,10 @@
-DIST mercury-extras-14.01.1-gentoo-patchset-2.tar.gz 4021 BLAKE2B 6fd5551ec01dd7303a8e1c5661ebec5e33226c1604955f4f69d15e532744584d50bb6cb0e2939c87fd62eb10b1f2f394425ef88cab3e96b81a08a3dcbe695059 SHA512 947ce6fabf661e431f53e4f0a4679eea3ee3fa0c2c585b51cb8b5c9dff98d75697654d5860db3364203e0e657c4d5f68cae1bca469bd0b3f7de9583e97413529
+DIST mercury-extras-14.01.1-gentoo-patchset-4.tar.gz 4361 BLAKE2B a1939e4b76782cb01fc7ee5dcb1ccbb885e93992d0e6f540552eb987f405b3a70671527dfacb873323f6030bb6de2f6cdd23768dbc36e8b656d836e2890b7d8a SHA512 e30ac4e9c0592a1ea5253663bf351814e91977ea53892dca4d996b217aac959265563910cc21aa64ee12a93ea379cb8143730585c7d32390bcf05f2a1b0590d7
+DIST mercury-extras-20.01-gentoo-patchset-0.tar.gz 542 BLAKE2B 4f24f5af21cbd566eb72ce03d618d858f16d02a921b506c933342181ea057d98377077535571223c85b1f1fa5854e52005f67f40dd75bb392929faaad889eed1 SHA512 6a2eb1dbaac1f028c0ce5f0e21a8f24bd4ba9b068f1ea5d8554c5fb7376642797709f0aa93db336d2f015b6f815d0aa27c7d60720aab340ace180d49791bd852
+DIST mercury-extras-20.01.1-gentoo-patchset-0.tar.gz 732 BLAKE2B 32287e116b94b540ca0b710eac8921669ff9a56b5d8a812eba8443609ccfc8c937baaa53a0ae4704abdc78013d58eddd0dc5cda7c807d7a0b724ebda1dede723 SHA512 0d3ca2984eb054ec2add5e05fb49d4fa711b3c78038b4e9777c4767083fc3bae552a261677fed6f07c293d2fb1ebf632ba633eb64a3a8ab4880c6f6619a197ea
DIST mercury-srcdist-14.01.1.tar.gz 52658945 BLAKE2B 6497921a0227b9a6fbcbabdd309ef3325f32dda14fc4ddb443368385b89be4011d677a24b30b3702147d1b782fe2597760ad66dd34503aa6aebaf79707466529 SHA512 a128ef0fd4955abadea32019ec59297ffe32537415f32e9e948cbc1c3439bb40eb09de77569690fb18dd7d6969a2b1141b3ae5baeb87f2627eaa65ad93add92c
-EBUILD mercury-extras-14.01.1.ebuild 4459 BLAKE2B 49198ef8bdde880bffc0e3d3ed1f773e8537a788048750b1f9af4ac76b89171ad78fb6ec3d738b468a7ebbe8c0672867785dafe401292416c6414bafdd72a77e SHA512 439bebd46826ef149591b7d52208694eb10f2df5db6f88486ac9314f4a31fa373e44f9b6f246d62657b374d96c0ccbef85ff26209e41de73a906568c88f9feb5
-MISC metadata.xml 240 BLAKE2B 6b5ab0d76c5748af7bd1800d11864869d7365b8d53e2fd2ec66c1092dd1fdac8461b20c029ffe835357542ca69f789ce867988d64c43019e02fe9e3691f0f9bd SHA512 7cd99ce62ca4f9307fa7dfdbfd0ff9d8ff7485c58cd08cd684065aca4b570f8655587425f6a240453a9e86452de41f26f8b82aa81c023764d0beb47daa1b15d3
+DIST mercury-srcdist-20.01.1.tar.gz 47088335 BLAKE2B 1e3285dadc3748934e801b8ac0316d3005fbe24c20c9ceb694e9fc316d820fdb89c659107b25ee474fd6ac50d661dd029af9ca5082016a3b0827dd640a54a707 SHA512 24ad0bbecee46ab6ff669d63d64096b37a0d010bb44978a1785eee2701a8b30a83eab229af97cbbb18bca55b5e89be9ba74fe126d1d430da1e1e909366dc5b90
+DIST mercury-srcdist-20.01.tar.gz 47103868 BLAKE2B 68be786e925bdf94dcba6c6a2a746a384da345ee33250785d8d2b9281815694a4525cdd694c26f58051c097f2a897291e640e2139729ccede9bd2e472077d8c9 SHA512 90e36faa375603e596b2dd692363528120fda62ae6d2e2b119cf76de1656dae4028aff00858a4bff3fdfb9b2210ea17db0aa516ce4283604c46a5935dd2cd4b7
+EBUILD mercury-extras-14.01.1.ebuild 4543 BLAKE2B e97e6d88006db060b8d3df4ef37e5816d9047388e9deb79ca231d5209f4f79a31e1923d9f98a210ef739f6292bd3c1a432297ccf6bbc0f2c83321a0ff3844332 SHA512 5b6faadbe8fd1c7abc3fb6b28ac1fbc1d4d1a5683afd36d46aee7c6ea07ba07fcba1fb020b65ea9f570220d29ab06abc2a2171716cf94495ec9adc5d234beb24
+EBUILD mercury-extras-20.01.1.ebuild 8085 BLAKE2B 2c5d2ace45872369bd2375995a28475c5f4e69b47c77d3af24e92f3a650a8d64d61e4c69e1a3503da8ac7a855a5576c9f9bda772c2b7248582b2c8c0fd5c4212 SHA512 861b3ad5d55116023a91f95d18c2b7bb992416d9c9283341a6fbf03656c9aea0d4259feeecf38971fbfe2b75ea502cbfc664f83115d5c0bcee93f09b3f8ae0f9
+EBUILD mercury-extras-20.01.ebuild 8127 BLAKE2B 50bdc7b9de3d58bc3ac19e6a3aadccd94f0e2a344ad43795e4ad630f9982202930577be28d24c7d6f08b908795ebfbe4237d069692afa4bf5491cdbb94213334 SHA512 274b4d9e715b0b88b5a445e13bda0495305999820d1866083101071367871442c4ffe9dd5ca68e7a4a1facf1308ce77db27ada715ba30af00b26322a2c963822
+MISC metadata.xml 318 BLAKE2B 8094d1a2d85b6c13ff05e9d81938e498ec514304b338f27cdbb5d92a62090fcace46b95cb21f56db75b6bdf087916a8d2c89960646e1b8828ccf31bbbb73ae6d SHA512 a49e9c19e322bb1b5d8c09c9db8c364b78fb97e62546991dc8bfe86bb2e478fec85e2acbbcdfff52b3b11ec627ba089d1a23e876bf4c1a0633829a739fff50fc
diff --git a/dev-lang/mercury-extras/mercury-extras-14.01.1.ebuild b/dev-lang/mercury-extras/mercury-extras-14.01.1.ebuild
index 6fc2a533fc92..6298fa9e072f 100644
--- a/dev-lang/mercury-extras/mercury-extras-14.01.1.ebuild
+++ b/dev-lang/mercury-extras/mercury-extras-14.01.1.ebuild
@@ -5,7 +5,7 @@ EAPI=5
inherit eutils multilib vcs-clean
-PATCHSET_VER="2"
+PATCHSET_VER="4"
MY_P=mercury-srcdist-${PV}
DESCRIPTION="Additional libraries and tools that are not part of the Mercury standard library"
@@ -92,8 +92,8 @@ src_compile() {
SUBDIRS="${MERCURY_PKGS}" \
EXTRA_MLFLAGS=--no-strip \
EXTRA_CFLAGS="${CFLAGS}" \
- EXTRA_LDFLAGS="${LDFLAGS}" \
- EXTRA_LD_LIBFLAGS="${LDFLAGS}" \
+ EXTRA_LDFLAGS="${LDFLAGS} -L/usr/$(get_libdir)" \
+ EXTRA_LD_LIBFLAGS="${LDFLAGS} -L/usr/$(get_libdir)" \
|| die "mmake failed"
if use cairo; then
@@ -111,8 +111,8 @@ src_install() {
SUBDIRS="${MERCURY_PKGS}" \
EXTRA_MLFLAGS=--no-strip \
EXTRA_CFLAGS="${CFLAGS}" \
- EXTRA_LDFLAGS="${LDFLAGS}" \
- EXTRA_LD_LIBFLAGS="${LDFLAGS}" \
+ EXTRA_LDFLAGS="${LDFLAGS} -L/usr/$(get_libdir)" \
+ EXTRA_LD_LIBFLAGS="${LDFLAGS} -L/usr/$(get_libdir)" \
DESTDIR="${D}" \
INSTALL_PREFIX="${D}"/usr \
install || die "mmake install failed"
diff --git a/dev-lang/mercury-extras/mercury-extras-20.01.1.ebuild b/dev-lang/mercury-extras/mercury-extras-20.01.1.ebuild
new file mode 100644
index 000000000000..7595eae754b7
--- /dev/null
+++ b/dev-lang/mercury-extras/mercury-extras-20.01.1.ebuild
@@ -0,0 +1,317 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils multilib vcs-clean
+
+PATCHSET_VER="0"
+MY_P=mercury-srcdist-${PV}
+
+DESCRIPTION="Additional libraries and tools that are not part of the Mercury standard library"
+HOMEPAGE="http://www.mercurylang.org/index.html"
+SRC_URI="http://dl.mercurylang.org/release/${MY_P}.tar.gz
+ mirror://gentoo/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="cairo examples glut gmp iodbc ncurses odbc opengl ssl tk tommath X xml"
+REQUIRED_USE="?? ( odbc iodbc )"
+
+RDEPEND="
+ ~dev-lang/mercury-${PV}
+ cairo? ( >=x11-libs/cairo-1.10.0 )
+ gmp? ( dev-libs/gmp:0 )
+ glut? ( media-libs/freeglut )
+ odbc? ( dev-db/unixODBC )
+ iodbc? ( dev-db/libiodbc )
+ tommath? ( dev-libs/libtommath )
+ ncurses? ( sys-libs/ncurses:= )
+ opengl? (
+ virtual/opengl
+ virtual/glu
+ )
+ tk? (
+ dev-lang/tcl:0
+ dev-lang/tk:0
+ )
+ X? ( x11-libs/libX11 )"
+
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}"/${MY_P}/extras
+
+mercury_pkgs() {
+ echo "
+ align_right/align_right:bin:
+ base64/mercury_base64:lib:
+ cgi/mercury_www:lib:
+ complex_numbers/complex_numbers:lib:
+ $(use ncurses && echo \
+ curs/curs:lib:ncurses,panel curses/mcurses:lib:ncurses)
+ dynamic_linking/dl:lib:
+ error/error:bin:
+ fixed/fixed:lib:
+ $(use gmp && echo gmp_int/gmp_int:lib:)
+ $(use tommath && echo mp_int/mp_int:lib:libtommath)
+ $(use X && echo graphics/easyx/easyx:lib:x11)
+ $(use cairo && echo graphics/mercury_cairo/mercury_cairo:lib:cairo)
+ $(use glut && echo graphics/mercury_glut/mercury_glut:lib:freeglut)
+ $(use opengl && echo graphics/mercury_opengl/mercury_opengl:lib:gl,glu)
+ $(use tk && echo graphics/mercury_tcltk/mercury_tcltk:lib:tk)
+ lex/lex:lib:
+ lex/regex:lib:
+ moose/moose:bin:
+ net/net:lib:
+ net/echo:bin:
+ $(use ssl && echo mopenssl/mopenssl:lib:openssl)
+ $(use odbc && echo odbc/odbc:lib:)
+ $(use iodbc && echo odbc/odbc:lib:libiodbc)
+ posix/posix:lib:
+ $(has_version dev-lang/mercury[trail] && echo \
+ references/global:lib: trailed_update/trailed_update:lib:)
+ show_ops/show_ops:bin:
+ solver_types/library/any:lib:
+ $(use xml && echo xml/xml:lib:)"
+}
+
+mercury_pkg_setup() {
+ mercury_pkg=${1%%:*}
+ mercury_pkg_dir=${mercury_pkg%/*}
+ mercury_pkg_name=${mercury_pkg##*/}
+
+ mercury_pkg_atts=${1#*:}
+ mercury_pkg_type=${mercury_pkg_atts%%:*}
+ mercury_pkg_deps=${mercury_pkg_atts#*:}
+
+ cd "${S}"/${mercury_pkg_dir} || die
+
+ echo ">> Preparing Mercury package: ${mercury_pkg}"
+
+ if ! test -f "${S}"/${mercury_pkg_dir}/gentoo.params; then
+ echo "LIBGRADES := \$(filter-out java,\$(LIBGRADES))" \
+ > "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo "LIBGRADES := \$(filter-out erlang,\$(LIBGRADES))" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo "LIBGRADES := \$(filter-out csharp,\$(LIBGRADES))" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo "include gentoo.params" > "${S}"/${mercury_pkg_dir}/Mmakefile
+ fi
+
+ if test -n "$mercury_pkg_deps"; then
+ echo "EXTRA_CFLAGS += $(pkg-config --cflags ${mercury_pkg_deps/,/ })" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo "EXTRA_MLLIBS += $(pkg-config --libs ${mercury_pkg_deps/,/ })" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ fi
+
+ if test ${mercury_pkg_name} = dl; then
+ echo "EXTRA_MLLIBS = -ldl" >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ elif test ${mercury_pkg_name} = gmp_int; then
+ echo "EXTRA_MLLIBS = -lgmp" >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ elif test ${mercury_pkg_name} = mercury_tcltk; then
+ echo "EXTRA_CFLAGS += -DUSE_INTERP_RESULT" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ elif test ${mercury_pkg_name} = mopenssl; then
+ local net_libdir="${D}/usr/$(get_libdir)/mercury/extras/lib/\$(GRADE)"
+ echo "EXTRA_MLLIBS += -L${net_libdir} -L../net -lnet" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo "net%:" >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo " cp ../net/\$@ \$@" >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ elif test ${mercury_pkg_name} = odbc && use odbc; then
+ echo "EXTRA_CFLAGS = -DMODBC_UNIX -DMODBC_MYSQL" \
+ >> "${S}"/${mercury_pkg_dir}/Mmakefile
+ echo "EXTRA_MLLIBS = -lodbc" >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ elif test ${mercury_pkg_name} = odbc && use iodbc; then
+ echo "EXTRA_CFLAGS += -DMODBC_IODBC -DMODBC_MYSQL" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ fi
+}
+
+mercury_pkg_compile() {
+ mercury_pkg=${1%%:*}
+ mercury_pkg_dir=${mercury_pkg%/*}
+ mercury_pkg_name=${mercury_pkg##*/}
+
+ mercury_pkg_atts=${1#*:}
+ mercury_pkg_type=${mercury_pkg_atts%:*}
+
+ cd "${S}"/${mercury_pkg_dir} || die
+
+ echo ">> Compiling Mercury package: ${mercury_pkg}"
+
+ if test "${mercury_pkg_type}" = "bin"; then
+ mercury_mmc_target=${mercury_pkg_name}
+ else
+ mercury_mmc_target=lib${mercury_pkg_name}
+ fi
+
+ # Mercury dependency generation must be run single-threaded
+ mmc -f *.m || die "mmc -f .m failed"
+ mmake -j1 \
+ ${mercury_pkg_name}.depend \
+ || die "mmake ${mercury_pkg} depend failed"
+
+ # Compiling Mercury submodules is not thread-safe
+ mmake -j1 \
+ MLFLAGS=--no-strip \
+ CFLAGS="${CFLAGS}" \
+ LD_LIBFLAGS="${LDFLAGS}" \
+ ${mercury_mmc_target} || die "mmake ${mercury_pkg} failed"
+
+}
+
+mercury_pkg_install() {
+ mercury_pkg=${1%%:*}
+ mercury_pkg_dir=${mercury_pkg%/*}
+ mercury_pkg_name=${mercury_pkg##*/}
+
+ mercury_pkg_atts=${1#*:}
+ mercury_pkg_type=${mercury_pkg_atts%:*}
+
+ cd "${S}"/${mercury_pkg_dir} || die
+
+ echo ">> Installing Mercury package: ${mercury_pkg}"
+
+ if test "${mercury_pkg_type}" = "bin"; then
+ into /usr/$(get_libdir)/mercury/extras
+ dobin ${mercury_pkg_name}
+ else
+ # Compiling Mercury submodules is not thread-safe
+ mmake -j1 \
+ MLFLAGS=--no-strip \
+ CFLAGS="${CFLAGS}" \
+ LD_LIBFLAGS="${LDFLAGS}" \
+ INSTALL_LIBDIR="${D}/usr/$(get_libdir)/mercury/extras" \
+ lib${mercury_pkg_name}.install || die "mmake ${mercury_pkg} failed"
+ fi
+}
+
+src_prepare() {
+ cd "${WORKDIR}"/${MY_P}
+ if [[ -d "${WORKDIR}"/${PV} ]] ; then
+ eapply "${WORKDIR}"/${PV}
+ fi
+ eapply_user
+
+ cd "${S}"
+ for mercury_pkg in $(mercury_pkgs); do
+ mercury_pkg_setup ${mercury_pkg}
+ done
+}
+
+src_compile() {
+ for mercury_pkg in $(mercury_pkgs); do
+ mercury_pkg_compile ${mercury_pkg}
+ done
+}
+
+src_install() {
+ for mercury_pkg in $(mercury_pkgs); do
+ mercury_pkg_install ${mercury_pkg}
+ done
+
+ cd "${S}"
+ dodoc README
+
+ if use examples; then
+ docinto samples/cgi
+ dodoc cgi/form_test.m
+
+ docinto samples/complex_numbers
+ dodoc complex_numbers/samples/*.m
+
+ if use ncurses; then
+ docinto samples/curs
+ dodoc curs/samples/*.m
+
+ docinto samples/curses
+ dodoc curses/sample/*.m
+ fi
+
+ docinto samples/dynamic_linking
+ dodoc dynamic_linking/{hello,dl_test}.m
+
+ docinto samples/gator
+ dodoc -r gator/*
+
+ if use gmp; then
+ docinto samples/gmp_int
+ dodoc gmp_int/gmp_int_test.m
+ fi
+
+ if use tommath; then
+ docinto samples/mp_int
+ dodoc mp_int/mp_int_test.m
+ fi
+
+ if use X; then
+ docinto samples/graphics
+ dodoc graphics/easyx/samples/*.m
+ fi
+
+ if use glut && use opengl; then
+ docinto samples/graphics
+ dodoc graphics/samples/gears/*.m
+ dodoc graphics/samples/maze/*.m
+ fi
+
+ if use tk; then
+ docinto samples/graphics
+ dodoc graphics/samples/calc/*.m
+ fi
+
+ if use opengl && use tk; then
+ docinto samples/graphics
+ dodoc graphics/samples/pent/*.m
+ fi
+
+ docinto samples/lex
+ dodoc lex/samples/*.m
+
+ docinto samples/log4m
+ dodoc log4m/*.m
+
+ docinto samples/monte
+ dodoc monte/*.m
+
+ docinto samples/moose
+ dodoc moose/samples/*
+
+ docinto samples/net
+ dodoc net/test_lookups.m
+
+ if use odbc || use iodbc; then
+ docinto samples/odbc
+ dodoc odbc/odbc_test.m
+ fi
+
+ docinto samples/posix
+ dodoc posix/samples/*.m
+
+ docinto samples/random
+ dodoc random/*.m
+
+ if has_version dev-lang/mercury[trail]; then
+ docinto samples/references
+ dodoc references/samples/*.m
+
+ docinto samples/trail
+ dodoc trail/*.m
+
+ docinto samples/trailed_update
+ dodoc trailed_update/samples/*.m
+ fi
+
+ if use xml; then
+ docinto samples/xml
+ dodoc xml/tryit.m
+ dodoc xml/samples/*
+ dodoc xml_stylesheets/*.xsl
+ fi
+
+ ecvs_clean
+ fi
+}
diff --git a/dev-lang/mercury-extras/mercury-extras-20.01.ebuild b/dev-lang/mercury-extras/mercury-extras-20.01.ebuild
new file mode 100644
index 000000000000..8a9593959aee
--- /dev/null
+++ b/dev-lang/mercury-extras/mercury-extras-20.01.ebuild
@@ -0,0 +1,317 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils multilib vcs-clean
+
+PATCHSET_VER="0"
+MY_P=mercury-srcdist-${PV}
+
+DESCRIPTION="Additional libraries and tools that are not part of the Mercury standard library"
+HOMEPAGE="http://www.mercurylang.org/index.html"
+SRC_URI="http://dl.mercurylang.org/release/${MY_P}.tar.gz
+ mirror://gentoo/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="cairo examples glut gmp iodbc ncurses odbc opengl ssl tk tommath X xml"
+REQUIRED_USE="?? ( odbc iodbc )"
+
+RDEPEND="
+ ~dev-lang/mercury-${PV}
+ cairo? ( >=x11-libs/cairo-1.10.0 )
+ gmp? ( dev-libs/gmp:0 )
+ glut? ( media-libs/freeglut )
+ odbc? ( dev-db/unixODBC )
+ iodbc? ( dev-db/libiodbc )
+ tommath? ( dev-libs/libtommath )
+ ncurses? ( sys-libs/ncurses:= )
+ opengl? (
+ virtual/opengl
+ virtual/glu
+ )
+ tk? (
+ dev-lang/tcl:0
+ dev-lang/tk:0
+ )
+ X? ( x11-libs/libX11 )"
+
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}"/${MY_P}/extras
+
+mercury_pkgs() {
+ echo "
+ align_right/align_right:bin:
+ base64/mercury_base64:lib:
+ cgi/mercury_www:lib:
+ complex_numbers/complex_numbers:lib:
+ $(use ncurses && echo \
+ curs/curs:lib:ncurses,panel curses/mcurses:lib:ncurses)
+ dynamic_linking/dl:lib:
+ error/error:bin:
+ fixed/fixed:lib:
+ $(use gmp && echo gmp_int/gmp_int:lib:)
+ $(use tommath && echo mp_int/mp_int:lib:libtommath)
+ $(use X && echo graphics/easyx/easyx:lib:x11)
+ $(use cairo && echo graphics/mercury_cairo/mercury_cairo:lib:cairo)
+ $(use glut && echo graphics/mercury_glut/mercury_glut:lib:freeglut)
+ $(use opengl && echo graphics/mercury_opengl/mercury_opengl:lib:gl,glu)
+ $(use tk && echo graphics/mercury_tcltk/mercury_tcltk:lib:tk)
+ lex/lex:lib:
+ lex/regex:lib:
+ moose/moose:bin:
+ net/net:lib:
+ net/echo:bin:
+ $(use ssl && echo mopenssl/mopenssl:lib:openssl)
+ $(use odbc && echo odbc/odbc:lib:)
+ $(use iodbc && echo odbc/odbc:lib:libiodbc)
+ posix/posix:lib:
+ $(has_version dev-lang/mercury[trail] && echo \
+ references/global:lib: trailed_update/trailed_update:lib:)
+ show_ops/show_ops:bin:
+ solver_types/library/any:lib:
+ $(use xml && echo xml/xml:lib:)"
+}
+
+mercury_pkg_setup() {
+ mercury_pkg=${1%%:*}
+ mercury_pkg_dir=${mercury_pkg%/*}
+ mercury_pkg_name=${mercury_pkg##*/}
+
+ mercury_pkg_atts=${1#*:}
+ mercury_pkg_type=${mercury_pkg_atts%%:*}
+ mercury_pkg_deps=${mercury_pkg_atts#*:}
+
+ cd "${S}"/${mercury_pkg_dir} || die
+
+ echo ">> Preparing Mercury package: ${mercury_pkg}"
+
+ if ! test -f "${S}"/${mercury_pkg_dir}/gentoo.params; then
+ echo "LIBGRADES := \$(filter-out java,\$(LIBGRADES))" \
+ > "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo "LIBGRADES := \$(filter-out erlang,\$(LIBGRADES))" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo "LIBGRADES := \$(filter-out csharp,\$(LIBGRADES))" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo "include gentoo.params" > "${S}"/${mercury_pkg_dir}/Mmakefile
+ fi
+
+ if test -n "$mercury_pkg_deps"; then
+ echo "EXTRA_CFLAGS += $(pkg-config --cflags ${mercury_pkg_deps/,/ })" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo "EXTRA_MLLIBS += $(pkg-config --libs ${mercury_pkg_deps/,/ })" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ fi
+
+ if test ${mercury_pkg_name} = dl; then
+ echo "EXTRA_MLLIBS = -ldl" >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ elif test ${mercury_pkg_name} = gmp_int; then
+ echo "EXTRA_MLLIBS = -lgmp" >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ elif test ${mercury_pkg_name} = mercury_tcltk; then
+ echo "EXTRA_CFLAGS += -DUSE_INTERP_RESULT" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ elif test ${mercury_pkg_name} = mopenssl; then
+ local net_libdir="${D}/usr/$(get_libdir)/mercury/extras/lib/\$(GRADE)"
+ echo "EXTRA_MLLIBS += -L${net_libdir} -L../net -lnet" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo "net%:" >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ echo " cp ../net/\$@ \$@" >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ elif test ${mercury_pkg_name} = odbc && use odbc; then
+ echo "EXTRA_CFLAGS = -DMODBC_UNIX -DMODBC_MYSQL" \
+ >> "${S}"/${mercury_pkg_dir}/Mmakefile
+ echo "EXTRA_MLLIBS = -lodbc" >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ elif test ${mercury_pkg_name} = odbc && use iodbc; then
+ echo "EXTRA_CFLAGS += -DMODBC_IODBC -DMODBC_MYSQL" \
+ >> "${S}"/${mercury_pkg_dir}/gentoo.params
+ fi
+}
+
+mercury_pkg_compile() {
+ mercury_pkg=${1%%:*}
+ mercury_pkg_dir=${mercury_pkg%/*}
+ mercury_pkg_name=${mercury_pkg##*/}
+
+ mercury_pkg_atts=${1#*:}
+ mercury_pkg_type=${mercury_pkg_atts%:*}
+
+ cd "${S}"/${mercury_pkg_dir} || die
+
+ echo ">> Compiling Mercury package: ${mercury_pkg}"
+
+ if test "${mercury_pkg_type}" = "bin"; then
+ mercury_mmc_target=${mercury_pkg_name}
+ else
+ mercury_mmc_target=lib${mercury_pkg_name}
+ fi
+
+ # Mercury dependency generation must be run single-threaded
+ mmc -f *.m || die "mmc -f .m failed"
+ mmake -j1 \
+ ${mercury_pkg_name}.depend \
+ || die "mmake ${mercury_pkg} depend failed"
+
+ # Compiling Mercury submodules is not thread-safe
+ mmake -j1 \
+ MLFLAGS=--no-strip \
+ CFLAGS="${CFLAGS}" \
+ LD_LIBFLAGS="${LDFLAGS} -L/usr/$(get_libdir)" \
+ ${mercury_mmc_target} || die "mmake ${mercury_pkg} failed"
+
+}
+
+mercury_pkg_install() {
+ mercury_pkg=${1%%:*}
+ mercury_pkg_dir=${mercury_pkg%/*}
+ mercury_pkg_name=${mercury_pkg##*/}
+
+ mercury_pkg_atts=${1#*:}
+ mercury_pkg_type=${mercury_pkg_atts%:*}
+
+ cd "${S}"/${mercury_pkg_dir} || die
+
+ echo ">> Installing Mercury package: ${mercury_pkg}"
+
+ if test "${mercury_pkg_type}" = "bin"; then
+ into /usr/$(get_libdir)/mercury/extras
+ dobin ${mercury_pkg_name}
+ else
+ # Compiling Mercury submodules is not thread-safe
+ mmake -j1 \
+ MLFLAGS=--no-strip \
+ CFLAGS="${CFLAGS}" \
+ LD_LIBFLAGS="${LDFLAGS} -L/usr/$(get_libdir)" \
+ INSTALL_LIBDIR="${D}/usr/$(get_libdir)/mercury/extras" \
+ lib${mercury_pkg_name}.install || die "mmake ${mercury_pkg} failed"
+ fi
+}
+
+src_prepare() {
+ cd "${WORKDIR}"/${MY_P}
+ if [[ -d "${WORKDIR}"/${PV} ]] ; then
+ eapply "${WORKDIR}"/${PV}
+ fi
+ eapply_user
+
+ cd "${S}"
+ for mercury_pkg in $(mercury_pkgs); do
+ mercury_pkg_setup ${mercury_pkg}
+ done
+}
+
+src_compile() {
+ for mercury_pkg in $(mercury_pkgs); do
+ mercury_pkg_compile ${mercury_pkg}
+ done
+}
+
+src_install() {
+ for mercury_pkg in $(mercury_pkgs); do
+ mercury_pkg_install ${mercury_pkg}
+ done
+
+ cd "${S}"
+ dodoc README
+
+ if use examples; then
+ docinto samples/cgi
+ dodoc cgi/form_test.m
+
+ docinto samples/complex_numbers
+ dodoc complex_numbers/samples/*.m
+
+ if use ncurses; then
+ docinto samples/curs
+ dodoc curs/samples/*.m
+
+ docinto samples/curses
+ dodoc curses/sample/*.m
+ fi
+
+ docinto samples/dynamic_linking
+ dodoc dynamic_linking/{hello,dl_test}.m
+
+ docinto samples/gator
+ dodoc -r gator/*
+
+ if use gmp; then
+ docinto samples/gmp_int
+ dodoc gmp_int/gmp_int_test.m
+ fi
+
+ if use tommath; then
+ docinto samples/mp_int
+ dodoc mp_int/mp_int_test.m
+ fi
+
+ if use X; then
+ docinto samples/graphics
+ dodoc graphics/easyx/samples/*.m
+ fi
+
+ if use glut && use opengl; then
+ docinto samples/graphics
+ dodoc graphics/samples/gears/*.m
+ dodoc graphics/samples/maze/*.m
+ fi
+
+ if use tk; then
+ docinto samples/graphics
+ dodoc graphics/samples/calc/*.m
+ fi
+
+ if use opengl && use tk; then
+ docinto samples/graphics
+ dodoc graphics/samples/pent/*.m
+ fi
+
+ docinto samples/lex
+ dodoc lex/samples/*.m
+
+ docinto samples/log4m
+ dodoc log4m/*.m
+
+ docinto samples/monte
+ dodoc monte/*.m
+
+ docinto samples/moose
+ dodoc moose/samples/*
+
+ docinto samples/net
+ dodoc net/test_lookups.m
+
+ if use odbc || use iodbc; then
+ docinto samples/odbc
+ dodoc odbc/odbc_test.m
+ fi
+
+ docinto samples/posix
+ dodoc posix/samples/*.m
+
+ docinto samples/random
+ dodoc random/*.m
+
+ if has_version dev-lang/mercury[trail]; then
+ docinto samples/references
+ dodoc references/samples/*.m
+
+ docinto samples/trail
+ dodoc trail/*.m
+
+ docinto samples/trailed_update
+ dodoc trailed_update/samples/*.m
+ fi
+
+ if use xml; then
+ docinto samples/xml
+ dodoc xml/tryit.m
+ dodoc xml/samples/*
+ dodoc xml_stylesheets/*.xsl
+ fi
+
+ ecvs_clean
+ fi
+}
diff --git a/dev-lang/mercury-extras/metadata.xml b/dev-lang/mercury-extras/metadata.xml
index c301cedb922a..d51dcb06bfde 100644
--- a/dev-lang/mercury-extras/metadata.xml
+++ b/dev-lang/mercury-extras/metadata.xml
@@ -5,4 +5,7 @@
<email>keri@gentoo.org</email>
<name>Keri Harris</name>
</maintainer>
+<use>
+ <flag name="tommath">Enable support for tommath library</flag>
+</use>
</pkgmetadata>
diff --git a/dev-lang/mercury/Manifest b/dev-lang/mercury/Manifest
index 930c79aca18b..2d103fd0f67f 100644
--- a/dev-lang/mercury/Manifest
+++ b/dev-lang/mercury/Manifest
@@ -1,5 +1,11 @@
AUX 50mercury-gentoo.el 130 BLAKE2B b0108f529cbe5b66b510b2ebab6f091825df9ac92dc1d98bc98b34532b6c217ea5ede7bc5960f6616c3a8201788c6a5094b30871fba15e5ded87eb97ab3f7c1f SHA512 e790f1b396f63bf36e57160d588b1377d3f889156446a7d26a6edd3f7175ee8ac5b8972ee4d0b6045b5442ae750341b5e06adc42f094fd6d08f2b519f4432071
-DIST mercury-14.01.1-gentoo-patchset-4.tar.gz 4903 BLAKE2B 3301e220a5d4461c268bf68f1596e2204b4f0931b20c027fcdd35128af20317eb32d646b64fceebd4958e7e4c7efd2fd289e7f57013c1f78f80ee6b97da5d91d SHA512 3fbf75fb88c8fdebefcf847acb7959fe582503922f0cbb6c234f18a56cea8153eaf2325db3b827e8cc802803c9ecf9e755493a895c4a15445dc406ac143d0200
+DIST mercury-14.01.1-gentoo-patchset-5.tar.gz 5693 BLAKE2B 300de3254bc0d2f59493c0e2243b0d8786fccce714134a11ce510120b7d9f05ebe4835f084ec2db2ddaf2d405cbae65e86d809847079a7d63a6a68021d9d29e8 SHA512 3f9f1e2359f372e4f510b9a00c197978657b28d1308d12cba4d08a982877e2311d7fb6e626dad07d0fa09d24f97334575557cb49003508fdc7b32288c1ae8f2d
+DIST mercury-20.01-gentoo-patchset-0.tar.gz 3862 BLAKE2B 79ef6d30add63a5d419e3dd5b376fd9c1727038102db2bc0e8ccd8b71cdc1c80e721647f34764b0aa4fd6d58b9e38c9675f234714f381f94be572b9b64b478e1 SHA512 2835b4740453bcc358363f9eaa0264706125b5e5f7a38802d5f280ccd777d4c760124ed3a635f17ecc2ae772767e9fa5d61093c40094358a0a96a726a23ff08e
+DIST mercury-20.01.1-gentoo-patchset-0.tar.gz 3943 BLAKE2B 0fd149c622715bf191182bd93e264096327d7869e30aaa10bb19b70bec5563520026e2561cc6607c62801ed00ed6b5907bbae4be997869b9facb2f9d65ec0c7a SHA512 d866b35b6df14645ef60ff25497f9bbf0c2caeae2145bc0aef2adea0e651379c673c1815c717f1a51457d93cc67e9ae3dafe5d9fce1d4734bf1673e4cfcbd367
DIST mercury-srcdist-14.01.1.tar.gz 52658945 BLAKE2B 6497921a0227b9a6fbcbabdd309ef3325f32dda14fc4ddb443368385b89be4011d677a24b30b3702147d1b782fe2597760ad66dd34503aa6aebaf79707466529 SHA512 a128ef0fd4955abadea32019ec59297ffe32537415f32e9e948cbc1c3439bb40eb09de77569690fb18dd7d6969a2b1141b3ae5baeb87f2627eaa65ad93add92c
-EBUILD mercury-14.01.1-r1.ebuild 5637 BLAKE2B 56ebcc70e4c9e961e66a5024716c596f720521058629f651e2a503a3bb2c0c8eb898f57d6ccc2e4974a93630795b090666b4b9535c9690cb2691e6d31101c26f SHA512 0c0653db2b9ac2dad00f4957dae8889d31b46f0288f8b68ebd6f4cf3112d896d4ab0249b970d84ae8ff0cbdb6678a29d231e19bb9055f3b030ce70a497de22f9
+DIST mercury-srcdist-20.01.1.tar.gz 47088335 BLAKE2B 1e3285dadc3748934e801b8ac0316d3005fbe24c20c9ceb694e9fc316d820fdb89c659107b25ee474fd6ac50d661dd029af9ca5082016a3b0827dd640a54a707 SHA512 24ad0bbecee46ab6ff669d63d64096b37a0d010bb44978a1785eee2701a8b30a83eab229af97cbbb18bca55b5e89be9ba74fe126d1d430da1e1e909366dc5b90
+DIST mercury-srcdist-20.01.tar.gz 47103868 BLAKE2B 68be786e925bdf94dcba6c6a2a746a384da345ee33250785d8d2b9281815694a4525cdd694c26f58051c097f2a897291e640e2139729ccede9bd2e472077d8c9 SHA512 90e36faa375603e596b2dd692363528120fda62ae6d2e2b119cf76de1656dae4028aff00858a4bff3fdfb9b2210ea17db0aa516ce4283604c46a5935dd2cd4b7
+EBUILD mercury-14.01.1-r1.ebuild 5624 BLAKE2B 0ddb116dec074a53e316935279650cecae3990ec9cbdbfbc1e99e6c47d0fceb20bcbb685259a78e18a850fafe2e4d609072a5183a2ef9ef3a6d45ba9368dbdc7 SHA512 338dee876d50fee43085a203b6adafaeb0f921c855925bda05ba3b30f133ac8eab9dfd476793d63f99ef5f9e4cb40775c9255c835c38685dd13fa78b54b2690f
+EBUILD mercury-20.01.1.ebuild 4984 BLAKE2B 55587832b1021ed04397d28a254bc17ca6172b52ac2afa89979f99a65d90107b52ea3758303d26b224ccffda5e5a2be76655d5791f0d2fa6d3fcb69caf5ae01b SHA512 fd270ddc8913049f2bb8cf472c85fc5d4724a4d979399ed2919cc34760c61492ec46fe8c9abbe2b7b9f43c0ff7fc608bfcba744bbbd05a75e0d1aa4387ba6c91
+EBUILD mercury-20.01.ebuild 5129 BLAKE2B 93b409d07e9a60705630c17100da0231b5aaa74089990b32d02dbbde77681c428242f096a39b90e2136aba6fb30310ced9e98aeaecc6d2dc553f427461dc27f5 SHA512 4355a4e2f2280c9196c4e1aedd804b94b50933da23a9337b948756a1a8c5f824320d837f5dd49a1e498e7b0d68e9786c00afcb3d5d90fba1975f5626d0787430
MISC metadata.xml 384 BLAKE2B eaed468c341970157e4e641d25d5d87e0851bdbd31ba9d6c1e428c9f0239ad98220395858d6291fabe41561fb2ecc5c894700a86b290fc3cab2eaeda2a9df372 SHA512 c90a7a81ab16bac0af4bb9dd3f47cfb3987e0c3aebe08bb7ac6125baf7c619269318bd2c7a45e4213184544d981c920cace23ccb61fbb60c0872db77a10e3ecf
diff --git a/dev-lang/mercury/mercury-14.01.1-r1.ebuild b/dev-lang/mercury/mercury-14.01.1-r1.ebuild
index 9ba41fae06f0..3584581c3cea 100644
--- a/dev-lang/mercury/mercury-14.01.1-r1.ebuild
+++ b/dev-lang/mercury/mercury-14.01.1-r1.ebuild
@@ -5,7 +5,7 @@ EAPI=5
inherit autotools elisp-common eutils flag-o-matic java-pkg-opt-2 multilib vcs-clean xdg-utils
-PATCHSET_VER="4"
+PATCHSET_VER="5"
MY_P=${PN}-srcdist-${PV}
DESCRIPTION="Mercury is a modern general-purpose logic/functional programming language"
@@ -107,8 +107,7 @@ src_compile() {
emake \
PARALLEL="'${MAKEOPTS}'" \
MERCURY_COMPILER="${S}"/compiler/mercury_compile \
- TEXI2DVI="" PDFTEX="" \
- compiler
+ TEXI2DVI="" PDFTEX=""
# The default Mercury grade may not be the same as the bootstrap
# grade. Since src_test() is run before src_install() we compile
diff --git a/dev-lang/mercury/mercury-20.01.1.ebuild b/dev-lang/mercury/mercury-20.01.1.ebuild
new file mode 100644
index 000000000000..6770d4264de4
--- /dev/null
+++ b/dev-lang/mercury/mercury-20.01.1.ebuild
@@ -0,0 +1,201 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools elisp-common eutils flag-o-matic java-pkg-opt-2 multilib vcs-clean xdg-utils
+
+PATCHSET_VER="0"
+MY_P=${PN}-srcdist-${PV}
+
+DESCRIPTION="Mercury is a modern general-purpose logic/functional programming language"
+HOMEPAGE="http://www.mercurylang.org/index.html"
+SRC_URI="http://dl.mercurylang.org/release/${MY_P}.tar.gz
+ mirror://gentoo/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="debug doc emacs erlang examples java mono profile readline threads trail"
+
+DEPEND="net-libs/libnsl:0=
+ readline? ( sys-libs/readline:= )
+ erlang? ( dev-lang/erlang )
+ java? ( >=virtual/jdk-1.6:= )
+ mono? ( dev-lang/mono )
+ doc? ( sys-apps/texinfo )"
+
+RDEPEND="${DEPEND}
+ emacs? ( >=app-editors/emacs-23.1:* )"
+
+S="${WORKDIR}"/${MY_P}
+
+SITEFILE=50${PN}-gentoo.el
+
+src_prepare() {
+ if [[ -d "${WORKDIR}"/${PV} ]] ; then
+ eapply "${WORKDIR}"/${PV}
+ fi
+ eapply_user
+
+ AT_M4DIR=m4 eautoreconf
+
+ xdg_environment_reset
+}
+
+src_configure() {
+ strip-flags
+
+ local myconf
+ myconf="--libdir=/usr/$(get_libdir) \
+ $(use_enable mono csharp-grade) \
+ $(use_enable erlang erlang-grade) \
+ $(use_enable java java-grade) \
+ $(use_enable debug debug-grades) \
+ $(use_enable profile prof-grades) \
+ $(use_enable threads par-grades) \
+ $(use_enable trail trail-grades) \
+ $(use_with readline)"
+
+ econf ${myconf}
+}
+
+src_compile() {
+ # Prepare mmake flags
+ echo "EXTRA_CFLAGS = ${CFLAGS}" >> Mmake.params
+ echo "EXTRA_LD_LIBFLAGS = ${LDFLAGS}" >> Mmake.params
+ echo "EXTRA_MLFLAGS = --no-strip" >> Mmake.params
+
+ echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libgc.so" >> boehm_gc/Mmake.boehm_gc.params
+ echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libmer_rt.so" >> runtime/Mmake.runtime.params
+ echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libmer_std.so" >> library/Mmake.library.params
+
+ # Build Mercury using bootstrap grade
+ emake \
+ PARALLEL="'${MAKEOPTS}'" \
+ TEXI2DVI="" PDFTEX=""
+
+ # We can now patch .m Mercury compiler files since we
+ # have just built mercury_compiler.
+ if [[ -d "${WORKDIR}"/${PV}-mmc ]] ; then
+ eapply "${WORKDIR}"/${PV}-mmc
+ fi
+
+ # Rebuild Mercury compiler using the just built mercury_compiler
+ emake \
+ PARALLEL="'${MAKEOPTS}'" \
+ MERCURY_COMPILER="${S}"/compiler/mercury_compile \
+ TEXI2DVI="" PDFTEX=""
+
+ # The default Mercury grade may not be the same as the bootstrap
+ # grade. Since src_test() is run before src_install() we compile
+ # the default grade now
+ emake \
+ PARALLEL="'${MAKEOPTS}'" \
+ MERCURY_COMPILER="${S}"/compiler/mercury_compile \
+ TEXI2DVI="" PDFTEX="" \
+ default_grade
+}
+
+src_test() {
+ TEST_GRADE=$(scripts/ml --print-grade)
+ if [ -d "${S}"/install_grade_dir.${TEST_GRADE} ] ; then
+ TWS="${S}"/install_grade_dir.${TEST_GRADE}
+ cp runtime/mer_rt.init "${TWS}"/runtime/
+ cp mdbcomp/mer_mdbcomp.init "${TWS}"/mdbcomp/
+ cp browser/mer_browser.init "${TWS}"/browser/
+ else
+ TWS="${S}"
+ fi
+
+ cd "${S}"/tests || die
+ sed -e "s:@WORKSPACE@:${TWS}:" \
+ < WS_FLAGS.ws \
+ > WS_FLAGS \
+ || die "sed WORKSPACE failed"
+ sed -e "s:@WORKSPACE@:${TWS}:" \
+ < .mgnuc_copts.ws \
+ > .mgnuc_copts \
+ || die "sed WORKSPACE failed"
+ find . -mindepth 1 -type d -exec cp .mgnuc_opts {} \;
+ find . -mindepth 1 -type d -exec cp .mgnuc_copts {} \;
+
+ # Mercury tests must be run in C locale since Mercury output is
+ # compared to hard-coded warnings/errors
+ LC_ALL="C" \
+ PATH="${TWS}"/scripts:"${TWS}"/util:"${S}"/slice:"${PATH}" \
+ TERM="" \
+ WORKSPACE="${TWS}" \
+ WORKSPACE_FLAGS=yes \
+ MERCURY_COMPILER="${TWS}"/compiler/mercury_compile \
+ MMAKE_DIR="${TWS}"/scripts \
+ MERCURY_SUPPRESS_STACK_TRACE=yes \
+ GRADE=${TEST_GRADE} \
+ mmake || die "mmake test failed"
+}
+
+src_install() {
+ emake \
+ PARALLEL="'${MAKEOPTS}'" \
+ MERCURY_COMPILER="${S}"/compiler/mercury_compile \
+ TEXI2DVI="" PDFTEX="" \
+ DESTDIR="${D}" \
+ INSTALL_ELISP_DIR="${D}/${SITELISP}"/${PN} \
+ install
+
+ if use java; then
+ keepdir /usr/$(get_libdir)/mercury/modules/java
+ fi
+
+ if use mono; then
+ keepdir /usr/$(get_libdir)/mercury/modules/csharp
+ fi
+
+ if use emacs; then
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}" \
+ || die "elisp-site-file-install failed"
+ fi
+
+ dodoc \
+ BUGS HISTORY LIMITATIONS NEWS README README.Linux \
+ README.Linux-Alpha README.Linux-m68k README.Linux-PPC \
+ RELEASE_NOTES VERSION || die
+
+ if use erlang; then
+ dodoc README.Erlang
+ fi
+
+ if use java; then
+ dodoc README.Java
+ fi
+
+ if use mono; then
+ dodoc README.CSharp
+ fi
+
+ if use examples; then
+ docinto /usr/share/doc/${PF}/samples
+ dodoc samples/{*.m,README,Mmakefile}
+ dodoc -r samples/c_interface \
+ samples/diff \
+ samples/muz \
+ samples/rot13 \
+ samples/solutions \
+ samples/solver_types
+
+ if use java; then
+ dodoc -r samples/java_interface
+ fi
+
+ ecvs_clean "${D}"/usr/share/doc/${PF}/samples
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-lang/mercury/mercury-20.01.ebuild b/dev-lang/mercury/mercury-20.01.ebuild
new file mode 100644
index 000000000000..4ee03178b5f5
--- /dev/null
+++ b/dev-lang/mercury/mercury-20.01.ebuild
@@ -0,0 +1,206 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools elisp-common eutils flag-o-matic java-pkg-opt-2 multilib vcs-clean xdg-utils
+
+PATCHSET_VER="0"
+MY_P=${PN}-srcdist-${PV}
+
+DESCRIPTION="Mercury is a modern general-purpose logic/functional programming language"
+HOMEPAGE="http://www.mercurylang.org/index.html"
+SRC_URI="http://dl.mercurylang.org/release/${MY_P}.tar.gz
+ mirror://gentoo/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="debug doc emacs erlang examples java mono profile readline threads trail"
+
+DEPEND="net-libs/libnsl:0=
+ readline? ( sys-libs/readline:= )
+ erlang? ( dev-lang/erlang )
+ java? ( >=virtual/jdk-1.6:= )
+ mono? ( dev-lang/mono )
+ doc? ( sys-apps/texinfo )"
+
+RDEPEND="${DEPEND}
+ emacs? ( >=app-editors/emacs-23.1:* )"
+
+S="${WORKDIR}"/${MY_P}
+
+SITEFILE=50${PN}-gentoo.el
+
+src_prepare() {
+ if [[ -d "${WORKDIR}"/${PV} ]] ; then
+ eapply "${WORKDIR}"/${PV}
+ fi
+ eapply_user
+
+ AT_M4DIR=m4 eautoreconf
+
+ xdg_environment_reset
+}
+
+src_configure() {
+ strip-flags
+
+ local myconf
+ myconf="--libdir=/usr/$(get_libdir) \
+ $(use_enable mono csharp-grade) \
+ $(use_enable erlang erlang-grade) \
+ $(use_enable java java-grade) \
+ $(use_enable debug debug-grades) \
+ $(use_enable profile prof-grades) \
+ $(use_enable threads par-grades) \
+ $(use_enable trail trail-grades) \
+ $(use_with readline)"
+
+ econf ${myconf}
+}
+
+src_compile() {
+ # Prepare mmake flags
+ echo "EXTRA_CFLAGS = ${CFLAGS}" >> Mmake.params
+ echo "EXTRA_LD_LIBFLAGS = ${LDFLAGS}" >> Mmake.params
+ echo "EXTRA_MLFLAGS = --no-strip" >> Mmake.params
+
+ echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libgc.so" >> boehm_gc/Mmake.boehm_gc.params
+ echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libmer_rt.so" >> runtime/Mmake.runtime.params
+ echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libmer_std.so" >> library/Mmake.library.params
+
+ # Build Mercury using bootstrap grade
+ emake \
+ PARALLEL="'${MAKEOPTS}'" \
+ TEXI2DVI="" PDFTEX=""
+
+ # We can now patch .m Mercury compiler files since we
+ # have just built mercury_compiler.
+ if [[ -d "${WORKDIR}"/${PV}-mmc ]] ; then
+ eapply "${WORKDIR}"/${PV}-mmc
+ fi
+
+ sed -i -e "s/@libdir@/$(get_libdir)/" \
+ "${S}"/compiler/file_util.m \
+ "${S}"/compiler/make.program_target.m \
+ || die "sed libdir failed"
+
+ # Rebuild Mercury compiler using the just built mercury_compiler
+ emake \
+ PARALLEL="'${MAKEOPTS}'" \
+ MERCURY_COMPILER="${S}"/compiler/mercury_compile \
+ TEXI2DVI="" PDFTEX=""
+
+ # The default Mercury grade may not be the same as the bootstrap
+ # grade. Since src_test() is run before src_install() we compile
+ # the default grade now
+ emake \
+ PARALLEL="'${MAKEOPTS}'" \
+ MERCURY_COMPILER="${S}"/compiler/mercury_compile \
+ TEXI2DVI="" PDFTEX="" \
+ default_grade
+}
+
+src_test() {
+ TEST_GRADE=$(scripts/ml --print-grade)
+ if [ -d "${S}"/install_grade_dir.${TEST_GRADE} ] ; then
+ TWS="${S}"/install_grade_dir.${TEST_GRADE}
+ cp runtime/mer_rt.init "${TWS}"/runtime/
+ cp mdbcomp/mer_mdbcomp.init "${TWS}"/mdbcomp/
+ cp browser/mer_browser.init "${TWS}"/browser/
+ else
+ TWS="${S}"
+ fi
+
+ cd "${S}"/tests || die
+ sed -e "s:@WORKSPACE@:${TWS}:" \
+ < WS_FLAGS.ws \
+ > WS_FLAGS \
+ || die "sed WORKSPACE failed"
+ sed -e "s:@WORKSPACE@:${TWS}:" \
+ < .mgnuc_copts.ws \
+ > .mgnuc_copts \
+ || die "sed WORKSPACE failed"
+ find . -mindepth 1 -type d -exec cp .mgnuc_opts {} \;
+ find . -mindepth 1 -type d -exec cp .mgnuc_copts {} \;
+
+ # Mercury tests must be run in C locale since Mercury output is
+ # compared to hard-coded warnings/errors
+ LC_ALL="C" \
+ PATH="${TWS}"/scripts:"${TWS}"/util:"${S}"/slice:"${PATH}" \
+ TERM="" \
+ WORKSPACE="${TWS}" \
+ WORKSPACE_FLAGS=yes \
+ MERCURY_COMPILER="${TWS}"/compiler/mercury_compile \
+ MMAKE_DIR="${TWS}"/scripts \
+ MERCURY_SUPPRESS_STACK_TRACE=yes \
+ GRADE=${TEST_GRADE} \
+ mmake || die "mmake test failed"
+}
+
+src_install() {
+ emake \
+ PARALLEL="'${MAKEOPTS}'" \
+ MERCURY_COMPILER="${S}"/compiler/mercury_compile \
+ TEXI2DVI="" PDFTEX="" \
+ DESTDIR="${D}" \
+ INSTALL_ELISP_DIR="${D}/${SITELISP}"/${PN} \
+ install
+
+ if use java; then
+ keepdir /usr/$(get_libdir)/mercury/modules/java
+ fi
+
+ if use mono; then
+ keepdir /usr/$(get_libdir)/mercury/modules/csharp
+ fi
+
+ if use emacs; then
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}" \
+ || die "elisp-site-file-install failed"
+ fi
+
+ dodoc \
+ BUGS HISTORY LIMITATIONS NEWS README README.Linux \
+ README.Linux-Alpha README.Linux-m68k README.Linux-PPC \
+ RELEASE_NOTES VERSION || die
+
+ if use erlang; then
+ dodoc README.Erlang
+ fi
+
+ if use java; then
+ dodoc README.Java
+ fi
+
+ if use mono; then
+ dodoc README.CSharp
+ fi
+
+ if use examples; then
+ docinto /usr/share/doc/${PF}/samples
+ dodoc samples/{*.m,README,Mmakefile}
+ dodoc -r samples/c_interface \
+ samples/diff \
+ samples/muz \
+ samples/rot13 \
+ samples/solutions \
+ samples/solver_types
+
+ if use java; then
+ dodoc -r samples/java_interface
+ fi
+
+ ecvs_clean "${D}"/usr/share/doc/${PF}/samples
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-lang/mmix/Manifest b/dev-lang/mmix/Manifest
index f6daf0b444d9..92a234c71b65 100644
--- a/dev-lang/mmix/Manifest
+++ b/dev-lang/mmix/Manifest
@@ -1,6 +1,7 @@
AUX mmix-20110420-makefile.patch 1636 BLAKE2B f4acfc952dea9671ec5507f4d86a1462131dae835318362b17f341e9575fe1dccda5cd44d257127a27232a197e05f79de5d7a8200d7a2b943161fa38de83937f SHA512 e5cd4944847c00ad7c6b3a87fa6f9a242f7f0b13c31f82e80c49b3b9ec07d7c0106669dce2868705dca073774826c5acc6f8ea1464c1a5c739145f1c2b28eb10
AUX mmix-20131017-format-security.patch 2256 BLAKE2B 2481c33c024d84af03b289ec9f22c9b98cb27537c32ea9ef020943aa424efac5267d81326241b2d764eb292f373ed51cc30c3ddbdb55f8fa444154cf6cc5fe0d SHA512 e77cdf3d196356cc0cb09f322cc979e4c603592c8f9421764d6830df27fe627958badbd6726021f97bc42a0d9551e4d3b39ca7b1d677b44a543ffcc04028eaea
+AUX mmix-20160804-gcc-10.patch 822 BLAKE2B 182ff974d458e06ac5c90aa44f0255f20a97c7702a49f3b36ba541c6414f63f8d2c1d3f56e6abe624e06be198b963d018ba3403baac0773b114946d96fa9272c SHA512 65fb04add6fa1441f9cc699af09cc84b67701113db1406d7ec582ac2023221f02dd1972393c3114fa0801a9f686b24d8e5daededa469e155da33aaafee72a22c
DIST mmix-20160804.tgz 308410 BLAKE2B 8bbde51921fe23f016e35bd51346e6445d530815e5e87bff44cf17e081c6b8e55dd6bd24f1ce1621851d2eac309fa44d71aa33d93d3ddfce5213c6643181d38c SHA512 35c518227a4ee40d0aa3be02eda2ab8b2a27696fa789f5007a978419d07b3deebb7f391895e63e3556aeb38dc1ded3bddf2b860125ebf8f7848375e90dc7af75
-EBUILD mmix-20160804-r1.ebuild 939 BLAKE2B 7dd6c3fa1fad518615f7be6b47d8b546d934310f65a70c9ca581b9f5ab5869d3338812acd52a097bc6a2098bacc7692c980d9d5b47fa4042654dfb62eb45e3af SHA512 5a7a5721d7346a1caed862aba73bfcab6cc8c78af31e129bb707eb49021cd0a54c27e01687f35cbf032509b797b51f2e50e1074f3d78e0aa8faf25784505771a
+EBUILD mmix-20160804-r1.ebuild 982 BLAKE2B 5f24dcb5085469727e7f4263ef508921b2783c3b26d206ebf4ec846c7243ea4ee3b083d9c5544b3e92ca32920d07ebedefdc58eb90d83a45e5e6c3d5a6d1e6a6 SHA512 c3a61fea330889a586160691ea5be3e235b6b536a6f811712d4333abf3bea24ab02646438db9353cc146fe57d101eabf79efe5b3f95b08cfd786b333ec0159b5
EBUILD mmix-20160804.ebuild 849 BLAKE2B daece24ae69bacf4b32692af7fdce7f1c19f676534aecfb10b770e83c34a2055ad6cd5b2a3d7f6d1fa5a902b7c396694160784b02d0645f93865c4f94891ccdf SHA512 3c213ff93e7ebfc1daf96d1313423248e88367f5eb466d1f4dde89109b94a1a222ef65b84f7740a2328182764290b966d91b2dd5121bb7348ae791c46d27e66e
MISC metadata.xml 359 BLAKE2B 8e1746961e93d5df12f25907921a6186e3ae082de593f976cc4a253a0fbe9f33e78b6538b4a33e958f73bab2d20179eca1b54301240d83d16471c4acee95426c SHA512 70c8cf6e10f42baf6d223ef0f622465a8f196b2935276c793d5961e6304478c0f03231ade7c3e776e9bffb70bf53c550aa23c8a65ddfac1562c71314d85fb622
diff --git a/dev-lang/mmix/files/mmix-20160804-gcc-10.patch b/dev-lang/mmix/files/mmix-20160804-gcc-10.patch
new file mode 100644
index 000000000000..076d22952a51
--- /dev/null
+++ b/dev-lang/mmix/files/mmix-20160804-gcc-10.patch
@@ -0,0 +1,24 @@
+gcc-10 defaults to -fno-common. Causes linker errors for
+duplicate 'buffer' definition.
+--- a/mmix-config.w
++++ b/mmix-config.w
+@@ -357,7 +357,7 @@ print error messages.
+
+ @<Global variables@>=
+ FILE *config_file; /* input comes from here */
+-char buffer[BUF_SIZE]; /* input lines go here */
++static char buffer[BUF_SIZE]; /* input lines go here */
+ char token[BUF_SIZE]; /* and tokens are copied to here */
+ char *buf_pointer=buffer; /* this is our current position */
+ bool token_prescanned; /* does |token| contain the next token already? */
+--- a/mmmix.w
++++ b/mmmix.w
+@@ -115,7 +115,7 @@ and \Hex{fedcba9876543210} into location \Hex{0123456789b0}.
+ octa cur_loc;
+ octa cur_dat;
+ bool new_chunk;
+-char buffer[BUF_SIZE];
++static char buffer[BUF_SIZE];
+ FILE *prog_file;
+
+ @ @<Input a rudimentary hexadecimal file@>=
diff --git a/dev-lang/mmix/mmix-20160804-r1.ebuild b/dev-lang/mmix/mmix-20160804-r1.ebuild
index 65491269b4a1..15e84fef8c3a 100644
--- a/dev-lang/mmix/mmix-20160804-r1.ebuild
+++ b/dev-lang/mmix/mmix-20160804-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -24,6 +24,7 @@ S="${WORKDIR}"
PATCHES=(
"${FILESDIR}"/${PN}-20110420-makefile.patch
"${FILESDIR}"/${PN}-20131017-format-security.patch
+ "${FILESDIR}"/${PN}-20160804-gcc-10.patch
)
src_compile() {
diff --git a/dev-lang/mono/Manifest b/dev-lang/mono/Manifest
index 505ae01a87c8..2deb65e91fa0 100644
--- a/dev-lang/mono/Manifest
+++ b/dev-lang/mono/Manifest
@@ -20,5 +20,5 @@ EBUILD mono-5.18.1.0.ebuild 2766 BLAKE2B 96d7030731bb1088071ba857fbda3ad2a4b63d0
EBUILD mono-5.20.1.19-r1.ebuild 3097 BLAKE2B 84979808997343a033bcacfd3a2e08e6d556a8a53527d0504b89792123eac0f16ce4a5d4acf82afcae8b8784c04e9a2181786879f058508889e57b9b2b6d8d10 SHA512 653a36ac9c01cd8202c28b8d28e0215949ad099a086a428204290c3743021c5aaed86f70221fff3199f46e99e7917c969c8685fb21bb49e895f4d137082d2dca
EBUILD mono-6.0.0.334.ebuild 2906 BLAKE2B 565309e361278935741f3f7a048d6ff2d8d5ba9e433cb4f15093e569680bdd0651c9e738288e4ae55ee542ce8703fee26597de166ccd6771299d6497a283645c SHA512 248d87fb1c2885400c34fe8dc865902c4b75f88f93c3878b7cb2a52cb0351f722764c098d9afaec223a8df47debc5df4c35989a4793336f82db70a796d2a9dac
EBUILD mono-6.4.0.198.ebuild 2906 BLAKE2B 6d06006b41ae2011fad394f67b34c3b20ceea63588e92393d9c02d024539a19638a9368cf7e61a46a63ef29ab17a5b6e8b1df33e8c9da0f0f4928d56819e8abe SHA512 9ed6cda5c158d17df7a34b2f767dbdf7ceef826a33c0fe49db205070bf95f31e8cb7ed5ab400a4ecf0e1e58fd32d4aeea4888c30b66c425a6fe53207325a347e
-EBUILD mono-6.6.0.161.ebuild 2906 BLAKE2B 6d06006b41ae2011fad394f67b34c3b20ceea63588e92393d9c02d024539a19638a9368cf7e61a46a63ef29ab17a5b6e8b1df33e8c9da0f0f4928d56819e8abe SHA512 9ed6cda5c158d17df7a34b2f767dbdf7ceef826a33c0fe49db205070bf95f31e8cb7ed5ab400a4ecf0e1e58fd32d4aeea4888c30b66c425a6fe53207325a347e
+EBUILD mono-6.6.0.161.ebuild 2904 BLAKE2B e7689755b53f24befdc1e8b12a1b7e106daf053872ed31581b11a06db7a048bb6ca878e6bf983901502d4593f88719a0ea192bd67cee793a424b1b3feb94e73a SHA512 ff6276dbc5cde8ea1df48531f14b9b621e3132b9d2a7f175c799ce145fa09c2c6402b49c2e8ca791851e84dca7e0ad85a7e616b6098b00ba8219eb5317e6627f
MISC metadata.xml 507 BLAKE2B 91655de22fc1ff309c36ecef9d77aa8cada0b8f13ae30677665de837e99b7b43622a1dc0c677b0f5455c06b8e8a295c3c4f39753f66e749163a4f002ee481016 SHA512 e072a1abbf66276b0d139c3e918593010312c2059a0c6feba7b324689cdf90efe28bef0286ad9888125acfdd1fed2dee3e05e79a0aeb7f9ec1809bd128cf8a20
diff --git a/dev-lang/mono/mono-6.6.0.161.ebuild b/dev-lang/mono/mono-6.6.0.161.ebuild
index 6b165c57333a..8ed539ef2ab8 100644
--- a/dev-lang/mono/mono-6.6.0.161.ebuild
+++ b/dev-lang/mono/mono-6.6.0.161.ebuild
@@ -3,7 +3,7 @@
EAPI=6
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86 ~amd64-linux"
SLOT="0"
diff --git a/dev-lang/mujs/Manifest b/dev-lang/mujs/Manifest
index 3b3bef06d043..fca3c63b4c18 100644
--- a/dev-lang/mujs/Manifest
+++ b/dev-lang/mujs/Manifest
@@ -1,6 +1,6 @@
AUX mujs-1.0.5-flags.patch 839 BLAKE2B 843d1bf60167dfb91a5736ee936098c8f6b716f7a70118512d102adb3dc00223d5a3f1fb8da3a57b89797d5b26ebf8120cc1ef2013162aeff288be07cb99d99f SHA512 35681b868e129edffe27e41b793ef073b9ebeb5842212116f9740257515a3fb0d2f00d828a72d96b630c7632184ff9340325a5d79503e5a4c5a52892bd26f4bd
DIST mujs-1.0.5.tar.gz 119353 BLAKE2B 48f1b598e50d5804b0d64230cdd6b4d3f719187ea0906f45c9f45baee2c8df59c6fd09dc25afc9e1ce4e20a9866d158d16a4632bec552fddd8fac70b20e2363f SHA512 c1c59b5e80e0e5f580f30dfc0b4707b6a1e44a73c746b9783bb24d91429ddf8ed670a7663478300cc568cfc15a511720b6d18be2ade40a3a66fc7ab8f3933c2d
DIST mujs-1.0.6.tar.gz 121385 BLAKE2B b74da9cc9df6c51d81fe4b6170fddd9bfd3e37cc1c48509ddbcc9b657feb7169cfa98427770a118fb9c0923e70320668198739ea111cbd5d1c2303b2ada7093d SHA512 c3062348dcc79b8ea3726fc528b3ba765d3462232059617b9ab221ba47fa904cc81a305a6199a9a2cea24a2d891ca63d475b4884cd4e53fa715b3a55f51ca4d9
-EBUILD mujs-1.0.5.ebuild 1161 BLAKE2B 0cd191062d50c8866b3eb160818ce502fead6096dd0c090762f093d12d66733995aa1372db28fbca81c4c2a605216af0540e3410e990ac73d21c6f2d2a0e1c5b SHA512 bc16814e7516b7040be30788fa88d632b29415c8d6680a74ac275e565460e49a7fe57a8646f48a15d952eb049c45ec136cd1c0dd39b0fa06d0f38d2a3f922193
+EBUILD mujs-1.0.5.ebuild 1162 BLAKE2B efc8e665c069ad1ad0b23a65de80321bc8ed5fb9b150cad7f421d1c6b5a65bf6701cd5bee504bd3dc09e35414d21e5e24b6e2558ef2d3eacb35c3d296630ba0b SHA512 872ef01acfc92d628ed12e397edc337f6661f10f8c718a387e57261d8147561a80ca3d3a1c3338d4150ed9667ca92b88bdb7c3a7b08c1326d2beb4d7e248427b
EBUILD mujs-1.0.6.ebuild 1318 BLAKE2B 7acf9719ce994d5f59b44fb1bc87627312b1572cc5bc6a02cc0fa33958eb40d0c8395b1b1faab7a09647a2434fd6dfd6eb466f895820100abb2fea9bcd68c178 SHA512 9839fea2ce208d33b41a6b0ba83b25cec5271e80d9e92efe223d3364d64ef0b42de1a9dc72bd52d3aef01f1a9778047cb0d6565edc94aeac81104ac1e8bb9aed
MISC metadata.xml 475 BLAKE2B c27925d0ece3e21984317e079213d568ed5dc278ed8855dc169bfb2e065c29e9845a2d6de4d8ee85a5c1b1a9fc47685318a8e13ec0c5665d63f5ebb9983d1249 SHA512 e73d572d699516550dcf6e4c3feaea5ad5eaeeb724dba92e5b58596cfda6697ebc1de9f04646aa0a1ad4177c1306106cb45b63d3c1797f57d08b7aca700099ae
diff --git a/dev-lang/mujs/mujs-1.0.5.ebuild b/dev-lang/mujs/mujs-1.0.5.ebuild
index 4c8c6a461131..dc4a3e214e27 100644
--- a/dev-lang/mujs/mujs-1.0.5.ebuild
+++ b/dev-lang/mujs/mujs-1.0.5.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://github.com/ccxvii/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="AGPL-3"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
+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="
diff --git a/dev-lang/nim/Manifest b/dev-lang/nim/Manifest
index 18557e113ff0..70950d3db0c5 100644
--- a/dev-lang/nim/Manifest
+++ b/dev-lang/nim/Manifest
@@ -1,4 +1,6 @@
AUX nim-0.20.0-paths.patch 934 BLAKE2B 6a4e44c5656cde6d5127bf6a6b8db92cdf8aada0892c27d536d0c1030ed7da8dc97138a8941030101918021f2a301fa683169c8a656fefc6fb7d0fcdb24029d4 SHA512 bf8dbc3e3861ec3ea2718092b981e495194ead5b547e69d01d5d842d128dc4b96b0ba3e95c78afd8fd822d594199315a01de370851ed8f594c091231b9a10ee9
DIST nim-1.0.6.tar.xz 5153708 BLAKE2B c3263d4cf19629093306fa93decf038d8b19b8d810b7e782f84708b6771e2950554cda7c6f3d63e8dc6d2b604649fd31bd7009e51bea49ae556aa973cefc4167 SHA512 8da5281a8d93349996cbbe445e21fa9525c56e5721578ede2ae0f668cb2f29641db7d50a1b1a3e2c404ce56cb83dca10df5cbc84983242646a735b8f58d05f80
+DIST nim-1.2.0.tar.xz 5869428 BLAKE2B 7bc979cc6c0170dd4c320cc9fae6f992463e828c11c33133d9afa2e7022f8f6f09bc54efdf9648b22b244df00b0d6d86892cdfc2e0a9e1718a068abaffac235f SHA512 7803a0e11a0e83d442c06af6135b446329bb005c2717aabd03c82b80d9dcac5305ae67972129fd830e91251ce4c746b805ccbf0bb220873b39faf4f342cbaf6f
EBUILD nim-1.0.6.ebuild 1836 BLAKE2B aec8754c0b4cfdc4ec38261dfe8ce4809b7357f12fa09561773f72759da32f3d96b2e009ad9920a5393d8c35ba23b6a6ccb5de89a5eadae611c6216387b4651e SHA512 7942f252954bd11bacde68972186246fd351316bb866b6816ae2c45fd71f9e7aaa946993855240f4ea91e378681a4f1f08c36a4b83973ec7526915f1852fa0fe
+EBUILD nim-1.2.0.ebuild 1836 BLAKE2B aec8754c0b4cfdc4ec38261dfe8ce4809b7357f12fa09561773f72759da32f3d96b2e009ad9920a5393d8c35ba23b6a6ccb5de89a5eadae611c6216387b4651e SHA512 7942f252954bd11bacde68972186246fd351316bb866b6816ae2c45fd71f9e7aaa946993855240f4ea91e378681a4f1f08c36a4b83973ec7526915f1852fa0fe
MISC metadata.xml 328 BLAKE2B 9205920d8c9b12118456bd186f2e882b3e6f75b7cc3f766def1e79e2e4f7ac695370409ff1555e379516606568f181f4ba3625322f70e41bfffd21d319b0035f SHA512 bf02bc0a8c25d6e157b7ab1ef87c2eac3241d42bc4cf0632a159dcb5d429051018848be81d0cbce228124660ced8694f5de48d64fe10bc7ff5b536b7e7579e49
diff --git a/dev-lang/nim/nim-1.2.0.ebuild b/dev-lang/nim/nim-1.2.0.ebuild
new file mode 100644
index 000000000000..3f1e8966eb08
--- /dev/null
+++ b/dev-lang/nim/nim-1.2.0.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit bash-completion-r1 multiprocessing toolchain-funcs
+
+DESCRIPTION="compiled, garbage-collected systems programming language"
+HOMEPAGE="https://nim-lang.org/"
+SRC_URI="https://nim-lang.org/download/${P}.tar.xz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="doc +readline test"
+
+RESTRICT=test # need to sort out depends and numerous failures
+
+RDEPEND="
+ readline? ( sys-libs/readline:0= )
+"
+DEPEND="
+ ${DEPEND}
+ test? ( net-libs/nodejs )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.20.0-paths.patch
+)
+
+_run() {
+ echo "$@"
+ "$@" || die "'$*' failed"
+}
+
+nim_use_enable() {
+ [[ -z $2 ]] && die "usage: nim_use_enable <USE flag> <compiler flag>"
+ use $1 && echo "-d:$2"
+}
+
+src_compile() {
+ export XDG_CACHE_HOME=${T}/cache #667182
+ tc-export CC LD
+
+ _run ./build.sh
+
+ _run ./bin/nim --parallelBuild:$(makeopts_jobs) c koch
+ _run ./koch boot --parallelBuild:$(makeopts_jobs) -d:release $(nim_use_enable readline useGnuReadline)
+ # build nimble and friends
+ # --stable to avoid pulling HEAD nimble
+ PATH="./bin:$PATH" _run ./koch --stable tools --parallelBuild:$(makeopts_jobs)
+
+ if use doc; then
+ # TODO: '--parallelBuild:' does ont seem to work
+ PATH="./bin:$PATH" _run ./koch doc --parallelBuild:$(makeopts_jobs)
+ fi
+}
+
+src_test() {
+ PATH="./bin:$PATH" _run ./koch test --parallelBuild:$(makeopts_jobs)
+}
+
+src_install() {
+ PATH="./bin:$PATH" _run ./koch install "${ED}"
+ rm -r "${ED}/usr/share/nim/doc" || die "failed to remove 'doc'"
+
+ exeinto /usr/bin
+
+ local bin_exe
+ for bin_exe in bin/*; do
+ # './koch install' installs only 'nim' binary
+ # but not the rest
+ [[ ${bin_exe} == bin/nim ]] && continue
+ doexe "${bin_exe}"
+ done
+
+ use doc && dodoc doc/html/*.html
+ newbashcomp tools/nim.bash-completion ${PN}
+}
diff --git a/dev-lang/ocaml/Manifest b/dev-lang/ocaml/Manifest
index 5ea929158b8d..d632b7e1d4fe 100644
--- a/dev-lang/ocaml/Manifest
+++ b/dev-lang/ocaml/Manifest
@@ -7,7 +7,7 @@ DIST ocaml-4.05.0.tar.gz 4431750 BLAKE2B c2ab003a13e0a581ebd0e1c96eeb8a9baea9bfe
DIST ocaml-4.09.0.tar.gz 4838748 BLAKE2B 80f29d535c64bf2371b480217723ed20b2b21cfd93ce31366a7b91e7ddffdf68db4e88d085288b7e21efee567a13f42ecff24c3a0115507b006acf844239cefd SHA512 dc0271e591bf929b751705835790949a9d741e12d085c8b207c3689b5838a02ea8de80da8b2605d2e6744f2f541b0d1694ffafff9509e99ce01f3a391f6ef2ae
DIST ocaml-patches-8.tar.bz2 1803 BLAKE2B 5e76a198c2f5ca9f231d4e80499d784cf061ec79bf6b5e3aac917e1260d1f2b927f0f8015d39c01ce4fd481d32a5d211c31e081a7ab87ba1e7c7d5def95bc0fb SHA512 fc477fbb5bdec60a3c4d3dfa110119bb579560ac0e0e57e30e076da72643bda6359c06fd3745fd3436c5d611dbbd888ec2921e9d1920f4929df633c35a797411
DIST ocaml-patches-9.tar.bz2 1700 BLAKE2B 4e46b8fb490db28f815414e285f54e251394ea53e1d25c529bbea9f03e426fd19132b1e2c7c2be7d14983fceb4cad073d191b001f6da522fee4226371d4a2eca SHA512 cc19f9104fac69aecc5effa8cb772342e1fb61cdcd38ba0176efe04cf3d710b1c56d5178748f3bd29099af91fa684da432a8ef8d42de76dbd1b6954a255ea6c0
-EBUILD ocaml-4.04.2-r1.ebuild 3534 BLAKE2B fa2dfb823a3f296669bbd6030d81b2414465fd67a3f8def5d9757ba70f2fc7803855a6d2e7dd35133b534d4a724bdceedcb23ebdc32f46a098e2d3e6acb0aa03 SHA512 9b013a3a3d6448e52286b5833e1b62dcfdadac021ce7902deafc8ff0536ba9c5a97bb6472379440b93433ea8e808bbe034c0c9a05fc2c6853b4ea52c444d99ff
+EBUILD ocaml-4.04.2-r1.ebuild 3536 BLAKE2B 9d4803fbe13957a479de356815b64d9fa704b49f46895d6404bed6e73849fc88b07dcd5bd5dc5d8e07bb7c3c695c86a6f7c7b218682f297454cc5d7ae622400c SHA512 d34ec5986f048346f2d530de5aae4c28fb03a565b50a56013783fb37be6bfffd20e67c31231c93f7a33f18e266c3852041937240b2408d0447a76c33e0d9ebd1
EBUILD ocaml-4.05.0-r1.ebuild 3692 BLAKE2B f8f81b2c8127e5e3b8fc4b37ce9e0e01bf63e4b09c0727d20dfe36dd038ff4261f3383d7f63710eb73405d5eb6b6ab348bd88bc62665b8be7aee34b9a89c1802 SHA512 ab7bc8419507ff59eed35628183a0ea79319648adee66ec42313ad74df8b5a0c1e87db273cbe87d9e67b19a900eba0c473d3e167afc9c97490cb496b4c529cb4
-EBUILD ocaml-4.09.0.ebuild 2187 BLAKE2B 8cf110c1e9cde5ce0c65c7b356b7e83a4cb75b4f9d2b321da312126cff58d17ddfb13ff2364703b9af4ac3e1fb7821a5288bc18a9d7524938a655e7310178af7 SHA512 42a6aaf4dd5ba212b431ffcdfb6cbe4fd56b32f0cc418cc6d6c5fa987060a38adec0d772754d7b0a421475392add4e5b153d7f638d4209467cdd6b35064d038e
+EBUILD ocaml-4.09.0.ebuild 2188 BLAKE2B 873a6e24bc71241a8b32840d7adda1d5421af80fc42de8fe7e3df956df71681a33ec992377a6bfb6c8bc3a160531f9f48f8d1e1ad4b6136a040c2c70c8192cee SHA512 b52143929817b4f8f6d43ec17fca59c5c61140ab76c77aca4e33675f26dd9de233ec133c67d6d51e476d62333fc13e26565743bf4d5abb8631c6ad24091c9b6c
MISC metadata.xml 605 BLAKE2B 30bf74c9300280f432ca8ae675b756e9b95a8e683c56eebae7fab890071c616bcc2a2fae516e31c593c0e626061aba603909b073ff6c3fea4d09e7fce40f3f83 SHA512 298d96d5685b1e79e1baab1e393ef083fa270d147a24ae2a35fa424b311dbf45931673dbf44974a946cd3423d62ce66df6d36017dcf6cb3275770c1cf6215c10
diff --git a/dev-lang/ocaml/ocaml-4.04.2-r1.ebuild b/dev-lang/ocaml/ocaml-4.04.2-r1.ebuild
index fe83e8fbb860..4fd1e4d02cf9 100644
--- a/dev-lang/ocaml/ocaml-4.04.2-r1.ebuild
+++ b/dev-lang/ocaml/ocaml-4.04.2-r1.ebuild
@@ -16,7 +16,7 @@ LICENSE="QPL-1.0 LGPL-2"
# Everytime ocaml is updated to a new version, everything ocaml must be rebuilt,
# so here we go with the subslot.
SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
IUSE="emacs flambda latex ncurses +ocamlopt X xemacs"
RDEPEND="
diff --git a/dev-lang/ocaml/ocaml-4.09.0.ebuild b/dev-lang/ocaml/ocaml-4.09.0.ebuild
index 354981296655..1a0af05410e4 100644
--- a/dev-lang/ocaml/ocaml-4.09.0.ebuild
+++ b/dev-lang/ocaml/ocaml-4.09.0.ebuild
@@ -9,7 +9,7 @@ DESCRIPTION="Programming language supporting functional, imperative & object-ori
LICENSE="LGPL-2.1"
SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
IUSE="emacs flambda latex +ocamlopt spacetime xemacs"
RDEPEND="sys-libs/binutils-libs:=
diff --git a/dev-lang/perl/Manifest b/dev-lang/perl/Manifest
index 2bd95c026b85..b1b14dc79ad0 100644
--- a/dev-lang/perl/Manifest
+++ b/dev-lang/perl/Manifest
@@ -1,7 +1,10 @@
AUX perl-5.24-libnsl.patch 613 BLAKE2B 3d802f2d9203765630690a12dce5bc339dc0ec3531b47d23cb27877d1159d74b4c0c225fb21fb71257a3b125b72008f6a9b2d174fcd66e3b80f271abccc6f6f2 SHA512 19241053ecb83f5427a7361d222d87ba20c7cc59b2c6cdff011e4f9c59d828e703f0de17dcebb886772278c8dd269bf2b95978a2dededc0bf4ef9056733a3ed4
AUX perl-5.26.2-hppa.patch 3231 BLAKE2B d59eab55eea3daceb0d3df39778d43ebaee2c065c052ca048ec17c06fa90049eb7fd5ae40092f11248de25cdf9cff96dc69626e7f3269b24cf618004deeb5859 SHA512 24856ae3c637c58d16d543240f5028e137c33c7aeae7c0c3dfa1a69b621057a84ab4ddf8b12ac6ef251381af4b190c200262bec9bdaa6001199dbd1d15cf4bae
+AUX perl-5.30.1-gcc-10.patch 2993 BLAKE2B 81f934f334d3a1c5e166118e21a55230055bec32499b320b6e17b1ca5ac47028fc4aa0aaabdb59211578664602c4db3a654e35231c12eb28d3ed89287ad3077a SHA512 8f9cf67d877788ee29fdc165f6b32eb63036f1ab696c3f978f7b2b1a76ab9d9983a13cf4169d2baa7231b38a9db7f7878e2949a3196c50397cce4fec0650ad9d
DIST perl-5.30.0-patches-1.tar.xz 17352 BLAKE2B 67eb1c4ce6ada27e05962d06fa9c5675ca1d22623b5fd172ce8ceaa17f2e51d61f9451955f9f6acf6d97ea7d71c72b583be1378ccbf9174c88580baec2049a48 SHA512 4fe1f2de5e72e56890858148d20b772df63dce34cb3977ec47d8ed5323c4843929130f660f1558c282c97e65efa1c6d2fdacf9e2dcc0ef1d487a0b69dbb5bbb4
DIST perl-5.30.1.tar.xz 12367844 BLAKE2B 7e5dafb218a993301b986d198c02179d2d93d7418b910f813c7e5bc44ca4d22f004d4d768273ab5d4b6f16103d8a1896237ee14e195d2644fc4c05f5ade5404b SHA512 8f3339efdcd1bb58fa58a90042181bef86bb09e4598c737e446ed43b56d2ab23d67eced5e36fb08fc61e076acfdb572a12e46a1277f5299a3f412054df0b88bf
+DIST perl-5.30.2.tar.xz 12373480 BLAKE2B b34344221409fad8aad5c24a9851a95521720bfd85ff150fec02a70d78188cd3a4d6327931b955323c86eab6b16979128dd323f78b797cf3244518df840f70b0 SHA512 b945c95f44a58b9cc920c926e23017c4270c0dc8daf0bf8169cd7c8f6b8f980f1780bee4fbd525df518edc50f08364ba65988cb17e72a1667f50226459b65087
DIST perl-cross-1.3.1.tar.gz 106723 BLAKE2B 473d90dbfe5d69e17d088664c365190982db400b0617d951fb7a4ccb84dd269fd9e861a6255c0469fbf288125db67ed9fc692251f14c31181f6e9dd1dba447bb SHA512 4715c1f65e39a7d0c605558b345a0a037e61afa992b3f723d66277d5ff7f1c7368ff1dfdb726895d75c4afdb6f710743708fdd9e79569a7d14a2d7002cc9f3b2
-EBUILD perl-5.30.1.ebuild 20273 BLAKE2B 14c102ee4f93fa15ae7bc336fb936e288cb0394bebd9717c266434ac0f910ec4d6c97f703a83c08fee235cf045cc79bde94de2c82b5efc1b6bc96f7136ca9c08 SHA512 9ba1ca314558287e8305ae77fe465bd053c4f34cc820e381d95f408d974b8b76495264c56de0620b860424e8b1b09516d0a5683f20769a94a46c889aa7251752
+EBUILD perl-5.30.1.ebuild 20270 BLAKE2B 623565778c4dfeb1ad6f88dfd3ea2d6a394fc2b03ea34ef675759a71225557ffd082cb117d21a551daa94a7971d7d4e3c080a33b795119820139beaafa44fdff SHA512 2ebe6740f32a2454badf3fb279487416a81dda33d503d0d2218ae84a0a2003ced4003c6aaa316e6cf164b7c0137a59b1bf1c2e6d8aa65fd0066e1a9efc9480d2
+EBUILD perl-5.30.2.ebuild 20226 BLAKE2B 7668e596761d8ff81003b8df5c55b7098bff476706a0ed7373e96e66e7324e2eed0487451cc761d76e6e8c71003603d0b806a323feaf5c58d0f75b7d33d8f05a SHA512 303f3d6658fb4e89a275474640d3bc69685392718fb597dc127a23ab991b85c13248ccfaaed1e578c6906b7e428bf4ed5c486b7e1f433150524674db240db1b5
MISC metadata.xml 430 BLAKE2B 8625fd07f63a7943a85c3919d6ae6db622b752caa2803c56c72a22b270244261331fbab8b760e6d00acb8480770c9ef1d1beaaa22cc6044660821687c0cd8c33 SHA512 ca4c43e2016b7df707894713465700a90d2b8551b57fc4d660cff75edb1e8cc2456f9ae10431839ad6738f290d4f5911fae360eaa1d4670859d855de3d568583
diff --git a/dev-lang/perl/files/perl-5.30.1-gcc-10.patch b/dev-lang/perl/files/perl-5.30.1-gcc-10.patch
new file mode 100644
index 000000000000..bb92527853f5
--- /dev/null
+++ b/dev-lang/perl/files/perl-5.30.1-gcc-10.patch
@@ -0,0 +1,99 @@
+https://bugs.gentoo.org/708744
+
+From 6bd6308fcea3541e505651bf8e8127a4a03d22cd Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Tue, 12 Nov 2019 09:19:18 +0100
+Subject: [PATCH] Adapt Configure to GCC version 10
+
+I got a notice from Jeff Law <law@redhat.com>:
+
+ Your particular package fails its testsuite. This was ultimately
+ tracked down to a Configure problem. The perl configure script treated
+ gcc-10 as gcc-1 and turned on -fpcc-struct-return. This is an ABI
+ changing flag and caused Perl to not be able to interact properly with
+ the dbm libraries on the system leading to a segfault.
+
+His proposed patch corrected only this one instance of the version
+mismatch. Reading the Configure script revealed more issues. This
+patch fixes all of them I found.
+
+Please note I do not have GCC 10 available, I tested it by faking the version
+with:
+
+--- a/Configure
++++ b/Configure
+@@ -4701,7 +4701,7 @@ else
+ fi
+ $rm -f try try.*
+ case "$gccversion" in
+-1*) cpp=`./loc gcc-cpp $cpp $pth` ;;
++1.*) cpp=`./loc gcc-cpp $cpp $pth` ;;
+ esac
+ case "$gccversion" in
+ '') gccosandvers='' ;;
+@@ -4741,7 +4741,7 @@ esac
+ # gcc 3.* complain about adding -Idirectories that they already know about,
+ # so we will take those off from locincpth.
+ case "$gccversion" in
+-3*)
++3.*)
+ echo "main(){}">try.c
+ for incdir in $locincpth; do
+ warn=`$cc $ccflags -I$incdir -c try.c 2>&1 | \
+@@ -5467,13 +5467,13 @@ fi
+ case "$hint" in
+ default|recommended)
+ case "$gccversion" in
+- 1*) dflt="$dflt -fpcc-struct-return" ;;
++ 1.*) dflt="$dflt -fpcc-struct-return" ;;
+ esac
+ case "$optimize:$DEBUGGING" in
+ *-g*:old) dflt="$dflt -DDEBUGGING";;
+ esac
+ case "$gccversion" in
+- 2*) if $test -d /etc/conf/kconfig.d &&
++ 2.*) if $test -d /etc/conf/kconfig.d &&
+ $contains _POSIX_VERSION $usrinc/sys/unistd.h >/dev/null 2>&1
+ then
+ # Interactive Systems (ISC) POSIX mode.
+@@ -5482,7 +5482,7 @@ default|recommended)
+ ;;
+ esac
+ case "$gccversion" in
+- 1*) ;;
++ 1.*) ;;
+ 2.[0-8]*) ;;
+ ?*) set strict-aliasing -fno-strict-aliasing
+ eval $checkccflag
+@@ -5600,7 +5600,7 @@ case "$cppflags" in
+ ;;
+ esac
+ case "$gccversion" in
+-1*) cppflags="$cppflags -D__GNUC__"
++1.*) cppflags="$cppflags -D__GNUC__"
+ esac
+ case "$mips_type" in
+ '');;
+@@ -23103,7 +23103,7 @@ fi
+
+ : add -D_FORTIFY_SOURCE if feasible and not already there
+ case "$gccversion" in
+-[456789].*) case "$optimize$ccflags" in
++[456789].*|[1-9][0-9]*) case "$optimize$ccflags" in
+ *-O*) case "$ccflags$cppsymbols" in
+ *_FORTIFY_SOURCE=*) # Don't add it again.
+ echo "You seem to have -D_FORTIFY_SOURCE already, not adding it." >&4
+--- a/cflags.SH
++++ b/cflags.SH
+@@ -156,7 +156,7 @@ esac
+
+ case "$gccversion" in
+ '') ;;
+-[12]*) ;; # gcc versions 1 (gasp!) and 2 are not good for this.
++[12].*) ;; # gcc versions 1 (gasp!) and 2 are not good for this.
+ Intel*) ;; # # Is that you, Intel C++?
+ #
+ # NOTE 1: the -std=c89 without -pedantic is a bit pointless.
+--
+2.25.0
+
diff --git a/dev-lang/perl/perl-5.30.1.ebuild b/dev-lang/perl/perl-5.30.1.ebuild
index 98cca9ef5715..db30557ad787 100644
--- a/dev-lang/perl/perl-5.30.1.ebuild
+++ b/dev-lang/perl/perl-5.30.1.ebuild
@@ -51,7 +51,7 @@ LICENSE="|| ( Artistic GPL-1+ )"
SLOT="0/${SUBSLOT}"
if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
IUSE="berkdb debug doc gdbm ithreads"
@@ -62,9 +62,7 @@ RDEPEND="
app-arch/bzip2
sys-libs/zlib
"
-DEPEND="${RDEPEND}
- !prefix? ( elibc_FreeBSD? ( sys-freebsd/freebsd-mk-defs ) )
-"
+DEPEND="${RDEPEND}"
PDEPEND="
>=app-admin/perl-cleaner-2.5
>=virtual/perl-File-Temp-0.230.400-r2
@@ -304,6 +302,7 @@ src_prepare() {
if use hppa ; then
epatch "${FILESDIR}/${PN}-5.26.2-hppa.patch" # bug 634162
fi
+ eapply "${FILESDIR}"/${PN}-5.30.1-gcc-10.patch # bug 708744
if [[ ${CHOST} == *-solaris* ]] ; then
# do NOT mess with nsl, on Solaris this is always necessary,
diff --git a/dev-lang/perl/perl-5.30.2.ebuild b/dev-lang/perl/perl-5.30.2.ebuild
new file mode 100644
index 000000000000..a5e31a8753c8
--- /dev/null
+++ b/dev-lang/perl/perl-5.30.2.ebuild
@@ -0,0 +1,653 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
+
+PATCH_VER=1
+CROSS_VER=1.3.1
+PATCH_BASE="perl-5.30.0-patches-${PATCH_VER}"
+PATCH_DEV=dilfridge
+
+DIST_AUTHOR=SHAY
+
+# Greatest first, don't include yourself
+# Devel point-releases are not ABI-intercompatible, but stable point releases are
+# BIN_OLDVERSEN is contains only C-ABI-intercompatible versions
+PERL_BIN_OLDVERSEN="5.30.0 5.30.1"
+
+if [[ "${PV##*.}" == "9999" ]]; then
+ DIST_VERSION=5.30.0
+else
+ DIST_VERSION="${PV/_rc/-RC}"
+fi
+SHORT_PV="${DIST_VERSION%.*}"
+# Even numbered major versions are ABI intercompatible
+# Odd numbered major versions are not
+if [[ $(( ${SHORT_PV#*.} % 2 )) == 1 ]]; then
+ SUBSLOT="${DIST_VERSION%-RC*}"
+else
+ SUBSLOT="${DIST_VERSION%.*}"
+fi
+# Used only in tar paths
+MY_P="perl-${DIST_VERSION}"
+# Used in library paths
+MY_PV="${DIST_VERSION%-RC*}"
+
+DESCRIPTION="Larry Wall's Practical Extraction and Report Language"
+
+SRC_URI="
+ mirror://cpan/src/5.0/${MY_P}.tar.xz
+ mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz
+ https://github.com/gentoo-perl/perl-patchset/releases/download/${PATCH_BASE}/${PATCH_BASE}.tar.xz
+ mirror://gentoo/${PATCH_BASE}.tar.xz
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.xz
+ https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz
+"
+HOMEPAGE="https://www.perl.org/"
+
+LICENSE="|| ( Artistic GPL-1+ )"
+SLOT="0/${SUBSLOT}"
+
+if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+IUSE="berkdb debug doc gdbm ithreads"
+
+RDEPEND="
+ berkdb? ( sys-libs/db:= )
+ gdbm? ( >=sys-libs/gdbm-1.8.3:= )
+ app-arch/bzip2
+ sys-libs/zlib
+"
+DEPEND="${RDEPEND}"
+PDEPEND="
+ >=app-admin/perl-cleaner-2.5
+ >=virtual/perl-File-Temp-0.230.400-r2
+ >=virtual/perl-Data-Dumper-2.154.0
+ virtual/perl-Test-Harness
+"
+# bug 390719, bug 523624
+# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker
+
+S="${WORKDIR}/${MY_P}"
+
+dual_scripts() {
+ src_remove_dual perl-core/Archive-Tar 2.320.0 ptar ptardiff ptargrep
+ src_remove_dual perl-core/CPAN 2.220.0 cpan
+ src_remove_dual perl-core/Digest-SHA 6.20.0 shasum
+ src_remove_dual perl-core/Encode 3.10.0 enc2xs piconv
+ src_remove_dual perl-core/ExtUtils-MakeMaker 7.340.0 instmodsh
+ src_remove_dual perl-core/ExtUtils-ParseXS 3.400.0 xsubpp
+ src_remove_dual perl-core/IO-Compress 2.84.0 zipdetails
+ src_remove_dual perl-core/JSON-PP 4.20.0 json_pp
+ src_remove_dual perl-core/Module-CoreList 5.202.003.140 corelist
+ src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect
+ src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc
+ src_remove_dual perl-core/Test-Harness 3.420.0 prove
+ src_remove_dual perl-core/podlators 4.110.0 pod2man pod2text
+ src_remove_dual_man perl-core/podlators 4.110.0 /usr/share/man/man1/perlpodstyle.1
+}
+
+check_rebuild() {
+ # Fresh install
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ return 0;
+ # Major Upgrade
+ # doesn't matter if there's multiple copies, it still needs a rebuild
+ # if the string is anything other than "5.CURRENTMAJOR"
+ elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then
+ echo ""
+ ewarn "UPDATE THE PERL MODULES:"
+ ewarn "After updating dev-lang/perl the installed Perl modules"
+ ewarn "have to be re-installed. In most cases, this is done automatically"
+ ewarn "by the package manager, but subsequent steps are still recommended"
+ ewarn "to ensure system consistency."
+ ewarn
+ ewarn "You should start with a depclean to remove any unused perl dependencies"
+ ewarn "that may confuse portage in future. Regular depcleans are also encouraged"
+ ewarn "as part of your regular update cycle, as that will keep perl upgrades working."
+ ewarn "Recommended: emerge --depclean -va"
+ ewarn
+ ewarn "You should then call perl-cleaner to clean up any old files and trigger any"
+ ewarn "remaining rebuilds portage may have missed."
+ ewarn "Use: perl-cleaner --all"
+ return 0;
+
+ # Reinstall w/ USE Change
+ elif ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \
+ ( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \
+ ( use debug && ! has_version dev-lang/perl[debug] ) || \
+ ( ! use debug && has_version dev-lang/perl[debug] ) ; then
+ echo ""
+ ewarn "TOGGLED USE-FLAGS WARNING:"
+ ewarn "You changed one of the use-flags ithreads or debug."
+ ewarn "You must rebuild all perl-modules installed."
+ ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl"
+ fi
+}
+
+pkg_setup() {
+ case ${CHOST} in
+ *-freebsd*) osname="freebsd" ;;
+ *-dragonfly*) osname="dragonfly" ;;
+ *-netbsd*) osname="netbsd" ;;
+ *-openbsd*) osname="openbsd" ;;
+ *-darwin*) osname="darwin" ;;
+ *-solaris*) osname="solaris" ;;
+ *-interix*) osname="interix" ;;
+ *-aix*) osname="aix" ;;
+ *-cygwin*) osname="cygwin" ;;
+ *) osname="linux" ;;
+ esac
+
+ myarch="${CHOST%%-*}-${osname}"
+ if use debug ; then
+ myarch+="-debug"
+ fi
+ if use ithreads ; then
+ mythreading="-multi"
+ myarch+="-thread"
+ fi
+
+ PRIV_BASE="/usr/$(get_libdir)/perl5"
+ SITE_BASE="/usr/local/$(get_libdir)/perl5"
+ VENDOR_BASE="/usr/$(get_libdir)/perl5/vendor_perl"
+
+ LIBPERL="libperl$(get_libname ${MY_PV} )"
+ PRIV_LIB="${PRIV_BASE}/${MY_PV}"
+ ARCH_LIB="${PRIV_BASE}/${MY_PV}/${myarch}${mythreading}"
+ SITE_LIB="${SITE_BASE}/${MY_PV}"
+ SITE_ARCH="${SITE_BASE}/${MY_PV}/${myarch}${mythreading}"
+ VENDOR_LIB="${VENDOR_BASE}/${MY_PV}"
+ VENDOR_ARCH="${VENDOR_BASE}/${MY_PV}/${myarch}${mythreading}"
+
+ dual_scripts
+}
+
+src_remove_dual_file() {
+ local i pkg ver
+ pkg="$1"
+ ver="$2"
+ shift 2
+ case "${EBUILD_PHASE:-none}" in
+ postinst|postrm)
+ for i in "$@" ; do
+ alternatives_auto_makesym "${i}" "${i}-[0-9]*"
+ done
+ ;;
+ setup)
+ for i in "$@" ; do
+ if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then
+ has_version ${pkg} && ewarn "You must reinstall ${pkg} !"
+ break
+ fi
+ done
+ ;;
+ install)
+ for i in "$@" ; do
+ if ! [[ -f "${ED}"${i} ]] ; then
+ ewarn "${i} does not exist!"
+ continue
+ fi
+ mv "${ED}"${i}{,-${ver}-${P}} || die
+ done
+ ;;
+ esac
+}
+
+src_remove_dual_man() {
+ local i pkg ver ff
+ pkg="$1"
+ ver="$2"
+ shift 2
+ case "${EBUILD_PHASE:-none}" in
+ postinst|postrm)
+ for i in "$@" ; do
+ ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*`
+ ff=${ff##*${i#${i%.[0-9]}}}
+ alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*"
+ done
+ ;;
+ install)
+ for i in "$@" ; do
+ if ! [[ -f "${ED}"${i} ]] ; then
+ ewarn "${i} does not exist!"
+ continue
+ fi
+ mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die
+ done
+ ;;
+ esac
+}
+
+src_remove_dual() {
+ local i pkg ver
+ pkg="$1"
+ ver="$2"
+ shift 2
+ for i in "$@" ; do
+ src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}"
+ src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1"
+ done
+}
+
+src_prepare_update_patchlevel_h() {
+ # Copied and modified from debian:
+ # Copyright 2011 Niko Tyni
+ # This program is free software; you can redistribute it and/or modify
+ # it under the same terms as Perl itself.
+ local patchdir="${WORKDIR}/patches"
+ local prefix
+ local patchoutput="patchlevel-gentoo.h"
+
+ [[ -f ${patchdir}/series ]] || return 0
+
+while read patch
+do
+ patchname=$(echo $patch | sed 's/\.diff$//')
+ < $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e '
+
+ # massage the patch headers
+ s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend;
+ s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend;
+ s|^Bug-Gentoo: ||; tprepend;
+ s/^\(Subject\|Description\): //; tappend;
+ s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend;
+
+ # post-process at the end of input
+ $ { x;
+ # include the version number in the patchlevel.h description (if available)
+ s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/;
+
+ # escape any backslashes and double quotes
+ s|\\|\\\\|g; s|"|\\"|g;
+
+ # add a prefix
+ s|^|\t,"'"$prefix$patchname"' - |;
+ # newlines away
+ s/\n/ /g; s/ */ /g;
+ # add a suffix
+ s/ *$/"/; p
+ };
+ # stop all processing
+ d;
+ # label: append to the hold space
+ :append H; d;
+ # label: prepend to the hold space
+ :prepend x; H; d;
+ '
+done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}"
+echo "${patchoutput}" >> "${S}/MANIFEST"
+}
+
+src_prepare_perlcross() {
+ cp -a ../perl-cross-${CROSS_VER}/* . || die
+
+ # bug 604072
+ MAKEOPTS+=" -j1"
+ export MAKEOPTS
+}
+src_prepare_dynamic() {
+ ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die
+ ln -s ${LIBPERL} libperl$(get_libname ) || die
+}
+
+src_prepare() {
+ local patch
+ EPATCH_OPTS+=" -p1"
+
+ if use hppa ; then
+ epatch "${FILESDIR}/${PN}-5.26.2-hppa.patch" # bug 634162
+ fi
+
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ # do NOT mess with nsl, on Solaris this is always necessary,
+ # when -lsocket is used e.g. to get h_errno
+ sed -i '/gentoo\/no-nsl-cl\.patch/d' "${WORKDIR}/patches/series" || die
+ fi
+
+ einfo "Applying patches from ${PATCH_BASE} ..."
+ while read patch ; do
+ EPATCH_SINGLE_MSG=" ${patch} ..."
+ epatch "${WORKDIR}"/patches/${patch}
+ done < "${WORKDIR}"/patches/series
+
+ src_prepare_update_patchlevel_h
+
+ tc-is-cross-compiler && src_prepare_perlcross
+
+ tc-is-static-only || src_prepare_dynamic
+
+ if use gdbm; then
+ sed -i "s:INC => .*:INC => \"-I${EROOT}usr/include/gdbm\":g" \
+ ext/NDBM_File/Makefile.PL || die
+ fi
+
+ # Use errno.h from prefix rather than from host system, bug #645804
+ if use prefix && [[ -e "${EPREFIX}"/usr/include/errno.h ]] ; then
+ sed -i "/my..sysroot/s:'':'${EPREFIX}':" ext/Errno/Errno_pm.PL || die
+ fi
+
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ # set a soname, fix linking against just built libperl
+ sed -i -e 's/netbsd\*/netbsd*|solaris*/' Makefile.SH || die
+ fi
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # fix install_name (soname) not to reference $D
+ sed -i -e '/install_name `pwd/s/`pwd`/\\$(shrpdir)/' Makefile.SH || die
+ fi
+
+ default
+}
+
+myconf() {
+ # the myconf array is declared in src_configure
+ myconf=( "${myconf[@]}" "$@" )
+}
+
+src_configure() {
+ declare -a myconf
+
+ export LC_ALL="C"
+ [[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091
+
+ # Perl has problems compiling with -Os in your flags with glibc
+ use elibc_uclibc || replace-flags "-Os" "-O2"
+
+ # xlocale.h is going away in glibc-2.26, so it's counterproductive
+ # if we use it and include it in CORE/perl.h ... Perl builds just
+ # fine with glibc and locale.h only.
+ # However, the darwin prefix people have no locale.h ...
+ use elibc_glibc && myconf -Ui_xlocale
+
+ # This flag makes compiling crash in interesting ways
+ filter-flags "-malign-double"
+
+ # Generic LTO broken since 5.28, triggers EUMM failures
+ filter-flags "-flto"
+
+ use sparc && myconf -Ud_longdbl
+
+ export BUILD_BZIP2=0
+ export BZIP2_INCLUDE=${EROOT}/usr/include
+ export BZIP2_LIB=${EROOT}/usr/$(get_libdir)
+
+ export BUILD_ZLIB=False
+ export ZLIB_INCLUDE=${EROOT}/usr/include
+ export ZLIB_LIB=${EROOT}/usr/$(get_libdir)
+
+ # allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1
+ myndbm='U'
+ mygdbm='U'
+ mydb='U'
+ if use gdbm ; then
+ mygdbm='D'
+ if use berkdb ; then
+ myndbm='D'
+ fi
+ fi
+ if use berkdb ; then
+ mydb='D'
+ has_version '=sys-libs/db-1*' && myndbm='D'
+ fi
+
+ myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db"
+
+ if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then
+ ewarn "Perl will not be built with berkdb support, use gcc if you needed it..."
+ myconf -Ui_db -Ui_ndbm
+ fi
+
+ use ithreads && myconf -Dusethreads
+
+ if use debug ; then
+ append-cflags "-g"
+ myconf -DDEBUGGING
+ elif [[ ${CFLAGS} == *-g* ]] ; then
+ myconf -DDEBUGGING=-g
+ else
+ myconf -DDEBUGGING=none
+ fi
+
+ # Autodiscover all old version directories, some of them will even be newer
+ # if you downgrade
+ if [[ -z ${PERL_OLDVERSEN} ]]; then
+ PERL_OLDVERSEN="$(
+ find "${EROOT%/}${PRIV_BASE}" "${EROOT%/}${SITE_BASE}" "${EROOT%/}${VENDOR_BASE}" \
+ -maxdepth 1 -mindepth 1 -type d -regex '.*/5[.][0-9]+[.][0-9]+$' \
+ -printf "%f " 2>/dev/null )"
+ fi
+ # Fixup versions, removing self match, fixing order and dupes
+ PERL_OLDVERSEN="$(
+ echo "${PERL_OLDVERSEN}" |\
+ tr " " "\n" |\
+ grep -vF "${DIST_VERSION%-RC}" |\
+ sort -u -nr -t'.' -k1,1 -k2,2 -k3,3
+ )"
+
+ # Experts who want a "Pure" install can set PERL_OLDVERSEN to an empty string
+ if [[ -n "${PERL_OLDVERSEN// }" ]]; then
+ local inclist="$(
+ for v in ${PERL_OLDVERSEN}; do
+ has "${v}" ${PERL_BIN_OLDVERSEN} && echo -n "${v}/${myarch}${mythreading} ";
+ echo -n "${v} ";
+ done )"
+ einfo "This version of perl may partially support modules previously"
+ einfo "installed in any of the following paths:"
+ for incpath in ${inclist}; do
+ [[ -e "${EROOT%/}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${VENDOR_BASE}/${incpath}"
+ [[ -e "${EROOT%/}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROO%/T}${PRIV_BASE}/${incpath}"
+ [[ -e "${EROOT%/}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${SITE_BASE}/${incpath}"
+ done
+ einfo "This is a temporary measure and you should aim to cleanup these paths"
+ einfo "via world updates and perl-cleaner"
+ myconf -Dinc_version_list="${inclist}"
+ fi
+
+ [[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a"
+
+ # Make sure we can do the final link #523730, need to set deployment
+ # target to override hardcoded 10.3 which breaks on modern OSX
+ [[ ${CHOST} == *-darwin* ]] && \
+ myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)"
+
+ # Older macOS with non-Apple GCC chokes on inline in system headers
+ # using c89 mode as injected by cflags.SH
+ [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] && tc-is-gcc && \
+ append-cflags -Dinline=__inline__
+
+ # fix unaligned access misdetection
+ # https://rt.perl.org/Public/Bug/Display.html?id=133495
+ # https://rt.perl.org/Public/Bug/Display.html?id=133803
+ # bug #676062, bug #688432
+ use hppa || use sparc || [[ ${CHOST} == sparc*-solaris* ]] || \
+ [[ ${CHOST} == armv5tel* ]] \
+ && myconf "-Dd_u32align='define'"
+
+ # Prefix: the host system needs not to follow Gentoo multilib stuff, and in
+ # Prefix itself we don't do multilib either, so make sure perl can find
+ # something compatible.
+ if use prefix ; then
+ # Set a hook to check for each detected library whether it actually works.
+ export libscheck="
+ ( echo 'main(){}' > '${T}'/conftest.c &&
+ $(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null
+ ) || xxx=/dev/null"
+
+ # Use all host paths that might contain useful stuff, the hook above will filter out bad choices.
+ local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib"
+ myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}"
+ elif [[ $(get_libdir) != "lib" ]] ; then
+ # We need to use " and not ', as the written config.sh use ' ...
+ myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)"
+ fi
+
+ # don't try building ODBM, bug #354453
+ disabled_extensions="ODBM_File"
+
+ if ! use gdbm ; then
+ # workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm"
+ disabled_extensions="${disabled_extensions} GDBM_File NDBM_File"
+ fi
+
+ myconf -Dnoextensions="${disabled_extensions}"
+
+ [[ "${PV##*.}" == "9999" ]] && myconf -Dusedevel -Uversiononly
+
+ [[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF}
+ # allow fiddling via EXTRA_ECONF, bug 558070
+ eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})"
+
+ myconf \
+ -Duseshrplib \
+ -Darchname="${myarch}" \
+ -Dcc="$(tc-getCC)" \
+ -Doptimize="${CFLAGS}" \
+ -Dldflags="${LDFLAGS}" \
+ -Dprefix="${EPREFIX}"'/usr' \
+ -Dsiteprefix="${EPREFIX}"'/usr/local' \
+ -Dvendorprefix="${EPREFIX}"'/usr' \
+ -Dscriptdir="${EPREFIX}"'/usr/bin' \
+ -Dprivlib="${EPREFIX}${PRIV_LIB}" \
+ -Darchlib="${EPREFIX}${ARCH_LIB}" \
+ -Dsitelib="${EPREFIX}${SITE_LIB}" \
+ -Dsitearch="${EPREFIX}${SITE_ARCH}" \
+ -Dvendorlib="${EPREFIX}${VENDOR_LIB}" \
+ -Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \
+ -Dman1dir="${EPREFIX}"/usr/share/man/man1 \
+ -Dman3dir="${EPREFIX}"/usr/share/man/man3 \
+ -Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \
+ -Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \
+ -Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \
+ -Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \
+ -Dman1ext='1' \
+ -Dman3ext='3pm' \
+ -Dlibperl="${LIBPERL}" \
+ -Dlocincpth="${EPREFIX}"'/usr/include ' \
+ -Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \
+ -Duselargefiles \
+ -Dd_semctl_semun \
+ -Dcf_by='Gentoo' \
+ -Dmyhostname='localhost' \
+ -Dperladmin='root@localhost' \
+ -Ud_csh \
+ -Dsh="${EPREFIX}"/bin/sh \
+ -Dtargetsh="${EPREFIX}"/bin/sh \
+ -Uusenm \
+ "${myconf[@]}" \
+ "${EXTRA_ECONF[@]}"
+
+ if tc-is-cross-compiler; then
+ ./configure \
+ --target="${CHOST}" \
+ --build="${CBUILD}" \
+ -Dinstallprefix='' \
+ -Dinstallusrbinperl='undef' \
+ -Dusevendorprefix='define' \
+ "${myconf[@]}" \
+ || die "Unable to configure"
+ else
+ sh Configure \
+ -des \
+ -Dinstallprefix="${EPREFIX}"'/usr' \
+ -Dinstallusrbinperl='n' \
+ "${myconf[@]}" \
+ || die "Unable to configure"
+ fi
+}
+
+src_test() {
+ export NO_GENTOO_NETWORK_TESTS=1;
+ export GENTOO_ASSUME_SANDBOXED="${GENTOO_ASSUME_SANDBOXED:-1}"
+ export GENTOO_NO_PORTING_TESTS="${GENTOO_NO_PORTING_TESTS:-1}"
+ if [[ ${EUID} == 0 ]] ; then
+ ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..."
+ return 0
+ fi
+ use elibc_uclibc && export MAKEOPTS+=" -j1"
+ TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed"
+}
+
+src_install() {
+ local i
+ local coredir="${ARCH_LIB}/CORE"
+
+ emake DESTDIR="${D}" install
+
+ rm -f "${ED}/usr/bin/perl${MY_PV}"
+ ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die
+
+ if ! tc-is-static-only ; then
+ dolib.so "${ED}"${coredir}/${LIBPERL}
+ rm -f "${ED}"${coredir}/${LIBPERL}
+ ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die
+ ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die
+
+ ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die
+ ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die
+ ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die
+ fi
+
+ rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages"
+
+ # This removes ${D} from Config.pm
+ for i in $(find "${D}" -iname "Config.pm" ) ; do
+ einfo "Removing ${D} from ${i}..."
+ sed -i -e "s:${D}::" "${i}" || die "Sed failed"
+ done
+
+ dodoc Changes* README AUTHORS
+
+ if use doc ; then
+ # HTML Documentation
+ # We expect errors, warnings, and such with the following.
+
+ dodir /usr/share/doc/${PF}/html
+ LD_LIBRARY_PATH=. ./perl installhtml \
+ --podroot='.' \
+ --podpath='lib:ext:pod:vms' \
+ --recurse \
+ --htmldir="${ED}/usr/share/doc/${PF}/html"
+ fi
+
+ [[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local
+
+ dual_scripts
+}
+
+pkg_preinst() {
+ check_rebuild
+}
+
+pkg_postinst() {
+ dual_scripts
+
+ if [[ "${ROOT}" = "/" ]] ; then
+ local INC DIR file
+ INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }')
+ einfo "Removing old .ph files"
+ for DIR in ${INC} ; do
+ if [[ -d "${DIR}" ]] ; then
+ for file in $(find "${DIR}" -name "*.ph" -type f ) ; do
+ rm -f "${file}"
+ einfo "<< ${file}"
+ done
+ fi
+ done
+ # Silently remove the now empty dirs
+ for DIR in ${INC} ; do
+ if [[ -d "${DIR}" ]] ; then
+ find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
+ fi
+ done
+
+ fi
+}
+
+pkg_postrm() {
+ dual_scripts
+}
diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest
index 3f2a6a94eb29..eb4df58d770a 100644
--- a/dev-lang/php/Manifest
+++ b/dev-lang/php/Manifest
@@ -4,22 +4,10 @@ AUX php-fpm_at-simple.service 316 BLAKE2B 0ba10f3e3b004fbf14956e1e4f04f59b8a127e
AUX php-fpm_at.service 317 BLAKE2B f13fc38fcc0575a8517ee8d07b120efda37eabd2355061d0fdc303604c6b02ad42d7301180d86c977d5e585f5dd685343c592e37a6e0f44933707be79e0b77e0 SHA512 27982f9e2d958bfa75c89c7d3531e48d17fc388b1cdcbc8e09051b236b1184ee2baabdfcc567c19d9fcd067d4b3b86f171015616d8da42fccdabd89432d865e8
AUX php-freetype-2.9.1.patch 7667 BLAKE2B efc8f829bbad11b3e7b654d0882213ecb9aae766060d51f93446a6293a2f607339faba484c7b0b2f9318a5c5442da3c09e25aeda20dbc5e3258bf1009f8625b4 SHA512 0a06189f6fb3513cd2dcf9ddb590360475e2dd9a7aa8b13ab66c389c1ed40ce2361681f017cd3c6219f5b40a0a9d4978e57ca3ee4bacb7657db3285136fd2875
AUX php-iodbc-header-location.patch 481 BLAKE2B 9ea6a5d529dc7a8c78eeee800900372bc14309a05e352b2838da32e1384b61b507fdb623c9400094aa5b637eb1a87da92c72600eff79b18b8989ef90af56a0fa SHA512 86469f657d8807f005c28fd2149770c881add8f243fdfea087956c7987277597fe400a7af23f624f26da270356604717ed9cd04771154d7cf2ffe7237972372b
-DIST php-7.2.26.tar.xz 12309176 BLAKE2B 2208aee696fc2aed50b4f08f2dd7ca0f70d9913c22091687f6c694a343e4b5fd5e1f0d0b6b127fe0c00c5611cb60e627c2257a1fad9bff6e9fc8bb921e1eb57d SHA512 457e3420120135e311a22cd11529d5a3efc5885af4f298196f403093141801619d4dcdb38d6a4a5f8d9dcfa619688d8fdf33fea4a30e2d885e987b739a268f12
-DIST php-7.2.27.tar.xz 12307512 BLAKE2B 8d51a1a88c718ba9ef683e190f9ed80b46fccfc7b237d9175f5db3012a3d4ae8f698dbe6b2b8f233121be6d08e28bdb1062a357dd6ae2df5228a7e56c8604807 SHA512 02416e2bdfcd47ef660c7403ca25c7358c2f9a685b1dee6a2a95c52d1b1178666f9fa0bb32dc070cfd09febb5c44ecdb70116546142369d7ead4432634dc38c5
-DIST php-7.2.28.tar.xz 12311760 BLAKE2B de27a5aa23ceaa16aef5da3ccda116e846a81d10b96a64727a36004fc9d02a2e77eb867222d619cc13e8a66c754e709a720c4faa3ac26445191b1f4a5e6a5cfb SHA512 c9465a2858a324c6b68cb99424ef2719da9f8a4177ba9aa87605b2633a8a404cf780612eca50249a57c516d2a0bbe07d5e88654590117124e3528840e3dee9ae
-DIST php-7.3.13.tar.xz 12102012 BLAKE2B 32a346470ea0d0a3db873ae94b5e4dcc650c25e24db244ea94417f092e0458a0825cb99e9c3429000ee5cbd50120824d9bd2a58a7ed2ada1f39c6d7c41b2ba08 SHA512 d0624b3b841fed49d9cea56b17e7c8c7abf8e6572832b6f86c98f48c23f86690c310b460eae27a6fcd41fbfbc2e8a4b56f6bfb0c738fa1db36ce3795454d7798
-DIST php-7.3.14.tar.xz 12106072 BLAKE2B 698e6cfe4cc9640c393988626bf344a4bc891cb6d974017a0a176d2c5f6f55cc6073f88bd90926822c7c0534da280a6ae6b8f28b3c983665d7ce8b330246e783 SHA512 053cd51d0fe73e18494d51c104573b73f6af41d21091513319e994cc12398fa792b7d996414d28d6dbf983c38afccc92d47d6fd8c071824ee192067bd955a80a
-DIST php-7.3.15.tar.xz 12111464 BLAKE2B eaf4d095138eaf7f4a6e1d12bf8ae21a85d2bc7f7b103c2db1c78cc93a5a0f8676f9b97183f0df188c4c899d924d8ddcbc7207c5bd7d1919b7775d4b2066b29f SHA512 7a578d175e27f20205f6471451665f3141221916dfbd289085bfa64715dcd57cd9bca272fed73f539b066862e196fe1f5f446e2eb1cca9971b4f9a8080663acb
-DIST php-7.4.1.tar.xz 10245600 BLAKE2B fcbb7de0e9ab74820ca8fdd234cd20908ed8e559e6eeffd576e285a5f4b4b31506ec2e11cc5926464257e08289207462f4b373833b8130500e0944f64dbf6cf5 SHA512 2dd152bdca52ece160feff799622fd4bdd88e0664f629e6149fd14ede6c304dfc40c164fcd9200c041b26342d6248010cf9b53e30c1a8d31640dc3b24d25c4da
-DIST php-7.4.2.tar.xz 10252304 BLAKE2B cf3b7a6a26ff58fb46024710c9d265d440faff4c5ee583a76c89aa7a73049c8bc6eaf428f53dfbdbb86efef9208503150c9c31b442f960d167babf08380813cf SHA512 e8d4b300d71e48a740b4cd96bf100206615a352bf77822dfe4a289b93738e3419f1371f2b1ec2eb9c9c4b9c87eac69c866a4c51a821e0f5b07a2fa3b0eb8d89b
-DIST php-7.4.3.tar.xz 10261432 BLAKE2B 8542555c5d2237f88ecbedd14fffa0dbaa2a714767e6af28595074e8625e78f1cb25084b151930ba3f9ac1c7f5f7188f1539b51cfa431045af158c6707afc77a SHA512 121f2870bbce99f8ab2d42655a9bf6aed1dc37f3c91c238bc37f448543595d55358c2d023f2d3e08c81b1b21d47be9c2d47ef7a2e776c8ac8ac34482b63e5bf3
-EBUILD php-7.2.26.ebuild 22448 BLAKE2B 53d36d0c5a2e297b1b284626514a94f0c7aaab74d8e5db1837f680d0d275cfe01888cad8ad23781fc663ce0009fbcae8ae3ecb3b3ad36b931b5a168d0a4e0464 SHA512 223657f1b5084758f964fa35b1a35934df5dff5206ecbc6cb13751db46bfefcb496f7d7a16f78f83a0c53657f489d42d7badfcbb9d7cd0d58ad5f5dee07ddf40
-EBUILD php-7.2.27.ebuild 22426 BLAKE2B a4dbc7320bebaeed885b44d326ad1ad3199b4ab5fc0120c7a49c3440a96dcdb172324df1ff8c8226933bb44c5a94542127dcc04e42eb058fcfda06347d7f331a SHA512 d0fe75ee64b3b485e776d1402a2193b3e3e8bbaeffdf05a1ced39acc9e5c3814b0c8e075adc76aabcd843cfa3ca9fd62b03e69b3e9b040db5e738b4f4790b8ee
-EBUILD php-7.2.28.ebuild 22405 BLAKE2B 7683c6a238eb886e0ea935804fd574375f97f0bb414901df2a8e5593cb7ff7f78e7faa5d99897db78afcfefe36d4e5365ebcedd559f2f849621b485b62bee06c SHA512 05019377a4836121b4ca375a0d0607c3031031b93aec1033bc81266cf2b14d691a7cf4eb7dc615dc39188ca780e4f2bf1345ddfd454fd8543c94f9c1c90034a7
-EBUILD php-7.3.13.ebuild 22460 BLAKE2B 97acb89cb2f28c4091aeedc3620adc15ae9622589d8e0b174a41185c8ae47533e010aeac04a7ca4854a2dde887586ad51a19e4af4b6f353592d3ace477d1d6d0 SHA512 4322af79a642f573c8c43fadd92b8ea4dd0ad7ca3a7c884b57927c9c9c6745dd1a28b75100ba6f5fee5ee5add6a59cd7c6f23b0d264d95f4be29fa59fa28686d
-EBUILD php-7.3.14.ebuild 22438 BLAKE2B b57e0cd0da1f42cd0d7ddfcb083073a71a217f26232ff266db95ae2726696d56302b27cf57b7c18efd37ddbb10bc7ffac2c0a0388d493edd6efb060bf19e5b01 SHA512 fe81f5c55d94b3d8b54b5a6c7a107150be188d6ecc5e2fe4135ef5239c2ccd96c28565c7e67c3c60bbbb1e19a7aa740cc44c635ce0ec51dfaadfdb22a383714c
-EBUILD php-7.3.15.ebuild 22417 BLAKE2B df899203e36a9df8b305fbc11db589f7ccdd316d90507931fd5f86906cd0181c2799e6313eb5f9acd81537f2ba71d2edd5c9ac4901b78c9d8442ccdc5da28fcd SHA512 a07815bf43417edcc1628cc636206df266849e127b13dc01f9887ac377985a9edfa0ea3c1c540d6076c7b8f8fc0047dbcc814877f3fb8ca9f0372fc32cf63282
-EBUILD php-7.4.1.ebuild 21148 BLAKE2B 03923341a96754c9ba397aa08692eb12c6a84fa2485aab39ee33e9e8bde02ea6f9a59301b1e0ca974ada6eaade17390ffb3d4397068db39ee46242daf8686e37 SHA512 dd73105d30a747e8d1bfdbafeb999e09da2a88007c328d26eee80a5590a12ac8a8cbd28e17227998ee91ced8c03780ad71200d721a6c7c24e82c3739de31d605
-EBUILD php-7.4.2.ebuild 21156 BLAKE2B bd59183e7e62b12c0c9662db44cf5e3c00388b864fc3e785a844d2aad600fbf027d81ee1e8c7a8f04e0a8691db2a1a0c7a52b14b6ed1a23f670f57cb3da8305e SHA512 199f6df9868b4b1c1e46dbd3ae7cb1a781818aefc9c0c4ee1da04167489b11b782f067779cb9412adbf1479ac69824124cd6f595e2c81dd803ed735eb6b4fc14
-EBUILD php-7.4.3.ebuild 21127 BLAKE2B 2a6c3f3c2c63a487b67b6e05ea00287f6fa47dd6861520a90c505ac05bc357c8217888df0ce3598d1b4331f57e65327331123975f390fbf66996a381a1babb20 SHA512 38ff78d23bb847feec35ee8c83a621cc15d6197683e9b489eb50bf97c041c9f1c60befddb7d862090ffe68a196cab9d5f0f87cb428eb8e912672deda3216ce5a
+DIST php-7.2.29.tar.xz 12308380 BLAKE2B dfb2f6081b6e0e87166037914eef21e3a386b2b7d7c1103588b0edaf37058e4fa711a4b277cf45ac9850c9063bcdcb0727a85cfe503764a55dbfc41414a1292e SHA512 16e516b5aa22e18b31f1a988149035c4a405dffd9ebe78dfddc39b8d3b2e096dbbf5162f402dc4a0eb7a4a3376b11073b8c5ade13ff08e1e4ea828ee78756c20
+DIST php-7.3.16.tar.xz 12113688 BLAKE2B 84e26b1906a1385a6db2d78c6a776bff3c3049b1933f55db0a36147a8447708f447fd1a6787736a4300715e79409bf4c99ce2aa2db042671934a01d9e5602f47 SHA512 4e3cfffc429bcbfbabc1267e73d9a0e46f363c3dd1674931852d1ae7f2b1713f1d5a04ef1900c7240bf6db088ffa7d3af024461a21733d55ecf1a213b69c81c3
+DIST php-7.4.4.tar.xz 10267308 BLAKE2B 6802d4c0649b72a697d8a2c271010394a537e5be903cd3162d67696efd924ed1402244cd6881a535039ed15ca7d380e0860ef38dcfab5866fa58e178b99ee481 SHA512 61cceb16f56740840aa22a93254629302a167f7c3c748c3713b7b60e8b592731e64d9cf75b5f8ee2b6aa5156b6c46434ffab27b12daf576b72946fd1a3c9aaab
+EBUILD php-7.2.29.ebuild 22602 BLAKE2B 8ab0172db7ae2ee926440ace9c4a4424dd3fa3bf87624ee7d7761a679b01d8b4eafed1b2b84ab5f649c8cce47d4686417257ad90135c05249e5d445c236f5ee9 SHA512 0bbcd9bb943212f56a205ad2a804455067bc98971b0094d998b37f0f4f35e53ab5f3641f6dd366a40e4bdeafdabfac953b98203e8cdd0989a9e0e075b3b1b99e
+EBUILD php-7.3.16.ebuild 22614 BLAKE2B 16359fe1ad955aab8f5cda62bbc7bf7f9abd4005052cfad897a0c94d525176c8f6a39b97e9454f254cf09e4ac4c24bbab6cb476089957d168e280c1429113e74 SHA512 f5e50aae8785d9fa4d22fa4538d1d00ab50dfff8df3a7a236e668bdb161f2061c7116b7605935fdc176dffbf05b6bc02796c50e203b5ab5af310d4ae5ebed34d
+EBUILD php-7.4.4.ebuild 21325 BLAKE2B c08260ef1caa815db6ed08a139d335b8f71cbeca9aa01cb16b3d94ff5de29c6f3d3a351c35170ed885d5e590518d1810e88ec77016271d181a8b2e6cb9e56dda SHA512 ab032a908942ed61c5ea5a1e96338790364b2516e93ab999c703b3b49b023acd790214c41dcb3476712a19f0f1abf5f3170383bc5803ff670394af9caa620474
MISC metadata.xml 3216 BLAKE2B 6118c94f2ac3a2f283eb035cbbacb12343476b4ce22594a00cb7ebf063abb106a0ed5557d311127b8c1e2a53263103ded790cd12d20c6b410ab6f7d218d95ed8 SHA512 ffb0b46b30b1add0fc166e3afe1317e70041a0fe849d4c05ceee011c1b5e130fbde3b86eaf876a4c8a2d23fbd7824f95299642b4f60e129436befb00f4b124cc
diff --git a/dev-lang/php/php-7.2.26.ebuild b/dev-lang/php/php-7.2.26.ebuild
deleted file mode 100644
index 52361ca04b9b..000000000000
--- a/dev-lang/php/php-7.2.26.ebuild
+++ /dev/null
@@ -1,750 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit flag-o-matic systemd autotools
-
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://php.net/"
-SRC_URI="https://php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- gd? ( gd )
- unicode? ( BSD-2 LGPL-2.1 )"
-
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
- coverage +ctype curl debug
- enchant exif +fileinfo +filter firebird
- +flatfile ftp gd gdbm gmp +hash +iconv imap inifile
- intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl lmdb
- mhash mssql mysql mysqli nls
- oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
- readline recode selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode wddx webp
- +xml xmlreader xmlwriter xmlrpc xpm xslt zip zip-encryption zlib"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- >=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
- >=dev-libs/libpcre-8.32[unicode]
- fpm? ( acl? ( sys-apps/acl ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- berkdb? ( || ( sys-libs/db:5.3
- sys-libs/db:5.1
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5 ) )
- bzip2? ( app-arch/bzip2:0= )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- coverage? ( dev-util/lcov )
- curl? ( >=net-misc/curl-7.10.5 )
- enchant? ( <app-text/enchant-2.0:0 )
- firebird? ( dev-db/firebird )
- gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
- gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- iodbc? ( dev-db/libiodbc )
- kerberos? ( virtual/krb5 )
- ldap? ( >=net-nds/openldap-1.2.11 )
- ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
- libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- oci8-instant-client? ( dev-db/oracle-instantclient-basic )
- odbc? ( >=dev-db/unixODBC-1.8.13 )
- postgres? ( dev-db/postgresql:* )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- recode? ( app-text/recode )
- session-mm? ( dev-libs/mm )
- simplexml? ( >=dev-libs/libxml2-2.6.8 )
- snmp? ( >=net-analyzer/net-snmp-5.2 )
- soap? ( >=dev-libs/libxml2-2.6.8 )
- sodium? ( dev-libs/libsodium:= )
- spell? ( >=app-text/aspell-0.50 )
- sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( =media-libs/freetype-2* )
- unicode? ( dev-libs/oniguruma:= )
- wddx? ( >=dev-libs/libxml2-2.6.8 )
- webp? ( media-libs/libwebp:0= )
- xml? ( >=dev-libs/libxml2-2.6.8 )
- xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
- xmlreader? ( >=dev-libs/libxml2-2.6.8 )
- xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
- xpm? ( x11-libs/libXpm )
- xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
- zip? ( sys-libs/zlib:0= )
- zip-encryption? ( >=dev-libs/libzip-1.2.0:= )
- zlib? ( sys-libs/zlib:0= )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- >=sys-devel/bison-3.0.1"
-
-BDEPEND="virtual/pkgconfig"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- cli? ( ^^ ( readline libedit ) )
- truetype? ( gd zlib )
- webp? ( gd zlib )
- cjk? ( gd zlib )
- exif? ( gd zlib )
- xpm? ( gd zlib )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- wddx? ( xml )
- xmlrpc? ( || ( xml iconv ) )
- xmlreader? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- mhash? ( hash )
- phar? ( hash )
- qdbm? ( !gdbm )
- readline? ( !libedit )
- recode? ( !imap !mysqli !mysql )
- session-mm? ( session !threads )
- mysql? ( hash || ( mysqli pdo ) )
- mysqli? ( hash )
- zip-encryption? ( zip )
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- "${FILESDIR}/php-freetype-2.9.1.patch"
- "${FILESDIR}/php-7.2.13-intl-use-icu-namespace.patch"
-)
-
-PHP_MV="$(ver_cut 1)"
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # default to /tmp for save_path, bug #282768
- sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
-
- # Set the extension dir
- sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
- -i "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR packages
- sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # Bug 669566 - necessary so that build tools are updated for commands like pecl
- # Force rebuilding aclocal.m4
- rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare"
- eautoreconf
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- $(use_enable threads maintainer-zts)
- )
-
- our_conf+=(
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_enable bcmath bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar calendar)
- $(use_enable coverage gcov)
- $(use_enable ctype ctype)
- $(use_with curl curl "${EPREFIX}/usr")
- $(use_enable xml dom)
- $(use_with enchant enchant "${EPREFIX}/usr")
- $(use_enable exif exif)
- $(use_enable fileinfo fileinfo)
- $(use_enable filter filter)
- $(use_enable ftp ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_enable hash hash)
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
- $(use_enable intl intl)
- $(use_enable ipv6 ipv6)
- $(use_enable json json)
- $(use_with kerberos kerberos "${EPREFIX}/usr")
- $(use_enable xml libxml)
- $(use_with xml libxml-dir "${EPREFIX}/usr")
- $(use_enable unicode mbstring)
- $(use_with unicode onig "${EPREFIX}/usr")
- $(use_with ssl openssl "${EPREFIX}/usr")
- $(use_with ssl openssl-dir "${EPREFIX}/usr")
- $(use_enable pcntl pcntl)
- $(use_enable phar phar)
- $(use_enable pdo pdo)
- $(use_enable opcache opcache)
- $(use_with postgres pgsql "${EPREFIX}/usr")
- $(use_enable posix posix)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_with recode recode "${EPREFIX}/usr")
- $(use_enable simplexml simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap soap)
- $(use_enable sockets sockets)
- $(use_with sodium sodium "${EPREFIX}/usr")
- $(use_with sqlite sqlite3 "${EPREFIX}/usr")
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer tokenizer)
- $(use_enable wddx wddx)
- $(use_enable xml xml)
- $(use_enable xmlreader xmlreader)
- $(use_enable xmlwriter xmlwriter)
- $(use_with xmlrpc xmlrpc)
- $(use_with xslt xsl "${EPREFIX}/usr")
- $(use_enable zip zip)
- $(use_with zip-encryption libzip "${EPREFIX}/usr")
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug debug)
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba${shared}" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Support for the GD graphics library
- our_conf+=(
- $(use_with truetype freetype-dir "${EPREFIX}/usr")
- $(use_enable cjk gd-jis-conv)
- $(use_with gd jpeg-dir "${EPREFIX}/usr")
- $(use_with gd png-dir "${EPREFIX}/usr")
- $(use_with xpm xpm-dir "${EPREFIX}/usr")
- )
- if use webp; then
- our_conf+=( --with-webp-dir="${EPREFIX}/usr" )
- fi
- # enable gd last, so configure can pick up the previous settings
- our_conf+=( $(use_with gd gd) )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # Interbase/firebird support
- our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") )
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr")
- )
- fi
-
- # MySQL support
- local mysqllib="mysqlnd"
- local mysqlilib="mysqlnd"
-
- our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- our_conf+=(
- $(use_with odbc unixODBC "${EPREFIX}/usr")
- $(use_with iodbc iodbc "${EPREFIX}/usr")
- )
-
- # Oracle support
- our_conf+=( $(use_with oci8-instant-client oci8) )
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "${mysqllib}")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite "${EPREFIX}/usr")
- $(use_with firebird pdo-firebird "${EPREFIX}/usr")
- $(use_with odbc pdo-odbc "unixODBC,${EPREFIX}/usr")
- $(use_with oci8-instant-client pdo-oci)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit libedit "${EPREFIX}/usr")
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-pcre-regex affects ext/pcre
- # --with-pcre-dir affects ext/filter and ext/zip
- # --with-pcre-valgrind cannot be enabled with system pcre
- # Many arches don't support pcre-jit
- our_conf+=(
- --with-pcre-regex="${EPREFIX}/usr"
- --with-pcre-dir="${EPREFIX}/usr"
- --without-pcre-valgrind
- --without-pcre-jit
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- mkdir -p "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
- cd "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- for sapi in ${SAPIS} ; do
- if use "${sapi}"; then
- cd "${WORKDIR}/sapis-build/$sapi" || \
- die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
- emake
- fi
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Makefile forgets to create this before trying to write to it...
- dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
-
- # Install php environment (without any sapis)
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
-
- local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local sapi="", file=""
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
- newins ".libs/libphp${PHP_MV}$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#${EPREFIX}}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp${PHP_MV}$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#${EPREFIX}}"
- dolib.so "modules/opcache$(get_libname)"
- fi
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
- PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
- if [[ ! -x "${PHP_BIN}" ]] ; then
- ewarn "Test phase requires USE=cli, skipping"
- return
- else
- export TEST_PHP_EXECUTABLE="${PHP_BIN}"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
- "session.save_path=${T}" \
- "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
- "session.save_path=${T}"
-
- for name in ${EXPECTED_TEST_FAILURES}; do
- mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
- done
-
- local failed="$(find -name '*.out')"
- if [[ ${failed} != "" ]] ; then
- ewarn "The following test cases failed unexpectedly:"
- for name in ${failed}; do
- ewarn " ${name/.out/}"
- done
- else
- einfo "No unexpected test failures, all fine"
- fi
-
- if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
- local passed=""
- for name in ${EXPECTED_TEST_FAILURES}; do
- [[ -f "${name}.diff" ]] && continue
- passed="${passed} ${name}"
- done
- if [[ ${passed} != "" ]] ; then
- einfo "The following test cases passed unexpectedly:"
- for name in ${passed}; do
- ewarn " ${passed}"
- done
- else
- einfo "None of the known-to-fail tests passed, all fine"
- fi
- fi
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-7.2.27.ebuild b/dev-lang/php/php-7.2.27.ebuild
deleted file mode 100644
index db36a046d76b..000000000000
--- a/dev-lang/php/php-7.2.27.ebuild
+++ /dev/null
@@ -1,750 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit flag-o-matic systemd autotools
-
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://www.php.net/"
-SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- gd? ( gd )
- unicode? ( BSD-2 LGPL-2.1 )"
-
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
- coverage +ctype curl debug
- enchant exif +fileinfo +filter firebird
- +flatfile ftp gd gdbm gmp +hash +iconv imap inifile
- intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl lmdb
- mhash mssql mysql mysqli nls
- oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
- readline recode selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode wddx webp
- +xml xmlreader xmlwriter xmlrpc xpm xslt zip zip-encryption zlib"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- >=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
- >=dev-libs/libpcre-8.32[unicode]
- fpm? ( acl? ( sys-apps/acl ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- berkdb? ( || ( sys-libs/db:5.3
- sys-libs/db:5.1
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5 ) )
- bzip2? ( app-arch/bzip2:0= )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- coverage? ( dev-util/lcov )
- curl? ( >=net-misc/curl-7.10.5 )
- enchant? ( <app-text/enchant-2.0:0 )
- firebird? ( dev-db/firebird )
- gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
- gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- iodbc? ( dev-db/libiodbc )
- kerberos? ( virtual/krb5 )
- ldap? ( >=net-nds/openldap-1.2.11 )
- ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
- libedit? ( dev-libs/libedit )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- oci8-instant-client? ( dev-db/oracle-instantclient-basic )
- odbc? ( >=dev-db/unixODBC-1.8.13 )
- postgres? ( dev-db/postgresql:* )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- recode? ( app-text/recode )
- session-mm? ( dev-libs/mm )
- simplexml? ( >=dev-libs/libxml2-2.6.8 )
- snmp? ( >=net-analyzer/net-snmp-5.2 )
- soap? ( >=dev-libs/libxml2-2.6.8 )
- sodium? ( dev-libs/libsodium:= )
- spell? ( >=app-text/aspell-0.50 )
- sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( =media-libs/freetype-2* )
- unicode? ( dev-libs/oniguruma:= )
- wddx? ( >=dev-libs/libxml2-2.6.8 )
- webp? ( media-libs/libwebp:0= )
- xml? ( >=dev-libs/libxml2-2.6.8 )
- xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
- xmlreader? ( >=dev-libs/libxml2-2.6.8 )
- xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
- xpm? ( x11-libs/libXpm )
- xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
- zip? ( sys-libs/zlib:0= )
- zip-encryption? ( >=dev-libs/libzip-1.2.0:= )
- zlib? ( sys-libs/zlib:0= )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- >=sys-devel/bison-3.0.1"
-
-BDEPEND="virtual/pkgconfig"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- cli? ( ^^ ( readline libedit ) )
- truetype? ( gd zlib )
- webp? ( gd zlib )
- cjk? ( gd zlib )
- exif? ( gd zlib )
- xpm? ( gd zlib )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- wddx? ( xml )
- xmlrpc? ( || ( xml iconv ) )
- xmlreader? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- mhash? ( hash )
- phar? ( hash )
- qdbm? ( !gdbm )
- readline? ( !libedit )
- recode? ( !imap !mysqli !mysql )
- session-mm? ( session !threads )
- mysql? ( hash || ( mysqli pdo ) )
- mysqli? ( hash )
- zip-encryption? ( zip )
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- "${FILESDIR}/php-freetype-2.9.1.patch"
- "${FILESDIR}/php-7.2.13-intl-use-icu-namespace.patch"
-)
-
-PHP_MV="$(ver_cut 1)"
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # default to /tmp for save_path, bug #282768
- sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
-
- # Set the extension dir
- sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
- -i "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR packages
- sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # Bug 669566 - necessary so that build tools are updated for commands like pecl
- # Force rebuilding aclocal.m4
- rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare"
- eautoreconf
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- $(use_enable threads maintainer-zts)
- )
-
- our_conf+=(
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_enable bcmath bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar calendar)
- $(use_enable coverage gcov)
- $(use_enable ctype ctype)
- $(use_with curl curl "${EPREFIX}/usr")
- $(use_enable xml dom)
- $(use_with enchant enchant "${EPREFIX}/usr")
- $(use_enable exif exif)
- $(use_enable fileinfo fileinfo)
- $(use_enable filter filter)
- $(use_enable ftp ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_enable hash hash)
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
- $(use_enable intl intl)
- $(use_enable ipv6 ipv6)
- $(use_enable json json)
- $(use_with kerberos kerberos "${EPREFIX}/usr")
- $(use_enable xml libxml)
- $(use_with xml libxml-dir "${EPREFIX}/usr")
- $(use_enable unicode mbstring)
- $(use_with unicode onig "${EPREFIX}/usr")
- $(use_with ssl openssl "${EPREFIX}/usr")
- $(use_with ssl openssl-dir "${EPREFIX}/usr")
- $(use_enable pcntl pcntl)
- $(use_enable phar phar)
- $(use_enable pdo pdo)
- $(use_enable opcache opcache)
- $(use_with postgres pgsql "${EPREFIX}/usr")
- $(use_enable posix posix)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_with recode recode "${EPREFIX}/usr")
- $(use_enable simplexml simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap soap)
- $(use_enable sockets sockets)
- $(use_with sodium sodium "${EPREFIX}/usr")
- $(use_with sqlite sqlite3 "${EPREFIX}/usr")
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer tokenizer)
- $(use_enable wddx wddx)
- $(use_enable xml xml)
- $(use_enable xmlreader xmlreader)
- $(use_enable xmlwriter xmlwriter)
- $(use_with xmlrpc xmlrpc)
- $(use_with xslt xsl "${EPREFIX}/usr")
- $(use_enable zip zip)
- $(use_with zip-encryption libzip "${EPREFIX}/usr")
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug debug)
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba${shared}" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Support for the GD graphics library
- our_conf+=(
- $(use_with truetype freetype-dir "${EPREFIX}/usr")
- $(use_enable cjk gd-jis-conv)
- $(use_with gd jpeg-dir "${EPREFIX}/usr")
- $(use_with gd png-dir "${EPREFIX}/usr")
- $(use_with xpm xpm-dir "${EPREFIX}/usr")
- )
- if use webp; then
- our_conf+=( --with-webp-dir="${EPREFIX}/usr" )
- fi
- # enable gd last, so configure can pick up the previous settings
- our_conf+=( $(use_with gd gd) )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # Interbase/firebird support
- our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") )
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr")
- )
- fi
-
- # MySQL support
- local mysqllib="mysqlnd"
- local mysqlilib="mysqlnd"
-
- our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- our_conf+=(
- $(use_with odbc unixODBC "${EPREFIX}/usr")
- $(use_with iodbc iodbc "${EPREFIX}/usr")
- )
-
- # Oracle support
- our_conf+=( $(use_with oci8-instant-client oci8) )
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "${mysqllib}")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite "${EPREFIX}/usr")
- $(use_with firebird pdo-firebird "${EPREFIX}/usr")
- $(use_with odbc pdo-odbc "unixODBC,${EPREFIX}/usr")
- $(use_with oci8-instant-client pdo-oci)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit libedit "${EPREFIX}/usr")
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-pcre-regex affects ext/pcre
- # --with-pcre-dir affects ext/filter and ext/zip
- # --with-pcre-valgrind cannot be enabled with system pcre
- # Many arches don't support pcre-jit
- our_conf+=(
- --with-pcre-regex="${EPREFIX}/usr"
- --with-pcre-dir="${EPREFIX}/usr"
- --without-pcre-valgrind
- --without-pcre-jit
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- mkdir -p "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
- cd "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- for sapi in ${SAPIS} ; do
- if use "${sapi}"; then
- cd "${WORKDIR}/sapis-build/$sapi" || \
- die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
- emake
- fi
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Makefile forgets to create this before trying to write to it...
- dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
-
- # Install php environment (without any sapis)
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
-
- local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local sapi="", file=""
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
- newins ".libs/libphp${PHP_MV}$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#${EPREFIX}}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp${PHP_MV}$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#${EPREFIX}}"
- dolib.so "modules/opcache$(get_libname)"
- fi
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
- PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
- if [[ ! -x "${PHP_BIN}" ]] ; then
- ewarn "Test phase requires USE=cli, skipping"
- return
- else
- export TEST_PHP_EXECUTABLE="${PHP_BIN}"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
- "session.save_path=${T}" \
- "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
- "session.save_path=${T}"
-
- for name in ${EXPECTED_TEST_FAILURES}; do
- mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
- done
-
- local failed="$(find -name '*.out')"
- if [[ ${failed} != "" ]] ; then
- ewarn "The following test cases failed unexpectedly:"
- for name in ${failed}; do
- ewarn " ${name/.out/}"
- done
- else
- einfo "No unexpected test failures, all fine"
- fi
-
- if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
- local passed=""
- for name in ${EXPECTED_TEST_FAILURES}; do
- [[ -f "${name}.diff" ]] && continue
- passed="${passed} ${name}"
- done
- if [[ ${passed} != "" ]] ; then
- einfo "The following test cases passed unexpectedly:"
- for name in ${passed}; do
- ewarn " ${passed}"
- done
- else
- einfo "None of the known-to-fail tests passed, all fine"
- fi
- fi
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-7.2.28.ebuild b/dev-lang/php/php-7.2.29.ebuild
index 246350b3a349..51d7692ef88e 100644
--- a/dev-lang/php/php-7.2.28.ebuild
+++ b/dev-lang/php/php-7.2.29.ebuild
@@ -18,7 +18,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"
@@ -61,7 +61,7 @@ COMMON_DEPEND="
curl? ( >=net-misc/curl-7.10.5 )
enchant? ( <app-text/enchant-2.0:0 )
firebird? ( dev-db/firebird )
- gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib )
+ gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= sys-libs/zlib )
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
gmp? ( dev-libs/gmp:0= )
iconv? ( virtual/libiconv )
@@ -557,6 +557,11 @@ src_install() {
case "$sapi" in
cli)
source="sapi/cli/php"
+ # Install the "phar" archive utility.
+ if use phar ; then
+ emake INSTALL_ROOT="${D}" install-pharcmd
+ dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
+ fi
;;
cgi)
source="sapi/cgi/php-cgi"
@@ -580,7 +585,7 @@ src_install() {
else
dobin "${source}"
local name="$(basename ${source})"
- dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
+ dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
fi
fi
diff --git a/dev-lang/php/php-7.3.13.ebuild b/dev-lang/php/php-7.3.13.ebuild
deleted file mode 100644
index 1af2767e3106..000000000000
--- a/dev-lang/php/php-7.3.13.ebuild
+++ /dev/null
@@ -1,751 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit flag-o-matic systemd autotools
-
-MY_PV=${PV/_rc/RC}
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://php.net/"
-SRC_URI="https://php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- gd? ( gd )
- unicode? ( BSD-2 LGPL-2.1 )"
-
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
- coverage +ctype curl debug
- enchant exif +fileinfo +filter firebird
- +flatfile ftp gd gdbm gmp +hash +iconv imap inifile
- intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl lmdb
- mhash mssql mysql mysqli nls
- oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
- readline recode selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode wddx webp
- +xml xmlreader xmlwriter xmlrpc xpm xslt zip zip-encryption zlib"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- >=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
- >=dev-libs/libpcre2-10.30[unicode]
- fpm? ( acl? ( sys-apps/acl ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- berkdb? ( || ( sys-libs/db:5.3
- sys-libs/db:5.1
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5 ) )
- bzip2? ( app-arch/bzip2:0= )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- coverage? ( dev-util/lcov )
- curl? ( >=net-misc/curl-7.10.5 )
- enchant? ( <app-text/enchant-2.0:0 )
- firebird? ( dev-db/firebird )
- gd? ( virtual/jpeg:0 media-libs/libpng:0= >=sys-libs/zlib-1.2.0.4 )
- gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- iodbc? ( dev-db/libiodbc )
- kerberos? ( virtual/krb5 )
- ldap? ( >=net-nds/openldap-1.2.11 )
- ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
- libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- oci8-instant-client? ( dev-db/oracle-instantclient-basic )
- odbc? ( >=dev-db/unixODBC-1.8.13 )
- postgres? ( dev-db/postgresql:* )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- recode? ( app-text/recode )
- session-mm? ( dev-libs/mm )
- simplexml? ( >=dev-libs/libxml2-2.6.8 )
- snmp? ( >=net-analyzer/net-snmp-5.2 )
- soap? ( >=dev-libs/libxml2-2.6.8 )
- sodium? ( dev-libs/libsodium:= )
- spell? ( >=app-text/aspell-0.50 )
- sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.1:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( =media-libs/freetype-2* )
- unicode? ( dev-libs/oniguruma:= )
- wddx? ( >=dev-libs/libxml2-2.6.8 )
- webp? ( media-libs/libwebp:0= )
- xml? ( >=dev-libs/libxml2-2.6.8 )
- xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
- xmlreader? ( >=dev-libs/libxml2-2.6.8 )
- xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
- xpm? ( x11-libs/libXpm )
- xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
- zip? ( >=sys-libs/zlib-1.2.0.4:0= )
- zip-encryption? ( >=dev-libs/libzip-1.2.0:= )
- zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- >=sys-devel/bison-3.0.1"
-
-BDEPEND="virtual/pkgconfig"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- cli? ( ^^ ( readline libedit ) )
- truetype? ( gd zlib )
- webp? ( gd zlib )
- cjk? ( gd zlib )
- exif? ( gd zlib )
- xpm? ( gd zlib )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- wddx? ( xml )
- xmlrpc? ( || ( xml iconv ) )
- xmlreader? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- mhash? ( hash )
- phar? ( hash )
- qdbm? ( !gdbm )
- readline? ( !libedit )
- recode? ( !imap !mysqli !mysql )
- session-mm? ( session !threads )
- mysql? ( || ( mysqli pdo ) )
- zip-encryption? ( zip )
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- "${FILESDIR}/php-freetype-2.9.1.patch"
-)
-
-PHP_MV="$(ver_cut 1)"
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # default to /tmp for save_path, bug #282768
- sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
-
- # Set the extension dir
- sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
- -i "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR packages
- sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # Bug 669566 - necessary so that build tools are updated for commands like pecl
- # Force rebuilding aclocal.m4
- rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare"
- eautoreconf
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- $(use_enable threads maintainer-zts)
- )
-
- our_conf+=(
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_enable bcmath bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar calendar)
- $(use_enable coverage gcov)
- $(use_enable ctype ctype)
- $(use_with curl curl "${EPREFIX}/usr")
- $(use_enable xml dom)
- $(use_with enchant enchant "${EPREFIX}/usr")
- $(use_enable exif exif)
- $(use_enable fileinfo fileinfo)
- $(use_enable filter filter)
- $(use_enable ftp ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_enable hash hash)
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
- $(use_enable intl intl)
- $(use_enable ipv6 ipv6)
- $(use_enable json json)
- $(use_with kerberos kerberos "${EPREFIX}/usr")
- $(use_enable xml libxml)
- $(use_with xml libxml-dir "${EPREFIX}/usr")
- $(use_enable unicode mbstring)
- $(use_with unicode onig "${EPREFIX}/usr")
- $(use_with ssl openssl "${EPREFIX}/usr")
- $(use_with ssl openssl-dir "${EPREFIX}/usr")
- $(use_enable pcntl pcntl)
- $(use_enable phar phar)
- $(use_enable pdo pdo)
- $(use_enable opcache opcache)
- $(use_with postgres pgsql "${EPREFIX}/usr")
- $(use_enable posix posix)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_with recode recode "${EPREFIX}/usr")
- $(use_enable simplexml simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap soap)
- $(use_enable sockets sockets)
- $(use_with sodium sodium "${EPREFIX}/usr")
- $(use_with sqlite sqlite3 "${EPREFIX}/usr")
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer tokenizer)
- $(use_enable wddx wddx)
- $(use_enable xml xml)
- $(use_enable xmlreader xmlreader)
- $(use_enable xmlwriter xmlwriter)
- $(use_with xmlrpc xmlrpc)
- $(use_with xslt xsl "${EPREFIX}/usr")
- $(use_enable zip zip)
- $(use_with zip-encryption libzip "${EPREFIX}/usr")
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug debug)
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba${shared}" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Support for the GD graphics library
- our_conf+=(
- $(use_with truetype freetype-dir "${EPREFIX}/usr")
- $(use_enable cjk gd-jis-conv)
- $(use_with gd jpeg-dir "${EPREFIX}/usr")
- $(use_with gd png-dir "${EPREFIX}/usr")
- $(use_with xpm xpm-dir "${EPREFIX}/usr")
- )
- if use webp; then
- our_conf+=( --with-webp-dir="${EPREFIX}/usr" )
- fi
- # enable gd last, so configure can pick up the previous settings
- our_conf+=( $(use_with gd gd) )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # Interbase/firebird support
- our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") )
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr")
- )
- fi
-
- # MySQL support
- local mysqllib="mysqlnd"
- local mysqlilib="mysqlnd"
-
- our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- our_conf+=(
- $(use_with odbc unixODBC "${EPREFIX}/usr")
- $(use_with iodbc iodbc "${EPREFIX}/usr")
- )
-
- # Oracle support
- our_conf+=( $(use_with oci8-instant-client oci8) )
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "${mysqllib}")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite "${EPREFIX}/usr")
- $(use_with firebird pdo-firebird "${EPREFIX}/usr")
- $(use_with odbc pdo-odbc "unixODBC,${EPREFIX}/usr")
- $(use_with oci8-instant-client pdo-oci)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit libedit "${EPREFIX}/usr")
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-pcre-regex affects ext/pcre
- # --with-pcre-dir affects ext/filter and ext/zip
- # --with-pcre-valgrind cannot be enabled with system pcre
- # Many arches don't support pcre-jit
- our_conf+=(
- --with-pcre-regex="${EPREFIX}/usr"
- --with-pcre-dir="${EPREFIX}/usr"
- --without-pcre-valgrind
- --without-pcre-jit
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- mkdir -p "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
- cd "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- for sapi in ${SAPIS} ; do
- if use "${sapi}"; then
- cd "${WORKDIR}/sapis-build/$sapi" || \
- die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
- emake
- fi
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Makefile forgets to create this before trying to write to it...
- dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
-
- # Install php environment (without any sapis)
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
-
- local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local sapi="", file=""
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
- newins ".libs/libphp${PHP_MV}$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#${EPREFIX}}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp${PHP_MV}$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#${EPREFIX}}"
- dolib.so "modules/opcache$(get_libname)"
- fi
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
- PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
- if [[ ! -x "${PHP_BIN}" ]] ; then
- ewarn "Test phase requires USE=cli, skipping"
- return
- else
- export TEST_PHP_EXECUTABLE="${PHP_BIN}"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
- "session.save_path=${T}" \
- "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
- "session.save_path=${T}"
-
- for name in ${EXPECTED_TEST_FAILURES}; do
- mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
- done
-
- local failed="$(find -name '*.out')"
- if [[ ${failed} != "" ]] ; then
- ewarn "The following test cases failed unexpectedly:"
- for name in ${failed}; do
- ewarn " ${name/.out/}"
- done
- else
- einfo "No unexpected test failures, all fine"
- fi
-
- if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
- local passed=""
- for name in ${EXPECTED_TEST_FAILURES}; do
- [[ -f "${name}.diff" ]] && continue
- passed="${passed} ${name}"
- done
- if [[ ${passed} != "" ]] ; then
- einfo "The following test cases passed unexpectedly:"
- for name in ${passed}; do
- ewarn " ${passed}"
- done
- else
- einfo "None of the known-to-fail tests passed, all fine"
- fi
- fi
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-7.3.14.ebuild b/dev-lang/php/php-7.3.14.ebuild
deleted file mode 100644
index ebe16ceac61b..000000000000
--- a/dev-lang/php/php-7.3.14.ebuild
+++ /dev/null
@@ -1,751 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit flag-o-matic systemd autotools
-
-MY_PV=${PV/_rc/RC}
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://www.php.net/"
-SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- gd? ( gd )
- unicode? ( BSD-2 LGPL-2.1 )"
-
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
- coverage +ctype curl debug
- enchant exif +fileinfo +filter firebird
- +flatfile ftp gd gdbm gmp +hash +iconv imap inifile
- intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl lmdb
- mhash mssql mysql mysqli nls
- oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
- readline recode selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode wddx webp
- +xml xmlreader xmlwriter xmlrpc xpm xslt zip zip-encryption zlib"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- >=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
- >=dev-libs/libpcre2-10.30[unicode]
- fpm? ( acl? ( sys-apps/acl ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- berkdb? ( || ( sys-libs/db:5.3
- sys-libs/db:5.1
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5 ) )
- bzip2? ( app-arch/bzip2:0= )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- coverage? ( dev-util/lcov )
- curl? ( >=net-misc/curl-7.10.5 )
- enchant? ( <app-text/enchant-2.0:0 )
- firebird? ( dev-db/firebird )
- gd? ( virtual/jpeg:0 media-libs/libpng:0= >=sys-libs/zlib-1.2.0.4 )
- gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- iodbc? ( dev-db/libiodbc )
- kerberos? ( virtual/krb5 )
- ldap? ( >=net-nds/openldap-1.2.11 )
- ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
- libedit? ( dev-libs/libedit )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- oci8-instant-client? ( dev-db/oracle-instantclient-basic )
- odbc? ( >=dev-db/unixODBC-1.8.13 )
- postgres? ( dev-db/postgresql:* )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- recode? ( app-text/recode )
- session-mm? ( dev-libs/mm )
- simplexml? ( >=dev-libs/libxml2-2.6.8 )
- snmp? ( >=net-analyzer/net-snmp-5.2 )
- soap? ( >=dev-libs/libxml2-2.6.8 )
- sodium? ( dev-libs/libsodium:= )
- spell? ( >=app-text/aspell-0.50 )
- sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.1:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( =media-libs/freetype-2* )
- unicode? ( dev-libs/oniguruma:= )
- wddx? ( >=dev-libs/libxml2-2.6.8 )
- webp? ( media-libs/libwebp:0= )
- xml? ( >=dev-libs/libxml2-2.6.8 )
- xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
- xmlreader? ( >=dev-libs/libxml2-2.6.8 )
- xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
- xpm? ( x11-libs/libXpm )
- xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
- zip? ( >=sys-libs/zlib-1.2.0.4:0= )
- zip-encryption? ( >=dev-libs/libzip-1.2.0:= )
- zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- >=sys-devel/bison-3.0.1"
-
-BDEPEND="virtual/pkgconfig"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- cli? ( ^^ ( readline libedit ) )
- truetype? ( gd zlib )
- webp? ( gd zlib )
- cjk? ( gd zlib )
- exif? ( gd zlib )
- xpm? ( gd zlib )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- wddx? ( xml )
- xmlrpc? ( || ( xml iconv ) )
- xmlreader? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- mhash? ( hash )
- phar? ( hash )
- qdbm? ( !gdbm )
- readline? ( !libedit )
- recode? ( !imap !mysqli !mysql )
- session-mm? ( session !threads )
- mysql? ( || ( mysqli pdo ) )
- zip-encryption? ( zip )
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- "${FILESDIR}/php-freetype-2.9.1.patch"
-)
-
-PHP_MV="$(ver_cut 1)"
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # default to /tmp for save_path, bug #282768
- sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
-
- # Set the extension dir
- sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
- -i "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR packages
- sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # Bug 669566 - necessary so that build tools are updated for commands like pecl
- # Force rebuilding aclocal.m4
- rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare"
- eautoreconf
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- $(use_enable threads maintainer-zts)
- )
-
- our_conf+=(
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_enable bcmath bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar calendar)
- $(use_enable coverage gcov)
- $(use_enable ctype ctype)
- $(use_with curl curl "${EPREFIX}/usr")
- $(use_enable xml dom)
- $(use_with enchant enchant "${EPREFIX}/usr")
- $(use_enable exif exif)
- $(use_enable fileinfo fileinfo)
- $(use_enable filter filter)
- $(use_enable ftp ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_enable hash hash)
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
- $(use_enable intl intl)
- $(use_enable ipv6 ipv6)
- $(use_enable json json)
- $(use_with kerberos kerberos "${EPREFIX}/usr")
- $(use_enable xml libxml)
- $(use_with xml libxml-dir "${EPREFIX}/usr")
- $(use_enable unicode mbstring)
- $(use_with unicode onig "${EPREFIX}/usr")
- $(use_with ssl openssl "${EPREFIX}/usr")
- $(use_with ssl openssl-dir "${EPREFIX}/usr")
- $(use_enable pcntl pcntl)
- $(use_enable phar phar)
- $(use_enable pdo pdo)
- $(use_enable opcache opcache)
- $(use_with postgres pgsql "${EPREFIX}/usr")
- $(use_enable posix posix)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_with recode recode "${EPREFIX}/usr")
- $(use_enable simplexml simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap soap)
- $(use_enable sockets sockets)
- $(use_with sodium sodium "${EPREFIX}/usr")
- $(use_with sqlite sqlite3 "${EPREFIX}/usr")
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer tokenizer)
- $(use_enable wddx wddx)
- $(use_enable xml xml)
- $(use_enable xmlreader xmlreader)
- $(use_enable xmlwriter xmlwriter)
- $(use_with xmlrpc xmlrpc)
- $(use_with xslt xsl "${EPREFIX}/usr")
- $(use_enable zip zip)
- $(use_with zip-encryption libzip "${EPREFIX}/usr")
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug debug)
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba${shared}" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Support for the GD graphics library
- our_conf+=(
- $(use_with truetype freetype-dir "${EPREFIX}/usr")
- $(use_enable cjk gd-jis-conv)
- $(use_with gd jpeg-dir "${EPREFIX}/usr")
- $(use_with gd png-dir "${EPREFIX}/usr")
- $(use_with xpm xpm-dir "${EPREFIX}/usr")
- )
- if use webp; then
- our_conf+=( --with-webp-dir="${EPREFIX}/usr" )
- fi
- # enable gd last, so configure can pick up the previous settings
- our_conf+=( $(use_with gd gd) )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # Interbase/firebird support
- our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") )
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr")
- )
- fi
-
- # MySQL support
- local mysqllib="mysqlnd"
- local mysqlilib="mysqlnd"
-
- our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- our_conf+=(
- $(use_with odbc unixODBC "${EPREFIX}/usr")
- $(use_with iodbc iodbc "${EPREFIX}/usr")
- )
-
- # Oracle support
- our_conf+=( $(use_with oci8-instant-client oci8) )
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "${mysqllib}")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite "${EPREFIX}/usr")
- $(use_with firebird pdo-firebird "${EPREFIX}/usr")
- $(use_with odbc pdo-odbc "unixODBC,${EPREFIX}/usr")
- $(use_with oci8-instant-client pdo-oci)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit libedit "${EPREFIX}/usr")
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-pcre-regex affects ext/pcre
- # --with-pcre-dir affects ext/filter and ext/zip
- # --with-pcre-valgrind cannot be enabled with system pcre
- # Many arches don't support pcre-jit
- our_conf+=(
- --with-pcre-regex="${EPREFIX}/usr"
- --with-pcre-dir="${EPREFIX}/usr"
- --without-pcre-valgrind
- --without-pcre-jit
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- mkdir -p "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
- cd "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- for sapi in ${SAPIS} ; do
- if use "${sapi}"; then
- cd "${WORKDIR}/sapis-build/$sapi" || \
- die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
- emake
- fi
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Makefile forgets to create this before trying to write to it...
- dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
-
- # Install php environment (without any sapis)
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
-
- local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local sapi="", file=""
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
- newins ".libs/libphp${PHP_MV}$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#${EPREFIX}}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp${PHP_MV}$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#${EPREFIX}}"
- dolib.so "modules/opcache$(get_libname)"
- fi
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
- PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
- if [[ ! -x "${PHP_BIN}" ]] ; then
- ewarn "Test phase requires USE=cli, skipping"
- return
- else
- export TEST_PHP_EXECUTABLE="${PHP_BIN}"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
- "session.save_path=${T}" \
- "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
- "session.save_path=${T}"
-
- for name in ${EXPECTED_TEST_FAILURES}; do
- mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
- done
-
- local failed="$(find -name '*.out')"
- if [[ ${failed} != "" ]] ; then
- ewarn "The following test cases failed unexpectedly:"
- for name in ${failed}; do
- ewarn " ${name/.out/}"
- done
- else
- einfo "No unexpected test failures, all fine"
- fi
-
- if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
- local passed=""
- for name in ${EXPECTED_TEST_FAILURES}; do
- [[ -f "${name}.diff" ]] && continue
- passed="${passed} ${name}"
- done
- if [[ ${passed} != "" ]] ; then
- einfo "The following test cases passed unexpectedly:"
- for name in ${passed}; do
- ewarn " ${passed}"
- done
- else
- einfo "None of the known-to-fail tests passed, all fine"
- fi
- fi
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-7.3.15.ebuild b/dev-lang/php/php-7.3.16.ebuild
index 26c1bf2cc49b..87f5048b172d 100644
--- a/dev-lang/php/php-7.3.15.ebuild
+++ b/dev-lang/php/php-7.3.16.ebuild
@@ -19,7 +19,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
S="${WORKDIR}/${PN}-${MY_PV}"
@@ -64,7 +64,7 @@ COMMON_DEPEND="
curl? ( >=net-misc/curl-7.10.5 )
enchant? ( <app-text/enchant-2.0:0 )
firebird? ( dev-db/firebird )
- gd? ( virtual/jpeg:0 media-libs/libpng:0= >=sys-libs/zlib-1.2.0.4 )
+ gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= >=sys-libs/zlib-1.2.0.4 )
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
gmp? ( dev-libs/gmp:0= )
iconv? ( virtual/libiconv )
@@ -558,6 +558,11 @@ src_install() {
case "$sapi" in
cli)
source="sapi/cli/php"
+ # Install the "phar" archive utility.
+ if use phar ; then
+ emake INSTALL_ROOT="${D}" install-pharcmd
+ dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
+ fi
;;
cgi)
source="sapi/cgi/php-cgi"
@@ -581,7 +586,7 @@ src_install() {
else
dobin "${source}"
local name="$(basename ${source})"
- dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
+ dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
fi
fi
diff --git a/dev-lang/php/php-7.4.1.ebuild b/dev-lang/php/php-7.4.1.ebuild
deleted file mode 100644
index 3190c5785155..000000000000
--- a/dev-lang/php/php-7.4.1.ebuild
+++ /dev/null
@@ -1,741 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-WANT_AUTOMAKE="none"
-
-inherit flag-o-matic systemd autotools
-
-MY_PV=${PV/_rc/RC}
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://php.net/"
-SRC_URI="https://php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- gd? ( gd )
- unicode? ( BSD-2 LGPL-2.1 )"
-
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
- coverage +ctype curl debug
- enchant exif ffi +fileinfo +filter firebird
- +flatfile ftp gd gdbm gmp +iconv imap inifile
- intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl lmdb
- mhash mssql mysql mysqli nls
- oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
- readline selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp
- +xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- cli? ( ^^ ( readline libedit ) )
- !cli? ( ?? ( readline libedit ) )
- truetype? ( gd zlib )
- webp? ( gd zlib )
- cjk? ( gd zlib )
- exif? ( gd zlib )
- xpm? ( gd zlib )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- xmlrpc? ( xml iconv )
- xmlreader? ( xml )
- xmlwriter? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- qdbm? ( !gdbm )
- session-mm? ( session !threads )
- mysql? ( || ( mysqli pdo ) )
- firebird? ( pdo )
- mssql? ( pdo )
-"
-
-RESTRICT="!test? ( test )"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- >=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
- >=dev-libs/libpcre2-10.30[unicode]
- fpm? ( acl? ( sys-apps/acl ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- berkdb? ( || ( sys-libs/db:5.3
- sys-libs/db:5.1
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5 ) )
- bzip2? ( app-arch/bzip2:0= )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- coverage? ( dev-util/lcov )
- curl? ( >=net-misc/curl-7.10.5 )
- enchant? ( <app-text/enchant-2.0:0 )
- ffi? ( >=virtual/libffi-3.0.11 )
- firebird? ( dev-db/firebird )
- gd? ( virtual/jpeg:0 media-libs/libpng:0= )
- gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- kerberos? ( virtual/krb5 )
- ldap? ( >=net-nds/openldap-1.2.11 )
- ldap-sasl? ( dev-libs/cyrus-sasl )
- libedit? ( dev-libs/libedit )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- oci8-instant-client? ( dev-db/oracle-instantclient-basic )
- odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
- postgres? ( dev-db/postgresql:* )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- session-mm? ( dev-libs/mm )
- snmp? ( >=net-analyzer/net-snmp-5.2 )
- sodium? ( dev-libs/libsodium:= )
- spell? ( >=app-text/aspell-0.50 )
- sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.1:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( =media-libs/freetype-2* )
- unicode? ( dev-libs/oniguruma:= )
- webp? ( media-libs/libwebp:0= )
- xml? ( >=dev-libs/libxml2-2.7.6 )
- xpm? ( x11-libs/libXpm )
- xslt? ( dev-libs/libxslt )
- zip? ( >=dev-libs/libzip-1.2.0:= )
- zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- >=sys-devel/bison-3.0.1"
-
-BDEPEND="virtual/pkgconfig"
-
-PHP_MV="$(ver_cut 1)"
-
-PATCHES=( "${FILESDIR}/php-iodbc-header-location.patch" )
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # default to /tmp for save_path, bug #282768
- sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
-
- # Set the extension dir
- sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
- -i "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR packages
- sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # Emulate buildconf to support cross-compilation
- rm -fr aclocal.m4 autom4te.cache config.cache \
- configure main/php_config.h.in || die
- eautoconf --force
- eautoheader
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- $(use_enable threads maintainer-zts)
- )
-
- our_conf+=(
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_enable bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar)
- $(use_enable coverage gcov)
- $(use_enable ctype)
- $(use_with curl)
- $(use_enable xml dom)
- $(use_with enchant)
- $(use_enable exif)
- $(use_with ffi)
- $(use_enable fileinfo)
- $(use_enable filter)
- $(use_enable ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
- $(use_enable intl)
- $(use_enable ipv6)
- $(use_enable json)
- $(use_with kerberos)
- $(use_with xml libxml)
- $(use_enable unicode mbstring)
- $(use_with ssl openssl)
- $(use_enable pcntl)
- $(use_enable phar)
- $(use_enable pdo)
- $(use_enable opcache)
- $(use_with postgres pgsql "${EPREFIX}/usr")
- $(use_enable posix)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_enable simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap)
- $(use_enable sockets)
- $(use_with sodium)
- $(use_with sqlite sqlite3)
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer)
- $(use_enable xml)
- $(use_enable xmlreader)
- $(use_enable xmlwriter)
- $(use_with xmlrpc)
- $(use_with xslt xsl)
- $(use_with zip)
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug)
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with tokyocabinet tcadb "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Support for the GD graphics library
- our_conf+=(
- $(use_with truetype freetype)
- $(use_enable cjk gd-jis-conv)
- $(use_with gd jpeg)
- $(use_with xpm)
- $(use_with webp)
- )
- # enable gd last, so configure can pick up the previous settings
- our_conf+=( $(use_enable gd) )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl)
- )
- fi
-
- # MySQL support
- local mysqllib="mysqlnd"
- local mysqlilib="mysqlnd"
-
- our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- if use odbc && use iodbc ; then
- our_conf+=(
- --without-unixODBC
- --with-iodbc
- $(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
- )
- elif use odbc ; then
- our_conf+=(
- --with-unixODBC="${EPREFIX}/usr"
- --without-iodbc
- $(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
- )
- else
- our_conf+=(
- --without-unixODBC
- --without-iodbc
- --without-pdo-odbc
- )
- fi
-
- # Oracle support
- our_conf+=( $(use_with oci8-instant-client oci8) )
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "${mysqllib}")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite)
- $(use_with firebird pdo-firebird "${EPREFIX}/usr")
- $(use_with oci8-instant-client pdo-oci)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit)
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-external-pcre affects ext/pcre
- # Many arches don't support pcre-jit
- our_conf+=(
- --with-external-pcre
- --without-pcre-jit
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- mkdir -p "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
- cd "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- for sapi in ${SAPIS} ; do
- if use "${sapi}"; then
- cd "${WORKDIR}/sapis-build/$sapi" || \
- die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
- emake
- fi
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Makefile forgets to create this before trying to write to it...
- dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
-
- # Install php environment (without any sapis)
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
-
- local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local sapi="", file=""
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
- newins ".libs/libphp${PHP_MV}$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#${EPREFIX}}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp${PHP_MV}$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#${EPREFIX}}"
- dolib.so "modules/opcache$(get_libname)"
- fi
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
- PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
- if [[ ! -x "${PHP_BIN}" ]] ; then
- ewarn "Test phase requires USE=cli, skipping"
- return
- else
- export TEST_PHP_EXECUTABLE="${PHP_BIN}"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
- "session.save_path=${T}" \
- "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
- "session.save_path=${T}"
-
- for name in ${EXPECTED_TEST_FAILURES}; do
- mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
- done
-
- local failed="$(find -name '*.out')"
- if [[ ${failed} != "" ]] ; then
- ewarn "The following test cases failed unexpectedly:"
- for name in ${failed}; do
- ewarn " ${name/.out/}"
- done
- else
- einfo "No unexpected test failures, all fine"
- fi
-
- if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
- local passed=""
- for name in ${EXPECTED_TEST_FAILURES}; do
- [[ -f "${name}.diff" ]] && continue
- passed="${passed} ${name}"
- done
- if [[ ${passed} != "" ]] ; then
- einfo "The following test cases passed unexpectedly:"
- for name in ${passed}; do
- ewarn " ${passed}"
- done
- else
- einfo "None of the known-to-fail tests passed, all fine"
- fi
- fi
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-7.4.2.ebuild b/dev-lang/php/php-7.4.2.ebuild
deleted file mode 100644
index 4e6b9a033911..000000000000
--- a/dev-lang/php/php-7.4.2.ebuild
+++ /dev/null
@@ -1,741 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-WANT_AUTOMAKE="none"
-
-inherit flag-o-matic systemd autotools
-
-MY_PV=${PV/_rc/RC}
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://www.php.net/"
-SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- gd? ( gd )
- unicode? ( BSD-2 LGPL-2.1 )"
-
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
- coverage +ctype curl debug
- enchant exif ffi +fileinfo +filter firebird
- +flatfile ftp gd gdbm gmp +iconv imap inifile
- intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl lmdb
- mhash mssql mysql mysqli nls
- oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
- readline selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp
- +xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- cli? ( ^^ ( readline libedit ) )
- !cli? ( ?? ( readline libedit ) )
- truetype? ( gd zlib )
- webp? ( gd zlib )
- cjk? ( gd zlib )
- exif? ( gd zlib )
- xpm? ( gd zlib )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- xmlrpc? ( xml iconv )
- xmlreader? ( xml )
- xmlwriter? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- qdbm? ( !gdbm )
- session-mm? ( session !threads )
- mysql? ( || ( mysqli pdo ) )
- firebird? ( pdo )
- mssql? ( pdo )
-"
-
-RESTRICT="!test? ( test )"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- >=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
- >=dev-libs/libpcre2-10.30[unicode]
- fpm? ( acl? ( sys-apps/acl ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- berkdb? ( || ( sys-libs/db:5.3
- sys-libs/db:5.1
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5 ) )
- bzip2? ( app-arch/bzip2:0= )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- coverage? ( dev-util/lcov )
- curl? ( >=net-misc/curl-7.10.5 )
- enchant? ( <app-text/enchant-2.0:0 )
- ffi? ( >=virtual/libffi-3.0.11 )
- firebird? ( dev-db/firebird )
- gd? ( virtual/jpeg:0 media-libs/libpng:0= )
- gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- kerberos? ( virtual/krb5 )
- ldap? ( >=net-nds/openldap-1.2.11 )
- ldap-sasl? ( dev-libs/cyrus-sasl )
- libedit? ( dev-libs/libedit )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- oci8-instant-client? ( dev-db/oracle-instantclient-basic )
- odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
- postgres? ( dev-db/postgresql:* )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- session-mm? ( dev-libs/mm )
- snmp? ( >=net-analyzer/net-snmp-5.2 )
- sodium? ( dev-libs/libsodium:= )
- spell? ( >=app-text/aspell-0.50 )
- sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.1:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( =media-libs/freetype-2* )
- unicode? ( dev-libs/oniguruma:= )
- webp? ( media-libs/libwebp:0= )
- xml? ( >=dev-libs/libxml2-2.7.6 )
- xpm? ( x11-libs/libXpm )
- xslt? ( dev-libs/libxslt )
- zip? ( >=dev-libs/libzip-1.2.0:= )
- zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
-"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- >=sys-devel/bison-3.0.1"
-
-BDEPEND="virtual/pkgconfig"
-
-PHP_MV="$(ver_cut 1)"
-
-PATCHES=( "${FILESDIR}/php-iodbc-header-location.patch" )
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # default to /tmp for save_path, bug #282768
- sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
-
- # Set the extension dir
- sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
- -i "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR packages
- sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#${EPREFIX}}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # Emulate buildconf to support cross-compilation
- rm -fr aclocal.m4 autom4te.cache config.cache \
- configure main/php_config.h.in || die
- eautoconf --force
- eautoheader
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- $(use_enable threads maintainer-zts)
- )
-
- our_conf+=(
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_enable bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar)
- $(use_enable coverage gcov)
- $(use_enable ctype)
- $(use_with curl)
- $(use_enable xml dom)
- $(use_with enchant)
- $(use_enable exif)
- $(use_with ffi)
- $(use_enable fileinfo)
- $(use_enable filter)
- $(use_enable ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
- $(use_enable intl)
- $(use_enable ipv6)
- $(use_enable json)
- $(use_with kerberos)
- $(use_with xml libxml)
- $(use_enable unicode mbstring)
- $(use_with ssl openssl)
- $(use_enable pcntl)
- $(use_enable phar)
- $(use_enable pdo)
- $(use_enable opcache)
- $(use_with postgres pgsql "${EPREFIX}/usr")
- $(use_enable posix)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_enable simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap)
- $(use_enable sockets)
- $(use_with sodium)
- $(use_with sqlite sqlite3)
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer)
- $(use_enable xml)
- $(use_enable xmlreader)
- $(use_enable xmlwriter)
- $(use_with xmlrpc)
- $(use_with xslt xsl)
- $(use_with zip)
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug)
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with tokyocabinet tcadb "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Support for the GD graphics library
- our_conf+=(
- $(use_with truetype freetype)
- $(use_enable cjk gd-jis-conv)
- $(use_with gd jpeg)
- $(use_with xpm)
- $(use_with webp)
- )
- # enable gd last, so configure can pick up the previous settings
- our_conf+=( $(use_enable gd) )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl)
- )
- fi
-
- # MySQL support
- local mysqllib="mysqlnd"
- local mysqlilib="mysqlnd"
-
- our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- if use odbc && use iodbc ; then
- our_conf+=(
- --without-unixODBC
- --with-iodbc
- $(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
- )
- elif use odbc ; then
- our_conf+=(
- --with-unixODBC="${EPREFIX}/usr"
- --without-iodbc
- $(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
- )
- else
- our_conf+=(
- --without-unixODBC
- --without-iodbc
- --without-pdo-odbc
- )
- fi
-
- # Oracle support
- our_conf+=( $(use_with oci8-instant-client oci8) )
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "${mysqllib}")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite)
- $(use_with firebird pdo-firebird "${EPREFIX}/usr")
- $(use_with oci8-instant-client pdo-oci)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit)
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-external-pcre affects ext/pcre
- # Many arches don't support pcre-jit
- our_conf+=(
- --with-external-pcre
- --without-pcre-jit
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- mkdir -p "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
- cd "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- for sapi in ${SAPIS} ; do
- if use "${sapi}"; then
- cd "${WORKDIR}/sapis-build/$sapi" || \
- die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
- emake
- fi
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Makefile forgets to create this before trying to write to it...
- dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
-
- # Install php environment (without any sapis)
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
-
- local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local sapi="", file=""
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
- newins ".libs/libphp${PHP_MV}$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#${EPREFIX}}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp${PHP_MV}$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#${EPREFIX}}"
- dolib.so "modules/opcache$(get_libname)"
- fi
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
- PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
- if [[ ! -x "${PHP_BIN}" ]] ; then
- ewarn "Test phase requires USE=cli, skipping"
- return
- else
- export TEST_PHP_EXECUTABLE="${PHP_BIN}"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
- "session.save_path=${T}" \
- "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
- "session.save_path=${T}"
-
- for name in ${EXPECTED_TEST_FAILURES}; do
- mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
- done
-
- local failed="$(find -name '*.out')"
- if [[ ${failed} != "" ]] ; then
- ewarn "The following test cases failed unexpectedly:"
- for name in ${failed}; do
- ewarn " ${name/.out/}"
- done
- else
- einfo "No unexpected test failures, all fine"
- fi
-
- if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
- local passed=""
- for name in ${EXPECTED_TEST_FAILURES}; do
- [[ -f "${name}.diff" ]] && continue
- passed="${passed} ${name}"
- done
- if [[ ${passed} != "" ]] ; then
- einfo "The following test cases passed unexpectedly:"
- for name in ${passed}; do
- ewarn " ${passed}"
- done
- else
- einfo "None of the known-to-fail tests passed, all fine"
- fi
- fi
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-7.4.3.ebuild b/dev-lang/php/php-7.4.4.ebuild
index 13020f6424e2..69a5ee62f926 100644
--- a/dev-lang/php/php-7.4.3.ebuild
+++ b/dev-lang/php/php-7.4.4.ebuild
@@ -21,7 +21,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
S="${WORKDIR}/${PN}-${MY_PV}"
@@ -92,9 +92,9 @@ COMMON_DEPEND="
coverage? ( dev-util/lcov )
curl? ( >=net-misc/curl-7.10.5 )
enchant? ( <app-text/enchant-2.0:0 )
- ffi? ( >=virtual/libffi-3.0.11 )
+ ffi? ( >=dev-libs/libffi-3.0.11 )
firebird? ( dev-db/firebird )
- gd? ( virtual/jpeg:0 media-libs/libpng:0= )
+ gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= )
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
gmp? ( dev-libs/gmp:0= )
iconv? ( virtual/libiconv )
@@ -548,6 +548,11 @@ src_install() {
case "$sapi" in
cli)
source="sapi/cli/php"
+ # Install the "phar" archive utility.
+ if use phar ; then
+ emake INSTALL_ROOT="${D}" install-pharcmd
+ dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
+ fi
;;
cgi)
source="sapi/cgi/php-cgi"
@@ -571,7 +576,7 @@ src_install() {
else
dobin "${source}"
local name="$(basename ${source})"
- dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}"
+ dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
fi
fi
diff --git a/dev-lang/python-exec/Manifest b/dev-lang/python-exec/Manifest
index f622b63d68f5..38610cb58412 100644
--- a/dev-lang/python-exec/Manifest
+++ b/dev-lang/python-exec/Manifest
@@ -1,4 +1,4 @@
DIST python-exec-2.4.6.tar.bz2 87634 BLAKE2B 7b6de8ad0e0603fafd3284e6e3c5247ad83f145ab4db6728914318ae8e6f5aaa3c0247f4e01238fca11519ef72fb1b11436aea7e2b8c988b8717b3f6a2a43c37 SHA512 e05eaf01b83de196a10933636ab6b1a5489a421592df49b8b58eabd0e732de970f902744cd3a06b5ab530a6d69fe6dfa8f270fbb09b9fe3df4ae04d516828050
-EBUILD python-exec-2.4.6-r1.ebuild 4378 BLAKE2B 40108b9da11d091d3591f08abd4385d06a2b08c787c55b40223766373c8ad6225fb82454afef13427d286865ae6f40eda8eb54a23c60016e19826152f5759845 SHA512 c8fc87ae8b238d12f40274b1c5d2c855abfcad3fb265f06b533e859384d8e09cda8b6c9b36bf628e68c9b4d18f185e846759182b0284cae8839bb1d276e3a0ea
+EBUILD python-exec-2.4.6-r1.ebuild 4376 BLAKE2B eb58565c04dde8c19ef846423bedbb606d5f47d0abe45458b694feebfaa54ff995f4df6ee3c9a330bf2488a2eae5a60f139dfd740cf42b2ee768cfd2cf3f54e9 SHA512 ae6aeba6d54d43476cf4a520d2fa5277072c6b97fc99b9998eb856c338451923d8721b302aa1a628aff2390f388de2a26186d731f8250827d2d4dbab242c2875
EBUILD python-exec-9999.ebuild 4194 BLAKE2B 1e26b4721983a44f89fa9e0e924573437a0aef49281bc20f76280ba32c5ca4e49e59c3073ee9eb5f0b564c27d130123f6c92f15a15b7c25532502d3dc42c0d2c SHA512 be43da3820f9d82f0fff4b12a344d6cf05bd46a8d2dc563c13182517c0fe29be31ab7a2fa811f5ff727d295e6c6ed0d8375078a9d47d453a85fb730a68bb4b9b
MISC metadata.xml 589 BLAKE2B 7f9fa9750915db8b546b52a560a7fd8d9a63c4f310e423ebdc0508fe9b14363001b30f3c3db26f6d05eec8a44176d62a9335153dff2d55a41a31d3b428cc9ca6 SHA512 2ac0223af0a2cf95d2b18ef415eadb325af0094e4ec361a414b0d68b203dc1c937d3d680af96bdad1e8a48cb5786683bdbbd451f47a0f3a777c075e1690ccf7a
diff --git a/dev-lang/python-exec/python-exec-2.4.6-r1.ebuild b/dev-lang/python-exec/python-exec-2.4.6-r1.ebuild
index b51dd86b670b..5ae280f2517b 100644
--- a/dev-lang/python-exec/python-exec-2.4.6-r1.ebuild
+++ b/dev-lang/python-exec/python-exec-2.4.6-r1.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/mgorny/python-exec/releases/download/v${PV}/${P}.tar
LICENSE="BSD-2"
SLOT="2"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
# Internal Python project hack. Do not copy it. Ever.
IUSE="${_PYTHON_ALL_IMPLS[@]/#/python_targets_}"
diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
index bd3393e28bc7..48ed6b5a3d7d 100644
--- a/dev-lang/python/Manifest
+++ b/dev-lang/python/Manifest
@@ -1,35 +1,24 @@
AUX pydoc.conf 169 BLAKE2B ce40bb3d5f858bd7a8d9ef5bf215a8ab592568a724f0e08aea219da014dac12fdfcbcf5fb168bb9aa57be110f74d656aed46179ffe11e3c992d84a647e442b7b SHA512 30d0776a4004cd641e6f283658c3c24915a21ea15fe40e506ff2c3a5f95936aa00c9490b04ab25f29e9b7ac65cd88fd54ca0b08e000e73820b13c7c57c0bf5b2
AUX pydoc.init 600 BLAKE2B fb8775a6663483e5112ec283627610b746020d88494e772b92bb718a9493a52606e565c6c2fa4917a5cb963f166283d09883bd26903f2f3ced6c240d4e292a7f SHA512 9e71ad53486b6882a8441b24225c602195ee33d29dd1b60df27febbc6b752e79929be356152a489f893dcfb11f9c066b999787bc27a8ac61062c86e67a69e87a
-AUX python-2.7.10-cross-compile-warn-test.patch 775 BLAKE2B 617938353c7e19a9b931544ff1fdcd60cf46e3a68f3ff63bc6ac16432220aad13df4d2b405a968505fb64d31da51a478c46499944ab58e9bbfa5a5b44d392f00 SHA512 652941239541f6139ee3580ec0ea5240baf07ae1afb786f76a69b1d748de1f4dda2740a95c28866e9b0b59023410f8a1e86507642595991c0d90d187519cb758
-AUX python-2.7.10-system-libffi.patch 1232 BLAKE2B 3483385cbbf7ef2304cf109d05b5e1d58ec2b9015b614c996c66a9917ab10703865b40c775d7ff89a6fa80e9c8c9600292d8d916e9753027e9e0b23b0548ccff SHA512 3c888638180edc81b98a869478085de63741668ea62bdb919a60708fd64cb394e60f44a3730e2ccf3e41d1d61b72b469242fe2ccd20dc61bc2064b3e759c52bd
-AUX python-2.7.5-nonfatal-compileall.patch 750 BLAKE2B a7999a6c5a706fbab213cd8a01c6df9b130537556d59bf50b1f5ca223bb9dcd24ccfef48e70e5d3a8afe2b9c6236e1ada87d5899052a2b39f05c4644697953e2 SHA512 d2e93e2a6fcd55d516df0ddaca31af97faed677ea6b4be282eb99e7864f8a7399b5ca11139844a4b3c264832183483b0f4c8c9865c05de0e8520e6d2c8f1dbc6
-AUX python-2.7.9-ncurses-pkg-config.patch 305 BLAKE2B 92962397a1e74d9dca8bc232400e84673e0989239e6952c2ba9f25db6f9da343334e0ad325e8932fcec3f9a50e62d4e9b81a8d7a776cdbfc2d0399601591f534 SHA512 2c18b5041a7a2f306dd4d0d6695bd851ca14c9107b2e3e856ec094bc53c7cc407b49e1f4813ee9e753b3ad2d4f6edda943a66bb1e6c895ab956a5f84d30646c6
-AUX python-3.7.5-hashlib.patch 805 BLAKE2B e4c9c9446e5054f26b55f272c6d0174c0763edecf10e51da1328553a423ca9c444064b789837e520caf88f18474cfbadcc79c43ac8156595a6c05eb66b087d1e SHA512 a08dc39290a1e254e2d76f70b989d8f8f1e6f5aee3ed12b5ff4325d878d025e05d3ccb6de78aa77f63ebb11846a12d7c07d79c7b8dd7804f1b5a6f3082dc992c
+AUX test.support.unlink-ignore-EACCES.patch 872 BLAKE2B 823828aec1c5a76708904c2d3e6e49744f4619820f86e6328a95374d0567d2be2b5f3cf3707ac654dec925ff12215877ca619485873dab91817a966080eb8b33 SHA512 aa5482f0a3bcc6c021bc7c1fe08e61345af41eb6b331c25d7c124b3390319430e6cf19fabb6699621ece32e3085171f61c0ee4a192f5a7b34077478827664397
+AUX test.support.unlink-ignore-PermissionError.patch 844 BLAKE2B e2ff43852303a1485b79ba8e91044873948d320990d55c77b3fcb679594f8c6f12a7443a1e4b521f8a7f5923913bfb62b5beab990fc78b6a09f48af45a0a5480 SHA512 24cd25c8844dd31937833ca5ff7e886a982e643befb058475ee68eb48e24d81d74e72dd3f01631cae5434ac03fdfaf10e7b46fd4258bb11ae5dbec4ec77ec9d1
DIST Python-2.7.17.tar.xz 12855568 BLAKE2B 6d09214a51d6595fe5253a279ee556d7510dcb9a0e8ad71e9cf73b4fb00c3abd3680e2429f4f87d9387d1fc16d4887f5f33fc600b24b0ca2c70f36bf34df2157 SHA512 2dc19a0b0d818c71429dae94783e58b2aac0fa31f5faa1e840cac06245a59932ecc4658d913515736601bcf70a78c9ec60367aed75f4567d1e41ff3bb104da9a
DIST Python-3.6.10.tar.xz 17212220 BLAKE2B 822e231cf2755e6477e49e9128a983185a4f1e30e9d6c221f1b5720891c0de345e8c5402af458d3627eba124e75fea4b5daa94e01b0eaddc116dc3281263ecbe SHA512 26147099e1f1a0ffc85febad26e18e991f019599a150887ea0b925e34663fad8e03b3c2a941e2770c1a63960695e173ef32709572c9361e7f2cb862ccf75b28a
-DIST Python-3.6.9.tar.xz 17212164 BLAKE2B ef33dbc1ea3bbeaf92092de867279d759e3a204ca4e8bf0e5c6a1adbb17a9220d8829245fa9f067ec6497a5789a4f60b8db8c727bb2bd8126df470921d552a53 SHA512 05de9c6f44d96a52bfce10ede4312de892573edaf8bece65926d19973a3a800d65eed7a857af945f69efcfb25efa3788e7a54016b03d80b611eb51c3ea074819
-DIST Python-3.7.5.tar.xz 17236432 BLAKE2B fb49a3bfd9b1944d567a45682f789ef840e63ed610e0dddb5695da7a84a0bcb50a6fa52097722f09b57d6fc15a5f89aeaa46a061125219e597897086f3dffe40 SHA512 f4f3879881f260f58dbb041fb0f2f210d4b70b02a739e41e50e6fea67d31855a7a29ce4ebef66bfde3d0edf54b946a48f78490f986da965357b835d4dbb3f414
DIST Python-3.7.6.tar.xz 17246360 BLAKE2B b83a440a1ad5b1a2210e03be0522d39f53778774ea725fa41aaaab28cccfcdf007996f1a1d3cb95f8040b71b692189e28db67ba6ec136af82158363a1aadbba6 SHA512 5be022c384728b0c6709d165486f66226d126c521b466ed24d0c4c3c5910ec786a734f4c2c916ac409213c54a492b9fb230fb721c41e3de281676a7e9d8f3171
-DIST Python-3.8.1.tar.xz 17828408 BLAKE2B db1841625de89b812cadcd538a990401a4e49d43968dce733c289121e9de9749eaf39e1c772a32e10ed2b40bef215b19ae9c7d88e0ec9e99cd3d467406ea063c SHA512 d41381848cc1ec8009643b71875f395a9ac2c8e12a5b1efef33caf8a9e99a337c790d4354695c85352d11b62092ae372b5af62f78724363fcbf3504ff9a6ddca
+DIST Python-3.7.7.tar.xz 17268888 BLAKE2B 5f16c9559249470a9e6c0aa686965e7d78ce0f7364b5d03fc9590613c7a5456f92835340e49bf9becbec18b18d1e5a6fc318b6e30f2349da3246a918cf8b05ff SHA512 ddc838a7b0c442c2e465616f20231f2b703ed6b69ed2dc17858aac8760814fdf7cff43d350d359300e47b6bb1f0bd38c31126b855e423a3a65ed06a8fa16d136
DIST Python-3.8.2.tar.xz 17869888 BLAKE2B f42b35bea5e65f1f0a3fa6f1fd3d749fba3fa46d958608a314c1a98d0e3ca890e856da4d40ee489fe546fc02ce0fc9fa2daaaba96a8928d92ae7eb3d2dda3fe4 SHA512 ca37ad0e7c5845f5f228566aa8ff654a8f428c7d4a5aaabff29baebb0ca3219b31ba8bb2607f89e37cf3fc564f023b8407e53a4f2c47bd99122c1cc222613e37
-DIST Python-3.9.0a2.tar.xz 17988748 BLAKE2B 3d6a6facacb49d8eeaf01c3194bad8e6c920bd03a8f50ac171016fd61288120dfa06af50583c647e5850b5965fc41e03515042ef1594ec4dcbf39794e999b61a SHA512 3f17869f3ca4db423f66e145e67c9fb4935d8c908c5362de585898343190edb901861701e27ab9187a287880ee42bbb4897aa298967c1862f44b12dbab19d412
DIST Python-3.9.0a4.tar.xz 18032300 BLAKE2B 1c9ad55c7c055c3a704c4062e092d44b8d778e334e05589e7166777da328df54ef257aeb2e203416710bb9f9f1571d7700c2c12aed5b8e63adf7a1b3aedb08b5 SHA512 8f7ca0a891fb7e7868dfe5f040e9ceb7ce14d036bc5d9eae1493570c5a9631832e796a1972590c444d2347c585b0c8216345375dd1476b4da7bd47e187591afc
+DIST Python-3.9.0a5.tar.xz 18039660 BLAKE2B 2d8e273ef577ea3f19cb3f64c89f2229d68bd647112fc61753487b53f8efd78a9797ceaf68fecbd9d13483e825f79f20a7b01be2e0aeca2ee2e978108467b77f SHA512 b2f884a492eeb9fa7347c664bb6fd1dc3c25f663ebb4f9455b66540e12ce8da845c2ad4960999d5475625bc64c834f3cff28f61cd37881bdf53efa349c44bff3
DIST python-gentoo-patches-2.7.17-r1.tar.xz 14708 BLAKE2B f6e25236a471649de122d0f29506f7a4f34044a568ead47a68980411d9722b761fe1f9d653d5edccb6978b65c8c1eecbef55f403b94f32b37c0ad68e061505a8 SHA512 ecdde5e38c6fe5e69691fb3a68c8f4f43da7857d4abaff763d3cf6ad864ba43c769c03b186b60f2736a1ffb1e3e4c9982715d1b8a99ff3f5740096153bb8a90f
-DIST python-gentoo-patches-2.7.17.tar.xz 13476 BLAKE2B 788688e2941d2d6d4f768168881b2c3639213a97e214557b3a93f8db44d81e2b6d70be847b7462e54e3786660ebee4ee331402081d92167d74ad149279c3f389 SHA512 1641737635d33607a77ed2ee2462854cec603be39737de3f81abb188702aaf46f039d1616f9dcd413da1f4a8040175c66a2883e496132c2e4ebe8f860b36f9f1
DIST python-gentoo-patches-3.6.10.tar.xz 10964 BLAKE2B e32c8cb3050c7324ee234f585be7fc40cfacc6ad87759eaa300e57289e6dc6cbaed3913f33ad632b8754638e8d71983d8364ceeaad8ef325cfa6d4d2dfb56df0 SHA512 71fea7306c876c63888c4547eaf14dc2e0413dec343609d748cd1b5888e4605d47888758ebc5120a287ce833b69dd538073f91989460da7c40462b53eefca7ce
-DIST python-gentoo-patches-3.6.8.tar.xz 11224 BLAKE2B 5fe38282bcf28df18e0bd37756c880ae191ea738dc92f1cf83f682cfdc52525b9c44287dc99191a73d75c90672ab501b56adf49515b35ff1fdee88c8dc07b175 SHA512 89e700663db25d6d78eee1d4bfdab686c5341a794062f3a63df3485ac0b58deb4b4885d24701f3ae138d06ca783be92e310e1100c6d633910c33732f3cb0d7df
-DIST python-gentoo-patches-3.7.4-1.tar.xz 10100 BLAKE2B 63e8fada89b64b59ba083745626a1e8a07bec0cf93b7b6ab405c33a0f2932cbe497a331c52895a07f10434b230c438f27c9582efecdd57f3bad15d9aa604d157 SHA512 11b0e811a9890a1235c85426061b35f9964eba64cac0536f4c9e0498b1cc66eb005f14aed34eead735b43e91c2b5babced60e3310f5329231a1706871b95b547
DIST python-gentoo-patches-3.7.6.tar.xz 10084 BLAKE2B 220869e85bdaf9c21b1b05e13803bdb6ecc22ac0f69da77e57fd7c1cd93ef45ec43401b62732842e1bb3467feb6d65c8204120e2741e9eb6f4cab673fd3a8d62 SHA512 4c04b0cf7da55fa7973ab178e3ac2c59bc2142924bdced5954c058053280b6c663d7c39912286d10fe0e82ca30af6a0dd6a56fa85433f836217ca3dcbb284def
DIST python-gentoo-patches-3.8.1-r2.tar.xz 10108 BLAKE2B 02d3e2ae95b5cfa67c0ba4ff618fbee51d2342955d0a064b80575beda73902bd72462e4f6dba63743bf9fc031d92c69153ef8bd8a0ab5d6e17bfdf8ed0152da5 SHA512 757f7cf6b0cb6c1493d8ed8e5780780efcb32860a9aeba4f933a3a3fb22c412bebde8854e34609465d8a12cb9545a7b19e5d5dbe87d772bb83acd9fe829b75cc
DIST python-gentoo-patches-3.9.0_alpha2.tar.xz 8340 BLAKE2B b93edca01fa46c8eb4e18e0d92c72a3e4ef8dcebf26c0e1c0fab4c82201645ed4c358cf2311c9eb454f6a261ab514985302f81fc86284d3714d662037928963c SHA512 58b0a64d8747f187e6cc4749dc660a443c066e43f509ecc2976b6406bbfb3851a03f686adc36bd58c7c3142a707a387ac25431ca078980914d2219c49a0f2202
-EBUILD python-2.7.17-r1.ebuild 10510 BLAKE2B 17317cc2629445458c648b4f3323391738481ed740a887207989f4c2ed8d27d436760b1e88ad27a57b035cedb90a4303c08d8dcb3d866c752d9712bd1b66b8ef SHA512 81069c8873538bd57153d719f0ae56b11215bf9f144435bfb930037236eb6ece83837da8c11c8786ed38a53475bbe9da8b98aad4ed546dba5a4d9925d90de261
-EBUILD python-2.7.17.ebuild 10794 BLAKE2B d9aab08f9a72b5985e0a75d8caead6bfeac3698a3879fb0cbfbad96cf0cdafd3d44e6fef8efcb31333c686886fd7c69c30da0cb8727831a106b189da79040ef5 SHA512 bb42f8d6430b790ca9c563ca0f54981b4d12f5b2042a44ab334f5320a6c708f4cc400174cfaba2c71181372b8da1257c30b9f2b12454aa8a37345790fff3712a
-EBUILD python-3.6.10.ebuild 10265 BLAKE2B 5b72f8a980ccf2c5204af3092e51cfdcf29d0c4a2fed792ddbd65601103f8c7f25f7bb3716dfb83854d5341facbdec49ccabdf9770cfeb252dd44fd4355ef32c SHA512 b8cfd24104a35639446aae6ed3ab0ab6a4f58ece1d30c04eb84acfa371d2190766aa01961fa6dc69d297cdb82f64c19b1f5cbfb1eac94a82c99781ad781c4e91
-EBUILD python-3.6.9.ebuild 10162 BLAKE2B 6e2a3bd8f7bcd4be99c8121b93e38f96ce37e8a05f493c06854b8d1c32980c3a350cadef6c9009abb114859552f49f395ddf14942fb1c8598be430a39273b41e SHA512 26391d8816fd5b027b6b9acaba9e274956a83e73f083e268ff7a31ab50995651954e1e752eb7b5b0d71571aae4ff9f9a52daf795c43ff4cbb7124a7cd77ab4a2
-EBUILD python-3.7.5-r1.ebuild 9740 BLAKE2B 1c436dd5c03f0d3ce191aca5a939635426df771b42b3cb2e93b2238fe5849ef187d0fb68208f66ea98275737a40e2d74c0ff939bcd092217783d02af8ca3cf3c SHA512 65406926f1ee75b42b923c0063c599bf9e919769c5cac793391eb1da9889f99bc9c18be060866f5a9b61ab1d0994c007a3b83d917ea8444ed676a53e5c9ee9a5
-EBUILD python-3.7.6.ebuild 9812 BLAKE2B 1927c23eaa4269f15b631a74c2387df34a053be54ca593c767859e590712026bf3eeea79fe93fb2bf403428068955ebbd6b2e5278ffca9bd71ca6193b7c5346f SHA512 b3c1ce69d90d793d326eb53018d0f2c6021b9b353fcf40662a9a0e3a5141777b008f281a5d5bba4635a842063c7a7a5a02f62b363a34280f76ff96c19f3ef30e
-EBUILD python-3.8.1.ebuild 9860 BLAKE2B e0669333536ce1ad5863c4b5494df9a4900a9ac7e3d93a102bdc9f6e2f6b48774931ab67e45c8dce7a7e3187fdb7b90a79a2261dd6f47f340a4466394a8ccdad SHA512 de8cf4337c2d29d291a6c67f284fbf324b93617211e04b74b6b30972fb0ddbe8bf9fa36e987a110ed7d2001e4a5b02b815c361c3365f78734f9ae7bdcf8c3061
-EBUILD python-3.8.2.ebuild 9860 BLAKE2B ea4aa94066e9176ae47a522dcb3828f3e97ff787cccd42bdce17ffab9148e8e03f4ad5c149b3eeb61a23438ee5e8e2fb02ae9a873e981f05a432f7e97153d0b3 SHA512 3920e7a484ff8adaa5492a495addd6963ba7bf7a2009b42e796f69872b95ba93c20207556ba90bc15c4a31641181349010a5c24f6cd0baaa2d293b31a8584fe0
-EBUILD python-3.9.0_alpha2.ebuild 9354 BLAKE2B 9372d0dae28b541b2f5c37ffaad78eebab2676877efb05f7615faceae038c23fb04cd69580ac85cbfd84f91d26bb567233f27b0ce530a501e7fa1648e1b60142 SHA512 1c37b504a3fb97d63cbe4ec34f0866fdb109cdd6df04a3549eef1f36786cc03d25036123d7404e241102a7139b24f508bad4e74497721ce2c3a137210bde968b
-EBUILD python-3.9.0_alpha4.ebuild 9361 BLAKE2B f19d9c9c1becab883e621787b3042eda1983a253a1171ae8880d7b2a026ae9bd8c42f69c4471ea95eba46fa33b0307572b04a4c6bf7c560ce7b6832d754b7094 SHA512 073583326a6f12bb0649a76b2cbedc2f093a7618dc6a26f7bad205dc16860edb85fea68e3b0a1f4b11846e9095d884d578b600bcbd41b2d4e80e67c195b48d48
+EBUILD python-2.7.17-r2.ebuild 10766 BLAKE2B c74dbef430e0078769e09c3641a705771d150d23777cee7f84b38abe1422c2be16520f131b59b97b9377c57acad12fb9051900ed0baf63287f173e4057735324 SHA512 a9bfe80ce8cc52a5147fe69e52d0bb86e8828bd8bd99fda3549302020c6f4496a69f0e5b9d1fffb2882b84d0fc1b947e83751b315de3119a320b52dcf2d580f6
+EBUILD python-3.6.10-r1.ebuild 10531 BLAKE2B 435191d126961bb25602dfcbce27e8de9fa61235c2b17e57c04f4e48ba9d149d2836288a5fb68638bd3cbd3a9003a507de57244a27ace2e066ca4d7862e992cc SHA512 f4ab89f202fde399188abb56df1d07a2e9f33829e2bc0b0635ac940612c662e6907d9cb898f23ae6f35eb05667409f69d3d25cbedfe118e5e2af8d0a0fa1f101
+EBUILD python-3.7.6.ebuild 9872 BLAKE2B e44650e60a414c40df1c1e9459f7563c6e7deef58d5789c916a921246f1a63820ad53f81deff9086f4eb36ee3933d1f72bb52892d5db5902cf209faf8de01bb1 SHA512 72776c5f8f0e6dd37f323f15f06c7f5cb7b4b34e1c87e672d4008f7ee1e5b1cc03817b9359875f913aa9b904e576dce9d817a4264509fa77c7ea177ac5cd1976
+EBUILD python-3.7.7-r1.ebuild 10080 BLAKE2B 40cad2ed8989f57c90af1184d5bc4477b407674a0936f30ff1246910775068b54c4a840fc87e642c24473eea8d8bc3c659a04b2bf5edd33ee73c7c0af47c13a4 SHA512 d5d829fb062805e8cea85bc767dabbd561fe17107e0aed79b09337908a8799c34418f36a7950ad654625f1c7257cc9488e4653b1c54c3f32ac732ddbcdc5d00f
+EBUILD python-3.8.2-r1.ebuild 10127 BLAKE2B 5f131538a4c5de926d23830845e02c6c830de510f35be2ca10db51cf8e89902658faef08c52fb82ef61c3f697634f00675d3a0c235a7b9c734f9bc690708987c SHA512 80f83d139ab6941d654b386e0e9a7bbfb55bb1f04a351403e12c23fe09ad3f2239c865122e448d094586f4ab4ec0dc6711905361870f675ef79ab692ae0196e1
+EBUILD python-3.9.0_alpha4.ebuild 9628 BLAKE2B 080fc6b286ed6d39399a5d2106344331358b9eb5dbb2ae604180c9258b327f4c58cdae46914fd2bf99b05b995ea14ab88d785ad26ddacf9538c20cbc992bb31b SHA512 ef73d611ea23c463192b742a853e01f8d834f8db6b80125b86778bcfbe5e816004e6335ff984f79c843683d86bc429b61bf74c87fd08f5ceda94d1395905a296
+EBUILD python-3.9.0_alpha5.ebuild 9628 BLAKE2B 080fc6b286ed6d39399a5d2106344331358b9eb5dbb2ae604180c9258b327f4c58cdae46914fd2bf99b05b995ea14ab88d785ad26ddacf9538c20cbc992bb31b SHA512 ef73d611ea23c463192b742a853e01f8d834f8db6b80125b86778bcfbe5e816004e6335ff984f79c843683d86bc429b61bf74c87fd08f5ceda94d1395905a296
MISC metadata.xml 819 BLAKE2B 120c7c65d77488e726c5a0f4aa19469867ea6900e747169fae2f9cf8f14ec2936089d5edfe1935ce610bec26387273e261b1cc4b023680c8c4b229f2141a7223 SHA512 08f45707e5490067a21951b9d37c8ae67064ab67cccc5b8d8c204eab8d4a004fb910627b62989c67b849b89d301618f8f8f7996e99e1ef5bab38a239c49c124d
diff --git a/dev-lang/python/files/python-2.7.10-cross-compile-warn-test.patch b/dev-lang/python/files/python-2.7.10-cross-compile-warn-test.patch
deleted file mode 100644
index 38433de925ed..000000000000
--- a/dev-lang/python/files/python-2.7.10-cross-compile-warn-test.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-https://bugs.python.org/issue25397
-
-improve the cross-compile tests to be more focused
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -1339,7 +1339,7 @@ if test "$GCC" = "yes"
- then
- AC_MSG_CHECKING(whether gcc supports ParseTuple __format__)
- save_CFLAGS=$CFLAGS
-- CFLAGS="$CFLAGS -Werror -Wformat"
-+ CFLAGS="$CFLAGS -Werror=format"
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([[void f(char*,...)__attribute((format(PyArg_ParseTuple, 1, 2)));]], [[]])
- ],[
-@@ -4458,7 +4458,7 @@ then
- [ac_cv_have_long_long_format="cross -- assuming no"
- if test x$GCC = xyes; then
- save_CFLAGS=$CFLAGS
-- CFLAGS="$CFLAGS -Werror -Wformat"
-+ CFLAGS="$CFLAGS -Werror=format"
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
- #include <stdio.h>
- #include <stddef.h>
diff --git a/dev-lang/python/files/python-2.7.10-system-libffi.patch b/dev-lang/python/files/python-2.7.10-system-libffi.patch
deleted file mode 100644
index 0b49b794bd8d..000000000000
--- a/dev-lang/python/files/python-2.7.10-system-libffi.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-make sure we respect the system libffi setting in our build config.
-the compiler probing is fragile and can break in some situations.
-
---- a/setup.py
-+++ b/setup.py
-@@ -2069,7 +2069,7 @@ class PyBuildExt(build_ext):
- return True
-
- def detect_ctypes(self, inc_dirs, lib_dirs):
-- self.use_system_libffi = False
-+ self.use_system_libffi = ('--with-system-ffi' in sysconfig.get_config_var("CONFIG_ARGS"))
- include_dirs = []
- extra_compile_args = []
- extra_link_args = []
-@@ -2113,7 +2113,7 @@ class PyBuildExt(build_ext):
- sources=['_ctypes/_ctypes_test.c'])
- self.extensions.extend([ext, ext_test])
-
-- if not '--with-system-ffi' in sysconfig.get_config_var("CONFIG_ARGS"):
-+ if not self.use_system_libffi:
- return
-
- if host_platform == 'darwin':
-@@ -2141,10 +2141,10 @@ class PyBuildExt(build_ext):
- ffi_lib = lib_name
- break
-
-- if ffi_inc and ffi_lib:
-+ if ffi_inc:
- ext.include_dirs.extend(ffi_inc)
-+ if ffi_lib:
- ext.libraries.append(ffi_lib)
-- self.use_system_libffi = True
-
-
- class PyBuildInstall(install):
diff --git a/dev-lang/python/files/python-2.7.5-nonfatal-compileall.patch b/dev-lang/python/files/python-2.7.5-nonfatal-compileall.patch
deleted file mode 100644
index a762dfb10882..000000000000
--- a/dev-lang/python/files/python-2.7.5-nonfatal-compileall.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/Makefile.pre.in b/Makefile.pre.in
---- a/Makefile.pre.in
-+++ b/Makefile.pre.in
-@@ -1000,12 +1000,12 @@
- $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \
- $(DESTDIR)$(LIBDEST)/distutils/tests ; \
- fi
-- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
-+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
- $(PYTHON_FOR_BUILD) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
- -d $(LIBDEST) -f \
- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
- $(DESTDIR)$(LIBDEST)
-- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
-+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
- $(PYTHON_FOR_BUILD) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
- -d $(LIBDEST) -f \
- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
diff --git a/dev-lang/python/files/python-2.7.9-ncurses-pkg-config.patch b/dev-lang/python/files/python-2.7.9-ncurses-pkg-config.patch
deleted file mode 100644
index 38ce6f78b91b..000000000000
--- a/dev-lang/python/files/python-2.7.9-ncurses-pkg-config.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-do not hardcode /usr/include paths
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -4316,7 +4316,7 @@ fi
-
- # first curses configure check
- ac_save_cppflags="$CPPFLAGS"
--CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
-+CPPFLAGS="$CPPFLAGS `$PKG_CONFIG --cflags ncursesw`"
-
- AC_CHECK_HEADERS(curses.h ncurses.h)
-
diff --git a/dev-lang/python/files/python-3.7.5-hashlib.patch b/dev-lang/python/files/python-3.7.5-hashlib.patch
deleted file mode 100644
index a70a47963109..000000000000
--- a/dev-lang/python/files/python-3.7.5-hashlib.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 2c0c356ca109d1550bfb09b0da7dec3f80db77a3 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Fri, 18 Oct 2019 16:39:16 -0400
-Subject: [PATCH] Call OPENSSL_init_crypto for openssl >= 1.1.0
-
----
- Modules/_hashopenssl.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/Modules/_hashopenssl.c b/Modules/_hashopenssl.c
-index b13ade60496..8abbde5120f 100644
---- a/Modules/_hashopenssl.c
-+++ b/Modules/_hashopenssl.c
-@@ -1077,6 +1077,8 @@ PyInit__hashlib(void)
- /* Load all digest algorithms and initialize cpuid */
- OPENSSL_add_all_algorithms_noconf();
- ERR_load_crypto_strings();
-+#else
-+ OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS|OPENSSL_INIT_ADD_ALL_DIGESTS, NULL);
- #endif
-
- /* TODO build EVP_functions openssl_* entries dynamically based
---
-2.23.0
-
diff --git a/dev-lang/python/files/test.support.unlink-ignore-EACCES.patch b/dev-lang/python/files/test.support.unlink-ignore-EACCES.patch
new file mode 100644
index 000000000000..865a914b4100
--- /dev/null
+++ b/dev-lang/python/files/test.support.unlink-ignore-EACCES.patch
@@ -0,0 +1,28 @@
+From b8dc49c87f29fa875bd24fe47c741d11962a33b6 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Sat, 4 Apr 2020 14:11:25 -0400
+Subject: [PATCH] test.support.unlink: ignore EACCES
+
+Resolves test errors when running in the Gentoo sandbox environment.
+
+Bug: https://bugs.gentoo.org/679628
+---
+ Lib/test/support/__init__.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py
+index ccc11c1b4b0..d47bdebda5c 100644
+--- a/Lib/test/support/__init__.py
++++ b/Lib/test/support/__init__.py
+@@ -291,7 +291,7 @@ def unlink(filename):
+ try:
+ _unlink(filename)
+ except OSError as exc:
+- if exc.errno not in (errno.ENOENT, errno.ENOTDIR):
++ if exc.errno not in (errno.ENOENT, errno.ENOTDIR, errno.EACCES):
+ raise
+
+ def rmdir(dirname):
+--
+2.26.0
+
diff --git a/dev-lang/python/files/test.support.unlink-ignore-PermissionError.patch b/dev-lang/python/files/test.support.unlink-ignore-PermissionError.patch
new file mode 100644
index 000000000000..6cae17b55189
--- /dev/null
+++ b/dev-lang/python/files/test.support.unlink-ignore-PermissionError.patch
@@ -0,0 +1,28 @@
+From 6e6402caa7962a9c9f7c5327f3c802545824f7f9 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Fri, 3 Apr 2020 10:37:56 -0400
+Subject: [PATCH] test.support.unlink: ignore PermissionError
+
+Resolves test errors when running in the Gentoo sandbox environment.
+
+Bug: https://bugs.gentoo.org/679628
+---
+ Lib/test/support/__init__.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py
+index 1f792d8514d..a0772480eb4 100644
+--- a/Lib/test/support/__init__.py
++++ b/Lib/test/support/__init__.py
+@@ -488,7 +488,7 @@ else:
+ def unlink(filename):
+ try:
+ _unlink(filename)
+- except (FileNotFoundError, NotADirectoryError):
++ except (FileNotFoundError, NotADirectoryError, PermissionError):
+ pass
+
+ def rmdir(dirname):
+--
+2.26.0
+
diff --git a/dev-lang/python/python-2.7.17-r1.ebuild b/dev-lang/python/python-2.7.17-r2.ebuild
index 041f5ff8e9cd..7cb8c9b155e4 100644
--- a/dev-lang/python/python-2.7.17-r1.ebuild
+++ b/dev-lang/python/python-2.7.17-r2.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 ~sh 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.
@@ -88,6 +88,7 @@ src_prepare() {
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
+ "${FILESDIR}/test.support.unlink-ignore-EACCES.patch"
)
default
@@ -175,6 +176,10 @@ src_configure() {
# https://bugs.gentoo.org/596798
# (upstream dropped this flag in 3.2a4 anyway)
ac_cv_opt_olimit_ok=no
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
--with-fpectl
--enable-shared
diff --git a/dev-lang/python/python-2.7.17.ebuild b/dev-lang/python/python-2.7.17.ebuild
deleted file mode 100644
index 52061f5125f2..000000000000
--- a/dev-lang/python/python-2.7.17.ebuild
+++ /dev/null
@@ -1,361 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-WANT_LIBTOOL="none"
-
-inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
-
-MY_P="Python-${PV}"
-PATCHSET_VERSION="2.7.17"
-
-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-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
-
-LICENSE="PSF-2"
-SLOT="2.7"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86"
-IUSE="-berkdb bluetooth build doc elibc_uclibc examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
-
-# Do not add a dependency on dev-lang/python to this ebuild.
-# If you need to apply a patch which requires python for bootstrapping, please
-# run the bootstrap code on your dev box and include the results in the
-# patchset. See bug 447752.
-
-RDEPEND="app-arch/bzip2:0=
- dev-libs/libffi:=
- >=sys-libs/zlib-1.1.3:0=
- virtual/libintl
- berkdb? ( || (
- sys-libs/db:5.3
- sys-libs/db:5.1
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5
- sys-libs/db:4.4
- sys-libs/db:4.3
- sys-libs/db:4.2
- ) )
- gdbm? ( sys-libs/gdbm:0=[berkdb] )
- ncurses? ( >=sys-libs/ncurses-5.2:0= )
- readline? ( >=sys-libs/readline-4.1:0= )
- sqlite? ( >=dev-db/sqlite-3.3.8:3= )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tk? (
- >=dev-lang/tcl-8.0:0=
- >=dev-lang/tk-8.0:0=
- dev-tcltk/blt:0=
- dev-tcltk/tix
- )
- xml? ( >=dev-libs/expat-2.1 )
- !!<sys-apps/portage-2.1.9"
-# bluetooth requires headers from bluez
-DEPEND="${RDEPEND}
- bluetooth? ( net-wireless/bluez )
- virtual/pkgconfig
- >=sys-devel/autoconf-2.65
- !sys-devel/gcc[libffi(-)]"
-RDEPEND+=" !build? ( app-misc/mime-types )
- doc? ( dev-python/python-docs:${SLOT} )"
-PDEPEND=">=app-eselect/eselect-python-20140125-r1"
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_setup() {
- if use berkdb; then
- ewarn "'bsddb' module is out-of-date and no longer maintained inside"
- ewarn "dev-lang/python. 'bsddb' and 'dbhash' modules have been additionally"
- ewarn "removed in Python 3. A maintained alternative of 'bsddb3' module"
- ewarn "is provided by dev-python/bsddb3."
- else
- if has_version "=${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"; then
- ewarn "You are migrating from =${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"
- ewarn "to =${CATEGORY}/${PN}-${PV%%.*}*[-berkdb]."
- ewarn "You might need to migrate your databases."
- fi
- fi
-}
-
-src_prepare() {
- # Ensure that internal copies of expat, libffi and zlib are not used.
- rm -r Modules/expat || die
- rm -r Modules/_ctypes/libffi* || die
- rm -r Modules/zlib || die
-
- if tc-is-cross-compiler; then
- rm "${WORKDIR}/patches/0006-Regenerate-platform-specific-modules.patch" || die
- fi
-
- local PATCHES=(
- "${WORKDIR}/patches"
- # Fix for cross-compiling.
- "${FILESDIR}/python-2.7.5-nonfatal-compileall.patch"
- "${FILESDIR}/python-2.7.9-ncurses-pkg-config.patch"
- "${FILESDIR}/python-2.7.10-cross-compile-warn-test.patch"
- "${FILESDIR}/python-2.7.10-system-libffi.patch"
- )
-
- default
-
- sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
- Lib/distutils/command/install.py \
- Lib/distutils/sysconfig.py \
- Lib/site.py \
- Lib/sysconfig.py \
- Lib/test/test_site.py \
- Makefile.pre.in \
- Modules/Setup.dist \
- Modules/getpath.c \
- setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
-
- eautoreconf
-}
-
-src_configure() {
- # dbm module can be linked against berkdb or gdbm.
- # Defaults to gdbm when both are enabled, #204343.
- local disable
- use berkdb || use gdbm || disable+=" dbm"
- use berkdb || disable+=" _bsddb"
- # disable automagic bluetooth headers detection
- use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
- use gdbm || disable+=" gdbm"
- use ncurses || disable+=" _curses _curses_panel"
- use readline || disable+=" readline"
- use sqlite || disable+=" _sqlite3"
- use ssl || export PYTHON_DISABLE_SSL="1"
- use tk || disable+=" _tkinter"
- use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
- export PYTHON_DISABLE_MODULES="${disable}"
-
- if ! use xml; then
- ewarn "You have configured Python without XML support."
- ewarn "This is NOT a recommended configuration as you"
- ewarn "may face problems parsing any XML documents."
- fi
-
- if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
- einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
- fi
-
- if [[ "$(gcc-major-version)" -ge 4 ]]; then
- append-flags -fwrapv
- fi
-
- filter-flags -malign-double
-
- # https://bugs.gentoo.org/show_bug.cgi?id=50309
- if is-flagq -O3; then
- is-flagq -fstack-protector-all && replace-flags -O3 -O2
- use hardened && replace-flags -O3 -O2
- fi
-
- if tc-is-cross-compiler; then
- # Force some tests that try to poke fs paths.
- export ac_cv_file__dev_ptc=no
- export ac_cv_file__dev_ptmx=yes
- fi
-
- # Export CXX so it ends up in /usr/lib/python2.X/config/Makefile.
- tc-export CXX
- # The configure script fails to use pkg-config correctly.
- # http://bugs.python.org/issue15506
- export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
-
- # Set LDFLAGS so we link modules with -lpython2.7 correctly.
- # Needed on FreeBSD unless Python 2.7 is already installed.
- # Please query BSD team before removing this!
- append-ldflags "-L."
-
- local dbmliborder
- if use gdbm; then
- dbmliborder+="${dbmliborder:+:}gdbm"
- fi
- if use berkdb; then
- dbmliborder+="${dbmliborder:+:}bdb"
- fi
-
- local myeconfargs=(
- # The check is broken on clang, and gives false positive:
- # https://bugs.gentoo.org/596798
- # (upstream dropped this flag in 3.2a4 anyway)
- ac_cv_opt_olimit_ok=no
-
- --with-fpectl
- --enable-shared
- $(use_enable ipv6)
- $(use_with threads)
- $(use wide-unicode && echo "--enable-unicode=ucs4" || echo "--enable-unicode=ucs2")
- --infodir='${prefix}/share/info'
- --mandir='${prefix}/share/man'
- --with-computed-gotos
- --with-dbmliborder="${dbmliborder}"
- --with-libc=
- --enable-loadable-sqlite-extensions
- --with-system-expat
- --with-system-ffi
- --without-ensurepip
- )
-
- OPT= econf "${myeconfargs[@]}"
-
- if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
- eerror "configure has detected that the sem_open function is broken."
- eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
- die "Broken sem_open function (bug 496328)"
- fi
-}
-
-src_compile() {
- # Avoid invoking pgen for cross-compiles.
- touch Include/graminit.h Python/graminit.c
-
- emake
-
- # Work around bug 329499. See also bug 413751 and 457194.
- if has_version dev-libs/libffi[pax_kernel]; then
- pax-mark E python
- else
- pax-mark m python
- fi
-}
-
-src_test() {
- # Tests will not work when cross compiling.
- if tc-is-cross-compiler; then
- elog "Disabling tests due to crosscompiling."
- return
- fi
-
- # Skip failing tests.
- local skipped_tests="distutils gdb"
-
- for test in ${skipped_tests}; do
- mv "${S}"/Lib/test/test_${test}.py "${T}"
- done
-
- # bug 660358
- local -x COLUMNS=80
-
- # Daylight saving time problem
- # https://bugs.python.org/issue22067
- # https://bugs.gentoo.org/610628
- local -x TZ=UTC
-
- # Rerun failed tests in verbose mode (regrtest -w).
- emake test EXTRATESTOPTS="-w" < /dev/tty
- local result="$?"
-
- for test in ${skipped_tests}; do
- mv "${T}/test_${test}.py" "${S}"/Lib/test
- done
-
- elog "The following tests have been skipped:"
- for test in ${skipped_tests}; do
- elog "test_${test}.py"
- done
-
- elog "If you would like to run them, you may:"
- elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
- elog "and run the tests separately."
-
- if [[ "${result}" -ne 0 ]]; then
- die "emake test failed"
- fi
-}
-
-src_install() {
- local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
-
- emake DESTDIR="${D}" altinstall
-
- sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die "sed failed"
-
- # Fix collisions between different slots of Python.
- mv "${ED}usr/bin/2to3" "${ED}usr/bin/2to3-${SLOT}"
- mv "${ED}usr/bin/pydoc" "${ED}usr/bin/pydoc${SLOT}"
- mv "${ED}usr/bin/idle" "${ED}usr/bin/idle${SLOT}"
- rm -f "${ED}usr/bin/smtpd.py"
-
- use berkdb || rm -r "${libdir}/"{bsddb,dbhash.py*,test/test_bsddb*} || die
- use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
- use tk || rm -r "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,lib-tk} || die
- use elibc_uclibc && rm -fr "${libdir}/"{bsddb/test,test}
-
- use threads || rm -r "${libdir}/multiprocessing" || die
- use wininst || rm -r "${libdir}/distutils/command/"wininst-*.exe || die
-
- dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
-
- if use examples; then
- docinto examples
- dodoc -r "${S}"/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-${SLOT}
- newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
- sed \
- -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
- -e "s:@PYDOC@:pydoc${SLOT}:" \
- -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
-
- # for python-exec
- local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
-
- # 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
- vars=( PYTHON "${vars[@]}" )
- fi
-
- python_export "python${SLOT}" "${vars[@]}"
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
- # python-exec wrapping support
- local pymajor=${SLOT%.*}
- mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
- # python and pythonX
- ln -s "../../../bin/python${SLOT}" "${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
- ln -s "python${pymajor}" "${D}${PYTHON_SCRIPTDIR}/python" || die
- # python-config and pythonX-config
- ln -s "../../../bin/python${SLOT}-config" "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
- ln -s "python${pymajor}-config" "${D}${PYTHON_SCRIPTDIR}/python-config" || die
- # 2to3, pydoc, pyvenv
- ln -s "../../../bin/2to3-${SLOT}" "${D}${PYTHON_SCRIPTDIR}/2to3" || die
- ln -s "../../../bin/pydoc${SLOT}" "${D}${PYTHON_SCRIPTDIR}/pydoc" || die
- # idle
- if use tk; then
- ln -s "../../../bin/idle${SLOT}" "${D}${PYTHON_SCRIPTDIR}/idle" || die
- 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
-}
-
-pkg_postrm() {
- eselect_python_update
-}
diff --git a/dev-lang/python/python-3.6.10.ebuild b/dev-lang/python/python-3.6.10-r1.ebuild
index 91d18edf3fbe..f6477a029f60 100644
--- a/dev-lang/python/python-3.6.10.ebuild
+++ b/dev-lang/python/python-3.6.10-r1.ebuild
@@ -18,7 +18,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}/${PYVER}m"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test +threads tk wininst +xml"
RESTRICT="!test? ( test )"
@@ -65,6 +65,7 @@ src_prepare() {
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
+ "${FILESDIR}/test.support.unlink-ignore-PermissionError.patch"
)
default
@@ -133,6 +134,11 @@ src_configure() {
fi
local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
--with-fpectl
--enable-shared
$(use_enable ipv6)
diff --git a/dev-lang/python/python-3.6.9.ebuild b/dev-lang/python/python-3.6.9.ebuild
deleted file mode 100644
index bd7684dfc7fe..000000000000
--- a/dev-lang/python/python-3.6.9.ebuild
+++ /dev/null
@@ -1,348 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-WANT_LIBTOOL="none"
-
-inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
-
-MY_P="Python-${PV}"
-PATCHSET_VERSION="3.6.8"
-
-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/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
-
-LICENSE="PSF-2"
-SLOT="3.6/3.6m"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
-IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test +threads tk wininst +xml"
-RESTRICT="!test? ( test )"
-
-# Do not add a dependency on dev-lang/python to this ebuild.
-# If you need to apply a patch which requires python for bootstrapping, please
-# run the bootstrap code on your dev box and include the results in the
-# patchset. See bug 447752.
-
-RDEPEND="app-arch/bzip2:0=
- app-arch/xz-utils:0=
- dev-libs/libffi:=
- >=sys-libs/zlib-1.1.3:0=
- virtual/libintl
- gdbm? ( sys-libs/gdbm:0=[berkdb] )
- ncurses? ( >=sys-libs/ncurses-5.2:0= )
- readline? ( >=sys-libs/readline-4.1:0= )
- sqlite? ( >=dev-db/sqlite-3.3.8:3= )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tk? (
- >=dev-lang/tcl-8.0:0=
- >=dev-lang/tk-8.0:0=
- dev-tcltk/blt:0=
- dev-tcltk/tix
- )
- xml? ( >=dev-libs/expat-2.1:0= )"
-# 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"
-
-S="${WORKDIR}/${MY_P}"
-PYVER=${SLOT%/*}
-
-src_prepare() {
- # Ensure that internal copies of expat, libffi and zlib are not used.
- rm -fr Modules/expat
- rm -fr Modules/_ctypes/libffi*
- rm -fr Modules/zlib
-
- local PATCHES=(
- "${WORKDIR}/patches"
- )
-
- default
-
- sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
- Lib/distutils/command/install.py \
- Lib/distutils/sysconfig.py \
- Lib/site.py \
- Lib/sysconfig.py \
- Lib/test/test_site.py \
- Makefile.pre.in \
- Modules/Setup.dist \
- Modules/getpath.c \
- configure.ac \
- setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
-
- eautoreconf
-}
-
-src_configure() {
- local disable
- # disable automagic bluetooth headers detection
- use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
- use gdbm || disable+=" gdbm"
- use ncurses || disable+=" _curses _curses_panel"
- use readline || disable+=" readline"
- use sqlite || disable+=" _sqlite3"
- use ssl || export PYTHON_DISABLE_SSL="1"
- use tk || disable+=" _tkinter"
- use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
- export PYTHON_DISABLE_MODULES="${disable}"
-
- if ! use xml; then
- ewarn "You have configured Python without XML support."
- ewarn "This is NOT a recommended configuration as you"
- ewarn "may face problems parsing any XML documents."
- fi
-
- if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
- einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
- fi
-
- if [[ "$(gcc-major-version)" -ge 4 ]]; then
- append-flags -fwrapv
- fi
-
- filter-flags -malign-double
-
- # https://bugs.gentoo.org/show_bug.cgi?id=50309
- if is-flagq -O3; then
- is-flagq -fstack-protector-all && replace-flags -O3 -O2
- use hardened && replace-flags -O3 -O2
- fi
-
- # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
- tc-export CXX
-
- # Set LDFLAGS so we link modules with -lpython3.2 correctly.
- # Needed on FreeBSD unless Python 3.2 is already installed.
- # Please query BSD team before removing this!
- append-ldflags "-L."
-
- local dbmliborder
- if use gdbm; then
- dbmliborder+="${dbmliborder:+:}gdbm"
- fi
-
- local myeconfargs=(
- --with-fpectl
- --enable-shared
- $(use_enable ipv6)
- $(use_with threads)
- --infodir='${prefix}/share/info'
- --mandir='${prefix}/share/man'
- --with-computed-gotos
- --with-dbmliborder="${dbmliborder}"
- --with-libc=
- --enable-loadable-sqlite-extensions
- --without-ensurepip
- --with-system-expat
- --with-system-ffi
- )
-
- OPT="" econf "${myeconfargs[@]}"
-
- if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
- eerror "configure has detected that the sem_open function is broken."
- eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
- die "Broken sem_open function (bug 496328)"
- fi
-}
-
-src_compile() {
- # Ensure sed works as expected
- # https://bugs.gentoo.org/594768
- local -x LC_ALL=C
-
- emake CPPFLAGS= CFLAGS= LDFLAGS=
-
- # Work around bug 329499. See also bug 413751 and 457194.
- if has_version dev-libs/libffi[pax_kernel]; then
- pax-mark E python
- else
- pax-mark m python
- fi
-}
-
-src_test() {
- # Tests will not work when cross compiling.
- if tc-is-cross-compiler; then
- elog "Disabling tests due to crosscompiling."
- return
- fi
-
- # Skip failing tests.
- local skipped_tests="gdb"
-
- for test in ${skipped_tests}; do
- mv "${S}"/Lib/test/test_${test}.py "${T}"
- done
-
- # bug 660358
- local -x COLUMNS=80
-
- local -x PYTHONDONTWRITEBYTECODE=
-
- emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
- local result=$?
-
- for test in ${skipped_tests}; do
- mv "${T}/test_${test}.py" "${S}"/Lib/test
- done
-
- elog "The following tests have been skipped:"
- for test in ${skipped_tests}; do
- elog "test_${test}.py"
- done
-
- elog "If you would like to run them, you may:"
- elog "cd '${EPREFIX}/usr/$(get_libdir)/python${PYVER}/test'"
- elog "and run the tests separately."
-
- if [[ ${result} -ne 0 ]]; then
- die "emake test failed"
- fi
-}
-
-src_install() {
- local libdir=${ED}/usr/$(get_libdir)/python${PYVER}
-
- emake DESTDIR="${D}" altinstall
-
- 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 -f "${ED}usr/$(get_libdir)/libpython3.so"
-
- # Cheap hack to get version with ABIFLAGS
- local abiver=$(cd "${ED}usr/include"; echo python*)
- if [[ ${abiver} != python${PYVER} ]]; then
- # Replace python3.X with a symlink to python3.Xm
- rm "${ED}usr/bin/python${PYVER}" || die
- dosym "${abiver}" "/usr/bin/python${PYVER}"
- # Create python3.X-config symlink
- dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
- # Create python-3.5m.pc symlink
- dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
- fi
-
- # python seems to get rebuilt in src_install (bug 569908)
- # Work around it for now.
- if has_version dev-libs/libffi[pax_kernel]; then
- pax-mark E "${ED}usr/bin/${abiver}"
- else
- pax-mark m "${ED}usr/bin/${abiver}"
- fi
-
- use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
- use tk || rm -r "${ED}usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
-
- use threads || rm -r "${libdir}/multiprocessing" || die
- use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
-
- dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
-
- if use examples; then
- insinto /usr/share/doc/${PF}/examples
- find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
- doins -r "${S}"/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"
-
- # for python-exec
- local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
-
- # 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
- vars=( PYTHON "${vars[@]}" )
- fi
-
- python_export "python${PYVER}" "${vars[@]}"
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
- # python-exec wrapping support
- local pymajor=${PYVER%.*}
- mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
- # python and pythonX
- ln -s "../../../bin/${abiver}" \
- "${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
- ln -s "python${pymajor}" \
- "${D}${PYTHON_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 > "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
- #!/bin/sh
- exec "${abiver}-config" "\${@}"
- EOF
- chmod +x "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
- ln -s "python${pymajor}-config" \
- "${D}${PYTHON_SCRIPTDIR}/python-config" || die
- # 2to3, pydoc, pyvenv
- ln -s "../../../bin/2to3-${PYVER}" \
- "${D}${PYTHON_SCRIPTDIR}/2to3" || die
- ln -s "../../../bin/pydoc${PYVER}" \
- "${D}${PYTHON_SCRIPTDIR}/pydoc" || die
- ln -s "../../../bin/pyvenv-${PYVER}" \
- "${D}${PYTHON_SCRIPTDIR}/pyvenv" || die
- # idle
- if use tk; then
- ln -s "../../../bin/idle${PYVER}" \
- "${D}${PYTHON_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/python/python-3.7.5-r1.ebuild b/dev-lang/python/python-3.7.5-r1.ebuild
deleted file mode 100644
index 96894e93b7f3..000000000000
--- a/dev-lang/python/python-3.7.5-r1.ebuild
+++ /dev/null
@@ -1,328 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-WANT_LIBTOOL="none"
-
-inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
-
-MY_P="Python-${PV}"
-PATCHSET_VERSION="3.7.4-1"
-
-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/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
-
-LICENSE="PSF-2"
-SLOT="3.7/3.7m"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh 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:0=
- app-arch/xz-utils:0=
- dev-libs/libffi:=
- sys-apps/util-linux:0=
- >=sys-libs/zlib-1.1.3:0=
- virtual/libintl
- gdbm? ( sys-libs/gdbm:0=[berkdb] )
- ncurses? ( >=sys-libs/ncurses-5.2:0= )
- readline? ( >=sys-libs/readline-4.1:0= )
- sqlite? ( >=dev-db/sqlite-3.3.8:3= )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- tk? (
- >=dev-lang/tcl-8.0:0=
- >=dev-lang/tk-8.0:0=
- dev-tcltk/blt:0=
- dev-tcltk/tix
- )
- xml? ( >=dev-libs/expat-2.1:0= )"
-# 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"
-
-S="${WORKDIR}/${MY_P}"
-PYVER=${SLOT%/*}
-
-src_prepare() {
- # Ensure that internal copies of expat, libffi and zlib are not used.
- rm -fr Modules/expat
- rm -fr Modules/_ctypes/libffi*
- rm -fr Modules/zlib
-
- local PATCHES=(
- "${FILESDIR}/python-3.7.5-hashlib.patch"
- "${WORKDIR}/patches"
- )
-
- default
-
- sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
- setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
-
- eautoreconf
-}
-
-src_configure() {
- local disable
- # disable automagic bluetooth headers detection
- use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
- use gdbm || disable+=" gdbm"
- use ncurses || disable+=" _curses _curses_panel"
- use readline || disable+=" readline"
- use sqlite || disable+=" _sqlite3"
- use ssl || export PYTHON_DISABLE_SSL="1"
- use tk || disable+=" _tkinter"
- use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
- export PYTHON_DISABLE_MODULES="${disable}"
-
- if ! use xml; then
- ewarn "You have configured Python without XML support."
- ewarn "This is NOT a recommended configuration as you"
- ewarn "may face problems parsing any XML documents."
- fi
-
- if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
- einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
- fi
-
- if [[ "$(gcc-major-version)" -ge 4 ]]; then
- append-flags -fwrapv
- fi
-
- filter-flags -malign-double
-
- # https://bugs.gentoo.org/show_bug.cgi?id=50309
- if is-flagq -O3; then
- is-flagq -fstack-protector-all && replace-flags -O3 -O2
- use hardened && replace-flags -O3 -O2
- fi
-
- # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
- tc-export CXX
-
- # Set LDFLAGS so we link modules with -lpython3.2 correctly.
- # Needed on FreeBSD unless Python 3.2 is already installed.
- # Please query BSD team before removing this!
- append-ldflags "-L."
-
- # Fix implicit declarations on cross and prefix builds. Bug #674070.
- use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
-
- local dbmliborder
- if use gdbm; then
- dbmliborder+="${dbmliborder:+:}gdbm"
- fi
-
- local myeconfargs=(
- --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=
-
- emake test EXTRATESTOPTS="-u-network" 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
-
- 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 -f "${ED}/usr/$(get_libdir)/libpython3.so"
-
- # 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 "${S}"/Misc/{ACKS,HISTORY,NEWS}
-
- if use examples; then
- insinto /usr/share/doc/${PF}/examples
- find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
- doins -r "${S}"/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"
-
- # for python-exec
- local vars=( EPYTHON PYTHON_SITEDIR PYTHON_SCRIPTDIR )
-
- # 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
- vars=( PYTHON "${vars[@]}" )
- fi
-
- python_export "python${PYVER}" "${vars[@]}"
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
- # python-exec wrapping support
- local pymajor=${PYVER%.*}
- mkdir -p "${D}${PYTHON_SCRIPTDIR}" || die
- # python and pythonX
- ln -s "../../../bin/${abiver}" "${D}${PYTHON_SCRIPTDIR}/python${pymajor}" || die
- ln -s "python${pymajor}" "${D}${PYTHON_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 > "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" <<-EOF || die
- #!/bin/sh
- exec "${abiver}-config" "\${@}"
- EOF
- chmod +x "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
- ln -s "python${pymajor}-config" "${D}${PYTHON_SCRIPTDIR}/python-config" || die
- # 2to3, pydoc, pyvenv
- ln -s "../../../bin/2to3-${PYVER}" "${D}${PYTHON_SCRIPTDIR}/2to3" || die
- ln -s "../../../bin/pydoc${PYVER}" "${D}${PYTHON_SCRIPTDIR}/pydoc" || die
- ln -s "../../../bin/pyvenv-${PYVER}" "${D}${PYTHON_SCRIPTDIR}/pyvenv" || die
- # idle
- if use tk; then
- ln -s "../../../bin/idle${PYVER}" "${D}${PYTHON_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/python/python-3.7.6.ebuild b/dev-lang/python/python-3.7.6.ebuild
index 415eea5f2d12..bf8db8cb3de8 100644
--- a/dev-lang/python/python-3.7.6.ebuild
+++ b/dev-lang/python/python-3.7.6.ebuild
@@ -18,7 +18,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}/${PYVER}m"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86"
+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 )"
@@ -66,6 +66,7 @@ src_prepare() {
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
+ "${FILESDIR}/test.support.unlink-ignore-PermissionError.patch"
)
default
diff --git a/dev-lang/python/python-3.8.1.ebuild b/dev-lang/python/python-3.7.7-r1.ebuild
index b499fa145ea8..cd23f61e64d8 100644
--- a/dev-lang/python/python-3.8.1.ebuild
+++ b/dev-lang/python/python-3.7.7-r1.ebuild
@@ -8,7 +8,7 @@ inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
MY_P="Python-${PV}"
PYVER=$(ver_cut 1-2)
-PATCHSET="python-gentoo-patches-${PV}-r2"
+PATCHSET="python-gentoo-patches-3.7.6"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
@@ -17,8 +17,8 @@ SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
-SLOT="${PYVER}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+SLOT="${PYVER}/${PYVER}m"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
@@ -66,6 +66,7 @@ src_prepare() {
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
+ "${FILESDIR}/test.support.unlink-ignore-PermissionError.patch"
)
default
@@ -111,11 +112,6 @@ src_configure() {
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
@@ -133,6 +129,11 @@ src_configure() {
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'
@@ -297,11 +298,13 @@ src_install() {
chmod +x "${D}${PYTHON_SCRIPTDIR}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${D}${PYTHON_SCRIPTDIR}/python-config" || die
- # 2to3, pydoc
+ # 2to3, pydoc, pyvenv
ln -s "../../../bin/2to3-${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${D}${PYTHON_SCRIPTDIR}/pydoc" || die
+ ln -s "../../../bin/pyvenv-${PYVER}" \
+ "${D}${PYTHON_SCRIPTDIR}/pyvenv" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
diff --git a/dev-lang/python/python-3.8.2.ebuild b/dev-lang/python/python-3.8.2-r1.ebuild
index 0960b3a64978..35d435345995 100644
--- a/dev-lang/python/python-3.8.2.ebuild
+++ b/dev-lang/python/python-3.8.2-r1.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 ~riscv ~s390 ~sh ~sparc ~x86"
+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 )"
@@ -66,6 +66,7 @@ src_prepare() {
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
+ "${FILESDIR}/test.support.unlink-ignore-PermissionError.patch"
)
default
@@ -133,6 +134,11 @@ src_configure() {
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'
diff --git a/dev-lang/python/python-3.9.0_alpha4.ebuild b/dev-lang/python/python-3.9.0_alpha4.ebuild
index 77a4321ff044..49d4c9d5f877 100644
--- a/dev-lang/python/python-3.9.0_alpha4.ebuild
+++ b/dev-lang/python/python-3.9.0_alpha4.ebuild
@@ -19,7 +19,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+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 )"
@@ -82,6 +82,7 @@ src_prepare() {
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
+ "${FILESDIR}/test.support.unlink-ignore-PermissionError.patch"
)
default
@@ -149,6 +150,11 @@ src_configure() {
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'
diff --git a/dev-lang/python/python-3.9.0_alpha2.ebuild b/dev-lang/python/python-3.9.0_alpha5.ebuild
index 008fa25cdf65..49d4c9d5f877 100644
--- a/dev-lang/python/python-3.9.0_alpha2.ebuild
+++ b/dev-lang/python/python-3.9.0_alpha5.ebuild
@@ -9,7 +9,7 @@ inherit autotools check-reqs flag-o-matic pax-utils python-utils-r1 \
MY_P="Python-${PV/_alpha/a}"
PYVER=$(ver_cut 1-2)
-PATCHSET="python-gentoo-patches-${PV}"
+PATCHSET="python-gentoo-patches-3.9.0_alpha2"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
@@ -19,7 +19,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+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 )"
@@ -82,6 +82,7 @@ src_prepare() {
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
+ "${FILESDIR}/test.support.unlink-ignore-PermissionError.patch"
)
default
@@ -149,6 +150,11 @@ src_configure() {
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'
diff --git a/dev-lang/qu-prolog/Manifest b/dev-lang/qu-prolog/Manifest
index 3cd5e8d4b39f..afaa6a81e999 100644
--- a/dev-lang/qu-prolog/Manifest
+++ b/dev-lang/qu-prolog/Manifest
@@ -1,4 +1,7 @@
AUX qu-prolog-10.1-qt5.patch 1037 BLAKE2B 91287f26c97c0c2f1c9cd3bae3a007cf27e4b8121aca4a42cabbbb37c224b7399ed06468b7a725977f27bad2fcda8d2165bfeb569f36491d227dd472036de5ed SHA512 9dd1c8245f725d552bf23ad9ef1bb858a06c69b66778fa851013775081751a77923e2145f6575966e8394666b8dc2e04724d102be28b32efaa44b7e474b3dd7f
+AUX qu-prolog-10.2-qt5.patch 1037 BLAKE2B bcb3728a1439430c2b3f9ffe4788f98af276376a7513fc8f8c8bc3b49636df04bc907b52a134475750c17b33db9e83437b3376be441e81f479c887427a1e3331 SHA512 8d0faa258386e76eb2764207d92f5ab7216975d31547db9b61287dd365ad357d7bef351f4545a24bdd61e3abfae22549a9ce9c40af71aa1d4b36eec6c21c9952
DIST qp10.1.tar.gz 1521610 BLAKE2B a4d6d277a35284accfff1afd70901218df198b2b33f5c95ca5649bf06abcb153890f2f21b0e8d62ed93484b452a230074f93c983ab231c8fc58b51a29119d838 SHA512 8fb30fcbc086384d7e265695a7d24a9599ed306b5da0ea964e60aef4bb01c7b6789fc361449f908736c57d86c204e574d745f277d5b0ec2b725a8eca52f14f1a
+DIST qp10.2.tar.gz 1667066 BLAKE2B fe466bc892a0923f463347bfa22618061d8a8baf9e2fc60ea27694c66be6dc8ac9b0bacd3084bccff95ff06ef949660cb9a0637a8e3e3595d04c44eb2b682bc9 SHA512 5cfebab17a812513bb4ddf4c04890af32339bef18d746dd6503cee13d295c43f1ef687a6c7814b2f40473766c695459f8234541ae8a6945a0f2930556985ad96
EBUILD qu-prolog-10.1.ebuild 1944 BLAKE2B fe102881c65e68fd6003c37da96195ef4f8f709c296f4679531b7c12e336182efacd29792103a0c8c5761e9adc53079d1615fdd8365de448f58c406f5027937c SHA512 c3119e71e850850ab4d7689f70da79de78ad7aa34386880c641bb20c1765dddf0379bf0371e0e831e7a9c08adc17efb7e44e4a79fed33894f24935f628c72e59
+EBUILD qu-prolog-10.2.ebuild 1944 BLAKE2B 48d2f0752d26d047dd3608f4a3b756ec5ee6a7593135cbe5ee5fe1a99206b64b6cdde840bd0bb5df9bda6250aa01294331ed448491f5293a37297e389f71c3b1 SHA512 26269b3b773af8f6ffe76f0831c1f6e565bbe29a96567abb0fe94561fdc807db653cb22fabbc0e505d55de458c91551116ca5086dcdff33de997722af7808ebe
MISC metadata.xml 347 BLAKE2B d0d2ead501a46ff84953eceee649d58e406ebf5a83e7b7862b9501b2e665ad71b5c9c31f4790161074debb7b86ce7e53ff8d0904c39c37ddcac6250668685aca SHA512 7a7bb3ccaa42fa120c3702d963719d5fdfcf0a413685cad98bd34a515a4cc83a213a71e7f3b6b0ce67947fa347229caecf699879192f0d930c9c6577e0ce59cc
diff --git a/dev-lang/qu-prolog/files/qu-prolog-10.2-qt5.patch b/dev-lang/qu-prolog/files/qu-prolog-10.2-qt5.patch
new file mode 100644
index 000000000000..4d5ec768be9c
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-10.2-qt5.patch
@@ -0,0 +1,35 @@
+diff -ur qp10.2.orig/src/xqp/term.cc qp10.2/src/xqp/term.cc
+--- qp10.2.orig/src/xqp/term.cc 2008-07-09 07:32:37.000000000 +0200
++++ qp10.2/src/xqp/term.cc 2020-03-21 14:08:16.842059351 +0100
+@@ -38,7 +38,7 @@
+
+ bool graphic_char(QChar c)
+ {
+- switch (c.toAscii())
++ switch (c.toLatin1())
+ {
+ case '-':
+ case '/':
+diff -ur qp10.2.orig/src/xqp/xqp.cc qp10.2/src/xqp/xqp.cc
+--- qp10.2.orig/src/xqp/xqp.cc 2011-07-14 01:08:42.000000000 +0200
++++ qp10.2/src/xqp/xqp.cc 2020-03-21 14:08:16.842059351 +0100
+@@ -167,7 +167,7 @@
+
+ void Xqp::send_cmd_to_qp(QString cmd)
+ {
+- write(qp_stdin, cmd.toAscii(), cmd.length());
++ write(qp_stdin, cmd.toLatin1(), cmd.length());
+ }
+
+
+diff -ur qp10.2.orig/src/xqp/xqp.pro qp10.2/src/xqp/xqp.pro
+--- qp10.2.orig/src/xqp/xqp.pro 2008-07-09 07:32:37.000000000 +0200
++++ qp10.2/src/xqp/xqp.pro 2020-03-21 14:08:16.842059351 +0100
+@@ -4,6 +4,7 @@
+
+ TEMPLATE = app
+ INCLUDEPATH += .
++QT += widgets
+
+ # Input
+ HEADERS += interact.h qpconfig.h qthelp.h term.h xqp.h xqpqueries.h
diff --git a/dev-lang/qu-prolog/qu-prolog-10.2.ebuild b/dev-lang/qu-prolog/qu-prolog-10.2.ebuild
new file mode 100644
index 000000000000..4f85be09a082
--- /dev/null
+++ b/dev-lang/qu-prolog/qu-prolog-10.2.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils multilib qmake-utils
+
+MY_P=qp${PV}
+
+DESCRIPTION="Extended Prolog supporting quantifiers, object-variables and substitutions"
+HOMEPAGE="http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html"
+SRC_URI="http://www.itee.uq.edu.au/~pjr/HomePages/QPFiles/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug doc examples pedro qt5 readline threads"
+
+RDEPEND="
+ !dev-util/mpatch
+ !dev-util/rej
+ !games-rpg/kqlives
+ qt5? (
+ dev-qt/qtwidgets:5
+ dev-qt/qtgui:5
+ )
+ pedro? ( net-misc/pedro )
+ readline? ( app-misc/rlwrap )"
+DEPEND="${RDEPEND}
+ dev-lang/perl"
+
+S="${WORKDIR}"/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-qt5.patch
+
+ eapply_user
+}
+
+src_configure() {
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ $(use_enable debug) \
+ $(use_enable threads multiple-threads)
+
+ if use qt5; then
+ cd "${S}"/src/xqp || die
+ eqmake5 xqp.pro
+ fi
+}
+
+src_compile() {
+ emake OPTIMISATION="${CXXFLAGS}"
+
+ if use qt5; then
+ cd "${S}"/src/xqp || die
+ emake
+ fi
+}
+
+src_install() {
+ sed \
+ -e "s|${S}|/usr/$(get_libdir)/qu-prolog|g" \
+ -i bin/qc bin/qc1.qup bin/qecat bin/qg bin/qp || die
+
+ dobin bin/{qc,qecat,qp,kq}
+
+ use qt5 && dobin src/xqp/xqp
+
+ into /usr/$(get_libdir)/${PN}
+ dobin bin/{qa,qc1.qup,qdeal,qem,qg,ql,qppp}
+
+ insinto /usr/$(get_libdir)/${PN}/bin
+ doins bin/rl_commands
+ doins bin/{qc1.qup,qecat,qg,qp}.qx
+
+ insinto /usr/$(get_libdir)/${PN}/library
+ doins prolog/library/*.qo
+
+ insinto /usr/$(get_libdir)/${PN}/compiler
+ doins prolog/compiler/*.qo
+
+ doman doc/man/man1/*.1
+
+ dodoc README
+
+ if use doc ; then
+ docinto reference-manual
+ dodoc doc/manual/*.html
+ docinto user-guide
+ dodoc doc/user/main.pdf
+ fi
+
+ if use examples ; then
+ insinto /usr/share/doc/${PF}/examples
+ doins examples/*.ql
+ docinto examples
+ newdoc examples/README README.examples
+ fi
+}
diff --git a/dev-lang/rebol-bin/Manifest b/dev-lang/rebol-bin/Manifest
deleted file mode 100644
index ef35f0c29095..000000000000
--- a/dev-lang/rebol-bin/Manifest
+++ /dev/null
@@ -1,4 +0,0 @@
-DIST r3-g25033f8 553424 BLAKE2B ef2c3b8c024e0952d172cd0f0d500fd0c4986e72efcb3ad70bc7a87a8ca9a8cf0718ccf1bcee5177ebcef9ef486fcbe09793c0f897bba9ca1f96c92c00486ad9 SHA512 8376e0d6e708777539f9639d5c78120aa02e7364d269435bec6ef6b0527e8321e0135ea1cb005246cb7e3387cf5c941864933e21c21fb3f0e322f5c8ea118ec3
-DIST r3-linux-x64-gbf237fc 563560 BLAKE2B ccb2e17cf04af75d8efaefa9fb4efa98a08b1db6ab5ec5cf94e71a7c0f44d8db5950c094d21c36ac31551ae66e909def943bd6eead344e8227f8273a1a1f01a5 SHA512 e984a10c59aa66a081dd8aee8ad7376cc50c600211167468b8fb9b461481b7e8df50b974de931d5c6ce31df3f70dd108f9e890daeb759da525ea81ebf9c5dc35
-EBUILD rebol-bin-3_pre20140304.ebuild 753 BLAKE2B 9a819d0fd1eae1b3dd63c5eb623ca25f64141601e2a9a3dd23ef184a171327f44b5a5515c9f1b6382a06ff649aee53ac56d5351626ae9dec9948f90320753433 SHA512 e919b116a7ea7527f309b753854a8be92f6980acdb38b3c872292ffe5caabdfd7864614d43241532f26d9c54b5d31ad34c4e61e0e745a98bea2772da9eb2040b
-MISC metadata.xml 247 BLAKE2B 5a20af3c9732ef7dba68131a08988652f5c93a6d186a82c4deb1bb9c06dc3ae73152a0d241cc346637f7b11caf4676da43301ba596c67b66669535e71db0b03e SHA512 29cf52c16b0cce69899d9c2da8acd9144b7d760442aa323b854dceadb42459e009545193b1df7911ac2241b59f4819b4a6bb1d206d6f57953f770031433bb6b7
diff --git a/dev-lang/rebol-bin/metadata.xml b/dev-lang/rebol-bin/metadata.xml
deleted file mode 100644
index 40aa45df2b01..000000000000
--- a/dev-lang/rebol-bin/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>patrick@gentoo.org</email>
- <name>Patrick Lauer</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-lang/rebol-bin/rebol-bin-3_pre20140304.ebuild b/dev-lang/rebol-bin/rebol-bin-3_pre20140304.ebuild
deleted file mode 100644
index 82c8f60d931b..000000000000
--- a/dev-lang/rebol-bin/rebol-bin-3_pre20140304.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-DESCRIPTION="Relative Expression-Based Object Language"
-HOMEPAGE="http://rebol.com"
-
-# download links are from
-# http://rebolsource.net/
-# amd64 is of experimental build
-git_commit=25033f8
-SRC_URI="
- amd64? ( http://rebolsource.net/downloads/experimental/r3-linux-x64-gbf237fc )
- x86? ( http://rebolsource.net/downloads/linux-x86/r3-g${git_commit} )
-"
-
-# sourcecode uses this license:
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-QA_PREBUILT="opt/rebol/r3"
-
-S=${WORKDIR}
-
-src_unpack() {
- mkdir -p "${S}"
- cp "${DISTDIR}/${A}" "${S}"/r3 || die
-}
-
-src_compile() {
- :
-}
-
-src_install() {
- exeinto /opt/rebol
- doexe r3
-}
diff --git a/dev-lang/rebol/Manifest b/dev-lang/rebol/Manifest
deleted file mode 100644
index 0bc7e6e07b70..000000000000
--- a/dev-lang/rebol/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-EBUILD rebol-9999.ebuild 774 BLAKE2B 0d291b9bedcf28eaa146c196dd9c8955a9b2be3e4e2c2e961b888ae26219c43c51c06b032df6d6925e605ad2c26346384bd599e88a6419ecbb08e8c6a14fc67f SHA512 15aff56e1690dd59c3ec140bd759fe37888c174f0c09d88a35d199cbd127765f442d60ebe75917bee89a7d2dc7260624c403a1d0226f335f2512c47d5b718c8e
-MISC metadata.xml 247 BLAKE2B 5a20af3c9732ef7dba68131a08988652f5c93a6d186a82c4deb1bb9c06dc3ae73152a0d241cc346637f7b11caf4676da43301ba596c67b66669535e71db0b03e SHA512 29cf52c16b0cce69899d9c2da8acd9144b7d760442aa323b854dceadb42459e009545193b1df7911ac2241b59f4819b4a6bb1d206d6f57953f770031433bb6b7
diff --git a/dev-lang/rebol/metadata.xml b/dev-lang/rebol/metadata.xml
deleted file mode 100644
index 40aa45df2b01..000000000000
--- a/dev-lang/rebol/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>patrick@gentoo.org</email>
- <name>Patrick Lauer</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-lang/rebol/rebol-9999.ebuild b/dev-lang/rebol/rebol-9999.ebuild
deleted file mode 100644
index ed09d0bb04ef..000000000000
--- a/dev-lang/rebol/rebol-9999.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-
-MY_PR=${PVR/3_pre/}
-
-inherit eutils git-r3
-
-DESCRIPTION="Relative Expression-Based Object Language"
-HOMEPAGE="http://rebol.com"
-EGIT_REPO_URI="https://github.com/rebol/r3.git"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-
-# usual bootstrap problems
-DEPEND="|| ( dev-lang/rebol dev-lang/rebol-bin )"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- sed -i -e 's/$(STRIP) r3//' make/makefile || die
-}
-
-src_compile() {
- cd make
- # silly build system. Prefer prebuilt for now
- [[ -f /opt/rebol/r3 ]] && cp /opt/rebol/r3 ./r3-make || cp /usr/bin/r3 ./r3-make
- make prep || die
- make || die
-}
-
-src_install() {
- mkdir -p "${D}/usr/bin"
- cp "${S}/make/r3" "${D}/usr/bin/r3" || die
-}
diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest
index 371ff7becd61..503c0824f400 100644
--- a/dev-lang/ruby/Manifest
+++ b/dev-lang/ruby/Manifest
@@ -13,12 +13,20 @@ AUX 2.6/005_no-undefined-ext.patch 486 BLAKE2B 715f952cab863847f420afb020cac6819
AUX 2.6/009_no-gems.patch 1261 BLAKE2B 359d0a73c374e5c464eb0343d33272244bb88ba200977007a93f3c3c776779a013174fc2c97717e4ae4a1495011d3baae80e68b07433eab1320955a49aed8b59 SHA512 1607b9c2021e5b5f08cf28c64d3f3ddd077bc47df02a353182a9bc70dc6831ea18e8681d9808bb6841939d64082ae4966081014ee110d2090ec67ffe8faa9b8b
AUX 2.6/010-default-gem-location.patch 688 BLAKE2B 4c2074d69b9fe5258a2fe0e38bb501a39f34ad1fa08ef338224edba1f06073138cbe3d831ecdf9910c989a7f0a1c6c6b73ced0d8ff212207a3a3df5f4d90b5de SHA512 65206a6ca42ade0413ae1467f41082f4a93b3166644d2504cff3d280d23da02fd41aea5aca69dd43f6081b436db90a5b1e98725d8fa51519ca302c02ec526ad7
AUX 2.7/010-default-gem-location.patch 688 BLAKE2B 4c2074d69b9fe5258a2fe0e38bb501a39f34ad1fa08ef338224edba1f06073138cbe3d831ecdf9910c989a7f0a1c6c6b73ced0d8ff212207a3a3df5f4d90b5de SHA512 65206a6ca42ade0413ae1467f41082f4a93b3166644d2504cff3d280d23da02fd41aea5aca69dd43f6081b436db90a5b1e98725d8fa51519ca302c02ec526ad7
+DIST ruby-2.4.10.tar.xz 10100664 BLAKE2B 7301f34b94bb6d88c0d049eed4220ddb290c877b130e90c822226bc454b3e72c90ae151db0e828068c8fe02b21cd41c8f3cd43d4e95ab688d2cd6f3f3840ea9d SHA512 11c7a9ea1353f752763b189815ac34674cc8ebf7141517838b7f040823e892780d94ec3091c1f5d1415f9bc1b838b7f6f9de13a706df7bef80ce3b146a7d6660
DIST ruby-2.4.9.tar.xz 10078316 BLAKE2B ad83adf6b884a9a36e83cc754077f706afa221a9e8b81d92f6b6a1b829dc0350bdacd67b0b4e1e196a17e3f7d1c65f1e9b38e245aeddf089576eaca7d051701b SHA512 9046575315c29c789427c2d00c832f0c0970e47fd158bbe8e4f2df5cff2ea9c06c65c3493adb4656e5b32ebfdc546092911f98a8ad7f698bc001c290db5888c7
DIST ruby-2.5.7.tar.xz 11296440 BLAKE2B 6f3590f30c7b196145a83490abed24b0059521374a03086646186b20670bfed548ea744c910c8eda0d11607d8673644d7fb23ff9091dd2f6dfcbc43080fe0f97 SHA512 63b7c75fab44cd1bd22f22ddec00c740cf379ac7240da0dfafcec54347766695faef47428ce1c433fd77fa96992e976c984697067fa526236d383b12adc9ce75
+DIST ruby-2.5.8.tar.xz 11298404 BLAKE2B 3256c0448e72b63c0bd89f89a27fa9c09c8feed54d42cd79899b7d5cfe9dbc29ca708d12c630b3f52ff85b0c6a4011ae7ff0483d64b2fd445700a72a91028035 SHA512 2886be764a454425c5beef2777c64a70ee0d048b07896b327633d904f5077fea4299526689f9e2ac4dcd2fc4811cf9a6c8ce75367ed35d29dfe1a54222872e0d
DIST ruby-2.6.5.tar.xz 11553580 BLAKE2B 07739a92ff17467fe6d31bb4dce56ae35fd9c67bb697ebc00b4845474c75d8377c77916e6e129512cfffcf76bd60e6327e818e899b6160f3222912654d5eb118 SHA512 e8ae3b5d4d23a93d0ef6057235ad0e573665a8b4b6544e1c70b4cce9c4d2fb9094e5c8fe8a9ab7b9996efe3ada603f9b4ef1fd08fb5a83253c1ae2b5e3f202db
+DIST ruby-2.6.6.tar.xz 11567284 BLAKE2B 45e910dd9b128c46bff3003834c4fdcbbc2e2e4d3e44f298ff4356a285de2c375d6b6021a3aa28d89336b32a1655fa4a7c086d07f4a0f6bcd578a11dd4a894da SHA512 86caf93dbf61d03781767ab5375a7edf4761f13ba08ccfefe16c0a7550499237e7390c2f72a95d42670d4fe76b2401b4218936187c62ec1572799e9e04c50d62
DIST ruby-2.7.0.tar.xz 11990900 BLAKE2B 0f4969780618979190a92ca317963f825d854ecb437e7031cb7848b04bc9cb9532145968e33f5b8022449bccd1b0828b87a0ed0c0a09b182e2484d0811975a0d SHA512 dd5690c631bf3a2b76cdc06902bcd76a89713a045e136debab9b8a81ff8c433bbb254aa09e4014ca1cf85a69ff4bcb13de11da5e40c224e7268be43ef2194af7
-EBUILD ruby-2.4.9.ebuild 6496 BLAKE2B dc4ed619947877f8de54219f13ffdcf78ecbfe6a9e3d28daa3c18085011db0290afe548f08aecb51cb5ddb87ab518f2b2d2336d4cdc68e76b03291c7b2f2ea90 SHA512 ba9883b77f626d837d96d60c24346c1152ecf3d979bde0db5b95bee60b05ebedc9f4051cca23d3d48f3a9558cae55ef5347b4cbf967e6916474ec4506c095842
-EBUILD ruby-2.5.7.ebuild 6284 BLAKE2B bfc70607164302843f9d34d4d3030a4d6ad193fa0827d2c9f83a90ded89e2be1b62605b9af7b09921c831f0e33f7c97f6f0b37ff8d9fe6678461496f66f4de79 SHA512 381811a88455ec77b632c1e978cbe99ad2b9e9028f9902312f358950bdd9fdba076e334134203d1b32528a348f94e101b46366ddab813e53caeb5b5370be53b7
-EBUILD ruby-2.6.5.ebuild 6707 BLAKE2B 3a20a3004f330e76559b4c7eb015cb8917f44f68a202d6b35d0b34769406e9e0a3f61f555550451c5994d8fc49d5ef17bdefff270c3d470933f411814b179102 SHA512 172ebec80945dde8f811db78c2d46af43504a469e32b8ae029841fcb49c7b017074377e950800aa61374010556d1b1a55055b2f2f9ea2aa96bef479d43e0b7f2
-EBUILD ruby-2.7.0.ebuild 6833 BLAKE2B 0732f273ce899e76ceeb3eb3227441547f7c40f62c638256c1ec77b860614c5afa7a6ee20ed0a676364fbca1b8d92be8d596724228e2e32bbd11ade8b79deb9a SHA512 90dbbac46782a70683f12c6f149c0fdae310279e9156a3581f5b6207fec6f31c8d6d26de237005b0cc3f8dbb03ea389782f3eb9305949621c61cfba20a7d83cb
+DIST ruby-2.7.1.tar.xz 12003684 BLAKE2B 90a35c3e246cfe982a146be29a3d121d6e2c251ed96703dbc46b98c21e0e43e5445132e6119e584ae35f7193f063ff1b14822f947a4e07037c37fbba5e4038da SHA512 79f98b1ea98e0b10ec79da1883e8fc84d48ffe5c09ae945cbebde94365e35a589d919aac965f74d70ca7e21370ecee631ac5a8f9c4eac61d62f5aa629f27bf31
+EBUILD ruby-2.4.10.ebuild 6464 BLAKE2B a0684f0767c1fca52e64d5fda442ba458ab64f18905d211576d1492da4558fc929579ae9a2ed4f81c99139e55349ce3e6100f40852317a3187e902a00e8514a9 SHA512 ff951a88dc96fe9837b05418eca4a532b98c8be77ec9de5fd8ee2ea2c1df627033b7525814e0cd8e386136c8a772eb175a04744e4e16ac0454738cd99247e7f0
+EBUILD ruby-2.4.9.ebuild 6493 BLAKE2B 1920731de9309020c35e2a25a7735c36b468a5e77ada96eacfbd7737c69edc644e9a570babe4f0d9bf026f297622970e9af07e01c69c51cf82ce8d9388a9a743 SHA512 588fabe5d559356e0cf214077b506b4a87d9fae70d157520252a448520d7e7c3226e299c16ef84f202f0915faec02936299c23ecf72d28ae353651e194c9c933
+EBUILD ruby-2.5.7.ebuild 6280 BLAKE2B b3c045eea20ee9babefce7b1d862810eae122a166c4248bdeb0e05d0e28357f86d20c3b5489b074c3508cef329883b723282c8d86c7c6febf6746541b94938fc SHA512 5d0e752aef676809990fbd2b2ae695b36618b1d250164371ef4fcaf327b6131d5a1ba9bd09a7d31704a42c1b93ec17af841196f79b9ace3ce40a4e04d4d05bc6
+EBUILD ruby-2.5.8.ebuild 6247 BLAKE2B ef3ab8259e24b3a37114f19603721d8212cc0629f3b0f95064dc37cddb59c27602bd798f56cbdcd07112ef5a201e167daad9187b8be37058cbe87eb53f12e438 SHA512 4f804b105878a139a9c3df5923cc496853388932df7281fb857160eeb3517a77a62c0f382074bb07ee6a313927cc75cea4a7e16ce0c2ccd2d9e33c699ebd59a7
+EBUILD ruby-2.6.5.ebuild 6703 BLAKE2B ae236583399c0d6d3ed2be4454e072823bbc47cf82d6ed0a0c1a7edee9a554d244a12c8626c5aef1e199465e11011f22b2e00dc85881b13fee7ec86fe8901dee SHA512 bce90a3b29a2c5d3a14aa123bb98d8daf3073ab730d7bfcce020512d6eeb21c49b776940eba4124fa2584020a70d5cf14cf29bd578648d838cd4d6721adac702
+EBUILD ruby-2.6.6.ebuild 6672 BLAKE2B 36cae200abeaf9494a34a6319afc2a9c2725ecfe847582a18b2ee422a93df86f9b39e18c8857826ab55da1e5df76d464ab14803c97f0d3b1209c08831d05f6a0 SHA512 252f9eadf9e776652658802a0b95b4baef1a7f1cd6c0d1d786d854a42962a0343051f4f435e08926953b3510c7d0a29894276c05adcce6d1eb877c217dcf14b3
+EBUILD ruby-2.7.0.ebuild 6829 BLAKE2B fa2815e75695a33a0cac53f605c5c5c01badbc80b00fdfc342719257f8dc5242a311c3fa2c5833c41ad50788008636168ffccd659a30116413584bacaebcec7a SHA512 7a2540e65e608119faf521eb2c3435f9b57974a5edca9a246ba12f7f851992da429cbc4618aaa0c396801e9fa9beb7ffc1b5165d03d7739319bf315278f7c2af
+EBUILD ruby-2.7.1.ebuild 6829 BLAKE2B db48628ec9177b4693d7e6f1bbec93725117b0dc3a2d3c73340ea1b8ea851652403dafe03dc526dc112ba7e9e578044d48af4cfe1f273efd279b10f9b33be967 SHA512 d80080fb8258fdcd7645ea4a1f7a86f373b73fdf2021e976e8dc4dc9d84d85feae3e2f0b11e47cd17a77ca0242bc736dd5c8df18164563bc246f0a0c401b30c8
MISC metadata.xml 445 BLAKE2B c3b5fae44894da3c78d024a376522aa2ef486cd9435351ddd7fa8b7c9afdc36969251a3b043d5890a368616f0736ae80e2a65a7342b327f30eb3497c5c02d28a SHA512 3818ac938dd6f8a05e18662f83af542fb29af00a476362592afa86bc537a74ddd0abe275784340539b2cd38f97ad1fce8b8c427c65d61c05a90b2118f2d16a91
diff --git a/dev-lang/ruby/ruby-2.4.10.ebuild b/dev-lang/ruby/ruby-2.4.10.ebuild
new file mode 100644
index 000000000000..c9c2530eda52
--- /dev/null
+++ b/dev-lang/ruby/ruby-2.4.10.ebuild
@@ -0,0 +1,227 @@
+# 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 ~ia64 ~mips ~ppc ~ppc64 s390 sparc x86"
+IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
+
+RDEPEND="
+ berkdb? ( sys-libs/db:= )
+ gdbm? ( sys-libs/gdbm:= )
+ jemalloc? ( dev-libs/jemalloc )
+ 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-20161226
+ !<dev-ruby/rdoc-3.9.4
+ !<dev-ruby/rubygems-1.8.10-r1"
+
+DEPEND="${RDEPEND}"
+
+BUNDLED_GEMS="
+ >=dev-ruby/did_you_mean-1.1.0:2.4[ruby_targets_ruby24]
+ >=dev-ruby/minitest-5.10.1[ruby_targets_ruby24]
+ >=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby24]
+ >=dev-ruby/power_assert-0.4.1[ruby_targets_ruby24]
+ >=dev-ruby/rake-12.0.0[ruby_targets_ruby24]
+ >=dev-ruby/test-unit-3.2.3[ruby_targets_ruby24]
+ >=dev-ruby/xmlrpc-0.2.1[ruby_targets_ruby24]
+"
+
+PDEPEND="
+ ${BUNDLED_GEMS}
+ virtual/rubygems[ruby_targets_ruby24]
+ >=dev-ruby/json-2.0.2[ruby_targets_ruby24]
+ rdoc? ( >=dev-ruby/rdoc-5.1.0-r1[ruby_targets_ruby24] )
+ xemacs? ( app-xemacs/ruby-modes )"
+
+src_prepare() {
+ eapply "${FILESDIR}"/${SLOT}/{002,005,009,012}*.patch
+
+ einfo "Unbundling gems..."
+ cd "$S"
+ # Remove bundled gems that we will install via PDEPEND, bug
+ # 539700. Use explicit version numbers to ensure rm fails when they
+ # change so we can update dependencies accordingly.
+ rm -f gems/{did_you_mean-1.1.0,minitest-5.10.1,net-telnet-0.1.1,power_assert-0.4.1,rake-12.0.0,test-unit-3.2.3,xmlrpc-0.2.1}.gem || die
+
+ einfo "Removing bundled libraries..."
+ rm -fr ext/fiddle/libffi-3.2.1 || die
+
+ # Fix a hardcoded lib path in configure script
+ sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
+ configure.in || die "sed failed"
+
+ 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
+ # SuperH needs this
+ use sh && append-flags -mieee
+
+ # 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 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
+}
+
+src_compile() {
+ emake V=1 EXTLDFLAGS="${LDFLAGS}"
+}
+
+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
+
+ # 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
+
+ emake V=1 DESTDIR="${D}" 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/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
+
+ if use doc; then
+ make DESTDIR="${D}" install-doc || die "make install-doc failed"
+ 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.4.9.ebuild b/dev-lang/ruby/ruby-2.4.9.ebuild
index a50be1bcc732..9eb0e862bd9f 100644
--- a/dev-lang/ruby/ruby-2.4.9.ebuild
+++ b/dev-lang/ruby/ruby-2.4.9.ebuild
@@ -17,7 +17,7 @@ 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 ia64 ~mips ppc ppc64 s390 ~sh sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
RDEPEND="
diff --git a/dev-lang/ruby/ruby-2.5.7.ebuild b/dev-lang/ruby/ruby-2.5.7.ebuild
index afecac45abe4..51940695a409 100644
--- a/dev-lang/ruby/ruby-2.5.7.ebuild
+++ b/dev-lang/ruby/ruby-2.5.7.ebuild
@@ -17,7 +17,7 @@ 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 ~ia64 ~mips ~ppc ~ppc64 s390 ~sh sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ~ppc ~ppc64 s390 sparc x86"
IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
RDEPEND="
diff --git a/dev-lang/ruby/ruby-2.5.8.ebuild b/dev-lang/ruby/ruby-2.5.8.ebuild
new file mode 100644
index 000000000000..6271cf363ed5
--- /dev/null
+++ b/dev-lang/ruby/ruby-2.5.8.ebuild
@@ -0,0 +1,222 @@
+# 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 ~ia64 ~mips ppc ppc64 s390 sparc x86"
+IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
+
+RDEPEND="
+ berkdb? ( sys-libs/db:= )
+ gdbm? ( sys-libs/gdbm:= )
+ jemalloc? ( dev-libs/jemalloc )
+ 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.0:2.5[ruby_targets_ruby25]
+ >=dev-ruby/minitest-5.10.3[ruby_targets_ruby25]
+ >=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby25]
+ >=dev-ruby/power_assert-1.1.1[ruby_targets_ruby25]
+ >=dev-ruby/rake-12.3.0[ruby_targets_ruby25]
+ >=dev-ruby/test-unit-3.2.7[ruby_targets_ruby25]
+ >=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby25]
+"
+
+PDEPEND="
+ ${BUNDLED_GEMS}
+ virtual/rubygems[ruby_targets_ruby25]
+ >=dev-ruby/json-2.0.2[ruby_targets_ruby25]
+ rdoc? ( >=dev-ruby/rdoc-6.1.2[ruby_targets_ruby25] )
+ xemacs? ( app-xemacs/ruby-modes )"
+
+src_prepare() {
+ eapply "${FILESDIR}"/${SLOT}/{001,005,011}*.patch
+
+ einfo "Unbundling gems..."
+ cd "$S"
+ # Remove bundled gems that we will install via PDEPEND, bug
+ # 539700. Use explicit version numbers to ensure rm fails when they
+ # change so we can update dependencies accordingly.
+ rm -f gems/{did_you_mean-1.2.0,minitest-5.10.3,net-telnet-0.1.1,power_assert-1.1.1,rake-12.3.0,test-unit-3.2.7,xmlrpc-0.3.0}.gem || 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
+ # SuperH needs this
+ use sh && append-flags -mieee
+
+ # 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 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
+}
+
+src_compile() {
+ emake V=1 EXTLDFLAGS="${LDFLAGS}"
+}
+
+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
+
+ # 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
+
+ emake V=1 DESTDIR="${D}" 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/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
+
+ if use doc; then
+ make DESTDIR="${D}" install-doc || die "make install-doc failed"
+ 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.5.ebuild b/dev-lang/ruby/ruby-2.6.5.ebuild
index 0c21ba4a05f3..d8c52f1d99a3 100644
--- a/dev-lang/ruby/ruby-2.6.5.ebuild
+++ b/dev-lang/ruby/ruby-2.6.5.ebuild
@@ -17,7 +17,7 @@ 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 ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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="
diff --git a/dev-lang/ruby/ruby-2.6.6.ebuild b/dev-lang/ruby/ruby-2.6.6.ebuild
new file mode 100644
index 000000000000..964dc3f416e5
--- /dev/null
+++ b/dev-lang/ruby/ruby-2.6.6.ebuild
@@ -0,0 +1,234 @@
+# 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 ~ia64 ~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
+ # SuperH needs this
+ use sh && append-flags -mieee
+
+ # 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.0.ebuild b/dev-lang/ruby/ruby-2.7.0.ebuild
index a19fc97ffdf1..79b2785eb9fc 100644
--- a/dev-lang/ruby/ruby-2.7.0.ebuild
+++ b/dev-lang/ruby/ruby-2.7.0.ebuild
@@ -17,7 +17,7 @@ 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 ~sh ~sparc ~x86"
+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="
diff --git a/dev-lang/ruby/ruby-2.7.1.ebuild b/dev-lang/ruby/ruby-2.7.1.ebuild
new file mode 100644
index 000000000000..bd2dd1fd6f27
--- /dev/null
+++ b/dev-lang/ruby/ruby-2.7.1.ebuild
@@ -0,0 +1,237 @@
+# 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
+ # SuperH needs this
+ use sh && append-flags -mieee
+
+ # 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-bin/Manifest b/dev-lang/rust-bin/Manifest
index 2f3f65137454..28f076ee976c 100644
--- a/dev-lang/rust-bin/Manifest
+++ b/dev-lang/rust-bin/Manifest
@@ -1,73 +1,3 @@
-DIST rust-1.37.0-aarch64-unknown-linux-gnu.tar.xz 124322996 BLAKE2B 732dc36933682a18bcd5694b1715af5c442452df8232e2affda8185b9aaf0daf297cf7c4a64fc7d35898e1b3829ba9e8fbe33e8c8f7bc6183b3149f983208ba8 SHA512 c70054f589aa2aecfbd6a89f567306e0cf5d3eb56e5a544ced0a5d212f14033dab10559d22dd6b07945e45a25d8de14fc7897c9d24c0d8149548a06b404ca9d2
-DIST rust-1.37.0-arm-unknown-linux-gnueabi.tar.xz 124741032 BLAKE2B 88e38ea9152546c8a04bd6f93fa8d97d3e58255568a522d2774a2656a4c6dd7bad74633a10b424f6c5f6ca07ea07e473e620ab24dfdbe5c27bb5141ab0f5bba8 SHA512 bd28b8bb60b8e4373693ad9d41bfe62eb12a7272a5d7978691b0c7e1892a2df8d6ff8cf5c25dab805fab1d03dd17c76c1014d395b042118cb24603739c6dbb32
-DIST rust-1.37.0-arm-unknown-linux-gnueabihf.tar.xz 124971492 BLAKE2B 07614242bc500c9ca81a87ed81cc0bada9b467049b7bc2afbe6245b742ac2bec9030feb08f0ef8a2402bf2c2a19722b8b06dacd0ef56edb0522bf41e29080a01 SHA512 e380e2bf862a157cb5e06d27fa8e306474e708ce7e0ffd087531a4fa5729bef104131c256625c05515f6e7dfd43f639ce1fd5e05a2da42ad7f437d578b4acd8a
-DIST rust-1.37.0-armv7-unknown-linux-gnueabihf.tar.xz 126583596 BLAKE2B f836c88801bde52c43726fb728d03b5f145b511a7a4b3d857de0218b87c83a4a2c939b9956aa61cef362a255209ea9e5159d2ac00edea2b9656ef320875f79a2 SHA512 6d9e055f36a2e912f30bebb25afdd3188019a438f208d3db67b38078bd5c37633c38fd48da15ba80640399babf89221e727a2bf43990aee269fcc5c91cd412b4
-DIST rust-1.37.0-i686-unknown-linux-gnu.tar.xz 177419360 BLAKE2B 4b28b002f0db349f9d12f2e4ae63b3fb5e9f472ec4d32d671626a56377cb87b07efd884ef3f4b23cca7072818c597fa8c693f55fd30ced5b408e8c0b0081af29 SHA512 b59377350f82efd10c7afe0f7a28ecbd5355719d841d40c98bec0f01961233f7a19bed2581a111a76cde8dd8dc68a019fa7d3da66cb7ebcb002ba52a14a7e573
-DIST rust-1.37.0-mips-unknown-linux-gnu.tar.xz 124577076 BLAKE2B 299d2b650c8236b94079ce4895e020bf2fe6c5d9b768da47d9716010eaa024c6b8ea743ddc7fadd660a9e49f65a02a8d0da7853cbff2bb6b43bb7771d3d42149 SHA512 1b71e1840470f7dd44cda177b7abf1cdc3f63db547fa36657b9fe5030a3d363afe1fa3ff8566351910daeef91ab4b33be46ef117342b4660fa23f76bee0ace00
-DIST rust-1.37.0-mips64-unknown-linux-gnuabi64.tar.xz 124565528 BLAKE2B e5bd6241ca7f2356638d39e18a71e577972143f37aa05e00e965bcce742828f25adf0f5cd6334c430d464e51b4112baeceb44a9eb41713233df6942b077983bb SHA512 1002173e608d29a2d32a6479a5c530d36e18bcce9e0813607369d3173c49b019a69ef05e8f1aba9b232285529f72837dfa8f4400866c49b6450e0f53028ebab1
-DIST rust-1.37.0-mipsel-unknown-linux-gnu.tar.xz 126620196 BLAKE2B 9174e7a48ba9e0f0bc2fc023991f6005614310a8db76824f5e733b0d8c4eaec6729c00b92e1c45f82fbb77f573c4bdc71004e887b9a170dc88c1a3f6e5ec0ccc SHA512 41f17b2f9bef0d5453153660d0f49aa0c8df0bfd003abac46728a477d3c00f67f5b1460aa851a92605fd628bf9dc18d9b44a16dbfc8fff22d84fd2a0a58b971e
-DIST rust-1.37.0-powerpc-unknown-linux-gnu.tar.xz 124035536 BLAKE2B 2b0b2c34cbe929ff4632e13b41670fa25e765a8b954c3226da67e098a06bb59c1d2387bf64beddaa554e439dd1549dcb529048bcb1e0f00998aee7bf302d6f6c SHA512 54b08c4a5523749ee5054e000f82ffc7ec29562d1194fbc311bee0e953c49eead3c851dcaf34803bb8eb997550a64ec784f40927f52d33b18ceee7c921c0eed0
-DIST rust-1.37.0-powerpc64-unknown-linux-gnu.tar.xz 128662180 BLAKE2B 0df1def64d07b3eabf1aa6c993c7a01b596119abf60b1a3e3e6663b1bb3c6a945146c9cd639ee7d57462e1cbb866badfa83abb7b52b36de4b089552f624c2245 SHA512 e8e5cf1c64bd3eec389cef022e1c7bae4618fb6966505d2e762d10e7f443fece43b8b95c989c020bdf739abaf9c3f036230df46f6477a2ccd517a7bdef2ba0d7
-DIST rust-1.37.0-powerpc64le-unknown-linux-gnu.tar.xz 131763436 BLAKE2B 76b9120e98da09344ce5af39a9b333c6ca8917516ae7108d6cc129fdda4d4d6c21e2ca4c41533e202f63b992bcede5390ec986a262ea216c1340a82c5ba798e8 SHA512 366c8920448000bfb4baa3a47588a1c7bc81e18afb8d40f0efc824e429e9e6900efbdb4c9003fb45b9d8595328bd612bd63f390a7d3dedbb30b7dc57fc12abf3
-DIST rust-1.37.0-s390x-unknown-linux-gnu.tar.xz 141808296 BLAKE2B 73825a004be81cca4dfff1301ea0ef45c9f55ab8d9a9a0343585377d83c4bdc03d3c027622f18e144c9355afe6f5236a6273f84b43b01a221066d3c395f71017 SHA512 14f403d3ce9df2a2baba1db13c9f039d7118d7e0c8285ca19ea0284c32e80c3f786660dedef4d1758b2227f91732b8e7deccbf3f38c2b3491738c1408d6bfd0e
-DIST rust-1.37.0-x86_64-unknown-linux-gnu.tar.xz 165034364 BLAKE2B 3047fff28da00e01179d3a648cb4e5636fa15ac7f4cb9ddc14e1df86d045b69ff3e41691b4a6ef4227c4cb58137524c5e029ba21a2c3a3a171fdb6f46b44f4ff SHA512 c4d48aa12cb929d6600f9cce81bb612c504aa1b3b3f8e76352af3a76b737dcbe0d31e8d139c17884b11aef9f12a55c4908fb8f3ff63dfa92533e4bd0a729914f
-DIST rust-1.37.0-x86_64-unknown-linux-musl.tar.xz 143179480 BLAKE2B 3362af42508b79757b4560adeb60c6f95ec603d5168581ea21c5b9bf36ddb26c6d8690c0a842be50de79f16cba553f16361df229ae3fb5dd3c6cfd79f657d8cf SHA512 dde7c8d827131866eff433d1102101558d40eba982a1b26872d7b03f60613041b0536c1d14f2dd8970e736d849094cfa4b869165371a45cd6295d8026f9333c9
-DIST rust-1.38.0-aarch64-unknown-linux-gnu.tar.xz 235231988 BLAKE2B 03ee6ab2c928134f8dd7e5812b60185b934c2f792b64d6271bff4fb714a9acd0f52a6aee291cc22e7f263cb52173568f5ccfb36edd0eb0dbcd567240beeb1372 SHA512 c9dea8907d05af938c1936139c1fb8673d0db90503552f53645d71637bb7248263fd20b1c16db140694b2d467a12c474015a2077d9b26c782b44e965a01544c6
-DIST rust-1.38.0-arm-unknown-linux-gnueabi.tar.xz 241780224 BLAKE2B ec362bc67d7b4f3e3d4ba2e19b46af61322b3f8284bf7fd66ac1eb006975c6d6aaa12be8b827147ac8ab42cc11d6c540161fc15c8233a2943a078ce89a300c17 SHA512 4ea00aa2b8bccae4fb595c687058af0c82905cbeef93b3d90f5224657bec0f269d0e75af2be6b97b2043442190dbe2df4aeacfafd6cc8916b0fe2ef28908e987
-DIST rust-1.38.0-arm-unknown-linux-gnueabihf.tar.xz 242107656 BLAKE2B 9c43dbe34d99925f34cec339adcedbf71d72515f08ac456293a17dc602ea027b90c552ef891908661f20c2ef07cd7915b9d8936206c65be9e8ae493c699e4265 SHA512 99726beb670af6411ed8dcfbd0eddbce3b964703492686226815f7c0a5c57fd3d0593925345d4f311cd9f5cb2eb9089e80cbb6c62ba767a901e5c5f099e6ebad
-DIST rust-1.38.0-armv7-unknown-linux-gnueabihf.tar.xz 243411104 BLAKE2B 19c9f2daa81170822ec23049945500a2a6c7342d6c03d50627dcc11766f31b592c40773777583b04666c75320f3953404c55c0b5aa213d771136afb3c4638fa6 SHA512 ddbb2c8d2e7112c5871155890c8308080ac800795c685c4b4d06b9dd8c5abd28ee13961686c9be465d1bbd33d476c6478b90af8de0ca5a451f8b07eaff42f97d
-DIST rust-1.38.0-i686-unknown-linux-gnu.tar.xz 298169160 BLAKE2B 93181072784885cbc23efe12e5511de9dcd564610169990e3d7617413a9073e06efa743b3c95d87fb3065c036ff4b4656e1d2a52571ca55b62a3364479fd87da SHA512 ffdea264378510c6df687a173211427f4cb5930553c9d14e33c5776b0e15d435d1be719bba8a1db50f50a3171a38802e090451dc92a6ea764cc8fdca24651f24
-DIST rust-1.38.0-mips-unknown-linux-gnu.tar.xz 242052876 BLAKE2B 323587aab4bb1d70795664efbc5ec61cf7dfc3d33f1e9831d6a2e0d591a4dc60c1d5bf305a4b7f767858ac33d296155c4baf8e2db23c48114f0ae72ba823ef83 SHA512 5bd8faff88ac35431087ee33520c92a52e64262774ea899d610137e51a71efa25403b1e026e509fc0593f6da65c68b561c051feadf482f0ee25875b526992109
-DIST rust-1.38.0-mips64-unknown-linux-gnuabi64.tar.xz 237741316 BLAKE2B d1f758013d53853d4713400e383cb443dae5187156a54ea39d4bd79f60b60e7322785613456a64c1d00e28b575ff528ba01d608cc234e23ead5156ac855b1ad0 SHA512 05884f678b31d7af0f54d8d31ef6d09d1a3a3e9d6d5245583e4ef5a2db47c3aa9e4a226b55678077b759156e41473e8ff9fa8b12c21276882a0bcb53b45d5811
-DIST rust-1.38.0-mipsel-unknown-linux-gnu.tar.xz 244454148 BLAKE2B a20f2ad0bcbf52e61a997271147161c7eed0dadd795ed16d2f0078924b8be9d132f464d5eefbe9c41a1cdb5ae18005e8d82b3b5ef703d5a7a86e4f940b847bcb SHA512 3eed9fa45a8a9e5f67282053933375f862860f6a68032a62fcd286ec39276610914689c83d9bd95302d15d61433304e2aca6f10b87d7eb762950f7574379e426
-DIST rust-1.38.0-powerpc-unknown-linux-gnu.tar.xz 239750464 BLAKE2B 202475f8035504a3d8a81b498c4461cbe4a25d29284dc504a5db2d52740ad8fb35dadbb83ac0fbfce14cefed1209431c16e10a91608b6a90633d8c3a08e03ae4 SHA512 3cc93f76a2e2defdfeb4c18b84a3c950716bdb6fe68446d4dd97d6b5a0ad53b2fc5e97f220a5f205ab07428f5d5a048a3a9de36f90d9685be8551b4be3188a36
-DIST rust-1.38.0-powerpc64-unknown-linux-gnu.tar.xz 240082008 BLAKE2B d15d508397cb4e7b8b8fdd13d6825e05d093b90250c8e261f86fd4588f1f338489c725506b3a1db8bc7a3b2df4979f18854d360ec2de6580e411572d216c1a59 SHA512 26240976834e510fa5a47c35b747b42db4651ea8decdb5498704432c9a21563e603046994fcc2b070d06361bf2c36fe02a15c7f02d88161b299a410f1995983a
-DIST rust-1.38.0-powerpc64le-unknown-linux-gnu.tar.xz 244407488 BLAKE2B 79ca67230dc4d16518421f08554bbc0093f2423469426d1f6f0a925a7bd01b059875ce1a1af29a516dd1cff745524702a8f37e8cb9b43398a32eb78a55e0c3ca SHA512 5f3e1dd233ef17d8a296dcb55738fa119e40c32b154a7575f149bf1475b64e34f7e805f206b9862dc6499be470f179290d8abb7ad8d2b5cb355cef03d95ae374
-DIST rust-1.38.0-s390x-unknown-linux-gnu.tar.xz 291685528 BLAKE2B 1d7678b68c5296fed276eb10a07ffd906cfe569b93b6872872c8aae10fa6f30f0ef4023e55256ee8d2e9f6935fc3391421f0f7758aaad60a0dac15b34074fcbc SHA512 7af64849236e0173d2aea723f3462682fde7d2e1e04d61c28d215163415e1b15cfb8cac57010ce55bdd928ea74076506ef50376d7550999e0fb00f9d20c4f5ff
-DIST rust-1.38.0-x86_64-unknown-linux-gnu.tar.xz 279859784 BLAKE2B 40dab0ac1e800d7c095052800505220019154d40741d7c8872932948d5df62863fe9d1e43596a43411e959c2ddc4fb8d9b4e74525aa1a35352efec781054fc37 SHA512 0b25c3049a7a213e9151c898979ec9b5b45e46a9072f9853d8f048cf401ef7ac343526d6919e68607a490e3e7bd0375b12ed9fb253caed26bb60f46473d3699b
-DIST rust-1.38.0-x86_64-unknown-linux-musl.tar.xz 260574940 BLAKE2B e2ed6d6a9718a571a4592ee770e5ff4cb19ccd4909a32ac5d80fbe24b64ffd59ca5ce5e2d6c76d2fb9ae653a170b94ffe199ff4a23c10bec7ca489f16f23bc78 SHA512 f6670cab1d5bb6e39aec84c831146db673b06f773934058476fde237503211e04c633a1c4be8783c0b4f5bc4e5b67a873963d7a0c7d19b4531621678a73d3c00
-DIST rust-1.39.0-aarch64-unknown-linux-gnu.tar.xz 238165960 BLAKE2B c3e14a7b57d904d0882cb224e2390087cca5a3b4a6246e52e6d064c554721efe7b5542e694a3b6d2115f9914214a94200e0ff31008a5c8df1448b667b0fdb34e SHA512 ad37a8454acb8985a5c2b42d7f8bc4212651a16fb5af6b4314dd97faa47de79893f2f74b516af89cd7e77ef3db64247c4764585eb0a17ac328c9cba5e5b9c407
-DIST rust-1.39.0-arm-unknown-linux-gnueabi.tar.xz 244091604 BLAKE2B 9d09dbd18cfdad062705ee3c1726cee7d4c25dd9a739be451e1bcbd7e6d36316a113f93c0f8309bec3a825435d6245d195fd5da7b35fb51f2cf61f6f638c415d SHA512 1d51d47650cf11bf16b21df0b759de9ae23d96d4b14b5107f062bd240d02d5793542efbf0feaa09403cd35ca38af3e85f1abbd5083b645d40cdb1189d02a8099
-DIST rust-1.39.0-arm-unknown-linux-gnueabihf.tar.xz 244501036 BLAKE2B a6ea74a0249e9c7509e21d20b9c04e59af93f78dde92557b6d449fb51776fb6e31d5baa19419547d9baf10768423642a0489c828c5919c055981876ef2282603 SHA512 291d9963f67708b5b14f1f27bb9e7d374fcd7a5d24d932db02203aaf89d06db8178305eb18e4dcd56cce81dc5eb80d2fb019ca94a99c06b548f0588ae560b7ac
-DIST rust-1.39.0-armv7-unknown-linux-gnueabihf.tar.xz 246114456 BLAKE2B e412273d164fae3f7c1702601a4f518b15acdd8f75746de7fa0af63a67a7873ce27b7e5bdf9d1354508ca0b0d20705dfd26659c6355a12c6a2cc59ad8d2a2a2a SHA512 db2b001a5587e2d5c8cdcb53c974f2332e76f58e362cba55fc971d7244754f1fa0b7e708ad7e73e7250652b442f06929dc1e8981536d7d76850b45ade275d406
-DIST rust-1.39.0-i686-unknown-linux-gnu.tar.xz 297665804 BLAKE2B 0024993e80174c0dd71c5f781ea466690fb18e3b760b11382613cad10e6112122d90c54b2a7451c049711c13e0f3da979bf8e8d2e79723e7a484352303bf0337 SHA512 930546e79c0b1105eb0604ae33ccdbd8b00b56e56d069f19f0d802093a052fd3f940eaf1390cdecd79833b0c70457ebfee2ce3b9674fff72df1367076584394a
-DIST rust-1.39.0-mips-unknown-linux-gnu.tar.xz 242857808 BLAKE2B a2484913ce31ebae0be04f13dd24972a34206b00d5e141f3c5f8e43ab852547b149bc1002053276557d3dd18d231c2772d5817137fd7f615f155c742f0379af8 SHA512 ab9862a55fe0550c4d19c8fe4fa912661594b56f5f05b21c3ee660734a2d119b5b2dc70b9606af2ba91bd2911fe84c847480a828fb3f0a9d30132a70514d26d7
-DIST rust-1.39.0-mips64-unknown-linux-gnuabi64.tar.xz 238468588 BLAKE2B bb48de21d7a45ebb2464159b09974530572e08cf7adfee4d90b5280ed49867a591f9d3e21069868fecc14242649a9d68041baf07d9fb6c40ef8b3780ed8ab70f SHA512 93531394a9a8ed5edf3853f0d5c8faa795982e9c6a5a0a92832c2809c8baade736eafb8c0626ba6e543b05f693753c256b1d6290d5c41162d6129168ef1b5702
-DIST rust-1.39.0-mipsel-unknown-linux-gnu.tar.xz 246030532 BLAKE2B bfece8ee21b8bf0df389331ebbde98dc81810e4fb4c82e21c7fe2a85dcc27465f9a49e599bfdedf99a15cf479ff6c5baf27cc36e77afc90f281ac535ac0a92e0 SHA512 74536b1a1ce15f27ab8a1be7c9a7edb0638edf862c8f1464c98942287da1e7d64abec83be21634ddba2e88c0f9cf1456c000adc4360712aeab214ad87a44c9a7
-DIST rust-1.39.0-powerpc-unknown-linux-gnu.tar.xz 240597272 BLAKE2B a338ed495504d7aa290cfff3af37acc846b066921d0b84ae552ac4c127d24c645290098a711d3f2d17bf2a20f24356f24d67ece5aea7582dcc8a74cb6533209c SHA512 fa4ee683655d96c7ee1df12a39d50b1486c1e34cf4f10c09c6eecfb33b6f67b526dbcd02e1846d3e16db7103c04ee7f388a419ccfdf68ccc908b511b1fb8b7bd
-DIST rust-1.39.0-powerpc64-unknown-linux-gnu.tar.xz 242170220 BLAKE2B 3a5ec3b57c3611efb97f4f849cea3519f0bf4f0dd92d135b82603b10d0f1fe3b2832194ee989e38134c75a9c98a1402fc14382d4976d4f34680fbbba8de279cf SHA512 ff99ad6b120631346af8afac092f8b620e50fb8e118ef1e0ff5668103c01f4b9f082fae72e31a767be35d0647fd9fecc7e6b7b215bb1906e06b20bf3e2685619
-DIST rust-1.39.0-powerpc64le-unknown-linux-gnu.tar.xz 247026740 BLAKE2B 90269aa78eded26c7d54c2e38a08af5f2a5cc3bfb86c268a12050315ba48f232f324b1fcc8e4abae49489cfd9df83edf6d04424ba14fb77f15daea1f6b5c242e SHA512 e15585150370514e580e171faa749218aeef04ce0493f5ad3928a0cb6cd0bddbf7c75ba8ed0783a2c954bbd7166e0445b4c33be4ab48479b0104f032b3d4b0af
-DIST rust-1.39.0-s390x-unknown-linux-gnu.tar.xz 298119784 BLAKE2B 82f64163929c129e2aaee8909401c4f302496f63f8d9d366d6f7460b4546d7657ea38bcd864ecd0f58a5995e47f7f5890e4523dcbcbc51e3bf4085536b07de5f SHA512 d2b588f802d4fbe153dbd88cb745d34d1f5434cb3134cc9e091ebfb336a48b4c886cd80311cf92b5e1c6a16374302853a67e8a0576b02a89dbcf61d27919a045
-DIST rust-1.39.0-x86_64-unknown-linux-gnu.tar.xz 284967620 BLAKE2B c5d2c2a11c4f66105ece51e7ca45ca6a9e0d70215f94ce52f6e61b20995ceb611e45bad1e5e9f33fd444bb0a58a2edb691f1a65a1caf36ad892c034e00104383 SHA512 02ca6c821877379d8bd0bcc38281a87e6f86bdbae1270da19e41336cc3a812d9c11c1e976655c192c39153f92cda90ddbd7b4b0bcb4f6787d6d354d2be827a8a
-DIST rust-1.39.0-x86_64-unknown-linux-musl.tar.xz 262751216 BLAKE2B f719f4168f3d463f5184b9f72990f2e43b99f75902f762f5736e819f47ad451a325cbc7b7140cb322b46b5dc51253ebb8aa2a16b0f792343dbfcab5a91ac95a4 SHA512 155458717aaaaa82b202fae180c094e5a40f45071c3a0f6d27423a612ffe926058642fc82aaa7ea091963108b7a819d6156294149648e5b0a5d5b6196028f4fb
-DIST rust-1.40.0-aarch64-unknown-linux-gnu.tar.xz 80285104 BLAKE2B 857a3148337833a216912b732c017827d0ee2869af41d114f3a743fbc8bd0ad851c4c42dca63cbcb8f15c816a8c45bd60049fb60ea80a85faec23000140acab6 SHA512 f601e4251e08a6d66edb0489b6ab840b57622b506547e81036e6dfe08eb71005a22a2777a0b8b2d07a6f88286d58f513482b863116311a6f43c7284769af6e7f
-DIST rust-1.40.0-arm-unknown-linux-gnueabi.tar.xz 82051152 BLAKE2B 33c62780b3f228298217f7a16e00348cf3c29c504f59de414a0e8a3c506c801d87f460a7bf6107bb7856249c5a5b8fad94499f7f059602b99252ef85dc5b973c SHA512 2098ff12393dd99004ce94f49d445dad03184a108ea8249b70e51abd44bd510f8a4ee43eba3b32967b1a543951e8eec5b06c85692312821b5c855c1d5f034e94
-DIST rust-1.40.0-arm-unknown-linux-gnueabihf.tar.xz 82518972 BLAKE2B 2861693efa9bbd54e09bd693886941ec13b09f1901d384f24534b2852f9cb3b59fa0eaac1ec16bc6df49437cf08a09eff6c649729b0b8c2b4d8def6d7111d229 SHA512 994a91704e65e126bf3d53aa5ccbf9f92f05495a68db1917754f8bf078f16b0255797c884b4f2c70033ae0c94d5f41ad73e1af2e963580ebf56c90a6bf76630a
-DIST rust-1.40.0-armv7-unknown-linux-gnueabihf.tar.xz 84254100 BLAKE2B 5ec75764435f5b906ed5ac84c6454a8fade0d71a9f9d2b3c799525ebf1e1a6e208e85dffe125e3de163d94a62693241a6ed59651955942edc8cdfad5c354a23d SHA512 d3345946c5a3d5cb3d7fca4d3200710704d64547ebfa4ab11c45ea1a18ca3c49b429783d499845f31dcb150abe2f6836fe203fd9d7aa53e0475b940da5549492
-DIST rust-1.40.0-i686-unknown-linux-gnu.tar.xz 122168896 BLAKE2B c89278bd7af7d167251c122297b4a8045da94951aaba5288a3a47b7d4f7af2af2e5ae672388f5c6192382e800151ad54cb2fc9a4fd66fde3acb8acb877aaa27b SHA512 d727149afbbc3b2709360dd6080ff301e781aaa94459c1348d3e35382bc9c7ad65c4d70f9bfc7b44ac92ddaf89e3aab92b75b9d184eba86916da25bd629592b6
-DIST rust-1.40.0-mips-unknown-linux-gnu.tar.xz 74305992 BLAKE2B cf51e3d843a32a3025232d1bc4374c55d3931d8b8634aed83f3f5e890081d7ed2a09d0aa3f026936d5e2f91fd26b56be704cf2975678db5fa23cf57c34277a89 SHA512 995b875dcbbd8472e3109504e695bf15eca812ea252e5ff1a615fb1c5dd3b66fe637fa4c30618b1584af4b641d4b4d5a4d7e1b6a09cb0ca4ff8fdd8a3488a255
-DIST rust-1.40.0-mips64-unknown-linux-gnuabi64.tar.xz 80925812 BLAKE2B a77123767639e93531fdf30af711a8dafd91c4143e7774edf88a9f513fd6fc928f3c96656ce4d0ede54677077c8eb383d5c37bee6881fd0796fe47257a16d753 SHA512 ebbb01c033c16dd9fe93ce0a532afa39b1459b056896c906f9e561285977e7c569e770c7e624e485cd8014008c9d496dae893921bbc1342c3e2b6520c9b84440
-DIST rust-1.40.0-mipsel-unknown-linux-gnu.tar.xz 76145484 BLAKE2B e06cfc8ac8d6124c4eb7c004c9e792c6ba21de5621d21456a7e47f1cd67f584d480708ddb098d882005953db818da27e396c9409c1e089d7db42844608ba1fe8 SHA512 4d4b52397574cfcbf8e79d71cbf783119b0096ed6d8b1f1a4c191336ac0e616b682342077f3451db477e0271a5ac453ee418314c071e8f922e790eb0e32ae768
-DIST rust-1.40.0-powerpc-unknown-linux-gnu.tar.xz 82846452 BLAKE2B e82e117b0592278b491399f27de4c26b518bf8f7cbb60125fc3ae36ddb033113324222ac7433ac9b02026efe4be477ec9967c55648121869a36ce833c3600afd SHA512 4d71bbf1b29f9ea649f444bafbaa8d6447026d992c264736b50365736c9e2129d28f23e09260aa21be10562727a5f6b298ddaf8f7598b4bad53d65cdd2f9e9f0
-DIST rust-1.40.0-powerpc64-unknown-linux-gnu.tar.xz 85231436 BLAKE2B b307d794e9e849d40a98116851950f76576b5ea6bb159c71830bb4210c40d5b6cc37d67d316d1b289735f83a29393699a49dd0c11cafe8191a64de6384ed69af SHA512 eae2e0ba3a6a9ba07945112c17962ca3c77737fa187759e674e78f626777da85a5ee6107168fe2866b5beb1ecf2e655652cb7d9b51867b247d76e174dfb103ce
-DIST rust-1.40.0-powerpc64le-unknown-linux-gnu.tar.xz 87972788 BLAKE2B ad1e460dbd7ee5dbe90bf84a68fbcdd89f3d7a1a898ccd94827327bbb2bfeafeb66d5c50651183e0d429f8d14a41e4e26b8f7cae2ff61b055eddcb2c0fa6aecd SHA512 8b82f3bacc503aa23cfa7a6cd6232e34b734becffbbe02df9f766878d526d24d7409d8c104f39fa791c0f7a8b3fa61f6b8a528e89e8ab94d6a131b2d0ac11f0f
-DIST rust-1.40.0-s390x-unknown-linux-gnu.tar.xz 95398844 BLAKE2B e897ac3e1f46a63c7ad14e0e5229b7028ac325256e084439bcad0ced631eb26d50ca72710c46e59accb0e3d0574d08a9c15455be59a8d78173387d35ddd3bed7 SHA512 e71d3a1d85975653b6d972a4854c9e53be7f2d093a601145261c97f7917f869399fbc6322a04f63b782a5a28b91c3be40041a8c77367d19dec8d0e857cbbef14
-DIST rust-1.40.0-x86_64-unknown-linux-gnu.tar.xz 110186516 BLAKE2B ad89d8cecbd565b23c98ec095bad218de971cb4bb89924bbcb012df6c9ecf0db2b50d624abdf6b050fe1f5067aea9311dc01852950a5ca5e993e99f913fc5dbc SHA512 11a2ad1d8b9e91cbe9ee6a1954d46ac75eeaa83f0c2425a8ad70d191727b02e86ead33d6464222effca6f5134c31a165801a854aa57bdb5f12944d605de3c1d1
-DIST rust-1.40.0-x86_64-unknown-linux-musl.tar.xz 96869284 BLAKE2B 61cdf2eab51455e377e079e7013959ee51358c9846f8442f81a3240062af573f452a0f5f007e63cbbcdd0db98ac22ab0d4f3006f6ef30327b609d303410cba8c SHA512 3e6d7cf7b24c09d13266e06f20ab317c5ffb68de3242719c71e95c3d778269c4076e06badfb488e8fc223b822246ebbeb888d4168ddf6e2401793e23e77810bb
-DIST rust-1.41.0-aarch64-unknown-linux-gnu.tar.xz 96574096 BLAKE2B 1cd5e5c2cc9a53344e46f2bc88894346669f7395959e5beea921be1765d0c71fe2bd8f6cbf31bca91fef391e2e35dd8d477432d0a9e4c23b147ab9982b74870e SHA512 e96e17045fee7056c5cad764d77c79a995c0f969a12d7c0b8eb8e55235bd72d97fd6836c8ee283f09ab1447bf0ae931766db5db0703fb8d5ac647556c417c254
-DIST rust-1.41.0-arm-unknown-linux-gnueabi.tar.xz 99328148 BLAKE2B cf8426b77db7bcb310a0cf95322371b79df22f5f1c048675f460bd8eaac4d2a2e84ce0fc478287fc140fdfee54bcd7eb903be9aa37d59e9a6b562b3997533fcf SHA512 6a0a96967094ac9502c880158b163f2e33134bc849ffb01ef88dfed22d96483d82166e695ca21d9e9e96e56e5c83ede5dba9573f3225a3418c71e625f8e98470
-DIST rust-1.41.0-arm-unknown-linux-gnueabihf.tar.xz 99310972 BLAKE2B dfdb003e95034fe72287a0c2527e9a7b5c02cf3682263c225037e86a0d5a71250f067f757e0b099c4b8a639993ba9e9353562d64b750ceb31d67f98c9a8835d9 SHA512 3da429f804dd5c61375bedd06f1e6262b44dbed487644aeebadc0ea3438584855d48c67c75021e551e5527465213a9699ce4a8595f93c8ef3df2ed4bbd9b8c76
-DIST rust-1.41.0-armv7-unknown-linux-gnueabihf.tar.xz 103804972 BLAKE2B 7ecb1800f144f8ee0fa020b28cd5087cf20cb6583fcd334f0d07ab722a5cd078a4a94649e464c6778222ba197aec95154ed6ebdbff76aa83067695439bd4a255 SHA512 b699eb497145e36fbda283abd2881b0e879bc6713b170be04be3919fb2064153779e4535c6a513c667a79b6aa21c775dbd479af131db1a55c7caa4504e808fbd
-DIST rust-1.41.0-i686-unknown-linux-gnu.tar.xz 120547488 BLAKE2B cf5b240c6f116f4d54092c9d466e2eb8408584f3fb4b0759601ad0bcba59ff3d639debca1cc45ce490964a09b02a071fea0d2cbcac0f3a5ac0bbb5aedef6d6af SHA512 b9541e07bd92b9135c538e0d8d3b47577fd4a7019a7ba4ce99a85c568a724b9a31f76d8b547e944818f215af8f8347a7674f14b4e61b2f5fc09b83595415583b
-DIST rust-1.41.0-mips-unknown-linux-gnu.tar.xz 90976844 BLAKE2B eef629a270e53299df4a3e2beef6962c028e1c1380c86264ac72d80b3837e7ef44100ab6484b9f9bdc5e4415ce9897bdb14d9643d164ec3c2eb12825a8833bc3 SHA512 823d2f8ccd70b9f1506134d027972ae021aa2867ac53d2e8d77deaac2ab55310c5c6978ad17f259d82adfe79ed4973029052407e3412f30988d890e20745b812
-DIST rust-1.41.0-mips64-unknown-linux-gnuabi64.tar.xz 98858296 BLAKE2B 57c73264a8a82d32854fba3d3283b53068c4200b54b0cf90d7e185cec6392fef26a1128079f5c056ae5cf77d86a3cd25c2d96d089de60e5a43fc3f312f099f32 SHA512 4c67f719b4d6573d5a48b31922c76bf475ee025fcc66b23fcda1a5713da1fd02aac9d407af703af017b2ff9d76822d3ab3f452fb2081a52a6610cdc61bfd6b39
-DIST rust-1.41.0-mipsel-unknown-linux-gnu.tar.xz 92840348 BLAKE2B 6a94aa8999eaffcff1788d60b196a432840850383bb2b3530cc2097b1533ff139ae4ce47aff15e85352682e869c24f8680dd5126f37ba31f6b49562ccf74ce94 SHA512 e3ff18a44a79f7d1625ecd20963e9831d30d5eccb0b41f09cdceb1306671e53b9519c399a25b9d71890c1d2cd490b4bcdc59fc92b38db8f4f25e28cada5ce45c
-DIST rust-1.41.0-powerpc-unknown-linux-gnu.tar.xz 98469628 BLAKE2B f7b7cad2b7f702b5a67309bdae3ac94b3118c05e9a429ebeec22312ac8bd37d268f6e9f23acc59f35e89664d01fecc9216739346fa395d688e3266d994aaa961 SHA512 4af61af924dc103ee582b273cb7e4d66f45b8ea3955b90f3c59a11b2d057eba5ac915a33579761053b4f22216dc56de1ae4984ce3ddb789189a787888ec45306
-DIST rust-1.41.0-powerpc64-unknown-linux-gnu.tar.xz 104761152 BLAKE2B ff05e6ba0fd4a2bf74d01c459ad73c17503cf6fa877989130b0949e67300dfaa8f5a16be7e56c594d38aa1df680775fadc556686f7dd89630528a0db38e36339 SHA512 0c40a966ab9d8b485cc8e542b74fc7fec74e00f409744be79d38bddeff74b12e6a130fead8f13531210d123fd95be1fc476434cf26cedf25f74774de8fff42ee
-DIST rust-1.41.0-powerpc64le-unknown-linux-gnu.tar.xz 110799904 BLAKE2B c89548ec66be561fccca42922e418ba8bb952bd5848f69ad4606bf388076b1b0bb9d04bc7181792f1df3e9cf8d9014abe08fdc0a65eb8a73c0ccb79f6e3324b0 SHA512 5b9faee91ae2f4c472ba3155149ac9e3a300a149209e62393502a2d69730cba0361e4ddcbb0d5f1d3c26a93b7ebe1fc497d8573bad049e492156ca743603ef06
-DIST rust-1.41.0-s390x-unknown-linux-gnu.tar.xz 115153476 BLAKE2B 1646b42f5a2001f63b653c59d5e30d1b6c9f3a8c2d2d07a779cc530242fee1f5e92ae8dc1af2a81c57f93d615ad519d40ec6f5ceea79e56048ccae7a37d4a5ba SHA512 458b9877bf2569e6e3a0a6692228d4dda68506336587880f6a51254bab5cbb60c5f82673b0d44842137a426411f25146c08447f22e1a5b883dee99f52e30aeb0
-DIST rust-1.41.0-x86_64-unknown-linux-gnu.tar.xz 111122952 BLAKE2B e1380cf72c8db8279c7b0d4349f09efb040117b1ca70ed599cd5197c6c8a257a846213db372e5b2df93ee266124a8a410e348dc8d5502a537a9b86159afe7bbb SHA512 1f08ba8b82ee17e4ae8130a092913767bd448a580efa4eb06ca2c926234efc72d9b73e2b846102296b80e324697c0ac6f5d3768fbd159d49d248f307efc244ff
-DIST rust-1.41.0-x86_64-unknown-linux-musl.tar.xz 96497736 BLAKE2B 3a193cc6d607891c2c7800498dc499d13bc50ce1249cb553271ab3eef69ea8e309f5048bfca9470c61056469a933824527002d5cc3f10f2ef1aea5519226710a SHA512 bcffacbb48b1d76cbf2951e7233951d6d58c4696f13b3ae616ca661bd8c20ebefd9420c494327d91999b76a34a6afe957281187e8fb5ce9cb968a3cfa8c23ea8
DIST rust-1.41.1-aarch64-unknown-linux-gnu.tar.xz 96755608 BLAKE2B f8635737089bb028cfac6d6478c4226a78c2c8a8aa12f28cba267744e2e915e062f49edb505f26b6deaeca0d2fdb4ec4b83e791f87bf1eab6c0536dc41e2c641 SHA512 54eac5c380b418c1714931ead7d6284b225bb427fcc501e147240000b71d31b667e308aea7f38f3299b1311ab04f19011b914d37a4581c7a64028965569cd58e
DIST rust-1.41.1-arm-unknown-linux-gnueabi.tar.xz 98856136 BLAKE2B dbb3996a9ae302290886bf1cd4642d99a9b3f883f9d39817bb15f105565147e416e23d19e0d08314b08ed441f1ac528c20d8bee27ccef68cb585d8ef64a19e45 SHA512 1b01acd430af3cf99d838aa367dec4f6e4bfcec91388d4a2323cd781d53246edae0f14687b087b73b87c349f243e3acabe193538ce31303f07d59c6a03c31565
DIST rust-1.41.1-arm-unknown-linux-gnueabihf.tar.xz 99107336 BLAKE2B 0dd84e7ad6081b8fdcfcb2691496ed3a493e08db4757e6d3bb2aa9a36fc6f020772a84bc21d0c60efeecf635512f25737b8d6b49a53020c4045c89c5b89881d7 SHA512 462e6d354a4b3b848781bb059decc5eb1ebb4d8a31651623d076a2654e2c8fd02f0f87ddafb124efa40cb134c9438eb252035c2b5bfdf936881b14a23bfbfe9f
@@ -82,10 +12,20 @@ DIST rust-1.41.1-powerpc64le-unknown-linux-gnu.tar.xz 110594504 BLAKE2B eaf9c92e
DIST rust-1.41.1-s390x-unknown-linux-gnu.tar.xz 114814112 BLAKE2B ef22c377e1d89ef4ebe78df19d91bcf042e2e1d8997be80d7d40998b18f6b44f8bb1232b1f72e42e3ffb6d1ff235f3cd2f04854e996bbf7be8f6d5d7299e8514 SHA512 f809adc626876df5c6e050362d59189ede5e3991ac41fd129922540abeb728f618e1a3f3925cee34895de5e037141aabb1f8c2b94d4069945d174e38446e8153
DIST rust-1.41.1-x86_64-unknown-linux-gnu.tar.xz 111202140 BLAKE2B 226c68b1e97cc9be82e81f6c9e065e08514166a65a57159c2f63527063ae5f514650afc2591e0c4854ecd0239dc82cbc9a97b99412608645aca879a71354d857 SHA512 c75d4a18cf9300c6ab480d34c5e4b41be971535931455239330cb2a0e927bcf9cf102498cad5dd1d5d802fd1d9c9d214b80e8ff15aa6be68d3e7f41420cad666
DIST rust-1.41.1-x86_64-unknown-linux-musl.tar.xz 96076684 BLAKE2B 3672e24a83c1e4c97a0844f9522a9fced19d5ef01c89d44e54bba8683514a86f7a14ea2e8c2f28d03c65b7e2e0358ff3cea2f85de1e69eb5334c55e18a8c8e4f SHA512 29e7b2aae35017d7f4313e0a482712390ffec752e62d8b1bda95d56a1f93ba882a8f610b469b5d2d7fa3d6d35c2cdc4e45d219ad85b8a3f71ba6ce04b1add48b
-EBUILD rust-bin-1.37.0.ebuild 5453 BLAKE2B d27536dd8663161825330f129cff24acd359ad7fda13cf3a415c2f4188bcbda5475fbf3dc9b451f80276f5d5461a0615b3db43ee42e05640c4e28390b54c8bb8 SHA512 fface59aa478f4125a05da37d06876867ab473b03bedf86f8ab955ffd1821c93369de730b5dece6a5da3abd558cbd4510b03ea6dfe0b769708ed74886d7a084f
-EBUILD rust-bin-1.38.0.ebuild 5462 BLAKE2B 3bb307a5aa670c27ed62ef0465447fd1e9e11d510f1a6a66de6ac773dc507ec6a859d3a596262b48b8b1fc71112e430fb77324d3651194a5b4124f8fe8332251 SHA512 a59650753f0d3658eca4311f1b34fda8fb89935e8421cd2079af274bc165db113efae98c02021403b45b1e96c547d2f2d5ad602b265e8e19e616a070d7a5a189
-EBUILD rust-bin-1.39.0.ebuild 5457 BLAKE2B b2c1cf4bc8fbd50c80c0848a37e41fc17e010f700a2eff222c898d34682adcb13e85be851cfc093f2e4c147f881ca7e910c4bff40f122261c57a8f3684ffd282 SHA512 043357eda5f22565f0c3eee9088fab703b7a2c8d165928f98996f409bd32334a2a4eef0f12b50068dbb7356168c22968fb9c598a137145f64fc55e855754d47c
-EBUILD rust-bin-1.40.0.ebuild 5462 BLAKE2B 3bb307a5aa670c27ed62ef0465447fd1e9e11d510f1a6a66de6ac773dc507ec6a859d3a596262b48b8b1fc71112e430fb77324d3651194a5b4124f8fe8332251 SHA512 a59650753f0d3658eca4311f1b34fda8fb89935e8421cd2079af274bc165db113efae98c02021403b45b1e96c547d2f2d5ad602b265e8e19e616a070d7a5a189
-EBUILD rust-bin-1.41.0.ebuild 5459 BLAKE2B 0ee457779c991d5e10efe9a1705879bcb727842a259b8fa3ffab80caa11cdf22c7eff5c52740e9c9d59372d40637ea5380eb45cb528bd55b4b39d93c47cfe32d SHA512 6517514d2d7701e86594a81c218db1f5ae5d738b8366e53de21bbc2911a2e81556e2019c479f966affb1b290e0db5bee6326ea0ccfd8756251c8fa7920afe66a
-EBUILD rust-bin-1.41.1.ebuild 5387 BLAKE2B 62fcf3605d748d3c2dca31e0a1abb00abb5f2ae03761f8818d06c77a4228cd0a9cedf90611c4580d89f2acfdcb9197fa7a60f4400fe35c9c46c8a1ab94ed1742 SHA512 790d6acb4936dfb453e32d5cb704579a0cca66e316c179e9e969af9aaec6aa0233b0bf2b001000ccce4920b382402bd1d3a8cc14e8458fbbdccec970f0090147
-MISC metadata.xml 381 BLAKE2B 2a378d099ea6bb4ebe56493d1e7196c3207c54212e3c9ef8c0d020a360240cd3a5867b30e1fd3ac0a4da10de11ea6010677cbe63632e97a03ba480496a968cfe SHA512 573b793a11a2f3b7fee167fadc0c4135d16b9452642655fe3e217d6196b4f046afac281542ae361749d1d84c67a4cdd6b4944e364045d9e46e39d69b81fbc92c
+DIST rust-1.42.0-aarch64-unknown-linux-gnu.tar.xz 99903344 BLAKE2B 77e64c56c2f3ab505af9d9003d127b8beb3b2204344985faa6de92905c96d92342485e062e0ff1228baf51a67c8c2274078a60cc86e0c67ba99481a5c01d4d0d SHA512 691a11e279efdcafa6bdafacb7fb48ccf653e180e0e85909b6031105a297d47538efb36d63216f6185427f818483a51aa827f351ca2123840d72caf60079fe13
+DIST rust-1.42.0-arm-unknown-linux-gnueabi.tar.xz 102380528 BLAKE2B 5df9a33fa2b1414c9986f01d8dbd85fab2a705818336e1b2c94ca63136be7be63d25a2586efa956cf31aa604106b3c92857e2133169c7f3062da22006f1896bf SHA512 8e1b5351a3289441823ed0ce12f2fb0cedc267efe5c504966aefbc9a74f37ed11f4da1086295d7351c58c2d0bf59c4b7b54b23d5ec0dec4750bd7e38500afeb0
+DIST rust-1.42.0-arm-unknown-linux-gnueabihf.tar.xz 100300920 BLAKE2B eb90db613230e44f5002388d83460b635f33ceee349b094ca2472171d54ce3d459b6a2143a66705ef7ea89dcb0fc9b21e6d2f2f53479098ca8559f7c84ee0697 SHA512 d58c1820f39abfdf74569e26ba4f13347dde16632415d4ec0b54cc99c3b04563ed551ed1ba717b33e9b1a9b13e2502008203472f8ed712e302d1db66909e7ccf
+DIST rust-1.42.0-armv7-unknown-linux-gnueabihf.tar.xz 105021972 BLAKE2B 5a04715582193138344ef05700af4ccc90074a1b7d6ed8109993b6c59315e6fd6bc947504fcde36b869da8db4b7b8d8240f908387c8b2d78e21e35f6c27fdef7 SHA512 26768ec530506e20fed8f9ef2c1ca85eec155fc90949f2063836b6109b296a976c8430a698971a8b1c11e8f6ad043d854a36e9f0e849417178411dc5cbd30e59
+DIST rust-1.42.0-i686-unknown-linux-gnu.tar.xz 124258356 BLAKE2B 3e2e0c11e792943be65c989d4b9ba98cc92b2a1dfec7b8506f00d20e439050faf744b991e7e4fa91f0c8a52f7a4e5fb8dc5d383fd0430fa46c4e35dfa5bb26e7 SHA512 7376be5abed573bbf68f73ed5609fa8e22dfa3ead19a3f3d78d553347e3ae01604ab9906f5317f1687a8ab3f9ad9c38cde44ef6f56d7da65a788a74aee9df057
+DIST rust-1.42.0-mips-unknown-linux-gnu.tar.xz 95265764 BLAKE2B b02a340c7689812f7e13286f3dcde893933869c9becb071e9b0455eb68130d74fd67babdf85859ff7b4ef449261be6e09f230a4cf6196041c199d717324c8b21 SHA512 cc19b383ac3dde62750cd247e7fdec9ca4b4ee16880b9b00c42e62c57b46c522950983b500bf8fc70b8198469a18ab92c1ca382e8a07abf8bc937d8f17208d5d
+DIST rust-1.42.0-mips64-unknown-linux-gnuabi64.tar.xz 99814476 BLAKE2B 405fa7426a8d21648be97f6b93065b20878419a2c0aa5889ea6a66b9c0f5804d2673a23932a2462965f04e320c4e78f4c79d5b0a6f9877dfe9909d4b4b8864be SHA512 e8933af6290f2cb881fdfc7d2ba3da1c47ef67d847c8a3e659f8f626b7154f202f071ccd4e90555333a3f3dc2bf4101a645b5665dd00a6d72b5acacd6ad317a2
+DIST rust-1.42.0-mipsel-unknown-linux-gnu.tar.xz 95248132 BLAKE2B 875597ba699281d7160ba2f36fe03f3a234d19e5c6e91ce1291ab2369799349a42e1e7e6dcdf524980548a8c499693d6b48967913d4280776da7a921dfd18ab1 SHA512 733307eec1f938385a43b38aadcd84b7d4c1cfc084e070333d955d8b36f3192a7f7e6c05c5c07d782b945acbb261e48db94f2f9f7d3a09e8669055a577c90528
+DIST rust-1.42.0-powerpc-unknown-linux-gnu.tar.xz 100228400 BLAKE2B e05749ab974ffb0dbae332d4f59c8f71047f86c5e33a368555d996ccf14d229b0cda2cfbcf7f05902746fcf9b18a9a1ba4cd8d8cfeb51d3128f04914e8bc062d SHA512 ad2c9d3ebae5ccffd1f70d0a732a3e6cf793b203a8ab7bea3b90d45b63dac84cd513fcc494c7401a6dedcc1e4c3b6fa4ba95a4d3c10411dce5c2a06b84ef934a
+DIST rust-1.42.0-powerpc64-unknown-linux-gnu.tar.xz 106116524 BLAKE2B bfa533d3fdeaba4c539f18f205ddaa99c6a6be8f4213cf2d02090cc576ee17c721295262c78d84ec01bc286b59f6a30bf32e7c44e435205908fec03de1a8d60a SHA512 668d1d353bdaf676043ab7f4baad464b202e8ae1be7713e3481b8e9fb5fabd1020e10e178d69d099541cb1b23362b50b826790740156f1c96efa3d2a7457e404
+DIST rust-1.42.0-powerpc64le-unknown-linux-gnu.tar.xz 109926880 BLAKE2B 92a9067ff95bf2293eb5dc3f055275646f9f9764a59ea5dc772b1d8da78c28acfbd93e7a9076dd7ddfb36255cecda0646a7e5cc4ef4767cdb320aaf046f77162 SHA512 e1db9bbef45e88e7d1d5b905379c04786a015c90d0d9de6a6c16276a3e91c342a8231dda7a4d46ecc7adc969d07fd7dd8595975647b9ab69f8997fee74401219
+DIST rust-1.42.0-s390x-unknown-linux-gnu.tar.xz 116937084 BLAKE2B 4d68801c7c40aa0aca24d19d25e80614b5b40aa2715aacddb6b9f5441b1c7e19e7b0d396caea860607df1dc580deadc43d9cd1f988cbe654b3132b665f9032af SHA512 85b1331a9a71cc43a2fa628b8510590ff072e409c2c38ebfd9089ab7a245182e23b52f6221b25c63f6048e1bf4ada0f561dd8f3f810680c9727040bc8a0d8d46
+DIST rust-1.42.0-x86_64-unknown-linux-gnu.tar.xz 110826392 BLAKE2B 8c90bacc9b350d64c4084edf104e9004461d681e19f8e8179ff6eb0b2bc50e25d95e3ed13c83f77224cc60f374f3961f0069dfe20512c844598b8eb2393300b0 SHA512 87c06d4503e7ba12bd3dfc8dd279a3bdf33a24d2c22eec1378b79b2c17ccdad9b4c8dbd0d4704eae1f3476aec5639d3ba143e8c74a296d631b17b57da7447e70
+DIST rust-1.42.0-x86_64-unknown-linux-musl.tar.xz 97471188 BLAKE2B 29e7089a33a20e5c57a68c171e6b049e5dbc97d4c940106bbf7116c970e7ddb2271b1cf33162b4141d89b0b59049e09ca49c848a326036eefbc03e369f3ab18e SHA512 d804a08e38fa6735ce57067a3c39c59e2932943aa8baf43419815e9c743f50e198d88ef80d87fc193b8bcba011c685471146c0741954095eed74e41f86de38c8
+EBUILD rust-bin-1.41.1.ebuild 5383 BLAKE2B 866e2af12cc6c37e6df7393bd53f84f269bb9b73400d1669a06cfc64c2d98dd60c0889f58e0463876cabf44db012598957eed6a2fa4d65eb8c6a080d5df8eb17 SHA512 c8da3bfcb3b7358428df06eadb7f60aabe6344c8803d1bfb2923a6b02d20f4ad600288b33658a51a91a957cedc95ecbd9b102bf3e41a8bd026acf2b4bf5767fd
+EBUILD rust-bin-1.42.0.ebuild 5387 BLAKE2B 62fcf3605d748d3c2dca31e0a1abb00abb5f2ae03761f8818d06c77a4228cd0a9cedf90611c4580d89f2acfdcb9197fa7a60f4400fe35c9c46c8a1ab94ed1742 SHA512 790d6acb4936dfb453e32d5cb704579a0cca66e316c179e9e969af9aaec6aa0233b0bf2b001000ccce4920b382402bd1d3a8cc14e8458fbbdccec970f0090147
+MISC metadata.xml 400 BLAKE2B 0d1b68fd1959b1ca32f5e61356ceddfae623872d0fdc4f514922820260df46dec79349c6cb9b0aa36aa38fc790851307f70634a4bf39520dcd50d5c6048c7cc2 SHA512 517ec5f36df802c8299a6957cfddc17af8265b69ab86f46fe762193848bec042d369a2885ceeb61b1725d98c3022ea10202d9cc79f5eb32db2fef2667047f28d
diff --git a/dev-lang/rust-bin/metadata.xml b/dev-lang/rust-bin/metadata.xml
index aa932207aa0c..01ce1ade6f08 100644
--- a/dev-lang/rust-bin/metadata.xml
+++ b/dev-lang/rust-bin/metadata.xml
@@ -6,7 +6,7 @@
<name>Rust Project</name>
</maintainer>
<use>
- <flag name="clippy">Install clippy component</flag>
- <flag name="rustfmt">Install rustfmt component</flag>
+ <flag name="clippy">Install clippy, Rust code linter</flag>
+ <flag name="rustfmt">Install rustfmt, Rust code formatter</flag>
</use>
</pkgmetadata>
diff --git a/dev-lang/rust-bin/rust-bin-1.37.0.ebuild b/dev-lang/rust-bin/rust-bin-1.37.0.ebuild
deleted file mode 100644
index 806582e1e8da..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.37.0.ebuild
+++ /dev/null
@@ -1,167 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit bash-completion-r1 rust-toolchain toolchain-funcs
-
-MY_P="rust-${PV}"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-SLOT="stable"
-KEYWORDS="amd64 arm64 ppc64 x86"
-IUSE="clippy cpu_flags_x86_sse2 doc libressl rustfmt"
-
-DEPEND=""
-RDEPEND=">=app-eselect/eselect-rust-20190311
- sys-libs/zlib
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- net-libs/libssh2
- net-misc/curl[ssl]
- !dev-lang/rust:0
- !dev-util/cargo
- rustfmt? ( !dev-util/rustfmt )"
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-QA_PREBUILT="
- opt/${P}/bin/*-${PV}
- opt/${P}/lib/*.so
- opt/${P}/lib/rustlib/*/bin/*
- opt/${P}/lib/rustlib/*/lib/*.so
- opt/${P}/lib/rustlib/*/lib/*.rlib*
-"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
- fi
-}
-
-src_unpack() {
- default
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-src_install() {
- local std=$(grep 'std' ./components)
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/usr/share/${P}/man" \
- --disable-ldconfig \
- || die
-
- local rustc=rustc-bin-${PV}
- local rustdoc=rustdoc-bin-${PV}
- local rustgdb=rust-gdb-bin-${PV}
- local rustgdbgui=rust-gdbgui-bin-${PV}
- local rustlldb=rust-lldb-bin-${PV}
-
- mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die
- mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die
- mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die
- mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die
- mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die
-
- dosym "${rustc}" "/opt/${P}/bin/rustc"
- dosym "${rustdoc}" "/opt/${P}/bin/rustdoc"
- dosym "${rustgdb}" "/opt/${P}/bin/rust-gdb"
- dosym "${rustgdbgui}" "/opt/${P}/bin/rust-gdbgui"
- dosym "${rustlldb}" "/opt/${P}/bin/rust-lldb"
-
- dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}"
- dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}"
- dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}"
- dosym "../../opt/${P}/bin/${rustgdbgui}" "/usr/bin/${rustgdbgui}"
- dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}"
-
- local cargo=cargo-bin-${PV}
- mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die
- dosym "${cargo}" "/opt/${P}/bin/cargo"
- dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}"
-
- if use clippy; then
- local clippy_driver=clippy-driver-bin-${PV}
- local cargo_clippy=cargo-clippy-bin-${PV}
- mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die
- mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die
- dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver"
- dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy"
- dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}"
- dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}"
- fi
- if use rustfmt; then
- local rustfmt=rustfmt-bin-${PV}
- local cargo_fmt=cargo-fmt-bin-${PV}
- mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die
- mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die
- dosym "${rustfmt}" "/opt/${P}/bin/rustfmt"
- dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt"
- dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}"
- dosym "../../opt/${P}/bin/${cargo_fmt}" "/usr/bin/${cargo_fmt}"
- fi
-
- cat <<-EOF > "${T}"/50${P}
- LDPATH="/opt/${P}/lib"
- MANPATH="/usr/share/${P}/man"
- EOF
- doenvd "${T}"/50${P}
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-EOF > "${T}/provider-${P}"
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- EOF
- echo /usr/bin/cargo >> "${T}/provider-${P}"
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
-}
-
-pkg_postinst() {
- eselect rust update --if-unset
-
- elog "Rust installs a helper script for calling GDB now,"
- elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-
- if use elibc_musl; then
- ewarn "${PN} on *-musl targets is configured with crt-static"
- ewarn ""
- ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf"
- ewarn "to use it with portage, otherwise you may see failures like"
- ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target "
- ewarn "x86_64-unknown-linux-musl does not support these crate types"
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.39.0.ebuild b/dev-lang/rust-bin/rust-bin-1.39.0.ebuild
deleted file mode 100644
index 05a8f1bbcc45..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.39.0.ebuild
+++ /dev/null
@@ -1,167 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit bash-completion-r1 rust-toolchain toolchain-funcs
-
-MY_P="rust-${PV}"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-SLOT="stable"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-IUSE="clippy cpu_flags_x86_sse2 doc libressl rustfmt"
-
-DEPEND=""
-RDEPEND=">=app-eselect/eselect-rust-20190311
- sys-libs/zlib
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- net-libs/libssh2
- net-misc/curl[ssl]
- !dev-lang/rust:0
- !dev-util/cargo
- rustfmt? ( !dev-util/rustfmt )"
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-QA_PREBUILT="
- opt/${P}/bin/*-${PV}
- opt/${P}/lib/*.so
- opt/${P}/lib/rustlib/*/bin/*
- opt/${P}/lib/rustlib/*/lib/*.so
- opt/${P}/lib/rustlib/*/lib/*.rlib*
-"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
- fi
-}
-
-src_unpack() {
- default
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-src_install() {
- local std=$(grep 'std' ./components)
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/usr/share/${P}/man" \
- --disable-ldconfig \
- || die
-
- local rustc=rustc-bin-${PV}
- local rustdoc=rustdoc-bin-${PV}
- local rustgdb=rust-gdb-bin-${PV}
- local rustgdbgui=rust-gdbgui-bin-${PV}
- local rustlldb=rust-lldb-bin-${PV}
-
- mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die
- mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die
- mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die
- mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die
- mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die
-
- dosym "${rustc}" "/opt/${P}/bin/rustc"
- dosym "${rustdoc}" "/opt/${P}/bin/rustdoc"
- dosym "${rustgdb}" "/opt/${P}/bin/rust-gdb"
- dosym "${rustgdbgui}" "/opt/${P}/bin/rust-gdbgui"
- dosym "${rustlldb}" "/opt/${P}/bin/rust-lldb"
-
- dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}"
- dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}"
- dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}"
- dosym "../../opt/${P}/bin/${rustgdbgui}" "/usr/bin/${rustgdbgui}"
- dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}"
-
- local cargo=cargo-bin-${PV}
- mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die
- dosym "${cargo}" "/opt/${P}/bin/cargo"
- dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}"
-
- if use clippy; then
- local clippy_driver=clippy-driver-bin-${PV}
- local cargo_clippy=cargo-clippy-bin-${PV}
- mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die
- mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die
- dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver"
- dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy"
- dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}"
- dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}"
- fi
- if use rustfmt; then
- local rustfmt=rustfmt-bin-${PV}
- local cargo_fmt=cargo-fmt-bin-${PV}
- mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die
- mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die
- dosym "${rustfmt}" "/opt/${P}/bin/rustfmt"
- dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt"
- dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}"
- dosym "../../opt/${P}/bin/${cargo_fmt}" "/usr/bin/${cargo_fmt}"
- fi
-
- cat <<-EOF > "${T}"/50${P}
- LDPATH="/opt/${P}/lib"
- MANPATH="/usr/share/${P}/man"
- EOF
- doenvd "${T}"/50${P}
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-EOF > "${T}/provider-${P}"
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- EOF
- echo /usr/bin/cargo >> "${T}/provider-${P}"
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
-}
-
-pkg_postinst() {
- eselect rust update --if-unset
-
- elog "Rust installs a helper script for calling GDB now,"
- elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-
- if use elibc_musl; then
- ewarn "${PN} on *-musl targets is configured with crt-static"
- ewarn ""
- ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf"
- ewarn "to use it with portage, otherwise you may see failures like"
- ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target "
- ewarn "x86_64-unknown-linux-musl does not support these crate types"
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.40.0.ebuild b/dev-lang/rust-bin/rust-bin-1.40.0.ebuild
deleted file mode 100644
index 81f846015348..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.40.0.ebuild
+++ /dev/null
@@ -1,167 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit bash-completion-r1 rust-toolchain toolchain-funcs
-
-MY_P="rust-${PV}"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-SLOT="stable"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-IUSE="clippy cpu_flags_x86_sse2 doc libressl rustfmt"
-
-DEPEND=""
-RDEPEND=">=app-eselect/eselect-rust-20190311
- sys-libs/zlib
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- net-libs/libssh2
- net-misc/curl[ssl]
- !dev-lang/rust:0
- !dev-util/cargo
- rustfmt? ( !dev-util/rustfmt )"
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-QA_PREBUILT="
- opt/${P}/bin/*-${PV}
- opt/${P}/lib/*.so
- opt/${P}/lib/rustlib/*/bin/*
- opt/${P}/lib/rustlib/*/lib/*.so
- opt/${P}/lib/rustlib/*/lib/*.rlib*
-"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
- fi
-}
-
-src_unpack() {
- default
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-src_install() {
- local std=$(grep 'std' ./components)
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/usr/share/${P}/man" \
- --disable-ldconfig \
- || die
-
- local rustc=rustc-bin-${PV}
- local rustdoc=rustdoc-bin-${PV}
- local rustgdb=rust-gdb-bin-${PV}
- local rustgdbgui=rust-gdbgui-bin-${PV}
- local rustlldb=rust-lldb-bin-${PV}
-
- mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die
- mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die
- mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die
- mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die
- mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die
-
- dosym "${rustc}" "/opt/${P}/bin/rustc"
- dosym "${rustdoc}" "/opt/${P}/bin/rustdoc"
- dosym "${rustgdb}" "/opt/${P}/bin/rust-gdb"
- dosym "${rustgdbgui}" "/opt/${P}/bin/rust-gdbgui"
- dosym "${rustlldb}" "/opt/${P}/bin/rust-lldb"
-
- dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}"
- dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}"
- dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}"
- dosym "../../opt/${P}/bin/${rustgdbgui}" "/usr/bin/${rustgdbgui}"
- dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}"
-
- local cargo=cargo-bin-${PV}
- mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die
- dosym "${cargo}" "/opt/${P}/bin/cargo"
- dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}"
-
- if use clippy; then
- local clippy_driver=clippy-driver-bin-${PV}
- local cargo_clippy=cargo-clippy-bin-${PV}
- mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die
- mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die
- dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver"
- dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy"
- dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}"
- dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}"
- fi
- if use rustfmt; then
- local rustfmt=rustfmt-bin-${PV}
- local cargo_fmt=cargo-fmt-bin-${PV}
- mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die
- mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die
- dosym "${rustfmt}" "/opt/${P}/bin/rustfmt"
- dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt"
- dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}"
- dosym "../../opt/${P}/bin/${cargo_fmt}" "/usr/bin/${cargo_fmt}"
- fi
-
- cat <<-EOF > "${T}"/50${P}
- LDPATH="/opt/${P}/lib"
- MANPATH="/usr/share/${P}/man"
- EOF
- doenvd "${T}"/50${P}
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-EOF > "${T}/provider-${P}"
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- EOF
- echo /usr/bin/cargo >> "${T}/provider-${P}"
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
-}
-
-pkg_postinst() {
- eselect rust update --if-unset
-
- elog "Rust installs a helper script for calling GDB now,"
- elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-
- if use elibc_musl; then
- ewarn "${PN} on *-musl targets is configured with crt-static"
- ewarn ""
- ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf"
- ewarn "to use it with portage, otherwise you may see failures like"
- ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target "
- ewarn "x86_64-unknown-linux-musl does not support these crate types"
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.41.0.ebuild b/dev-lang/rust-bin/rust-bin-1.41.0.ebuild
deleted file mode 100644
index e61242a31c03..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.41.0.ebuild
+++ /dev/null
@@ -1,167 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit bash-completion-r1 rust-toolchain toolchain-funcs
-
-MY_P="rust-${PV}"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-SLOT="stable"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86"
-IUSE="clippy cpu_flags_x86_sse2 doc libressl rustfmt"
-
-DEPEND=""
-RDEPEND=">=app-eselect/eselect-rust-20190311
- sys-libs/zlib
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- net-libs/libssh2
- net-misc/curl[ssl]
- !dev-lang/rust:0
- !dev-util/cargo
- rustfmt? ( !dev-util/rustfmt )"
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-QA_PREBUILT="
- opt/${P}/bin/*-${PV}
- opt/${P}/lib/*.so
- opt/${P}/lib/rustlib/*/bin/*
- opt/${P}/lib/rustlib/*/lib/*.so
- opt/${P}/lib/rustlib/*/lib/*.rlib*
-"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
- fi
-}
-
-src_unpack() {
- default
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-src_install() {
- local std=$(grep 'std' ./components)
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/usr/share/${P}/man" \
- --disable-ldconfig \
- || die
-
- local rustc=rustc-bin-${PV}
- local rustdoc=rustdoc-bin-${PV}
- local rustgdb=rust-gdb-bin-${PV}
- local rustgdbgui=rust-gdbgui-bin-${PV}
- local rustlldb=rust-lldb-bin-${PV}
-
- mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die
- mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die
- mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die
- mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die
- mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die
-
- dosym "${rustc}" "/opt/${P}/bin/rustc"
- dosym "${rustdoc}" "/opt/${P}/bin/rustdoc"
- dosym "${rustgdb}" "/opt/${P}/bin/rust-gdb"
- dosym "${rustgdbgui}" "/opt/${P}/bin/rust-gdbgui"
- dosym "${rustlldb}" "/opt/${P}/bin/rust-lldb"
-
- dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}"
- dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}"
- dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}"
- dosym "../../opt/${P}/bin/${rustgdbgui}" "/usr/bin/${rustgdbgui}"
- dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}"
-
- local cargo=cargo-bin-${PV}
- mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die
- dosym "${cargo}" "/opt/${P}/bin/cargo"
- dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}"
-
- if use clippy; then
- local clippy_driver=clippy-driver-bin-${PV}
- local cargo_clippy=cargo-clippy-bin-${PV}
- mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die
- mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die
- dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver"
- dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy"
- dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}"
- dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}"
- fi
- if use rustfmt; then
- local rustfmt=rustfmt-bin-${PV}
- local cargo_fmt=cargo-fmt-bin-${PV}
- mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die
- mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die
- dosym "${rustfmt}" "/opt/${P}/bin/rustfmt"
- dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt"
- dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}"
- dosym "../../opt/${P}/bin/${cargo_fmt}" "/usr/bin/${cargo_fmt}"
- fi
-
- cat <<-EOF > "${T}"/50${P}
- LDPATH="/opt/${P}/lib"
- MANPATH="/usr/share/${P}/man"
- EOF
- doenvd "${T}"/50${P}
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-EOF > "${T}/provider-${P}"
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- EOF
- echo /usr/bin/cargo >> "${T}/provider-${P}"
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
-}
-
-pkg_postinst() {
- eselect rust update --if-unset
-
- elog "Rust installs a helper script for calling GDB now,"
- elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-
- if use elibc_musl; then
- ewarn "${PN} on *-musl targets is configured with crt-static"
- ewarn ""
- ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf"
- ewarn "to use it with portage, otherwise you may see failures like"
- ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target "
- ewarn "x86_64-unknown-linux-musl does not support these crate types"
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.41.1.ebuild b/dev-lang/rust-bin/rust-bin-1.41.1.ebuild
index 51deede915ab..193d17cba945 100644
--- a/dev-lang/rust-bin/rust-bin-1.41.1.ebuild
+++ b/dev-lang/rust-bin/rust-bin-1.41.1.ebuild
@@ -13,7 +13,7 @@ SRC_URI="$(rust_all_arch_uris ${MY_P})"
LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
SLOT="stable"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
IUSE="clippy cpu_flags_x86_sse2 doc libressl rustfmt"
DEPEND=""
diff --git a/dev-lang/rust-bin/rust-bin-1.38.0.ebuild b/dev-lang/rust-bin/rust-bin-1.42.0.ebuild
index 81f846015348..51deede915ab 100644
--- a/dev-lang/rust-bin/rust-bin-1.38.0.ebuild
+++ b/dev-lang/rust-bin/rust-bin-1.42.0.ebuild
@@ -17,15 +17,15 @@ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
IUSE="clippy cpu_flags_x86_sse2 doc libressl rustfmt"
DEPEND=""
-RDEPEND=">=app-eselect/eselect-rust-20190311
+RDEPEND="
+ >=app-eselect/eselect-rust-20190311
sys-libs/zlib
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
net-libs/libssh2
net-misc/curl[ssl]
- !dev-lang/rust:0
- !dev-util/cargo
- rustfmt? ( !dev-util/rustfmt )"
+"
+
REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
QA_PREBUILT="
@@ -57,7 +57,7 @@ src_install() {
--components="${components}" \
--disable-verify \
--prefix="${ED}/opt/${P}" \
- --mandir="${ED}/usr/share/${P}/man" \
+ --mandir="${ED}/opt/${P}/man" \
--disable-ldconfig \
|| die
@@ -113,7 +113,7 @@ src_install() {
cat <<-EOF > "${T}"/50${P}
LDPATH="/opt/${P}/lib"
- MANPATH="/usr/share/${P}/man"
+ MANPATH="/opt/${P}/man"
EOF
doenvd "${T}"/50${P}
diff --git a/dev-lang/rust/Manifest b/dev-lang/rust/Manifest
index 100560c43e2e..d4e79dc091d6 100644
--- a/dev-lang/rust/Manifest
+++ b/dev-lang/rust/Manifest
@@ -1,67 +1,7 @@
-AUX 0001-llvm-cmake-Add-additional-headers-only-if-they-exist.patch 1493 BLAKE2B 7776443fff61cb2265194946e362fddee9b9a6a121b4f02acafeba2873e997d71e2cea0487d0421ccef6fb60b602986b7e7101fa71ca0839755d3ad0b9757faa SHA512 555df431e915bae6dfd7377303ad3a0e2fd7205b71671d74c4917d5dd88e817389e3ead8b9ebe4686d8c45111335ec94e9bd46a0400e01fe593eb0736f0256fb
-AUX 1.34.2-fix-custom-libdir.patch 1683 BLAKE2B 3c6c0f3266c0b3246e37b394fb7877e69b2c6b847e54b7dcb8dfd564b8dd505ff4f9e0c7ff1eda32f6745fc2ba84a0bec95f3ab2386977711a43f84cb0e58288 SHA512 d5859315789dac323ee8aa514b1c8cca20d7542bf015e173aec3a9560c8fce2865464cf877dc622aca255843153acf40e5e46b394e63b3144112e3540c4f6ecd
-AUX 1.35.0-revert-commits-triggering-multiple-llvm-rebuilds.patch 4921 BLAKE2B 58cb6e6bf7dac8cbd4fb8cb60de61235ad9fbb105172a830a8dcd26661f5a36b50f386a858b319a014e17841349c186a6f760c5776a7848a96af08c39de0e370 SHA512 7d253aff433807453f3d02b3791ac68cbca36937de0e09ca03b429ccdaf9bf8f89578435e2d2901320c371491c08826b29ed665085ca70bff3ae904ed19cd999
-AUX 1.36.0-libressl.patch 10109 BLAKE2B b4e40f307bf8309f494a4d1c9ab19f0218fe13a7940cb740edbd0b946f239e58f7046a1c84733f9a7f072be52276861186b2dc9f44d65acc1afbecf7f2c48c11 SHA512 a48fe6a5b407f11b8ecab1121756a1fe563559fea28364ecb4aac243c7432440f28333571e82e8e114ac4f65eb1bce13703f9cd0dc4a573c6d910e9b5c95201c
-AUX 1.38.0-fix-custom-libdir.patch 4011 BLAKE2B 53020c315a3e98c9a0da8e37842ae8827e3e4823eaf99310ef1908ec3938ca4336aa263600a9906726f9ca8aebc098ca419d35bae1df8e24e18ca84053e3b1da SHA512 b9c6a7b946a4fccf693d69327a961d332eafc2abefb2c91f2220d6660e54bda70a1901c3b5a6807d28fde1e3d07ee76a0bfa32df3264cc262db0174b83ca52f0
-AUX 1.38.0-fix-multiple-llvm-rebuilds.patch 3027 BLAKE2B e1a7d42d5aee18c377fe15b44241818f2486d6dcf50fe273b946dc8db6c5e2d1f60a843eb66e40f738e531bc580affce391e04e2014a4ce5b3cf6c0be6bdc19d SHA512 7d8ea21a6b5d1de8ec0cb9d47ee3311b889e03485d30266f5b04031ae073ff697981590b1ce9bfa9d15938e9fcca605b77353992a8a29dc41a98acd32f4da08b
AUX 1.40.0-add-soname.patch 1690 BLAKE2B 87708762c1870789462cbcff2d66aae1321c4a7a2a3442536b497c824132082c260d59a47c74242bd954f6ef174784d73352188077899927b62fa71707cb7aec SHA512 d835699769f5f68d5f92507c03460a6aa84d0c93b03f71b0a5fdf9efbc4cf4761d1e10135ae8240b91f97fa158424fdb5c30b7aea96672c754f1091e80511902
+AUX 1.42.0-fix-bootstrap.patch 17104 BLAKE2B 21b7f7730e32da7dcfc5cbb2ae73d3e3dab59770151e3ff39073a023fd0826b82a1c52bbb2f5d6c2a1d8b4d9eef40aba399dd56e200aea91e4ed8ababcb3b8aa SHA512 47541c5da1f3cf2d92386ed36c4370475cd045ea7797234de6b6ca5f81b28fe786dc6cc5d476aa1c1b61a470c07b5353c419e69a8e55a2a0a1f303af9e141502
+AUX 1.42.0-libressl.patch 8882 BLAKE2B 8edea3054fa1f88b1ea7fd3712c7aceb0ba79b865f091f0ea0005605947f4c30facdff58a8ffa8915b19fa405d263b7c9491664f24e543f428cbb463780bb3d2 SHA512 c92ee1c174461bc79b32fd87d45ea0d1fc978369f656b78c565d4922499ff9fa3a875f73d032b0b0aeeb9187e07be8a975f6e25576f3cad457bf62ebca9aed82
AUX llvm-gcc10.patch 1086 BLAKE2B 92e4eb43f6b65d01fd0de1b51bf027e2ca874aa3f07b3b56f22c8e9a36a523625259bc850103fff36f99dd6a866c47d751752e95116ecfcd5281eea3d0475c1f SHA512 2e6edf3b10003ee873cfa7b2e6f25a58699df41a26b51a85472a19373bb2145d1259c26128584ebd56470e53c5f5624495f1848624c7819436846f3ad67cb18f
-DIST rust-1.36.0-aarch64-unknown-linux-gnu.tar.xz 139261576 BLAKE2B f8f0ac14c397253298bb321fef83e78fb839e647fa8a9ff891f16e3a1723e1ee69e59686357751b3b4c1a1d1e28632c2047be8795f8a27733ee4bbe8ff71e105 SHA512 77ffd9aa0dfdbb886a51c8d17e3e348c777226e859a48374dad8be20b9a3c7130c7f46d9173753e4ac4a264b45610767ba2625df4192773913892a13a255d3d6
-DIST rust-1.36.0-arm-unknown-linux-gnueabi.tar.xz 140294440 BLAKE2B 25d0ea284d20f93bc82618c61abcd4281835e914426e3e9998ff80d233af4cbb938c05bd3dc9422c3f212f24a08f6bea3f67691860acd8cce60d9f7015556381 SHA512 e1dd8200ade615bcedcc1372d4833c037435a47311ca8a20ebbf914d80add818bf70adadf2b6d33d5a4f04eb4994722978b6b3f83dc6a7cc3c98aea52f244405
-DIST rust-1.36.0-arm-unknown-linux-gnueabihf.tar.xz 140715096 BLAKE2B effed4996df93d2defa843b3356d80abb9a3a69990f5d6c7d6c38f18ad39d2b46618d64007014be931762ab31c2c46a747cc2705b3cd0ec66e7fa888ecfaf81a SHA512 dfabb476a1f31755eea4a0b976991ea083682463e4538f2b7f34dcfa4b6220b82d81fdf4c677294899d5cd740a8a3e012d1b0bb424ae529c05ce92802cf18959
-DIST rust-1.36.0-armv7-unknown-linux-gnueabihf.tar.xz 142315532 BLAKE2B bb6ca7c0af1691c82dd64fcd563573c815147457a69fd0ddef238db4bc5f0ccc7c7ea72429c9d7401db3d431674da70e86183ebad83e7153adad4287de385ac6 SHA512 b31e34f44df17d89f9f2a609a5b5b2320f43691e06ead257d893766abf8764a158adff0265dd60bf1f63dd98f0bf6bc64ae3b9e9f45200fbd7dfcaec3ba85d01
-DIST rust-1.36.0-i686-unknown-linux-gnu.tar.xz 182609496 BLAKE2B 8fa915670346e554f6a881a44bfac42a5ca565acc3426b35901952eae9ea36780181e7569c2db52688a28d680de6fd02764d93219fdf93e7adbba8b8de3b0e6a SHA512 34bcb93ec7a313a28ac20cd853e37419c4607f4035a367015826bd797401a2ada20ee99ae9028b6115c9db8aa1d4f74b74fb08ed09ab528d5946bc26c754b182
-DIST rust-1.36.0-mips-unknown-linux-gnu.tar.xz 134020892 BLAKE2B 0579a8f6ae590780a1bf8a79c6ece290262fedce30721dc4ce405f774d9ed4cda99680da0aed22050147478d2ad3fe391f028a6d1e05b47b509a33d6f1569090 SHA512 8163136f8621ff8b562e50123eef5903de3bf888a230fa83fcc6aa0fad9ea61e1a1cc2248479e6e0f82f0c25014207c7b7186177067a21721156c795d59e8188
-DIST rust-1.36.0-mips64-unknown-linux-gnuabi64.tar.xz 140200900 BLAKE2B e0e9d428d0af610d4dcf4ff38bafdb24001e6644dcad62af6b1782362520358411767b10740587e37dc1ffb85f4036495cdfdb15d68d387988df2512e9a78d05 SHA512 d3dcfef22fc2e130150c64aaeb13a96696c48353300049aca3ba42411548922945192847ba12834d21619d9db26a6628cea8417e3678e52f2742438b862f5d7a
-DIST rust-1.36.0-mipsel-unknown-linux-gnu.tar.xz 136390260 BLAKE2B 63e26f3a9563a065d086daa223b732ab0ab89b424cf3e764d93b56c9efe9d611c6565cf89b649819a71af2195f19c278824ee71e2985b20fe55f20e75b8b6be8 SHA512 c8f6538b677ab8b7154b7a7e07ead85a84ff08bc27d2150189e7597e1f9f30ac418d72684916dc85ae8ff95718ec17e289e1f813303e97cec59e63a7f5c1367b
-DIST rust-1.36.0-powerpc-unknown-linux-gnu.tar.xz 134270632 BLAKE2B 5466f797d778e2112a0aa53a05f6853d9baf261b1c9a53fd05ac4925b7eb85b7b0a3df02a8509f98b800e42ef2a5ec09cb176e0a5893fc5ee57d0805bcba621f SHA512 a02afacc01a92b5575e3526b3b9bfa149f86ec03b3601b269fe4cb05d8f4dfa24b62625737f8ffe67bfababbe791af1584f45979ef012004b7de7771f29a9edf
-DIST rust-1.36.0-powerpc64-unknown-linux-gnu.tar.xz 145880928 BLAKE2B 4922df3a7d7f2d77a3f3380ec4ae9a1e4062cc81abe16ccc978543e4c24c4415bc34db0831b73c078f1ebebb57cea81c600d4e320cb10a4c508a252169d6999b SHA512 20bdd2b427549c866343962abefc4ffc356a1cb6965c754f28f19b05c234cb9c0abccbce036013deba1dc7699c2889ec954fff2b944953385624be54ee7a733e
-DIST rust-1.36.0-powerpc64le-unknown-linux-gnu.tar.xz 149721676 BLAKE2B e00bcc60a89354f6d4b5c89feffe5fe6dd7bf25d8dd2db2878e7c12ffc484e9258f37d80bda2b12f3965d96c73f1a03b6adbd8c20176c383e04f1a229d47d000 SHA512 02f32b544b0a55ba6f6fc4852f18766107bc0ce2c50488db11605e8a10e5965dd44e8332905c00080b08576370f2f0297ecbe12ba9fe01b4c24cdb9fd03ad64f
-DIST rust-1.36.0-s390x-unknown-linux-gnu.tar.xz 159518028 BLAKE2B c5876ea15c9fa56a92b4c0bf2aab472b83381a7a31fbb207e4165fdc49fea2150dddd53cc771dbcb81b01fe43a3175df146d8645d04c556af3556822fc59bf25 SHA512 c637b8f50cbce3333280f43ce4b97d3f75ddae429ee34461837c3c3869e20aed8c5e76f7a58998f617dc0ffc2e6afd00908e5de05f4c7ed9a8c34d5dbc7ce916
-DIST rust-1.36.0-x86_64-unknown-linux-gnu.tar.xz 169600936 BLAKE2B 8bf075f2b5624e4716e3058512b85b70e72ec6f0c8ce8fc38857612b02aa5702a1bb447f13f882a1b96b1f32330d0a8f7f1f1db81827b51cb7429195e070a5a3 SHA512 3f14dda1e09ef8c8168600f4d70ba60cb2a1086ad9edb5eed708d0ffc16fdb9c582ce350a93afcd64b78f87737e37d4f099703835a1ec9837a5721c2335e17c7
-DIST rust-1.36.0-x86_64-unknown-linux-musl.tar.xz 147240872 BLAKE2B dafdd82f972daeace268286a1466eb3e6ad213eca7efc402e349a0f1306406832f7ff4b3dd4ca5663b985cea56977847ecd21e38c4de93829f8ee59016cbfff0 SHA512 3708ab3bf5f00766cea6382acd84d655b3a3864082192a37322172a22528219191a94e1d36d124d78c2723229bea927fcc2d87da1b6512bbcdd2ec5b7cc045ba
-DIST rust-1.37.0-aarch64-unknown-linux-gnu.tar.xz 124322996 BLAKE2B 732dc36933682a18bcd5694b1715af5c442452df8232e2affda8185b9aaf0daf297cf7c4a64fc7d35898e1b3829ba9e8fbe33e8c8f7bc6183b3149f983208ba8 SHA512 c70054f589aa2aecfbd6a89f567306e0cf5d3eb56e5a544ced0a5d212f14033dab10559d22dd6b07945e45a25d8de14fc7897c9d24c0d8149548a06b404ca9d2
-DIST rust-1.37.0-arm-unknown-linux-gnueabi.tar.xz 124741032 BLAKE2B 88e38ea9152546c8a04bd6f93fa8d97d3e58255568a522d2774a2656a4c6dd7bad74633a10b424f6c5f6ca07ea07e473e620ab24dfdbe5c27bb5141ab0f5bba8 SHA512 bd28b8bb60b8e4373693ad9d41bfe62eb12a7272a5d7978691b0c7e1892a2df8d6ff8cf5c25dab805fab1d03dd17c76c1014d395b042118cb24603739c6dbb32
-DIST rust-1.37.0-arm-unknown-linux-gnueabihf.tar.xz 124971492 BLAKE2B 07614242bc500c9ca81a87ed81cc0bada9b467049b7bc2afbe6245b742ac2bec9030feb08f0ef8a2402bf2c2a19722b8b06dacd0ef56edb0522bf41e29080a01 SHA512 e380e2bf862a157cb5e06d27fa8e306474e708ce7e0ffd087531a4fa5729bef104131c256625c05515f6e7dfd43f639ce1fd5e05a2da42ad7f437d578b4acd8a
-DIST rust-1.37.0-armv7-unknown-linux-gnueabihf.tar.xz 126583596 BLAKE2B f836c88801bde52c43726fb728d03b5f145b511a7a4b3d857de0218b87c83a4a2c939b9956aa61cef362a255209ea9e5159d2ac00edea2b9656ef320875f79a2 SHA512 6d9e055f36a2e912f30bebb25afdd3188019a438f208d3db67b38078bd5c37633c38fd48da15ba80640399babf89221e727a2bf43990aee269fcc5c91cd412b4
-DIST rust-1.37.0-i686-unknown-linux-gnu.tar.xz 177419360 BLAKE2B 4b28b002f0db349f9d12f2e4ae63b3fb5e9f472ec4d32d671626a56377cb87b07efd884ef3f4b23cca7072818c597fa8c693f55fd30ced5b408e8c0b0081af29 SHA512 b59377350f82efd10c7afe0f7a28ecbd5355719d841d40c98bec0f01961233f7a19bed2581a111a76cde8dd8dc68a019fa7d3da66cb7ebcb002ba52a14a7e573
-DIST rust-1.37.0-mips-unknown-linux-gnu.tar.xz 124577076 BLAKE2B 299d2b650c8236b94079ce4895e020bf2fe6c5d9b768da47d9716010eaa024c6b8ea743ddc7fadd660a9e49f65a02a8d0da7853cbff2bb6b43bb7771d3d42149 SHA512 1b71e1840470f7dd44cda177b7abf1cdc3f63db547fa36657b9fe5030a3d363afe1fa3ff8566351910daeef91ab4b33be46ef117342b4660fa23f76bee0ace00
-DIST rust-1.37.0-mips64-unknown-linux-gnuabi64.tar.xz 124565528 BLAKE2B e5bd6241ca7f2356638d39e18a71e577972143f37aa05e00e965bcce742828f25adf0f5cd6334c430d464e51b4112baeceb44a9eb41713233df6942b077983bb SHA512 1002173e608d29a2d32a6479a5c530d36e18bcce9e0813607369d3173c49b019a69ef05e8f1aba9b232285529f72837dfa8f4400866c49b6450e0f53028ebab1
-DIST rust-1.37.0-mipsel-unknown-linux-gnu.tar.xz 126620196 BLAKE2B 9174e7a48ba9e0f0bc2fc023991f6005614310a8db76824f5e733b0d8c4eaec6729c00b92e1c45f82fbb77f573c4bdc71004e887b9a170dc88c1a3f6e5ec0ccc SHA512 41f17b2f9bef0d5453153660d0f49aa0c8df0bfd003abac46728a477d3c00f67f5b1460aa851a92605fd628bf9dc18d9b44a16dbfc8fff22d84fd2a0a58b971e
-DIST rust-1.37.0-powerpc-unknown-linux-gnu.tar.xz 124035536 BLAKE2B 2b0b2c34cbe929ff4632e13b41670fa25e765a8b954c3226da67e098a06bb59c1d2387bf64beddaa554e439dd1549dcb529048bcb1e0f00998aee7bf302d6f6c SHA512 54b08c4a5523749ee5054e000f82ffc7ec29562d1194fbc311bee0e953c49eead3c851dcaf34803bb8eb997550a64ec784f40927f52d33b18ceee7c921c0eed0
-DIST rust-1.37.0-powerpc64-unknown-linux-gnu.tar.xz 128662180 BLAKE2B 0df1def64d07b3eabf1aa6c993c7a01b596119abf60b1a3e3e6663b1bb3c6a945146c9cd639ee7d57462e1cbb866badfa83abb7b52b36de4b089552f624c2245 SHA512 e8e5cf1c64bd3eec389cef022e1c7bae4618fb6966505d2e762d10e7f443fece43b8b95c989c020bdf739abaf9c3f036230df46f6477a2ccd517a7bdef2ba0d7
-DIST rust-1.37.0-powerpc64le-unknown-linux-gnu.tar.xz 131763436 BLAKE2B 76b9120e98da09344ce5af39a9b333c6ca8917516ae7108d6cc129fdda4d4d6c21e2ca4c41533e202f63b992bcede5390ec986a262ea216c1340a82c5ba798e8 SHA512 366c8920448000bfb4baa3a47588a1c7bc81e18afb8d40f0efc824e429e9e6900efbdb4c9003fb45b9d8595328bd612bd63f390a7d3dedbb30b7dc57fc12abf3
-DIST rust-1.37.0-s390x-unknown-linux-gnu.tar.xz 141808296 BLAKE2B 73825a004be81cca4dfff1301ea0ef45c9f55ab8d9a9a0343585377d83c4bdc03d3c027622f18e144c9355afe6f5236a6273f84b43b01a221066d3c395f71017 SHA512 14f403d3ce9df2a2baba1db13c9f039d7118d7e0c8285ca19ea0284c32e80c3f786660dedef4d1758b2227f91732b8e7deccbf3f38c2b3491738c1408d6bfd0e
-DIST rust-1.37.0-x86_64-unknown-linux-gnu.tar.xz 165034364 BLAKE2B 3047fff28da00e01179d3a648cb4e5636fa15ac7f4cb9ddc14e1df86d045b69ff3e41691b4a6ef4227c4cb58137524c5e029ba21a2c3a3a171fdb6f46b44f4ff SHA512 c4d48aa12cb929d6600f9cce81bb612c504aa1b3b3f8e76352af3a76b737dcbe0d31e8d139c17884b11aef9f12a55c4908fb8f3ff63dfa92533e4bd0a729914f
-DIST rust-1.37.0-x86_64-unknown-linux-musl.tar.xz 143179480 BLAKE2B 3362af42508b79757b4560adeb60c6f95ec603d5168581ea21c5b9bf36ddb26c6d8690c0a842be50de79f16cba553f16361df229ae3fb5dd3c6cfd79f657d8cf SHA512 dde7c8d827131866eff433d1102101558d40eba982a1b26872d7b03f60613041b0536c1d14f2dd8970e736d849094cfa4b869165371a45cd6295d8026f9333c9
-DIST rust-1.38.0-aarch64-unknown-linux-gnu.tar.xz 235231988 BLAKE2B 03ee6ab2c928134f8dd7e5812b60185b934c2f792b64d6271bff4fb714a9acd0f52a6aee291cc22e7f263cb52173568f5ccfb36edd0eb0dbcd567240beeb1372 SHA512 c9dea8907d05af938c1936139c1fb8673d0db90503552f53645d71637bb7248263fd20b1c16db140694b2d467a12c474015a2077d9b26c782b44e965a01544c6
-DIST rust-1.38.0-arm-unknown-linux-gnueabi.tar.xz 241780224 BLAKE2B ec362bc67d7b4f3e3d4ba2e19b46af61322b3f8284bf7fd66ac1eb006975c6d6aaa12be8b827147ac8ab42cc11d6c540161fc15c8233a2943a078ce89a300c17 SHA512 4ea00aa2b8bccae4fb595c687058af0c82905cbeef93b3d90f5224657bec0f269d0e75af2be6b97b2043442190dbe2df4aeacfafd6cc8916b0fe2ef28908e987
-DIST rust-1.38.0-arm-unknown-linux-gnueabihf.tar.xz 242107656 BLAKE2B 9c43dbe34d99925f34cec339adcedbf71d72515f08ac456293a17dc602ea027b90c552ef891908661f20c2ef07cd7915b9d8936206c65be9e8ae493c699e4265 SHA512 99726beb670af6411ed8dcfbd0eddbce3b964703492686226815f7c0a5c57fd3d0593925345d4f311cd9f5cb2eb9089e80cbb6c62ba767a901e5c5f099e6ebad
-DIST rust-1.38.0-armv7-unknown-linux-gnueabihf.tar.xz 243411104 BLAKE2B 19c9f2daa81170822ec23049945500a2a6c7342d6c03d50627dcc11766f31b592c40773777583b04666c75320f3953404c55c0b5aa213d771136afb3c4638fa6 SHA512 ddbb2c8d2e7112c5871155890c8308080ac800795c685c4b4d06b9dd8c5abd28ee13961686c9be465d1bbd33d476c6478b90af8de0ca5a451f8b07eaff42f97d
-DIST rust-1.38.0-i686-unknown-linux-gnu.tar.xz 298169160 BLAKE2B 93181072784885cbc23efe12e5511de9dcd564610169990e3d7617413a9073e06efa743b3c95d87fb3065c036ff4b4656e1d2a52571ca55b62a3364479fd87da SHA512 ffdea264378510c6df687a173211427f4cb5930553c9d14e33c5776b0e15d435d1be719bba8a1db50f50a3171a38802e090451dc92a6ea764cc8fdca24651f24
-DIST rust-1.38.0-mips-unknown-linux-gnu.tar.xz 242052876 BLAKE2B 323587aab4bb1d70795664efbc5ec61cf7dfc3d33f1e9831d6a2e0d591a4dc60c1d5bf305a4b7f767858ac33d296155c4baf8e2db23c48114f0ae72ba823ef83 SHA512 5bd8faff88ac35431087ee33520c92a52e64262774ea899d610137e51a71efa25403b1e026e509fc0593f6da65c68b561c051feadf482f0ee25875b526992109
-DIST rust-1.38.0-mips64-unknown-linux-gnuabi64.tar.xz 237741316 BLAKE2B d1f758013d53853d4713400e383cb443dae5187156a54ea39d4bd79f60b60e7322785613456a64c1d00e28b575ff528ba01d608cc234e23ead5156ac855b1ad0 SHA512 05884f678b31d7af0f54d8d31ef6d09d1a3a3e9d6d5245583e4ef5a2db47c3aa9e4a226b55678077b759156e41473e8ff9fa8b12c21276882a0bcb53b45d5811
-DIST rust-1.38.0-mipsel-unknown-linux-gnu.tar.xz 244454148 BLAKE2B a20f2ad0bcbf52e61a997271147161c7eed0dadd795ed16d2f0078924b8be9d132f464d5eefbe9c41a1cdb5ae18005e8d82b3b5ef703d5a7a86e4f940b847bcb SHA512 3eed9fa45a8a9e5f67282053933375f862860f6a68032a62fcd286ec39276610914689c83d9bd95302d15d61433304e2aca6f10b87d7eb762950f7574379e426
-DIST rust-1.38.0-powerpc-unknown-linux-gnu.tar.xz 239750464 BLAKE2B 202475f8035504a3d8a81b498c4461cbe4a25d29284dc504a5db2d52740ad8fb35dadbb83ac0fbfce14cefed1209431c16e10a91608b6a90633d8c3a08e03ae4 SHA512 3cc93f76a2e2defdfeb4c18b84a3c950716bdb6fe68446d4dd97d6b5a0ad53b2fc5e97f220a5f205ab07428f5d5a048a3a9de36f90d9685be8551b4be3188a36
-DIST rust-1.38.0-powerpc64-unknown-linux-gnu.tar.xz 240082008 BLAKE2B d15d508397cb4e7b8b8fdd13d6825e05d093b90250c8e261f86fd4588f1f338489c725506b3a1db8bc7a3b2df4979f18854d360ec2de6580e411572d216c1a59 SHA512 26240976834e510fa5a47c35b747b42db4651ea8decdb5498704432c9a21563e603046994fcc2b070d06361bf2c36fe02a15c7f02d88161b299a410f1995983a
-DIST rust-1.38.0-powerpc64le-unknown-linux-gnu.tar.xz 244407488 BLAKE2B 79ca67230dc4d16518421f08554bbc0093f2423469426d1f6f0a925a7bd01b059875ce1a1af29a516dd1cff745524702a8f37e8cb9b43398a32eb78a55e0c3ca SHA512 5f3e1dd233ef17d8a296dcb55738fa119e40c32b154a7575f149bf1475b64e34f7e805f206b9862dc6499be470f179290d8abb7ad8d2b5cb355cef03d95ae374
-DIST rust-1.38.0-s390x-unknown-linux-gnu.tar.xz 291685528 BLAKE2B 1d7678b68c5296fed276eb10a07ffd906cfe569b93b6872872c8aae10fa6f30f0ef4023e55256ee8d2e9f6935fc3391421f0f7758aaad60a0dac15b34074fcbc SHA512 7af64849236e0173d2aea723f3462682fde7d2e1e04d61c28d215163415e1b15cfb8cac57010ce55bdd928ea74076506ef50376d7550999e0fb00f9d20c4f5ff
-DIST rust-1.38.0-x86_64-unknown-linux-gnu.tar.xz 279859784 BLAKE2B 40dab0ac1e800d7c095052800505220019154d40741d7c8872932948d5df62863fe9d1e43596a43411e959c2ddc4fb8d9b4e74525aa1a35352efec781054fc37 SHA512 0b25c3049a7a213e9151c898979ec9b5b45e46a9072f9853d8f048cf401ef7ac343526d6919e68607a490e3e7bd0375b12ed9fb253caed26bb60f46473d3699b
-DIST rust-1.38.0-x86_64-unknown-linux-musl.tar.xz 260574940 BLAKE2B e2ed6d6a9718a571a4592ee770e5ff4cb19ccd4909a32ac5d80fbe24b64ffd59ca5ce5e2d6c76d2fb9ae653a170b94ffe199ff4a23c10bec7ca489f16f23bc78 SHA512 f6670cab1d5bb6e39aec84c831146db673b06f773934058476fde237503211e04c633a1c4be8783c0b4f5bc4e5b67a873963d7a0c7d19b4531621678a73d3c00
-DIST rust-1.39.0-aarch64-unknown-linux-gnu.tar.xz 238165960 BLAKE2B c3e14a7b57d904d0882cb224e2390087cca5a3b4a6246e52e6d064c554721efe7b5542e694a3b6d2115f9914214a94200e0ff31008a5c8df1448b667b0fdb34e SHA512 ad37a8454acb8985a5c2b42d7f8bc4212651a16fb5af6b4314dd97faa47de79893f2f74b516af89cd7e77ef3db64247c4764585eb0a17ac328c9cba5e5b9c407
-DIST rust-1.39.0-arm-unknown-linux-gnueabi.tar.xz 244091604 BLAKE2B 9d09dbd18cfdad062705ee3c1726cee7d4c25dd9a739be451e1bcbd7e6d36316a113f93c0f8309bec3a825435d6245d195fd5da7b35fb51f2cf61f6f638c415d SHA512 1d51d47650cf11bf16b21df0b759de9ae23d96d4b14b5107f062bd240d02d5793542efbf0feaa09403cd35ca38af3e85f1abbd5083b645d40cdb1189d02a8099
-DIST rust-1.39.0-arm-unknown-linux-gnueabihf.tar.xz 244501036 BLAKE2B a6ea74a0249e9c7509e21d20b9c04e59af93f78dde92557b6d449fb51776fb6e31d5baa19419547d9baf10768423642a0489c828c5919c055981876ef2282603 SHA512 291d9963f67708b5b14f1f27bb9e7d374fcd7a5d24d932db02203aaf89d06db8178305eb18e4dcd56cce81dc5eb80d2fb019ca94a99c06b548f0588ae560b7ac
-DIST rust-1.39.0-armv7-unknown-linux-gnueabihf.tar.xz 246114456 BLAKE2B e412273d164fae3f7c1702601a4f518b15acdd8f75746de7fa0af63a67a7873ce27b7e5bdf9d1354508ca0b0d20705dfd26659c6355a12c6a2cc59ad8d2a2a2a SHA512 db2b001a5587e2d5c8cdcb53c974f2332e76f58e362cba55fc971d7244754f1fa0b7e708ad7e73e7250652b442f06929dc1e8981536d7d76850b45ade275d406
-DIST rust-1.39.0-i686-unknown-linux-gnu.tar.xz 297665804 BLAKE2B 0024993e80174c0dd71c5f781ea466690fb18e3b760b11382613cad10e6112122d90c54b2a7451c049711c13e0f3da979bf8e8d2e79723e7a484352303bf0337 SHA512 930546e79c0b1105eb0604ae33ccdbd8b00b56e56d069f19f0d802093a052fd3f940eaf1390cdecd79833b0c70457ebfee2ce3b9674fff72df1367076584394a
-DIST rust-1.39.0-mips-unknown-linux-gnu.tar.xz 242857808 BLAKE2B a2484913ce31ebae0be04f13dd24972a34206b00d5e141f3c5f8e43ab852547b149bc1002053276557d3dd18d231c2772d5817137fd7f615f155c742f0379af8 SHA512 ab9862a55fe0550c4d19c8fe4fa912661594b56f5f05b21c3ee660734a2d119b5b2dc70b9606af2ba91bd2911fe84c847480a828fb3f0a9d30132a70514d26d7
-DIST rust-1.39.0-mips64-unknown-linux-gnuabi64.tar.xz 238468588 BLAKE2B bb48de21d7a45ebb2464159b09974530572e08cf7adfee4d90b5280ed49867a591f9d3e21069868fecc14242649a9d68041baf07d9fb6c40ef8b3780ed8ab70f SHA512 93531394a9a8ed5edf3853f0d5c8faa795982e9c6a5a0a92832c2809c8baade736eafb8c0626ba6e543b05f693753c256b1d6290d5c41162d6129168ef1b5702
-DIST rust-1.39.0-mipsel-unknown-linux-gnu.tar.xz 246030532 BLAKE2B bfece8ee21b8bf0df389331ebbde98dc81810e4fb4c82e21c7fe2a85dcc27465f9a49e599bfdedf99a15cf479ff6c5baf27cc36e77afc90f281ac535ac0a92e0 SHA512 74536b1a1ce15f27ab8a1be7c9a7edb0638edf862c8f1464c98942287da1e7d64abec83be21634ddba2e88c0f9cf1456c000adc4360712aeab214ad87a44c9a7
-DIST rust-1.39.0-powerpc-unknown-linux-gnu.tar.xz 240597272 BLAKE2B a338ed495504d7aa290cfff3af37acc846b066921d0b84ae552ac4c127d24c645290098a711d3f2d17bf2a20f24356f24d67ece5aea7582dcc8a74cb6533209c SHA512 fa4ee683655d96c7ee1df12a39d50b1486c1e34cf4f10c09c6eecfb33b6f67b526dbcd02e1846d3e16db7103c04ee7f388a419ccfdf68ccc908b511b1fb8b7bd
-DIST rust-1.39.0-powerpc64-unknown-linux-gnu.tar.xz 242170220 BLAKE2B 3a5ec3b57c3611efb97f4f849cea3519f0bf4f0dd92d135b82603b10d0f1fe3b2832194ee989e38134c75a9c98a1402fc14382d4976d4f34680fbbba8de279cf SHA512 ff99ad6b120631346af8afac092f8b620e50fb8e118ef1e0ff5668103c01f4b9f082fae72e31a767be35d0647fd9fecc7e6b7b215bb1906e06b20bf3e2685619
-DIST rust-1.39.0-powerpc64le-unknown-linux-gnu.tar.xz 247026740 BLAKE2B 90269aa78eded26c7d54c2e38a08af5f2a5cc3bfb86c268a12050315ba48f232f324b1fcc8e4abae49489cfd9df83edf6d04424ba14fb77f15daea1f6b5c242e SHA512 e15585150370514e580e171faa749218aeef04ce0493f5ad3928a0cb6cd0bddbf7c75ba8ed0783a2c954bbd7166e0445b4c33be4ab48479b0104f032b3d4b0af
-DIST rust-1.39.0-s390x-unknown-linux-gnu.tar.xz 298119784 BLAKE2B 82f64163929c129e2aaee8909401c4f302496f63f8d9d366d6f7460b4546d7657ea38bcd864ecd0f58a5995e47f7f5890e4523dcbcbc51e3bf4085536b07de5f SHA512 d2b588f802d4fbe153dbd88cb745d34d1f5434cb3134cc9e091ebfb336a48b4c886cd80311cf92b5e1c6a16374302853a67e8a0576b02a89dbcf61d27919a045
-DIST rust-1.39.0-x86_64-unknown-linux-gnu.tar.xz 284967620 BLAKE2B c5d2c2a11c4f66105ece51e7ca45ca6a9e0d70215f94ce52f6e61b20995ceb611e45bad1e5e9f33fd444bb0a58a2edb691f1a65a1caf36ad892c034e00104383 SHA512 02ca6c821877379d8bd0bcc38281a87e6f86bdbae1270da19e41336cc3a812d9c11c1e976655c192c39153f92cda90ddbd7b4b0bcb4f6787d6d354d2be827a8a
-DIST rust-1.39.0-x86_64-unknown-linux-musl.tar.xz 262751216 BLAKE2B f719f4168f3d463f5184b9f72990f2e43b99f75902f762f5736e819f47ad451a325cbc7b7140cb322b46b5dc51253ebb8aa2a16b0f792343dbfcab5a91ac95a4 SHA512 155458717aaaaa82b202fae180c094e5a40f45071c3a0f6d27423a612ffe926058642fc82aaa7ea091963108b7a819d6156294149648e5b0a5d5b6196028f4fb
DIST rust-1.40.0-aarch64-unknown-linux-gnu.tar.xz 80285104 BLAKE2B 857a3148337833a216912b732c017827d0ee2869af41d114f3a743fbc8bd0ad851c4c42dca63cbcb8f15c816a8c45bd60049fb60ea80a85faec23000140acab6 SHA512 f601e4251e08a6d66edb0489b6ab840b57622b506547e81036e6dfe08eb71005a22a2777a0b8b2d07a6f88286d58f513482b863116311a6f43c7284769af6e7f
DIST rust-1.40.0-arm-unknown-linux-gnueabi.tar.xz 82051152 BLAKE2B 33c62780b3f228298217f7a16e00348cf3c29c504f59de414a0e8a3c506c801d87f460a7bf6107bb7856249c5a5b8fad94499f7f059602b99252ef85dc5b973c SHA512 2098ff12393dd99004ce94f49d445dad03184a108ea8249b70e51abd44bd510f8a4ee43eba3b32967b1a543951e8eec5b06c85692312821b5c855c1d5f034e94
DIST rust-1.40.0-arm-unknown-linux-gnueabihf.tar.xz 82518972 BLAKE2B 2861693efa9bbd54e09bd693886941ec13b09f1901d384f24534b2852f9cb3b59fa0eaac1ec16bc6df49437cf08a09eff6c649729b0b8c2b4d8def6d7111d229 SHA512 994a91704e65e126bf3d53aa5ccbf9f92f05495a68db1917754f8bf078f16b0255797c884b4f2c70033ae0c94d5f41ad73e1af2e963580ebf56c90a6bf76630a
@@ -76,16 +16,22 @@ DIST rust-1.40.0-powerpc64le-unknown-linux-gnu.tar.xz 87972788 BLAKE2B ad1e460db
DIST rust-1.40.0-s390x-unknown-linux-gnu.tar.xz 95398844 BLAKE2B e897ac3e1f46a63c7ad14e0e5229b7028ac325256e084439bcad0ced631eb26d50ca72710c46e59accb0e3d0574d08a9c15455be59a8d78173387d35ddd3bed7 SHA512 e71d3a1d85975653b6d972a4854c9e53be7f2d093a601145261c97f7917f869399fbc6322a04f63b782a5a28b91c3be40041a8c77367d19dec8d0e857cbbef14
DIST rust-1.40.0-x86_64-unknown-linux-gnu.tar.xz 110186516 BLAKE2B ad89d8cecbd565b23c98ec095bad218de971cb4bb89924bbcb012df6c9ecf0db2b50d624abdf6b050fe1f5067aea9311dc01852950a5ca5e993e99f913fc5dbc SHA512 11a2ad1d8b9e91cbe9ee6a1954d46ac75eeaa83f0c2425a8ad70d191727b02e86ead33d6464222effca6f5134c31a165801a854aa57bdb5f12944d605de3c1d1
DIST rust-1.40.0-x86_64-unknown-linux-musl.tar.xz 96869284 BLAKE2B 61cdf2eab51455e377e079e7013959ee51358c9846f8442f81a3240062af573f452a0f5f007e63cbbcdd0db98ac22ab0d4f3006f6ef30327b609d303410cba8c SHA512 3e6d7cf7b24c09d13266e06f20ab317c5ffb68de3242719c71e95c3d778269c4076e06badfb488e8fc223b822246ebbeb888d4168ddf6e2401793e23e77810bb
-DIST rustc-1.37.0-src.tar.xz 98654252 BLAKE2B ddee92c7959a0e1ee11ffe5ded6017703cfac7bbf2a00dc46c37ed28f1cd1d31e1d5b62cc1a5ae2d55d64f8705d0cb282f4968deddf36c3152e5e0cfdfbea67d SHA512 bfee43f578e6d44ead950b870b9fd31087e1bd3f917611f5dce7ad56504b83185edf43e297e8d1304e9e97b9a580d1e6adf6608ab8ed6dee0dc8c5153cdbc5d4
-DIST rustc-1.38.0-src.tar.xz 96163304 BLAKE2B 1e900b44db64727477ccf8e58e0ebb9ec209bbeb349816b5f7937e58c165db8befae33c5667732e5aaaa677c5a6c1e0229d9969ab8967fda9b8d7a593e6c5eb6 SHA512 b756d29a7a222bc7b5c7f42ff397346ab840f78e559f93e6e36b65e76eea525cf429899fe4de9fb8966623a2225b552feef9fa831bee50f9e25c976fa2af8c0a
-DIST rustc-1.39.0-src.tar.xz 96495140 BLAKE2B 6df6bf0c3b38c28753713acdc477ea6929740c32893171dd9b8620992439e45730ef6f9489a6fc411ff5884c661ac4c07b7b93f5a4174207ed53351d2dea09bf SHA512 8610b2ec77722087c572bd84ac562a5b7c5f1a644aea58c5d5daa07a9aed242703b7816e73e2eaa049f773d5907859e259744a0de700622df005584fd798dab0
-DIST rustc-1.40.0-src.tar.xz 92306352 BLAKE2B 762b9592414e5c816540f6fd37d07b3b0ffe97a151968cc8ae77be2fda03a6d66905192985edc65055cc7811dbd90faa2b2c056481f72161c6f7ccbcce13671a SHA512 b5ac3079acefb62d3c985b77f624d7fb68de23a59396fed9ccb292db61641c064f3146ee54d3cf59067b17ebfaadd14a6b2b466def60316bb5b13ba3aef01e1f
-DIST rustc-1.41.0-src.tar.xz 93763052 BLAKE2B a68524fb6e3abb43d52ae6676a1e9de1c5d33606eaea6e93bb518f10b196d620f2f370c631c32e39a624af71a3bf6911662a9df7eecb8dde78a20c8054a349fc SHA512 0e30fe53b77860085bea0f1f60315eb835b00dd796c5d1b98ed44fe6fc27336dfb064908c86e1669a9cbe81c9ca1495e1c259a8a268bef23b23805a719cef0dd
+DIST rust-1.41.1-aarch64-unknown-linux-gnu.tar.xz 96755608 BLAKE2B f8635737089bb028cfac6d6478c4226a78c2c8a8aa12f28cba267744e2e915e062f49edb505f26b6deaeca0d2fdb4ec4b83e791f87bf1eab6c0536dc41e2c641 SHA512 54eac5c380b418c1714931ead7d6284b225bb427fcc501e147240000b71d31b667e308aea7f38f3299b1311ab04f19011b914d37a4581c7a64028965569cd58e
+DIST rust-1.41.1-arm-unknown-linux-gnueabi.tar.xz 98856136 BLAKE2B dbb3996a9ae302290886bf1cd4642d99a9b3f883f9d39817bb15f105565147e416e23d19e0d08314b08ed441f1ac528c20d8bee27ccef68cb585d8ef64a19e45 SHA512 1b01acd430af3cf99d838aa367dec4f6e4bfcec91388d4a2323cd781d53246edae0f14687b087b73b87c349f243e3acabe193538ce31303f07d59c6a03c31565
+DIST rust-1.41.1-arm-unknown-linux-gnueabihf.tar.xz 99107336 BLAKE2B 0dd84e7ad6081b8fdcfcb2691496ed3a493e08db4757e6d3bb2aa9a36fc6f020772a84bc21d0c60efeecf635512f25737b8d6b49a53020c4045c89c5b89881d7 SHA512 462e6d354a4b3b848781bb059decc5eb1ebb4d8a31651623d076a2654e2c8fd02f0f87ddafb124efa40cb134c9438eb252035c2b5bfdf936881b14a23bfbfe9f
+DIST rust-1.41.1-armv7-unknown-linux-gnueabihf.tar.xz 103399676 BLAKE2B da35342be05e58c11e6f96ab566b6a2f334d6975d4251deb2f41069d4a549ebf58aba43e1f07b99dedf0426ab0a8e8616b32799ca54a5f601d70910deca3efaf SHA512 400bf8d013fe5030243bc0ccb7066ea3d03a2c10727e04b6830ab91dfe9b04f78cfef10794a1c7bb6276fb00c86f1e1c42a74faba19f3125859b3464726d01c2
+DIST rust-1.41.1-i686-unknown-linux-gnu.tar.xz 120834812 BLAKE2B 4615eeb7c63392f66487243743fc57677654e232c786f9f970a9be9996dcb08e265631f6764e09e0444f8bb767b9c76366a26fe8fca9dcc149c81df5c2a3dd18 SHA512 c6d74b2653c537043eb2ea721095ff053def592b4c330bdc104690cfb51d648f515288cc0451743d94260f18a55d6757bcb8eb1e6c0217da3498d08b681ca6af
+DIST rust-1.41.1-mips-unknown-linux-gnu.tar.xz 92620720 BLAKE2B dff1be71d459e0256a19fb88f324e59cbf2e10fda693157802a63a08329c7dd4feca4b260510b3a1d6afb4afc9ed9dc549b741f598f3aedf50a982810d0bd140 SHA512 4fdca72b98a4fd25a2ddf33e0f31d9549c39fae9dfad6f1648556f144f82cfb2a487f6777d61476ad18bb0a0ac63810b99bb09a18719ec5344e89fccb16ac693
+DIST rust-1.41.1-mips64-unknown-linux-gnuabi64.tar.xz 96215100 BLAKE2B c52d564010d56df01bac6b2f447d56c00855c52ed8ebe6a2ac1b7786e8c73a1d529be7e7d5a4f7b427892494782aadcc4c8cc54157287d43f58938b0a57486c6 SHA512 2ed84ade11c6f4961e83e06a61d998a7abc9165cc384cc69470658e8244dc399e30c3f983a9f11b0bf88032d855bc47fe6d71f5db95cc7168e6f810c69095633
+DIST rust-1.41.1-mipsel-unknown-linux-gnu.tar.xz 93365592 BLAKE2B cd0d16f99a0976076530fa601f9bfeb61e1204bc278f78db015bc8d1629ce8f19da61a12573fdf9cf0d3d29e56f6915338aeaea3ef4d9b374eeb4095189fe71c SHA512 a0b7cc55ffeb0911d1d82d93cf2f4ea2a683ee76a783952b2f42c0b3c3d02b2bfc7df6f5762af91e6d02963e22a08ba26f143f594dfd6d41ad8198f7e8a862c0
+DIST rust-1.41.1-powerpc-unknown-linux-gnu.tar.xz 98530136 BLAKE2B 41399fcc9f1d88cc5a6fe0651012e4ebd1addde428c22611c30918a09ddad3640fb326bf48f94e5d12a610d2709eecf95c5d023f10bc6636eb6de1808a104e48 SHA512 545b2a4459bbfa7049755cbb63ad6e2917bf03cb9568eccbf3b01ea8f846263fbdc97ad29b42c440fa92dd9737b398196c1cdaf96c9716bba2f9e1d4a3a20125
+DIST rust-1.41.1-powerpc64-unknown-linux-gnu.tar.xz 104058752 BLAKE2B 10b3e3e4970fc05952f83e80e7d133d308045bdd3342199e885d2e6add113ada7959a93010046f48b1fedfe85f0346793fc54e0bf0c55d096f82622e198a928c SHA512 50367685783085cc384be944d4321dfde850f3a0e94de0625a08f17160af2c0b795276f96574d1bea84092cbc1cd3cde619d97fe2e37b07ead17f49164e1c995
+DIST rust-1.41.1-powerpc64le-unknown-linux-gnu.tar.xz 110594504 BLAKE2B eaf9c92ea9599314d12c5f9d0b654b523ceb8f40cc779cdbc2d50b4b07e0a37cd42d34000f0ace9c19154a1bd17110c097e30ee2b617f3a29de4966bb9303301 SHA512 1b2bf6d35321dd0a0fc9735005317f09f8b9a81b520612484530e29156ea254d5cada583e44f7e4a840edde09d70c34f7ead1208d8aa6037c652540dfa38cede
+DIST rust-1.41.1-s390x-unknown-linux-gnu.tar.xz 114814112 BLAKE2B ef22c377e1d89ef4ebe78df19d91bcf042e2e1d8997be80d7d40998b18f6b44f8bb1232b1f72e42e3ffb6d1ff235f3cd2f04854e996bbf7be8f6d5d7299e8514 SHA512 f809adc626876df5c6e050362d59189ede5e3991ac41fd129922540abeb728f618e1a3f3925cee34895de5e037141aabb1f8c2b94d4069945d174e38446e8153
+DIST rust-1.41.1-x86_64-unknown-linux-gnu.tar.xz 111202140 BLAKE2B 226c68b1e97cc9be82e81f6c9e065e08514166a65a57159c2f63527063ae5f514650afc2591e0c4854ecd0239dc82cbc9a97b99412608645aca879a71354d857 SHA512 c75d4a18cf9300c6ab480d34c5e4b41be971535931455239330cb2a0e927bcf9cf102498cad5dd1d5d802fd1d9c9d214b80e8ff15aa6be68d3e7f41420cad666
+DIST rust-1.41.1-x86_64-unknown-linux-musl.tar.xz 96076684 BLAKE2B 3672e24a83c1e4c97a0844f9522a9fced19d5ef01c89d44e54bba8683514a86f7a14ea2e8c2f28d03c65b7e2e0358ff3cea2f85de1e69eb5334c55e18a8c8e4f SHA512 29e7b2aae35017d7f4313e0a482712390ffec752e62d8b1bda95d56a1f93ba882a8f610b469b5d2d7fa3d6d35c2cdc4e45d219ad85b8a3f71ba6ce04b1add48b
DIST rustc-1.41.1-src.tar.xz 93754192 BLAKE2B 235ece650d0c75e1c8700ce73d3811997cd0d827b850a6dd435a269f3f86d85849d54755ea346c5ddcbe0d1224836fd78213f6abeab4a9a8c4c3e2d8a05ff7b4 SHA512 ef33565c9cf4e27ca279072bfed3301e0276c09407d49727640746ba78d289de285278d64b1cce8708461fd6c97c7ab2ea8d56e7a4c4a23b2e66e2d164c35fc9
-EBUILD rust-1.37.0.ebuild 9481 BLAKE2B a5348fff749d7ec0e36fdb49aac73af9ab0b838bd72c57e76c475705afedebf515f553dcf7fd36680266a8a8601abdc04ccd93b1881c4d39a2bf86b8e7077f1b SHA512 38ac15f899841ef3e59293bf8a26242825c0a73cbba255a86f3d83ecd609497538ad86ed1fa8533975db183a9d6e38408f7c960a7c9c20882ddec60a42668d1c
-EBUILD rust-1.38.0.ebuild 9439 BLAKE2B 6e9f86c2dbd9a31df3f8203b239da85ab2dcf702609c4c189ed9ac1a319dc8630691e21e64873cb99ac1bd8521cf20b4731938492dbbce5121f613e8b7f64cd9 SHA512 d7f3d0bc258d0acb66cc6552c1da21a441399ff3249a380d6e835e1423763daa3e6c7e29c886f3f51d9017b44c9abf4c96912d8472ced46c748d57be4a6afbf8
-EBUILD rust-1.39.0.ebuild 9587 BLAKE2B 14aaadef0d43324ce8f530a93ac651a7e98e3e5014ac62bda1a860ae2f71f65a8a6f3cdb0ccc7662f7f63d9bb7f5afd5a8d388a16022b8114ab7ccce15ba119a SHA512 d83a106687255aaa099d352e389f6dc788f0aaec424b7558058222bd608949e890c6e6885968e01f65376b3633f4e48e7327369ebbbfb49f71bcd46afce585be
-EBUILD rust-1.40.0-r1.ebuild 9862 BLAKE2B 9db4fcdee5d3d87b6ab651575d7c5039c41eda95c32cc12623ff70cb02b16c228a727767048252ff9daed49ee611101044fba00ec3df5e99a26643397bfc9f3b SHA512 8ad7759e2786169836bb4f96416ea7bf1faf0fa24feae0772823ef75198b7463396b30460a47025200d91d5ebb1562c550965cff0a06410ac8a8aaf17ba9384a
-EBUILD rust-1.41.0.ebuild 10120 BLAKE2B 031a4873d919ed317de00ada96f833356e327adbd000e30d11460f08b6abc6069aa48f309420746f6938d9e4a42c839a03569f69d2ba8f11fe57852d9afd6a0f SHA512 7ae78ec9e05138cdd71cdeaedf388a7b8bb2958dcad743e59d08f20f3422699bd953fc8ef64a709ced20061b56281b7584224e855d147e51db726ce76923e492
-EBUILD rust-1.41.1.ebuild 10133 BLAKE2B b42a2bca72b9297e91d5b05b66b0c748ec16ffac635357a01f92d4f46f0f088f256697fa6085cffefc2a00dc58b2ff1d967619e2214f3157882a38e861fe2156 SHA512 eaf7bd122efe8ef873c8feb875a014323506fd6b3b44c8f7b4c43194c04d7bf0116ebf2892e1dffb747dc99db2865783f00dc7511464e5886e0fdd7e02f27d61
-MISC metadata.xml 885 BLAKE2B 0c22dd218172717e47fba5c3294746470a9adcba729a3585937748ef8e4b8ea118e036753c332eace3dbc6ce82406c15f35948d1857485abe7761c7e4f299c1b SHA512 56f1535f91d2d0126ee70d42ef0ac3ac0e491ce1c539a159db6c429104881227676f6e29412f090631e728093b0902d330c00a8d4d8027c1a07e3632c8e36435
+DIST rustc-1.42.0-src.tar.xz 94186592 BLAKE2B 82298ef3da44188546bb945bcbfc1af630e6a4466b643667da08a04a33c6417afd68fc86302bdd22ab36c208fdb13cbc479e762d1217c05507bbfeb13bfbef7e SHA512 589bfdc92deedd33b8ea0df7f7c64c2a9a085fbea64936eff92f81e812309c060ed7a7adc96f6010d7adf62a68434a230da0f6c5b3540df4e0a5c6de05a31b16
+EBUILD rust-1.41.1.ebuild 10125 BLAKE2B 827edb1028a2d81d5c583f476f62fb1f7c4add7385edf720754202e3fc8f19126fb39ed2212ea99b65d5f285b22c8155a38e752a8f8404ebf3f825bd3531277a SHA512 92690ce3696ac7c0e3d224f5be25dcb5f7313e3035b95144bf734de8a7d96b98073423586af021f700206c8063f41bb3c11efc9f201d1a33743491932ff073d2
+EBUILD rust-1.42.0.ebuild 10585 BLAKE2B a762346e53e954be7e79c12446ecd1f2749bc73aa14e24d998644b761fad1c1ced7ef400f7582c16fd28ac49e6287edae34977a673e6365f91f7ca38034ee79c SHA512 27d4ee278494e3ca2697acd9da5a6e053fcdcbbe419c344034c19c4813aa419c4cca64e5801264f7cf324d0c2c5e71f33bdf2b7fc0a93404f557424289f5e189
+MISC metadata.xml 1083 BLAKE2B 7a7b093c22dcaef58bd67f9c2fd84a000696b234d2bc27315999bf6751cfd2a79441fd22efc284a542ecc84ce1a12ff9ca3495d249eaffa5bc1722b385c6109e SHA512 bfe8c140753e93db67244c92e9a7d193691ceb67de796c30a851966a1262bc5c897ead6e13d728775fa524215b6851609dcbee582022d9d75bb8d1e6fabc4ef4
diff --git a/dev-lang/rust/files/0001-llvm-cmake-Add-additional-headers-only-if-they-exist.patch b/dev-lang/rust/files/0001-llvm-cmake-Add-additional-headers-only-if-they-exist.patch
deleted file mode 100644
index b33311c0de88..000000000000
--- a/dev-lang/rust/files/0001-llvm-cmake-Add-additional-headers-only-if-they-exist.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 1f68002cb725c6a8fb5ca8425c1c86495a053f4f Mon Sep 17 00:00:00 2001
-From: Michal Gorny <mgorny@gentoo.org>
-Date: Thu, 4 Apr 2019 14:21:38 +0000
-Subject: [PATCH] [llvm] [cmake] Add additional headers only if they exist
-
-Modify the add_header_files_for_glob() function to only add files
-that do exist, rather than all matches of the glob. This fixes CMake
-error when one of the include directories (which happen to include
-/usr/include) contain broken symlinks.
-
-Differential Revision: https://reviews.llvm.org/D59632
-
-llvm-svn: 357701
----
- llvm/cmake/modules/LLVMProcessSources.cmake | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/cmake/modules/LLVMProcessSources.cmake b/cmake/modules/LLVMProcessSources.cmake
-index 7cbd2863500..d0be0e8b3ba 100644
---- a/src/llvm-project/llvm/cmake/modules/LLVMProcessSources.cmake
-+++ b/src/llvm-project/llvm/cmake/modules/LLVMProcessSources.cmake
-@@ -30,7 +30,15 @@ endmacro(add_td_sources)
-
- function(add_header_files_for_glob hdrs_out glob)
- file(GLOB hds ${glob})
-- set(${hdrs_out} ${hds} PARENT_SCOPE)
-+ set(filtered)
-+ foreach(file ${hds})
-+ # Explicit existence check is necessary to filter dangling symlinks
-+ # out. See https://bugs.gentoo.org/674662.
-+ if(EXISTS ${file})
-+ list(APPEND filtered ${file})
-+ endif()
-+ endforeach()
-+ set(${hdrs_out} ${filtered} PARENT_SCOPE)
- endfunction(add_header_files_for_glob)
-
- function(find_all_header_files hdrs_out additional_headerdirs)
---
-2.21.0
-
diff --git a/dev-lang/rust/files/1.34.2-fix-custom-libdir.patch b/dev-lang/rust/files/1.34.2-fix-custom-libdir.patch
deleted file mode 100644
index 2856d98cdc50..000000000000
--- a/dev-lang/rust/files/1.34.2-fix-custom-libdir.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From c1aa2a464ed1a0fa2430a1e604fe6a3b9d785048 Mon Sep 17 00:00:00 2001
-From: O01eg <o01eg@yandex.ru>
-Date: Mon, 8 Jul 2019 22:49:24 +0300
-Subject: [PATCH] Fix double resolving custom libdir
-
----
- src/bootstrap/dist.rs | 9 ++++++---
- 1 file changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
-index 45bc77ec97d4..5ddd1c3da949 100644
---- a/src/bootstrap/dist.rs
-+++ b/src/bootstrap/dist.rs
-@@ -485,7 +485,9 @@ impl Step for Rustc {
- let name = entry.file_name();
- if let Some(s) = name.to_str() {
- if is_dylib(s) {
-- builder.install(&entry.path(), &image.join(&libdir_relative), 0o644);
-+ // Don't use custom libdir here because ^lib/ will be resolved again
-+ // with installer
-+ builder.install(&entry.path(), &image.join("lib"), 0o644);
- }
- }
- }
-@@ -493,8 +495,9 @@ impl Step for Rustc {
-
- // Copy over the codegen backends
- let backends_src = builder.sysroot_codegen_backends(compiler);
-- let backends_rel = backends_src.strip_prefix(&src).unwrap();
-- let backends_dst = image.join(&backends_rel);
-+ let backends_rel = backends_src.strip_prefix(&libdir).unwrap();
-+ // Don't use custom libdir here because ^lib/ will be resolved again with installer
-+ let backends_dst = image.join("lib").join(&backends_rel);
- t!(fs::create_dir_all(&backends_dst));
- builder.cp_r(&backends_src, &backends_dst);
-
diff --git a/dev-lang/rust/files/1.35.0-revert-commits-triggering-multiple-llvm-rebuilds.patch b/dev-lang/rust/files/1.35.0-revert-commits-triggering-multiple-llvm-rebuilds.patch
deleted file mode 100644
index 1c6c8ca404d9..000000000000
--- a/dev-lang/rust/files/1.35.0-revert-commits-triggering-multiple-llvm-rebuilds.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From d6bd0a479ceaf6abdd696c3b955a56f66275c562 Mon Sep 17 00:00:00 2001
-From: Georgy Yakovlev <gyakovlev@gentoo.org>
-Date: Sat, 25 May 2019 22:21:16 -0700
-Subject: [PATCH] revert commits triggering multiple llvm rebuilds
-
-this reverts the following commits
-https://github.com/rust-lang/rust/commit/105692c3ad281c63bf0f75a26a66bb9cff5b4553
-https://github.com/rust-lang/rust/commit/975ba58f42b34ff07cd7c2bd73350daed2057186
-https://github.com/rust-lang/rust/commit/e1daa36ba7df88788c2684bbe5ff6eb37f1cda69
----
- src/bootstrap/llvm-rebuild-trigger | 4 +++
- src/bootstrap/native.rs | 46 +++++++++++++-----------------
- 2 files changed, 24 insertions(+), 26 deletions(-)
- create mode 100644 src/bootstrap/llvm-rebuild-trigger
-
-diff --git a/src/bootstrap/llvm-rebuild-trigger b/src/bootstrap/llvm-rebuild-trigger
-new file mode 100644
-index 0000000000..0f18c6a4ac
---- /dev/null
-+++ b/src/rustllvm/llvm-rebuild-trigger
-@@ -0,0 +1,4 @@
-+# If this file is modified, then llvm will be (optionally) cleaned and then rebuilt.
-+# The actual contents of this file do not matter, but to trigger a change on the
-+# build bots then the contents should be changed so git updates the mtime.
-+2019-03-18
-diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs
-index fde40b0d1b..3babbc9e10 100644
---- a/src/bootstrap/native.rs
-+++ b/src/bootstrap/native.rs
-@@ -67,40 +67,30 @@ impl Step for Llvm {
- }
- }
-
-- let (llvm_info, root, out_dir, llvm_config_ret_dir) = if emscripten {
-- let info = &builder.emscripten_llvm_info;
-+ let rebuild_trigger = builder.src.join("src/rustllvm/llvm-rebuild-trigger");
-+ let rebuild_trigger_contents = t!(fs::read_to_string(&rebuild_trigger));
-+
-+ let (out_dir, llvm_config_ret_dir) = if emscripten {
- let dir = builder.emscripten_llvm_out(target);
- let config_dir = dir.join("bin");
-- (info, "src/llvm-emscripten", dir, config_dir)
-+ (dir, config_dir)
- } else {
-- let info = &builder.in_tree_llvm_info;
- let mut dir = builder.llvm_out(builder.config.build);
- if !builder.config.build.contains("msvc") || builder.config.ninja {
- dir.push("build");
- }
-- (info, "src/llvm-project/llvm", builder.llvm_out(target), dir.join("bin"))
-+ (builder.llvm_out(target), dir.join("bin"))
- };
--
-- if !llvm_info.is_git() {
-- println!(
-- "git could not determine the LLVM submodule commit hash. \
-- Assuming that an LLVM build is necessary.",
-- );
-- }
--
-+ let done_stamp = out_dir.join("llvm-finished-building");
- let build_llvm_config = llvm_config_ret_dir
- .join(exe("llvm-config", &*builder.config.build));
-- let done_stamp = out_dir.join("llvm-finished-building");
--
-- if let Some(llvm_commit) = llvm_info.sha() {
-- if done_stamp.exists() {
-- let done_contents = t!(fs::read(&done_stamp));
-+ if done_stamp.exists() {
-+ let done_contents = t!(fs::read_to_string(&done_stamp));
-
-- // If LLVM was already built previously and the submodule's commit didn't change
-- // from the previous build, then no action is required.
-- if done_contents == llvm_commit.as_bytes() {
-- return build_llvm_config
-- }
-+ // If LLVM was already built previously and contents of the rebuild-trigger file
-+ // didn't change from the previous build, then no action is required.
-+ if done_contents == rebuild_trigger_contents {
-+ return build_llvm_config
- }
- }
-
-@@ -111,6 +101,7 @@ impl Step for Llvm {
- t!(fs::create_dir_all(&out_dir));
-
- // http://llvm.org/docs/CMake.html
-+ let root = if self.emscripten { "src/llvm-emscripten" } else { "src/llvm-project/llvm" };
- let mut cfg = cmake::Config::new(builder.src.join(root));
-
- let profile = match (builder.config.llvm_optimize, builder.config.llvm_release_debuginfo) {
-@@ -251,6 +242,11 @@ impl Step for Llvm {
- channel::CFG_RELEASE_NUM,
- builder.config.channel,
- );
-+ let llvm_info = if self.emscripten {
-+ &builder.emscripten_llvm_info
-+ } else {
-+ &builder.in_tree_llvm_info
-+ };
- if let Some(sha) = llvm_info.sha_short() {
- default_suffix.push_str("-");
- default_suffix.push_str(sha);
-@@ -283,9 +279,7 @@ impl Step for Llvm {
-
- cfg.build();
-
-- if let Some(llvm_commit) = llvm_info.sha() {
-- t!(fs::write(&done_stamp, llvm_commit));
-- }
-+ t!(fs::write(&done_stamp, &rebuild_trigger_contents));
-
- build_llvm_config
- }
---
-2.21.0
-
diff --git a/dev-lang/rust/files/1.36.0-libressl.patch b/dev-lang/rust/files/1.36.0-libressl.patch
deleted file mode 100644
index cc1ce26c8d42..000000000000
--- a/dev-lang/rust/files/1.36.0-libressl.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-diff --git a/vendor/openssl-sys/.cargo-checksum.json b/vendor/openssl-sys/.cargo-checksum.json
-index 5c961bcbc..a0ea2d357 100644
---- a/vendor/openssl-sys/.cargo-checksum.json
-+++ b/vendor/openssl-sys/.cargo-checksum.json
-@@ -1 +1 @@
--{"files":{"CHANGELOG.md":"a3e7e4750fe6130a93e9423d5b1b68c659dd29246602f71583c7a101c4d647be","Cargo.toml":"5fdba4ce7cf40abec303651694e79a5ae551f040a7bbaad134ed9ab54d26a613","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"96a414be6e7e061a21a9e39a61449039f6791225264032641dd044a1a9b88111","build/cfgs.rs":"61b741c4fe9612f5a70b19bec53d3ab7ec2d7038b163c35b54f0664caa104a31","build/expando.c":"c4fa8a4424b2321f1857edfc5ce1ac1f03eda54440367d3142310c0eb5553004","build/find_normal.rs":"0a2dc417eace7fc72c27b9046ebaf53c75e418b27baa877434925a81fe6c23ed","build/find_vendored.rs":"d88c47f4cf851aa67c0e3dec679910c5c7ba239bc5a1aa89e507a875b4c4ca0f","build/main.rs":"681a1f8a8f389c82bbd3d2498a3692c201c63db658e7c3d162f09d5d81892fd4","src/aes.rs":"660efd70f809cb2f5dbbf527be8f9592911776bab7dafa1fc4cc72dd9a576b67","src/asn1.rs":"f72d6871d38865d9e7378882135cdc6f1acd66c48a4fc846502b7f488dbbf111","src/bio.rs":"5c6f394a78f258af3babb68330fa3571610476c4c3ba3404359db928f2f706ee","src/bn.rs":"c71b9c79f704a94a889d27bf75e7e5b1f9f10b0df0aeb485aef509cf05d7467f","src/cms.rs":"95a0803286d1efbe709a3668443b5001f5cce6f9db216165b1e08950972e0bfd","src/conf.rs":"511e008c18039f54d856d70b80009426fc7f4ce34fe4304e2c58ebf465031de0","src/crypto.rs":"f6e8a116940755b2b53e3d0d49d1b451fc6e4269831fd1cfcee9d6ed404cf487","src/dh.rs":"7cc334e86d16b3eae165dfa3a6c8e488bc0fe590c17beda38893d2e9d784d5a6","src/dsa.rs":"ae79baf231681900ea76304285b3ffacf5298c90b8c04d371269cf4adbb5b9fa","src/dtls1.rs":"45e1dbf94a42d587fd948d553dc30187aa6aa2b5b82d554cf725ff36df768aa0","src/ec.rs":"5341787b108f4e9acb12428fbf993aa507e9d77b97284912f7eab414ec6aeff9","src/err.rs":"f6641be5df397086a9db80667e191fb1d92972c29151e617df86672c1a16d3ad","src/evp.rs":"300007bcf00eaff03cb1d113547a79c9495b498ede9e1b2f709a9e6e1ba42ac1","src/hmac.rs":"fa3976d94a1383f300bdec228270afb8b47c97bb019d727c7d59ba783be3c42e","src/lib.rs":"e8931dd7e59a56a247823201f52828ec15d0b8dbd15ba297cacd3dcb3ca747cf","src/macros.rs":"638fb9098f6024e82b331eeee50c64cefdb58456dba28ee42560be655a0c2bf6","src/obj_mac.rs":"9c20609db7115c9edb99185375426169cb5b7caee839d892b556e92285e65309","src/object.rs":"7539eb2164c3fe2162a339ef5b45f1c835010a1522307803815779a01825eed7","src/ocsp.rs":"1db59566d2f072f7ae981f0c07e1604fcdf60e66845afe0689d588f8e4272115","src/ossl_typ.rs":"fc7366e75c78707650c8667593ed183eca6a8ce8dd6b911e342f644d1bcf98bd","src/pem.rs":"83bb7745615a99fe2a8d5f8f51addba2024c7e6be847ab6c9244bfd04388c4f9","src/pkcs12.rs":"93aab2820008ad90dc346a7dcc02f9201d94bff0bb7d1d71031c097850287c50","src/pkcs7.rs":"5370c8d4bfbf1502fa33aff635cb730e7c87814580f1df9bdb1412a492377813","src/rand.rs":"469601b4fbb56d4dbf5cf5d7bb8483e3bde411edea18601e7d1ed6ef27180fd3","src/rsa.rs":"0e8c1f0bc37620a9208175542143bfd411ae88188974d2d5b37a2b8b77d0e2c8","src/safestack.rs":"6c39e28565d34efad707d77561d4caa99e3f028fcac3a2ef6fd403a78de1190c","src/sha.rs":"05044d221d8d205010a4e3760c0b5c0e2e923e165db0d65f9a8c9bcedaad9961","src/srtp.rs":"306047f3f31828fe7d15de154b375f071ae07012a94c0b5c909f5fe57962a11b","src/ssl.rs":"18c0c0c5ef02329be90fd279968da61d3e1a6b3a3aec102d6fefd99021d1822a","src/ssl3.rs":"9336c816e00847d552dea22587d4ac72ff3cbd469fa5ff750423a19ea11e68eb","src/stack.rs":"1a509907283e5a2bf88cf193ce607f49ce7d2d95547c2ce2abc0fd4567aad334","src/tls1.rs":"60ca3dea1bbfda645bde563b4a878dac129c3f760e3ad572381000fc7a8ef522","src/x509.rs":"20e221731587221aab00aef21b4e4bebb7635603d265d424f3dd3c60d4c511e2","src/x509_vfy.rs":"5609f6300ab37a4d4755c81f7af1e6bb93a2f1a6f333c6e42f1e73ebf83ddc05","src/x509v3.rs":"30c58ce7d80670cc597d041e0f59862c1100e38743fc9dde2aec6dc811a4a558"},"package":"33c86834957dd5b915623e94f2f4ab2c70dd8f6b70679824155d5ae21dbd495d"}
-\ No newline at end of file
-+{"files":{"CHANGELOG.md":"a3e7e4750fe6130a93e9423d5b1b68c659dd29246602f71583c7a101c4d647be","Cargo.toml":"5fdba4ce7cf40abec303651694e79a5ae551f040a7bbaad134ed9ab54d26a613","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"96a414be6e7e061a21a9e39a61449039f6791225264032641dd044a1a9b88111","build/cfgs.rs":"61b741c4fe9612f5a70b19bec53d3ab7ec2d7038b163c35b54f0664caa104a31","build/expando.c":"c4fa8a4424b2321f1857edfc5ce1ac1f03eda54440367d3142310c0eb5553004","build/find_normal.rs":"0a2dc417eace7fc72c27b9046ebaf53c75e418b27baa877434925a81fe6c23ed","build/find_vendored.rs":"d88c47f4cf851aa67c0e3dec679910c5c7ba239bc5a1aa89e507a875b4c4ca0f","build/main.rs":"f2cd4ca8fde8298211581f9e1ca61668706d7681a38b95a63591450e1d8366a3","src/aes.rs":"660efd70f809cb2f5dbbf527be8f9592911776bab7dafa1fc4cc72dd9a576b67","src/asn1.rs":"f72d6871d38865d9e7378882135cdc6f1acd66c48a4fc846502b7f488dbbf111","src/bio.rs":"5c6f394a78f258af3babb68330fa3571610476c4c3ba3404359db928f2f706ee","src/bn.rs":"c71b9c79f704a94a889d27bf75e7e5b1f9f10b0df0aeb485aef509cf05d7467f","src/cms.rs":"95a0803286d1efbe709a3668443b5001f5cce6f9db216165b1e08950972e0bfd","src/conf.rs":"511e008c18039f54d856d70b80009426fc7f4ce34fe4304e2c58ebf465031de0","src/crypto.rs":"f6e8a116940755b2b53e3d0d49d1b451fc6e4269831fd1cfcee9d6ed404cf487","src/dh.rs":"7cc334e86d16b3eae165dfa3a6c8e488bc0fe590c17beda38893d2e9d784d5a6","src/dsa.rs":"ae79baf231681900ea76304285b3ffacf5298c90b8c04d371269cf4adbb5b9fa","src/dtls1.rs":"45e1dbf94a42d587fd948d553dc30187aa6aa2b5b82d554cf725ff36df768aa0","src/ec.rs":"5341787b108f4e9acb12428fbf993aa507e9d77b97284912f7eab414ec6aeff9","src/err.rs":"f6641be5df397086a9db80667e191fb1d92972c29151e617df86672c1a16d3ad","src/evp.rs":"300007bcf00eaff03cb1d113547a79c9495b498ede9e1b2f709a9e6e1ba42ac1","src/hmac.rs":"fa3976d94a1383f300bdec228270afb8b47c97bb019d727c7d59ba783be3c42e","src/lib.rs":"e8931dd7e59a56a247823201f52828ec15d0b8dbd15ba297cacd3dcb3ca747cf","src/macros.rs":"638fb9098f6024e82b331eeee50c64cefdb58456dba28ee42560be655a0c2bf6","src/obj_mac.rs":"9c20609db7115c9edb99185375426169cb5b7caee839d892b556e92285e65309","src/object.rs":"7539eb2164c3fe2162a339ef5b45f1c835010a1522307803815779a01825eed7","src/ocsp.rs":"1db59566d2f072f7ae981f0c07e1604fcdf60e66845afe0689d588f8e4272115","src/ossl_typ.rs":"fc7366e75c78707650c8667593ed183eca6a8ce8dd6b911e342f644d1bcf98bd","src/pem.rs":"83bb7745615a99fe2a8d5f8f51addba2024c7e6be847ab6c9244bfd04388c4f9","src/pkcs12.rs":"93aab2820008ad90dc346a7dcc02f9201d94bff0bb7d1d71031c097850287c50","src/pkcs7.rs":"5370c8d4bfbf1502fa33aff635cb730e7c87814580f1df9bdb1412a492377813","src/rand.rs":"469601b4fbb56d4dbf5cf5d7bb8483e3bde411edea18601e7d1ed6ef27180fd3","src/rsa.rs":"0e8c1f0bc37620a9208175542143bfd411ae88188974d2d5b37a2b8b77d0e2c8","src/safestack.rs":"6c39e28565d34efad707d77561d4caa99e3f028fcac3a2ef6fd403a78de1190c","src/sha.rs":"05044d221d8d205010a4e3760c0b5c0e2e923e165db0d65f9a8c9bcedaad9961","src/srtp.rs":"306047f3f31828fe7d15de154b375f071ae07012a94c0b5c909f5fe57962a11b","src/ssl.rs":"18c0c0c5ef02329be90fd279968da61d3e1a6b3a3aec102d6fefd99021d1822a","src/ssl3.rs":"9336c816e00847d552dea22587d4ac72ff3cbd469fa5ff750423a19ea11e68eb","src/stack.rs":"1a509907283e5a2bf88cf193ce607f49ce7d2d95547c2ce2abc0fd4567aad334","src/tls1.rs":"60ca3dea1bbfda645bde563b4a878dac129c3f760e3ad572381000fc7a8ef522","src/x509.rs":"20e221731587221aab00aef21b4e4bebb7635603d265d424f3dd3c60d4c511e2","src/x509_vfy.rs":"5609f6300ab37a4d4755c81f7af1e6bb93a2f1a6f333c6e42f1e73ebf83ddc05","src/x509v3.rs":"30c58ce7d80670cc597d041e0f59862c1100e38743fc9dde2aec6dc811a4a558"},"package":"33c86834957dd5b915623e94f2f4ab2c70dd8f6b70679824155d5ae21dbd495d"}
-diff --git a/vendor/openssl-sys/build/main.rs b/vendor/openssl-sys/build/main.rs
-index 02b93b90a..f0cf4b4ff 100644
---- a/vendor/openssl-sys/build/main.rs
-+++ b/vendor/openssl-sys/build/main.rs
-@@ -183,27 +183,31 @@ See rust-openssl README for more information:
- if let Some(libressl_version) = libressl_version {
- println!("cargo:libressl_version_number={:x}", libressl_version);
-
-+ let major = (libressl_version >> 28) as u8;
- let minor = (libressl_version >> 20) as u8;
- let fix = (libressl_version >> 12) as u8;
-- let (minor, fix) = match (minor, fix) {
-- (5, 0) => ('5', '0'),
-- (5, 1) => ('5', '1'),
-- (5, 2) => ('5', '2'),
-- (5, _) => ('5', 'x'),
-- (6, 0) => ('6', '0'),
-- (6, 1) => ('6', '1'),
-- (6, 2) => ('6', '2'),
-- (6, _) => ('6', 'x'),
-- (7, _) => ('7', 'x'),
-- (8, 0) => ('8', '0'),
-- (8, 1) => ('8', '1'),
-- (8, _) => ('8', 'x'),
-- (9, 0) => ('9', '0'),
-+ let (major, minor, fix) = match (major, minor, fix) {
-+ (2, 5, 0) => ('2', '5', '0'),
-+ (2, 5, 1) => ('2', '5', '1'),
-+ (2, 5, 2) => ('2', '5', '2'),
-+ (2, 5, _) => ('2', '5', 'x'),
-+ (2, 6, 0) => ('2', '6', '0'),
-+ (2, 6, 1) => ('2', '6', '1'),
-+ (2, 6, 2) => ('2', '6', '2'),
-+ (2, 6, _) => ('2', '6', 'x'),
-+ (2, 7, _) => ('2', '7', 'x'),
-+ (2, 8, 0) => ('2', '8', '0'),
-+ (2, 8, 1) => ('2', '8', '1'),
-+ (2, 8, _) => ('2', '8', 'x'),
-+ (2, 9, 0) => ('2', '9', '0'),
-+ (2, 9, _) => ('2', '9', 'x'),
-+ (3, 0, 0) => ('3', '0', '0'),
-+ (3, 0, _) => ('3', '0', 'x'),
- _ => version_error(),
- };
-
- println!("cargo:libressl=true");
-- println!("cargo:libressl_version=2{}{}", minor, fix);
-+ println!("cargo:libressl_version={}{}{}", major, minor, fix);
- println!("cargo:version=101");
- Version::Libressl
- } else {
-@@ -239,7 +243,7 @@ fn version_error() -> ! {
- "
-
- This crate is only compatible with OpenSSL 1.0.1 through 1.1.1, or LibreSSL 2.5
--through 2.9.0, but a different version of OpenSSL was found. The build is now aborting
-+through 3.0.x, but a different version of OpenSSL was found. The build is now aborting
- due to this version mismatch.
-
- "
diff --git a/dev-lang/rust/files/1.38.0-fix-custom-libdir.patch b/dev-lang/rust/files/1.38.0-fix-custom-libdir.patch
deleted file mode 100644
index b2b14876c906..000000000000
--- a/dev-lang/rust/files/1.38.0-fix-custom-libdir.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-From 8553cc0681db7fb6b58b25bb3fbd520604a0cc3a Mon Sep 17 00:00:00 2001
-From: O01eg <o01eg@yandex.ru>
-Date: Wed, 7 Aug 2019 23:37:55 +0300
-Subject: [PATCH] Fix double resolving custom libdir
-
----
- src/bootstrap/builder.rs | 20 +++++++++++++-------
- src/bootstrap/dist.rs | 13 +++++++++----
- 2 files changed, 22 insertions(+), 11 deletions(-)
-
-diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
-index 5a75497173eb..06ccdd8e7f0f 100644
---- a/src/bootstrap/builder.rs
-+++ b/src/bootstrap/builder.rs
-@@ -627,13 +627,7 @@ impl<'a> Builder<'a> {
- }
-
- fn run(self, builder: &Builder<'_>) -> Interned<PathBuf> {
-- let compiler = self.compiler;
-- let config = &builder.build.config;
-- let lib = if compiler.stage >= 1 && config.libdir_relative().is_some() {
-- builder.build.config.libdir_relative().unwrap()
-- } else {
-- Path::new("lib")
-- };
-+ let lib = builder.sysroot_libdir_relative(self.compiler);
- let sysroot = builder
- .sysroot(self.compiler)
- .join(lib)
-@@ -687,6 +681,18 @@ impl<'a> Builder<'a> {
- }
- }
-
-+ /// Returns the compiler's relative libdir where the standard library and other artifacts are
-+ /// found for a compiler's sysroot.
-+ ///
-+ /// For example this returns `lib` on Unix and Windows.
-+ pub fn sysroot_libdir_relative(&self, compiler: Compiler) -> &Path {
-+ match self.config.libdir_relative() {
-+ Some(relative_libdir) if compiler.stage >= 1
-+ => relative_libdir,
-+ _ => Path::new("lib")
-+ }
-+ }
-+
- /// Adds the compiler's directory of dynamic libraries to `cmd`'s dynamic
- /// library lookup path.
- pub fn add_rustc_lib_path(&self, compiler: Compiler, cmd: &mut Command) {
-diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
-index bd012a887c26..213ceb194a81 100644
---- a/src/bootstrap/dist.rs
-+++ b/src/bootstrap/dist.rs
-@@ -469,7 +469,6 @@ impl Step for Rustc {
- fn prepare_image(builder: &Builder<'_>, compiler: Compiler, image: &Path) {
- let host = compiler.host;
- let src = builder.sysroot(compiler);
-- let libdir = builder.rustc_libdir(compiler);
-
- // Copy rustc/rustdoc binaries
- t!(fs::create_dir_all(image.join("bin")));
-@@ -481,11 +480,14 @@ impl Step for Rustc {
-
- // Copy runtime DLLs needed by the compiler
- if libdir_relative.to_str() != Some("bin") {
-+ let libdir = builder.rustc_libdir(compiler);
- for entry in builder.read_dir(&libdir) {
- let name = entry.file_name();
- if let Some(s) = name.to_str() {
- if is_dylib(s) {
-- builder.install(&entry.path(), &image.join(&libdir_relative), 0o644);
-+ // Don't use custom libdir here because ^lib/ will be resolved again
-+ // with installer
-+ builder.install(&entry.path(), &image.join("lib"), 0o644);
- }
- }
- }
-@@ -493,8 +495,11 @@ impl Step for Rustc {
-
- // Copy over the codegen backends
- let backends_src = builder.sysroot_codegen_backends(compiler);
-- let backends_rel = backends_src.strip_prefix(&src).unwrap();
-- let backends_dst = image.join(&backends_rel);
-+ let backends_rel = backends_src.strip_prefix(&src).unwrap()
-+ .strip_prefix(builder.sysroot_libdir_relative(compiler)).unwrap();
-+ // Don't use custom libdir here because ^lib/ will be resolved again with installer
-+ let backends_dst = image.join("lib").join(&backends_rel);
-+
- t!(fs::create_dir_all(&backends_dst));
- builder.cp_r(&backends_src, &backends_dst);
-
diff --git a/dev-lang/rust/files/1.38.0-fix-multiple-llvm-rebuilds.patch b/dev-lang/rust/files/1.38.0-fix-multiple-llvm-rebuilds.patch
deleted file mode 100644
index 235b95625e41..000000000000
--- a/dev-lang/rust/files/1.38.0-fix-multiple-llvm-rebuilds.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 53fe76479aab03b1fbe5b7184f45484886f769b1 Mon Sep 17 00:00:00 2001
-From: Josh Stone <jistone@redhat.com>
-Date: Wed, 4 Sep 2019 16:02:31 -0700
-Subject: [PATCH] Assume non-git LLVM is fresh if the stamp file exists
-
-Rustbuild usually writes the LLVM submodule commit in a stamp file, so
-we can avoid rebuilding it unnecessarily. However, for builds from a
-source tarball (non-git), we were assuming a rebuild is always needed.
-This can cause a lot of extra work if any environment like `CFLAGS`
-changed between steps like build and install, which are often separate
-in distro builds.
-
-Now we also write an empty stamp file if the git commit is unknown, and
-its presence is trusted to indicate that no rebuild is needed. An info
-message reports that this is happening, along with the stamp file path
-that can be deleted to force a rebuild anyway.
----
- src/bootstrap/native.rs | 27 ++++++++++++++-------------
- 1 file changed, 14 insertions(+), 13 deletions(-)
-
-diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs
-index f02def3e1b05..7bf9ea2688f4 100644
---- a/src/bootstrap/native.rs
-+++ b/src/bootstrap/native.rs
-@@ -81,26 +81,29 @@ impl Step for Llvm {
- (info, "src/llvm-project/llvm", builder.llvm_out(target), dir.join("bin"))
- };
-
-- if !llvm_info.is_git() {
-- println!(
-- "git could not determine the LLVM submodule commit hash. \
-- Assuming that an LLVM build is necessary.",
-- );
-- }
--
- let build_llvm_config = llvm_config_ret_dir
- .join(exe("llvm-config", &*builder.config.build));
- let done_stamp = out_dir.join("llvm-finished-building");
-
-- if let Some(llvm_commit) = llvm_info.sha() {
-- if done_stamp.exists() {
-+ if done_stamp.exists() {
-+ if let Some(llvm_commit) = llvm_info.sha() {
- let done_contents = t!(fs::read(&done_stamp));
-
- // If LLVM was already built previously and the submodule's commit didn't change
- // from the previous build, then no action is required.
- if done_contents == llvm_commit.as_bytes() {
-- return build_llvm_config
-+ return build_llvm_config;
- }
-+ } else {
-+ builder.info(
-+ "Could not determine the LLVM submodule commit hash. \
-+ Assuming that an LLVM rebuild is not necessary.",
-+ );
-+ builder.info(&format!(
-+ "To force LLVM to rebuild, remove the file `{}`",
-+ done_stamp.display()
-+ ));
-+ return build_llvm_config;
- }
- }
-
-@@ -303,9 +306,7 @@ impl Step for Llvm {
-
- cfg.build();
-
-- if let Some(llvm_commit) = llvm_info.sha() {
-- t!(fs::write(&done_stamp, llvm_commit));
-- }
-+ t!(fs::write(&done_stamp, llvm_info.sha().unwrap_or("")));
-
- build_llvm_config
- }
diff --git a/dev-lang/rust/files/1.42.0-fix-bootstrap.patch b/dev-lang/rust/files/1.42.0-fix-bootstrap.patch
new file mode 100644
index 000000000000..16e4e6dce1c5
--- /dev/null
+++ b/dev-lang/rust/files/1.42.0-fix-bootstrap.patch
@@ -0,0 +1,440 @@
+From 5f979e9afab42dd7536ca93994de66169880361e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Matthias=20Kr=C3=BCger?= <matthias.krueger@famsik.de>
+Date: Mon, 3 Feb 2020 20:13:30 +0100
+Subject: [PATCH] bootstrap: fix clippy warnings
+
+---
+ src/bootstrap/bin/rustc.rs | 6 +++---
+ src/bootstrap/bin/rustdoc.rs | 2 +-
+ src/bootstrap/builder.rs | 24 ++++++++----------------
+ src/bootstrap/builder/tests.rs | 1 -
+ src/bootstrap/compile.rs | 20 ++++++++++----------
+ src/bootstrap/config.rs | 7 +++----
+ src/bootstrap/dist.rs | 4 ++--
+ src/bootstrap/doc.rs | 2 +-
+ src/bootstrap/flags.rs | 2 +-
+ src/bootstrap/install.rs | 5 ++---
+ src/bootstrap/lib.rs | 6 +++---
+ src/bootstrap/metadata.rs | 1 -
+ src/bootstrap/native.rs | 4 +---
+ src/bootstrap/test.rs | 9 +++------
+ src/bootstrap/tool.rs | 2 +-
+ src/bootstrap/toolstate.rs | 2 +-
+ src/bootstrap/util.rs | 2 +-
+ 17 files changed, 41 insertions(+), 58 deletions(-)
+
+diff --git a/src/bootstrap/bin/rustc.rs b/src/bootstrap/bin/rustc.rs
+index a34ec44566bc..a8c00c8c3ca8 100644
+--- a/src/bootstrap/bin/rustc.rs
++++ b/src/bootstrap/bin/rustc.rs
+@@ -47,7 +47,7 @@ fn main() {
+ };
+ let stage = env::var("RUSTC_STAGE").expect("RUSTC_STAGE was not set");
+ let sysroot = env::var_os("RUSTC_SYSROOT").expect("RUSTC_SYSROOT was not set");
+- let on_fail = env::var_os("RUSTC_ON_FAIL").map(|of| Command::new(of));
++ let on_fail = env::var_os("RUSTC_ON_FAIL").map(Command::new);
+
+ let rustc = env::var_os(rustc).unwrap_or_else(|| panic!("{:?} was not set", rustc));
+ let libdir = env::var_os(libdir).unwrap_or_else(|| panic!("{:?} was not set", libdir));
+@@ -64,7 +64,7 @@ fn main() {
+ if let Some(crate_name) = crate_name {
+ if let Some(target) = env::var_os("RUSTC_TIME") {
+ if target == "all"
+- || target.into_string().unwrap().split(",").any(|c| c.trim() == crate_name)
++ || target.into_string().unwrap().split(',').any(|c| c.trim() == crate_name)
+ {
+ cmd.arg("-Ztime");
+ }
+@@ -189,7 +189,7 @@ fn main() {
+ crate_name,
+ is_test,
+ dur.as_secs(),
+- dur.subsec_nanos() / 1_000_000
++ dur.subsec_millis()
+ );
+
+ match status.code() {
+diff --git a/src/bootstrap/bin/rustdoc.rs b/src/bootstrap/bin/rustdoc.rs
+index 8c8b33a4e4e0..04345867bf5c 100644
+--- a/src/bootstrap/bin/rustdoc.rs
++++ b/src/bootstrap/bin/rustdoc.rs
+@@ -61,7 +61,7 @@ fn main() {
+ }
+
+ // Needed to be able to run all rustdoc tests.
+- if let Some(_) = env::var_os("RUSTDOC_GENERATE_REDIRECT_PAGES") {
++ if env::var_os("RUSTDOC_GENERATE_REDIRECT_PAGES").is_some() {
+ // This "unstable-options" can be removed when `--generate-redirect-pages` is stabilized
+ if !has_unstable {
+ cmd.arg("-Z").arg("unstable-options");
+diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
+index d9c894aa9c6b..18f6fda76084 100644
+--- a/src/bootstrap/builder.rs
++++ b/src/bootstrap/builder.rs
+@@ -510,7 +510,7 @@ impl<'a> Builder<'a> {
+ Subcommand::Format { .. } | Subcommand::Clean { .. } => panic!(),
+ };
+
+- let builder = Builder {
++ Builder {
+ build,
+ top_stage: build.config.stage.unwrap_or(2),
+ kind,
+@@ -518,9 +518,7 @@ impl<'a> Builder<'a> {
+ stack: RefCell::new(Vec::new()),
+ time_spent_on_dependencies: Cell::new(Duration::new(0, 0)),
+ paths: paths.to_owned(),
+- };
+-
+- builder
++ }
+ }
+
+ pub fn execute_cli(&self) {
+@@ -753,13 +751,12 @@ impl<'a> Builder<'a> {
+ cargo.env("RUST_CHECK", "1");
+ }
+
+- let stage;
+- if compiler.stage == 0 && self.local_rebuild {
++ let stage = if compiler.stage == 0 && self.local_rebuild {
+ // Assume the local-rebuild rustc already has stage1 features.
+- stage = 1;
++ 1
+ } else {
+- stage = compiler.stage;
+- }
++ compiler.stage
++ };
+
+ let mut rustflags = Rustflags::new(&target);
+ if stage != 0 {
+@@ -1252,12 +1249,7 @@ impl<'a> Builder<'a> {
+ };
+
+ if self.config.print_step_timings && dur > Duration::from_millis(100) {
+- println!(
+- "[TIMING] {:?} -- {}.{:03}",
+- step,
+- dur.as_secs(),
+- dur.subsec_nanos() / 1_000_000
+- );
++ println!("[TIMING] {:?} -- {}.{:03}", step, dur.as_secs(), dur.subsec_millis());
+ }
+
+ {
+@@ -1302,7 +1294,7 @@ impl Rustflags {
+
+ fn arg(&mut self, arg: &str) -> &mut Self {
+ assert_eq!(arg.split_whitespace().count(), 1);
+- if self.0.len() > 0 {
++ if !self.0.is_empty() {
+ self.0.push_str(" ");
+ }
+ self.0.push_str(arg);
+diff --git a/src/bootstrap/builder/tests.rs b/src/bootstrap/builder/tests.rs
+index 5fefb972866a..cca8ab80c93b 100644
+--- a/src/bootstrap/builder/tests.rs
++++ b/src/bootstrap/builder/tests.rs
+@@ -19,7 +19,6 @@ fn configure(host: &[&str], target: &[&str]) -> Config {
+ config.out = dir;
+ config.build = INTERNER.intern_str("A");
+ config.hosts = vec![config.build]
+- .clone()
+ .into_iter()
+ .chain(host.iter().map(|s| INTERNER.intern_str(s)))
+ .collect::<Vec<_>>();
+diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs
+index eced03506ab9..7dded96e18ef 100644
+--- a/src/bootstrap/compile.rs
++++ b/src/bootstrap/compile.rs
+@@ -18,7 +18,6 @@ use std::str;
+ use build_helper::{output, t, up_to_date};
+ use filetime::FileTime;
+ use serde::Deserialize;
+-use serde_json;
+
+ use crate::builder::Cargo;
+ use crate::dist;
+@@ -149,7 +148,8 @@ fn copy_third_party_objects(
+ // which is provided by std for this target.
+ if target == "x86_64-fortanix-unknown-sgx" {
+ let src_path_env = "X86_FORTANIX_SGX_LIBS";
+- let src = env::var(src_path_env).expect(&format!("{} not found in env", src_path_env));
++ let src =
++ env::var(src_path_env).unwrap_or_else(|_| panic!("{} not found in env", src_path_env));
+ copy_and_stamp(Path::new(&src), "libunwind.a");
+ }
+
+@@ -361,7 +361,7 @@ impl Step for StartupObjects {
+ );
+ }
+
+- let target = sysroot_dir.join(file.to_string() + ".o");
++ let target = sysroot_dir.join((*file).to_string() + ".o");
+ builder.copy(dst_file, &target);
+ target_deps.push(target);
+ }
+@@ -515,7 +515,7 @@ pub fn rustc_cargo_env(builder: &Builder<'_>, cargo: &mut Cargo, target: Interne
+ .env("CFG_VERSION", builder.rust_version())
+ .env("CFG_PREFIX", builder.config.prefix.clone().unwrap_or_default());
+
+- let libdir_relative = builder.config.libdir_relative().unwrap_or(Path::new("lib"));
++ let libdir_relative = builder.config.libdir_relative().unwrap_or_else(|| Path::new("lib"));
+ cargo.env("CFG_LIBDIR_RELATIVE", libdir_relative);
+
+ if let Some(ref ver_date) = builder.rust_info.commit_date() {
+@@ -843,11 +843,11 @@ pub fn run_cargo(
+ };
+ for filename in filenames {
+ // Skip files like executables
+- if !filename.ends_with(".rlib")
+- && !filename.ends_with(".lib")
+- && !filename.ends_with(".a")
+- && !is_dylib(&filename)
+- && !(is_check && filename.ends_with(".rmeta"))
++ if !(filename.ends_with(".rlib")
++ || filename.ends_with(".lib")
++ || filename.ends_with(".a")
++ || is_dylib(&filename)
++ || (is_check && filename.ends_with(".rmeta")))
+ {
+ continue;
+ }
+@@ -905,7 +905,7 @@ pub fn run_cargo(
+ for (prefix, extension, expected_len) in toplevel {
+ let candidates = contents.iter().filter(|&&(_, ref filename, ref meta)| {
+ filename.starts_with(&prefix[..])
+- && filename[prefix.len()..].starts_with("-")
++ && filename[prefix.len()..].starts_with('-')
+ && filename.ends_with(&extension[..])
+ && meta.len() == expected_len
+ });
+diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs
+index 110c8b844d54..709cf2908ead 100644
+--- a/src/bootstrap/config.rs
++++ b/src/bootstrap/config.rs
+@@ -16,7 +16,6 @@ use crate::flags::Flags;
+ pub use crate::flags::Subcommand;
+ use build_helper::t;
+ use serde::Deserialize;
+-use toml;
+
+ /// Global configuration for the entire build and/or bootstrap.
+ ///
+@@ -440,7 +439,7 @@ impl Config {
+ }
+ }
+ })
+- .unwrap_or_else(|| TomlConfig::default());
++ .unwrap_or_else(TomlConfig::default);
+
+ let build = toml.build.clone().unwrap_or_default();
+ // set by bootstrap.py
+@@ -539,7 +538,7 @@ impl Config {
+ config.llvm_ldflags = llvm.ldflags.clone();
+ set(&mut config.llvm_use_libcxx, llvm.use_libcxx);
+ config.llvm_use_linker = llvm.use_linker.clone();
+- config.llvm_allow_old_toolchain = llvm.allow_old_toolchain.clone();
++ config.llvm_allow_old_toolchain = llvm.allow_old_toolchain;
+ }
+
+ if let Some(ref rust) = toml.rust {
+@@ -606,7 +605,7 @@ impl Config {
+ target.ar = cfg.ar.clone().map(PathBuf::from);
+ target.ranlib = cfg.ranlib.clone().map(PathBuf::from);
+ target.linker = cfg.linker.clone().map(PathBuf::from);
+- target.crt_static = cfg.crt_static.clone();
++ target.crt_static = cfg.crt_static;
+ target.musl_root = cfg.musl_root.clone().map(PathBuf::from);
+ target.wasi_root = cfg.wasi_root.clone().map(PathBuf::from);
+ target.qemu_rootfs = cfg.qemu_rootfs.clone().map(PathBuf::from);
+diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
+index 8d13df3ee21a..651506dbaa8a 100644
+--- a/src/bootstrap/dist.rs
++++ b/src/bootstrap/dist.rs
+@@ -827,7 +827,7 @@ impl Step for Analysis {
+ assert!(builder.config.extended);
+ let name = pkgname(builder, "rust-analysis");
+
+- if &compiler.host != builder.config.build {
++ if compiler.host != builder.config.build {
+ return distdir(builder).join(format!("{}-{}.tar.gz", name, target));
+ }
+
+@@ -876,7 +876,7 @@ fn copy_src_dirs(builder: &Builder<'_>, src_dirs: &[&str], exclude_dirs: &[&str]
+ Some(path) => path,
+ None => return false,
+ };
+- if spath.ends_with("~") || spath.ends_with(".pyc") {
++ if spath.ends_with('~') || spath.ends_with(".pyc") {
+ return false;
+ }
+
+diff --git a/src/bootstrap/doc.rs b/src/bootstrap/doc.rs
+index 204056598d90..b0d9a5b94641 100644
+--- a/src/bootstrap/doc.rs
++++ b/src/bootstrap/doc.rs
+@@ -560,7 +560,7 @@ impl Step for Rustdoc {
+ builder.ensure(Rustc { stage, target });
+
+ // Build rustdoc.
+- builder.ensure(tool::Rustdoc { compiler: compiler });
++ builder.ensure(tool::Rustdoc { compiler });
+
+ // Symlink compiler docs to the output directory of rustdoc documentation.
+ let out_dir = builder.stage_out(compiler, Mode::ToolRustc).join(target).join("doc");
+diff --git a/src/bootstrap/flags.rs b/src/bootstrap/flags.rs
+index 2101ef27f9d4..516be6a30c23 100644
+--- a/src/bootstrap/flags.rs
++++ b/src/bootstrap/flags.rs
+@@ -571,7 +571,7 @@ fn split(s: &[String]) -> Vec<String> {
+ }
+
+ fn parse_deny_warnings(matches: &getopts::Matches) -> Option<bool> {
+- match matches.opt_str("warnings").as_ref().map(|v| v.as_str()) {
++ match matches.opt_str("warnings").as_deref() {
+ Some("deny") => Some(true),
+ Some("warn") => Some(false),
+ Some(value) => {
+diff --git a/src/bootstrap/install.rs b/src/bootstrap/install.rs
+index f8734ebdf425..6549262811b9 100644
+--- a/src/bootstrap/install.rs
++++ b/src/bootstrap/install.rs
+@@ -126,9 +126,8 @@ fn add_destdir(path: &Path, destdir: &Option<PathBuf>) -> PathBuf {
+ None => return path.to_path_buf(),
+ };
+ for part in path.components() {
+- match part {
+- Component::Normal(s) => ret.push(s),
+- _ => {}
++ if let Component::Normal(s) = part {
++ ret.push(s)
+ }
+ }
+ ret
+diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs
+index 1fee3fd9ac1d..0db4fb389010 100644
+--- a/src/bootstrap/lib.rs
++++ b/src/bootstrap/lib.rs
+@@ -444,7 +444,7 @@ impl Build {
+ builder.execute_cli();
+ } else {
+ let builder = builder::Builder::new(&self);
+- let _ = builder.execute_cli();
++ builder.execute_cli();
+ }
+
+ // Check for postponed failures from `test --no-fail-fast`.
+@@ -839,7 +839,7 @@ impl Build {
+ .target_config
+ .get(&target)
+ .and_then(|t| t.musl_root.as_ref())
+- .or(self.config.musl_root.as_ref())
++ .or_else(|| self.config.musl_root.as_ref())
+ .map(|p| &**p)
+ }
+
+@@ -1026,7 +1026,7 @@ impl Build {
+ }
+
+ fn llvm_link_tools_dynamically(&self, target: Interned<String>) -> bool {
+- (target.contains("linux-gnu") || target.contains("apple-darwin"))
++ target.contains("linux-gnu") || target.contains("apple-darwin")
+ }
+
+ /// Returns the `version` string associated with this compiler for Rust
+diff --git a/src/bootstrap/metadata.rs b/src/bootstrap/metadata.rs
+index 8a26adc7ed50..292aa3b1e24a 100644
+--- a/src/bootstrap/metadata.rs
++++ b/src/bootstrap/metadata.rs
+@@ -5,7 +5,6 @@ use std::process::Command;
+
+ use build_helper::output;
+ use serde::Deserialize;
+-use serde_json;
+
+ use crate::cache::INTERNER;
+ use crate::{Build, Crate};
+diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs
+index 5bbd9f47fc90..1cfb4b2f63b5 100644
+--- a/src/bootstrap/native.rs
++++ b/src/bootstrap/native.rs
+@@ -15,8 +15,6 @@ use std::path::{Path, PathBuf};
+ use std::process::Command;
+
+ use build_helper::{output, t};
+-use cc;
+-use cmake;
+
+ use crate::builder::{Builder, RunConfig, ShouldRun, Step};
+ use crate::cache::Interned;
+@@ -205,7 +203,7 @@ impl Step for Llvm {
+ cfg.define("LLVM_ENABLE_LIBXML2", "OFF");
+ }
+
+- if enabled_llvm_projects.len() > 0 {
++ if !enabled_llvm_projects.is_empty() {
+ enabled_llvm_projects.sort();
+ enabled_llvm_projects.dedup();
+ cfg.define("LLVM_ENABLE_PROJECTS", enabled_llvm_projects.join(";"));
+diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs
+index 6adf9ddaf343..8d9e62010015 100644
+--- a/src/bootstrap/test.rs
++++ b/src/bootstrap/test.rs
+@@ -1424,13 +1424,10 @@ impl Step for ErrorIndex {
+ }
+
+ fn markdown_test(builder: &Builder<'_>, compiler: Compiler, markdown: &Path) -> bool {
+- match fs::read_to_string(markdown) {
+- Ok(contents) => {
+- if !contents.contains("```") {
+- return true;
+- }
++ if let Ok(contents) = fs::read_to_string(markdown) {
++ if !contents.contains("```") {
++ return true;
+ }
+- Err(_) => {}
+ }
+
+ builder.info(&format!("doc tests for: {}", markdown.display()));
+diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs
+index 7f24768a4f10..67e0ed5c5802 100644
+--- a/src/bootstrap/tool.rs
++++ b/src/bootstrap/tool.rs
+@@ -234,7 +234,7 @@ pub fn prepare_tool_cargo(
+ cargo.env("RUSTC_EXTERNAL_TOOL", "1");
+ }
+
+- let mut features = extra_features.iter().cloned().collect::<Vec<_>>();
++ let mut features = extra_features.to_vec();
+ if builder.build.config.cargo_native_static {
+ if path.ends_with("cargo")
+ || path.ends_with("rls")
+diff --git a/src/bootstrap/toolstate.rs b/src/bootstrap/toolstate.rs
+index b068c8200ace..bb012a388551 100644
+--- a/src/bootstrap/toolstate.rs
++++ b/src/bootstrap/toolstate.rs
+@@ -124,7 +124,7 @@ fn check_changed_files(toolstates: &HashMap<Box<str>, ToolState>) {
+ let output = t!(String::from_utf8(output.stdout));
+
+ for (tool, submodule) in STABLE_TOOLS.iter().chain(NIGHTLY_TOOLS.iter()) {
+- let changed = output.lines().any(|l| l.starts_with("M") && l.ends_with(submodule));
++ let changed = output.lines().any(|l| l.starts_with('M') && l.ends_with(submodule));
+ eprintln!("Verifying status of {}...", tool);
+ if !changed {
+ continue;
+diff --git a/src/bootstrap/util.rs b/src/bootstrap/util.rs
+index 7d1efe4610f9..eac790fe504b 100644
+--- a/src/bootstrap/util.rs
++++ b/src/bootstrap/util.rs
+@@ -98,7 +98,7 @@ impl Drop for TimeIt {
+ fn drop(&mut self) {
+ let time = self.1.elapsed();
+ if !self.0 {
+- println!("\tfinished in {}.{:03}", time.as_secs(), time.subsec_nanos() / 1_000_000);
++ println!("\tfinished in {}.{:03}", time.as_secs(), time.subsec_millis());
+ }
+ }
+ }
diff --git a/dev-lang/rust/files/1.42.0-libressl.patch b/dev-lang/rust/files/1.42.0-libressl.patch
new file mode 100644
index 000000000000..2606b3bb17f6
--- /dev/null
+++ b/dev-lang/rust/files/1.42.0-libressl.patch
@@ -0,0 +1,43 @@
+From aedf1cffc61878fdea9e59468dc44cdb56eb7cf5 Mon Sep 17 00:00:00 2001
+From: Stefan Strogin <steils@gentoo.org>
+Date: Fri, 10 Apr 2020 09:18:41 +0300
+Subject: [PATCH] Support LibreSSL 3.1.0
+
+Signed-off-by: Stefan Strogin <steils@gentoo.org>
+---
+ vendor/openssl-sys/.cargo-checksum.json | 2 +-
+ vendor/openssl-sys/build/main.rs | 3 ++-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/vendor/openssl-sys/.cargo-checksum.json b/vendor/openssl-sys/.cargo-checksum.json
+index e0bfd3035..8e2f52217 100644
+--- a/vendor/openssl-sys/.cargo-checksum.json
++++ b/vendor/openssl-sys/.cargo-checksum.json
+@@ -1 +1 @@
+-{"files":{"CHANGELOG.md":"736f0ad8717294a2ccb82065547f7161aa979eaad38c08c16d74954ece406dde","Cargo.toml":"4dbed0ba08fc7676bf7f6350eaaef6e6edb21b350718c218aae1d6372ec5918c","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"949fb3913ec7f94229242978dfeee5e19261b6d7506fc91dcd153bb0d2a84895","build/cfgs.rs":"4f39735ff73e6a13ff6ad34b9c046546a5887d705a86f68d1a8866fb305f728f","build/expando.c":"c4fa8a4424b2321f1857edfc5ce1ac1f03eda54440367d3142310c0eb5553004","build/find_normal.rs":"0a2dc417eace7fc72c27b9046ebaf53c75e418b27baa877434925a81fe6c23ed","build/find_vendored.rs":"7bf0e59c5646d72ee5a4392ad970fdf5c20288ddaf54dd86a8caff49583b38f5","build/main.rs":"6e800f4dc5c2cbbd54d1b1b995a2915ff941e17e11300d7091858210d3ce788d","src/aes.rs":"822bf666db351fe6ef9607c918081d6ad378fc1cedb05290bb746f86980c6088","src/asn1.rs":"254025cb408dbeff73bee6d06325acba9042cb11db30bdad04eedfb789be84b3","src/bio.rs":"5c6f394a78f258af3babb68330fa3571610476c4c3ba3404359db928f2f706ee","src/bn.rs":"c71b9c79f704a94a889d27bf75e7e5b1f9f10b0df0aeb485aef509cf05d7467f","src/cms.rs":"f21a403fea95e7b7efe0539a429831cfa51c8818adb79c7ebf73ae2a6f2dc87e","src/conf.rs":"511e008c18039f54d856d70b80009426fc7f4ce34fe4304e2c58ebf465031de0","src/crypto.rs":"a1279719ade9704be3d9af55ff679abbe918d525f332ca15810146d45e9080cf","src/dh.rs":"7cc334e86d16b3eae165dfa3a6c8e488bc0fe590c17beda38893d2e9d784d5a6","src/dsa.rs":"ae79baf231681900ea76304285b3ffacf5298c90b8c04d371269cf4adbb5b9fa","src/dtls1.rs":"45e1dbf94a42d587fd948d553dc30187aa6aa2b5b82d554cf725ff36df768aa0","src/ec.rs":"81372dfe497db2fc90457a470a3b8ccb249828b3ce2bf4fd2da8ec42afd6a6b3","src/err.rs":"f6641be5df397086a9db80667e191fb1d92972c29151e617df86672c1a16d3ad","src/evp.rs":"ddd25891a630f4676b16bd63ed3071f1b036722c7cdf1a72ca0a54cd3bf91898","src/hmac.rs":"fa3976d94a1383f300bdec228270afb8b47c97bb019d727c7d59ba783be3c42e","src/lib.rs":"c464eca1beb33844718044946f6ffb1bc27356d65b5b70ebcd2d4082520e7235","src/macros.rs":"638fb9098f6024e82b331eeee50c64cefdb58456dba28ee42560be655a0c2bf6","src/obj_mac.rs":"7203d356f7654c5805600b823eccf8e1d9d9cbce9a01859938612a3f0aae4cdc","src/object.rs":"7539eb2164c3fe2162a339ef5b45f1c835010a1522307803815779a01825eed7","src/ocsp.rs":"1db59566d2f072f7ae981f0c07e1604fcdf60e66845afe0689d588f8e4272115","src/ossl_typ.rs":"fc7366e75c78707650c8667593ed183eca6a8ce8dd6b911e342f644d1bcf98bd","src/pem.rs":"fbe95faaeb5b13ce44eb6574b4e21aa384d60fad079e895acaa61390887240d1","src/pkcs12.rs":"93aab2820008ad90dc346a7dcc02f9201d94bff0bb7d1d71031c097850287c50","src/pkcs7.rs":"5370c8d4bfbf1502fa33aff635cb730e7c87814580f1df9bdb1412a492377813","src/rand.rs":"469601b4fbb56d4dbf5cf5d7bb8483e3bde411edea18601e7d1ed6ef27180fd3","src/rsa.rs":"0e8c1f0bc37620a9208175542143bfd411ae88188974d2d5b37a2b8b77d0e2c8","src/safestack.rs":"6c39e28565d34efad707d77561d4caa99e3f028fcac3a2ef6fd403a78de1190c","src/sha.rs":"1a6b028a63654d2419417a9a8af790cd22409a4643682a0686ecdb9441264eba","src/srtp.rs":"306047f3f31828fe7d15de154b375f071ae07012a94c0b5c909f5fe57962a11b","src/ssl.rs":"215a27daa698c73fa909159a9e88a4302b075c33ebd17699f7f3423de60f5d68","src/ssl3.rs":"9336c816e00847d552dea22587d4ac72ff3cbd469fa5ff750423a19ea11e68eb","src/stack.rs":"1a509907283e5a2bf88cf193ce607f49ce7d2d95547c2ce2abc0fd4567aad334","src/tls1.rs":"60ca3dea1bbfda645bde563b4a878dac129c3f760e3ad572381000fc7a8ef522","src/x509.rs":"20e221731587221aab00aef21b4e4bebb7635603d265d424f3dd3c60d4c511e2","src/x509_vfy.rs":"5609f6300ab37a4d4755c81f7af1e6bb93a2f1a6f333c6e42f1e73ebf83ddc05","src/x509v3.rs":"30c58ce7d80670cc597d041e0f59862c1100e38743fc9dde2aec6dc811a4a558"},"package":"465d16ae7fc0e313318f7de5cecf57b2fbe7511fd213978b457e1c96ff46736f"}
+\ No newline at end of file
++{"files":{"CHANGELOG.md":"736f0ad8717294a2ccb82065547f7161aa979eaad38c08c16d74954ece406dde","Cargo.toml":"4dbed0ba08fc7676bf7f6350eaaef6e6edb21b350718c218aae1d6372ec5918c","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"949fb3913ec7f94229242978dfeee5e19261b6d7506fc91dcd153bb0d2a84895","build/cfgs.rs":"4f39735ff73e6a13ff6ad34b9c046546a5887d705a86f68d1a8866fb305f728f","build/expando.c":"c4fa8a4424b2321f1857edfc5ce1ac1f03eda54440367d3142310c0eb5553004","build/find_normal.rs":"0a2dc417eace7fc72c27b9046ebaf53c75e418b27baa877434925a81fe6c23ed","build/find_vendored.rs":"7bf0e59c5646d72ee5a4392ad970fdf5c20288ddaf54dd86a8caff49583b38f5","build/main.rs":"90bdf5c8d11678455cd65d29d5fd0969d248ff9be2b2a93c6e5decb71b514871","src/aes.rs":"822bf666db351fe6ef9607c918081d6ad378fc1cedb05290bb746f86980c6088","src/asn1.rs":"254025cb408dbeff73bee6d06325acba9042cb11db30bdad04eedfb789be84b3","src/bio.rs":"5c6f394a78f258af3babb68330fa3571610476c4c3ba3404359db928f2f706ee","src/bn.rs":"c71b9c79f704a94a889d27bf75e7e5b1f9f10b0df0aeb485aef509cf05d7467f","src/cms.rs":"f21a403fea95e7b7efe0539a429831cfa51c8818adb79c7ebf73ae2a6f2dc87e","src/conf.rs":"511e008c18039f54d856d70b80009426fc7f4ce34fe4304e2c58ebf465031de0","src/crypto.rs":"a1279719ade9704be3d9af55ff679abbe918d525f332ca15810146d45e9080cf","src/dh.rs":"7cc334e86d16b3eae165dfa3a6c8e488bc0fe590c17beda38893d2e9d784d5a6","src/dsa.rs":"ae79baf231681900ea76304285b3ffacf5298c90b8c04d371269cf4adbb5b9fa","src/dtls1.rs":"45e1dbf94a42d587fd948d553dc30187aa6aa2b5b82d554cf725ff36df768aa0","src/ec.rs":"81372dfe497db2fc90457a470a3b8ccb249828b3ce2bf4fd2da8ec42afd6a6b3","src/err.rs":"f6641be5df397086a9db80667e191fb1d92972c29151e617df86672c1a16d3ad","src/evp.rs":"ddd25891a630f4676b16bd63ed3071f1b036722c7cdf1a72ca0a54cd3bf91898","src/hmac.rs":"fa3976d94a1383f300bdec228270afb8b47c97bb019d727c7d59ba783be3c42e","src/lib.rs":"c464eca1beb33844718044946f6ffb1bc27356d65b5b70ebcd2d4082520e7235","src/macros.rs":"638fb9098f6024e82b331eeee50c64cefdb58456dba28ee42560be655a0c2bf6","src/obj_mac.rs":"7203d356f7654c5805600b823eccf8e1d9d9cbce9a01859938612a3f0aae4cdc","src/object.rs":"7539eb2164c3fe2162a339ef5b45f1c835010a1522307803815779a01825eed7","src/ocsp.rs":"1db59566d2f072f7ae981f0c07e1604fcdf60e66845afe0689d588f8e4272115","src/ossl_typ.rs":"fc7366e75c78707650c8667593ed183eca6a8ce8dd6b911e342f644d1bcf98bd","src/pem.rs":"fbe95faaeb5b13ce44eb6574b4e21aa384d60fad079e895acaa61390887240d1","src/pkcs12.rs":"93aab2820008ad90dc346a7dcc02f9201d94bff0bb7d1d71031c097850287c50","src/pkcs7.rs":"5370c8d4bfbf1502fa33aff635cb730e7c87814580f1df9bdb1412a492377813","src/rand.rs":"469601b4fbb56d4dbf5cf5d7bb8483e3bde411edea18601e7d1ed6ef27180fd3","src/rsa.rs":"0e8c1f0bc37620a9208175542143bfd411ae88188974d2d5b37a2b8b77d0e2c8","src/safestack.rs":"6c39e28565d34efad707d77561d4caa99e3f028fcac3a2ef6fd403a78de1190c","src/sha.rs":"1a6b028a63654d2419417a9a8af790cd22409a4643682a0686ecdb9441264eba","src/srtp.rs":"306047f3f31828fe7d15de154b375f071ae07012a94c0b5c909f5fe57962a11b","src/ssl.rs":"215a27daa698c73fa909159a9e88a4302b075c33ebd17699f7f3423de60f5d68","src/ssl3.rs":"9336c816e00847d552dea22587d4ac72ff3cbd469fa5ff750423a19ea11e68eb","src/stack.rs":"1a509907283e5a2bf88cf193ce607f49ce7d2d95547c2ce2abc0fd4567aad334","src/tls1.rs":"60ca3dea1bbfda645bde563b4a878dac129c3f760e3ad572381000fc7a8ef522","src/x509.rs":"20e221731587221aab00aef21b4e4bebb7635603d265d424f3dd3c60d4c511e2","src/x509_vfy.rs":"5609f6300ab37a4d4755c81f7af1e6bb93a2f1a6f333c6e42f1e73ebf83ddc05","src/x509v3.rs":"30c58ce7d80670cc597d041e0f59862c1100e38743fc9dde2aec6dc811a4a558"},"package":"465d16ae7fc0e313318f7de5cecf57b2fbe7511fd213978b457e1c96ff46736f"}
+diff --git a/vendor/openssl-sys/build/main.rs b/vendor/openssl-sys/build/main.rs
+index 162e11a66..d3f723bbe 100644
+--- a/vendor/openssl-sys/build/main.rs
++++ b/vendor/openssl-sys/build/main.rs
+@@ -204,6 +204,7 @@ See rust-openssl README for more information:
+ (3, 0, 0) => ('3', '0', '0'),
+ (3, 0, 1) => ('3', '0', '1'),
+ (3, 0, _) => ('3', '0', 'x'),
++ (3, 1, 0) => ('3', '1', '0'),
+ _ => version_error(),
+ };
+
+@@ -244,7 +245,7 @@ fn version_error() -> ! {
+ "
+
+ This crate is only compatible with OpenSSL 1.0.1 through 1.1.1, or LibreSSL 2.5
+-through 3.0.x, but a different version of OpenSSL was found. The build is now aborting
++through 3.1.0, but a different version of OpenSSL was found. The build is now aborting
+ due to this version mismatch.
+
+ "
+--
+2.26.0
+
diff --git a/dev-lang/rust/metadata.xml b/dev-lang/rust/metadata.xml
index 70279a4bbfdf..1e4ffdc29a14 100644
--- a/dev-lang/rust/metadata.xml
+++ b/dev-lang/rust/metadata.xml
@@ -10,14 +10,14 @@
<name>Rust Project</name>
</maintainer>
<use>
- <flag name="clippy">Install clippy component</flag>
- <flag name="system-llvm">Use the system LLVM install</flag>
+ <flag name="clippy">Install clippy, Rust code linter</flag>
+ <flag name="miri">Install miri, an interpreter for Rust's mid-level intermediate representation (requires USE=nightly)</flag>
<flag name="nightly">Enable nightly (UNSTABLE) features</flag>
<flag name="parallel-compiler">Build a multi-threaded rustc</flag>
- <flag name="rls">Install rls component</flag>
- <flag name="rustfmt">Install rustfmt component</flag>
+ <flag name="rls">Install rls, Rust Language Server (used with IDEs supporting RLS protocol)</flag>
+ <flag name="rustfmt">Install rustfmt, Rust code formatter</flag>
<flag name="system-bootstrap">Bootstrap using installed rust compiler</flag>
- <flag name="wasm">Build support for the wasm32-unknown-unknown
- target</flag>
+ <flag name="system-llvm">Use the system LLVM install</flag>
+ <flag name="wasm">Build support for the wasm32-unknown-unknown target</flag>
</use>
</pkgmetadata>
diff --git a/dev-lang/rust/rust-1.37.0.ebuild b/dev-lang/rust/rust-1.37.0.ebuild
deleted file mode 100644
index f7294f8494a0..000000000000
--- a/dev-lang/rust/rust-1.37.0.ebuild
+++ /dev/null
@@ -1,342 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit check-reqs estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs
-
-if [[ ${PV} = *beta* ]]; then
- betaver=${PV//*beta}
- BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
- MY_P="rustc-beta"
- SLOT="beta/${PV}"
- SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz"
-else
- ABI_VER="$(ver_cut 1-2)"
- SLOT="stable/${ABI_VER}"
- MY_P="rustc-${PV}"
- SRC="${MY_P}-src.tar.xz"
- KEYWORDS="amd64 arm64 ppc64 x86"
-fi
-
-RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-
-SRC_URI="https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.xz
- $(rust_all_arch_uris rust-${RUST_STAGE0_VERSION})"
-
-ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
- NVPTX PowerPC Sparc SystemZ WebAssembly X86 XCore )
-ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
-LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?}
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-
-IUSE="clippy cpu_flags_x86_sse2 debug doc libressl rls rustfmt system-llvm wasm ${ALL_LLVM_TARGETS[*]}"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-
-# How to use it:
-# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 9.
-# 3. Specify LLVM_MAX_SLOT, e.g. 8.
-LLVM_DEPEND="
- || (
- sys-devel/llvm:8[llvm_targets_WebAssembly?]
- wasm? ( =sys-devel/lld-8* )
- )
- <sys-devel/llvm-9:=
-"
-LLVM_MAX_SLOT=8
-
-COMMON_DEPEND="
- sys-libs/zlib
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- net-libs/libssh2
- net-libs/http-parser:=
- net-misc/curl[ssl]
- elibc_musl? ( sys-libs/libunwind )
- system-llvm? (
- ${LLVM_DEPEND}
- )
-"
-
-DEPEND="${COMMON_DEPEND}
- ${PYTHON_DEPS}
- || (
- >=sys-devel/gcc-4.7
- >=sys-devel/clang-3.5
- )
- dev-util/cmake
-"
-
-RDEPEND="${COMMON_DEPEND}
- >=app-eselect/eselect-rust-20190311
- !dev-util/cargo
- rustfmt? ( !dev-util/rustfmt )
-"
-
-REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
- wasm? ( llvm_targets_WebAssembly )
- x86? ( cpu_flags_x86_sse2 )
-"
-
-PATCHES=(
- "${FILESDIR}"/0001-llvm-cmake-Add-additional-headers-only-if-they-exist.patch
- "${FILESDIR}"/1.34.2-fix-custom-libdir.patch
- "${FILESDIR}"/1.35.0-revert-commits-triggering-multiple-llvm-rebuilds.patch
- "${FILESDIR}"/1.36.0-libressl.patch
-)
-
-S="${WORKDIR}/${MY_P}-src"
-
-toml_usex() {
- usex "$1" true false
-}
-
-pre_build_checks() {
- CHECKREQS_DISK_BUILD="7G"
- eshopts_push -s extglob
- if is-flagq '-g?(gdb)?([1-9])'; then
- CHECKREQS_DISK_BUILD="10G"
- fi
- eshopts_pop
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
- python-any-r1_pkg_setup
- use system-llvm && llvm_pkg_setup
-}
-
-src_prepare() {
- local rust_stage0_root="${WORKDIR}"/rust-stage0
-
- local rust_stage0="rust-${RUST_STAGE0_VERSION}-$(rust_abi)"
-
- "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig --destdir="${rust_stage0_root}" --prefix=/ || die
-
- default
-}
-
-src_configure() {
- local rust_target="" rust_targets="" arch_cflags
-
- # Collect rust target names to compile standard libs for all ABIs.
- for v in $(multilib_get_enabled_abi_pairs); do
- rust_targets="${rust_targets},\"$(rust_abi $(get_abi_CHOST ${v##*.}))\""
- done
- if use wasm; then
- rust_targets="${rust_targets},\"wasm32-unknown-unknown\""
- fi
- rust_targets="${rust_targets#,}"
-
- local extended="true" tools="\"cargo\","
- if use clippy; then
- tools="\"clippy\",$tools"
- fi
- if use rls; then
- tools="\"rls\",\"analysis\",\"src\",$tools"
- fi
- if use rustfmt; then
- tools="\"rustfmt\",$tools"
- fi
-
- local rust_stage0_root="${WORKDIR}"/rust-stage0
-
- rust_target="$(rust_abi)"
-
- cat <<- EOF > "${S}"/config.toml
- [llvm]
- optimize = $(toml_usex !debug)
- release-debuginfo = $(toml_usex debug)
- assertions = $(toml_usex debug)
- targets = "${LLVM_TARGETS// /;}"
- experimental-targets = ""
- link-shared = $(toml_usex system-llvm)
- [build]
- build = "${rust_target}"
- host = ["${rust_target}"]
- target = [${rust_targets}]
- cargo = "${rust_stage0_root}/bin/cargo"
- rustc = "${rust_stage0_root}/bin/rustc"
- docs = $(toml_usex doc)
- submodules = false
- python = "${EPYTHON}"
- locked-deps = true
- vendor = true
- extended = ${extended}
- tools = [${tools}]
- verbose = 2
- [install]
- prefix = "${EPREFIX}/usr"
- libdir = "$(get_libdir)/${P}"
- docdir = "share/doc/${P}"
- mandir = "share/${P}/man"
- [rust]
- optimize = $(toml_usex !debug)
- debug = $(toml_usex debug)
- debug-assertions = $(toml_usex debug)
- default-linker = "$(tc-getCC)"
- channel = "stable"
- rpath = false
- lld = $(usex system-llvm false $(toml_usex wasm))
- EOF
-
- for v in $(multilib_get_enabled_abi_pairs); do
- rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
- arch_cflags="$(get_abi_CFLAGS ${v##*.})"
-
- cat <<- EOF >> "${S}"/config.env
- CFLAGS_${rust_target}=${arch_cflags}
- EOF
-
- cat <<- EOF >> "${S}"/config.toml
- [target.${rust_target}]
- cc = "$(tc-getBUILD_CC)"
- cxx = "$(tc-getBUILD_CXX)"
- linker = "$(tc-getCC)"
- ar = "$(tc-getAR)"
- EOF
- # librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true;
- if use elibc_musl; then
- cat <<- EOF >> "${S}"/config.toml
- crt-static = false
- EOF
- fi
- if use system-llvm; then
- cat <<- EOF >> "${S}"/config.toml
- llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
- EOF
- fi
- done
-
- if use wasm; then
- cat <<- EOF >> "${S}"/config.toml
- [target.wasm32-unknown-unknown]
- linker = "$(usex system-llvm lld rust-lld)"
- EOF
- fi
-}
-
-src_compile() {
- env $(cat "${S}"/config.env)\
- "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) \
- --exclude src/tools/miri || die # https://github.com/rust-lang/rust/issues/52305
-}
-
-src_install() {
- local rust_target abi_libdir
-
- env DESTDIR="${D}" "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml \
- --exclude src/tools/miri || die
-
- mv "${ED}/usr/bin/rustc" "${ED}/usr/bin/rustc-${PV}" || die
- mv "${ED}/usr/bin/rustdoc" "${ED}/usr/bin/rustdoc-${PV}" || die
- mv "${ED}/usr/bin/rust-gdb" "${ED}/usr/bin/rust-gdb-${PV}" || die
- mv "${ED}/usr/bin/rust-gdbgui" "${ED}/usr/bin/rust-gdbgui-${PV}" || die
- mv "${ED}/usr/bin/rust-lldb" "${ED}/usr/bin/rust-lldb-${PV}" || die
- mv "${ED}/usr/bin/cargo" "${ED}/usr/bin/cargo-${PV}" || die
- if use clippy; then
- mv "${ED}/usr/bin/clippy-driver" "${ED}/usr/bin/clippy-driver-${PV}" || die
- mv "${ED}/usr/bin/cargo-clippy" "${ED}/usr/bin/cargo-clippy-${PV}" || die
- fi
- if use rls; then
- mv "${ED}/usr/bin/rls" "${ED}/usr/bin/rls-${PV}" || die
- fi
- if use rustfmt; then
- mv "${ED}/usr/bin/rustfmt" "${ED}/usr/bin/rustfmt-${PV}" || die
- mv "${ED}/usr/bin/cargo-fmt" "${ED}/usr/bin/cargo-fmt-${PV}" || die
- fi
-
- # Copy shared library versions of standard libraries for all targets
- # into the system's abi-dependent lib directories because the rust
- # installer only does so for the native ABI.
- for v in $(multilib_get_enabled_abi_pairs); do
- if [ ${v##*.} = ${DEFAULT_ABI} ]; then
- continue
- fi
- abi_libdir=$(get_abi_LIBDIR ${v##*.})
- rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
- mkdir -p "${ED}/usr/${abi_libdir}/${P}"
- cp "${ED}/usr/$(get_libdir)/${P}/rustlib/${rust_target}/lib"/*.so \
- "${ED}/usr/${abi_libdir}/${P}" || die
- done
-
- dodoc COPYRIGHT
-
- # FIXME:
- # Really not sure if that env is needed, specailly LDPATH
- cat <<-EOF > "${T}"/50${P}
- LDPATH="${EPREFIX}/usr/$(get_libdir)/${P}"
- MANPATH="${EPREFIX}/usr/share/${P}/man"
- EOF
- doenvd "${T}"/50${P}
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-EOF > "${T}/provider-${P}"
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- EOF
- echo /usr/bin/cargo >> "${T}/provider-${P}"
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rls; then
- echo /usr/bin/rls >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
-}
-
-pkg_postinst() {
- eselect rust update --if-unset
-
- elog "Rust installs a helper script for calling GDB and LLDB,"
- elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."
-
- ewarn "cargo is now installed from dev-lang/rust{,-bin} instead of dev-util/cargo."
- ewarn "This might have resulted in a dangling symlink for /usr/bin/cargo on some"
- ewarn "systems. This can be resolved by calling 'sudo eselect rust set ${P}'."
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-
- if use elibc_musl; then
- ewarn "${PN} on *-musl targets is configured with crt-static"
- ewarn ""
- ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf"
- ewarn "to use it with portage, otherwise you may see failures like"
- ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target "
- ewarn "x86_64-unknown-linux-musl does not support these crate types"
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust/rust-1.38.0.ebuild b/dev-lang/rust/rust-1.38.0.ebuild
deleted file mode 100644
index c4e9d3cf9ee9..000000000000
--- a/dev-lang/rust/rust-1.38.0.ebuild
+++ /dev/null
@@ -1,342 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit check-reqs estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs
-
-if [[ ${PV} = *beta* ]]; then
- betaver=${PV//*beta}
- BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
- MY_P="rustc-beta"
- SLOT="beta/${PV}"
- SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz"
-else
- ABI_VER="$(ver_cut 1-2)"
- SLOT="stable/${ABI_VER}"
- MY_P="rustc-${PV}"
- SRC="${MY_P}-src.tar.xz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-fi
-
-RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-
-SRC_URI="https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.xz
- $(rust_all_arch_uris rust-${RUST_STAGE0_VERSION})"
-
-ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
- NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore )
-ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
-LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?}
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-
-IUSE="clippy cpu_flags_x86_sse2 debug doc libressl rls rustfmt system-llvm wasm ${ALL_LLVM_TARGETS[*]}"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling more than one slot
-# simultaneously.
-
-# How to use it:
-# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 9.
-# 3. Specify LLVM_MAX_SLOT, e.g. 8.
-LLVM_DEPEND="
- || (
- sys-devel/llvm:9[llvm_targets_WebAssembly?]
- wasm? ( =sys-devel/lld-9* )
- )
- <sys-devel/llvm-10:=
-"
-LLVM_MAX_SLOT=9
-
-COMMON_DEPEND="
- sys-libs/zlib
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- net-libs/libssh2
- net-libs/http-parser:=
- net-misc/curl[ssl]
- elibc_musl? ( sys-libs/libunwind )
- system-llvm? (
- ${LLVM_DEPEND}
- )
-"
-
-DEPEND="${COMMON_DEPEND}
- ${PYTHON_DEPS}
- || (
- >=sys-devel/gcc-4.7
- >=sys-devel/clang-3.5
- )
- dev-util/cmake
-"
-
-RDEPEND="${COMMON_DEPEND}
- >=app-eselect/eselect-rust-20190311
- !dev-util/cargo
- rustfmt? ( !dev-util/rustfmt )
-"
-
-REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
- wasm? ( llvm_targets_WebAssembly )
- x86? ( cpu_flags_x86_sse2 )
-"
-QA_FLAGS_IGNORED="usr/bin/* usr/lib*/${P}"
-
-PATCHES=(
- "${FILESDIR}"/1.38.0-fix-custom-libdir.patch
- "${FILESDIR}"/1.38.0-fix-multiple-llvm-rebuilds.patch
- "${FILESDIR}"/1.36.0-libressl.patch
-)
-
-S="${WORKDIR}/${MY_P}-src"
-
-toml_usex() {
- usex "$1" true false
-}
-
-pre_build_checks() {
- CHECKREQS_DISK_BUILD="9G"
- eshopts_push -s extglob
- if is-flagq '-g?(gdb)?([1-9])'; then
- CHECKREQS_DISK_BUILD="14G"
- fi
- eshopts_pop
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
- python-any-r1_pkg_setup
- use system-llvm && llvm_pkg_setup
-}
-
-src_prepare() {
- local rust_stage0_root="${WORKDIR}"/rust-stage0
-
- local rust_stage0="rust-${RUST_STAGE0_VERSION}-$(rust_abi)"
-
- "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig --destdir="${rust_stage0_root}" --prefix=/ || die
-
- default
-}
-
-src_configure() {
- local rust_target="" rust_targets="" arch_cflags
-
- # Collect rust target names to compile standard libs for all ABIs.
- for v in $(multilib_get_enabled_abi_pairs); do
- rust_targets="${rust_targets},\"$(rust_abi $(get_abi_CHOST ${v##*.}))\""
- done
- if use wasm; then
- rust_targets="${rust_targets},\"wasm32-unknown-unknown\""
- fi
- rust_targets="${rust_targets#,}"
-
- local extended="true" tools="\"cargo\","
- if use clippy; then
- tools="\"clippy\",$tools"
- fi
- if use rls; then
- tools="\"rls\",\"analysis\",\"src\",$tools"
- fi
- if use rustfmt; then
- tools="\"rustfmt\",$tools"
- fi
-
- local rust_stage0_root="${WORKDIR}"/rust-stage0
-
- rust_target="$(rust_abi)"
-
- cat <<- EOF > "${S}"/config.toml
- [llvm]
- optimize = $(toml_usex !debug)
- release-debuginfo = $(toml_usex debug)
- assertions = $(toml_usex debug)
- targets = "${LLVM_TARGETS// /;}"
- experimental-targets = ""
- link-shared = $(toml_usex system-llvm)
- [build]
- build = "${rust_target}"
- host = ["${rust_target}"]
- target = [${rust_targets}]
- cargo = "${rust_stage0_root}/bin/cargo"
- rustc = "${rust_stage0_root}/bin/rustc"
- docs = $(toml_usex doc)
- submodules = false
- python = "${EPYTHON}"
- locked-deps = true
- vendor = true
- extended = ${extended}
- tools = [${tools}]
- verbose = 2
- [install]
- prefix = "${EPREFIX}/usr"
- libdir = "$(get_libdir)/${P}"
- docdir = "share/doc/${P}"
- mandir = "share/${P}/man"
- [rust]
- optimize = $(toml_usex !debug)
- debug = $(toml_usex debug)
- debug-assertions = $(toml_usex debug)
- default-linker = "$(tc-getCC)"
- channel = "stable"
- rpath = false
- lld = $(usex system-llvm false $(toml_usex wasm))
- EOF
-
- for v in $(multilib_get_enabled_abi_pairs); do
- rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
- arch_cflags="$(get_abi_CFLAGS ${v##*.})"
-
- cat <<- EOF >> "${S}"/config.env
- CFLAGS_${rust_target}=${arch_cflags}
- EOF
-
- cat <<- EOF >> "${S}"/config.toml
- [target.${rust_target}]
- cc = "$(tc-getBUILD_CC)"
- cxx = "$(tc-getBUILD_CXX)"
- linker = "$(tc-getCC)"
- ar = "$(tc-getAR)"
- EOF
- # librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true;
- if use elibc_musl; then
- cat <<- EOF >> "${S}"/config.toml
- crt-static = false
- EOF
- fi
- if use system-llvm; then
- cat <<- EOF >> "${S}"/config.toml
- llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
- EOF
- fi
- done
-
- if use wasm; then
- cat <<- EOF >> "${S}"/config.toml
- [target.wasm32-unknown-unknown]
- linker = "$(usex system-llvm lld rust-lld)"
- EOF
- fi
-}
-
-src_compile() {
- env $(cat "${S}"/config.env)\
- "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) \
- --exclude src/tools/miri || die # https://github.com/rust-lang/rust/issues/52305
-}
-
-src_install() {
- local rust_target abi_libdir
-
- env DESTDIR="${D}" "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml \
- --exclude src/tools/miri || die
-
- mv "${ED}/usr/bin/rustc" "${ED}/usr/bin/rustc-${PV}" || die
- mv "${ED}/usr/bin/rustdoc" "${ED}/usr/bin/rustdoc-${PV}" || die
- mv "${ED}/usr/bin/rust-gdb" "${ED}/usr/bin/rust-gdb-${PV}" || die
- mv "${ED}/usr/bin/rust-gdbgui" "${ED}/usr/bin/rust-gdbgui-${PV}" || die
- mv "${ED}/usr/bin/rust-lldb" "${ED}/usr/bin/rust-lldb-${PV}" || die
- mv "${ED}/usr/bin/cargo" "${ED}/usr/bin/cargo-${PV}" || die
- if use clippy; then
- mv "${ED}/usr/bin/clippy-driver" "${ED}/usr/bin/clippy-driver-${PV}" || die
- mv "${ED}/usr/bin/cargo-clippy" "${ED}/usr/bin/cargo-clippy-${PV}" || die
- fi
- if use rls; then
- mv "${ED}/usr/bin/rls" "${ED}/usr/bin/rls-${PV}" || die
- fi
- if use rustfmt; then
- mv "${ED}/usr/bin/rustfmt" "${ED}/usr/bin/rustfmt-${PV}" || die
- mv "${ED}/usr/bin/cargo-fmt" "${ED}/usr/bin/cargo-fmt-${PV}" || die
- fi
-
- # Copy shared library versions of standard libraries for all targets
- # into the system's abi-dependent lib directories because the rust
- # installer only does so for the native ABI.
- for v in $(multilib_get_enabled_abi_pairs); do
- if [ ${v##*.} = ${DEFAULT_ABI} ]; then
- continue
- fi
- abi_libdir=$(get_abi_LIBDIR ${v##*.})
- rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
- mkdir -p "${ED}/usr/${abi_libdir}/${P}"
- cp "${ED}/usr/$(get_libdir)/${P}/rustlib/${rust_target}/lib"/*.so \
- "${ED}/usr/${abi_libdir}/${P}" || die
- done
-
- dodoc COPYRIGHT
-
- # FIXME:
- # Really not sure if that env is needed, specailly LDPATH
- cat <<-EOF > "${T}"/50${P}
- LDPATH="${EPREFIX}/usr/$(get_libdir)/${P}"
- MANPATH="${EPREFIX}/usr/share/${P}/man"
- EOF
- doenvd "${T}"/50${P}
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-EOF > "${T}/provider-${P}"
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- EOF
- echo /usr/bin/cargo >> "${T}/provider-${P}"
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rls; then
- echo /usr/bin/rls >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
-}
-
-pkg_postinst() {
- eselect rust update --if-unset
-
- elog "Rust installs a helper script for calling GDB and LLDB,"
- elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."
-
- ewarn "cargo is now installed from dev-lang/rust{,-bin} instead of dev-util/cargo."
- ewarn "This might have resulted in a dangling symlink for /usr/bin/cargo on some"
- ewarn "systems. This can be resolved by calling 'sudo eselect rust set ${P}'."
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-
- if use elibc_musl; then
- ewarn "${PN} on *-musl targets is configured with crt-static"
- ewarn ""
- ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf"
- ewarn "to use it with portage, otherwise you may see failures like"
- ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target "
- ewarn "x86_64-unknown-linux-musl does not support these crate types"
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust/rust-1.39.0.ebuild b/dev-lang/rust/rust-1.39.0.ebuild
deleted file mode 100644
index caf6bb4b5809..000000000000
--- a/dev-lang/rust/rust-1.39.0.ebuild
+++ /dev/null
@@ -1,347 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs
-
-if [[ ${PV} = *beta* ]]; then
- betaver=${PV//*beta}
- BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
- MY_P="rustc-beta"
- SLOT="beta/${PV}"
- SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz"
-else
- ABI_VER="$(ver_cut 1-2)"
- SLOT="stable/${ABI_VER}"
- MY_P="rustc-${PV}"
- SRC="${MY_P}-src.tar.xz"
- KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-fi
-
-RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-
-SRC_URI="https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.xz
- $(rust_all_arch_uris rust-${RUST_STAGE0_VERSION})"
-
-ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
- NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore )
-ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
-LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?}
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-
-IUSE="clippy cpu_flags_x86_sse2 debug doc libressl rls rustfmt system-llvm wasm ${ALL_LLVM_TARGETS[*]}"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling more than one slot
-# simultaneously.
-
-# How to use it:
-# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 9.
-# 3. Specify LLVM_MAX_SLOT, e.g. 8.
-LLVM_DEPEND="
- || (
- sys-devel/llvm:9[llvm_targets_WebAssembly?]
- wasm? ( =sys-devel/lld-9* )
- )
- <sys-devel/llvm-10:=
-"
-LLVM_MAX_SLOT=9
-
-COMMON_DEPEND="
- sys-libs/zlib
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- net-libs/libssh2
- net-libs/http-parser:=
- net-misc/curl[ssl]
- elibc_musl? ( sys-libs/libunwind )
- system-llvm? (
- ${LLVM_DEPEND}
- )
-"
-
-DEPEND="${COMMON_DEPEND}
- ${PYTHON_DEPS}
- || (
- >=sys-devel/gcc-4.7
- >=sys-devel/clang-3.5
- )
- dev-util/cmake
-"
-
-RDEPEND="${COMMON_DEPEND}
- >=app-eselect/eselect-rust-20190311
- !dev-util/cargo
- rustfmt? ( !dev-util/rustfmt )
-"
-
-REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
- wasm? ( llvm_targets_WebAssembly )
- x86? ( cpu_flags_x86_sse2 )
-"
-QA_FLAGS_IGNORED="usr/bin/* usr/lib*/${P}"
-
-PATCHES=(
- "${FILESDIR}"/1.36.0-libressl.patch
-)
-
-S="${WORKDIR}/${MY_P}-src"
-
-toml_usex() {
- usex "$1" true false
-}
-
-pre_build_checks() {
- CHECKREQS_DISK_BUILD="9G"
- eshopts_push -s extglob
- if is-flagq '-g?(gdb)?([1-9])'; then
- CHECKREQS_DISK_BUILD="14G"
- fi
- eshopts_pop
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
- python-any-r1_pkg_setup
- use system-llvm && llvm_pkg_setup
-}
-
-src_prepare() {
- local rust_stage0_root="${WORKDIR}"/rust-stage0
-
- local rust_stage0="rust-${RUST_STAGE0_VERSION}-$(rust_abi)"
-
- "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig --destdir="${rust_stage0_root}" --prefix=/ || die
-
- default
-}
-
-src_configure() {
- local rust_target="" rust_targets="" arch_cflags
-
- # Collect rust target names to compile standard libs for all ABIs.
- for v in $(multilib_get_enabled_abi_pairs); do
- rust_targets="${rust_targets},\"$(rust_abi $(get_abi_CHOST ${v##*.}))\""
- done
- if use wasm; then
- rust_targets="${rust_targets},\"wasm32-unknown-unknown\""
- fi
- rust_targets="${rust_targets#,}"
-
- local extended="true" tools="\"cargo\","
- if use clippy; then
- tools="\"clippy\",$tools"
- fi
- if use rls; then
- tools="\"rls\",\"analysis\",\"src\",$tools"
- fi
- if use rustfmt; then
- tools="\"rustfmt\",$tools"
- fi
-
- local rust_stage0_root="${WORKDIR}"/rust-stage0
-
- rust_target="$(rust_abi)"
-
- cat <<- EOF > "${S}"/config.toml
- [llvm]
- optimize = $(toml_usex !debug)
- release-debuginfo = $(toml_usex debug)
- assertions = $(toml_usex debug)
- targets = "${LLVM_TARGETS// /;}"
- experimental-targets = ""
- link-shared = $(toml_usex system-llvm)
- [build]
- build = "${rust_target}"
- host = ["${rust_target}"]
- target = [${rust_targets}]
- cargo = "${rust_stage0_root}/bin/cargo"
- rustc = "${rust_stage0_root}/bin/rustc"
- docs = $(toml_usex doc)
- submodules = false
- python = "${EPYTHON}"
- locked-deps = true
- vendor = true
- extended = ${extended}
- tools = [${tools}]
- verbose = 2
- [install]
- prefix = "${EPREFIX}/usr"
- libdir = "$(get_libdir)/${P}"
- docdir = "share/doc/${P}"
- mandir = "share/${P}/man"
- [rust]
- optimize = $(toml_usex !debug)
- debug = $(toml_usex debug)
- debug-assertions = $(toml_usex debug)
- default-linker = "$(tc-getCC)"
- channel = "stable"
- rpath = false
- lld = $(usex system-llvm false $(toml_usex wasm))
- EOF
-
- for v in $(multilib_get_enabled_abi_pairs); do
- rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
- arch_cflags="$(get_abi_CFLAGS ${v##*.})"
-
- cat <<- EOF >> "${S}"/config.env
- CFLAGS_${rust_target}=${arch_cflags}
- EOF
-
- cat <<- EOF >> "${S}"/config.toml
- [target.${rust_target}]
- cc = "$(tc-getBUILD_CC)"
- cxx = "$(tc-getBUILD_CXX)"
- linker = "$(tc-getCC)"
- ar = "$(tc-getAR)"
- EOF
- # librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true;
- if use elibc_musl; then
- cat <<- EOF >> "${S}"/config.toml
- crt-static = false
- EOF
- fi
- if use system-llvm; then
- cat <<- EOF >> "${S}"/config.toml
- llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
- EOF
- fi
- done
-
- if use wasm; then
- cat <<- EOF >> "${S}"/config.toml
- [target.wasm32-unknown-unknown]
- linker = "$(usex system-llvm lld rust-lld)"
- EOF
- fi
-}
-
-src_compile() {
- env $(cat "${S}"/config.env)\
- "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) \
- --exclude src/tools/miri || die # https://github.com/rust-lang/rust/issues/52305
-}
-
-src_install() {
- local rust_target abi_libdir
-
- env DESTDIR="${D}" "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml \
- --exclude src/tools/miri || die
-
- # bug #689562, #689160
- rm "${D}/etc/bash_completion.d/cargo" || die
- pushd "${D}" > /dev/null || die
- rmdir -p etc/bash_completion.d || die
- popd > /dev/null || die
- dobashcomp build/tmp/dist/cargo-image/etc/bash_completion.d/cargo
-
- mv "${ED}/usr/bin/rustc" "${ED}/usr/bin/rustc-${PV}" || die
- mv "${ED}/usr/bin/rustdoc" "${ED}/usr/bin/rustdoc-${PV}" || die
- mv "${ED}/usr/bin/rust-gdb" "${ED}/usr/bin/rust-gdb-${PV}" || die
- mv "${ED}/usr/bin/rust-gdbgui" "${ED}/usr/bin/rust-gdbgui-${PV}" || die
- mv "${ED}/usr/bin/rust-lldb" "${ED}/usr/bin/rust-lldb-${PV}" || die
- mv "${ED}/usr/bin/cargo" "${ED}/usr/bin/cargo-${PV}" || die
- if use clippy; then
- mv "${ED}/usr/bin/clippy-driver" "${ED}/usr/bin/clippy-driver-${PV}" || die
- mv "${ED}/usr/bin/cargo-clippy" "${ED}/usr/bin/cargo-clippy-${PV}" || die
- fi
- if use rls; then
- mv "${ED}/usr/bin/rls" "${ED}/usr/bin/rls-${PV}" || die
- fi
- if use rustfmt; then
- mv "${ED}/usr/bin/rustfmt" "${ED}/usr/bin/rustfmt-${PV}" || die
- mv "${ED}/usr/bin/cargo-fmt" "${ED}/usr/bin/cargo-fmt-${PV}" || die
- fi
-
- # Copy shared library versions of standard libraries for all targets
- # into the system's abi-dependent lib directories because the rust
- # installer only does so for the native ABI.
- for v in $(multilib_get_enabled_abi_pairs); do
- if [ ${v##*.} = ${DEFAULT_ABI} ]; then
- continue
- fi
- abi_libdir=$(get_abi_LIBDIR ${v##*.})
- rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
- mkdir -p "${ED}/usr/${abi_libdir}/${P}"
- cp "${ED}/usr/$(get_libdir)/${P}/rustlib/${rust_target}/lib"/*.so \
- "${ED}/usr/${abi_libdir}/${P}" || die
- done
-
- dodoc COPYRIGHT
-
- # FIXME:
- # Really not sure if that env is needed, specailly LDPATH
- cat <<-EOF > "${T}"/50${P}
- LDPATH="${EPREFIX}/usr/$(get_libdir)/${P}"
- MANPATH="${EPREFIX}/usr/share/${P}/man"
- EOF
- doenvd "${T}"/50${P}
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-EOF > "${T}/provider-${P}"
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- EOF
- echo /usr/bin/cargo >> "${T}/provider-${P}"
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rls; then
- echo /usr/bin/rls >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
-}
-
-pkg_postinst() {
- eselect rust update --if-unset
-
- elog "Rust installs a helper script for calling GDB and LLDB,"
- elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."
-
- ewarn "cargo is now installed from dev-lang/rust{,-bin} instead of dev-util/cargo."
- ewarn "This might have resulted in a dangling symlink for /usr/bin/cargo on some"
- ewarn "systems. This can be resolved by calling 'sudo eselect rust set ${P}'."
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-
- if use elibc_musl; then
- ewarn "${PN} on *-musl targets is configured with crt-static"
- ewarn ""
- ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf"
- ewarn "to use it with portage, otherwise you may see failures like"
- ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target "
- ewarn "x86_64-unknown-linux-musl does not support these crate types"
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust/rust-1.40.0-r1.ebuild b/dev-lang/rust/rust-1.40.0-r1.ebuild
deleted file mode 100644
index 8ac9b0156ead..000000000000
--- a/dev-lang/rust/rust-1.40.0-r1.ebuild
+++ /dev/null
@@ -1,358 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs
-
-if [[ ${PV} = *beta* ]]; then
- betaver=${PV//*beta}
- BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
- MY_P="rustc-beta"
- SLOT="beta/${PV}"
- SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz"
-else
- ABI_VER="$(ver_cut 1-2)"
- SLOT="stable/${ABI_VER}"
- MY_P="rustc-${PV}"
- SRC="${MY_P}-src.tar.xz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-fi
-
-RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-
-SRC_URI="
- https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.xz
- !system-bootstrap? ( $(rust_all_arch_uris rust-${RUST_STAGE0_VERSION}) )
-"
-
-ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
- NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore )
-ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
-LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?}
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-
-IUSE="clippy cpu_flags_x86_sse2 debug doc libressl nightly parallel-compiler rls rustfmt system-bootstrap system-llvm wasm ${ALL_LLVM_TARGETS[*]}"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling more than one slot
-# simultaneously.
-
-# How to use it:
-# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 10.
-# 3. Specify LLVM_MAX_SLOT, e.g. 9.
-LLVM_DEPEND="
- || (
- sys-devel/llvm:9[llvm_targets_WebAssembly?]
- wasm? ( =sys-devel/lld-9* )
- )
- <sys-devel/llvm-10:=
-"
-LLVM_MAX_SLOT=9
-
-# FIXME:
-# this should be '>=virtual/rust-1.$(($(ver_cut 2) - 1))', but we can't do it yet
-# as the first gentoo-built rust that can bootstap new compiler is 1.40.0-r1
-BOOTSTRAP_DEPEND="|| ( =dev-lang/rust-${PVR} =dev-lang/rust-bin-${PV}* )"
-
-COMMON_DEPEND="
- sys-libs/zlib
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- net-libs/libssh2
- net-libs/http-parser:=
- net-misc/curl[ssl]
- elibc_musl? ( sys-libs/libunwind )
- system-llvm? (
- ${LLVM_DEPEND}
- )
-"
-
-DEPEND="${COMMON_DEPEND}
- ${PYTHON_DEPS}
- || (
- >=sys-devel/gcc-4.7
- >=sys-devel/clang-3.5
- )
- system-bootstrap? ( ${BOOTSTRAP_DEPEND} )
- system-llvm? (
- dev-util/cmake
- dev-util/ninja
- )
-"
-
-RDEPEND="${COMMON_DEPEND}
- >=app-eselect/eselect-rust-20190311
-"
-
-REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
- parallel-compiler? ( nightly )
- wasm? ( llvm_targets_WebAssembly )
- x86? ( cpu_flags_x86_sse2 )
-"
-
-QA_FLAGS_IGNORED="
- usr/bin/*-${PV}
- usr/lib*/lib*.so
- usr/lib/rustlib/*/codegen-backends/librustc_codegen_llvm-llvm.so
- usr/lib/rustlib/*/lib/lib*.so
-"
-
-QA_SONAME="usr/lib.*/librustc_macros.*.so"
-
-PATCHES=(
- "${FILESDIR}"/1.36.0-libressl.patch
- "${FILESDIR}"/1.40.0-add-soname.patch
-)
-
-S="${WORKDIR}/${MY_P}-src"
-
-toml_usex() {
- usex "$1" true false
-}
-
-pre_build_checks() {
- CHECKREQS_DISK_BUILD="9G"
- eshopts_push -s extglob
- if is-flagq '-g?(gdb)?([1-9])'; then
- CHECKREQS_DISK_BUILD="14G"
- fi
- eshopts_pop
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
- python-any-r1_pkg_setup
- use system-llvm && llvm_pkg_setup
-}
-
-src_prepare() {
- if ! use system-bootstrap; then
- local rust_stage0_root="${WORKDIR}"/rust-stage0
- local rust_stage0="rust-${RUST_STAGE0_VERSION}-$(rust_abi)"
-
- "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig \
- --destdir="${rust_stage0_root}" --prefix=/ || die
- fi
-
- default
-}
-
-src_configure() {
- local rust_target="" rust_targets="" arch_cflags
-
- # Collect rust target names to compile standard libs for all ABIs.
- for v in $(multilib_get_enabled_abi_pairs); do
- rust_targets="${rust_targets},\"$(rust_abi $(get_abi_CHOST ${v##*.}))\""
- done
- if use wasm; then
- rust_targets="${rust_targets},\"wasm32-unknown-unknown\""
- fi
- rust_targets="${rust_targets#,}"
-
- local extended="true" tools="\"cargo\","
- if use clippy; then
- tools="\"clippy\",$tools"
- fi
- if use rls; then
- tools="\"rls\",\"analysis\",\"src\",$tools"
- fi
- if use rustfmt; then
- tools="\"rustfmt\",$tools"
- fi
-
- local rust_stage0_root
- if use system-bootstrap; then
- rust_stage0_root="$(rustc --print sysroot)"
- else
- rust_stage0_root="${WORKDIR}"/rust-stage0
- fi
-
- rust_target="$(rust_abi)"
-
- cat <<- EOF > "${S}"/config.toml
- [llvm]
- optimize = $(toml_usex !debug)
- release-debuginfo = $(toml_usex debug)
- assertions = $(toml_usex debug)
- targets = "${LLVM_TARGETS// /;}"
- experimental-targets = ""
- link-shared = $(toml_usex system-llvm)
- [build]
- build = "${rust_target}"
- host = ["${rust_target}"]
- target = [${rust_targets}]
- cargo = "${rust_stage0_root}/bin/cargo"
- rustc = "${rust_stage0_root}/bin/rustc"
- docs = $(toml_usex doc)
- compiler-docs = $(toml_usex doc)
- submodules = false
- python = "${EPYTHON}"
- locked-deps = true
- vendor = true
- extended = ${extended}
- tools = [${tools}]
- verbose = 2
- [install]
- prefix = "${EPREFIX}/usr"
- libdir = "lib"
- docdir = "share/doc/${PF}"
- mandir = "share/man"
- [rust]
- optimize = $(toml_usex !debug)
- debug = $(toml_usex debug)
- debug-assertions = $(toml_usex debug)
- default-linker = "$(tc-getCC)"
- parallel-compiler = $(toml_usex parallel-compiler)
- channel = "$(usex nightly nightly stable)"
- rpath = false
- lld = $(usex system-llvm false $(toml_usex wasm))
- [dist]
- src-tarball = false
- EOF
-
- for v in $(multilib_get_enabled_abi_pairs); do
- rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
- arch_cflags="$(get_abi_CFLAGS ${v##*.})"
-
- cat <<- EOF >> "${S}"/config.env
- CFLAGS_${rust_target}=${arch_cflags}
- EOF
-
- cat <<- EOF >> "${S}"/config.toml
- [target.${rust_target}]
- cc = "$(tc-getBUILD_CC)"
- cxx = "$(tc-getBUILD_CXX)"
- linker = "$(tc-getCC)"
- ar = "$(tc-getAR)"
- EOF
- # librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true;
- if use elibc_musl; then
- cat <<- EOF >> "${S}"/config.toml
- crt-static = false
- EOF
- fi
- if use system-llvm; then
- cat <<- EOF >> "${S}"/config.toml
- llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
- EOF
- fi
- done
-
- if use wasm; then
- cat <<- EOF >> "${S}"/config.toml
- [target.wasm32-unknown-unknown]
- linker = "$(usex system-llvm lld rust-lld)"
- EOF
- fi
-}
-
-src_compile() {
- env $(cat "${S}"/config.env)\
- "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) \
- --exclude src/tools/miri || die # https://github.com/rust-lang/rust/issues/52305
-}
-
-src_install() {
- env DESTDIR="${D}" "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml \
- --exclude src/tools/miri || die
-
- # bug #689562, #689160
- rm "${D}/etc/bash_completion.d/cargo" || die
- rmdir "${D}"/etc{/bash_completion.d,} || die
- dobashcomp build/tmp/dist/cargo-image/etc/bash_completion.d/cargo
-
- mv "${ED}/usr/bin/rustc" "${ED}/usr/bin/rustc-${PV}" || die
- mv "${ED}/usr/bin/rustdoc" "${ED}/usr/bin/rustdoc-${PV}" || die
- mv "${ED}/usr/bin/rust-gdb" "${ED}/usr/bin/rust-gdb-${PV}" || die
- mv "${ED}/usr/bin/rust-gdbgui" "${ED}/usr/bin/rust-gdbgui-${PV}" || die
- mv "${ED}/usr/bin/rust-lldb" "${ED}/usr/bin/rust-lldb-${PV}" || die
- mv "${ED}/usr/bin/cargo" "${ED}/usr/bin/cargo-${PV}" || die
- if use clippy; then
- mv "${ED}/usr/bin/clippy-driver" "${ED}/usr/bin/clippy-driver-${PV}" || die
- mv "${ED}/usr/bin/cargo-clippy" "${ED}/usr/bin/cargo-clippy-${PV}" || die
- fi
- if use rls; then
- mv "${ED}/usr/bin/rls" "${ED}/usr/bin/rls-${PV}" || die
- fi
- if use rustfmt; then
- mv "${ED}/usr/bin/rustfmt" "${ED}/usr/bin/rustfmt-${PV}" || die
- mv "${ED}/usr/bin/cargo-fmt" "${ED}/usr/bin/cargo-fmt-${PV}" || die
- fi
-
- # Move public shared libs to abi specific libdir
- # Private and target specific libs MUST stay in /usr/lib/rustlib/${rust_target}/lib
- if [[ $(get_libdir) != lib ]]; then
- dodir /usr/$(get_libdir)
- mv "${ED}/usr/lib"/*.so "${ED}/usr/$(get_libdir)/" || die
- fi
-
- dodoc COPYRIGHT
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-EOF > "${T}/provider-${P}"
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- EOF
- echo /usr/bin/cargo >> "${T}/provider-${P}"
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rls; then
- echo /usr/bin/rls >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
-}
-
-pkg_postinst() {
- eselect rust update --if-unset
-
- elog "Rust installs a helper script for calling GDB and LLDB,"
- elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."
-
- ewarn "cargo is now installed from dev-lang/rust{,-bin} instead of dev-util/cargo."
- ewarn "This might have resulted in a dangling symlink for /usr/bin/cargo on some"
- ewarn "systems. This can be resolved by calling 'sudo eselect rust set ${P}'."
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-
- if use elibc_musl; then
- ewarn "${PN} on *-musl targets is configured with crt-static"
- ewarn ""
- ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf"
- ewarn "to use it with portage, otherwise you may see failures like"
- ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target "
- ewarn "x86_64-unknown-linux-musl does not support these crate types"
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust/rust-1.41.1.ebuild b/dev-lang/rust/rust-1.41.1.ebuild
index 94d6e304cbbe..2f815fa79c82 100644
--- a/dev-lang/rust/rust-1.41.1.ebuild
+++ b/dev-lang/rust/rust-1.41.1.ebuild
@@ -18,7 +18,7 @@ else
SLOT="stable/${ABI_VER}"
MY_P="rustc-${PV}"
SRC="${MY_P}-src.tar.xz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+ KEYWORDS="amd64 ~arm arm64 ppc64 x86"
fi
RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
@@ -51,9 +51,9 @@ IUSE="clippy cpu_flags_x86_sse2 debug doc libressl nightly parallel-compiler rls
LLVM_DEPEND="
|| (
sys-devel/llvm:9[llvm_targets_WebAssembly?]
- wasm? ( =sys-devel/lld-9* )
)
<sys-devel/llvm-10:=
+ wasm? ( sys-devel/lld )
"
LLVM_MAX_SLOT=9
@@ -79,7 +79,7 @@ DEPEND="${COMMON_DEPEND}
>=sys-devel/clang-3.5
)
system-bootstrap? ( ${BOOTSTRAP_DEPEND} )
- system-llvm? (
+ !system-llvm? (
dev-util/cmake
dev-util/ninja
)
diff --git a/dev-lang/rust/rust-1.41.0.ebuild b/dev-lang/rust/rust-1.42.0.ebuild
index c3b18cdfc52d..d61ae45fa31c 100644
--- a/dev-lang/rust/rust-1.41.0.ebuild
+++ b/dev-lang/rust/rust-1.42.0.ebuild
@@ -18,10 +18,10 @@ else
SLOT="stable/${ABI_VER}"
MY_P="rustc-${PV}"
SRC="${MY_P}-src.tar.xz"
- KEYWORDS="amd64 ~arm ~arm64 ppc64 x86"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
fi
-RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
+RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).1"
DESCRIPTION="Systems programming language from Mozilla"
HOMEPAGE="https://www.rust-lang.org/"
@@ -38,7 +38,7 @@ LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?}
LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-IUSE="clippy cpu_flags_x86_sse2 debug doc libressl nightly parallel-compiler rls rustfmt system-bootstrap system-llvm wasm ${ALL_LLVM_TARGETS[*]}"
+IUSE="clippy cpu_flags_x86_sse2 debug doc libressl miri nightly parallel-compiler rls rustfmt system-bootstrap system-llvm wasm ${ALL_LLVM_TARGETS[*]}"
# Please keep the LLVM dependency block separate. Since LLVM is slotted,
# we need to *really* make sure we're not pulling more than one slot
@@ -46,18 +46,19 @@ IUSE="clippy cpu_flags_x86_sse2 debug doc libressl nightly parallel-compiler rls
# How to use it:
# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 10.
-# 3. Specify LLVM_MAX_SLOT, e.g. 9.
+# 2. Update the := to specify *max* version, e.g. < 11.
+# 3. Specify LLVM_MAX_SLOT, e.g. 10.
LLVM_DEPEND="
|| (
- sys-devel/llvm:9[llvm_targets_WebAssembly?]
- wasm? ( =sys-devel/lld-9* )
+ sys-devel/llvm:10[${LLVM_TARGET_USEDEPS// /,}]
+ sys-devel/llvm:9[${LLVM_TARGET_USEDEPS// /,}]
)
- <sys-devel/llvm-10:=
+ <sys-devel/llvm-11:=
+ wasm? ( sys-devel/lld )
"
-LLVM_MAX_SLOT=9
+LLVM_MAX_SLOT=10
-BOOTSTRAP_DEPEND="|| ( >=dev-lang/rust-1.$(($(ver_cut 2) - 1)).0-r1 >=dev-lang/rust-bin-1.$(($(ver_cut 2) - 1)) )"
+BOOTSTRAP_DEPEND="|| ( >=dev-lang/rust-1.$(($(ver_cut 2) - 1)) >=dev-lang/rust-bin-1.$(($(ver_cut 2) - 1)) )"
COMMON_DEPEND="
net-libs/libssh2:=
@@ -79,7 +80,7 @@ DEPEND="${COMMON_DEPEND}
>=sys-devel/clang-3.5
)
system-bootstrap? ( ${BOOTSTRAP_DEPEND} )
- system-llvm? (
+ !system-llvm? (
dev-util/cmake
dev-util/ninja
)
@@ -90,23 +91,25 @@ RDEPEND="${COMMON_DEPEND}
"
REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
+ miri? ( nightly )
parallel-compiler? ( nightly )
wasm? ( llvm_targets_WebAssembly )
x86? ( cpu_flags_x86_sse2 )
"
QA_FLAGS_IGNORED="
- usr/bin/*-${PV}
- usr/lib*/lib*.so
- usr/lib/rustlib/*/codegen-backends/librustc_codegen_llvm-llvm.so
- usr/lib/rustlib/*/lib/lib*.so
+ usr/bin/.*-${PV}
+ usr/lib.*/lib.*.so
+ usr/lib/rustlib/.*/codegen-backends/librustc_codegen_llvm-llvm.so
+ usr/lib/rustlib/.*/lib/lib.*.so
"
QA_SONAME="usr/lib.*/librustc_macros.*.so"
PATCHES=(
"${FILESDIR}"/1.40.0-add-soname.patch
- "${FILESDIR}"/llvm-gcc10.patch
+ "${FILESDIR}"/1.42.0-fix-bootstrap.patch
+ "${FILESDIR}"/1.42.0-libressl.patch
)
S="${WORKDIR}/${MY_P}-src"
@@ -116,7 +119,7 @@ toml_usex() {
}
pre_build_checks() {
- CHECKREQS_DISK_BUILD="10G"
+ CHECKREQS_DISK_BUILD="9G"
eshopts_push -s extglob
if is-flagq '-g?(gdb)?([1-9])'; then
CHECKREQS_DISK_BUILD="15G"
@@ -177,6 +180,9 @@ src_configure() {
if use clippy; then
tools="\"clippy\",$tools"
fi
+ if use miri; then
+ tools="\"miri\",$tools"
+ fi
if use rls; then
tools="\"rls\",\"analysis\",\"src\",$tools"
fi
@@ -222,7 +228,7 @@ src_configure() {
docdir = "share/doc/${PF}"
mandir = "share/man"
[rust]
- optimize = $(toml_usex !debug)
+ optimize = true
debug = $(toml_usex debug)
debug-assertions = $(toml_usex debug)
default-linker = "$(tc-getCC)"
@@ -230,6 +236,7 @@ src_configure() {
channel = "$(usex nightly nightly stable)"
rpath = false
lld = $(usex system-llvm false $(toml_usex wasm))
+ backtrace-on-ice = true
[dist]
src-tarball = false
EOF
@@ -261,24 +268,25 @@ src_configure() {
EOF
fi
done
-
if use wasm; then
cat <<- EOF >> "${S}"/config.toml
[target.wasm32-unknown-unknown]
linker = "$(usex system-llvm lld rust-lld)"
EOF
fi
+
+ einfo "Rust configured with the following settings:"
+ cat "${S}"/config.toml || die
}
src_compile() {
env $(cat "${S}"/config.env)\
- "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) \
- --exclude src/tools/miri || die # https://github.com/rust-lang/rust/issues/52305
+ "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
}
src_install() {
- env DESTDIR="${D}" "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml \
- --exclude src/tools/miri || die
+ env $(cat "${S}"/config.env) DESTDIR="${D}" \
+ "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml || die
# bug #689562, #689160
rm "${D}/etc/bash_completion.d/cargo" || die
@@ -295,6 +303,10 @@ src_install() {
mv "${ED}/usr/bin/clippy-driver" "${ED}/usr/bin/clippy-driver-${PV}" || die
mv "${ED}/usr/bin/cargo-clippy" "${ED}/usr/bin/cargo-clippy-${PV}" || die
fi
+ if use miri; then
+ mv "${ED}/usr/bin/miri" "${ED}/usr/bin/miri-${PV}" || die
+ mv "${ED}/usr/bin/cargo-miri" "${ED}/usr/bin/cargo-miri-${PV}" || die
+ fi
if use rls; then
mv "${ED}/usr/bin/rls" "${ED}/usr/bin/rls-${PV}" || die
fi
@@ -324,6 +336,10 @@ src_install() {
echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
fi
+ if use miri; then
+ echo /usr/bin/miri >> "${T}/provider-${P}"
+ echo /usr/bin/cargo-miri >> "${T}/provider-${P}"
+ fi
if use rls; then
echo /usr/bin/rls >> "${T}/provider-${P}"
fi
diff --git a/dev-lang/scala-bin/Manifest b/dev-lang/scala-bin/Manifest
index 1bef57d1b0de..9bdfc8454dcb 100644
--- a/dev-lang/scala-bin/Manifest
+++ b/dev-lang/scala-bin/Manifest
@@ -1,3 +1,5 @@
DIST scala-2.12.4.tgz 19741785 BLAKE2B e782a4ac000ffcebc2faaac077cbb3cc13f8cc56deb9b3a78f1bddd3d0e6fd282d70f10cfef0780e4ab6a13e8d51b0401f84829b7974bd8823aecab54476ab02 SHA512 e6a9e11974d3bacc5f5dcdfdb379bdd1b430b1682141bed688f02f8b49395aff7c55cdb8da3319dff55da7bd7cfe7545e9b26db9558316ac8b3e29f6bb2c6d74
+DIST scala-2.13.1.tgz 19685743 BLAKE2B aaff6db71023f539d08da521ab1ff505a626605d9c298472d0c2e98a9a13d6b8440e89cf5ff4a53b7b9bcc48cbc1e3b55cc253563f54f18c369e13fc8c00a6c2 SHA512 028aa237c471cada1501cd5764b3c384c3f50e9fc327cddd3fa7c79e9cc909d86bf84d5fc28103054600f879a60c546fc45a837cdca54964eb57ec77f9c1613e
EBUILD scala-bin-2.12.4.ebuild 1482 BLAKE2B 1f08b7ae9966682e14958090b42f5b45efcf1e80593fdc31aaeda09a100b46041a5b2a5d601feb52a829188ada9eef20038207fb028c8ab61adb7a51988bbbad SHA512 95bdf1e5108e90739d464d26c45b3c3a6c8949bbe8c8ae82afef56c583b4ef3e65571d798ca6786bea05ee45d8932471e1789cd4df5cbaa420fafbe8be1a9c37
+EBUILD scala-bin-2.13.1.ebuild 1306 BLAKE2B 9f4e07716d97106c279da5b885866758fc902b3d18af9c7a2d94e70dfee51c804af90aec1e607ef6864504c4665f7cdd874826ae99c716d8c1ad3c4e3dc235d0 SHA512 ff070c4e5702a846f46158b372282592a0946e5ce4aa277005fa4e25698c11e4f6b3937dc126ad4ce8772a8892b944e8747672b7ce1435b56c5389d093ff85ab
MISC metadata.xml 317 BLAKE2B 47b0d918ff9d4f2287fc0c43a022b978a816aa0d96362cf449210cd6b13810ed1352dbe69c5bea8281cdd3f3d03f4dcf714589e414b27abd5cd8c648e3d64994 SHA512 506fab7ebaa9e1caf96f239d6d85978171b98282ebe22a4948f61df62ce05a4c22772d81159cec9a99dd9a127b602e7593615204142e295d88835f9385a64bc8
diff --git a/dev-lang/scala-bin/scala-bin-2.13.1.ebuild b/dev-lang/scala-bin/scala-bin-2.13.1.ebuild
new file mode 100644
index 000000000000..27531fa3d555
--- /dev/null
+++ b/dev-lang/scala-bin/scala-bin-2.13.1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+JAVA_PKG_IUSE="doc"
+
+inherit java-pkg-2
+
+MY_PN="${PN%-*}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="The Scala Programming Language"
+HOMEPAGE="http://scala.epfl.ch/"
+SRC_URI="http://downloads.lightbend.com/${MY_PN}/${PV}/${MY_P}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+RDEPEND="
+ >=virtual/jre-1.6
+ !dev-lang/scala"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ default
+ ebegin 'Cleaning .bat files'
+ rm -f bin/*.bat || die
+ eend $?
+
+ ebegin 'Patching SCALA_HOME variable in bin/ directory'
+ local f
+ for f in bin/*; do
+ sed -i -e 's#\(SCALA_HOME\)=.*#\1=/usr/share/scala-bin#' $f || die
+ done
+ eend $?
+}
+
+src_compile() {
+ :;
+}
+
+src_install() {
+ ebegin 'Installing bin scripts'
+ dobin bin/*
+ eend $?
+
+ ebegin 'Installing jar files'
+ cd lib/ || die
+
+ # Unversion those libs.
+ java-pkg_newjar jline-*.jar jline.jar
+ java-pkg_newjar scalap-*.jar scalap.jar
+
+ # Install these the usual way.
+ java-pkg_dojar scala-compiler.jar
+ java-pkg_dojar scala-library.jar
+ java-pkg_dojar scala-reflect.jar
+
+ eend $?
+
+ cd ../ || die
+
+ ebegin 'Installing man pages'
+ doman man/man1/*.1
+ eend $?
+
+ if use doc; then
+ ebegin 'Installing documentation'
+ java-pkg_dohtml -r doc/tools
+ eend $?
+ fi
+}
diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest
index 1956a1518f69..e765fd872b1d 100644
--- a/dev-lang/spidermonkey/Manifest
+++ b/dev-lang/spidermonkey/Manifest
@@ -4,6 +4,8 @@ AUX spidermonkey-52.0-fix-alpha-bitness.patch 836 BLAKE2B bf89aadfdceab9d1460c31
AUX spidermonkey-52.0-gcc9-overflow.patch 821 BLAKE2B c35c5a37b40e86d1a23588aebd9b53e81e0a70b01e969bc54c24c68a8adef567d03833e1afa8a02d1659f373226958b8ef3ce84982a8ba24d18fa28a96aa6e40 SHA512 6173486c4d28cb727096a470b22b6b98c675ee355934bf134882a5d068ef492e4cd3519e7da293eae756d5b9cb9950ffd4b1723c6a47de6493491a4bc3573f3b
AUX spidermonkey-60.5.2-ia64-support.patch 1615 BLAKE2B bd2ae36194bdb6a17638ec500e5211abb9700f2b7c5056b5be51e8e54d59326a5c9f0cb6d2d6fa56dd946dba264635e6d75e9b4ed52103c7904df19d33257c7d SHA512 71f2a0f27910ae086910f6599985a32ad2fdedeffc9c4c6baa446f4856dee74051fa158cc0552a3f21210098e0d006a0b5d781437fded80969e1edf23c04b9e0
AUX spidermonkey-perl-defined-array-check.patch 341 BLAKE2B e11a74cc2afbea5e39ec5f3fb4c108278a8b71b57ce71644184bc4e19188059f6cb9c164ab87877605028241ed0b68a1447414f1aa0f5453fa26a603ecd4f6a6 SHA512 5d178b68cf0744da874624da79cd31555bd882aed205e697a3f0bfc3cb91a149d74da79b7af5883ea5a23e1d1692753ebfda0d83e7a25ac000105849db5c1548
+DIST firefox-68.0-patches-12.tar.xz 17476 BLAKE2B bd788e24820f902f4ca908b0cf7a49a4c57e058915af1eb87233d19d91271092676c1ee4c67e88df2411ecccea47c4e735efdf95945954f2d9aac5cc2f9051f2 SHA512 8033a3c445eaddd28188b338534da16a4130b679a5f6673b3094524e47435890e6d454d7b67f81bbe21f80ef1b65fa7e6c27d71191ba70dd8ea87fc68463f9a7
+DIST firefox-68.7.0esr.source.tar.xz 312235932 BLAKE2B 17030bc74341ecae74d7dadcb0fc0212e61e3f01463671e57f73c90e534db1088d597d43bc362cd083ca26b056bce45684eda121b2cd91c7793c44a7c40efb7a SHA512 a3ddcf8ffe5f568b30b1fc9ddcaa5cebe600bf11ce353c09507d5466f999022d45a0dee9a08f53f37b10202a2e2ce4c180743cd6a2ca38dfea1c3e4487b18593
DIST js-1.7.0.tar.gz 1165607 BLAKE2B 61749e10886bbb9e4958a41925fae8dcbd7d943b9bf838878368c30e26ba61f300bc2ec37982653b87fedf76707dda2ffd510282de4bce87d1da11ca42fa108c SHA512 9d9fbd9c1dae969ca19ddb0f977ac56f3e0479ec393b859de252fcdd8b7fc325e80399073540884ed365ce56a3219be34c0db9300d5e50f32969660c90527e51
DIST js185-1.0.0.tar.gz 6164605 BLAKE2B 76a37f0ceae05d3475853875bd0ce4be6e525e4114816f8f281ea6fc6b60a71060975a0fa1cb843f57ad1e2f842dfb26b24244fa0fd6c20f6ae2ebbe430f70be SHA512 2af7122a7c7007fd7b6668776fe1222515a810b3e43bbf0f76b8f94e1ef406ffd3fb5ccec393021b00274c05b38a77235bc8d6886994c56762fcaf0aa7cf6718
DIST mozjs-38.3.0sfink2.tar.bz2 27232902 BLAKE2B 42a039a41b7479a32e22f260cb58f098e1a1d4833f801f193bdd8b75403f94567b9ef2ebe85b2a811fe2f9b27cd934afe1054bd4e7d9aae0b8a80acdec8e42a4 SHA512 debad1fbd21e025c567b083677cfd0a2023ec2aff750241f495ac2977034a7299e068cb3b0b2351c97457119cc8aef563f00416092a70a3a269d20947b700206
@@ -13,20 +15,22 @@ DIST mozjs-60.5.2.tar.bz2 32816585 BLAKE2B 45ac4c9646e1275faf60eeedbf486f802cd10
DIST mozjs17.0.0.tar.gz 6778934 BLAKE2B a37debf5079fc4c27bb9edd3172c6e7914f6128fac6ffa97b49ac266c477d0916b180fb68ecd0916a52f935959a83d73254b0ba72b4898adc5e3b85927d17d2a SHA512 39b68aeb9f712f146778d8b68ee795709a1372c8ab893a222af4eb34882427d6f5cf877e743d6cb2f1b4348c194d8f3774f00cb775b03515b34b49560b748be4
DIST spidermonkey-52.0-patches-0.tar.xz 5172 BLAKE2B 8bcf9477de47ef3b882cd3281efa7f77c16ce11fc93f44446a620917adf629fde8290af1dd69f0930a889aacfee3603bf60eb9c1e718a1dfd3e218a1013b6192 SHA512 88ad640fb0efa4972f1b7782bd0abee1751b73914ee51faade93b25c4d8eec64e7693898842a406c49fc2ab43733404efeccb138afb64d2193b9a5eb612578e3
DIST spidermonkey-60.0-patches-04.tar.xz 4428 BLAKE2B af78049cd9b3ee6a9b689e6253486c4670fd3b506faade7d745dafaa7af329c0bd15cd35e95528a4c96688230f4803130967fb09b97aae2bda0ce0f73acaaf3e SHA512 fb1326a81512146ba98773d4f7e0c4bc1bff0f076897c13f576fcf63b56f6965efeff633eea9160bca9f9bc4546505901084eabc33bc955de0b7ab3d6334387a
+DIST spidermonkey-68.6.0-patches-03.tar.xz 4744 BLAKE2B 2a323ea9b6291e427631f986822e779cd3d302b617a827ff020760bb1b19cacbc588d5c76637e386f62b8b64036b0b665bfecae7fdb08477fa5d7fb13630523c SHA512 1465331b61abc9c14245bc6510f1f6996274795853d12d209d7e0a088b37a1a2488cc5cc61a6c2bd0fe05971dad54b19614fb477ec3176b240aa6e0190e89b47
DIST spidermonkey-slot0-patches-01.tar.xz 10488 BLAKE2B 4a5195ac11d1076046424fc10d1416d097fb230cd8b0b28ac8b65d379e0c0518586ced0f48f833dea52b13fb5d300e02664657ab2479bfcc343bc358d394d5d7 SHA512 6c878ed0b50c052989a8b965fed845e9c672b691f4c4b1f98ee82e81a33880e1e6bf1dac8222d71322553282de602a88272dedebbcf50d27967fc172f0a8054a
DIST spidermonkey-slot0-patches-02.tar.xz 10952 BLAKE2B fb7bf5cdac6c821a48d407ff172fe0ec7297e047d3b3bab952f226f413b83ea70325175b41c1680725ff588111b424efc97a0c66e392989da510c43d38528ff1 SHA512 cd62890c4b58658d99fc1b52f05ccb35c07da835b168bb9d5e6b219de5021122c199cc2255c5b0be01ef582f53dd51c9975921e6bde9f14e9b43536e2bee85f2
DIST spidermonkey-slot17-patches-01.tar.xz 2748 BLAKE2B a55504d726f925096de7e066a1d323154bc796018644f347bc1d012ea6ee8441cc19f30689e06fd26bab5a5d2e8376e90bf2c1930a588be8b48865f7bbc524ea SHA512 21a90f85d156de3cca9811317507162a458f908bb447924fcfbf49b7bb70496b611ce7df90b90775316b8ceafda56692be3bf856b168b83ed40b8a5c668eed3f
DIST spidermonkey-slot38-patches-01.tar.xz 7472 BLAKE2B 7585aa6f5a84d6ae21e41137fca8da093580182f798f63bfcf2e402e3bf58df4cb3f43cef3eb635044508800f6757247fa3a65ca53230243a455925f436a9510 SHA512 953acee985d192c6d0f18f14c70fdda33a7c8f784c6833ca8b75495044b40a8b3f29b281c40dbfcda0c8570c111a3dd1717c2ef0ffd651c1b50d1f2bff1f6d09
DIST spidermonkey-slot45-patches-01.tar.xz 5092 BLAKE2B 0188a179fc741ab84a93aae1e77f8b765868ca716b8879661bfa678aef918998c9488db3b866a13c79ae28edb43ac0ebb10345b0471b717c4174c61cba9646bc SHA512 d52f038a7b4f7b410b5a1f94a55962adafc5906e7d85f605f3fe45ad49417c2b9d58d853a81b5d2395a2842c9780992d5a2c1a0e67aa77fb09f21aff9aeb0f7a
EBUILD spidermonkey-1.7.0-r3.ebuild 1525 BLAKE2B bc8709a762377851c1df610f95d4b9c9063a8be171b6eb4900db464b020d053fbff989cd25161590786631f123aa984c7928a8729faafc91c06c4d75da50b4c0 SHA512 45624955dca00e2edd53190e97292f0f2fd5b53fecda15b7397e65c1e9fb4c017cd7858ef0f9cf660cdbeb8bbbf659db02f716b02ae709ce4d35fc7a3dd4ccbb
-EBUILD spidermonkey-1.8.5-r6.ebuild 4443 BLAKE2B 223f3600365eec2f17f68fdcdbdffb02cef9ee885c5932e5bf6415e2a71d316c5a484271076eefdbb887590fe38c95f2a6f2f1a382351b4f51a344115885d703 SHA512 0abf36818323dd5ff05463a9efd7331e0e646b538f07375593e43efab0e233d81aa2918b39f5cf4f12d4fe6514875ed5c955f146bed4291357a4bbd0b17208f5
-EBUILD spidermonkey-1.8.5-r7.ebuild 3803 BLAKE2B 99946ed12f0b123fa38118acd331ab70ce82afa9795534e68507f8a1aa77376db8eaf5e1d9252349bd3bd2b770c0cc5e76a99fe40c5ed7ee82d1ae84e4b4908a SHA512 a5400b6b9b8ca8376710c6aa8117d8181915e35c4af74f43858df990e071288b015be48165329f473aa1b83e6a1b9812d146030902df96196fba649a74729ab0
-EBUILD spidermonkey-1.8.5-r9.ebuild 4007 BLAKE2B 704ff252d2f46b061e69022da0fabde05cc305f8aa1371e8f1ff3de169aca57ae32613b77b144be2e97eb4a0ed24c1e72505fa061f537835bb5e91e275b51c76 SHA512 f7824748ba714a5a5f5e8edc4bc46edc466d14600816fc41052813ef03bb92abf8b447e32c78d6fbfefbf7ddacc15f8d17062f2988a24297e616bc156048d868
-EBUILD spidermonkey-17.0.0-r5.ebuild 3568 BLAKE2B d3fa789a176b35b4e98334ab36bfbfc8e97a5089ac621d98ebab26cd9145275b99166f785e0beda3113f6c641d5bae85b2ba7f6404caff8b5be9761ded9cb339 SHA512 86bfb4b23e43a090cc04c1e8e7f6c7cb3bbf3cb8fda863cdb11aa2a4a419b882d2da7e82c0d0e6979f790b5d824cefc2bf5ad79668fc87339a3342e3ca1c0f09
-EBUILD spidermonkey-38.3.0.ebuild 3875 BLAKE2B 81603891cb59f939fdbc9f7d522e7c65fe13bc7da3bedc8b25c86d9da08f7accf40bf1d6f610006fe815b41caf76043059aba5bc8d16df819e9abd57ddf47bdc SHA512 1b9438b1569ccdcec91be39701cdc89630e5fa6c0b219ebfff6281f56742bfc13932dc41eb505d3ff0d49ec3a04152c3e9d68e8fcee92206600a08b8a0caae04
-EBUILD spidermonkey-45.0.2.ebuild 3982 BLAKE2B 8982dea144298e3f8fb34cd7aeed10945a7bc2f05e9784eb75aa0a60ff81f6f1d90a848bf1a66e125ed6efb1c91a6232b8bdf95641d6fdb55fb0f620cffe2db8 SHA512 e78388a925cc733a7b3c3acc279e972f09b9c5273dac0ef65cda7ae99003e5510b609b04c464dfd21dbf5503baccd8b89aae48b220e54a056ffe6bae2925bcd3
-EBUILD spidermonkey-52.9.1_pre1-r1.ebuild 4468 BLAKE2B 0b95708626e946db02d86cabf3be237fa2cf6d285c30c5f40cf12c6051d3b9757e1519b9c98e829db4a00490ae9defb858e7185f7ae96b7aa07efaaef7c31882 SHA512 f9ceefc6c111be9982ed4364570272c96b29bd610e16bc6e64a2de6e8aa050d408b288a6a6ea5d81749764db9a482dbb0c13200336b5f8572e99522670723a78
-EBUILD spidermonkey-52.9.1_pre1.ebuild 4295 BLAKE2B 6b3fb327f1aff48de511662f6bff6bf0c5048a954f7f8a3655983728f6aa8015b4e82d98c21486230f00ebc09a3118875250364e7d466f6dbdfb8953be3f6d6c SHA512 d9ca1a5067f2f183fb8b02b7abebff8df1272bed39abb3d434109eae02413784e1c1d204b73faa122c908cab66a908a14cf5b400e5c9dbcebe96067dea3dbfab
-EBUILD spidermonkey-60.5.2_p0-r2.ebuild 3868 BLAKE2B 98273894874645fce7fbba8995649e3c650c3914d3d71b53b201d268773b075e65d388bc833d2b3657bc34a5872716983353ae8808d5223f61255bc1c6e831e2 SHA512 b256155c75816fb92a0f9f3d04628221589a53cd2089df15229883ea8027f42afdb2543aefe977b469703803b615c3c40802f2a33aae49767ea8553bda133b7d
-EBUILD spidermonkey-60.5.2_p0-r3.ebuild 4049 BLAKE2B b1c1348e02acf9cdf4ef815bce814e82cedf469ff35423ea51e42a9208d903aa2202da38f8a40b319d2241a42af942c1e3e836713f314b5ba6a1f43de98da032 SHA512 440747402277d164f71491743366152b06b6fd666517c4972bd11dee360f2d7bf2306e3f34fd375ede99941136b3bffa5716c49e488c128cfc329eb5c6c59303
-MISC metadata.xml 906 BLAKE2B 8557bb4bfdce358f543be3ff571177d61beb5713ba6fa4c24c8e91522ca30f8c5b1bf42abd0324164cc6febd04d07c1ae3a311d6d68d62992be6368c20650ca9 SHA512 a411a781913fe81801799d4d801645fd8029ee4fb727431589cb948f97464edd828b8d86969b2207880432db8e8e627fad829fd95394fa121bb0ae97ae8249b0
+EBUILD spidermonkey-1.8.5-r6.ebuild 4440 BLAKE2B 5f7e466352fc9e4c6493b2119506159bef19fc39e026f528b96973db060c7330a755eb275e8d1dee3c42850493d7d6f85508935c01f30eab93ef18142221e9d6 SHA512 4fff2455f743140b013c4dad85a346eac2321b85a235dfa2f1e5f16f126848b37be3dcd6d45fcefbaf25d446cfed3c33964db51d8744732c9058951eaa1efb00
+EBUILD spidermonkey-1.8.5-r7.ebuild 3800 BLAKE2B aeee77c98050d1b3efb7edbfaedc4a9bd26780d1a7a0c06bb7215a526cd2a8dfb0899f1d9ee1283cedd10439e3c7b6cae43724ab7e472a2f7d1c50d3f2f3ff11 SHA512 f4991c454c8cee15e6140038366afdab70ee5b1961e2a8f8bb8a359470c83d40c1cb3d90458acbd0360132389c748a2879ff2d7fcff65d4417b287919562dc61
+EBUILD spidermonkey-1.8.5-r9.ebuild 4003 BLAKE2B 4f06ef3dde6670a087ca0a68ed3a0fba0d4233f90e2039e39189150f420786d98dfb7abbae2ae0bb2fc37619294ee74b226acdaf460c70d8893d50260682c758 SHA512 1e126d85b2b278d195e06e9bae4ab15a4c9aa9bdd416c19dfcb952d352d0b4139dea53cf43af0ab33167ed0c882f2e4720ac9dd22599b911ea537cd53d3391dd
+EBUILD spidermonkey-17.0.0-r5.ebuild 3565 BLAKE2B 5691acf4166104ac8d93516b36b4f42c731ed5aac311d2b8236f99be9a115b1753b42215e580fb37a0580870dbf52bc52ad20f5ac97a43dc5caa11bec967c68f SHA512 6291a2dfe0d9c2bb339ac81952406417adb4b87cbd3a9cdec470ee76c7a7f9165438aa5d4739f49ec696842f34ff38829275b47223e630086992f2485f784518
+EBUILD spidermonkey-38.3.0.ebuild 3872 BLAKE2B b0c91e7693a54bc38c1f5067ba870679cbe57bdacfb6fce72deabeef356f55a6e4add8996c38b128cf0c6938abfef87655be7e2bbef0259fd0fa5a688265a67b SHA512 2fc1c3d16c4cc834289b00e8a2bdff2f780f641803300c07ff7e8df73951dfc212d50594642011e2444e5e84c17b4f1c86caa84c7db54d9f962b89fe5fd590d7
+EBUILD spidermonkey-45.0.2.ebuild 3978 BLAKE2B f3e2b31ba68559486246701bab34a71dd554f7d50446f5ef328474ad6eaf669bf4580f2d888a949f8426501ad8c5fd48ffc54400b7d687669dcb6e89f31a737b SHA512 31d9de1a4a599f4388f16e11a30da4c0d0aa272211ef6a4f07d14c9b3fd25a7c794cac8731439c20988b3e7d48af66f468aa17df4fdc6fa840b9bba6d2e5b38d
+EBUILD spidermonkey-52.9.1_pre1-r1.ebuild 4464 BLAKE2B 087b47427dc3bfe0703ef5e573a97430b63220595bb2e35f89f3489cd768b726b640df506fcb9d8b36f1d3559c80cef4253573217f64816caf7674e717dbb4e9 SHA512 ba91245662da115f3bf84b842506af5954b3c85e41a9124eac511f0960118f559ec183e65bc07874563d1d068d35dbcf76b31390608e4cb155cbc2de42d261e2
+EBUILD spidermonkey-52.9.1_pre1.ebuild 4292 BLAKE2B 36bb6fb32b838f11a18ec536be7f09f45bb1d05cd18a3312eb38512c4c895a17bb2a92721b28eb2e8e937f6112531c3647de1d2dc62637291206367c26350757 SHA512 782df8fdff08dc0f6a984e46be564609fb189014353d18b0f0673000beaded9c5cdba1e63f484ae19f5f6571e66a70b55270adea8876cbcfb1e3d36e5cde285c
+EBUILD spidermonkey-60.5.2_p0-r2.ebuild 3865 BLAKE2B 81729b277561984a49c27c16c099c105863a6a61198cebe65686787ad180c0b03684398f2f3df31e44edce3e8d35723cc12bb89494ca4f76f76367964af040d7 SHA512 c6dec2360c7faf810b0235f7017a306e9f5a6c935ba081f9646e8195ed3b4aed67d26e8445187c5c3889c858a0ef56abaeecace1894733e589eba11f4769df01
+EBUILD spidermonkey-60.5.2_p0-r3.ebuild 4045 BLAKE2B 23dcfb6f020e0b832fb8cb30455d6f2c9be52663961b7ffad74265064a09157dd6c39d2c8957ea57a937c94e3c9bc5623ba6e4d4d7a75073a482c357d4304a0f SHA512 6f7e821c23696220d67ae66a6e06f19b86eef30885909c0c7b6c817bfe412898825db7265b817d06b4d181c2ead503e710142728a1bc7fcdf741a073d94f2c2c
+EBUILD spidermonkey-68.7.0.ebuild 5764 BLAKE2B 10992198135286158221c8c0c17b8247a9c21c26f5b1e4f8ee03f986ccd739186fa081d334bd5a9564e8e16c8d2bf829dbbb2674641c2fcdc0f92ccf72e28111 SHA512 d414774437072efd89fb70735ea5c6401ad16121ab2fa797948ee9e50b2bf3d22698a9105d47bb8a27454d8dd9d10327f906a1774c68954ce67fff90dd530e92
+MISC metadata.xml 820 BLAKE2B a0f072d469695cbe2ed23e529104ba5871c9bdd17a64c741df8f9a7dc515a2c229982d8565aad8e8ce6189a8eae1ac84dbf396cacc552e3733b7cedf49171021 SHA512 ae5656ac496ce63a89adb716bc3b324cb91d64ecb4b9c0a2dfb38ec1447253313e7e92e3209faa2b8631c23ce9a7273cc383ab2654b9fba638358f54c34a2b00
diff --git a/dev-lang/spidermonkey/metadata.xml b/dev-lang/spidermonkey/metadata.xml
index 83c60ddc3f4d..309b1deffe16 100644
--- a/dev-lang/spidermonkey/metadata.xml
+++ b/dev-lang/spidermonkey/metadata.xml
@@ -5,9 +5,6 @@
<email>mozilla@gentoo.org</email>
<name>Gentoo Mozilla Team</name>
</maintainer>
- <longdescription lang="en">
- Stand-alone JavaScript C++ library
- </longdescription>
<use>
<flag name="custom-optimization">Build with user-specified compiler optimizations
(-Os, -O0, -O1, -O2, -O3) from CFLAGS (unsupported)</flag>
diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.5-r6.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.5-r6.ebuild
index 97c9250c7323..fcc4a0366d36 100644
--- a/dev-lang/spidermonkey/spidermonkey-1.8.5-r6.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-1.8.5-r6.ebuild
@@ -19,7 +19,7 @@ SRC_URI="https://archive.mozilla.org/pub/js/${TARBALL_P}.tar.gz
LICENSE="NPL-1.1"
SLOT="0/mozjs185"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 s390 x86 ~x64-macos"
IUSE="debug minimal static-libs test"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.5-r7.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.5-r7.ebuild
index ade3e165d148..e03b5195c408 100644
--- a/dev-lang/spidermonkey/spidermonkey-1.8.5-r7.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-1.8.5-r7.ebuild
@@ -19,7 +19,7 @@ SRC_URI="https://archive.mozilla.org/pub/js/${TARBALL_P}.tar.gz
LICENSE="NPL-1.1"
SLOT="0/mozjs185"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 x86 ~x64-macos"
IUSE="debug minimal static-libs test"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.5-r9.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.5-r9.ebuild
index e5db814edbc4..c22af086cef8 100644
--- a/dev-lang/spidermonkey/spidermonkey-1.8.5-r9.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-1.8.5-r9.ebuild
@@ -19,7 +19,7 @@ SRC_URI="https://archive.mozilla.org/pub/js/${TARBALL_P}.tar.gz
LICENSE="NPL-1.1"
SLOT="0/mozjs185"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~x86 ~x64-macos"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~x86 ~x64-macos"
IUSE="debug minimal static-libs test"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild b/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild
index 475da252e6e9..b5ba36c30932 100644
--- a/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild
@@ -17,7 +17,7 @@ SRC_URI="http://archive.mozilla.org/pub/js/${MY_PN}${PV}.tar.gz
LICENSE="NPL-1.1"
SLOT="17"
# "MIPS, MacroAssembler is not supported" wrt #491294 for -mips
-KEYWORDS="~alpha amd64 arm -hppa ia64 -mips ppc ppc64 ~s390 ~sh ~sparc x86"
+KEYWORDS="~alpha amd64 arm -hppa ~ia64 -mips ppc ppc64 ~s390 ~sparc x86"
IUSE="debug jit minimal static-libs test"
REQUIRED_USE="debug? ( jit )"
diff --git a/dev-lang/spidermonkey/spidermonkey-38.3.0.ebuild b/dev-lang/spidermonkey/spidermonkey-38.3.0.ebuild
index 16421949c1ec..f0c5369b8b1f 100644
--- a/dev-lang/spidermonkey/spidermonkey-38.3.0.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-38.3.0.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://archive.mozilla.org/pub/${PN}/releases/${PV}/${MY_P}.tar.bz2
LICENSE="NPL-1.1"
SLOT="38"
-KEYWORDS="~alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86"
+KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 ~sparc x86"
IUSE="debug +jit minimal static-libs +system-icu test"
RESTRICT="!test? ( test ) ia64? ( test )"
diff --git a/dev-lang/spidermonkey/spidermonkey-45.0.2.ebuild b/dev-lang/spidermonkey/spidermonkey-45.0.2.ebuild
index 11e769bf7202..e1093fef43d6 100644
--- a/dev-lang/spidermonkey/spidermonkey-45.0.2.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-45.0.2.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://archive.mozilla.org/pub/${PN}/releases/${PV}/${MY_P}.tar.bz2
LICENSE="NPL-1.1"
SLOT="45"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
IUSE="debug +jit minimal static-libs +system-icu test"
RESTRICT="!test? ( test ) ia64? ( test )"
diff --git a/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1-r1.ebuild b/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1-r1.ebuild
index b8945962069a..60b24598dbd9 100644
--- a/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1-r1.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1-r1.ebuild
@@ -16,7 +16,7 @@ SRC_URI="http://ftp.mozilla.org/pub/spidermonkey/prereleases/52/pre1/mozjs-52.9.
LICENSE="NPL-1.1"
SLOT="52"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~x86"
IUSE="debug minimal +system-icu test"
RESTRICT="!test? ( test ) ia64? ( test )"
diff --git a/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1.ebuild b/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1.ebuild
index 0590c89489db..7be1933706b3 100644
--- a/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1.ebuild
@@ -16,7 +16,7 @@ SRC_URI="http://ftp.mozilla.org/pub/spidermonkey/prereleases/52/pre1/mozjs-52.9.
LICENSE="NPL-1.1"
SLOT="52"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ia64 ~mips ppc ppc64 s390 ~sh x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 s390 x86"
IUSE="debug minimal +system-icu test"
RESTRICT="!test? ( test ) ia64? ( test )"
diff --git a/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r2.ebuild b/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r2.ebuild
index 7513a877f330..2a4f79590c74 100644
--- a/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r2.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r2.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://dev.gentoo.org/~axs/distfiles/${MY_P}.tar.bz2
LICENSE="NPL-1.1"
SLOT="60"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
IUSE="debug +jit minimal +system-icu test"
RESTRICT="!test? ( test ) ia64? ( test )"
diff --git a/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r3.ebuild b/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r3.ebuild
index d1998882f82b..5054d72cc08c 100644
--- a/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r3.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-60.5.2_p0-r3.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://dev.gentoo.org/~axs/distfiles/${MY_P}.tar.bz2
LICENSE="NPL-1.1"
SLOT="60"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
IUSE="debug +jit minimal +system-icu test"
RESTRICT="!test? ( test ) ia64? ( test )"
diff --git a/dev-lang/spidermonkey/spidermonkey-68.7.0.ebuild b/dev-lang/spidermonkey/spidermonkey-68.7.0.ebuild
new file mode 100644
index 000000000000..27c1b4f3fb2b
--- /dev/null
+++ b/dev-lang/spidermonkey/spidermonkey-68.7.0.ebuild
@@ -0,0 +1,222 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{6..8} )
+
+WANT_AUTOCONF="2.1"
+
+inherit autotools check-reqs python-any-r1
+
+MY_PN="mozjs"
+MY_PV="${PV/_pre*}" # Handle Gentoo pre-releases
+
+MY_MAJOR=$(ver_cut 1)
+
+MOZ_ESR="1"
+
+# Convert the ebuild version to the upstream mozilla version
+MOZ_PV="${MY_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
+
+if [[ ${MOZ_ESR} == 1 ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+# Patch version
+FIREFOX_PATCHSET="firefox-68.0-patches-12"
+SPIDERMONKEY_PATCHSET="${PN}-68.6.0-patches-03"
+
+MOZ_HTTP_URI="https://archive.mozilla.org/pub/firefox/releases"
+MOZ_SRC_URI="${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz"
+
+if [[ "${PV}" == *_rc* ]]; then
+ MOZ_HTTP_URI="https://archive.mozilla.org/pub/firefox/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
+ MOZ_SRC_URI="${MOZ_HTTP_URI}/source/firefox-${MOZ_PV}.source.tar.xz"
+fi
+
+PATCH_URIS=(
+ https://dev.gentoo.org/~{anarchy,whissi,polynomial-c,axs}/mozilla/patchsets/${FIREFOX_PATCHSET}.tar.xz
+ https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${SPIDERMONKEY_PATCHSET}.tar.xz
+)
+
+SRC_URI="${MOZ_SRC_URI}
+ ${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="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+
+SLOT="68"
+LICENSE="MPL-2.0"
+IUSE="debug +jit test"
+
+RESTRICT="!test? ( test )"
+
+BDEPEND="dev-lang/python:2.7
+ test? ( ${PYTHON_DEPS} )"
+
+DEPEND=">=dev-libs/icu-63.1:=
+ >=dev-libs/nspr-4.21
+ sys-libs/readline:0=
+ >=sys-libs/zlib-1.2.3"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/firefox-${MY_PV}/js/src"
+
+pkg_pretend() {
+ if use test ; then
+ CHECKREQS_DISK_BUILD="6G"
+ else
+ CHECKREQS_DISK_BUILD="5G"
+ fi
+
+ check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+ if use test ; then
+ CHECKREQS_DISK_BUILD="6G"
+ else
+ CHECKREQS_DISK_BUILD="5G"
+ fi
+
+ check-reqs_pkg_setup
+
+ use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ cd ../.. || die
+ rm "${WORKDIR}"/firefox/2013_avoid_noinline_on_GCC_with_skcms.patch
+ rm "${WORKDIR}"/firefox/2015_fix_cssparser.patch
+ eapply "${WORKDIR}"/firefox
+ eapply "${WORKDIR}"/spidermonkey-patches
+
+ default
+
+ MOZJS_BUILDDIR="${WORKDIR}/build"
+ mkdir "${MOZJS_BUILDDIR}" || die
+
+ cd "${S}" || die
+ eautoconf
+}
+
+src_configure() {
+ tc-export CC CXX LD AR RANLIB
+
+ # backup current active Python version
+ local PYTHON_OLD=${PYTHON}
+
+ # build system will require Python2.7
+ export PYTHON=python2.7
+
+ cd "${MOZJS_BUILDDIR}" || die
+
+ # ../python/mach/mach/mixin/process.py fails to detect SHELL
+ export SHELL="${EPREFIX}/bin/bash"
+
+ # forcing system-icu allows us to skip patching bundled ICU for PPC
+ # and other minor arches
+ ECONF_SOURCE="${S}" \
+ econf \
+ --disable-jemalloc \
+ --disable-optimize \
+ --disable-strip \
+ --enable-readline \
+ --enable-shared-js \
+ --with-intl-api \
+ --with-system-icu \
+ --with-system-nspr \
+ --with-system-zlib \
+ $(use_enable debug) \
+ $(use_enable jit ion) \
+ $(use_enable test tests) \
+ XARGS="${EPREFIX}/usr/bin/xargs"
+
+ # restore PYTHON
+ export PYTHON=${PYTHON_OLD}
+}
+
+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+=( test262/intl402/RelativeTimeFormat/prototype/format/en-us-numeric-auto.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/tz-environment-variable.js )
+ KNOWN_TESTFAILURES+=( non262/Intl/RelativeTimeFormat/format.js )
+ KNOWN_TESTFAILURES+=( non262/Date/time-zones-imported.js )
+ KNOWN_TESTFAILURES+=( non262/Date/toString-localized.js )
+ KNOWN_TESTFAILURES+=( non262/Date/time-zone-path.js )
+ KNOWN_TESTFAILURES+=( non262/Date/time-zones-historic.js )
+ KNOWN_TESTFAILURES+=( non262/Date/toString-localized-posix.js )
+ KNOWN_TESTFAILURES+=( non262/Date/reset-time-zone-cache-same-offset.js )
+
+ 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/swi-prolog/Manifest b/dev-lang/swi-prolog/Manifest
index a95484818488..8afdb21cfdbe 100644
--- a/dev-lang/swi-prolog/Manifest
+++ b/dev-lang/swi-prolog/Manifest
@@ -1,15 +1,7 @@
DIST swipl-8.0.3.tar.gz 10418553 BLAKE2B d7d381a3070384164f9788060e1c431cc4658dd3e2144fc4c186c9f5395fb7356593766dcaff3ff424f19f917c8a4b56da31b019bd2206a7f794ece549043b76 SHA512 e3a0788befb5499be6f70524ef398dc3282a38891f20519dd23ec92f216fc1919a76656e4b648c3dc9d94e578dc2663439ff976eb52ca0dba5a6594f8d4d3037
-DIST swipl-8.1.17.tar.gz 10858037 BLAKE2B 69d6528e250dfd780c17bd87c2d79f2923a4ed413d44a5b1f77ca28c2077d8000dc991058fe47a7aaaa6310cf015049980463005d53294a71ba610e43b67b0dd SHA512 42a5a529e1ed935501e87cab28ab5b6d3a18283027bb801a7e3d66d41342fe6ee74de70fe9e8a341f360ab145d0a2e49d8937cb661cfec52f9105c4cf06dc735
-DIST swipl-8.1.18.tar.gz 10865862 BLAKE2B 9728593b9ce890fdb8b4bda8667dbfa9323707d86e0491e62ca82098c62d797da3cdc0180aba0509393532f2b095d1626a0b465955036de80b4fff4dbb62cba6 SHA512 c6b29b57e42e464f03e328fcc272c04db7772b45e62a26fec14f7fe2b9d3c494eeb4c090237b942e38f666dea6fc92e1d00dacba83f6ea74d6dd53923fd23816
-DIST swipl-8.1.19.tar.gz 10865698 BLAKE2B 08da8b7d93a313f621f9bb6abcc509ab6997b673f89483356f6a90f80fd7053acfac611bfaaa2925b3c0d51d7216ea7a1fcbd52dc202961e5a157eb7d0cf0907 SHA512 6094ef47e6c30b5d15f01c8f8c52b125cd04153b9949b6c0a19f4b2e57cd2604377b6b905dec6fa34fd6c6baec1d74d0463c24dfe407fb25643e7e89515b3296
-DIST swipl-8.1.20.tar.gz 10866943 BLAKE2B 57efd2dcd7a60589a5f8073703c121c0bcdc988e5da1a638ec542c18b342d51ef6a26ddc2cadc4fd5d79de37134492b9cf447cb0229faf4366f190169c689592 SHA512 c05b57977d9204916dc18cfcc387971f0dcef74d4b5b0cdfd1d134d57faefd81255b668a97d1d09952ea2d0dcadee0997e84305d49d0252549f6f4d57bf84d4e
-DIST swipl-8.1.21.tar.gz 10867376 BLAKE2B 740ac827190d86e5803c61e09b6c122667fa3d956267a10f052bf35fbbdda3337756764d6a63c963e79321b2f7efb30215d4a9c51eee42f5d73747600120292c SHA512 85bdd1b76a6ca895e4350a688a18cf00a60e83e0ef73b4a4b269881b667504e3d31daefbdc8031423adce025b44d2020819717ef90f35b7a7636792ab4972404
-DIST swipl-8.1.22.tar.gz 10893825 BLAKE2B 7457570728dcf07d9df5c6049366fbe00497063b54eaed3540f80cfab3296da68236afb4816ff65f1fdc74691d0136f3ababc0aceb4da0209675229a13cbdc55 SHA512 7b0154d88688f4dd97ccf198e3e1f11c958345f08f62a5302d33c9530cdad09bf54c47a7f4b107ff2839bc1a354da284bc71f7caaf77e80d53ec412a2c566e5c
+DIST swipl-8.1.25.tar.gz 10896679 BLAKE2B 69c20e02d59d25d317f1d4c339b430af8faa7d9027e91a5224eeb13ffc6b92a0eb08b9ff8602f17e449410da4cd007c59b08f43f29049f0b475004bebde6f65b SHA512 f034ae521da9d27d9c8681a3b9404047b61c77449d6257fea599b3ba0a5ba572b559f0dcd2653ebbf70eb7588bbf99d3d43149411e373a346d27e16c620fe638
+DIST swipl-8.1.26.tar.gz 10893132 BLAKE2B 7ddaec9a292e454bd5ceefbbd00d489ae3669be66ba7237a0788b4c714910f49dac9f659a52c715075b91dd638f0590efb0234b8c88cbe2090ceb735faf38a9a SHA512 a89a09f2958182f05ebec161ec5b271664fe9dc0cbc29bb3246ea6418b4ba5fa2a0542ad5448c3f4d7dda080cd8575391b856e04ca01eb41907e00a194d8e502
EBUILD swi-prolog-8.0.3.ebuild 2490 BLAKE2B edc287a8138d4d5e1c1638e316a860aded0a514a76b3b4e66d03977ba277ed280523544a2c6b8187ffb8f3f67035a475e2de80e0bce333dddcab385b06797eb4 SHA512 1c689254578253eb4f138f0ee2f498690c280148c6b544f3995827ed4a11bc61b63e95e1bf85bd83e7ccd0939267964679cf102f7bffb072b122a521d6521a96
-EBUILD swi-prolog-8.1.17.ebuild 2594 BLAKE2B f3501afc82f537b8729a49cab6a883fe30aeca2613d963483ae27e97f611629e18d6dd4e4de64d80da627d0d86df9014f0d9ddfade1fe69aac8a54e7b01eb936 SHA512 f2c97e516918257b85af4b3fea975c2deb5879cce17233734659faaffa46072cfa4de6b6b32bed7ae9ccc36e625212b7bdd572f6c00deb4a099bcea8bbc6248b
-EBUILD swi-prolog-8.1.18.ebuild 2594 BLAKE2B f3501afc82f537b8729a49cab6a883fe30aeca2613d963483ae27e97f611629e18d6dd4e4de64d80da627d0d86df9014f0d9ddfade1fe69aac8a54e7b01eb936 SHA512 f2c97e516918257b85af4b3fea975c2deb5879cce17233734659faaffa46072cfa4de6b6b32bed7ae9ccc36e625212b7bdd572f6c00deb4a099bcea8bbc6248b
-EBUILD swi-prolog-8.1.19.ebuild 2594 BLAKE2B f3501afc82f537b8729a49cab6a883fe30aeca2613d963483ae27e97f611629e18d6dd4e4de64d80da627d0d86df9014f0d9ddfade1fe69aac8a54e7b01eb936 SHA512 f2c97e516918257b85af4b3fea975c2deb5879cce17233734659faaffa46072cfa4de6b6b32bed7ae9ccc36e625212b7bdd572f6c00deb4a099bcea8bbc6248b
-EBUILD swi-prolog-8.1.20.ebuild 2594 BLAKE2B d5840bb83530ae6e0b1a00520bec268be97f7695af60f3771849cde506372e7c3ed2181509ff61431354fff79ddb10efcf032b017444cec9afefdfcb078958d5 SHA512 238f4c5eac973338e87cda5426251a43852d0abab3fa084ec09e6b31a754d51c14f8ba05550245bb9225e517345ce7ea6f6df7dab45e384ac56393225b741354
-EBUILD swi-prolog-8.1.21.ebuild 2594 BLAKE2B d5840bb83530ae6e0b1a00520bec268be97f7695af60f3771849cde506372e7c3ed2181509ff61431354fff79ddb10efcf032b017444cec9afefdfcb078958d5 SHA512 238f4c5eac973338e87cda5426251a43852d0abab3fa084ec09e6b31a754d51c14f8ba05550245bb9225e517345ce7ea6f6df7dab45e384ac56393225b741354
-EBUILD swi-prolog-8.1.22.ebuild 2594 BLAKE2B d5840bb83530ae6e0b1a00520bec268be97f7695af60f3771849cde506372e7c3ed2181509ff61431354fff79ddb10efcf032b017444cec9afefdfcb078958d5 SHA512 238f4c5eac973338e87cda5426251a43852d0abab3fa084ec09e6b31a754d51c14f8ba05550245bb9225e517345ce7ea6f6df7dab45e384ac56393225b741354
+EBUILD swi-prolog-8.1.25.ebuild 2593 BLAKE2B 106a52a3a29bfbc479c392f6798947c9730e87fbdc2812f662472e0acd46745fec01bd3fa1a79c7f09befaf639b9a9f50cfe49b5c4dce6b1db810b1fed2699d9 SHA512 ecac2c7e661b58a14a63d8b44e2714f88cd6e763e57e7cfc74e0220bfe522ce08757aae5188de6f23129b54853fda2f6785058ddd805fd81cbffc5533aa5f627
+EBUILD swi-prolog-8.1.26.ebuild 2553 BLAKE2B 9a4f63d674d380cbae06fd7d67432970e8c5f6f76ddbd77a2ada30dbd0cf8e6f28751cd8fd321bcdb6857a9ee99ba2f1632a8921e68c87ffc168e47ca356f73d SHA512 31745cc81c863c8062743be5960cf253e1c00173c1a11fdd0fa5d90457f94d5c8df615354275af865cd24b982372a35c6c3f45e0fb581e8b20f1183ff3610ef5
MISC metadata.xml 419 BLAKE2B 6d92e0713ed8da803ff8b6c778e616882af2fdb1426a62ea7bb6a265bbfff9a5c7debb8bf6a25c4ab60ed54a865b79fa3da4a09bc8a9123acf63dcb32107f54e SHA512 f805393c909e4108fe72b94f131d37d45279af1a4b501f9c3ae12d21590ef9c19227ca2a4b2966239ddb84847ce979cfbfcf3f3a2d24b60cb23977c522ff59c3
diff --git a/dev-lang/swi-prolog/swi-prolog-8.1.17.ebuild b/dev-lang/swi-prolog/swi-prolog-8.1.17.ebuild
deleted file mode 100644
index 8b822e794107..000000000000
--- a/dev-lang/swi-prolog/swi-prolog-8.1.17.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cmake-utils eutils flag-o-matic multilib
-
-PATCHSET_VER="0"
-
-DESCRIPTION="versatile implementation of the Prolog programming language"
-HOMEPAGE="http://www.swi-prolog.org/"
-SRC_URI="http://www.swi-prolog.org/download/devel/src/swipl-${PV}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-IUSE="archive berkdb debug doc +gmp java +libedit libressl minimal odbc pcre qt5 readline ssl test uuid X yaml"
-RESTRICT="!test? ( test )"
-
-RDEPEND="sys-libs/ncurses:=
- sys-libs/zlib
- archive? ( app-arch/libarchive )
- berkdb? ( >=sys-libs/db-4:= )
- odbc? ( dev-db/unixODBC )
- pcre? ( dev-libs/libpcre )
- readline? ( sys-libs/readline:= )
- libedit? ( dev-libs/libedit )
- gmp? ( dev-libs/gmp:0 )
- ssl? (
- !libressl? ( dev-libs/openssl:0 )
- libressl? ( dev-libs/libressl )
- )
- java? ( >=virtual/jdk-1.7:= )
- uuid? ( dev-libs/ossp-uuid )
- qt5? (
- dev-qt/qtwidgets:5
- dev-qt/qtgui:5
- )
- X? (
- virtual/jpeg:0
- x11-libs/libX11
- x11-libs/libXft
- x11-libs/libXinerama
- x11-libs/libXpm
- x11-libs/libXt
- x11-libs/libICE
- x11-libs/libSM )
- yaml? ( dev-libs/libyaml )"
-
-DEPEND="${RDEPEND}
- X? ( x11-base/xorg-proto )
- java? ( test? ( =dev-java/junit-3.8* ) )"
-
-S="${WORKDIR}/swipl-${PV}"
-BUILD_DIR="${S}/build"
-CMAKE_USE_DIR="${S}"
-
-src_prepare() {
- EPATCH_FORCE=yes
- EPATCH_SUFFIX=patch
- if [[ -d "${WORKDIR}"/${PV} ]] ; then
- epatch "${WORKDIR}"/${PV}
- fi
-
- sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die
-
- eapply_user
-
- cmake-utils_src_prepare
-}
-
-src_configure() {
- append-flags -fno-strict-aliasing
- use debug && append-flags -DO_DEBUG
-
- mycmakeargs=(
- -DSWIPL_INSTALL_PREFIX=$(get_libdir)/swipl
- -DUSE_GMP=$(usex gmp)
- -DINSTALL_DOCUMENTATION=$(use doc && usex archive)
- -DSWIPL_PACKAGES_BASIC=$(usex !minimal)
- -DSWIPL_PACKAGES_ARCHIVE=$(usex archive)
- -DSWIPL_PACKAGES_ODBC=$(usex odbc)
- -DSWIPL_PACKAGES_BDB=$(usex berkdb)
- -DSWIPL_PACKAGES_PCRE=$(usex pcre)
- -DSWIPL_PACKAGES_YAML=$(usex yaml)
- -DSWIPL_PACKAGES_SSL=$(usex ssl)
- -DSWIPL_PACKAGES_JAVA=$(usex java)
- -DSWIPL_PACKAGES_QT=$(usex qt5)
- -DSWIPL_PACKAGES_X=$(usex X)
- -DSWIPL_PACKAGES_TERM=$(if use libedit || use readline; then echo yes; else echo no; fi)
- )
-
- cmake-utils_src_configure
-}
-
-src_compile() {
- cmake-utils_src_compile \
- XDG_CONFIG_DIRS="${HOME}" \
- XDG_DATA_DIRS="${HOME}"
-}
-
-src_test() {
- USE_PUBLIC_NETWORK_TESTS=false \
- USE_ODBC_TESTS=false \
- cmake-utils_src_test -V
-}
diff --git a/dev-lang/swi-prolog/swi-prolog-8.1.18.ebuild b/dev-lang/swi-prolog/swi-prolog-8.1.18.ebuild
deleted file mode 100644
index 8b822e794107..000000000000
--- a/dev-lang/swi-prolog/swi-prolog-8.1.18.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cmake-utils eutils flag-o-matic multilib
-
-PATCHSET_VER="0"
-
-DESCRIPTION="versatile implementation of the Prolog programming language"
-HOMEPAGE="http://www.swi-prolog.org/"
-SRC_URI="http://www.swi-prolog.org/download/devel/src/swipl-${PV}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-IUSE="archive berkdb debug doc +gmp java +libedit libressl minimal odbc pcre qt5 readline ssl test uuid X yaml"
-RESTRICT="!test? ( test )"
-
-RDEPEND="sys-libs/ncurses:=
- sys-libs/zlib
- archive? ( app-arch/libarchive )
- berkdb? ( >=sys-libs/db-4:= )
- odbc? ( dev-db/unixODBC )
- pcre? ( dev-libs/libpcre )
- readline? ( sys-libs/readline:= )
- libedit? ( dev-libs/libedit )
- gmp? ( dev-libs/gmp:0 )
- ssl? (
- !libressl? ( dev-libs/openssl:0 )
- libressl? ( dev-libs/libressl )
- )
- java? ( >=virtual/jdk-1.7:= )
- uuid? ( dev-libs/ossp-uuid )
- qt5? (
- dev-qt/qtwidgets:5
- dev-qt/qtgui:5
- )
- X? (
- virtual/jpeg:0
- x11-libs/libX11
- x11-libs/libXft
- x11-libs/libXinerama
- x11-libs/libXpm
- x11-libs/libXt
- x11-libs/libICE
- x11-libs/libSM )
- yaml? ( dev-libs/libyaml )"
-
-DEPEND="${RDEPEND}
- X? ( x11-base/xorg-proto )
- java? ( test? ( =dev-java/junit-3.8* ) )"
-
-S="${WORKDIR}/swipl-${PV}"
-BUILD_DIR="${S}/build"
-CMAKE_USE_DIR="${S}"
-
-src_prepare() {
- EPATCH_FORCE=yes
- EPATCH_SUFFIX=patch
- if [[ -d "${WORKDIR}"/${PV} ]] ; then
- epatch "${WORKDIR}"/${PV}
- fi
-
- sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die
-
- eapply_user
-
- cmake-utils_src_prepare
-}
-
-src_configure() {
- append-flags -fno-strict-aliasing
- use debug && append-flags -DO_DEBUG
-
- mycmakeargs=(
- -DSWIPL_INSTALL_PREFIX=$(get_libdir)/swipl
- -DUSE_GMP=$(usex gmp)
- -DINSTALL_DOCUMENTATION=$(use doc && usex archive)
- -DSWIPL_PACKAGES_BASIC=$(usex !minimal)
- -DSWIPL_PACKAGES_ARCHIVE=$(usex archive)
- -DSWIPL_PACKAGES_ODBC=$(usex odbc)
- -DSWIPL_PACKAGES_BDB=$(usex berkdb)
- -DSWIPL_PACKAGES_PCRE=$(usex pcre)
- -DSWIPL_PACKAGES_YAML=$(usex yaml)
- -DSWIPL_PACKAGES_SSL=$(usex ssl)
- -DSWIPL_PACKAGES_JAVA=$(usex java)
- -DSWIPL_PACKAGES_QT=$(usex qt5)
- -DSWIPL_PACKAGES_X=$(usex X)
- -DSWIPL_PACKAGES_TERM=$(if use libedit || use readline; then echo yes; else echo no; fi)
- )
-
- cmake-utils_src_configure
-}
-
-src_compile() {
- cmake-utils_src_compile \
- XDG_CONFIG_DIRS="${HOME}" \
- XDG_DATA_DIRS="${HOME}"
-}
-
-src_test() {
- USE_PUBLIC_NETWORK_TESTS=false \
- USE_ODBC_TESTS=false \
- cmake-utils_src_test -V
-}
diff --git a/dev-lang/swi-prolog/swi-prolog-8.1.19.ebuild b/dev-lang/swi-prolog/swi-prolog-8.1.19.ebuild
deleted file mode 100644
index 8b822e794107..000000000000
--- a/dev-lang/swi-prolog/swi-prolog-8.1.19.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cmake-utils eutils flag-o-matic multilib
-
-PATCHSET_VER="0"
-
-DESCRIPTION="versatile implementation of the Prolog programming language"
-HOMEPAGE="http://www.swi-prolog.org/"
-SRC_URI="http://www.swi-prolog.org/download/devel/src/swipl-${PV}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-IUSE="archive berkdb debug doc +gmp java +libedit libressl minimal odbc pcre qt5 readline ssl test uuid X yaml"
-RESTRICT="!test? ( test )"
-
-RDEPEND="sys-libs/ncurses:=
- sys-libs/zlib
- archive? ( app-arch/libarchive )
- berkdb? ( >=sys-libs/db-4:= )
- odbc? ( dev-db/unixODBC )
- pcre? ( dev-libs/libpcre )
- readline? ( sys-libs/readline:= )
- libedit? ( dev-libs/libedit )
- gmp? ( dev-libs/gmp:0 )
- ssl? (
- !libressl? ( dev-libs/openssl:0 )
- libressl? ( dev-libs/libressl )
- )
- java? ( >=virtual/jdk-1.7:= )
- uuid? ( dev-libs/ossp-uuid )
- qt5? (
- dev-qt/qtwidgets:5
- dev-qt/qtgui:5
- )
- X? (
- virtual/jpeg:0
- x11-libs/libX11
- x11-libs/libXft
- x11-libs/libXinerama
- x11-libs/libXpm
- x11-libs/libXt
- x11-libs/libICE
- x11-libs/libSM )
- yaml? ( dev-libs/libyaml )"
-
-DEPEND="${RDEPEND}
- X? ( x11-base/xorg-proto )
- java? ( test? ( =dev-java/junit-3.8* ) )"
-
-S="${WORKDIR}/swipl-${PV}"
-BUILD_DIR="${S}/build"
-CMAKE_USE_DIR="${S}"
-
-src_prepare() {
- EPATCH_FORCE=yes
- EPATCH_SUFFIX=patch
- if [[ -d "${WORKDIR}"/${PV} ]] ; then
- epatch "${WORKDIR}"/${PV}
- fi
-
- sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die
-
- eapply_user
-
- cmake-utils_src_prepare
-}
-
-src_configure() {
- append-flags -fno-strict-aliasing
- use debug && append-flags -DO_DEBUG
-
- mycmakeargs=(
- -DSWIPL_INSTALL_PREFIX=$(get_libdir)/swipl
- -DUSE_GMP=$(usex gmp)
- -DINSTALL_DOCUMENTATION=$(use doc && usex archive)
- -DSWIPL_PACKAGES_BASIC=$(usex !minimal)
- -DSWIPL_PACKAGES_ARCHIVE=$(usex archive)
- -DSWIPL_PACKAGES_ODBC=$(usex odbc)
- -DSWIPL_PACKAGES_BDB=$(usex berkdb)
- -DSWIPL_PACKAGES_PCRE=$(usex pcre)
- -DSWIPL_PACKAGES_YAML=$(usex yaml)
- -DSWIPL_PACKAGES_SSL=$(usex ssl)
- -DSWIPL_PACKAGES_JAVA=$(usex java)
- -DSWIPL_PACKAGES_QT=$(usex qt5)
- -DSWIPL_PACKAGES_X=$(usex X)
- -DSWIPL_PACKAGES_TERM=$(if use libedit || use readline; then echo yes; else echo no; fi)
- )
-
- cmake-utils_src_configure
-}
-
-src_compile() {
- cmake-utils_src_compile \
- XDG_CONFIG_DIRS="${HOME}" \
- XDG_DATA_DIRS="${HOME}"
-}
-
-src_test() {
- USE_PUBLIC_NETWORK_TESTS=false \
- USE_ODBC_TESTS=false \
- cmake-utils_src_test -V
-}
diff --git a/dev-lang/swi-prolog/swi-prolog-8.1.20.ebuild b/dev-lang/swi-prolog/swi-prolog-8.1.20.ebuild
deleted file mode 100644
index 67d5ec674d94..000000000000
--- a/dev-lang/swi-prolog/swi-prolog-8.1.20.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cmake-utils eutils flag-o-matic multilib
-
-PATCHSET_VER="0"
-
-DESCRIPTION="versatile implementation of the Prolog programming language"
-HOMEPAGE="http://www.swi-prolog.org/"
-SRC_URI="http://www.swi-prolog.org/download/devel/src/swipl-${PV}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-IUSE="archive berkdb debug doc +gmp java +libedit libressl minimal odbc pcre qt5 readline ssl test uuid X yaml"
-RESTRICT="!test? ( test )"
-
-RDEPEND="sys-libs/ncurses:=
- sys-libs/zlib
- archive? ( app-arch/libarchive )
- berkdb? ( >=sys-libs/db-4:= )
- odbc? ( dev-db/unixODBC )
- pcre? ( dev-libs/libpcre )
- readline? ( sys-libs/readline:= )
- libedit? ( dev-libs/libedit )
- gmp? ( dev-libs/gmp:0 )
- ssl? (
- !libressl? ( dev-libs/openssl:0 )
- libressl? ( dev-libs/libressl )
- )
- java? ( >=virtual/jdk-1.7:= )
- uuid? ( dev-libs/ossp-uuid )
- qt5? (
- dev-qt/qtwidgets:5
- dev-qt/qtgui:5
- )
- X? (
- virtual/jpeg:0
- x11-libs/libX11
- x11-libs/libXft
- x11-libs/libXinerama
- x11-libs/libXpm
- x11-libs/libXt
- x11-libs/libICE
- x11-libs/libSM )
- yaml? ( dev-libs/libyaml )"
-
-DEPEND="${RDEPEND}
- X? ( x11-base/xorg-proto )
- java? ( test? ( =dev-java/junit-3.8* ) )"
-
-S="${WORKDIR}/swipl-${PV}"
-BUILD_DIR="${S}/build"
-CMAKE_USE_DIR="${S}"
-
-src_prepare() {
- EPATCH_FORCE=yes
- EPATCH_SUFFIX=patch
- if [[ -d "${WORKDIR}"/${PV} ]] ; then
- epatch "${WORKDIR}"/${PV}
- fi
-
- sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die
-
- eapply_user
-
- cmake-utils_src_prepare
-}
-
-src_configure() {
- append-flags -fno-strict-aliasing
- use debug && append-flags -DO_DEBUG
-
- mycmakeargs=(
- -DSWIPL_INSTALL_PREFIX=$(get_libdir)/swipl
- -DUSE_GMP=$(usex gmp)
- -DINSTALL_DOCUMENTATION=$(use doc && usex archive)
- -DSWIPL_PACKAGES_BASIC=$(usex !minimal)
- -DSWIPL_PACKAGES_ARCHIVE=$(usex archive)
- -DSWIPL_PACKAGES_ODBC=$(usex odbc)
- -DSWIPL_PACKAGES_BDB=$(usex berkdb)
- -DSWIPL_PACKAGES_PCRE=$(usex pcre)
- -DSWIPL_PACKAGES_YAML=$(usex yaml)
- -DSWIPL_PACKAGES_SSL=$(usex ssl)
- -DSWIPL_PACKAGES_JAVA=$(usex java)
- -DSWIPL_PACKAGES_QT=$(usex qt5)
- -DSWIPL_PACKAGES_X=$(usex X)
- -DSWIPL_PACKAGES_TERM=$(if use libedit || use readline; then echo yes; else echo no; fi)
- )
-
- cmake-utils_src_configure
-}
-
-src_compile() {
- cmake-utils_src_compile \
- XDG_CONFIG_DIRS="${HOME}" \
- XDG_DATA_DIRS="${HOME}"
-}
-
-src_test() {
- USE_PUBLIC_NETWORK_TESTS=false \
- USE_ODBC_TESTS=false \
- cmake-utils_src_test -V
-}
diff --git a/dev-lang/swi-prolog/swi-prolog-8.1.21.ebuild b/dev-lang/swi-prolog/swi-prolog-8.1.25.ebuild
index 67d5ec674d94..8f4583928061 100644
--- a/dev-lang/swi-prolog/swi-prolog-8.1.21.ebuild
+++ b/dev-lang/swi-prolog/swi-prolog-8.1.25.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit cmake-utils eutils flag-o-matic multilib
@@ -94,9 +94,9 @@ src_configure() {
}
src_compile() {
- cmake-utils_src_compile \
- XDG_CONFIG_DIRS="${HOME}" \
- XDG_DATA_DIRS="${HOME}"
+ XDG_CONFIG_DIRS="${HOME}" \
+ XDG_DATA_DIRS="${HOME}" \
+ cmake-utils_src_compile
}
src_test() {
diff --git a/dev-lang/swi-prolog/swi-prolog-8.1.22.ebuild b/dev-lang/swi-prolog/swi-prolog-8.1.26.ebuild
index 67d5ec674d94..2293c183ae1c 100644
--- a/dev-lang/swi-prolog/swi-prolog-8.1.22.ebuild
+++ b/dev-lang/swi-prolog/swi-prolog-8.1.26.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit cmake-utils eutils flag-o-matic multilib
@@ -56,16 +56,13 @@ BUILD_DIR="${S}/build"
CMAKE_USE_DIR="${S}"
src_prepare() {
- EPATCH_FORCE=yes
- EPATCH_SUFFIX=patch
if [[ -d "${WORKDIR}"/${PV} ]] ; then
- epatch "${WORKDIR}"/${PV}
+ eapply "${WORKDIR}"/${PV}
fi
+ eapply_user
sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die
- eapply_user
-
cmake-utils_src_prepare
}
@@ -94,9 +91,9 @@ src_configure() {
}
src_compile() {
- cmake-utils_src_compile \
- XDG_CONFIG_DIRS="${HOME}" \
- XDG_DATA_DIRS="${HOME}"
+ XDG_CONFIG_DIRS="${HOME}" \
+ XDG_DATA_DIRS="${HOME}" \
+ cmake-utils_src_compile
}
src_test() {
diff --git a/dev-lang/swig/Manifest b/dev-lang/swig/Manifest
index 1d55d04d53ac..f0ecb7adeee7 100644
--- a/dev-lang/swig/Manifest
+++ b/dev-lang/swig/Manifest
@@ -1,5 +1,5 @@
DIST swig-3.0.12.tar.gz 8149820 BLAKE2B 05ce913dedbbde26592619e0edc65050cb31a517f309c1188252cb8c276147cb28ebf4d8534c31b75c4ed8be5d42223b432a7318bf8eb5b2d4d528e5ff9a781b SHA512 5eaa2e06d8e4197fd02194051db1e518325dbb074a4c55a91099ad9c55193874f577764afc9029409a41bd520a95154095f26e33ef5add5c102bb2c1d98d33eb
DIST swig-4.0.0.tar.gz 8052518 BLAKE2B a34eb17d795ba5b34ea7362f8f07d6a6e82fd4394a0159fcf608ffb27580f37fc722c4907f1fd6fa3322663662f8e11fecbcb2bc7b90405834ef35d6218d65c7 SHA512 c897b87fb8b21caf8d1bee2c39cb9675a3b0ee047110e808c310a2787f8b89585738726e9f517c64e9d2f1b8311136365c569528f399b444b1081f69689b7165
-EBUILD swig-3.0.12.ebuild 853 BLAKE2B 5bb6e44dc73ac1c93be3d4137fab7063dc2e03600e09dd96c4f64aeead8fc106e638ed63d0fc9b4eec2a0b4703318e9b39d95e7cf7e8ecba45790fcf97c42972 SHA512 6ea01454da853a5f605a955c132d65e4a3b4e4e7f5fb7276bb44235fcb012ba8d920300eb2d0e93a7374e434d544ec50ac6636c05597792377f9a3a15c5d29ac
-EBUILD swig-4.0.0.ebuild 862 BLAKE2B d89b6bace706a03564d38ba5530edc7f635aee5c47a1098a3a381e13bd110ba474abdc252612811750580a7bcac7e99ecc7d20f45ea37cf11f58e05a02d6e040 SHA512 cc27a344b2745eabb9eb54ed611f4e04ef6d55b14334ff99edc2260f74c798b525c0e1f4fb66aea61ec11e97eb139dd95d1dd3fb840d5e7024e618ec3bbd0c57
+EBUILD swig-3.0.12.ebuild 850 BLAKE2B 0bb048398af0fa3bc245ddbc84d239be3cbdb3573327a11bd1978dda689ce40c12ed9958995dbe60ceac50fca0c6f9db7749fbdbc83768fa6c652904551bb7d9 SHA512 f332940d4ce3c5579c6f1f471d10393b19224b620087081fde8d5802e87fc0fc34b44ea183934cdc155e32590316c5ddea0f49405505e630529021d41c8c3bf4
+EBUILD swig-4.0.0.ebuild 858 BLAKE2B d1418fc32a3296e5794ed234bd1526c49e6d6a8ad69bdb1f835020c88f7a498b1e37e20d959b8801053cf7b368cf3ae500e7a37b0d97dd9cac40b7683e936407 SHA512 f27c257da8e6a4aeca8353444d27acedd5b735a68e98c2cfb905a96b354c8678000e3b7d265819b1d4fbf4685bc6ad24e91436dfc53f9655b8fd0e204415d013
MISC metadata.xml 969 BLAKE2B a26040da59fded1ead403e161447da20a8283d0a75294fade7241b713a28b6d5e8072f413b05e7006bb98a42aef7bf575b7be6680304c44624217394414ac5b0 SHA512 f1c2b6af88eb9dbe09ae45de982ffc798a949eadc9635c600f1fce53d2d31bca80b3c12563e0fc20e7f4080eaee0917b9dbf03817dca0db869b425069aafa7db
diff --git a/dev-lang/swig/swig-3.0.12.ebuild b/dev-lang/swig/swig-3.0.12.ebuild
index f158bcc66d0b..42a18fc9d57d 100644
--- a/dev-lang/swig/swig-3.0.12.ebuild
+++ b/dev-lang/swig/swig-3.0.12.ebuild
@@ -9,7 +9,7 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-3+ BSD BSD-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~riscv ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="ccache doc pcre"
RESTRICT="test"
diff --git a/dev-lang/swig/swig-4.0.0.ebuild b/dev-lang/swig/swig-4.0.0.ebuild
index 03e27a6bade2..bcce897c1e24 100644
--- a/dev-lang/swig/swig-4.0.0.ebuild
+++ b/dev-lang/swig/swig-4.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -9,7 +9,7 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-3+ BSD BSD-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="ccache doc pcre"
RESTRICT="test"
diff --git a/dev-lang/tcl/Manifest b/dev-lang/tcl/Manifest
index 5acead9661dc..159635f823a2 100644
--- a/dev-lang/tcl/Manifest
+++ b/dev-lang/tcl/Manifest
@@ -5,7 +5,7 @@ AUX tcl-8.6.8-libieee.patch 708 BLAKE2B ec8422ce98c68f2dd347bea807059fd8ee94fcd4
DIST tcl-core8.6.8-src.tar.gz 5887483 BLAKE2B 2b8428652e451b817fe63a811f910001929cdcbc8a8361cdf4f7df8e13cbf9b18c94a91c22c0f09cc46dc0174a66c44774b485539a8f24c14faee6658547b6b8 SHA512 36e6079b582c205e8c89435b361ef96550541357f473aea2ca4e6f01bd84e50ebd1474a75a1ae90640b9a5b392fb01ddfa71f0fa28e409b3569d88c32b4ddb69
DIST tcl-core8.6.9-src.tar.gz 5932010 BLAKE2B ddc0cff12aeeebbf8d1c799db9e154a9ecbe2a2e2afce97c6f15c408301b7a40119bd1c861aa724c178bd9abfe0616c7bcafd9cf6714ed49cf882c9085222cf3 SHA512 306a38a27729b764bae2eae6c4cdd8cd6aee5de6bd924d6a487c8691ee874e4459abc1fa785183c2f6ff4d2d57be98093dd7460c5a668cf994e8f1c31516ae67
DIST tcl8.5.17-src.tar.gz 4546317 BLAKE2B 27031dd3bd5790d03692e77edf91eb7fae8a40d8d193d8c8ce4e79b21f90e683bfc9d5b71764760223987fb163be844e6096d0aea1058b8ce255731d97e2a0ea SHA512 ad5ddb4cd6378fd6bbea8cd85ceb1cf90392b2e8c49fbfb3e4b35c81d3ae3e3f087697c41fcba8c8e06de1d9e7539397e26d58b864dc01ba65abe4ba4efa9568
-EBUILD tcl-8.5.17-r1.ebuild 3745 BLAKE2B 581a741ccce72beeaed47e6a5212522598d04bff39c26d5a4e8917df1a31893041b123b5d6ff55b7d0d07f77e60e3e8f89f5a13615f7aaea3bea00592d67abab SHA512 10cd45cef157df8ce0cb509bac6f9cad71aec04b8f4d9e5096037fbbfb0b332df65a1c1b769716b19bcbce7f3940234baa60f0d21b422d7568dd41dc107b28ac
-EBUILD tcl-8.6.8.ebuild 3965 BLAKE2B c799e93ac78c556f80aff9741acfb39c32e54f6f7a86eb147bc42335e4012c7d7278c9e85a4b67f71c858c7e469660f1522baab4c6771a56fcf20139b313d5c1 SHA512 b4f44b2e9b06f286140efc3979b29523d24a1ea3b3e06c97f6df2dd3773dc6b06e19d4ef417acd5ff01a32f9e4edee05ea6c51c57d5ca47f38272cb159f1e800
-EBUILD tcl-8.6.9.ebuild 3887 BLAKE2B 40bf3d6140d3c589fba7ae78f52193a7b408227156b9b152f4ce4333d2ae8b63e36ff9bc72e768f09453dec38b21be18b2bc65d8a03997d6a002aa70747ff6f8 SHA512 369a8e704ef9edceb04750322d813e6d27e8ee66359c9fe791724d6f50301d98a2cb78bf7fae0fa04dc2a8210fe58630d13e02db7d153dc52eaeb4474183644e
+EBUILD tcl-8.5.17-r1.ebuild 3743 BLAKE2B 769d8351aa839895e15144f5b9108fc5783f2309099694b1c4dac6c6d3040c8ea85587303662efbb5a440c7ab0fb4ce907e0572ef897f1d3d2ec469733646132 SHA512 06e8568935278c551b325d482111ac5d050613e7bda057214824e7a8cb19b975829272fb49127596f46207755bf6e86ba79596022213f49cdf61db60ad9f8ac1
+EBUILD tcl-8.6.8.ebuild 3963 BLAKE2B e39a09b4c8ff54144917f7eea5bc1b16bcafba6d34bbe7c195a7f650607a175dc765ee7848667362fac1ca4c9660f0b1bf0a84f31e031ecf8050b86e7a9256e4 SHA512 31108187a85f0e1fd9b171e731c77dd21b6f28944e3a7a8ad7d8411326c3a8643614f7106be088b7da341fbfd80c580e52262e78fd10d250fee71d98b77e8958
+EBUILD tcl-8.6.9.ebuild 3883 BLAKE2B 69646211e8b0b956a07d6e055508b66c7d40978e98d565efc70ff1c36483124928695af43280f7f220188da52597c0f59b2b632560a01d07cfd5500f60b8ebdb SHA512 3229f3d64dfc8504af5efc91fe178098a19a8e8b56029c92e499ae94eb4a5a880a6704075e6188fa0933d8348639a1004bbafbe5cb5a53f6fc37e1fe2c8c0b1a
MISC metadata.xml 318 BLAKE2B 7ea8e51656c255c3aea3bee8849423604a164efff556974f6032de44d33e38bb0378b69c18821cc76f0284064bc84a1a56e79f522f8d7fb0adc50e2e191b5fca SHA512 61f3feb8311f1babb8a4df8c9fcddaab009ffc6d69248f18cb9e001a1659dfcf47f2699008ab83fb563b3417f6ead8113af20db7e3893f488e8d75bb2a3483cf
diff --git a/dev-lang/tcl/tcl-8.5.17-r1.ebuild b/dev-lang/tcl/tcl-8.5.17-r1.ebuild
index 01a13bc4d66e..90c6a31616ba 100644
--- a/dev-lang/tcl/tcl-8.5.17-r1.ebuild
+++ b/dev-lang/tcl/tcl-8.5.17-r1.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/tcl/${MY_P}-src.tar.gz"
LICENSE="tcltk"
SLOT="0/8.5"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x86-solaris"
IUSE="debug threads"
RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]"
diff --git a/dev-lang/tcl/tcl-8.6.8.ebuild b/dev-lang/tcl/tcl-8.6.8.ebuild
index 9ada3ac3d346..1500025cd3fe 100644
--- a/dev-lang/tcl/tcl-8.6.8.ebuild
+++ b/dev-lang/tcl/tcl-8.6.8.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/tcl/${PN}-core${PV}-src.tar.gz"
LICENSE="tcltk"
SLOT="0/8.6"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug +threads"
RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]"
diff --git a/dev-lang/tcl/tcl-8.6.9.ebuild b/dev-lang/tcl/tcl-8.6.9.ebuild
index 87df3a5cb0cc..27b6a02f2715 100644
--- a/dev-lang/tcl/tcl-8.6.9.ebuild
+++ b/dev-lang/tcl/tcl-8.6.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/tcl/${PN}-core${PV}-src.tar.gz"
LICENSE="tcltk"
SLOT="0/8.6"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug +threads"
RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]"
diff --git a/dev-lang/tk/Manifest b/dev-lang/tk/Manifest
index 4d4bc527a8fe..011acaea9e00 100644
--- a/dev-lang/tk/Manifest
+++ b/dev-lang/tk/Manifest
@@ -8,8 +8,8 @@ DIST tk8.5.17-src.tar.gz 4095985 BLAKE2B 4cbb140c30ca717ee499b9ad9e1a3df27a470a7
DIST tk8.6.8-src.tar.gz 4319854 BLAKE2B 167c5dc6c32e49653c04bc067c3d75df022ca230657be32797021b0e2f7748215d9ad0493c8020b8d1be1f005b9b2d561339a6a0b209721c0d05dd222d47d377 SHA512 d0d30637b733fb0b0d38461b6d872934c04af422fcdb7ec41a72331b2529cc94414e6f441f95a98642d69505e4f41469847fedd1cbe58bd08cdd818fcabd1db9
DIST tk8.6.9-src.tar.gz 4364606 BLAKE2B 9c96d977aa72dcc0c8d2a570d644284a1eef217ef082d8a78461bdcb4845e206ccad59cb5bc21ef80e32ea19951fa3a845e45059bb9eaf0756f128a95530260c SHA512 654d73aad006e628110057681477b958b7ec0a42287bc78259fb4b84635e7ebe757e69099d66c0c73479bc506ca66fa5baf13f13b0f403d60b2c54fd48a4a686
DIST tk8.6.9.1-src.tar.gz 4364603 BLAKE2B 3d96637ceadc28977f8b4532be071907d64f11bd22881baf02aa6fa2778b607437edce8f1ed02e7011bcf78468128f7bfe81ee6dac9bd73a796e7fefae130dcf SHA512 b9c811ffc8326331ae03c6fb25ea71f7a5eaeebd9d5a16a51a1671d0f0422268bd351b077e17ae925f0a7eddac9642aa640658615c52d4269c299373af031a92
-EBUILD tk-8.5.17-r1.ebuild 3572 BLAKE2B 38e1fb82bed1bb924ba1b8071ae790c9ae11869b574f0dd5e60d2cb436877608846470f7deb3289ac5021d6cfa8fa1e7ea5b24b72df5ca48bc1590d6ddca580a SHA512 1447087f07c0734187afd5dbbc55a19836cb690d2e2b005a41f1dcb7b0c8d21f2eaae692e68a7e2951a8844486f6366d31d17551d7bc1870827f6b67dbe58ddd
-EBUILD tk-8.6.8.ebuild 4122 BLAKE2B 377364b98c4f34a49efc1541c872ede978994e32deb8962b167aa23289652164110d975dfcc7fa0fc0f6cb5112c3242ecda7fc515c0fa175574c814f41e143b9 SHA512 782d63936c9170e70d79e7d9bb1ac36e635488ddb33627ea3c3c973a98e8250d9b2561d79dd1a8e215cbf847298ebb62e4d3fa2146637551fae6672f0d40fcc1
-EBUILD tk-8.6.9.1.ebuild 4069 BLAKE2B 74fb882710ff17d59d9a96299dc86212ba152c49d31257e9786d4f6ad942412f441a9f6ca81ab9738692fb833a9a49e66267809b240affdb6090405526105a91 SHA512 b36d982e4644be208863b38ceeddcc08b76dc7fba9b237ee7e057d3c295ebdcbde06aaaa62bb74a42154d144ee49515b107ce7d21aedd1026309d4853020b125
-EBUILD tk-8.6.9.ebuild 4035 BLAKE2B 38e8805d723f59ed039e68bdcb2db90921d82fc3e9a4bc3d36e06c8f450d2558fb3ea7244328fe6285fd27be45bb839bf6b6a43b439536a45885c684cf1ae223 SHA512 4b913465a44f940d16dbe455ccad69e4018241a38dd46ef82f293f3981718560914444e09186c5b8ac446dceb86fea2765e83ef471cd68cff4ffab673fe4ad77
+EBUILD tk-8.5.17-r1.ebuild 3570 BLAKE2B 592beb2d2bdf69878aebe01c9ec0a98475546cc98f931ab52d763da051e7c9cf5407dc3b1fa89f859a4d1c4df8ff978c3f65006583e3c54ee8f2299e5175fe51 SHA512 49b6edbe7ef582fafab23bb003dad40875c5c9aab2f40ee824e686dc58b2f084610e07f23a30c9cf3c94351aa9a590c036b2e07075872a440fbefe3a1198d84b
+EBUILD tk-8.6.8.ebuild 4120 BLAKE2B 878c1616c90402d8838ce93b0fb0695373cd7d420093189eac450582097b9fead2fc73b7fe5538505966869d405b7bc3db28f2db8a992039c2ae106cef1c5a31 SHA512 43a36173cd04edf9ce3d3babf93f124be9422f22efaf1e00aff4dfa48b4ad4a39bbdc334ed3943a9052abfb994bc8e5032349abe8eae1f52478752cf6b914f46
+EBUILD tk-8.6.9.1.ebuild 4065 BLAKE2B bb860e975b826e176ce12a7b89ce8c7907d89680e57fe5070c5c2368b2e7e33306ef3bc52286f0598d66d1131cb9828ba774dd8128ef4c578139cd7ae043014e SHA512 d679dcde39d13c1b7529d8f8bd16944b402945a4927c9d19048c59a9f64b6dd4c444a864d4a00bc1a8cfd604211e5402824114b85a15587945c2cb308f661f8c
+EBUILD tk-8.6.9.ebuild 4031 BLAKE2B 845baf6bf3cda8b416458f8bce71ef8ed054be17ed409a0647264ccab51c1493e4521cbfa6c436efecbae593adaf30161c00537294104054504242616e6f5dd1 SHA512 c8b4e08f10259be8da527ff1b7e8597ab28ab75d3ba7d04f4434820f7cb0429a1044a68e4b8f5670c6ecf486ca341e417e9d7735c29d2e73684e14fa1e7f9509
MISC metadata.xml 326 BLAKE2B 56e0bdfbc3f6226d3577786996e1d83e0a5e233f08966966b7f18366d103648cc8843afb08b23eb2ff5aafd7faa9b8a53d33f35a273ea5f70191b76d5f9faaea SHA512 0a3bc9dd4103f252027e5df1f1bec25c54b8e595c3161cf2e2e3dc083d9613c1cf7f810bae2eea1e4687d87195091d84c16ceac683d7bb508bd38ad565b5ba7d
diff --git a/dev-lang/tk/tk-8.5.17-r1.ebuild b/dev-lang/tk/tk-8.5.17-r1.ebuild
index b0486aff3bc9..2dc6985cfa7e 100644
--- a/dev-lang/tk/tk-8.5.17-r1.ebuild
+++ b/dev-lang/tk/tk-8.5.17-r1.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/tcl/${MY_P}-src.tar.gz"
LICENSE="tcltk"
SLOT="0/8.5"
-KEYWORDS="~alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug threads truetype aqua xscreensaver"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/tk/tk-8.6.8.ebuild b/dev-lang/tk/tk-8.6.8.ebuild
index 4b7a31bc49d6..7ef2a5bc42e2 100644
--- a/dev-lang/tk/tk-8.6.8.ebuild
+++ b/dev-lang/tk/tk-8.6.8.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/tcl/${MY_P}-src.tar.gz"
LICENSE="tcltk"
SLOT="0/8.6"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug +threads truetype aqua xscreensaver"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/tk/tk-8.6.9.1.ebuild b/dev-lang/tk/tk-8.6.9.1.ebuild
index 16702c8e62ed..310921dfa9ff 100644
--- a/dev-lang/tk/tk-8.6.9.1.ebuild
+++ b/dev-lang/tk/tk-8.6.9.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/tcl/${MY_P}-src.tar.gz"
LICENSE="tcltk"
SLOT="0/8.6"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug +threads truetype aqua xscreensaver"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/tk/tk-8.6.9.ebuild b/dev-lang/tk/tk-8.6.9.ebuild
index 58ac00cffbbb..c0a38ce62ff1 100644
--- a/dev-lang/tk/tk-8.6.9.ebuild
+++ b/dev-lang/tk/tk-8.6.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/tcl/${MY_P}-src.tar.gz"
LICENSE="tcltk"
SLOT="0/8.6"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug +threads truetype aqua xscreensaver"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/vala/Manifest b/dev-lang/vala/Manifest
index 14f26ab9f3dd..fe240aabb488 100644
--- a/dev-lang/vala/Manifest
+++ b/dev-lang/vala/Manifest
@@ -5,16 +5,22 @@ DIST vala-0.36.20.tar.xz 2918672 BLAKE2B 9c2c46992444fafd173f767a4a10ac185b0c49d
DIST vala-0.40.16.tar.xz 3412776 BLAKE2B 0cfe072ce3dfd8b95e804582899ff002869bc005b93ad1ba68e9b085e12444a3ef967c6282d65bab7f8302018edc075077ae8de65182b9123f8f74a91ea062bf SHA512 e37c8573fe6104c0ad6f29748cd28564638d62ebe499ce084481c74d2601a19334c431575904fbbed490b44ea117246516580a5d658dfba30c63de7e7c3fa3e0
DIST vala-0.40.18.tar.xz 3429060 BLAKE2B 113cebedfefec3a510085e6562012cefedcc6879f4a21eed835e779d850c39ea0c5d9ce5e5e036fa5d849c28f803fd80f1b4e55d4eb3db0fb0fa8f2706824823 SHA512 a58afc4ecf5a7c5c35d3f32d06947ed656f66672fd496d4963b5267d8be9ffecbbc0415af8ef15d35c92f986cb7861dc09d2ec35c2b6f77f3decc4adba24ced2
DIST vala-0.40.19.tar.xz 3435688 BLAKE2B caacacd0ed33a5a1fd465c7494d326941225f4cca052cdeda103430a6313d1f5bf30f254d1f7451663988b1303dc564923ab5717d796673b0af71912c49196ff SHA512 a1ef798ed754192da8677d9dd9627b24c0addd658d38e217ace6889c462a70d1d19c029cd7f660c82b97a48f77eba3b03758ab625ad6ccf4fe20dfd627ecd30a
+DIST vala-0.40.20.tar.xz 3443256 BLAKE2B 4cb53448ffabd29ea2c1411d019aa3749be113371e411d90803aa77a5ba19790d3766dae43af58a107680acc04870b30670fd53d4ce239de8d15dd79571cadfb SHA512 767f156c85bd901e6e672439c2bf7fdfe60e4f7b088ca89f8787179e57b42904c92749ca8bd79c1e4319ec998e0e3f6bd6f13ed679be1f5240041f797657eb36
DIST vala-0.44.11.tar.xz 3370248 BLAKE2B c111b6175e6339148e30bedc77f62a9ef3ec912ad0621c9303fc5dba31694173b49ccc433d3681303d64a1e442ed9b7b064f27931369cb13fa028bfc25ffa3c9 SHA512 6111699039ed37084426d7603b82dfa9bd497c66ba7353ee22e8541bf15a2cbb634d315593c093f18c20bac877ae34884e5b570cd25237ce12aa73e941c4c540
DIST vala-0.44.9.tar.xz 3363004 BLAKE2B b87f8f7d9cda5a77486720b8c542c42ed448cfbb6a1bae899591a799dcf25882a0539c3acef282d0ba42a7ea78d68e7a5d99aa4daa306a70afe6938732d03c25 SHA512 9af559a6cb1680013886a4d425e619503d60394f2c7b1ab897cc7830ee566f8122dcd4380b78b551fbf556cead623c245adc1f7f3357b8315be8c120412a3e9f
DIST vala-0.46.6.tar.xz 3383032 BLAKE2B c7f38cf617f3a0d5a5915ebedd320ef6a5c3714e21618e95756529e1fb09abc12417f31aeefc0111e828da5c2dabd6195b07bb1cc69c6e74f73d72fe7403637a SHA512 ab24c3ad37af62e38289fd085a33f72e178e0b58c1f24c27c58c1010270a4b0e5cb4cc510b6147c51e5796a7ae63aed3a4ac219b24ff985f2546e25c9ad48992
-DIST vala-0.47.92.tar.xz 3422564 BLAKE2B fe204b23f2dbc1bc65641f6c49dd1e0be6ed11bf4a6bf099937b366620247cceb71de231ec3dad426c45e3e72de636ba937fa40e943bc8f9c1f2edca69f5584f SHA512 f5c9342976da04f1145425a1d27303f0fe0ab1c5da8261d813345a9baf375e6f2d86d2a551ef792d58a9ddf7ab6a6acbfae14283a2b0ca7a03f21d354b44675c
-EBUILD vala-0.36.20.ebuild 804 BLAKE2B 0ce34c37bd7084eff03657ac161df037ff0ece012a11e6df78590fae31b86554a4aeb69637f6b4fb0df9d99c2824cbed3d12d26278058cca5fddd04f341aa001 SHA512 a92306c458421798c3a653ada2248e373af922a506072cbffa187cf62d53a10e2b3ab8487cc810d4cecc073ef359bee7a77d23e5a556399439f45d21dc1de79d
-EBUILD vala-0.40.16.ebuild 1191 BLAKE2B 3898cbdcbbcfd204a86d0d53f50b2cf164b546ba6fcd253674201ea6e92ff2fd247ee041bda6ebb2ae6d315389f58a2fea1c10ebb1302f98cf3b561a18e23a4e SHA512 8747ff255b4abd158930c93e3affab1ce0403654c76d6ddfb96b006bf8c46913a1369448859c7b3aea72ffd6ec5908201172c61936d158ca4737cab37e6241dc
-EBUILD vala-0.40.18.ebuild 1192 BLAKE2B ac8b017825026bef4105b39361210c759be3b2b36bfac471ad3e937c67ee59e63726b7d0beea853587018e77d1cb45b5b44d6899619a4d8a355b8b9e19748b43 SHA512 d864dce3a8f3f60d53fc5e4ded0a727979f1711f3f40a20f94fbce32ede8902c8146fb86a3eec364495c351793b16cf817d42c7b555542cadf9d7fddf3d42f5f
-EBUILD vala-0.40.19.ebuild 1200 BLAKE2B 3accfd2cae135836b2476dfb04da7c627f479f7a3489de231161f412ccaccbcd8df07ed87cde5e75d2fcbd6fc557d52dec453cb50f2dbe2fe46909ae59dcbc93 SHA512 e52d62e05114df2d23f9989ba81c88824fa5460986b8022e43f279205306a68c6b534de30ba9db26b71a9579ba46cecb8a0b68e7454d0d63b5cdd3c93a8961d7
-EBUILD vala-0.44.11.ebuild 1115 BLAKE2B 273fb6e1868c95e86f2b17940a8cec199cd315dc80284520bf8440812c9c861c2bd33ab649721a2d212e8d3c48f4c3970996b6656fec679393090d9f654231c3 SHA512 c3206e0fb2ee05696f11147eb67982fabf81004d118ecf45b30636ca64d48920ac025c42236cb05057e5277fa008843bb1239f2036d2f6509deb1c6e3e4f1566
-EBUILD vala-0.44.9.ebuild 1113 BLAKE2B 558a67f26468e68c4227dede7d85c16fb74b624968531e142a3984fe6c6f8c0ee3f4d07e0d9cf126d87c81fac2c2243cdc703b97222f7c0287ec66740cc2dac5 SHA512 ad644009ce8c00c2d578fee62e1d31c70958be349061fca62c3ee25249c3f04e233c9492e3182f65234487a940dff35fdd8db011b6afa78c41424fe9cc539a0b
-EBUILD vala-0.46.6.ebuild 1316 BLAKE2B 6783c205ed3da8df3452fccd5b4405dc26f46993e5af226af9e8387e6fc7ddbcf5fdac9f465ac0b5a82aaa6e5d6697c90b65f64b1f7ee7eecdadbb2992de88bb SHA512 235dbcf07c859136f569fae00159497d9693e649e4c234f44239ca73347eb95e69839fe44472ac7d889420a7ba3eb5245d491fb97a4e2c4b80b05e7c8fb70429
-EBUILD vala-0.47.92.ebuild 1316 BLAKE2B 047c254ee4a067bffd15a11b322cb36dfb797d93f4213fafe5c7f4da8599c4f6913fae1ed17f0e2624bb156b56a0a203b89031a573861cc606b3f7d4a6139692 SHA512 ad7a400cc8b18b346193fb451e76948bfa08fb0980e7994b0d364b02817331ab1a923eba88ff4e29dba218ad2bc04563ee624c998a908a6c8c2ce3107ca6048b
+DIST vala-0.46.7.tar.xz 3402828 BLAKE2B c028875e2c6036a6657244bff62d3a2eec2104c06ec3c993f4d59371f2ec7947cfd36f577d41a2c4ba52f6dd7fb03251cad989e3b2787e2817bd988cc16030ca SHA512 609694c2b773abdd8f47d0e9dd8e1dabac2053f7e0321eac7232b3931b15df30e095541dbb02965fc74f3a29b7562b7a326c56ce7c570e6528f8cfa480363c76
+DIST vala-0.48.2.tar.xz 3433912 BLAKE2B 25b10235b81b34e0baf6a3cceed660affca9d226ca4f04e96d0dbf4d2ba10635452806bca4f9a82387778bbf813f8ee43c36cf476ab81c524cefaba0febcbad0 SHA512 0ea2d2c56d6d01007fe41e13bc51faa5e780259bc55f34a2d84270a5b6a0a46d59cce5eb195f81c78f1acbfb118cc3c5882edf0d187788791ee3ce865faece89
+DIST vala-0.48.3.tar.xz 3438824 BLAKE2B 4d743a158e12134f31f2e9850713594e3bd668b2a5e74d05df2d828b10a2272dc2cb228bc0041a394dc08633db3e2497eb095c5526763d69225388198995e470 SHA512 e73eade8b0cfa312d896c81b76e045bc9b8b71bd89298c0f8d78b2f596eebf64dc0eea8d1e266b2c17a774105560ed47590fbe00d65b1fda8db6823ac3ba4bb4
+EBUILD vala-0.36.20.ebuild 801 BLAKE2B 28a0b45feb749184a38652c09c10e4e10fa89e13ae613394fc89395244249783d5d66e63b9a808a3d2b6d0585f6f03c70d418874ab103032502df7830e64ef0f SHA512 fb5d44393b0ecb62098873f25f16ee9f9f2b268faa5524268923ba88258ada9b6e9d74f3ab4d0d9c11d1972d869ae1e97bae848f4005ebbe29069219a4078d47
+EBUILD vala-0.40.16.ebuild 1188 BLAKE2B 9754e3990f8b9d97a9db2d475a8338dbad1ac0daa74118a4966d08709bbb8d713817ae4a163bdc79ef2ce26aad00e633418734a2333a4e2c72b8a10b6a53d814 SHA512 d55a8a950eda084f4d527d090fa768436808922b4adafbd756cdaed73fb7214d9a1f74c77fc1c0d232e3dc6bd7548ded04ff3fbe566c609c7c2677404e757636
+EBUILD vala-0.40.18.ebuild 1189 BLAKE2B 42ec55f24d20afeb5c3e268c5491be25084e9cd6f94e306568e9a0377c0e2a3197b4a5da9ec5108ce39433d31a339075a26485546d59ce9bc5a845f6efc40500 SHA512 18066dadbb427a8f494fd28402bb3dc71752209f47432e29fa9935c82e8a9f417eeea6fdb5b6e63a2f95ffdf6fae8bc133aa1ac1e79f1bd8ba9a2cb3cf97ffab
+EBUILD vala-0.40.19.ebuild 1196 BLAKE2B e2c6de7f13f532e577c26db204f440ee0d9256844618ab02d1f4761646f1cb74f1f268fadb5d043701aa64f014464bc9b6c9116856ef7c96abde436f10c5d62f SHA512 a4bbd7dfdcf4e6351f7abb0a4ffe7fbfe09846e883152c9e178f78f108c22e8cc9c3d2d340eb409f60fe923c97805fe503254b16e3a3e7f6779a32c48188c3f3
+EBUILD vala-0.40.20.ebuild 1196 BLAKE2B e2c6de7f13f532e577c26db204f440ee0d9256844618ab02d1f4761646f1cb74f1f268fadb5d043701aa64f014464bc9b6c9116856ef7c96abde436f10c5d62f SHA512 a4bbd7dfdcf4e6351f7abb0a4ffe7fbfe09846e883152c9e178f78f108c22e8cc9c3d2d340eb409f60fe923c97805fe503254b16e3a3e7f6779a32c48188c3f3
+EBUILD vala-0.44.11.ebuild 1112 BLAKE2B 0b5033ba7cbf3477620511bb979a7909d04b81e5c2f621f13596cbded541638acac9e6618be883fd95bc932f29ab9a971038548e09e9fde8c65a006a5f028059 SHA512 ae7334bfb1b17961cf8b4f8c8fd9e5e1755b8dadaa8b4de01c7bb01b9e80e1b42bf9e7ad47e732910df0099ef4a246d200b4cb88f365a446feaebaa6f3f5dc63
+EBUILD vala-0.44.9.ebuild 1110 BLAKE2B caa359b186daa04e09b9f3c2185280dfedabd8428ad060304e78cad7fe106ec00c1ec023dcd2f0a7f4239ab5be705413667cfa9683fc30ac88ee2b0b1389e588 SHA512 e14b37221c39f2b50c788c31c28b929251db44e944bae83cb81907c2d304e4b6a9838c7173fc5c74f2ffdecc89d8d0f1ee3cb8d6ffea023491e8f7f92e25c79f
+EBUILD vala-0.46.6.ebuild 1312 BLAKE2B 4419e7f83b6eff1279058671fbe8ff62e2d1cf562a07f10d22d09e41c5dccf2b3a4b9694c7be6ce2c671efbb258d0e5caa66c5ce5b30edbc04ae534acc4d27b7 SHA512 3edde48c1cef97c1ef17b3c4587bf26763f14ca300017acb178e32fdf40b7dd25ba462b93b870859ec584e3a1ae1bbf935570c0f783df5871194d8ca033c5ae2
+EBUILD vala-0.46.7.ebuild 1312 BLAKE2B 4419e7f83b6eff1279058671fbe8ff62e2d1cf562a07f10d22d09e41c5dccf2b3a4b9694c7be6ce2c671efbb258d0e5caa66c5ce5b30edbc04ae534acc4d27b7 SHA512 3edde48c1cef97c1ef17b3c4587bf26763f14ca300017acb178e32fdf40b7dd25ba462b93b870859ec584e3a1ae1bbf935570c0f783df5871194d8ca033c5ae2
+EBUILD vala-0.48.2.ebuild 1312 BLAKE2B 2a5c969f40a6f1ec8869e5de0e41e16ee78db748069bc0016e9b5b5ecb1dbc2be307995939134fe36a37b94e4a89284478d4704c04f32db9ae9c0a2786b875b8 SHA512 7354b9ffa72a263f0035b6803d6ab4071c7870cc90a1c9a57355ca637392420e78be6d5bedb866f327a522c0f852f1c78ea798ba66c62f8b5753fac9ec21a969
+EBUILD vala-0.48.3.ebuild 1312 BLAKE2B 2a5c969f40a6f1ec8869e5de0e41e16ee78db748069bc0016e9b5b5ecb1dbc2be307995939134fe36a37b94e4a89284478d4704c04f32db9ae9c0a2786b875b8 SHA512 7354b9ffa72a263f0035b6803d6ab4071c7870cc90a1c9a57355ca637392420e78be6d5bedb866f327a522c0f852f1c78ea798ba66c62f8b5753fac9ec21a969
MISC metadata.xml 345 BLAKE2B de3110ae281a87f8cb8f6c10d93705f56f0cfed972cd893a063e66c2629150d491498a29b35b4efe19fa5b6baa740f1d989bad440924befc60ef56423096f108 SHA512 163aa55430a075974d504a5bbb71ad9a249cb215de12a82b3141de18bb05f1e0c2078c02c617cf7d98a97c7f8dd407077183754d8c82c77e80dd0d7b2ec38283
diff --git a/dev-lang/vala/vala-0.36.20.ebuild b/dev-lang/vala/vala-0.36.20.ebuild
index 5daf060e9227..f4c64cea1459 100644
--- a/dev-lang/vala/vala-0.36.20.ebuild
+++ b/dev-lang/vala/vala-0.36.20.ebuild
@@ -9,7 +9,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
LICENSE="LGPL-2.1"
SLOT="0.36"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~x86-linux"
+KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~x86-linux"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/vala/vala-0.40.16.ebuild b/dev-lang/vala/vala-0.40.16.ebuild
index bae76372e3c4..e38c24e44f45 100644
--- a/dev-lang/vala/vala-0.40.16.ebuild
+++ b/dev-lang/vala/vala-0.40.16.ebuild
@@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
LICENSE="LGPL-2.1"
SLOT="0.40"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~x86-linux"
+KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~x86-linux"
IUSE="test valadoc"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/vala/vala-0.40.18.ebuild b/dev-lang/vala/vala-0.40.18.ebuild
index 194841657f75..9fe3b6a6d576 100644
--- a/dev-lang/vala/vala-0.40.18.ebuild
+++ b/dev-lang/vala/vala-0.40.18.ebuild
@@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
LICENSE="LGPL-2.1"
SLOT="0.40"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~x86-linux"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~x86-linux"
IUSE="test valadoc"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/vala/vala-0.40.19.ebuild b/dev-lang/vala/vala-0.40.19.ebuild
index 7c2127f2ddb7..661aaba47561 100644
--- a/dev-lang/vala/vala-0.40.19.ebuild
+++ b/dev-lang/vala/vala-0.40.19.ebuild
@@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
LICENSE="LGPL-2.1"
SLOT="0.40"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-linux"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux"
IUSE="test valadoc"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/vala/vala-0.40.20.ebuild b/dev-lang/vala/vala-0.40.20.ebuild
new file mode 100644
index 000000000000..661aaba47561
--- /dev/null
+++ b/dev-lang/vala/vala-0.40.20.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_EAUTORECONF="yes"
+
+inherit gnome2
+
+DESCRIPTION="Compiler for the GObject type system"
+HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
+
+LICENSE="LGPL-2.1"
+SLOT="0.40"
+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.40.0:2
+ >=dev-libs/vala-common-${PV}
+ valadoc? ( >=media-gfx/graphviz-2.16 )
+"
+DEPEND="${RDEPEND}
+ !${CATEGORY}/${PN}:0
+ 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 )
+"
+
+PATCHES=(
+ # From master
+ "${FILESDIR}"/0.40-Allow-disabling-the-build-of-valadoc.patch
+ # Add missing bits to make valadoc parallel installable
+ "${FILESDIR}"/0.40-valadoc-doclets-data-parallel-installable.patch
+)
+
+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.44.11.ebuild b/dev-lang/vala/vala-0.44.11.ebuild
index f371932b83b2..3d959d892617 100644
--- a/dev-lang/vala/vala-0.44.11.ebuild
+++ b/dev-lang/vala/vala-0.44.11.ebuild
@@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
LICENSE="LGPL-2.1+"
SLOT="0.44"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~x86-linux"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~x86-linux"
IUSE="test valadoc"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/vala/vala-0.44.9.ebuild b/dev-lang/vala/vala-0.44.9.ebuild
index 72f2583d807d..ad3b31d0343f 100644
--- a/dev-lang/vala/vala-0.44.9.ebuild
+++ b/dev-lang/vala/vala-0.44.9.ebuild
@@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
LICENSE="LGPL-2.1+"
SLOT="0.44"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~x86-linux"
IUSE="test valadoc"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/vala/vala-0.46.6.ebuild b/dev-lang/vala/vala-0.46.6.ebuild
index 2a72c15ce373..afe20bbc8ab5 100644
--- a/dev-lang/vala/vala-0.46.6.ebuild
+++ b/dev-lang/vala/vala-0.46.6.ebuild
@@ -10,7 +10,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
LICENSE="LGPL-2.1+"
SLOT="0.46"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-linux"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux"
IUSE="test valadoc"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/vala/vala-0.46.7.ebuild b/dev-lang/vala/vala-0.46.7.ebuild
new file mode 100644
index 000000000000..afe20bbc8ab5
--- /dev/null
+++ b/dev-lang/vala/vala-0.46.7.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.46"
+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.47.92.ebuild b/dev-lang/vala/vala-0.48.2.ebuild
index e7477d18c547..1f7c05bd15c1 100644
--- a/dev-lang/vala/vala-0.47.92.ebuild
+++ b/dev-lang/vala/vala-0.48.2.ebuild
@@ -10,7 +10,7 @@ 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 ~sh ~sparc ~x86 ~x86-linux"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux"
IUSE="test valadoc"
RESTRICT="!test? ( test )"
diff --git a/dev-lang/vala/vala-0.48.3.ebuild b/dev-lang/vala/vala-0.48.3.ebuild
new file mode 100644
index 000000000000..1f7c05bd15c1
--- /dev/null
+++ b/dev-lang/vala/vala-0.48.3.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
+}