From 6c30cc2d5bd48ddbdbe8d75544899cd5dbfcaba4 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Jul 2018 20:18:26 +0100 Subject: gentoo resync : 14.07.2018 --- dev-lang/Manifest.gz | Bin 18175 -> 18162 bytes dev-lang/erlang/Manifest | 6 + dev-lang/erlang/erlang-20.3.8.ebuild | 226 +++++++ dev-lang/erlang/erlang-21.0.2.ebuild | 225 +++++++ dev-lang/go/Manifest | 4 +- dev-lang/go/go-1.10.3.ebuild | 2 +- dev-lang/go/go-1.9.7.ebuild | 2 +- dev-lang/luajit/Manifest | 2 +- dev-lang/luajit/luajit-2.0.5-r1.ebuild | 2 +- dev-lang/perl/Manifest | 5 +- dev-lang/perl/perl-5.28.0.ebuild | 642 ++++++++++++++++++++ dev-lang/perl/perl-5.28.9999.ebuild | 7 +- dev-lang/php/Manifest | 20 +- dev-lang/php/php-5.6.35-r1.ebuild | 10 +- dev-lang/php/php-5.6.36.ebuild | 10 +- dev-lang/php/php-7.0.29.ebuild | 10 +- dev-lang/php/php-7.0.30.ebuild | 10 +- dev-lang/php/php-7.1.16.ebuild | 10 +- dev-lang/php/php-7.1.18.ebuild | 10 +- dev-lang/php/php-7.1.19.ebuild | 10 +- dev-lang/php/php-7.2.7.ebuild | 10 +- dev-lang/php/php-7.3.0_alpha1.ebuild | 10 +- dev-lang/php/php-7.3.0_alpha3.ebuild | 743 +++++++++++++++++++++++ dev-lang/python/Manifest | 2 +- dev-lang/python/python-3.7.0.ebuild | 9 +- dev-lang/rust-bin/Manifest | 15 +- dev-lang/rust-bin/metadata.xml | 4 + dev-lang/rust-bin/rust-bin-1.27.0.ebuild | 125 ++++ dev-lang/rust-bin/rust-bin-1.27.1-r1.ebuild | 142 +++++ dev-lang/rust-bin/rust-bin-1.27.1.ebuild | 130 ++++ dev-lang/rust/Manifest | 7 +- dev-lang/rust/metadata.xml | 3 + dev-lang/rust/rust-1.27.0.ebuild | 234 ------- dev-lang/rust/rust-1.27.1-r2.ebuild | 271 +++++++++ dev-lang/rust/rust-1.27.1.ebuild | 234 +++++++ dev-lang/spidermonkey/Manifest | 2 +- dev-lang/spidermonkey/spidermonkey-38.3.0.ebuild | 2 +- dev-lang/swi-prolog/Manifest | 19 +- dev-lang/swi-prolog/metadata.xml | 1 + dev-lang/swi-prolog/swi-prolog-6.6.6.ebuild | 124 ---- dev-lang/swi-prolog/swi-prolog-7.2.3-r1.ebuild | 135 ---- dev-lang/swi-prolog/swi-prolog-7.7.13.ebuild | 148 ----- dev-lang/swi-prolog/swi-prolog-7.7.14.ebuild | 148 ----- dev-lang/swi-prolog/swi-prolog-7.7.15.ebuild | 148 ----- dev-lang/swi-prolog/swi-prolog-7.7.16.ebuild | 148 ----- dev-lang/swi-prolog/swi-prolog-7.7.18-r1.ebuild | 150 +++++ dev-lang/swi-prolog/swi-prolog-7.7.18.ebuild | 148 +++++ dev-lang/yap/Manifest | 4 +- dev-lang/yap/yap-6.3.3.ebuild | 4 +- 49 files changed, 3151 insertions(+), 1182 deletions(-) create mode 100644 dev-lang/erlang/erlang-20.3.8.ebuild create mode 100644 dev-lang/erlang/erlang-21.0.2.ebuild create mode 100644 dev-lang/perl/perl-5.28.0.ebuild create mode 100644 dev-lang/php/php-7.3.0_alpha3.ebuild create mode 100644 dev-lang/rust-bin/rust-bin-1.27.0.ebuild create mode 100644 dev-lang/rust-bin/rust-bin-1.27.1-r1.ebuild create mode 100644 dev-lang/rust-bin/rust-bin-1.27.1.ebuild delete mode 100644 dev-lang/rust/rust-1.27.0.ebuild create mode 100644 dev-lang/rust/rust-1.27.1-r2.ebuild create mode 100644 dev-lang/rust/rust-1.27.1.ebuild delete mode 100644 dev-lang/swi-prolog/swi-prolog-6.6.6.ebuild delete mode 100644 dev-lang/swi-prolog/swi-prolog-7.2.3-r1.ebuild delete mode 100644 dev-lang/swi-prolog/swi-prolog-7.7.13.ebuild delete mode 100644 dev-lang/swi-prolog/swi-prolog-7.7.14.ebuild delete mode 100644 dev-lang/swi-prolog/swi-prolog-7.7.15.ebuild delete mode 100644 dev-lang/swi-prolog/swi-prolog-7.7.16.ebuild create mode 100644 dev-lang/swi-prolog/swi-prolog-7.7.18-r1.ebuild create mode 100644 dev-lang/swi-prolog/swi-prolog-7.7.18.ebuild (limited to 'dev-lang') diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz index 9c98d52691ec..edd1d6e19061 100644 Binary files a/dev-lang/Manifest.gz and b/dev-lang/Manifest.gz differ diff --git a/dev-lang/erlang/Manifest b/dev-lang/erlang/Manifest index 1874f8846ccb..a7e0c5161c43 100644 --- a/dev-lang/erlang/Manifest +++ b/dev-lang/erlang/Manifest @@ -5,8 +5,12 @@ AUX epmd.service 138 BLAKE2B f56c907ec51bb85c437235334cf01c6a43ccf2316be3b226ab5 AUX erlang-20.2-libressl-2.6.1.patch 4228 BLAKE2B 8c671d3aa8329562b274e6b9f233a3f93565f5a0f4491b83e7e57fb6881d0fbaaf955d7aa5537bdcfc85dbf4c979a3625aed2c203679eccaf9fcc4bd93133836 SHA512 66ff54153264d37d21822a19c07dc7d07fb4ed5c32234be7270821c060fcbd2673069dfd23a38512c7b0373fc97e6e44799f4b4280a1391b300f60f422ef6d69 AUX erlang-20.3.2-dont-ignore-LDFLAGS.patch 1337 BLAKE2B 7272c96b1ee947a98f0a5b1f3bd1fce11e8d02f121348208196ae60af965dfde7fac15263ca0a58df96dff21785a1a63f4fc10f7e7e10c0f68a618e760e5ffd7 SHA512 59d39b1680ac3406e4c37f81a0207588208a873279920258235af54700f80bd67584c3e55c9278f893cd7813573bbec8b13195e47ba00101fc578d5a2b40fa34 DIST erlang-20.3.2.tar.gz 53492641 BLAKE2B 2cdf78b6003801400d99949865a5b3e17d2209bf411bbe07dc12f749c84725710d12f85cb2559bc39ac04a7d6f7a9ae07b5f131a5524cf4ce3eb8559ca0259bc SHA512 060874cd4f72c1ecea178dd102f4b37a644485a810127092ad04fee76b52729ce199ee476335a2a40370bc718b7e03eb76869c3a48d457773856fd9f6d30a20b +DIST erlang-20.3.8.tar.gz 53499006 BLAKE2B 0c38fb739a9c4f4b79533faea8c533f85c30d680081b5de96e70722a243d53b9317a26c7138a24a78cadd938777bd48a515484fffef2fdfd720819ab12bb8c0c SHA512 2ada142b47fdd0d1807a179e7cd3067e001f94682011436d33e503219a8a93495a187f8192fa2ebcdac48409e489b7b310d538779447981e6ba033a6dde12e1c +DIST erlang-21.0.2.tar.gz 52835517 BLAKE2B bf7e2e166236a7c0a3e3411889f163dce0d938c1a854a6c264c137b601587c4cd4d62d58d9a87cf925406272d6e3d6547e4403927adc8e901716289ee2164162 SHA512 ff736a6df92ac7feec7b9ebb1b6523d511a533d48e536f36aee20fa21b5a1dc33791065d45f6900bbbaa48b4ba80b57a306b416801456a5ac33468786dfb00b7 DIST erlang_doc_html_20.3.tar.gz 33594990 BLAKE2B 34db68a5c3ae56f097474cc0b776971853d96c57d3d2e058a5db8998aad9c8d498610979a46155e8e935022f363c944f407c10c650fd35174cf1f50697ddf1de SHA512 4b280228fb9cbd9eb62db12ff9d6fad67d6855d0cdbc780839bbc95302ffd907c5b410e6f8519207db8850b753964571a9bf9df9eca53749f5b01d1b27dbc6d4 +DIST erlang_doc_html_21.0.tar.gz 32501093 BLAKE2B 5c5bab831d4a86129cca41f8e82416d45a92e8ae29cd2223301633b46471783ee6bb8131d469cedcf0f655ea21879c475c61d0b9eefba9e12d78d0a803403a19 SHA512 8be300d9e502b7dcf8db4621d7c5c8981f47cbff851b30b33ef33871f737554eda73dacd179b64995fc45362c4dfd91e15ff659d2898f863465222176bfbff9f DIST erlang_doc_man_20.3.tar.gz 1339710 BLAKE2B 00aba848940914b3d98f9500b8201b0679d7d63d066cee296c8fbb399f132340b989f3cdcdd6c45a46e432efdb7c40c39d8ab4f3dbd64570316d649efc9faed1 SHA512 22c398ce3b42c7ef8abec1db85745eeb4d8804bc679d40b6a786fdc40dc241e43b5551df5d1eccb3ca8d4a64b833bf6663e77044f4564bb49cf67c4b74c5ea25 +DIST erlang_doc_man_21.0.tar.gz 1311959 BLAKE2B 70b049c6d7b8bbbb3bf77f7588ccf0eb937d5fe511968d47e1325dd01b48e986ae82804ffc88b750f0f7e2fe0482c0506ad060a6a84892eea61264aa2b003dd9 SHA512 611ac0b7cb2c0bc0bb6cd194dffe4f9d2c95bf38da033aa8c43d386a9bedf6f7d6fa8a95d340dbb57da2698602599c8e0501cbbdd735d6e5d35110aa9087dc79 DIST otp_doc_html_19.1.tar.gz 34624316 BLAKE2B e3a5edfe1645d58e4cbd6537c775190716eed7613610ddfa112692fdbace2077b1ccdf7df5987973d2ae4ef529e4ec45d44a240265157816e2a15dabe9232b83 SHA512 2c6448af0be4bf35427950aca82eac3aac7554575ba07a8ba8942c27e1eb668461fde00604c3be28fbaca8a1e28ee4861608e33a9c79bc951bb695f99b1c1ac8 DIST otp_doc_html_19.3.tar.gz 35818689 BLAKE2B 30118276fbd817b803ef20700fe2e71a8457645d00f8949b6d3175d92cb5c84d306e4de9899e2f5e0c562d8040dc22db35e1a0f2e314cf1a783794573b3ece59 SHA512 a70d2c470fa1dc0594b20af73ba36ccb7702b4192960e6fc0296738175215a43450f9bf558637f7f5e40757f7a15dcf4f1ae8a88515e211cd3c0fae45c5e1858 DIST otp_doc_html_20.2.tar.gz 33570484 BLAKE2B c47244a601ae780e5304aedbafbc84d514cb21852760c51384b197d8d37602d51448b7123f6205da9afd2c5d2158f518a122dd4d550ca2ff22d3425eb31b6cf7 SHA512 b481930066737cf0ae2496aa9bc0c865da46bd3985fe5ebcf51eb9383539a57ec364e1eed9d3916ba0953d837d0d5d37cfc129a995d4e2a9656846e75cda9397 @@ -23,5 +27,7 @@ EBUILD erlang-19.1.ebuild 4482 BLAKE2B 36a4249649473f50cce66f542c98dbefee41a56d5 EBUILD erlang-19.3.ebuild 4535 BLAKE2B 248bcab46bc6830e6ffcc626d8170b99f5705c7955fd7184e2f8b8799e0ab4fc97c9741bf4ad9413da479c703b585589e2eae63c9fb298d7e36750fadcb1b56b SHA512 c1b60ca3420d5a3cb1561376c6622d346dbd483e8ff5965f2823a6b1e1e3b0146b32a805307d0a7563ae5171d005cfc27a6662ae2ba8fff0511c5db221851b14 EBUILD erlang-20.2.ebuild 4586 BLAKE2B e3eed51b916285c87e212446047d07d47492410580464a2c800642be36426848f859573387204afd7ab67d72bbfaefec4189b973525f23829bed9f7a365d436b SHA512 80d5567d6233c7d9fcd53ca64814dd8cf188094decc6f8708563c22bef77b0b85bd23623df825f085f738547bf64b68fdde160b2ca9389b743a2c56259bf37b6 EBUILD erlang-20.3.2.ebuild 6607 BLAKE2B d25ae5f93fc21e7304beeeecc99cd39516d52685d13003b5c9458272e1e6a9301a028009f746be53c20d20d1d896ec4177d9f06ed1d608ad4c466f1497226046 SHA512 dc6f1228f0f0b9a852f0d8cae149476b44f6069ec647340d259e8cb016a54c80265234e97e49686b33a3948cff485a2a30d276e03c1186749ecdc724e9cbefe2 +EBUILD erlang-20.3.8.ebuild 6650 BLAKE2B a6d808b56317da3fb65ccad9ef422bf602db0546729e8a61f70c233d4d4aa908b09acbb9c435ddcee6990d1372fb7f1dad5ab8a2ab4c8f21cb9ff0600996df9a SHA512 eca902776825efaf825183adbfdf158452bac38476ea6abea88ccdc8e15bf08f34921835acd9a81664b28216e909712dbae75e9b087587778aedae8c15fdf1dc EBUILD erlang-20.3.ebuild 4694 BLAKE2B 5d66f16b192c72d5890dc656530a743fd4ffd1f5e7a4770e8a2dbd0f69b631ade821163bdda3dfdf579fbddaa723d10564a4990f0c2c272fcc0455c45277154d SHA512 f059ffc739cbe0026c50d1a9019aef3bd63b8da887d755b3cbf6673ee208f294125ff38d261ce27e6b7f884a9a8156ca3bfe57da3bf3794f149b592ea905ed2a +EBUILD erlang-21.0.2.ebuild 6648 BLAKE2B 3da97597dae434a2e35c0f2fb0682258b96f6d41e63760ec9f9acb458ae6db03e9189e346e3d644416f2082d5b13f15d6c0fc3a4d97d673dfedbe22b5c029dca SHA512 fbf641ce18a3c3ae2c3223f629bbd01c3ac0d63e5767c9576d31f9b009f45658adf8c5cbc32447882ebdbbaaf58952160eda1b8ebe4a1cf7c543e2287c8d6a86 MISC metadata.xml 700 BLAKE2B f71879bdfc301ed27bd8212f074e5dbb176b29bcdab9edeb5ce0ba3dab3d8cb888977a140e91b0a50fbe35960799ab487afa3cd26a7b3b52d01909c678c1f30c SHA512 cada8e7cf719a6f0249c9f8538452d599e9ea938b2d57a9083e728c8f9d1c259871cc0f32c4f01c725692dd5e8270f0f67d84335593bdfe5ae31a54f117b1b84 diff --git a/dev-lang/erlang/erlang-20.3.8.ebuild b/dev-lang/erlang/erlang-20.3.8.ebuild new file mode 100644 index 000000000000..ed20da173d49 --- /dev/null +++ b/dev-lang/erlang/erlang-20.3.8.ebuild @@ -0,0 +1,226 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +WX_GTK_VER="3.0" + +inherit autotools elisp-common java-pkg-opt-2 systemd versionator wxwidgets + +# NOTE: If you need symlinks for binaries please tell maintainers or +# open up a bug to let it be created. + +UPSTREAM_V="$(get_version_component_range 1-2)" + +DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)" +HOMEPAGE="http://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" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" + +IUSE="dirty-schedulers doc emacs hipe java kpoll libressl odbc smp sctp ssl systemd tk wxwidgets" +REQUIRED_USE="dirty-schedulers? ( smp )" #621610 + +RDEPEND=" + ssl? ( + !libressl? ( >=dev-libs/openssl-0.9.7d:0= ) + libressl? ( dev-libs/libressl:0= ) + ) + emacs? ( virtual/emacs ) + java? ( >=virtual/jdk-1.2:* ) + odbc? ( dev-db/unixODBC ) + systemd? ( sys-apps/systemd ) +" +DEPEND="${RDEPEND} + dev-lang/perl + sctp? ( net-misc/lksctp-tools ) + sys-libs/zlib + tk? ( dev-lang/tk ) + wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] + virtual/glu ) +" + +S="${WORKDIR}/otp-OTP-${PV}" + +PATCHES=( + "${FILESDIR}/18.2.1-wx3.0.patch" + "${FILESDIR}/${PN}-20.3.2-dont-ignore-LDFLAGS.patch" + ) + +SITEFILE=50"${PN}"-gentoo.el + +# Taken from the upstream build script, build_otp +erlang_create_lib_configure_in() { + local bootstrap_apps="erts lib/asn1 lib/compiler lib/hipelib/ic lib/kernel + lib/parsetools lib/sasl lib/snmp lib/stdlib lib/syntax_tools" + local sdirs= + for lib_app in ${bootstrap_apps}; do + case "${lib_app}" in + lib/*) + if [[ -f "${lib_app}/configure.in" ]]; then + mv "${lib_app}/configure.in" "${lib_app}/configure.ac" || die + app=`echo "${lib_app}" | sed "s|lib/\(.*\)|\1|"` + sdirs="${sdirs}test ! -f ${app}/configure || AC_CONFIG_SUBDIRS(${app}/.)\n" || die + fi;; + *) + ;; + esac + done + + local sed_bootstrap="s%@BOOTSTRAP_CONFIGURE_APPS@%$sdirs%g" + + sdirs= + for lib_app in lib/*; do + local is_bapp=false + for bapp in ${bootstrap_apps}; do + test "${bapp} != ${lib_app}" || { "${is_bapp}"=true; break; } + done + if [[ "${is_bapp}" = false ]] && [[ -f "${lib_app}/configure.in" ]]; then + mv "${lib_app}/configure.in" "${lib_app}/configure.ac" || die + app=`echo "${lib_app}" | sed "s|lib/\(.*\)|\1|"` || die + sdirs="${sdirs} test ! -f ${app}/configure || AC_CONFIG_SUBDIRS(${app}/.)\n" + fi + done + + local sed_non_bootstrap="s%@NON_BOOTSTRAP_CONFIGURE_APPS@%$sdirs%g" + + rm -f lib/configure.in || die + sed "$sed_bootstrap;$sed_non_bootstrap" > lib/configure.ac < lib/configure.in.src || die "Failed to create lib/configure.ac" + +} + +# Taken from the upstream build script, build_otp +erlang_distribute_config_helpers() { + local aclocal_dirs=". ./lib/erl_interface ./lib/odbc ./lib/wx ./lib/megaco" + local autoconf_aux_dirs="./lib/common_test/priv/auxdir ./lib/erl_interface/src/auxdir ./lib/common_test/test_server ./lib/wx/autoconf" + + local aclocal_master="./erts/aclocal.m4" + local install_sh_master="./erts/autoconf/install-sh" + local config_guess_master="./erts/autoconf/config.guess" + local config_sub_master="./erts/autoconf/config.sub" + + for dir in ${aclocal_dirs}; do + "${install_sh_master}" -m 644 -t "${dir}" "${aclocal_master}" || die + done + + for dir in ${autoconf_aux_dirs}; do + "${install_sh_master}" -d "${dir}" || die + "${install_sh_master}" -t "${dir}" "${install_sh_master}" || die + "${install_sh_master}" -t "${dir}" "${config_guess_master}" || die + "${install_sh_master}" -t "${dir}" "${config_sub_master}" || die + done +} + +src_prepare() { + default + + # Determines which directories to recurse into with autoconf + erlang_create_lib_configure_in + + # Move local autoconf files into the neccessary directories + erlang_distribute_config_helpers + + java-pkg-opt-2_src_prepare + + eautoreconf +} + +src_configure() { + use wxwidgets && need-wxwidgets unicode + + econf \ + --disable-builtin-zlib \ + $(use_enable dirty-schedulers) \ + $(use_enable hipe) \ + $(use_enable kpoll kernel-poll) \ + $(use_with java javac) \ + $(use_with odbc) \ + $(use_enable sctp) \ + $(use_enable smp smp-support) \ + $(use_with ssl) \ + $(use_with ssl ssl-rpath "no") \ + $(use_enable ssl dynamic-ssl-lib) \ + $(use_enable systemd) \ + --enable-threads +} + +src_compile() { + emake + + if use emacs ; then + pushd lib/tools/emacs &>/dev/null || die + elisp-compile *.el + popd &>/dev/null || die + fi +} + +extract_version() { + sed -n -e "/^$2 = \(.*\)$/s::\1:p" "${S}/$1/vsn.mk" +} + +src_install() { + local ERL_LIBDIR="/usr/$(get_libdir)/erlang" + 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="${ED}" 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} + fi + + einstalldocs + + dosym "${ERL_LIBDIR}/bin/erl" /usr/bin/erl + dosym "${ERL_LIBDIR}/bin/erlc" /usr/bin/erlc + dosym "${ERL_LIBDIR}/bin/escript" /usr/bin/escript + dosym \ + "${ERL_LIBDIR}/lib/erl_interface-${ERL_INTERFACE_VER}/bin/erl_call" \ + /usr/bin/erl_call + + if use smp; then + dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam.smp" /usr/bin/beam.smp + else + dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam" /usr/bin/beam + fi + + ## 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 + echo "MANPATH=\"${MY_MANPATH}\"" > "${T}/90erlang" || die + doenvd "${T}/90erlang" + + if use emacs ; then + pushd "${S}" &>/dev/null || die + 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}" + popd &>/dev/null || die + fi + + newinitd "${FILESDIR}"/epmd.init epmd + systemd_dounit "${FILESDIR}"/epmd.service +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-lang/erlang/erlang-21.0.2.ebuild b/dev-lang/erlang/erlang-21.0.2.ebuild new file mode 100644 index 000000000000..4d85955c4706 --- /dev/null +++ b/dev-lang/erlang/erlang-21.0.2.ebuild @@ -0,0 +1,225 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +WX_GTK_VER="3.0" + +inherit autotools elisp-common java-pkg-opt-2 systemd versionator wxwidgets + +# NOTE: If you need symlinks for binaries please tell maintainers or +# open up a bug to let it be created. + +UPSTREAM_V="$(get_version_component_range 1-2)" + +DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)" +HOMEPAGE="http://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" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" + +IUSE="dirty-schedulers doc emacs hipe java kpoll libressl odbc smp sctp ssl systemd tk wxwidgets" +REQUIRED_USE="dirty-schedulers? ( smp )" #621610 + +RDEPEND=" + ssl? ( + !libressl? ( >=dev-libs/openssl-0.9.7d:0= ) + libressl? ( dev-libs/libressl:0= ) + ) + emacs? ( virtual/emacs ) + java? ( >=virtual/jdk-1.2:* ) + odbc? ( dev-db/unixODBC ) + systemd? ( sys-apps/systemd ) +" +DEPEND="${RDEPEND} + dev-lang/perl + sctp? ( net-misc/lksctp-tools ) + sys-libs/zlib + tk? ( dev-lang/tk ) + wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] virtual/glu ) +" + +S="${WORKDIR}/otp-OTP-${PV}" + +PATCHES=( + "${FILESDIR}/18.2.1-wx3.0.patch" + "${FILESDIR}/${PN}-20.3.2-dont-ignore-LDFLAGS.patch" + ) + +SITEFILE=50"${PN}"-gentoo.el + +# Taken from the upstream build script, build_otp +erlang_create_lib_configure_in() { + local bootstrap_apps="erts lib/asn1 lib/compiler lib/hipelib/ic lib/kernel + lib/parsetools lib/sasl lib/snmp lib/stdlib lib/syntax_tools" + local sdirs= + for lib_app in ${bootstrap_apps}; do + case "${lib_app}" in + lib/*) + if [[ -f "${lib_app}/configure.in" ]]; then + mv "${lib_app}/configure.in" "${lib_app}/configure.ac" || die + app=`echo "${lib_app}" | sed "s|lib/\(.*\)|\1|"` + sdirs="${sdirs}test ! -f ${app}/configure || AC_CONFIG_SUBDIRS(${app}/.)\n" || die + fi;; + *) + ;; + esac + done + + local sed_bootstrap="s%@BOOTSTRAP_CONFIGURE_APPS@%$sdirs%g" + + sdirs= + for lib_app in lib/*; do + local is_bapp=false + for bapp in ${bootstrap_apps}; do + test "${bapp} != ${lib_app}" || { "${is_bapp}"=true; break; } + done + if [[ "${is_bapp}" = false ]] && [[ -f "${lib_app}/configure.in" ]]; then + mv "${lib_app}/configure.in" "${lib_app}/configure.ac" || die + app=`echo "${lib_app}" | sed "s|lib/\(.*\)|\1|"` || die + sdirs="${sdirs} test ! -f ${app}/configure || AC_CONFIG_SUBDIRS(${app}/.)\n" + fi + done + + local sed_non_bootstrap="s%@NON_BOOTSTRAP_CONFIGURE_APPS@%$sdirs%g" + + rm -f lib/configure.in || die + sed "$sed_bootstrap;$sed_non_bootstrap" > lib/configure.ac < lib/configure.in.src || die "Failed to create lib/configure.ac" + +} + +# Taken from the upstream build script, build_otp +erlang_distribute_config_helpers() { + local aclocal_dirs=". ./lib/erl_interface ./lib/odbc ./lib/wx ./lib/megaco" + local autoconf_aux_dirs="./lib/common_test/priv/auxdir ./lib/erl_interface/src/auxdir ./lib/common_test/test_server ./lib/wx/autoconf" + + local aclocal_master="./erts/aclocal.m4" + local install_sh_master="./erts/autoconf/install-sh" + local config_guess_master="./erts/autoconf/config.guess" + local config_sub_master="./erts/autoconf/config.sub" + + for dir in ${aclocal_dirs}; do + "${install_sh_master}" -m 644 -t "${dir}" "${aclocal_master}" || die + done + + for dir in ${autoconf_aux_dirs}; do + "${install_sh_master}" -d "${dir}" || die + "${install_sh_master}" -t "${dir}" "${install_sh_master}" || die + "${install_sh_master}" -t "${dir}" "${config_guess_master}" || die + "${install_sh_master}" -t "${dir}" "${config_sub_master}" || die + done +} + +src_prepare() { + default + + # Determines which directories to recurse into with autoconf + erlang_create_lib_configure_in + + # Move local autoconf files into the neccessary directories + erlang_distribute_config_helpers + + java-pkg-opt-2_src_prepare + + eautoreconf +} + +src_configure() { + use wxwidgets && need-wxwidgets unicode + + econf \ + --disable-builtin-zlib \ + $(use_enable dirty-schedulers) \ + $(use_enable hipe) \ + $(use_enable kpoll kernel-poll) \ + $(use_with java javac) \ + $(use_with odbc) \ + $(use_enable sctp) \ + $(use_enable smp smp-support) \ + $(use_with ssl) \ + $(use_with ssl ssl-rpath "no") \ + $(use_enable ssl dynamic-ssl-lib) \ + $(use_enable systemd) \ + --enable-threads +} + +src_compile() { + emake + + if use emacs ; then + pushd lib/tools/emacs &>/dev/null || die + elisp-compile *.el + popd &>/dev/null || die + fi +} + +extract_version() { + sed -n -e "/^$2 = \(.*\)$/s::\1:p" "${S}/$1/vsn.mk" +} + +src_install() { + local ERL_LIBDIR="/usr/$(get_libdir)/erlang" + 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="${ED}" 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} + fi + + einstalldocs + + dosym "${ERL_LIBDIR}/bin/erl" /usr/bin/erl + dosym "${ERL_LIBDIR}/bin/erlc" /usr/bin/erlc + dosym "${ERL_LIBDIR}/bin/escript" /usr/bin/escript + dosym \ + "${ERL_LIBDIR}/lib/erl_interface-${ERL_INTERFACE_VER}/bin/erl_call" \ + /usr/bin/erl_call + + if use smp; then + dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam.smp" /usr/bin/beam.smp + else + dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam" /usr/bin/beam + fi + + ## 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 + echo "MANPATH=\"${MY_MANPATH}\"" > "${T}/90erlang" || die + doenvd "${T}/90erlang" + + if use emacs ; then + pushd "${S}" &>/dev/null || die + 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}" + popd &>/dev/null || die + fi + + newinitd "${FILESDIR}"/epmd.init epmd + systemd_dounit "${FILESDIR}"/epmd.service +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest index 65a7e77d514e..42d0b5578457 100644 --- a/dev-lang/go/Manifest +++ b/dev-lang/go/Manifest @@ -16,8 +16,8 @@ DIST go1.9.6.src.tar.gz 16397247 BLAKE2B 36c9077177bd7bbe9b40c422c5faf7aa83fdd8a DIST go1.9.7.src.tar.gz 16401688 BLAKE2B f6fa7b7171595f6bb2b1860c10a34c386b781504b772a37b60ccd613850f916a463bdb1e2bf299c3d8e78e38cbdf0b59e1ee8dfc3597ef888450efb3eb6afc49 SHA512 1ed3375870223a73c9cf94839bfd8894b92f44f9a3ba3b2bec1e9cd8d2212519344c8afcb87a516d6ad3e1ccdc74d9dba225a222bdc5e60f6d73cb474d5f7664 EBUILD go-1.10.1.ebuild 5653 BLAKE2B 4807f630943168bc970ee2f94acdd82b7619c55d0ea7fd33fbc5f5f0107342f1edf18edfe8e4c6f1a75063755c67a8b0c5d578ca3de275d8c960315dead33c5a SHA512 f51d57aa2a504ae77b3f117f2a3f1d088d534a3dcf9ec16d102e71b42a479618a18b495b6aacf967f90d7cbaf47f3e7c39e16d65fa120be1bba7726c552d1e48 EBUILD go-1.10.2.ebuild 5656 BLAKE2B 1a140da0f482e46eaf80aa9836e934440fb309a61519c164999e75340614b383fc18dcc4cf3d70addd42f5ef289c9b167dfdc99abf52159aedb163c7426684e2 SHA512 630d6003c12c9f512f4c259be18e5c5716627968cc4725ed6d016076984aae3f90b30ce542ed8407f95a9db377502265e30b6a36d5725ce36ca3005d2c00535a -EBUILD go-1.10.3.ebuild 5656 BLAKE2B 1a140da0f482e46eaf80aa9836e934440fb309a61519c164999e75340614b383fc18dcc4cf3d70addd42f5ef289c9b167dfdc99abf52159aedb163c7426684e2 SHA512 630d6003c12c9f512f4c259be18e5c5716627968cc4725ed6d016076984aae3f90b30ce542ed8407f95a9db377502265e30b6a36d5725ce36ca3005d2c00535a +EBUILD go-1.10.3.ebuild 5655 BLAKE2B 7eeae6212b8d371aeb4b8aa8f5376a9cbd0ef29fc8646bfb4f0a8e8145433276eee8cc9e74b40251a56659d208f67c371412604f3030cc8db2f371b65eeb1d5a SHA512 82bc0e570ae1fba804597ed8dad534d6a4fc10f77856828efc2079239bde331a606b63b652540cf24826071d2c1a845a316a38a3cdc325c4aa029dfb65e387f1 EBUILD go-1.9.6.ebuild 5650 BLAKE2B ad97b072bf73db28d60b1afb3bc3fea2159d87edc3ed0433b3e010979b01568caf81f7d6f22959ed854b7870ca5e0397a0f71e2e9488c4bb277ce0bc0a591a9f SHA512 a5a1c5037c52422d98b42c5688ba88918e548c8679d722d7d85dc3c51228ac944400a339a8e6a4018f2f438afec8365cd3550b35e6b595b097eecdec08befc84 -EBUILD go-1.9.7.ebuild 5650 BLAKE2B ad97b072bf73db28d60b1afb3bc3fea2159d87edc3ed0433b3e010979b01568caf81f7d6f22959ed854b7870ca5e0397a0f71e2e9488c4bb277ce0bc0a591a9f SHA512 a5a1c5037c52422d98b42c5688ba88918e548c8679d722d7d85dc3c51228ac944400a339a8e6a4018f2f438afec8365cd3550b35e6b595b097eecdec08befc84 +EBUILD go-1.9.7.ebuild 5649 BLAKE2B d448a6132d795715d7b42daa2f437b1bfadeae1fb5c4cef936343c0e31bd415bd5a6deab2a3690ddc03afbac612ec2a9d39951dfcdc49b3217016bbc620a25fc SHA512 275f0808e1e1b0687ed1ea85785afd02713e6877fe2a107b614522644fe5b7a81742f16aa8291c4001ef225ff7e31ed4270c3d8dcc991b2d97d20f1174f72f0f EBUILD go-9999.ebuild 5650 BLAKE2B ad97b072bf73db28d60b1afb3bc3fea2159d87edc3ed0433b3e010979b01568caf81f7d6f22959ed854b7870ca5e0397a0f71e2e9488c4bb277ce0bc0a591a9f SHA512 a5a1c5037c52422d98b42c5688ba88918e548c8679d722d7d85dc3c51228ac944400a339a8e6a4018f2f438afec8365cd3550b35e6b595b097eecdec08befc84 MISC metadata.xml 538 BLAKE2B 78502c369a490804b2c69eef864276c2be5d0ee84ec189b6cc8584f8f42668a35f3c74bd25ceb53c469716337cbab908c576ca880c492f5961fedafc74cc346f SHA512 514a441a522218fdca543a22370e965a2bfc1f1f2c37e77431143329bb3d3f4f53e99ad5d7f7d7c61877f77387a777f7b4f339b9a3e45322d01d39d3d0ea1309 diff --git a/dev-lang/go/go-1.10.3.ebuild b/dev-lang/go/go-1.10.3.ebuild index 8c2ff8874012..085d8581d6b1 100644 --- a/dev-lang/go/go-1.10.3.ebuild +++ b/dev-lang/go/go-1.10.3.ebuild @@ -39,7 +39,7 @@ case ${PV} in case ${PV} in *_beta*|*_rc*) ;; *) - KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~s390 ~x86 ~amd64-fbsd ~x86-fbsd ~x64-macos ~x64-solaris" + KEYWORDS="-* amd64 ~arm ~arm64 ~ppc64 ~s390 ~x86 ~amd64-fbsd ~x86-fbsd ~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.9.7.ebuild b/dev-lang/go/go-1.9.7.ebuild index 503bf3c4a123..a5edf13b59d7 100644 --- a/dev-lang/go/go-1.9.7.ebuild +++ b/dev-lang/go/go-1.9.7.ebuild @@ -39,7 +39,7 @@ case ${PV} in case ${PV} in *_beta*|*_rc*) ;; *) - KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~x64-macos ~x64-solaris" + KEYWORDS="-* amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~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/luajit/Manifest b/dev-lang/luajit/Manifest index eb1538eade2b..66f497017545 100644 --- a/dev-lang/luajit/Manifest +++ b/dev-lang/luajit/Manifest @@ -6,6 +6,6 @@ EBUILD luajit-2.0.2.ebuild 1701 BLAKE2B efab2a2a1353da44875c08337d617c41669fe71b EBUILD luajit-2.0.3-r1.ebuild 1359 BLAKE2B 7636abf7dc42fa1d7c0c791339718308ca2d4b3e08d4e1f132669bb8d0354e2cb106614dda5642785bb8050a6280fa1adf825e7d78ab166184489aa9ac9af6f3 SHA512 4d49cd2b1666c56ad86f63b20660846cc0d2b85bb430177adee0a059f09ee9337f979f04f27262eb8e54081dca2bbade2a13969dfed30f4a7ddde77c14a284d4 EBUILD luajit-2.0.3.ebuild 1704 BLAKE2B 64a61522a1488c13178dffad3114f900b27aacf2c8b00971f83edb8312744cc045d03567beebbadfdf97bc0f7b8043826db3f9f71ddde5071b7d3abcfdc93556 SHA512 dde1467f89f2feac5123d2f63f1e305925fdca04f09fb4725cf5e0da3ff29ad0ce894fadce71fb1937a5954f14017000cf20175ba639c520cc868a7800577528 EBUILD luajit-2.0.4.ebuild 1358 BLAKE2B 3dd160052c29cb09107ee75a1650f20959d192b74e2fe1dc4dafb7db0159366ebf264adc1aa078a45691e2cf62892994dbca695abf2a3ef56d4a49c2ba4ad174 SHA512 94f00d88a15725f285061b6d2f5be4d565bfa004776115f7625bfe6aa60ac08c7dd5797b1766de4a225e35938771f297d592f7a230ffc2bf948084bc4ed4631c -EBUILD luajit-2.0.5-r1.ebuild 1418 BLAKE2B fa1f0582422be0937eb365a9287a9012bcec7a37174114df78089575e743bcc359931e093c1fb9b6e3fa8cb7127406fea64d701cc1ccf0804441e12742a431e5 SHA512 b4cf62a31fe3b0419ac88904c5f7b69a055caa4c2296657a888615d69941ce0d8cf39342a2f52d1148658df8c82a5fe9fd33970a3c290cd72afb8fab2f25a8c8 +EBUILD luajit-2.0.5-r1.ebuild 1417 BLAKE2B 66e9ce52fcd4e6fc252d7b9670b4ff66b180f5a825d1f74df11ea2638af9d74fbff7c4575ea9f398f6f47a9cb5d9c27fc412f65095ec0d90fe68b0aa01d47c60 SHA512 c35b575e042f76dcec40fecc62bcd73ae8b8ce72c859ba11704ae100e3a194cc852b3ca2c8261a460086a2e708c1dc473539572760b87c39949542a374e22ff6 EBUILD luajit-2.0.5.ebuild 1362 BLAKE2B b182f5afae6fb12e66c1cab40921bb1f81c712f25820e1e40eb82bcc8e3d0596af2a173b71e981acf92eb035375877369ad23d44065ebbc278926f487b30929d SHA512 ad29a171d9798cf7713a1480141ca29e5a38d25eb68c8345d7969b21502bdd60b30b1279e1e294ade12f3de8f6e40685aaa1b5f64a5ffbef0a48e94018caab9e MISC metadata.xml 552 BLAKE2B 50666bd08bb7c06c52a28652c0a87988e815c1d3c10cc1425cc7979689fd4738f56aaa6478aaa616a0b76122e42f790b3b415a60078dcc256499019912f0c4d4 SHA512 9d6ef1cb9acf52db52ec192bc51cbab6a7aa198dbf108ed76b25b0e258491b2f8d5ec0981c538546cc96de490c8c1ac852e337ef09ab5898ad4f2c48f5670f07 diff --git a/dev-lang/luajit/luajit-2.0.5-r1.ebuild b/dev-lang/luajit/luajit-2.0.5-r1.ebuild index 0560634cb156..a90f9c43d19b 100644 --- a/dev-lang/luajit/luajit-2.0.5-r1.ebuild +++ b/dev-lang/luajit/luajit-2.0.5-r1.ebuild @@ -20,7 +20,7 @@ SRC_URI="http://luajit.org/download/${MY_P}.tar.gz LICENSE="MIT" # this should probably be pkgmoved to 2.0 for sake of consistency. SLOT="2" -KEYWORDS="amd64 ~arm ppc x86 ~amd64-linux ~x86-linux" +KEYWORDS="amd64 arm ppc x86 ~amd64-linux ~x86-linux" IUSE="lua52compat static-libs" S="${WORKDIR}/${MY_P}" diff --git a/dev-lang/perl/Manifest b/dev-lang/perl/Manifest index 526ce2391e29..19ff7391bbf8 100644 --- a/dev-lang/perl/Manifest +++ b/dev-lang/perl/Manifest @@ -7,7 +7,7 @@ DIST perl-5.26.1-patches-1.tar.xz 16764 BLAKE2B 95fb086d214bf27dedfdc96f927e11ca DIST perl-5.26.1.tar.xz 11922848 BLAKE2B 8ba5ac50bc6bc3cea1ede7dbd9b41566bd3f62e432d9a1f5ee45837cc3051c1edc037a13d73d4c867edc7833f9dfa8a9d22216e14a19df179ba030a03d3acc07 SHA512 13faa7bcd7ed8c490c37e9032c115af06c9b8152b75f8062409dd72d263d1314480e8a9a883490de1b448b2e6d53b6a87d108e2eceb17de2524d5857c6a7d300 DIST perl-5.26.2-patches-1.tar.xz 17100 BLAKE2B 681239e438945285e006ee1d1e2a9eb888fc9b425e6fbd4822e65e1fe1ced2216de76485b9792d3fee28783a588c09e1d34c294ef43d81055c4566af37fe9b6c SHA512 2a274150d2dba406c6efb67ec236f67032a51ff1788b30ea556e74b2f02fab68f5029ebd4b9d4daeb16b3a63fa7aa1744d323bf637a9d21946f19f33b69da245 DIST perl-5.26.2.tar.xz 11931624 BLAKE2B 2d54b155ace7c70a33adbe9911ba5384281aa49a0f6d4f452f4249b4deb58804268b473457470488f7592e041221f552b09156eb55c10078002aae3715446d9a SHA512 fd54c90da250144c81b94587c01c49fa367f84c54406f1d360ddab4a41589a7b19efc1707f95c95d6357fae66fc3f6f00bf69dd7741db114c7034a14f52be65f -DIST perl-5.28.0-RC2-patches-1.tar.xz 16544 BLAKE2B 7c22c1d7edee19d85788c1e0bd090c83c9480aea689ab483dcf982bef989624e4e6b1215c735377ef152ae95a6d59e7f167bf9b3f4def070b4d836a7d993419d SHA512 83b0198f2601ce48c0e8091862c11550e7c2a6bb9fbebef78368a421ec4d8ba8c810205b0f5dee483fb461bf6df55818a95a906f3fc8bc1d9627c8d4f69bc32a +DIST perl-5.28.0-patches-1.tar.xz 17128 BLAKE2B f16843d9ecf27fa7d42dd59e1591d618ba9ad6b14f4e56bab4019af043eb79559cc7dbc4a1b1e580c18b7ba0b5d71c4da3e3f94955889629a655e7028492a066 SHA512 e05a492ba045ac71d20393099815bed8e4f491bed79a352e83537561eb256d4f672e0125c5cca9e45150c01d3ad463a070a49e845b3c17806d9f77a872d0352a DIST perl-5.28.0.tar.xz 12410536 BLAKE2B 620cca33c6d354b8b200bfff43dd155e6f89b9fe318f530d38c853a2b66fe67cc8410b6e5ab2a793d7ef578f2295a6fc4872483f81b5439d8573d75c5239fcfb SHA512 de701e37371b81cecf06098bb2c09017bde9cebaf9537d58838d0adf605ac2ecf739897b0a73576a7adb74d4cf65591ec4d2ed1f94b7191e695f88cb7e214a39 DIST perl-cross-1.1.7.tar.gz 97622 BLAKE2B c58dd51492cfbda6fc58b43d9de45c35dd5ed5768ca8db61b5ac092ad6c0067386597875d6613c75671f026387ba474ce8c28789d6d77b9dcfc4cf4bf7227126 SHA512 b64d487129b295ec6d996606b8b8559de681e1cf7c3e3167d6d646d5d7a848d7929b1ab698d1f950e265213749772fc74d209cea5020b61e133c8f8851b7cfa0 DIST perl-cross-1.1.9.tar.gz 102939 BLAKE2B 438ea75a14c4d60fdf3cb2f3671c736d229a83af210ba4fe6e79b989c6c4b45500d0221ec65bc71e1d43d234ec1daa20b3a19be6ceb01e638810900dbe3664a7 SHA512 002441012bd31f1ea71341707d91f89b76266c187c9d28f947ed5eddbcc6e3155e8dfd4b1814331561c3557764fea25bf6a938f08bcd4adfb5895361ad5a269a @@ -17,5 +17,6 @@ EBUILD perl-5.26.1-r1.ebuild 19255 BLAKE2B a29acfd3ea358d0d46886aae104acf8e55ad7 EBUILD perl-5.26.1-r2.ebuild 19668 BLAKE2B 5936c92398cf8a889bd946705f2667abd07fc81a64ea3f8c44cd83f3c29719352f4ea938b8d7fb7e3d5d138dcba12f94692166aaca8d98a3640c772850ec9e5c SHA512 154b021e91b01ecd55a5af50bc530f080745b122cd5a77652589c236d4bceea93f4379a1c8e751eb1787118e3133e1f5daab8dccf88365f7976c8a015591190e EBUILD perl-5.26.2.ebuild 19702 BLAKE2B 401194aa30936a6169efca8178810f1401ad501533ce66350bf43ac07b0f33dcaf771e650add413c59bfcb179d10a66e9d51f15ac0399a98fe7ae9c8c69f8d81 SHA512 30c09deb7a1b4d3a87c70a9ef3b431cf43e4c4be8760ba619b7355dec1960f51cfbe75e8ed4fba8e4ce7821c93c1e2ecb6725e88a3f6aa47d40c57b8896a4689 EBUILD perl-5.26.9999.ebuild 19702 BLAKE2B 401194aa30936a6169efca8178810f1401ad501533ce66350bf43ac07b0f33dcaf771e650add413c59bfcb179d10a66e9d51f15ac0399a98fe7ae9c8c69f8d81 SHA512 30c09deb7a1b4d3a87c70a9ef3b431cf43e4c4be8760ba619b7355dec1960f51cfbe75e8ed4fba8e4ce7821c93c1e2ecb6725e88a3f6aa47d40c57b8896a4689 -EBUILD perl-5.28.9999.ebuild 19687 BLAKE2B e1d333e9ff2a125b3f48f6d4962b812493682b83cd9b5265ffa187712b7cac6ce4aef9f7614538bdcb0e64e092500e8f0ae2b752b6bdee2336c6981cbeed1e48 SHA512 99ca789288d223abbde4125d8ee7b8fe69da3a5da7048cf8f73781b25591b95c73dc1483d18d1dc68f53521bfa699296f7fe33802546a4cdbca4069d6a140bf9 +EBUILD perl-5.28.0.ebuild 19891 BLAKE2B 67f3a7f862c9db4e9fd4d417f96390014b5b4ed70890622c5e5a9bc6841c6ebb0aba2e2f6ac1aa77a4569c72b5353e78aef4ab98b20d6e31c8a6e1401d2a220d SHA512 4f3925efb263bf2a8b3bc66febc468001918b6f9b1880b38bac62e8eaabdb9a67ac11e72adcbadbfa2948a15402cf117619a894e0c4334909b2964ab923b38d3 +EBUILD perl-5.28.9999.ebuild 19891 BLAKE2B 67f3a7f862c9db4e9fd4d417f96390014b5b4ed70890622c5e5a9bc6841c6ebb0aba2e2f6ac1aa77a4569c72b5353e78aef4ab98b20d6e31c8a6e1401d2a220d SHA512 4f3925efb263bf2a8b3bc66febc468001918b6f9b1880b38bac62e8eaabdb9a67ac11e72adcbadbfa2948a15402cf117619a894e0c4334909b2964ab923b38d3 MISC metadata.xml 430 BLAKE2B 8625fd07f63a7943a85c3919d6ae6db622b752caa2803c56c72a22b270244261331fbab8b760e6d00acb8480770c9ef1d1beaaa22cc6044660821687c0cd8c33 SHA512 ca4c43e2016b7df707894713465700a90d2b8551b57fc4d660cff75edb1e8cc2456f9ae10431839ad6738f290d4f5911fae360eaa1d4670859d855de3d568583 diff --git a/dev-lang/perl/perl-5.28.0.ebuild b/dev-lang/perl/perl-5.28.0.ebuild new file mode 100644 index 000000000000..3fee6ac8677a --- /dev/null +++ b/dev-lang/perl/perl-5.28.0.ebuild @@ -0,0 +1,642 @@ +# Copyright 1999-2018 Gentoo Foundation +# 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.1.9 +PATCH_BASE="perl-5.28.0-patches-${PATCH_VER}" + +DIST_AUTHOR=XSAWYERX + +# Greatest first, don't include yourself +# Devel point-releases are not ABI-intercompatible, but stable point releases are +# BIN_OLDVERSEN is contains only C-ABI-intercompatible versions +PERL_BIN_OLDVERSEN="" +if [[ "${PV##*.}" == "9999" ]]; then + DIST_VERSION=5.28.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/~kentnl/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" ]]; then +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~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} + !prefix? ( elibc_FreeBSD? ( sys-freebsd/freebsd-mk-defs ) ) +" +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.280.0 ptar ptardiff ptargrep + src_remove_dual perl-core/CPAN 2.200.0 cpan + src_remove_dual perl-core/Digest-SHA 6.10.0 shasum + src_remove_dual perl-core/Encode 2.970.0 enc2xs piconv + src_remove_dual perl-core/ExtUtils-MakeMaker 7.340.0 instmodsh + src_remove_dual perl-core/ExtUtils-ParseXS 3.390.0 xsubpp + src_remove_dual perl-core/IO-Compress 2.74.0 zipdetails + src_remove_dual perl-core/JSON-PP 2.970.10 json_pp + src_remove_dual perl-core/Module-CoreList 5.201.806.220 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.100.0 pod2man pod2text + src_remove_dual_man perl-core/podlators 4.100.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" ;; + *-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 + + sed -i \ + -e 's/MakeMaker\.pm .*/MakeMaker.pm bf9174c70a0e50ff2fee4552c7df89b37d292da1/' \ + -e 's/MM_Unix\.pm .*/MM_Unix.pm b0ec308fe2d7dcfcef5732880db0fae1f4ea80fa/' \ + cnf/diffs/perl5-${PV}/customized.patch || die + + sed -i \ + -e 's|^lib/unicore/CombiningClass.pl pod/perluniprops.pod:|lib/unicore/CombiningClass.pl pod/perluniprops.pod: $(CONFIGPM)|' \ + Makefile || 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 [[ ${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\.patch/d' "${WORKDIR}/patches/series" || die "Can't exclude libnsl patch" + 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 && ! use prefix-guest; then + sed -i "/my..sysroot/s:'':'${EPREFIX}':" ext/Errno/Errno_pm.PL || 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 + + # some arches and -O do not mix :) + use ppc && replace-flags -O? -O1 + + # 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" + + # Fixes bug #97645 + use ppc && filter-flags "-mpowerpc-gpopt" + + # Fixes bug #143895 on gcc-4.1.1 + filter-flags "-fsched2-use-superblocks" + + # 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 ) 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)" + + # 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 ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die + ln -sf ../../../../../$(get_libdir)/${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die + ln -sf ../../../../../$(get_libdir)/${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/perl/perl-5.28.9999.ebuild b/dev-lang/perl/perl-5.28.9999.ebuild index 297e1ce4cd6d..3fee6ac8677a 100644 --- a/dev-lang/perl/perl-5.28.9999.ebuild +++ b/dev-lang/perl/perl-5.28.9999.ebuild @@ -7,7 +7,7 @@ inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessin PATCH_VER=1 CROSS_VER=1.1.9 -PATCH_BASE="perl-5.28.0-RC2-patches-${PATCH_VER}" +PATCH_BASE="perl-5.28.0-patches-${PATCH_VER}" DIST_AUTHOR=XSAWYERX @@ -370,6 +370,9 @@ src_configure() { # Fixes bug #143895 on gcc-4.1.1 filter-flags "-fsched2-use-superblocks" + # Generic LTO broken since 5.28, triggers EUMM failures + filter-flags "-flto" + use sparc && myconf -Ud_longdbl export BUILD_BZIP2=0 @@ -549,6 +552,8 @@ src_configure() { 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 diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest index 2606d2517b2f..e90bd2ee0634 100644 --- a/dev-lang/php/Manifest +++ b/dev-lang/php/Manifest @@ -15,13 +15,15 @@ DIST php-7.1.18.tar.xz 12213396 BLAKE2B f851c6eb261b8b532e84e73e6f173deb6ac00cd5 DIST php-7.1.19.tar.xz 12215112 BLAKE2B 13f39fa258b5257e00b300d9488dc53caac8b005a01c4db98a05681334ab0dfade713116581da3f150dc20f4428fb249e00d705696d12b1daa13fc16fdaeedb9 SHA512 af966ef8d4172bbdac84bebbf6bf5cfd04376564307e925d3eecd1ba8f23b84dbb55f653d21adad120605d015ea4d15898e0a9154c85f4fc974b6ef695f6c566 DIST php-7.2.7.tar.xz 12115168 BLAKE2B 787621d6bfcfa2f8f7176e3fab5b1f521f82169d5d8367664404eda4503e477a16233c6b155170e8a0c76c1d67674bc9bb0922ea65c3694977df0c6c2aba6a04 SHA512 fe9d632f190e62d97848035584f387987856348c6ca288a8bdf85bc2c48de73c20e774776a1a8928a470a6108121c993c032529836a8ffe6bcfe45724d432829 DIST php-7.3.0alpha1.tar.xz 11746836 BLAKE2B 14feb7a31652d2f4cf3d34f0f0450fbcc597d026177b60455887657213acd6d5a8a11f96df30e9d18f51a95409bb944ba287aaee0b84ef1b66ffd61aeb8821d5 SHA512 5fedb7716bd194bd9692de9d2ac88b4bac876b74e463a43ae5bc5fd4f63bbf85d02c9d2f1f1e952c45b7867ccb2bd80b99dc77c9f2051967b9efe9fdcc5862ae -EBUILD php-5.6.35-r1.ebuild 22749 BLAKE2B 5f7c9b7f459781568948a34f73e9153e252bb42c37a3ab028a7f8cfdcfc430c28cbb615d4a193330bdbb373385002b453437754e18be2c9042bafe6bed141a22 SHA512 45538caa8ac17ec46110f55c4a22f3e23e2277da49a48f9bef1b6f44a99bc3db57ae148562dcbe0f689b088e3fef22c01a6462eac27661f104876e853ef6bced -EBUILD php-5.6.36.ebuild 22797 BLAKE2B ed16c850486f309c4ebc83fa1345f787452cbb2aee4716db5af6fc484c396f379cb475afab8e53279e522ec83a3edaa703549cb9054cd10d46373bf5c1956d48 SHA512 86ddca5f0a4806e5e1635eb1825c946d43426e1465a8902c9bd6c25c156abc856bb617e6232264cbacc16eac67a581229c1c82c329d645379e6115155aa2e559 -EBUILD php-7.0.29.ebuild 22007 BLAKE2B 402536b872143cbe5157ef0cd5afd93ae18d98bd6c097a6f0c55795fa6c039a77fd183186e85e502f6ee7b51f3dfdf42d66418bceb8e981e1025379533f1505a SHA512 94398ad107dfbfd5daad2cc1afd43d4f5225431e7c8c772dcf9c91477da21394a528fcf2c4919a1e684628826f7a08987c1ad7806d3f5aa90d1193fbff7ee8bb -EBUILD php-7.0.30.ebuild 22008 BLAKE2B c6c9459d316e0a002de1eab337ecb010a543eb1a9dbeaf30bcbaa57368cf4197792243e1939e357a80b01f21fc3b81331ba11203305559d4a88dc71e9473c339 SHA512 ce14aae5dbe741df62d593bcc0f562d77bdfcf01058328d50985dd107201f5f812229722978b44bc912a35251b7991e8ac9e46383a2e33bf1b98bf4229e1a511 -EBUILD php-7.1.16.ebuild 21895 BLAKE2B 63ee40d49bad190791b2c07fcf3e4a08fd3aa5b53a02120e1e4b998614ca867f80c4418f5ef23fc318c8b598fcd91e09d4bf0b9c3536209aca53df42ea895ada SHA512 0c32c7570e67dbdf397da50940f34d94788843a9ea82e1bef265e3ed6a60a366f9f1a45f2b2f842dc9382977a0d301a52c0d136873b56c8e60649221cd338df2 -EBUILD php-7.1.18.ebuild 21851 BLAKE2B 6cbdae0dc872c9613249343aab00ce0dca50ca433091dd16479a06ca7a935adfaa9cc590fab3e1175a80679c4a165f73c454720bdd129d25db3d5e0e5a9a099a SHA512 67231960f12f75c2711d47b35b89d91275edfba7f443e4b94491c2a54c82c4a525ed45cdde10ed45bae9be26640a1e8117634598ffe2d6c2a5c50c43adb7583d -EBUILD php-7.1.19.ebuild 21705 BLAKE2B 030c85144ac9f22ff31cdad2b30946b7b05dae10908ceda32f6a9eccc9cb3ead02f830571d05f819dbdaabf09c8f22b659f19180859ab5b893af1d12585161ee SHA512 6154f220def10f403293025448d2703cdd3b4d9fcb7f4ddad94a91ec0844746221da01f44acf26da7f60ef4aa06c3bb5517a957be440c6c60e0c278707e06306 -EBUILD php-7.2.7.ebuild 22236 BLAKE2B a211a96418b58a56d2eac6b586b681b28da34877a0c8011cbdd70caa82bf7c0b73d9dc5942ee1e7504e4271495e86cb8f72fef8a1238078c54f690b30d16b1d1 SHA512 73d1e7e7459cbea57dc45f5101f49756c9165dd5af809099314a876afec25b6d48d98e4b8186cdf48b67526a920f84172a4fbb8e9a479fc6c99fcb551a836d2a -EBUILD php-7.3.0_alpha1.ebuild 22327 BLAKE2B 4b6c25fdf510e9cae4bedba67e1af0ab47215ac632184a5738536dda58951e41c250182cf6f1a915765ce7489af9a75ebd70b141e76fdda0791efb191a5bb4a4 SHA512 b73c9c88dd0fe430da6be45c51c61334fe470b5846fc85f27e04c606f3c4d7bde9038b7ff7b4872c3842d848fc1ed1cf0b794e72a6c2f14515559f00b2e9fdef +DIST php-7.3.0alpha3.tar.xz 11890052 BLAKE2B 4e069bb3c68e4fd26bac319fe840ad683d42f5a7a3f16b907f1814290be77c018670fd342032b6514f1b76eb924da7a614d79ce9c4708837bdc9cd214d4614fc SHA512 7d867db75ac1d5648c0f52c58a6d955329967f7a9399d5fa7b403868ba1a3d72cebe1c4e97ccd79baefae61a6fb1ff2363a6894bd712e81074c7e743e9bc2f1e +EBUILD php-5.6.35-r1.ebuild 22774 BLAKE2B a12399c51c1d3fe4516d5ad713955c8a26f83c3ccb3711e2c2f74344bc9e4204b629a2730ab02d82f16f1cf2a798621b9d0e7b3f3da7ab82948ee5584c76f0e6 SHA512 75a2888cf640551ab0391dfa1ae554943b8bbf81bb34b7ed6f3a66e68774e3c3484d11c5562cea856e3a37220ba297515c5e864f67aeb4d230786bade7195aa1 +EBUILD php-5.6.36.ebuild 22822 BLAKE2B 2bfb820bf178f6d1ded793c0a035b6154237bd59e5fb6733b02be77d975e11c0b6cd12f293ccc59ac2e0c92e0a32539e5494a6b7f08b61c3e61dc59806664285 SHA512 a0c314a61a2b7c8c848e91d86eb94da7e7f8cdaa0220bb0f031a3dc627fac6348cea1af4b4a0593b76df26e379d8419e7644fdcd1b586babef297529f3568407 +EBUILD php-7.0.29.ebuild 22032 BLAKE2B e27ecd2e0429f2115b9245961bcc63470a8edfb3611de68a76eff0fb32837599580a146fe9d556da8176208e333c372ab81a979ff8e2f2fb02e5af2cd9e89eb7 SHA512 83b800cf9c9de8de6060c9fe0ab5d4c2e8d1aabbc541ce1e78c31eb031ad67206b0eb94d03213f2c8d9e51e9af3a199459bc7ea0f5a717a2bcb33601403b1df5 +EBUILD php-7.0.30.ebuild 22033 BLAKE2B e55a92a39ffca9625cc408d188b8d32463201247b6437ea1a95baa33bd17f7a201716ba9a8a68b41a5c6e131ca443dc629b486bdce0f51aa006392897da423ae SHA512 d7bf3082aea9fa2afdb387e3c0412fd9c1c7c9594f10c4cfa8ddc53a4c31e31a07abd35a306388aadc94c9e282e0e55503ef3b9118c4c97f9b0557c0c1655a82 +EBUILD php-7.1.16.ebuild 21920 BLAKE2B 4082a39d5f3b202f183699463007c0b56291c2c59a9b773fcf4ff7ec1e3ae51770b7bbc0880826df9954ca8bce9ee5e31c5c01b29b5b2d2b9ef748ea1a8f41b4 SHA512 4903c460fa81319842683a420315ce958bbd3d232f474769ff7531a2541d43bba8a258f50fa63c30814180f2aff9e627626de055a10446ad935ca0eeaf6939dc +EBUILD php-7.1.18.ebuild 21876 BLAKE2B f046afb95e9d0bd43d90c09b16a016a049608729913eebb3849a3801955eb0de88c450d4a068179fe275abf005d6ba7a0e97f1163992e049ffbfa47256a5bbc7 SHA512 f32768b81785ce618b411edfcaada57c10c38cf1437b1fa7079f3f97552cb31ea05dd9bebbaf1a056b81976c52bf264801b47a0c990ecd14e9034acc15d8f75c +EBUILD php-7.1.19.ebuild 21730 BLAKE2B d7e183b903dbea7f3b88d1d80bf9cd3cc04104ad1133fe6266cdb09db754f572cbfe291f2971bc3e946ea76a11cacacec0a05ebc4b8a1fbd005c274c65f5de64 SHA512 46902cfc5603b90ab72eef3dd4fdb615b2e9f7daa79accb1121406773249a702e90a721b2e6528ed48bc9c3d9d2e575112f7cc04d13dc48c41692c9c278cb55d +EBUILD php-7.2.7.ebuild 22261 BLAKE2B 700b42b3636fc35c89ab1f0762304986892a245881a2c66a708651801bddb6fd19eacefa7590c50177fb7f36f4f352ed46b9220c3f27e0304fb022d7eceedb80 SHA512 5505b157d3db37e8679ef65d7c237c867b73fc79a73ca39d646d676b6e410687deaab1b6ac762587480e927dd23d323dcd7d760906c7de100f85be78ca190e9b +EBUILD php-7.3.0_alpha1.ebuild 22352 BLAKE2B 07b282cdc9c18dc43fe3aea930fc5276b478081592c01d0bf88188eb1d4a97258193d2b67782d2b4c6c680aea6e8faa4e9ebf4259a5d023ccb93d9b5493f319c SHA512 dc9fb07497018f08d1cf2a7df05c9b7a375c27ba3e8e3bd2d24fdc993aa10082b2f440563519c9e4f6ad685a662ed51a29559a061cbc0f238eac32f9d8fb0fc1 +EBUILD php-7.3.0_alpha3.ebuild 22351 BLAKE2B 133630e06fa9c8c838db04506afd3f687761039e72b3e297f52382f0d55a3728f75bc30dd27d38f72880647c052407c268557d1ce5b1a91ca5390e86bb6b9857 SHA512 1de5e51be4c911b5d250c594219263eb7c154b07a61519ac509727bce019e21a2b9e61ce70aec5321a7169781cf2d656a56811de6b076430a981d0cec8fbe36b MISC metadata.xml 2577 BLAKE2B 9b15d6073181a5f5ff7b00ef8b68d24c7ea8763171ae84895ebc4a6925f589d2a02e4e29116c2741b3502b35d32aa58e7ed909e144c0e694f8cce5b4d26ecd3b SHA512 14e6daa693325b8a27157cff22d0b0cae9d89e4dada775f39188f7f36546b78a8b19efedb2f7b6f64ee1375bf29d3af32a8f7d6e7bf0d04cf2a7241abd154afa diff --git a/dev-lang/php/php-5.6.35-r1.ebuild b/dev-lang/php/php-5.6.35-r1.ebuild index 56d281890cd8..152ebfe276c1 100644 --- a/dev-lang/php/php-5.6.35-r1.ebuild +++ b/dev-lang/php/php-5.6.35-r1.ebuild @@ -147,11 +147,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - vpx? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + vpx? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-5.6.36.ebuild b/dev-lang/php/php-5.6.36.ebuild index 5b743906a993..fe5b563b7ea5 100644 --- a/dev-lang/php/php-5.6.36.ebuild +++ b/dev-lang/php/php-5.6.36.ebuild @@ -147,11 +147,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - vpx? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + vpx? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.0.29.ebuild b/dev-lang/php/php-7.0.29.ebuild index a57432146374..08da09b6482b 100644 --- a/dev-lang/php/php-7.0.29.ebuild +++ b/dev-lang/php/php-7.0.29.ebuild @@ -141,11 +141,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.0.30.ebuild b/dev-lang/php/php-7.0.30.ebuild index cfcbd02ee740..9e0175a2b439 100644 --- a/dev-lang/php/php-7.0.30.ebuild +++ b/dev-lang/php/php-7.0.30.ebuild @@ -141,11 +141,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.1.16.ebuild b/dev-lang/php/php-7.1.16.ebuild index 0adf8fe59a01..da637b55abbd 100644 --- a/dev-lang/php/php-7.1.16.ebuild +++ b/dev-lang/php/php-7.1.16.ebuild @@ -123,11 +123,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.1.18.ebuild b/dev-lang/php/php-7.1.18.ebuild index f53642ef9653..b7d2c829465a 100644 --- a/dev-lang/php/php-7.1.18.ebuild +++ b/dev-lang/php/php-7.1.18.ebuild @@ -123,11 +123,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.1.19.ebuild b/dev-lang/php/php-7.1.19.ebuild index 1432a2ae457c..d649e1715b3a 100644 --- a/dev-lang/php/php-7.1.19.ebuild +++ b/dev-lang/php/php-7.1.19.ebuild @@ -123,11 +123,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.2.7.ebuild b/dev-lang/php/php-7.2.7.ebuild index ecf193ae0d19..4bc61dfc550f 100644 --- a/dev-lang/php/php-7.2.7.ebuild +++ b/dev-lang/php/php-7.2.7.ebuild @@ -127,11 +127,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.3.0_alpha1.ebuild b/dev-lang/php/php-7.3.0_alpha1.ebuild index 27d2d493ca14..ba87c83f797e 100644 --- a/dev-lang/php/php-7.3.0_alpha1.ebuild +++ b/dev-lang/php/php-7.3.0_alpha1.ebuild @@ -130,11 +130,11 @@ DEPEND="${COMMON_DEPEND} REQUIRED_USE=" || ( cli cgi fpm apache2 embed phpdbg ) cli? ( ^^ ( readline libedit ) ) - truetype? ( gd ) - webp? ( gd ) - cjk? ( gd ) - exif? ( gd ) - xpm? ( gd ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) diff --git a/dev-lang/php/php-7.3.0_alpha3.ebuild b/dev-lang/php/php-7.3.0_alpha3.ebuild new file mode 100644 index 000000000000..ecc2efff30e7 --- /dev/null +++ b/dev-lang/php/php-7.3.0_alpha3.ebuild @@ -0,0 +1,743 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit flag-o-matic versionator systemd + +MY_PV=${PV/_/} +DESCRIPTION="The PHP language runtime engine" +HOMEPAGE="https://secure.php.net/" +SRC_URI="https://downloads.php.net/~cmb/${PN}-${MY_PV}.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="$(get_version_component_range 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~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-2.4[apache2_modules_unixd,threads=] + =net-misc/curl-7.10.5 ) + enchant? ( app-text/enchant ) + 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[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" + +# 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 ) +" +PATCHES=( + "${FILESDIR}/php-freetype-2.9.1.patch" +) + +PHP_MV="$(get_major_version)" + +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 + + dodir "${PHP_INI_DIR#${EPREFIX}}" + 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' +} + +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/python/Manifest b/dev-lang/python/Manifest index 6d4f7e7549d3..3b7b69de4029 100644 --- a/dev-lang/python/Manifest +++ b/dev-lang/python/Manifest @@ -53,5 +53,5 @@ EBUILD python-3.6.4.ebuild 10083 BLAKE2B 7d04d19bbc1163fd3425f666dff268ca58657ea EBUILD python-3.6.5-r1.ebuild 10387 BLAKE2B eb8fea85856a47017c639189b27cd0ab40da87f7651c51fe745e07813a74416e5e26aec55eb70638b5439fa6a08a92bcb5cb77c121f6bca3f253f1841b71f88e SHA512 2af8033d26fcca0544027c4d60a3b50b14c3e116bf1c97dcfc4c7bb62e63ff4998df75f381300ecef8ed9253e6f65fa7e99ed8f077641acf2204f92724b4274b EBUILD python-3.6.5.ebuild 10180 BLAKE2B d4876167eda2b03b1fb9a183447abc134ad806603db524f692a5c91fd32243103061e33ff8e8136db6d838ffe1454be1a70a4526b71626ab43eaa6407579a6ec SHA512 42ab305d129d7a5ccad4dc8cbaece4afa432c4168515da6a9784a16738cf703b110f547177e57cf6b385a9643e2278287ed9b26ef1a1e3b1a981962f52ca13e1 EBUILD python-3.6.6.ebuild 10224 BLAKE2B 1b68598a5408e045b0cde030208265457edce9b593791ffb1f173890c569889f030118e445dfe8981bb29aee4d7840eee59d178a6a8107a63f98799256253e8f SHA512 be939d6ab2e52104938453aed9bd3bbd0c93dbb5f78a79f078c64646947345c8ceadfc5cd90685a2e63efe4acc52c704aa284d2db7755bcad36cd982e4d66427 -EBUILD python-3.7.0.ebuild 9970 BLAKE2B 4ff282490861b86dfd57da29372b168a32057449b34bcb6a30d88b506904c560108144591020915edf3f210f1d5da64873126ad41c7429f1e540173aa1b2be39 SHA512 236fe5439a790047416cbd4a999eb195f4ae071a443f9dc04f4cf0ec3324705ff7ee05907e93ad97cb86baab73ba8d9f442b30c5a7e66c9f9a7c01b3eddd0dbb +EBUILD python-3.7.0.ebuild 9619 BLAKE2B 7662bd885c16eb9a9cef29ca16ed7e9c632f144641030a96488d5c02ef2871a4e0c919a015f73e191d0481d7e5d8cb404eeb8e159a572d3bd0e25ababd1ef471 SHA512 fa403f5299a7ef598eadad97c5b90c419ced68dc618f6da97dabe21b3280875468477f73a9e5ca71532739f83cbc1c7bc5080cecd543d908d9805b3f08bbf036 MISC metadata.xml 819 BLAKE2B 120c7c65d77488e726c5a0f4aa19469867ea6900e747169fae2f9cf8f14ec2936089d5edfe1935ce610bec26387273e261b1cc4b023680c8c4b229f2141a7223 SHA512 08f45707e5490067a21951b9d37c8ae67064ab67cccc5b8d8c204eab8d4a004fb910627b62989c67b849b89d301618f8f8f7996e99e1ef5bab38a239c49c124d diff --git a/dev-lang/python/python-3.7.0.ebuild b/dev-lang/python/python-3.7.0.ebuild index d1ab60b3112d..e3cebf3af955 100644 --- a/dev-lang/python/python-3.7.0.ebuild +++ b/dev-lang/python/python-3.7.0.ebuild @@ -17,7 +17,7 @@ SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz LICENSE="PSF-2" SLOT="3.7/3.7m" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd" -IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test +threads tk wininst +xml" +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. @@ -139,12 +139,6 @@ src_configure() { ) 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() { @@ -238,7 +232,6 @@ src_install() { 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} diff --git a/dev-lang/rust-bin/Manifest b/dev-lang/rust-bin/Manifest index 8080099fdd25..fe05985b65a4 100644 --- a/dev-lang/rust-bin/Manifest +++ b/dev-lang/rust-bin/Manifest @@ -13,7 +13,20 @@ DIST rust-1.26.2-arm-unknown-linux-gnueabihf.tar.xz 98502692 BLAKE2B 124040a31e9 DIST rust-1.26.2-armv7-unknown-linux-gnueabihf.tar.xz 98828932 BLAKE2B 2f60e65128bd32d97422d82d99f5c5447d1c1e77582028089d52208e3ede4af5e72c278a3fb5001348c864087f3e85af05604a0b6078891c5ed812d745840d93 SHA512 7b8e3f39a62b7b5fdaa6d53e5638de26968799d97b5d53e09bf49456b02f968495cff4757f25d38bc3393ca33dc1b9da353ec290ba9416770e082548aa5079ac DIST rust-1.26.2-i686-unknown-linux-gnu.tar.xz 143090096 BLAKE2B 7871fa4e4d0f320ff949cd31cefa116bc7b741927626958e1d10197f05fc9a662b8d6c21ddd4d2910700e6f7273e4fc18738e6ff58cd85b9af4ed25eceea31d9 SHA512 859b5b72c78cca8cd473012599ca12539ef9a5ee38d1aaaad024019fd84220e344e1cd0efd2b027ef333555b158b23529f35ceb5d59d76c35e7946b5fe4a8a52 DIST rust-1.26.2-x86_64-unknown-linux-gnu.tar.xz 138609432 BLAKE2B 54507a8ce3ab2676e6e66852b6d3f1a47ca07ad4b56383f6247149309a0f60f67fbf0a6ba27d968c24340c07d7d5074942c6eaccbc1207c5e75fd9a6f47b2481 SHA512 29e474b0eab4dd2ffa0b964d83f52ffce530e75c4193e307410ef6d20ef9ad2b300a4f467bdf06b3311157340e9295cb9b1efdcf08dafee66979b076c2afba7e +DIST rust-1.27.0-arm-unknown-linux-gnueabi.tar.xz 101002020 BLAKE2B e725b5cd8ec5ec9c035b70c7a45f49e21332846bc4e760afce4abc5d6de3a84029d06e1df0ca430d9b9b1117d4b534146310391254ebad458552d40b152aa56a SHA512 c0924ae1296802d6bed09944cb04b98414dcd4e102387cc1c4810e26793409daf4622300d451d297c9a84890f108dff1bb4ef70381d582b6d26aae0b2c38e476 +DIST rust-1.27.0-arm-unknown-linux-gnueabihf.tar.xz 101316444 BLAKE2B f3c2e5f0cd6c75e51c3a25bd9aad34180d04bb97187f1ce240b6682e64026efee3359a71d1aadf9ea2fadf0cffa277daade02703d1e70c2fa43f68624ccf43a8 SHA512 5c374d103377dc94e5a68c46deba22080b374dd652cfc64abc69fbbe69e59b40537208534a15c860fb985abb426468eef33b7d6c9a8fee3f855a447c6c0ced4f +DIST rust-1.27.0-armv7-unknown-linux-gnueabihf.tar.xz 98186744 BLAKE2B add9b9ce125e8e0216579fc4eb9a615396bc6798bd8fe52fc5e02b4eddbca991e227fa1022d5ea86473e4a2f4738fe8e30ad01899bac78b6c2072eead9b9e69d SHA512 034288fd8767f1773b4a5232b26e68a812d0f8084e39dff776d3c8d235f2b3f51c12620a0346851fccbb0ab3cd194938682fa8e9d8641f8ee3c3d9259c96a86f +DIST rust-1.27.0-i686-unknown-linux-gnu.tar.xz 144744880 BLAKE2B ef48cd1b2601868840c59274a776be40e0ac8ce674d0a00712176e28f5e381b95b790d898fdfdae153768b754f87662c581cd5b11752d5d4401aadd9b446fc7b SHA512 66508f09e7a48d72d4a18da209dadd5e11fc1e9811726fdfa8de609359eee6bc1d8d3b578b50ab0b4dcff879e96edd6d60449508eed7d2d44f72b2c8c29e2546 +DIST rust-1.27.0-x86_64-unknown-linux-gnu.tar.xz 144343920 BLAKE2B 214530a0724f0fa6e1c4e769787a1c0d56e9a6c13a0cacdb9f639d523915fbd413fe42ccd9073308b14b551804d269061ed9bc03cc6761b817bc556e1837d005 SHA512 e57b60cafec48a396cde1ff62bd01148e0e3c803b9b97d70a7cf477a7d3a4295ca98fa99a1252004751e8529b214c2859cd2134ce722b3336b9640c2aef6f625 +DIST rust-1.27.1-arm-unknown-linux-gnueabi.tar.xz 101083416 BLAKE2B 2fd3a4b0c8a6cc1e7f7bc11300081183144639c4d02b8bb989154fbad92ad1e30ac8171993d8296ce8f0486dd018df46360693d912b50ca0c299c4c059f79d17 SHA512 7fa376f077abad6e24b81aa98ab7d953b8257388212a509c7a061ebe022cefd5bd042f24fc4444287bc4fb4cb9a6cbb651ae0d8146b5d4fe73d395ebb7192367 +DIST rust-1.27.1-arm-unknown-linux-gnueabihf.tar.xz 101382108 BLAKE2B 8743930b86b8ac1032afc5ced83f57b0606e9143a9d8e30a8b2ede70abb415fc2f1a904cb4b92adde7f71d54e83384509f02220cea9a9ab189a79815a58bd434 SHA512 be49a245163bef0345cd138fdc8d13a8403bf6b523505666650119eba87921f6a1abb04267bc698da30e5e688d8592fc20d8d3d63aff7ac1fa7397950531d329 +DIST rust-1.27.1-armv7-unknown-linux-gnueabihf.tar.xz 98288932 BLAKE2B 4794e8c54c8f733de6129829bab9e02644651fd6350db76bdb8c69f32fcff0a61e4992241431fea2b871e04a6f28607810918c5161a5a8a0b3fe756a37b619e3 SHA512 405bd579e69ec73de384487c4cd77eefcbc6c537ca3421f38ce2d35b8cd911def82fb9006b788a8aa6cdef69f620a5b1f2a2f7364bf7ddd0452d80b33315fa43 +DIST rust-1.27.1-i686-unknown-linux-gnu.tar.xz 144852524 BLAKE2B f087ad3ee7f942482c6aa02f9dcdc4adf6ede64e698024f7dcca6dccedcc5f9e9805050015d8328c5b672c94cb7f1008551a95a69b1ce8e754e048c5604dd11e SHA512 e0c7d5f64db768321bbdf229529b12f93e36507db03329b0b26094fd81cdf013804f929105ac4545903eb4494770120407c40616086b431ea66413be7e1163d3 +DIST rust-1.27.1-x86_64-unknown-linux-gnu.tar.xz 144328984 BLAKE2B 45551c2f4258c821e9b56ac09d673c46032b5f480da5fc51c0e0e33f66be7f0619aa4ad878336dbffae32e6eb43f2adfbba927ad5cfbb919b9e4395169d5c3bd SHA512 b419c19f75082a63a669ebeeefbce907ca7e7ac50a1c1355d1b10b3a4c1f8e28a76c4fd677efd8cb966a6e70a76059813e39b8dfe93de1401c7419d57ddca52a EBUILD rust-bin-1.25.0.ebuild 3456 BLAKE2B c25d70226b0ea86619e749fce47b34706b08257bb0a33f99d6ceeff477040e1dadb4daa830e9c23463f4b20283109292c499dc216753ab9070717275800a8133 SHA512 a423705eb4fc96bd0fe3efe5f79187be88f46a965c1735a65c1990b43917d8d2fb8298b536375db590edd25314c41fa0aef344f8444c9413426013885f0adcc7 EBUILD rust-bin-1.26.0.ebuild 3591 BLAKE2B 37db63381b0ece72c839661baa5102b7359b7e5ab68b36e2a6de513deff00a413c5dfe27ffcc94c45807a5f2288620b2bd10dc48da06790adb330a54d5bff47f SHA512 f297a3b61e89996fb8e4e52274571fad69602772cb3168574c724b42f59d710f571cba30bcbf32086584d8a93e87313689aeeab4c600a24355b3e82e31e297c9 EBUILD rust-bin-1.26.2.ebuild 3584 BLAKE2B 932ca808ee2ec13b9b3b400a3ba1b88eddbca83b1d80d03951692c8ec232ebe4df1e7ee9c2a80a8753a8069d4ed2db67d352ba6a89e4e2d13333c7c30494cec5 SHA512 9a4c592ffa1793574b31d73e8922257651b8336812755fa98a576d05bd346118d08e9344f0c11a21e3024e3346da115c2adba44c2393185e051e18bbc4bf0eec -MISC metadata.xml 250 BLAKE2B fe9734e0ff554c2ae0be039e12f780b2a36e30b518a00cac557fc63b2eecb4c9c61d914aae6f9a3f80efd109e596717ed3e5db4756440f923657fe41cb208e78 SHA512 659ffa5a36819a0534e5c614275998a130d02260924fa03d43b667f38672041b6740fb9c1efbc74d3f900ee4d3c14280aefa93d0c99fa27c1159683956f2c8f0 +EBUILD rust-bin-1.27.0.ebuild 3584 BLAKE2B 932ca808ee2ec13b9b3b400a3ba1b88eddbca83b1d80d03951692c8ec232ebe4df1e7ee9c2a80a8753a8069d4ed2db67d352ba6a89e4e2d13333c7c30494cec5 SHA512 9a4c592ffa1793574b31d73e8922257651b8336812755fa98a576d05bd346118d08e9344f0c11a21e3024e3346da115c2adba44c2393185e051e18bbc4bf0eec +EBUILD rust-bin-1.27.1-r1.ebuild 4276 BLAKE2B 5d333ac21078b8c31570665b882d7f21a4f10efc1b79a016bc032dc0aa7c95db8fa822d05befbe5ba5ff0ff6991478e6c197dc4c57173eb9a2a037182a282004 SHA512 5dcde407708a0f7000e8a3e5a237c8b0ba80a1d2ee7dda47adcdfa24ad25c5c7a7c37774931f93ebe79b50f71ebd1df8b05400f12cb65f5b7689f55a5c101a97 +EBUILD rust-bin-1.27.1.ebuild 3839 BLAKE2B f420bb2b4c550670872b635ebf8bc9aa19811a640f6cacf5d4a79e6bec7c7793685813fc4ec2aa5ee4eec45f2f6e06a0b54f821492ac481f86cc177ebcad37f2 SHA512 9f9a50a92b018361fb0044f97c94a11239ddd03bf3aa91521029e59d79bca15c29f66559f3bdd280acd413bf7dc8af5d5c5b6a15dcb2d66e0bc4519d2879a059 +MISC metadata.xml 379 BLAKE2B e2b131a15a86c6230ef9ff560fc522c9e37ed06d2d44eb7e63fa91a01673acbe0dbf80d6e774e68edca439521bb9d61d509ea69203f3c10f496f0c638c8c5368 SHA512 ed16a24b5d5f34471dbc5d411de5a819015cd9da81b55e593401ed52425fc5aa53c793e0e00966fc44e599a99036c5b9756a66b31a85cd80abe41dc97f9f785f diff --git a/dev-lang/rust-bin/metadata.xml b/dev-lang/rust-bin/metadata.xml index 85cf4eb92057..3407a1ae8de4 100644 --- a/dev-lang/rust-bin/metadata.xml +++ b/dev-lang/rust-bin/metadata.xml @@ -5,4 +5,8 @@ rust@gentoo.org Rust Project + + Install cargo component + Install rustfmt component + diff --git a/dev-lang/rust-bin/rust-bin-1.27.0.ebuild b/dev-lang/rust-bin/rust-bin-1.27.0.ebuild new file mode 100644 index 000000000000..0eea0a7d10c1 --- /dev/null +++ b/dev-lang/rust-bin/rust-bin-1.27.0.ebuild @@ -0,0 +1,125 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils bash-completion-r1 versionator toolchain-funcs + +MY_P="rust-${PV}" + +DESCRIPTION="Systems programming language from Mozilla" +HOMEPAGE="https://www.rust-lang.org/" +SRC_URI="amd64? ( https://static.rust-lang.org/dist/${MY_P}-x86_64-unknown-linux-gnu.tar.xz ) + arm? ( + https://static.rust-lang.org/dist/${MY_P}-arm-unknown-linux-gnueabi.tar.xz + https://static.rust-lang.org/dist/${MY_P}-arm-unknown-linux-gnueabihf.tar.xz + https://static.rust-lang.org/dist/${MY_P}-armv7-unknown-linux-gnueabihf.tar.xz + ) + x86? ( https://static.rust-lang.org/dist/${MY_P}-i686-unknown-linux-gnu.tar.xz )" + +LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" +SLOT="stable" +KEYWORDS="~amd64 ~x86" +IUSE="doc" + +CARGO_DEPEND_VERSION="0.$(($(get_version_component_range 2) + 1)).0" + +DEPEND=">=app-eselect/eselect-rust-0.3_pre20150425 + !dev-lang/rust:0 +" +RDEPEND="${DEPEND}" +PDEPEND=">=dev-util/cargo-${CARGO_DEPEND_VERSION}" + +QA_PREBUILT=" + opt/${P}/bin/rustc-bin-${PV} + opt/${P}/bin/rustdoc-bin-${PV} + opt/${P}/lib/*.so + 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 + + local postfix + use amd64 && postfix=x86_64-unknown-linux-gnu + + if use arm && [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv6* ]]; then + postfix=arm-unknown-linux-gnueabi + elif use arm && [[ ${CHOST} == armv6*h* ]]; then + postfix=arm-unknown-linux-gnueabihf + elif use arm && [[ ${CHOST} == armv7*h* ]]; then + postfix=armv7-unknown-linux-gnueabihf + fi + + use x86 && postfix=i686-unknown-linux-gnu + mv "${WORKDIR}/${MY_P}-${postfix}" "${S}" || die +} + +src_install() { + local std=$(grep 'std' ./components) + local components="rustc,${std}" + use doc && components="${components},rust-docs" + ./install.sh \ + --components="${components}" \ + --disable-verify \ + --prefix="${D}/opt/${P}" \ + --mandir="${D}/usr/share/${P}/man" \ + --disable-ldconfig \ + || die + + local rustc=rustc-bin-${PV} + local rustdoc=rustdoc-bin-${PV} + local rustgdb=rust-gdb-bin-${PV} + + mv "${D}/opt/${P}/bin/rustc" "${D}/opt/${P}/bin/${rustc}" || die + mv "${D}/opt/${P}/bin/rustdoc" "${D}/opt/${P}/bin/${rustdoc}" || die + mv "${D}/opt/${P}/bin/rust-gdb" "${D}/opt/${P}/bin/${rustgdb}" || die + + dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}" + dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}" + dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}" + + cat <<-EOF > "${T}"/50${P} + LDPATH="/opt/${P}/lib" + MANPATH="/usr/share/${P}/man" + EOF + doenvd "${T}"/50${P} + + cat <<-EOF > "${T}/provider-${P}" + /usr/bin/rustdoc + /usr/bin/rust-gdb + EOF + dodir /etc/env.d/rust + 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 || has_version app-editors/emacs-vcs; 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 has_version 'app-shells/zsh'; then + elog "install app-shells/rust-zshcomp to get zsh completion for rust." + fi +} + +pkg_postrm() { + eselect rust unset --if-invalid +} diff --git a/dev-lang/rust-bin/rust-bin-1.27.1-r1.ebuild b/dev-lang/rust-bin/rust-bin-1.27.1-r1.ebuild new file mode 100644 index 000000000000..53d2d4e87ebe --- /dev/null +++ b/dev-lang/rust-bin/rust-bin-1.27.1-r1.ebuild @@ -0,0 +1,142 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils bash-completion-r1 versionator toolchain-funcs + +MY_P="rust-${PV}" + +DESCRIPTION="Systems programming language from Mozilla" +HOMEPAGE="https://www.rust-lang.org/" +SRC_URI="amd64? ( https://static.rust-lang.org/dist/${MY_P}-x86_64-unknown-linux-gnu.tar.xz ) + arm? ( + https://static.rust-lang.org/dist/${MY_P}-arm-unknown-linux-gnueabi.tar.xz + https://static.rust-lang.org/dist/${MY_P}-arm-unknown-linux-gnueabihf.tar.xz + https://static.rust-lang.org/dist/${MY_P}-armv7-unknown-linux-gnueabihf.tar.xz + ) + x86? ( https://static.rust-lang.org/dist/${MY_P}-i686-unknown-linux-gnu.tar.xz )" + +LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" +SLOT="stable" +KEYWORDS="~amd64 ~x86" +IUSE="cargo doc rustfmt" + +CARGO_DEPEND_VERSION="0.$(($(get_version_component_range 2) + 1)).0" + +DEPEND=">=app-eselect/eselect-rust-0.3_pre20150425 + !dev-lang/rust:0 + cargo? ( !dev-util/cargo ) + rustfmt? ( !dev-util/rustfmt ) +" +RDEPEND="${DEPEND}" +PDEPEND="!cargo? ( >=dev-util/cargo-${CARGO_DEPEND_VERSION} )" + +QA_PREBUILT=" + opt/${P}/bin/*-${PV} + opt/${P}/lib/*.so + 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 + + local postfix + use amd64 && postfix=x86_64-unknown-linux-gnu + + if use arm && [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv6* ]]; then + postfix=arm-unknown-linux-gnueabi + elif use arm && [[ ${CHOST} == armv6*h* ]]; then + postfix=arm-unknown-linux-gnueabihf + elif use arm && [[ ${CHOST} == armv7*h* ]]; then + postfix=armv7-unknown-linux-gnueabihf + fi + + use x86 && postfix=i686-unknown-linux-gnu + mv "${WORKDIR}/${MY_P}-${postfix}" "${S}" || die +} + +src_install() { + local std=$(grep 'std' ./components) + local components="rustc,${std}" + use doc && components="${components},rust-docs" + use cargo && components="${components},cargo" + use rustfmt && components="${components},rustfmt-preview" + ./install.sh \ + --components="${components}" \ + --disable-verify \ + --prefix="${D}/opt/${P}" \ + --mandir="${D}/usr/share/${P}/man" \ + --disable-ldconfig \ + || die + + local rustc=rustc-bin-${PV} + local rustdoc=rustdoc-bin-${PV} + local rustgdb=rust-gdb-bin-${PV} + + mv "${D}/opt/${P}/bin/rustc" "${D}/opt/${P}/bin/${rustc}" || die + mv "${D}/opt/${P}/bin/rustdoc" "${D}/opt/${P}/bin/${rustdoc}" || die + mv "${D}/opt/${P}/bin/rust-gdb" "${D}/opt/${P}/bin/${rustgdb}" || die + + dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}" + dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}" + dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}" + + if use cargo; then + local cargo=cargo-${PV} + mv "${D}/opt/${P}/bin/cargo" "${D}/opt/${P}/bin/${cargo}" || die + dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}" + fi + if use rustfmt; then + local rustfmt=rustfmt-${PV} + local cargo_fmt=cargo-fmt-${PV} + mv "${D}/opt/${P}/bin/rustfmt" "${D}/opt/${P}/bin/${rustfmt}" || die + mv "${D}/opt/${P}/bin/cargo-fmt" "${D}/opt/${P}/bin/${cargo_fmt}" || die + 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} + + cat <<-EOF > "${T}/provider-${P}" + /usr/bin/rustdoc + /usr/bin/rust-gdb + EOF + dodir /etc/env.d/rust + 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 || has_version app-editors/emacs-vcs; 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 has_version 'app-shells/zsh'; then + elog "install app-shells/rust-zshcomp to get zsh completion for rust." + fi +} + +pkg_postrm() { + eselect rust unset --if-invalid +} diff --git a/dev-lang/rust-bin/rust-bin-1.27.1.ebuild b/dev-lang/rust-bin/rust-bin-1.27.1.ebuild new file mode 100644 index 000000000000..c1554f3d217c --- /dev/null +++ b/dev-lang/rust-bin/rust-bin-1.27.1.ebuild @@ -0,0 +1,130 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils bash-completion-r1 versionator toolchain-funcs + +MY_P="rust-${PV}" + +DESCRIPTION="Systems programming language from Mozilla" +HOMEPAGE="https://www.rust-lang.org/" +SRC_URI="amd64? ( https://static.rust-lang.org/dist/${MY_P}-x86_64-unknown-linux-gnu.tar.xz ) + arm? ( + https://static.rust-lang.org/dist/${MY_P}-arm-unknown-linux-gnueabi.tar.xz + https://static.rust-lang.org/dist/${MY_P}-arm-unknown-linux-gnueabihf.tar.xz + https://static.rust-lang.org/dist/${MY_P}-armv7-unknown-linux-gnueabihf.tar.xz + ) + x86? ( https://static.rust-lang.org/dist/${MY_P}-i686-unknown-linux-gnu.tar.xz )" + +LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" +SLOT="stable" +KEYWORDS="~amd64 ~x86" +IUSE="cargo doc" + +CARGO_DEPEND_VERSION="0.$(($(get_version_component_range 2) + 1)).0" + +DEPEND=">=app-eselect/eselect-rust-0.3_pre20150425 + !dev-lang/rust:0 + cargo? ( !dev-util/cargo ) +" +RDEPEND="${DEPEND}" +PDEPEND=">=dev-util/cargo-${CARGO_DEPEND_VERSION}" + +QA_PREBUILT=" + opt/${P}/bin/rustc-bin-${PV} + opt/${P}/bin/rustdoc-bin-${PV} + opt/${P}/lib/*.so + 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 + + local postfix + use amd64 && postfix=x86_64-unknown-linux-gnu + + if use arm && [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv6* ]]; then + postfix=arm-unknown-linux-gnueabi + elif use arm && [[ ${CHOST} == armv6*h* ]]; then + postfix=arm-unknown-linux-gnueabihf + elif use arm && [[ ${CHOST} == armv7*h* ]]; then + postfix=armv7-unknown-linux-gnueabihf + fi + + use x86 && postfix=i686-unknown-linux-gnu + mv "${WORKDIR}/${MY_P}-${postfix}" "${S}" || die +} + +src_install() { + local std=$(grep 'std' ./components) + local components="rustc,${std}" + use doc && components="${components},rust-docs" + use cargo && components="${components},cargo" + ./install.sh \ + --components="${components}" \ + --disable-verify \ + --prefix="${D}/opt/${P}" \ + --mandir="${D}/usr/share/${P}/man" \ + --disable-ldconfig \ + || die + + local rustc=rustc-bin-${PV} + local rustdoc=rustdoc-bin-${PV} + local rustgdb=rust-gdb-bin-${PV} + local cargo=cargo-${PV} + + mv "${D}/opt/${P}/bin/rustc" "${D}/opt/${P}/bin/${rustc}" || die + mv "${D}/opt/${P}/bin/rustdoc" "${D}/opt/${P}/bin/${rustdoc}" || die + mv "${D}/opt/${P}/bin/rust-gdb" "${D}/opt/${P}/bin/${rustgdb}" || die + use cargo && mv "${D}/opt/${P}/bin/cargo" "${D}/opt/${P}/bin/${cargo}" || die + + dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}" + dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}" + dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}" + use cargo && dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}" + + cat <<-EOF > "${T}"/50${P} + LDPATH="/opt/${P}/lib" + MANPATH="/usr/share/${P}/man" + EOF + doenvd "${T}"/50${P} + + cat <<-EOF > "${T}/provider-${P}" + /usr/bin/rustdoc + /usr/bin/rust-gdb + EOF + dodir /etc/env.d/rust + 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 || has_version app-editors/emacs-vcs; 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 has_version 'app-shells/zsh'; then + elog "install app-shells/rust-zshcomp to get zsh completion for rust." + fi +} + +pkg_postrm() { + eselect rust unset --if-invalid +} diff --git a/dev-lang/rust/Manifest b/dev-lang/rust/Manifest index fa09b9b24764..9dfc987dc422 100644 --- a/dev-lang/rust/Manifest +++ b/dev-lang/rust/Manifest @@ -9,8 +9,9 @@ DIST rust-1.26.2-i686-unknown-linux-gnu.tar.xz 143090096 BLAKE2B 7871fa4e4d0f320 DIST rust-1.26.2-x86_64-unknown-linux-gnu.tar.xz 138609432 BLAKE2B 54507a8ce3ab2676e6e66852b6d3f1a47ca07ad4b56383f6247149309a0f60f67fbf0a6ba27d968c24340c07d7d5074942c6eaccbc1207c5e75fd9a6f47b2481 SHA512 29e474b0eab4dd2ffa0b964d83f52ffce530e75c4193e307410ef6d20ef9ad2b300a4f467bdf06b3311157340e9295cb9b1efdcf08dafee66979b076c2afba7e DIST rustc-1.25.0-src.tar.gz 98639156 BLAKE2B 1408d5dd0611d4830de3b6b3d00e3fad4198a47599b639d0ac0bd05aaba401f743056a942e9df04a4d192c6b12e8cfe9a9cdf8cd26e48b72104ce9b423df049e SHA512 7d8886f4d5a621eb794e814deb60be681fa38cf086f87ffa14e5a3500c640b237c549a632de1331a0f1b71963de41f6d31a4df3866b7e597424002316fed81ce DIST rustc-1.26.2-src.tar.xz 54613640 BLAKE2B f361b7a0ed40ccb026750b4a70b99931f1abf52024e907b588e339902de2fbbd15501d237ac048d0537005834b0a2f49935f654a8c75d40ed95c65894f611481 SHA512 a598858ddce0e05d1d431be383400f44fc551eb2e368f37b01670c0b65ea5da6a7d5b2b68bb6ef806d2107cfa0d5007008442ad4d5ddb17d18d04e0ab31600b0 -DIST rustc-1.27.0-src.tar.xz 55455772 BLAKE2B 5c1b26a3e8c6e45aaa43b3ccb5819089cf03c32807ac1adc46ec4f9ff8cf803ec444587ccb737b5d701c4ef5fa634fc4c89de3d71e6202b64ec125f986e54ffd SHA512 b80af48c637741add1d2846e6e3153b0125fb22ed587036fb9d27ad3961419af64802aa91a79258277b1be20718281558989ea0283db0c482fe1512354ba79d8 +DIST rustc-1.27.1-src.tar.xz 55458892 BLAKE2B 9c5cec24760afdcee51fb0ba8d2289b92d34de57e97e57f2e5dc129674edab4a595ab5756c789b5de15bdd5107363f12a517169cedc7c3093fa0241d200ca3ab SHA512 4a8c03476ca1867a1130b825724ecb6bd629b889d704fdd6c3de4e188f73e2d1acdfae413f26e37505d76109d23d8e9ab409b31af3d67d244f8552730ada292d EBUILD rust-1.25.0.ebuild 4602 BLAKE2B ef12c22219b70843d6132e07dc0df131502ba441a750c86f1863bd55c708df992a8d359fd62da11ff473806998673fbe0db11ff8129d4af42295ad6d849be511 SHA512 737a3f8469cac36442f11260de811294ab38faa23c515c78159288f340e51bafbb64b7c6354e8409f5b7093e65907aaebcc787493779f70f56a5bb02535574c3 EBUILD rust-1.26.2.ebuild 6405 BLAKE2B 42ba958bf51ca06863a7daf33af65edf6ca9a8661403c3790beb0767275ef351c624bab40eec7d6b191f9ff366a00ffe9b9419edf6ad95093adc130e1c3c8c27 SHA512 5475113b82ae3d5406a41a2ad1d37dd0997be401dbe5f61a3f50234b208b23f6b3bb465baffc0e05b3c667416dcd870d61b918f36ef3e41ae30009b600eb7524 -EBUILD rust-1.27.0.ebuild 6502 BLAKE2B 7c00b39b5db8347085ec6060019ce20f0914aed7c1f62da31d7d3114451253a076f11b60c4615f7b5f1afb0cd7bd25e0e89f328b29fe4c041bad242f69e9cb36 SHA512 57c6ac383e47aec3d86b7d1ec198c843b89498c2f2fea17f1e1ce07ec4a9405ec48add0e3e683a378f74650582ded64a3d610c7d1014295ca9e141bd7d0961a6 -MISC metadata.xml 567 BLAKE2B ba37cc554e05535739292d3c69155bb53bf0c99260dd60b4e7cab0eae13edee8c7e66204e3aaf9d917153714651486370db64bcda5200d6302bd8bee8eff989c SHA512 57384c3ef2f103b20d64854e5c3e50237be7f1af57687abae6a067d452b10a16ead4534b8302beb782273a8bf353adb3da90c5c140bd5394eac2ce0d3dbcc1e3 +EBUILD rust-1.27.1-r2.ebuild 7460 BLAKE2B 24163e17a44a120b62230b95c4134b181463cfdf6bce19107251e91c1bb9d37a7850c06ba6b1928c1296844902e0dd0454dd07753130cb9f655f55ec95588bb0 SHA512 5a865e7013ca04f12be10031c08aec7f5008e488489bef9bcc7c62aaf06c0b2278aa514054bb309fb73f546796f054e2b801cadc8a2883e01a88980b8a8453c7 +EBUILD rust-1.27.1.ebuild 6502 BLAKE2B 7c00b39b5db8347085ec6060019ce20f0914aed7c1f62da31d7d3114451253a076f11b60c4615f7b5f1afb0cd7bd25e0e89f328b29fe4c041bad242f69e9cb36 SHA512 57c6ac383e47aec3d86b7d1ec198c843b89498c2f2fea17f1e1ce07ec4a9405ec48add0e3e683a378f74650582ded64a3d610c7d1014295ca9e141bd7d0961a6 +MISC metadata.xml 729 BLAKE2B fabcd84f8393ad53a0a5a44d9ec6320d1ff8defa7bca5af818b28571af017739348de98c5b60db6140929f576393e70ddaebc2d255011c22ba1c6e16672b375a SHA512 103448ae7c168a0dc30539f1e747200990ffec66d62a66876c1d186d03eabdded5238175584269472b7fca53bf596b26dc58dbb732751d7971dc0c75ccf37211 diff --git a/dev-lang/rust/metadata.xml b/dev-lang/rust/metadata.xml index c03ce153031e..88d117336094 100644 --- a/dev-lang/rust/metadata.xml +++ b/dev-lang/rust/metadata.xml @@ -8,8 +8,11 @@ Build and install rls, rustfmt and cargo alongside the compiler and stdlib + Install cargo component Use dev-libs/jemalloc as the standard memory allocator + Install rls component + Install rustfmt component Build support for the wasm32-unknown-unknown target diff --git a/dev-lang/rust/rust-1.27.0.ebuild b/dev-lang/rust/rust-1.27.0.ebuild deleted file mode 100644 index 46186c32ca15..000000000000 --- a/dev-lang/rust/rust-1.27.0.ebuild +++ /dev/null @@ -1,234 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 python3_{5,6} pypy ) - -inherit multiprocessing multilib-build python-any-r1 toolchain-funcs versionator - -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" - KEYWORDS="" -else - ABI_VER="$(get_version_component_range 1-2)" - SLOT="stable/${ABI_VER}" - MY_P="rustc-${PV}" - SRC="${MY_P}-src.tar.xz" - KEYWORDS="~amd64 ~arm64 ~x86" -fi - -CHOST_amd64=x86_64-unknown-linux-gnu -CHOST_x86=i686-unknown-linux-gnu -CHOST_arm64=aarch64-unknown-linux-gnu - -RUST_STAGE0_VERSION="1.$(($(get_version_component_range 2) - 1)).2" -RUST_STAGE0_amd64="rust-${RUST_STAGE0_VERSION}-${CHOST_amd64}" -RUST_STAGE0_x86="rust-${RUST_STAGE0_VERSION}-${CHOST_x86}" -RUST_STAGE0_arm64="rust-${RUST_STAGE0_VERSION}-${CHOST_arm64}" - -# there is no cargo 0.28 tag, so use 0.27 -#CARGO_DEPEND_VERSION="0.$(($(version_get_comp 2) + 1)).0" -CARGO_DEPEND_VERSION="0.$(($(get_version_component_range 2))).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 - amd64? ( https://static.rust-lang.org/dist/${RUST_STAGE0_amd64}.tar.xz ) - x86? ( https://static.rust-lang.org/dist/${RUST_STAGE0_x86}.tar.xz ) - arm64? ( https://static.rust-lang.org/dist/${RUST_STAGE0_arm64}.tar.xz ) -" - -ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430 - NVPTX PowerPC Sparc SystemZ 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="debug doc extended +jemalloc wasm ${ALL_LLVM_TARGETS[*]}" - -RDEPEND=">=app-eselect/eselect-rust-0.3_pre20150425 - jemalloc? ( dev-libs/jemalloc )" -DEPEND="${RDEPEND} - ${PYTHON_DEPS} - || ( - >=sys-devel/gcc-4.7 - >=sys-devel/clang-3.5 - ) - dev-util/cmake -" -PDEPEND="!extended? ( >=dev-util/cargo-${CARGO_DEPEND_VERSION} )" - -REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )" - -S="${WORKDIR}/${MY_P}-src" - -toml_usex() { - usex "$1" true false -} - -src_prepare() { - local rust_stage0_root="${WORKDIR}"/rust-stage0 - - local rust_stage0_name="RUST_STAGE0_${ARCH}" - local rust_stage0="${!rust_stage0_name}" - - "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig --destdir="${rust_stage0_root}" --prefix=/ || die - - default -} - -src_configure() { - local rust_target="" rust_targets="" rust_target_name arch_cflags - - # Collect rust target names to compile standard libs for all ABIs. - for v in $(multilib_get_enabled_abi_pairs); do - rust_target_name="CHOST_${v##*.}" - rust_targets="${rust_targets},\"${!rust_target_name}\"" - done - if use wasm; then - rust_targets="${rust_targets},\"wasm32-unknown-unknown\"" - fi - rust_targets="${rust_targets#,}" - - local rust_stage0_root="${WORKDIR}"/rust-stage0 - - rust_target_name="CHOST_${ARCH}" - rust_target="${!rust_target_name}" - - cat <<- EOF > "${S}"/config.toml - [llvm] - optimize = $(toml_usex !debug) - release-debuginfo = $(toml_usex debug) - assertions = $(toml_usex debug) - targets = "${LLVM_TARGETS// /;}" - [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 - verbose = 2 - extended = $(toml_usex extended) - [install] - prefix = "${EPREFIX}/usr" - libdir = "$(get_libdir)" - docdir = "share/doc/${P}" - mandir = "share/${P}/man" - [rust] - optimize = $(toml_usex !debug) - debuginfo = $(toml_usex debug) - debug-assertions = $(toml_usex debug) - use-jemalloc = $(toml_usex jemalloc) - default-linker = "$(tc-getCC)" - rpath = false - lld = $(toml_usex wasm) - EOF - - for v in $(multilib_get_enabled_abi_pairs); do - rust_target=$(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 - done - - if use wasm; then - cat <<- EOF >> "${S}"/config.toml - [target.wasm32-unknown-unknown] - linker = "lld" - EOF - fi -} - -src_compile() { - env $(cat "${S}"/config.env)\ - ./x.py build --verbose --config="${S}"/config.toml -j$(makeopts_jobs) || die -} - -src_install() { - local rust_target abi_libdir - - env DESTDIR="${D}" ./x.py install || die - - mv "${D}/usr/bin/rustc" "${D}/usr/bin/rustc-${PV}" || die - mv "${D}/usr/bin/rustdoc" "${D}/usr/bin/rustdoc-${PV}" || die - mv "${D}/usr/bin/rust-gdb" "${D}/usr/bin/rust-gdb-${PV}" || die - mv "${D}/usr/bin/rust-lldb" "${D}/usr/bin/rust-lldb-${PV}" || die - - # 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=$(get_abi_CHOST ${v##*.}) - mkdir -p "${D}/usr/${abi_libdir}" - cp "${D}/usr/$(get_libdir)/rustlib/${rust_target}/lib"/*.so \ - "${D}/usr/${abi_libdir}" || die - done - - dodoc COPYRIGHT - - # FIXME: - # Really not sure if that env is needed, specailly LDPATH - cat <<-EOF > "${T}"/50${P} - LDPATH="/usr/$(get_libdir)/${P}" - MANPATH="/usr/share/${P}/man" - EOF - doenvd "${T}"/50${P} - - cat <<-EOF > "${T}/provider-${P}" - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-lldb - EOF - dodir /etc/env.d/rust - 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}." - - if has_version app-editors/emacs || has_version app-editors/emacs-vcs; 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 has_version 'app-shells/zsh'; then - elog "install app-shells/rust-zshcomp to get zsh completion for rust." - fi -} - -pkg_postrm() { - eselect rust unset --if-invalid -} diff --git a/dev-lang/rust/rust-1.27.1-r2.ebuild b/dev-lang/rust/rust-1.27.1-r2.ebuild new file mode 100644 index 000000000000..1dc2182f159c --- /dev/null +++ b/dev-lang/rust/rust-1.27.1-r2.ebuild @@ -0,0 +1,271 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 python3_{5,6} pypy ) + +inherit multiprocessing multilib-build python-any-r1 toolchain-funcs versionator + +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" + KEYWORDS="" +else + ABI_VER="$(get_version_component_range 1-2)" + SLOT="stable/${ABI_VER}" + MY_P="rustc-${PV}" + SRC="${MY_P}-src.tar.xz" + KEYWORDS="~amd64 ~arm64 ~x86" +fi + +CHOST_amd64=x86_64-unknown-linux-gnu +CHOST_x86=i686-unknown-linux-gnu +CHOST_arm64=aarch64-unknown-linux-gnu + +RUST_STAGE0_VERSION="1.$(($(get_version_component_range 2) - 1)).2" +RUST_STAGE0_amd64="rust-${RUST_STAGE0_VERSION}-${CHOST_amd64}" +RUST_STAGE0_x86="rust-${RUST_STAGE0_VERSION}-${CHOST_x86}" +RUST_STAGE0_arm64="rust-${RUST_STAGE0_VERSION}-${CHOST_arm64}" + +# there is no cargo 0.28 tag, so use 0.27 +#CARGO_DEPEND_VERSION="0.$(($(version_get_comp 2) + 1)).0" +CARGO_DEPEND_VERSION="0.$(($(get_version_component_range 2))).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 + amd64? ( https://static.rust-lang.org/dist/${RUST_STAGE0_amd64}.tar.xz ) + x86? ( https://static.rust-lang.org/dist/${RUST_STAGE0_x86}.tar.xz ) + arm64? ( https://static.rust-lang.org/dist/${RUST_STAGE0_arm64}.tar.xz ) +" + +ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430 + NVPTX PowerPC Sparc SystemZ 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="cargo debug doc +jemalloc rls rustfmt wasm ${ALL_LLVM_TARGETS[*]}" + +RDEPEND=">=app-eselect/eselect-rust-0.3_pre20150425 + jemalloc? ( dev-libs/jemalloc )" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + || ( + >=sys-devel/gcc-4.7 + >=sys-devel/clang-3.5 + ) + cargo? ( !dev-util/cargo ) + rustfmt? ( !dev-util/rustfmt ) + dev-util/cmake +" +PDEPEND="!cargo? ( >=dev-util/cargo-${CARGO_DEPEND_VERSION} )" + +REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )" + +S="${WORKDIR}/${MY_P}-src" + +toml_usex() { + usex "$1" true false +} + +src_prepare() { + local rust_stage0_root="${WORKDIR}"/rust-stage0 + + local rust_stage0_name="RUST_STAGE0_${ARCH}" + local rust_stage0="${!rust_stage0_name}" + + "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig --destdir="${rust_stage0_root}" --prefix=/ || die + + default +} + +src_configure() { + local rust_target="" rust_targets="" rust_target_name arch_cflags + + # Collect rust target names to compile standard libs for all ABIs. + for v in $(multilib_get_enabled_abi_pairs); do + rust_target_name="CHOST_${v##*.}" + rust_targets="${rust_targets},\"${!rust_target_name}\"" + done + if use wasm; then + rust_targets="${rust_targets},\"wasm32-unknown-unknown\"" + fi + rust_targets="${rust_targets#,}" + + local extended="false" tools="" + if use cargo; then + extended="true" + tools="\"cargo\"," + fi + if use rls; then + extended="true" + tools="\"rls\",$tools" + fi + if use rustfmt; then + extended="true" + tools="\"rustfmt\",$tools" + fi + + local rust_stage0_root="${WORKDIR}"/rust-stage0 + + rust_target_name="CHOST_${ARCH}" + rust_target="${!rust_target_name}" + + cat <<- EOF > "${S}"/config.toml + [llvm] + optimize = $(toml_usex !debug) + release-debuginfo = $(toml_usex debug) + assertions = $(toml_usex debug) + targets = "${LLVM_TARGETS// /;}" + [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}] + [install] + prefix = "${EPREFIX}/usr" + libdir = "$(get_libdir)" + docdir = "share/doc/${P}" + mandir = "share/${P}/man" + [rust] + optimize = $(toml_usex !debug) + debuginfo = $(toml_usex debug) + debug-assertions = $(toml_usex debug) + use-jemalloc = $(toml_usex jemalloc) + default-linker = "$(tc-getCC)" + rpath = false + lld = $(toml_usex wasm) + EOF + + for v in $(multilib_get_enabled_abi_pairs); do + rust_target=$(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 + done + + if use wasm; then + cat <<- EOF >> "${S}"/config.toml + [target.wasm32-unknown-unknown] + linker = "lld" + EOF + fi +} + +src_compile() { + env $(cat "${S}"/config.env)\ + ./x.py build --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}" ./x.py install || die + + mv "${D}/usr/bin/rustc" "${D}/usr/bin/rustc-${PV}" || die + mv "${D}/usr/bin/rustdoc" "${D}/usr/bin/rustdoc-${PV}" || die + mv "${D}/usr/bin/rust-gdb" "${D}/usr/bin/rust-gdb-${PV}" || die + mv "${D}/usr/bin/rust-lldb" "${D}/usr/bin/rust-lldb-${PV}" || die + if use cargo; then + mv "${D}/usr/bin/cargo" "${D}/usr/bin/cargo-${PV}" || die + fi + if use rls; then + mv "${D}/usr/bin/rls" "${D}/usr/bin/rls-${PV}" || die + fi + if use rustfmt; then + mv "${D}/usr/bin/rustfmt" "${D}/usr/bin/rustfmt-${PV}" || die + mv "${D}/usr/bin/cargo-fmt" "${D}/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=$(get_abi_CHOST ${v##*.}) + mkdir -p "${D}/usr/${abi_libdir}" + cp "${D}/usr/$(get_libdir)/rustlib/${rust_target}/lib"/*.so \ + "${D}/usr/${abi_libdir}" || die + done + + dodoc COPYRIGHT + + # FIXME: + # Really not sure if that env is needed, specailly LDPATH + cat <<-EOF > "${T}"/50${P} + LDPATH="/usr/$(get_libdir)/${P}" + MANPATH="/usr/share/${P}/man" + EOF + doenvd "${T}"/50${P} + + cat <<-EOF > "${T}/provider-${P}" + /usr/bin/rustdoc + /usr/bin/rust-gdb + /usr/bin/rust-lldb + EOF + if use cargo; then + echo /usr/bin/cargo >> "${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 + dodir /etc/env.d/rust + 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}." + + if has_version app-editors/emacs || has_version app-editors/emacs-vcs; 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 has_version 'app-shells/zsh'; then + elog "install app-shells/rust-zshcomp to get zsh completion for rust." + fi +} + +pkg_postrm() { + eselect rust unset --if-invalid +} diff --git a/dev-lang/rust/rust-1.27.1.ebuild b/dev-lang/rust/rust-1.27.1.ebuild new file mode 100644 index 000000000000..46186c32ca15 --- /dev/null +++ b/dev-lang/rust/rust-1.27.1.ebuild @@ -0,0 +1,234 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 python3_{5,6} pypy ) + +inherit multiprocessing multilib-build python-any-r1 toolchain-funcs versionator + +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" + KEYWORDS="" +else + ABI_VER="$(get_version_component_range 1-2)" + SLOT="stable/${ABI_VER}" + MY_P="rustc-${PV}" + SRC="${MY_P}-src.tar.xz" + KEYWORDS="~amd64 ~arm64 ~x86" +fi + +CHOST_amd64=x86_64-unknown-linux-gnu +CHOST_x86=i686-unknown-linux-gnu +CHOST_arm64=aarch64-unknown-linux-gnu + +RUST_STAGE0_VERSION="1.$(($(get_version_component_range 2) - 1)).2" +RUST_STAGE0_amd64="rust-${RUST_STAGE0_VERSION}-${CHOST_amd64}" +RUST_STAGE0_x86="rust-${RUST_STAGE0_VERSION}-${CHOST_x86}" +RUST_STAGE0_arm64="rust-${RUST_STAGE0_VERSION}-${CHOST_arm64}" + +# there is no cargo 0.28 tag, so use 0.27 +#CARGO_DEPEND_VERSION="0.$(($(version_get_comp 2) + 1)).0" +CARGO_DEPEND_VERSION="0.$(($(get_version_component_range 2))).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 + amd64? ( https://static.rust-lang.org/dist/${RUST_STAGE0_amd64}.tar.xz ) + x86? ( https://static.rust-lang.org/dist/${RUST_STAGE0_x86}.tar.xz ) + arm64? ( https://static.rust-lang.org/dist/${RUST_STAGE0_arm64}.tar.xz ) +" + +ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430 + NVPTX PowerPC Sparc SystemZ 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="debug doc extended +jemalloc wasm ${ALL_LLVM_TARGETS[*]}" + +RDEPEND=">=app-eselect/eselect-rust-0.3_pre20150425 + jemalloc? ( dev-libs/jemalloc )" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + || ( + >=sys-devel/gcc-4.7 + >=sys-devel/clang-3.5 + ) + dev-util/cmake +" +PDEPEND="!extended? ( >=dev-util/cargo-${CARGO_DEPEND_VERSION} )" + +REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )" + +S="${WORKDIR}/${MY_P}-src" + +toml_usex() { + usex "$1" true false +} + +src_prepare() { + local rust_stage0_root="${WORKDIR}"/rust-stage0 + + local rust_stage0_name="RUST_STAGE0_${ARCH}" + local rust_stage0="${!rust_stage0_name}" + + "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig --destdir="${rust_stage0_root}" --prefix=/ || die + + default +} + +src_configure() { + local rust_target="" rust_targets="" rust_target_name arch_cflags + + # Collect rust target names to compile standard libs for all ABIs. + for v in $(multilib_get_enabled_abi_pairs); do + rust_target_name="CHOST_${v##*.}" + rust_targets="${rust_targets},\"${!rust_target_name}\"" + done + if use wasm; then + rust_targets="${rust_targets},\"wasm32-unknown-unknown\"" + fi + rust_targets="${rust_targets#,}" + + local rust_stage0_root="${WORKDIR}"/rust-stage0 + + rust_target_name="CHOST_${ARCH}" + rust_target="${!rust_target_name}" + + cat <<- EOF > "${S}"/config.toml + [llvm] + optimize = $(toml_usex !debug) + release-debuginfo = $(toml_usex debug) + assertions = $(toml_usex debug) + targets = "${LLVM_TARGETS// /;}" + [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 + verbose = 2 + extended = $(toml_usex extended) + [install] + prefix = "${EPREFIX}/usr" + libdir = "$(get_libdir)" + docdir = "share/doc/${P}" + mandir = "share/${P}/man" + [rust] + optimize = $(toml_usex !debug) + debuginfo = $(toml_usex debug) + debug-assertions = $(toml_usex debug) + use-jemalloc = $(toml_usex jemalloc) + default-linker = "$(tc-getCC)" + rpath = false + lld = $(toml_usex wasm) + EOF + + for v in $(multilib_get_enabled_abi_pairs); do + rust_target=$(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 + done + + if use wasm; then + cat <<- EOF >> "${S}"/config.toml + [target.wasm32-unknown-unknown] + linker = "lld" + EOF + fi +} + +src_compile() { + env $(cat "${S}"/config.env)\ + ./x.py build --verbose --config="${S}"/config.toml -j$(makeopts_jobs) || die +} + +src_install() { + local rust_target abi_libdir + + env DESTDIR="${D}" ./x.py install || die + + mv "${D}/usr/bin/rustc" "${D}/usr/bin/rustc-${PV}" || die + mv "${D}/usr/bin/rustdoc" "${D}/usr/bin/rustdoc-${PV}" || die + mv "${D}/usr/bin/rust-gdb" "${D}/usr/bin/rust-gdb-${PV}" || die + mv "${D}/usr/bin/rust-lldb" "${D}/usr/bin/rust-lldb-${PV}" || die + + # 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=$(get_abi_CHOST ${v##*.}) + mkdir -p "${D}/usr/${abi_libdir}" + cp "${D}/usr/$(get_libdir)/rustlib/${rust_target}/lib"/*.so \ + "${D}/usr/${abi_libdir}" || die + done + + dodoc COPYRIGHT + + # FIXME: + # Really not sure if that env is needed, specailly LDPATH + cat <<-EOF > "${T}"/50${P} + LDPATH="/usr/$(get_libdir)/${P}" + MANPATH="/usr/share/${P}/man" + EOF + doenvd "${T}"/50${P} + + cat <<-EOF > "${T}/provider-${P}" + /usr/bin/rustdoc + /usr/bin/rust-gdb + /usr/bin/rust-lldb + EOF + dodir /etc/env.d/rust + 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}." + + if has_version app-editors/emacs || has_version app-editors/emacs-vcs; 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 has_version 'app-shells/zsh'; then + elog "install app-shells/rust-zshcomp to get zsh completion for rust." + fi +} + +pkg_postrm() { + eselect rust unset --if-invalid +} diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest index 0460aa83ed5c..16639e484755 100644 --- a/dev-lang/spidermonkey/Manifest +++ b/dev-lang/spidermonkey/Manifest @@ -20,7 +20,7 @@ EBUILD spidermonkey-17.0.0-r4.ebuild 3546 BLAKE2B 0cf5236b5ee991dc161633db218d42 EBUILD spidermonkey-17.0.0-r5.ebuild 3563 BLAKE2B 4b5294071559ee1e8487dfa5df388e17fb357ec8898f6e4390c1d3540a89647df04245e4c33706e52080236f9fcec7422a2cd0463f1f78feca1afc42f1d29e40 SHA512 6546f0c8bc2e7b1baecd6d616550977d83079c71ee973ab811a9cede0612d95b892a5f4d02a4a4733b5e90fff9795cdf50531e41f278fa210c988467931433bb EBUILD spidermonkey-24.2.0-r3.ebuild 4015 BLAKE2B 6608e66e03d2b606dc0117a46b462778468ac3697e64c44aa8a102c830f32c17e12c8458b2f43b05cf90306e7331407686959141078001534d1e33607d89e1ae SHA512 d715cf8f6ceb2139c14502ebe4c01a5a949fa59937737529dd9a5074444e1c25a2379018d740af2bb2cf99bbb3e35280bc88e68a44fa95d49d24e73f1843f003 EBUILD spidermonkey-24.2.0-r4.ebuild 3989 BLAKE2B a859c05afcfe262398de5f0b4d0c148eaf2d94f57e9f029814982efcc740acbfc8349e756f75b3ce83a746571e27a31d88c78126b1b1e0cc9154e4b86f53dc8e SHA512 ca080e9993b2c10aed9abd0d54bd0722e8f4a53ed755f60389e9bf6b0d3347115ca7cc347b708592619ef69f6f1f38e5c9778c949f7224e579e7da09cd269067 -EBUILD spidermonkey-38.3.0.ebuild 3877 BLAKE2B f84c60b9f04fb70bda407f02d45b5b6561b44b37d1b3a90d4170c948f5a5265e235a5c04fb88c90869f010a15ad67f2f437e96072f3c5dacd79c2a1c9538e023 SHA512 ce9a4eebd72945b13cfc149281d268ff84b1c69e360355954cd7f0bead3323a75d7cecb56c50ff161969561bcabb330443a0f03b651a88d3e06cbc71a5d9f240 +EBUILD spidermonkey-38.3.0.ebuild 3876 BLAKE2B 4e1fdd70583e2e2dfdd97d62696f80b85eaadae4c94932b59189def260ec2054344281ecdabef5947fd64d667090ba740cc6ed92a2e750d212a8177dffa730fc SHA512 8e3b6a71f4b2cbf49f039e7dc0dfc5f580b4aa45b2cae4174c27b84f428486bfe20f346b8fcb120561a06f7550112ae1b2711d8a4ce9d5d080c2fbba0e6ebbde EBUILD spidermonkey-45.0.2.ebuild 3905 BLAKE2B 9bd9a00eb41ac4f61da71b3feed187d1a70a2b4487f305580732ad734e91bf512dba6f8a7a5889814982e70ce25c9c9b0be8b87f05dacef7edfa2e08b53ada3c SHA512 a9a39994674ecdf1a974fbcc20f8c94e1f1f168db4095ba8c21a9d2fd01a6dbd0a59c932419c6b5f6c42b9bd7cc8b2aeaeb81973663a44b23372ea331b65d5db EBUILD spidermonkey-52.4.0_pre20171003-r1.ebuild 3875 BLAKE2B e5f957410306221c13e15ab1766e23a9b57e3b596ff1d251f477eadb9b9eb15b59e15f75ab762f8e52bb2349123f57486cffa0de9ba258d57ae5f7fb4e9c60fc SHA512 889a47778f7c89916ae71c5258a76e59914bcbc16a00a2514fc2903ca13115d8499cc5b32411f55101e6f9d280d4cc624d12052905aa1f1a7370dad84d9d1e11 MISC metadata.xml 906 BLAKE2B 8557bb4bfdce358f543be3ff571177d61beb5713ba6fa4c24c8e91522ca30f8c5b1bf42abd0324164cc6febd04d07c1ae3a311d6d68d62992be6368c20650ca9 SHA512 a411a781913fe81801799d4d801645fd8029ee4fb727431589cb948f97464edd828b8d86969b2207880432db8e8e627fad829fd95394fa121bb0ae97ae8249b0 diff --git a/dev-lang/spidermonkey/spidermonkey-38.3.0.ebuild b/dev-lang/spidermonkey/spidermonkey-38.3.0.ebuild index f5454e5a3173..25f951f74151 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 ~x86-fbsd" +KEYWORDS="~alpha amd64 ~arm ~hppa ia64 ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~x86-fbsd" IUSE="debug +jit minimal static-libs +system-icu test" RESTRICT="ia64? ( test )" diff --git a/dev-lang/swi-prolog/Manifest b/dev-lang/swi-prolog/Manifest index e085b978a49a..a612dabe7e3e 100644 --- a/dev-lang/swi-prolog/Manifest +++ b/dev-lang/swi-prolog/Manifest @@ -1,24 +1,13 @@ -DIST pl-6.6.6.tar.gz 14838653 BLAKE2B 879910f4ae2d133fff6decbe35e37bc63bd6565d0231220f5b784a231d2c8e245f1ab68b228cdd84a716b47f09bff9fa15aba8c5ae9719e89ce0923dbe41b3da SHA512 a850b0f6b283d34aa77d5e9d8a0053161fa534fa6d8935c7472362ff7b59ea6035de0658d9e38c317e2d92ed810370f2adc3e92b6346fc0ff392d18f1c8012a6 -DIST swi-prolog-6.6.6-gentoo-patchset-0.tar.gz 1590 BLAKE2B 0d214015690f62c2b7921db7e4decf5828e4a0eba6f62b9743c72edd6c03f70264518f9da3b9d6b761fe99f639016bf955e18afc117e310efc1228d93f9606d8 SHA512 807c7e897dd5b9eef14e063ea53c03047f3acb23174a70a613258adf7f85dc1f7637158fde70aab2e0f40de4bc6ac5e3548dd09dbe3745d916a388f43eb832eb -DIST swi-prolog-7.2.3-gentoo-patchset-1.tar.gz 1875 BLAKE2B a3ff00f596cf5af67f9afb6d376dce70fbb56aa544acbf7b7c14639c11bd9cd77c5080617976245021844fba266c781f913dfc96b2f50b57703e498ca7941ad4 SHA512 3506f4168d52f7d3539cd753c5153750df8c3239b78ffac1784c634b585d5fb0c825700e77abc9c1f467af71473ae1861eef629ebdf76b7c783d276c393f40fc DIST swi-prolog-7.4.2-gentoo-patchset-3.tar.gz 3256 BLAKE2B d7997d7307db738f0948a89f5e1cee195be4424737e50df915a293c7cb1b3bc1ce09ebd372e8c5f24c95df7335676f12cdc04749de25396eac71471704cfc579 SHA512 bc1b408e311d10ab59fa221bf5ef3d3cb1003a3edcdd13fd000cbc647117458e1f130e960cc37968481ccc2047529ca128159fac8e0ee75114022ed439905cce -DIST swipl-7.2.3.tar.gz 16192142 BLAKE2B 680047a4cbb7d113e7c232f58dcd45c8739dd82ca622de70c539930a2daf208faa07b49c67f19248e29ad1a7539abc815c50c64ca0b814a2b42284bf501956a6 SHA512 da27a6b171d3b471401f1a91e86a4dbe98973d8a1db8c72aa27e452311d08b893b01a1de8f9f4dafcdac460774b4ea980050256d37284546941e1bdf84f8cd7b DIST swipl-7.4.2.tar.gz 16496738 BLAKE2B a8f45c4277e48c0aa38f8b278b466dcb9e0a776325a9ed9e08c252660671d3ee0ee441978394682276b3fb9b0eca73ad10e02aba4671630bef0a1e8f813dd3c5 SHA512 5b526d4f079e7a36184f871bb7341330bcadaeee2a69af981fbcad71ae76c77331b1f157174ac2b31d96e069dc530afa86c024de6709edd9dc8baee3b4ebffb3 DIST swipl-7.6.3.tar.gz 16772590 BLAKE2B 644be801e290ec9d949a9b7462256a35e11cf9afd62d0b62c315e3620a3943809f58698a23f279454e00299f7b7f7b91e8d9694a139e8c424cb2f83a4efc7a52 SHA512 d84af1a565935af9934c6b75192bb2dd87388ee8fe793ade35d5549a95ec5eb83da6b10508766e795f88393fededea4ec7a3a0c2f0f685d96ab615e171d7d1f4 DIST swipl-7.6.4.tar.gz 16777875 BLAKE2B 94409966362e649f4748b94b4ec25415bb827c7742aa39453d8e37db4ce992a65ad2d054ded4e651f2a9abe3a9438285bc9c9c895437c087ae6cf88f4afae9ca SHA512 f0ed16e4f1436115651c38a0bb37008d0dadad5a19b0f09894fcfc51dd3d429f86488e89cce00788c3c36cc2f0cd2957f92df47d5441133a6f8ea9d91ca5470f -DIST swipl-7.7.13.tar.gz 17057506 BLAKE2B 4eb1f94511d1784f2df93100e646921541db67d09469f34f58ac9884935d1917feb4ce76f1e6284fd9e6f707b13bb8d77110c61300a78aa4c68bf4b4afd908a9 SHA512 b838b6c441542fbca3f635cb62dd844f09d0549f4da1f4ea9f9201d9e917f08e4a8917357f83e1c6704354f095f9212df92b19cbc631e91d891599eba23ef6ed -DIST swipl-7.7.14.tar.gz 17058567 BLAKE2B ad73035dfb6f731de7a6463ee1a2162f8fe54154969310f837df2367547243790c18df6cf96f16757b6e9760713123cae87c331efbb029c7b48354da24b148fa SHA512 b94b4c3f5dd55d5e90b7b005a03607eb31bb7e6aced5616b819491287b650f819a95853ad5df179c9db5b3646773c458e6d1ae65d30687d4e45e22555a4301f8 -DIST swipl-7.7.15.tar.gz 16858761 BLAKE2B e35a1d2f57ce98dc8d4d5a3fdbacc0a012bf400153b5947fea01b503a4118aa8d770636a37bdd95380e7fdd39cef271628f577839dc76f02480ad0d4505954b3 SHA512 52423615cb623059fc5a6f49451e92ebc3d1dcb43a3c0d5a1636ac156878930c9b2441e7f94567dd8128d15a56e73ac77fe4e2bd80aff7951d4fbf45d6ed5e25 -DIST swipl-7.7.16.tar.gz 16872465 BLAKE2B f53d7d8e01cfba5b00cdec8e4bfba6c1748e929cc0c5b1e7fd29b83043306db6796b0b848f9a35493fe29a04c0a16031ce340caf1ff1d38ac313604aece499a7 SHA512 b286817b766a4e5f1488c37e667d0ced0bc9e13dd247105e1d959b9b03618c9ded1686b4ddc62dbe98a03b39266ebc5a9ba1ec50e663d88f54eef5a1a869637a DIST swipl-7.7.17.tar.gz 17020719 BLAKE2B c818a9dcf6713398c41efdec186a141ddb09c319c5c5ceff7a200d0c83f131ad8de3165730b88026e117c26d3eab209ae30d096f307bfa5ab9ca7b3c3458c39b SHA512 f8ce0b6d582c21457a9264179e620edbbfd8de975c95cf86211fd99ca387d021cd503adb5bef2bbdacab1cdb83fbf384834fd706808985c1c24f25d960a494d7 -EBUILD swi-prolog-6.6.6.ebuild 2802 BLAKE2B d84dbba5c1ed23020e067ffd9a0c616dcf0c07a7b1df12d5838b4692813527f328a735463d5f142ce7d7fa8583b62c8a3a5bffbd01a381f85dce1b3e35d8f821 SHA512 f750a9baf473a2e0913613b5e3feabd8fac1b7afb6cab926868154d9089cc57dc9815dcfbd001d929085df585b256903c7df7fbf602c5e0b021fa340973038bd -EBUILD swi-prolog-7.2.3-r1.ebuild 3173 BLAKE2B 9624fab340ad2ef4ffeb7d91a9ddc4404cbe3e38c1d561d5adc6501041a306519388e9ced37f1c146e923eb2f649643ef2d2d50da2c8e82a31c960d4d4b48d74 SHA512 1b76ecfac0eb5c03d61e25575fea8ea1a58ee511291274dc865c033cac7a796a632057063332e7621be01df7ee550e6f5957386c70a07081a46d9a87ce34b062 +DIST swipl-7.7.18.tar.gz 17025839 BLAKE2B e75be08c03965ff56e67ffc8b4743ce13da444d7a22f4c5234968ac38f131fe7762ff0b7c8c31f46d5f9f477293833483665cbcf191d54a9a51bb5661dcd460c SHA512 ec3daca594a6731d2f39851b8d7800f6040e401e132e153337393faf2595bcb1c0bc382477e34cc758f5d992731bfc2a60d2cdf563f3ca61643d35b0bc32a380 EBUILD swi-prolog-7.4.2.ebuild 3398 BLAKE2B 368ef93ceb17042a28699f9aa469e6b5c39aa29154b810e43fd050ab3bc1079f83680cfac8f4108c7c297a51e9bdd28357a0b6241c08faef3ea5f81ab1605558 SHA512 76d094f62e442ac86d32eaf467179fdcf4d4edf6034f711104e91f8a01b7e343208ef0b6e492ed18c8c0605b96a48f1adef8f3903f861c716e882cb9695b0dd2 EBUILD swi-prolog-7.6.3.ebuild 3395 BLAKE2B 6445c399d7a7518bcd4ce05b9ea0bf50c7d0297d5a24d9ef84a48c36600077cea8c8b77b010d28e25dfe0766e12d1f560f42e5597a602f6bdfc7351ea6e0fa62 SHA512 830766267d3e4b60897dfcdab5263cee600ccfa2cd80f970ef3b4c3695cc3ddf9989ae85527f45cdf124898210f108a98a32a613de2543a8db813d42482b0687 EBUILD swi-prolog-7.6.4.ebuild 3395 BLAKE2B 6445c399d7a7518bcd4ce05b9ea0bf50c7d0297d5a24d9ef84a48c36600077cea8c8b77b010d28e25dfe0766e12d1f560f42e5597a602f6bdfc7351ea6e0fa62 SHA512 830766267d3e4b60897dfcdab5263cee600ccfa2cd80f970ef3b4c3695cc3ddf9989ae85527f45cdf124898210f108a98a32a613de2543a8db813d42482b0687 -EBUILD swi-prolog-7.7.13.ebuild 3419 BLAKE2B cdddb2edae9aa893d13387d22e4b40b6d98dea32d227b078465f52952bc92d5a1b12bac23a6308a4e2185a74399155d5f338b46733bb75502a7fd4051b2e3194 SHA512 a3821b60339d2543cd9449e0e597642c838b9293555a8e2f72be1d79087c88b51b7a2525e444f8a12f57ba6f4c499c6d81ab9f3d3cbf9ac91df26c0e54962130 -EBUILD swi-prolog-7.7.14.ebuild 3419 BLAKE2B cdddb2edae9aa893d13387d22e4b40b6d98dea32d227b078465f52952bc92d5a1b12bac23a6308a4e2185a74399155d5f338b46733bb75502a7fd4051b2e3194 SHA512 a3821b60339d2543cd9449e0e597642c838b9293555a8e2f72be1d79087c88b51b7a2525e444f8a12f57ba6f4c499c6d81ab9f3d3cbf9ac91df26c0e54962130 -EBUILD swi-prolog-7.7.15.ebuild 3419 BLAKE2B cdddb2edae9aa893d13387d22e4b40b6d98dea32d227b078465f52952bc92d5a1b12bac23a6308a4e2185a74399155d5f338b46733bb75502a7fd4051b2e3194 SHA512 a3821b60339d2543cd9449e0e597642c838b9293555a8e2f72be1d79087c88b51b7a2525e444f8a12f57ba6f4c499c6d81ab9f3d3cbf9ac91df26c0e54962130 -EBUILD swi-prolog-7.7.16.ebuild 3419 BLAKE2B cdddb2edae9aa893d13387d22e4b40b6d98dea32d227b078465f52952bc92d5a1b12bac23a6308a4e2185a74399155d5f338b46733bb75502a7fd4051b2e3194 SHA512 a3821b60339d2543cd9449e0e597642c838b9293555a8e2f72be1d79087c88b51b7a2525e444f8a12f57ba6f4c499c6d81ab9f3d3cbf9ac91df26c0e54962130 EBUILD swi-prolog-7.7.17.ebuild 3419 BLAKE2B cdddb2edae9aa893d13387d22e4b40b6d98dea32d227b078465f52952bc92d5a1b12bac23a6308a4e2185a74399155d5f338b46733bb75502a7fd4051b2e3194 SHA512 a3821b60339d2543cd9449e0e597642c838b9293555a8e2f72be1d79087c88b51b7a2525e444f8a12f57ba6f4c499c6d81ab9f3d3cbf9ac91df26c0e54962130 -MISC metadata.xml 367 BLAKE2B 07c7ff161f07b547325566650cd882c90dbe98ac5afc0015d68bc0338cebd678ac82c3a45edd3e4f7e613d5d493324899dc8e3b4ca448f447744f439e60458fd SHA512 bacbb17fc3518d3bf845d097d17dba772a745fd7343ab6e8c751a417a540c8c003f29b86c66374bee538d7a5d96ab95e67b1c619d47f80d0e332482daabee74a +EBUILD swi-prolog-7.7.18-r1.ebuild 3474 BLAKE2B 10150dce5d4c4890778593b2b5f45c29d9f9fa0fdaf31f3b375b582ec1779c0b73d8410d3111b4993b4a6a57737dda1cc0fb0ba2e5c256bb9ff3323c99918777 SHA512 bdd4cd2d21446fbb108f4dd4b9313a44da9c82d93e479ece9b3ac7a3b0da7df897e3f0266a589571eaee08304c63baf8c07ee902a25d7158925b9ece6a1c7181 +EBUILD swi-prolog-7.7.18.ebuild 3419 BLAKE2B cdddb2edae9aa893d13387d22e4b40b6d98dea32d227b078465f52952bc92d5a1b12bac23a6308a4e2185a74399155d5f338b46733bb75502a7fd4051b2e3194 SHA512 a3821b60339d2543cd9449e0e597642c838b9293555a8e2f72be1d79087c88b51b7a2525e444f8a12f57ba6f4c499c6d81ab9f3d3cbf9ac91df26c0e54962130 +MISC metadata.xml 419 BLAKE2B 6d92e0713ed8da803ff8b6c778e616882af2fdb1426a62ea7bb6a265bbfff9a5c7debb8bf6a25c4ab60ed54a865b79fa3da4a09bc8a9123acf63dcb32107f54e SHA512 f805393c909e4108fe72b94f131d37d45279af1a4b501f9c3ae12d21590ef9c19227ca2a4b2966239ddb84847ce979cfbfcf3f3a2d24b60cb23977c522ff59c3 diff --git a/dev-lang/swi-prolog/metadata.xml b/dev-lang/swi-prolog/metadata.xml index 83c5a19dc1d3..cf43740db6e7 100644 --- a/dev-lang/swi-prolog/metadata.xml +++ b/dev-lang/swi-prolog/metadata.xml @@ -8,5 +8,6 @@ Use libarchive for extension packs Use ossp-uuid for UUID pack + Use libyaml for YAML pack diff --git a/dev-lang/swi-prolog/swi-prolog-6.6.6.ebuild b/dev-lang/swi-prolog/swi-prolog-6.6.6.ebuild deleted file mode 100644 index e1429546e28b..000000000000 --- a/dev-lang/swi-prolog/swi-prolog-6.6.6.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -inherit eutils flag-o-matic java-pkg-opt-2 multilib - -PATCHSET_VER="0" - -DESCRIPTION="free, small, and standard compliant Prolog compiler" -HOMEPAGE="http://www.swi-prolog.org/" -SRC_URI="http://www.swi-prolog.org/download/stable/src/pl-${PV}.tar.gz - mirror://gentoo/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" -IUSE="archive debug doc +gmp hardened java minimal odbc +readline ssl static-libs test zlib X" - -RDEPEND="sys-libs/ncurses:= - archive? ( app-arch/libarchive ) - zlib? ( sys-libs/zlib ) - odbc? ( dev-db/unixODBC ) - readline? ( sys-libs/readline:= ) - gmp? ( dev-libs/gmp:0 ) - ssl? ( dev-libs/openssl:0 ) - java? ( >=virtual/jdk-1.4:= ) - X? ( - virtual/jpeg:0 - x11-libs/libX11 - x11-libs/libXft - x11-libs/libXpm - x11-libs/libXt - x11-libs/libICE - x11-libs/libSM )" - -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) - java? ( test? ( =dev-java/junit-3.8* ) )" - -S="${WORKDIR}/pl-${PV}" - -src_prepare() { - EPATCH_FORCE=yes - EPATCH_SUFFIX=patch - epatch "${WORKDIR}"/${PV} - - # OSX/Intel ld doesn't like an archive without table of contents - sed -i -e 's/-cru/-scru/' packages/nlp/libstemmer_c/Makefile.pl || die -} - -src_configure() { - append-flags -fno-strict-aliasing - use ppc && append-flags -mno-altivec - use hardened && append-flags -fno-unit-at-a-time - use debug && append-flags -DO_DEBUG - - # ARCH is used in the configure script to figure out host and target - # specific stuff - export ARCH=${CHOST} - - export CC_FOR_BUILD=$(tc-getBUILD_CC) - - cd "${S}"/src || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_enable gmp) \ - $(use_enable readline) \ - $(use_enable static-libs static) \ - --enable-shared \ - --enable-custom-flags COFLAGS="${CFLAGS}" - - if ! use minimal ; then - local jpltestconf - if use java && use test ; then - jpltestconf="--with-junit=$(java-config --classpath junit)" - fi - - cd "${S}/packages" || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_with archive) \ - $(use_with java jpl) \ - ${jpltestconf} \ - $(use_with odbc) \ - $(use_with ssl) \ - $(use_with X xpce) \ - $(use_with zlib) \ - COFLAGS='"${CFLAGS}"' - fi -} - -src_compile() { - cd "${S}"/src || die - emake - - if ! use minimal ; then - cd "${S}/packages" || die - emake - fi -} - -src_test() { - cd "${S}/src" || die - emake check - - if ! use minimal ; then - cd "${S}/packages" || die - emake check - fi -} - -src_install() { - emake -C src DESTDIR="${D}" install - - if ! use minimal ; then - emake -C packages DESTDIR="${D}" install - if use doc ; then - emake -C packages DESTDIR="${D}" html-install - fi - fi - - dodoc ReleaseNotes/relnotes-5.10 INSTALL README VERSION -} diff --git a/dev-lang/swi-prolog/swi-prolog-7.2.3-r1.ebuild b/dev-lang/swi-prolog/swi-prolog-7.2.3-r1.ebuild deleted file mode 100644 index 6c67f53b8051..000000000000 --- a/dev-lang/swi-prolog/swi-prolog-7.2.3-r1.ebuild +++ /dev/null @@ -1,135 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -inherit eutils flag-o-matic java-pkg-opt-2 multilib - -PATCHSET_VER="1" - -DESCRIPTION="free, small, and standard compliant Prolog compiler" -HOMEPAGE="http://www.swi-prolog.org/" -SRC_URI="http://www.swi-prolog.org/download/stable/src/swipl-${PV}.tar.gz - mirror://gentoo/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" -IUSE="archive debug doc +gmp hardened java libressl minimal odbc +readline ssl static-libs test uuid zlib X" - -RDEPEND="sys-libs/ncurses:= - archive? ( app-arch/libarchive ) - zlib? ( sys-libs/zlib ) - odbc? ( dev-db/unixODBC ) - readline? ( sys-libs/readline:= ) - gmp? ( dev-libs/gmp:0 ) - ssl? ( - !libressl? ( dev-libs/openssl:0 ) - libressl? ( dev-libs/libressl ) - ) - java? ( >=virtual/jdk-1.5:= ) - uuid? ( dev-libs/ossp-uuid ) - X? ( - virtual/jpeg:0 - x11-libs/libX11 - x11-libs/libXft - x11-libs/libXpm - x11-libs/libXt - x11-libs/libICE - x11-libs/libSM )" - -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) - java? ( test? ( =dev-java/junit-3.8* ) )" - -S="${WORKDIR}/swipl-${PV}" - -src_prepare() { - EPATCH_FORCE=yes - EPATCH_SUFFIX=patch - epatch "${WORKDIR}"/${PV} - - if ! use uuid; then - mv packages/clib/uuid.pl packages/clib/uuid.pl.unused || die - fi - - # OSX/Intel ld doesn't like an archive without table of contents - sed -i -e 's/-cru/-scru/' packages/nlp/libstemmer_c/Makefile.pl || die -} - -src_configure() { - append-flags -fno-strict-aliasing - use ppc && append-flags -mno-altivec - use hardened && append-flags -fno-unit-at-a-time - use debug && append-flags -DO_DEBUG - - # ARCH is used in the configure script to figure out host and target - # specific stuff - export ARCH=${CHOST} - - export CC_FOR_BUILD=$(tc-getBUILD_CC) - - cd "${S}"/src || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_enable gmp) \ - $(use_enable readline) \ - $(use_enable static-libs static) \ - --enable-shared \ - --enable-custom-flags COFLAGS="${CFLAGS}" - - if ! use minimal ; then - local jpltestconf - if use java && use test ; then - jpltestconf="--with-junit=$(java-config --classpath junit)" - fi - - cd "${S}/packages" || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_with archive) \ - $(use_with java jpl) \ - ${jpltestconf} \ - $(use_with odbc) \ - $(use_with ssl) \ - $(use_with X xpce) \ - $(use_with zlib) \ - COFLAGS='"${CFLAGS}"' - fi -} - -src_compile() { - cd "${S}"/src || die - emake - - if ! use minimal ; then - cd "${S}/packages" || die - emake - ./report-failed || die "Cannot report failed packages" - fi -} - -src_test() { - cd "${S}/src" || die - emake check - - if ! use minimal ; then - cd "${S}/packages" || die - emake check - ./report-failed || die "Cannot report failed packages" - fi -} - -src_install() { - emake -C src DESTDIR="${D}" install - - if ! use minimal ; then - emake -C packages DESTDIR="${D}" install - if use doc ; then - emake -C packages DESTDIR="${D}" html-install - fi - ./packages/report-failed || die "Cannot report failed packages" - fi - - dodoc ReleaseNotes/relnotes-5.10 INSTALL README VERSION -} diff --git a/dev-lang/swi-prolog/swi-prolog-7.7.13.ebuild b/dev-lang/swi-prolog/swi-prolog-7.7.13.ebuild deleted file mode 100644 index 38db2fe7a5aa..000000000000 --- a/dev-lang/swi-prolog/swi-prolog-7.7.13.ebuild +++ /dev/null @@ -1,148 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils flag-o-matic java-pkg-opt-2 multilib - -PATCHSET_VER="0" - -DESCRIPTION="free, small, and standard compliant Prolog compiler" -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 hardened java +libedit libressl minimal odbc pcre readline ssl static-libs test uuid zlib X" - -RDEPEND="sys-libs/ncurses:= - archive? ( app-arch/libarchive ) - berkdb? ( >=sys-libs/db-4:= ) - zlib? ( sys-libs/zlib ) - 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 ) - X? ( - virtual/jpeg:0 - x11-libs/libX11 - x11-libs/libXft - x11-libs/libXpm - x11-libs/libXt - x11-libs/libICE - x11-libs/libSM )" - -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) - java? ( test? ( =dev-java/junit-3.8* ) )" - -S="${WORKDIR}/swipl-${PV}" - -src_prepare() { - EPATCH_FORCE=yes - EPATCH_SUFFIX=patch - if [[ -d "${WORKDIR}"/${PV} ]] ; then - epatch "${WORKDIR}"/${PV} - fi - - if ! use uuid; then - mv packages/clib/uuid.pl packages/clib/uuid.pl.unused || die - fi - - # OSX/Intel ld doesn't like an archive without table of contents - sed -i -e 's/-cru/-scru/' packages/nlp/libstemmer_c/Makefile.pl || die - - eapply_user -} - -src_configure() { - append-flags -fno-strict-aliasing - use ppc && append-flags -mno-altivec - use hardened && append-flags -fno-unit-at-a-time - use debug && append-flags -DO_DEBUG - - # ARCH is used in the configure script to figure out host and target - # specific stuff - export ARCH=${CHOST} - - export CC_FOR_BUILD=$(tc-getBUILD_CC) - - cd "${S}"/src || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_enable gmp) \ - $(use_enable static-libs static) \ - --enable-shared \ - --enable-custom-flags COFLAGS="${CFLAGS} -DOF=_Z_OF" - - if ! use minimal ; then - local jpltestconf - if use java && use test ; then - jpltestconf="--with-junit=$(java-config --classpath junit)" - fi - - cd "${S}/packages" || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_with archive) \ - $(use_with berkdb bdb ) \ - $(use_with java jpl) \ - ${jpltestconf} \ - $(use_with libedit) \ - $(use_with pcre) \ - $(use_with odbc) \ - $(use_with readline) \ - $(use_with ssl) \ - $(use_with X xpce) \ - $(use_with zlib) \ - COFLAGS='"${CFLAGS}"' - fi -} - -src_compile() { - cd "${S}"/src || die - emake - - if ! use minimal ; then - cd "${S}/packages" || die - emake - ./report-failed || die "Cannot report failed packages" - fi -} - -src_test() { - cd "${S}/src" || die - emake check - - if ! use minimal ; then - unset DISPLAY - cd "${S}/packages" || die - emake \ - USE_PUBLIC_NETWORK_TESTS=false \ - USE_ODBC_TESTS=false \ - check - ./report-failed || die - fi -} - -src_install() { - emake -C src DESTDIR="${D}" install - - if ! use minimal ; then - emake -C packages DESTDIR="${D}" install - if use doc ; then - emake -C packages DESTDIR="${D}" html-install - fi - ./packages/report-failed || die "Cannot report failed packages" - fi - - dodoc ReleaseNotes/relnotes-5.10 INSTALL README.md VERSION -} diff --git a/dev-lang/swi-prolog/swi-prolog-7.7.14.ebuild b/dev-lang/swi-prolog/swi-prolog-7.7.14.ebuild deleted file mode 100644 index 38db2fe7a5aa..000000000000 --- a/dev-lang/swi-prolog/swi-prolog-7.7.14.ebuild +++ /dev/null @@ -1,148 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils flag-o-matic java-pkg-opt-2 multilib - -PATCHSET_VER="0" - -DESCRIPTION="free, small, and standard compliant Prolog compiler" -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 hardened java +libedit libressl minimal odbc pcre readline ssl static-libs test uuid zlib X" - -RDEPEND="sys-libs/ncurses:= - archive? ( app-arch/libarchive ) - berkdb? ( >=sys-libs/db-4:= ) - zlib? ( sys-libs/zlib ) - 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 ) - X? ( - virtual/jpeg:0 - x11-libs/libX11 - x11-libs/libXft - x11-libs/libXpm - x11-libs/libXt - x11-libs/libICE - x11-libs/libSM )" - -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) - java? ( test? ( =dev-java/junit-3.8* ) )" - -S="${WORKDIR}/swipl-${PV}" - -src_prepare() { - EPATCH_FORCE=yes - EPATCH_SUFFIX=patch - if [[ -d "${WORKDIR}"/${PV} ]] ; then - epatch "${WORKDIR}"/${PV} - fi - - if ! use uuid; then - mv packages/clib/uuid.pl packages/clib/uuid.pl.unused || die - fi - - # OSX/Intel ld doesn't like an archive without table of contents - sed -i -e 's/-cru/-scru/' packages/nlp/libstemmer_c/Makefile.pl || die - - eapply_user -} - -src_configure() { - append-flags -fno-strict-aliasing - use ppc && append-flags -mno-altivec - use hardened && append-flags -fno-unit-at-a-time - use debug && append-flags -DO_DEBUG - - # ARCH is used in the configure script to figure out host and target - # specific stuff - export ARCH=${CHOST} - - export CC_FOR_BUILD=$(tc-getBUILD_CC) - - cd "${S}"/src || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_enable gmp) \ - $(use_enable static-libs static) \ - --enable-shared \ - --enable-custom-flags COFLAGS="${CFLAGS} -DOF=_Z_OF" - - if ! use minimal ; then - local jpltestconf - if use java && use test ; then - jpltestconf="--with-junit=$(java-config --classpath junit)" - fi - - cd "${S}/packages" || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_with archive) \ - $(use_with berkdb bdb ) \ - $(use_with java jpl) \ - ${jpltestconf} \ - $(use_with libedit) \ - $(use_with pcre) \ - $(use_with odbc) \ - $(use_with readline) \ - $(use_with ssl) \ - $(use_with X xpce) \ - $(use_with zlib) \ - COFLAGS='"${CFLAGS}"' - fi -} - -src_compile() { - cd "${S}"/src || die - emake - - if ! use minimal ; then - cd "${S}/packages" || die - emake - ./report-failed || die "Cannot report failed packages" - fi -} - -src_test() { - cd "${S}/src" || die - emake check - - if ! use minimal ; then - unset DISPLAY - cd "${S}/packages" || die - emake \ - USE_PUBLIC_NETWORK_TESTS=false \ - USE_ODBC_TESTS=false \ - check - ./report-failed || die - fi -} - -src_install() { - emake -C src DESTDIR="${D}" install - - if ! use minimal ; then - emake -C packages DESTDIR="${D}" install - if use doc ; then - emake -C packages DESTDIR="${D}" html-install - fi - ./packages/report-failed || die "Cannot report failed packages" - fi - - dodoc ReleaseNotes/relnotes-5.10 INSTALL README.md VERSION -} diff --git a/dev-lang/swi-prolog/swi-prolog-7.7.15.ebuild b/dev-lang/swi-prolog/swi-prolog-7.7.15.ebuild deleted file mode 100644 index 38db2fe7a5aa..000000000000 --- a/dev-lang/swi-prolog/swi-prolog-7.7.15.ebuild +++ /dev/null @@ -1,148 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils flag-o-matic java-pkg-opt-2 multilib - -PATCHSET_VER="0" - -DESCRIPTION="free, small, and standard compliant Prolog compiler" -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 hardened java +libedit libressl minimal odbc pcre readline ssl static-libs test uuid zlib X" - -RDEPEND="sys-libs/ncurses:= - archive? ( app-arch/libarchive ) - berkdb? ( >=sys-libs/db-4:= ) - zlib? ( sys-libs/zlib ) - 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 ) - X? ( - virtual/jpeg:0 - x11-libs/libX11 - x11-libs/libXft - x11-libs/libXpm - x11-libs/libXt - x11-libs/libICE - x11-libs/libSM )" - -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) - java? ( test? ( =dev-java/junit-3.8* ) )" - -S="${WORKDIR}/swipl-${PV}" - -src_prepare() { - EPATCH_FORCE=yes - EPATCH_SUFFIX=patch - if [[ -d "${WORKDIR}"/${PV} ]] ; then - epatch "${WORKDIR}"/${PV} - fi - - if ! use uuid; then - mv packages/clib/uuid.pl packages/clib/uuid.pl.unused || die - fi - - # OSX/Intel ld doesn't like an archive without table of contents - sed -i -e 's/-cru/-scru/' packages/nlp/libstemmer_c/Makefile.pl || die - - eapply_user -} - -src_configure() { - append-flags -fno-strict-aliasing - use ppc && append-flags -mno-altivec - use hardened && append-flags -fno-unit-at-a-time - use debug && append-flags -DO_DEBUG - - # ARCH is used in the configure script to figure out host and target - # specific stuff - export ARCH=${CHOST} - - export CC_FOR_BUILD=$(tc-getBUILD_CC) - - cd "${S}"/src || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_enable gmp) \ - $(use_enable static-libs static) \ - --enable-shared \ - --enable-custom-flags COFLAGS="${CFLAGS} -DOF=_Z_OF" - - if ! use minimal ; then - local jpltestconf - if use java && use test ; then - jpltestconf="--with-junit=$(java-config --classpath junit)" - fi - - cd "${S}/packages" || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_with archive) \ - $(use_with berkdb bdb ) \ - $(use_with java jpl) \ - ${jpltestconf} \ - $(use_with libedit) \ - $(use_with pcre) \ - $(use_with odbc) \ - $(use_with readline) \ - $(use_with ssl) \ - $(use_with X xpce) \ - $(use_with zlib) \ - COFLAGS='"${CFLAGS}"' - fi -} - -src_compile() { - cd "${S}"/src || die - emake - - if ! use minimal ; then - cd "${S}/packages" || die - emake - ./report-failed || die "Cannot report failed packages" - fi -} - -src_test() { - cd "${S}/src" || die - emake check - - if ! use minimal ; then - unset DISPLAY - cd "${S}/packages" || die - emake \ - USE_PUBLIC_NETWORK_TESTS=false \ - USE_ODBC_TESTS=false \ - check - ./report-failed || die - fi -} - -src_install() { - emake -C src DESTDIR="${D}" install - - if ! use minimal ; then - emake -C packages DESTDIR="${D}" install - if use doc ; then - emake -C packages DESTDIR="${D}" html-install - fi - ./packages/report-failed || die "Cannot report failed packages" - fi - - dodoc ReleaseNotes/relnotes-5.10 INSTALL README.md VERSION -} diff --git a/dev-lang/swi-prolog/swi-prolog-7.7.16.ebuild b/dev-lang/swi-prolog/swi-prolog-7.7.16.ebuild deleted file mode 100644 index 38db2fe7a5aa..000000000000 --- a/dev-lang/swi-prolog/swi-prolog-7.7.16.ebuild +++ /dev/null @@ -1,148 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils flag-o-matic java-pkg-opt-2 multilib - -PATCHSET_VER="0" - -DESCRIPTION="free, small, and standard compliant Prolog compiler" -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 hardened java +libedit libressl minimal odbc pcre readline ssl static-libs test uuid zlib X" - -RDEPEND="sys-libs/ncurses:= - archive? ( app-arch/libarchive ) - berkdb? ( >=sys-libs/db-4:= ) - zlib? ( sys-libs/zlib ) - 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 ) - X? ( - virtual/jpeg:0 - x11-libs/libX11 - x11-libs/libXft - x11-libs/libXpm - x11-libs/libXt - x11-libs/libICE - x11-libs/libSM )" - -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) - java? ( test? ( =dev-java/junit-3.8* ) )" - -S="${WORKDIR}/swipl-${PV}" - -src_prepare() { - EPATCH_FORCE=yes - EPATCH_SUFFIX=patch - if [[ -d "${WORKDIR}"/${PV} ]] ; then - epatch "${WORKDIR}"/${PV} - fi - - if ! use uuid; then - mv packages/clib/uuid.pl packages/clib/uuid.pl.unused || die - fi - - # OSX/Intel ld doesn't like an archive without table of contents - sed -i -e 's/-cru/-scru/' packages/nlp/libstemmer_c/Makefile.pl || die - - eapply_user -} - -src_configure() { - append-flags -fno-strict-aliasing - use ppc && append-flags -mno-altivec - use hardened && append-flags -fno-unit-at-a-time - use debug && append-flags -DO_DEBUG - - # ARCH is used in the configure script to figure out host and target - # specific stuff - export ARCH=${CHOST} - - export CC_FOR_BUILD=$(tc-getBUILD_CC) - - cd "${S}"/src || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_enable gmp) \ - $(use_enable static-libs static) \ - --enable-shared \ - --enable-custom-flags COFLAGS="${CFLAGS} -DOF=_Z_OF" - - if ! use minimal ; then - local jpltestconf - if use java && use test ; then - jpltestconf="--with-junit=$(java-config --classpath junit)" - fi - - cd "${S}/packages" || die - econf \ - --libdir="${EPREFIX}"/usr/$(get_libdir) \ - $(use_with archive) \ - $(use_with berkdb bdb ) \ - $(use_with java jpl) \ - ${jpltestconf} \ - $(use_with libedit) \ - $(use_with pcre) \ - $(use_with odbc) \ - $(use_with readline) \ - $(use_with ssl) \ - $(use_with X xpce) \ - $(use_with zlib) \ - COFLAGS='"${CFLAGS}"' - fi -} - -src_compile() { - cd "${S}"/src || die - emake - - if ! use minimal ; then - cd "${S}/packages" || die - emake - ./report-failed || die "Cannot report failed packages" - fi -} - -src_test() { - cd "${S}/src" || die - emake check - - if ! use minimal ; then - unset DISPLAY - cd "${S}/packages" || die - emake \ - USE_PUBLIC_NETWORK_TESTS=false \ - USE_ODBC_TESTS=false \ - check - ./report-failed || die - fi -} - -src_install() { - emake -C src DESTDIR="${D}" install - - if ! use minimal ; then - emake -C packages DESTDIR="${D}" install - if use doc ; then - emake -C packages DESTDIR="${D}" html-install - fi - ./packages/report-failed || die "Cannot report failed packages" - fi - - dodoc ReleaseNotes/relnotes-5.10 INSTALL README.md VERSION -} diff --git a/dev-lang/swi-prolog/swi-prolog-7.7.18-r1.ebuild b/dev-lang/swi-prolog/swi-prolog-7.7.18-r1.ebuild new file mode 100644 index 000000000000..4e902730ae01 --- /dev/null +++ b/dev-lang/swi-prolog/swi-prolog-7.7.18-r1.ebuild @@ -0,0 +1,150 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils flag-o-matic java-pkg-opt-2 multilib + +PATCHSET_VER="0" + +DESCRIPTION="free, small, and standard compliant Prolog compiler" +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 hardened java +libedit libressl minimal odbc pcre readline ssl static-libs test uuid zlib X yaml" + +RDEPEND="sys-libs/ncurses:= + archive? ( app-arch/libarchive ) + berkdb? ( >=sys-libs/db-4:= ) + zlib? ( sys-libs/zlib ) + 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 ) + X? ( + virtual/jpeg:0 + x11-libs/libX11 + x11-libs/libXft + 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}" + +src_prepare() { + EPATCH_FORCE=yes + EPATCH_SUFFIX=patch + if [[ -d "${WORKDIR}"/${PV} ]] ; then + epatch "${WORKDIR}"/${PV} + fi + + if ! use uuid; then + mv packages/clib/uuid.pl packages/clib/uuid.pl.unused || die + fi + + # OSX/Intel ld doesn't like an archive without table of contents + sed -i -e 's/-cru/-scru/' packages/nlp/libstemmer_c/Makefile.pl || die + + eapply_user +} + +src_configure() { + append-flags -fno-strict-aliasing + use ppc && append-flags -mno-altivec + use hardened && append-flags -fno-unit-at-a-time + use debug && append-flags -DO_DEBUG + + # ARCH is used in the configure script to figure out host and target + # specific stuff + export ARCH=${CHOST} + + export CC_FOR_BUILD=$(tc-getBUILD_CC) + + cd "${S}"/src || die + econf \ + --libdir="${EPREFIX}"/usr/$(get_libdir) \ + $(use_enable gmp) \ + $(use_enable static-libs static) \ + --enable-shared \ + --enable-custom-flags COFLAGS="${CFLAGS} -DOF=_Z_OF" + + if ! use minimal ; then + local jpltestconf + if use java && use test ; then + jpltestconf="--with-junit=$(java-config --classpath junit)" + fi + + cd "${S}/packages" || die + econf \ + --libdir="${EPREFIX}"/usr/$(get_libdir) \ + $(use_with archive) \ + $(use_with berkdb bdb ) \ + $(use_with java jpl) \ + ${jpltestconf} \ + $(use_with libedit) \ + $(use_with pcre) \ + $(use_with odbc) \ + $(use_with readline) \ + $(use_with ssl) \ + $(use_with X xpce) \ + $(use_with yaml) \ + $(use_with zlib) \ + COFLAGS='"${CFLAGS}"' + fi +} + +src_compile() { + cd "${S}"/src || die + emake + + if ! use minimal ; then + cd "${S}/packages" || die + emake + ./report-failed || die "Cannot report failed packages" + fi +} + +src_test() { + cd "${S}/src" || die + emake check + + if ! use minimal ; then + unset DISPLAY + cd "${S}/packages" || die + emake \ + USE_PUBLIC_NETWORK_TESTS=false \ + USE_ODBC_TESTS=false \ + check + ./report-failed || die + fi +} + +src_install() { + emake -C src DESTDIR="${D}" install + + if ! use minimal ; then + emake -C packages DESTDIR="${D}" install + if use doc ; then + emake -C packages DESTDIR="${D}" html-install + fi + ./packages/report-failed || die "Cannot report failed packages" + fi + + dodoc ReleaseNotes/relnotes-5.10 INSTALL README.md VERSION +} diff --git a/dev-lang/swi-prolog/swi-prolog-7.7.18.ebuild b/dev-lang/swi-prolog/swi-prolog-7.7.18.ebuild new file mode 100644 index 000000000000..38db2fe7a5aa --- /dev/null +++ b/dev-lang/swi-prolog/swi-prolog-7.7.18.ebuild @@ -0,0 +1,148 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils flag-o-matic java-pkg-opt-2 multilib + +PATCHSET_VER="0" + +DESCRIPTION="free, small, and standard compliant Prolog compiler" +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 hardened java +libedit libressl minimal odbc pcre readline ssl static-libs test uuid zlib X" + +RDEPEND="sys-libs/ncurses:= + archive? ( app-arch/libarchive ) + berkdb? ( >=sys-libs/db-4:= ) + zlib? ( sys-libs/zlib ) + 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 ) + X? ( + virtual/jpeg:0 + x11-libs/libX11 + x11-libs/libXft + x11-libs/libXpm + x11-libs/libXt + x11-libs/libICE + x11-libs/libSM )" + +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) + java? ( test? ( =dev-java/junit-3.8* ) )" + +S="${WORKDIR}/swipl-${PV}" + +src_prepare() { + EPATCH_FORCE=yes + EPATCH_SUFFIX=patch + if [[ -d "${WORKDIR}"/${PV} ]] ; then + epatch "${WORKDIR}"/${PV} + fi + + if ! use uuid; then + mv packages/clib/uuid.pl packages/clib/uuid.pl.unused || die + fi + + # OSX/Intel ld doesn't like an archive without table of contents + sed -i -e 's/-cru/-scru/' packages/nlp/libstemmer_c/Makefile.pl || die + + eapply_user +} + +src_configure() { + append-flags -fno-strict-aliasing + use ppc && append-flags -mno-altivec + use hardened && append-flags -fno-unit-at-a-time + use debug && append-flags -DO_DEBUG + + # ARCH is used in the configure script to figure out host and target + # specific stuff + export ARCH=${CHOST} + + export CC_FOR_BUILD=$(tc-getBUILD_CC) + + cd "${S}"/src || die + econf \ + --libdir="${EPREFIX}"/usr/$(get_libdir) \ + $(use_enable gmp) \ + $(use_enable static-libs static) \ + --enable-shared \ + --enable-custom-flags COFLAGS="${CFLAGS} -DOF=_Z_OF" + + if ! use minimal ; then + local jpltestconf + if use java && use test ; then + jpltestconf="--with-junit=$(java-config --classpath junit)" + fi + + cd "${S}/packages" || die + econf \ + --libdir="${EPREFIX}"/usr/$(get_libdir) \ + $(use_with archive) \ + $(use_with berkdb bdb ) \ + $(use_with java jpl) \ + ${jpltestconf} \ + $(use_with libedit) \ + $(use_with pcre) \ + $(use_with odbc) \ + $(use_with readline) \ + $(use_with ssl) \ + $(use_with X xpce) \ + $(use_with zlib) \ + COFLAGS='"${CFLAGS}"' + fi +} + +src_compile() { + cd "${S}"/src || die + emake + + if ! use minimal ; then + cd "${S}/packages" || die + emake + ./report-failed || die "Cannot report failed packages" + fi +} + +src_test() { + cd "${S}/src" || die + emake check + + if ! use minimal ; then + unset DISPLAY + cd "${S}/packages" || die + emake \ + USE_PUBLIC_NETWORK_TESTS=false \ + USE_ODBC_TESTS=false \ + check + ./report-failed || die + fi +} + +src_install() { + emake -C src DESTDIR="${D}" install + + if ! use minimal ; then + emake -C packages DESTDIR="${D}" install + if use doc ; then + emake -C packages DESTDIR="${D}" html-install + fi + ./packages/report-failed || die "Cannot report failed packages" + fi + + dodoc ReleaseNotes/relnotes-5.10 INSTALL README.md VERSION +} diff --git a/dev-lang/yap/Manifest b/dev-lang/yap/Manifest index 6d2e7b5834db..20eddccef343 100644 --- a/dev-lang/yap/Manifest +++ b/dev-lang/yap/Manifest @@ -1,4 +1,4 @@ -DIST yap-6.3.3-gentoo-patchset-9.tar.gz 5430 BLAKE2B 77c71b401d75bfc50a1b7d76db5df9d58fd06722a80fafc706dcfcd15dc54c250057a531f421941ced3f905757763cd39057b9201a8e7e99d6b6a7eefca7a778 SHA512 a698d0fe93cfa558db919f0333964d63ed656d6375740bf15264871dd17e3dc9f371f68b798701ca67d6420d6eccfaa79dee4c218bb51330e8b75bb555f0541c +DIST yap-6.3.3-gentoo-patchset-10.tar.gz 5786 BLAKE2B cccfb8d3cf46bf6e8b99ada7b995d22d3deab62ab4c0833589d84afa3a2a451d4c295f366efe01db2f7245cc550cc8992498d1e2fa926545dfee2b6dc12e5354 SHA512 d7d172491fb5bc30df04b16ed9d82aa44860b18b0218ad636e2ad1199cbf180f9daf8964b17833df6ca55700fa7c3e00edcb01c6dd85a12a7ee8b08a69d71dad DIST yap-6.3.3.tar.gz 7879301 BLAKE2B 1b12a3113dd57634df64680726fd49575979b84126a7a9e1f4d1429be90e1b95599166151ffe62c9ef990ac3c32f57a1efae081b864fc22225c93d21807f412b SHA512 4ef45277ec84b6e072fa54afc7d6c18f11c3a0cdf477e35e35a0ce2181c9ff2e693f8735f63a1899373f6baf79ce0a972b37e1ae6ed8271bec60663f477bbe80 -EBUILD yap-6.3.3.ebuild 2872 BLAKE2B 95ec78bc82c473e29ed888814a18b073225b0790bc3f8d9905bde555d6eaef5fdc1d5bc57ec50eb3bd4c4c4e21095dad8ece9a43159a090a7896ae32226a3951 SHA512 06eea12f6b2ddad47f1b9017cc14cfb393907c735f541a505ec723fe568067e9e4ca4d987c9dd3875067650b6f2ffee50983856892cd802c265f127631c6ec94 +EBUILD yap-6.3.3.ebuild 2873 BLAKE2B 7b4f207643efb00b3f16318239e17fde659c9f500199b4d028fa10c17a882c63cd9a0666762979f5b365993e5e1ff28167d1c417d05d90457b43feb1712686ad SHA512 9cab901c1ff2a6f0ae277c7cfb17db019c25409e574d8f1dd4388e8f5a7e449c75040d84aba65db0f6a9f3c0dcbdfb54da5d1c106e8309a3c1f97d934f9d7801 MISC metadata.xml 314 BLAKE2B af1c9bedbf26431e7a624c520a4c93ca9eff16f2539741b01ccf5da16c710c82d3820e3ad647a36a4629dc7b316a18c1b1306314200843e1d4d6b95c8c829442 SHA512 c5bd279aec3b80e6c08dfaa85cf091cbfcbf9380f1e5a8a0fcd6f27297368b92906340ae9dfd5176f37d36e4fb61ca772448c0248121d8e302c181bf670e57bc diff --git a/dev-lang/yap/yap-6.3.3.ebuild b/dev-lang/yap/yap-6.3.3.ebuild index c56e733abcdf..dd21303298e8 100644 --- a/dev-lang/yap/yap-6.3.3.ebuild +++ b/dev-lang/yap/yap-6.3.3.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=5 inherit eutils flag-o-matic java-pkg-opt-2 multilib -PATCHSET_VER="9" +PATCHSET_VER="10" DESCRIPTION="YAP is a high-performance Prolog compiler" HOMEPAGE="http://www.dcc.fc.up.pt/~vsc/Yap/" -- cgit v1.2.3