diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2020-11-21 11:26:52 +0000 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2020-11-21 11:26:52 +0000 |
commit | ec27d0dad1edeb19b14c5fba8e1ecf0861e669c0 (patch) | |
tree | d6534e26074a436be531a8c0cd5cfc9bba1c06c0 /dev-lang | |
parent | x11-misc/py3status: version bump (diff) | |
download | gentoo-ec27d0dad1edeb19b14c5fba8e1ecf0861e669c0.tar.gz gentoo-ec27d0dad1edeb19b14c5fba8e1ecf0861e669c0.tar.bz2 gentoo-ec27d0dad1edeb19b14c5fba8e1ecf0861e669c0.zip |
dev-lang/erlang: bump up to 23.1.4
Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/erlang/Manifest | 1 | ||||
-rw-r--r-- | dev-lang/erlang/erlang-23.1.4.ebuild | 159 |
2 files changed, 160 insertions, 0 deletions
diff --git a/dev-lang/erlang/Manifest b/dev-lang/erlang/Manifest index 55113b64c129..c298c06cb1ee 100644 --- a/dev-lang/erlang/Manifest +++ b/dev-lang/erlang/Manifest @@ -2,6 +2,7 @@ DIST erlang-23.0.4.tar.gz 56394805 BLAKE2B 10a4e9e3084ad2d1bb10fa736d86eb03fa6b2 DIST erlang-23.1.1.tar.gz 56498218 BLAKE2B cd513a2d45aecc12503df8765e0f4170001373c0e6b35b4c01d7471906408558a3b6bbf9c189858fce3cb8fd7020270813550e2099f04c8094afc49dcd070016 SHA512 572164e601796bc7b0df3818c859b23872f148dcc72f44f611d9d5684b0c9974b00496aa0fd521dc01d0d3481556b6641d3cbd859bd7bfadefd15115728d16d9 DIST erlang-23.1.2.tar.gz 56501379 BLAKE2B ebedf3ebec4b5c4b6818b1f5279536059bdf58eba98bd3328952f2ff4ce3d121443b377a2cd2fc0537135daf8d986428905d6321bd26a626456949e68dd3b5e7 SHA512 c6f097c5cfb3a188b7c5e411a2cbd3f95eab50be18292a5e84d5f628dfb791497800d79810367e9d1ac1c8e6aa5c7622c9bef5e58eef02226a77b5307742360e DIST erlang-23.1.3.tar.gz 56501389 BLAKE2B a9a463d71c286e51abdf5c1404228909b4e20e8477997a0de6a223cec166192aecb23d76ad81e6b37cac8309d94972408d265fa7653d1ba4942bf76bf2f417bf SHA512 ae88070b226df54c22693887352d3e0bd8cc3f77a872731cf52b59c386c0416efdc7f00db2690f4ab566e95d31fc828e4039ae1e9914fe35220d354c12bf086c +DIST erlang-23.1.4.tar.gz 56503340 BLAKE2B f4b26aa5882bb3d2218897706734798a80cbb5113008be70b2a0c793a5cc1eb01eb1ace17ae525e19f176e47ffc85b108240b7fec71cf8eedb4d67860ecaa98b SHA512 864b69fc69f3843dfe839faf1c1e86ec505282ec4d86ed1add445998ba28bcc623522471d8d8636a9cf1e24e84f99d5cae3880a4b1171abab9651ef242a55367 DIST erlang_doc_html_23.0.tar.gz 36238699 BLAKE2B bce5fb1d766d3a795728cf7c00529129690f52e5dbe7363095cb7e63d5331a4dfc05c2042d24f10c7f3facbd187284aa323a92c0ed7515c1750aee4cd890fbd4 SHA512 bd0b1adf8639674d31152024e1351105249c6e6f93f28362e9e4b66ce6daadbe5eef5917a5889c926130e81bd000cfc44895ebaa309bf9a0c1c125713b715927 DIST erlang_doc_html_23.1.tar.gz 36285075 BLAKE2B e2e24ac4cecfc9c10853fd3718e8e332579a91bf25eaaf9e0fc2044d89bcd6d03fd251d6a8ab64a86439f1244e275ef398701b47933a741d4e64016838db48aa SHA512 c8fecb08344c9c7a4c7b911ac4f73e2d8c0c3778d665098c3377e055346a7ecfcc378bca28dff768c36dc7bf7447308f4fb58273875c22f2d6cd896fd6232656 DIST erlang_doc_man_23.0.tar.gz 1383486 BLAKE2B 63a9989c26797fe07fbd0ccca0d8425d94bc60a86fa93b5332c8d1f3e12a0071d9e6d4759be73bf44bf35dd14723b9e6707a84ba834e1775bc28aeec1edbe168 SHA512 81575ce7b267f5bb48bd844808e8edd4e373640bbc481372b288602eb9d3c9917e6c7c040c035b63a2f6edf437c3d826d6afdf5801765b51d9edd4a3b2a5b16f diff --git a/dev-lang/erlang/erlang-23.1.4.ebuild b/dev-lang/erlang/erlang-23.1.4.ebuild new file mode 100644 index 000000000000..a809e52a684b --- /dev/null +++ b/dev-lang/erlang/erlang-23.1.4.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +WX_GTK_VER="3.0-gtk3" + +inherit elisp-common java-pkg-opt-2 systemd wxwidgets + +# NOTE: If you need symlinks for binaries please tell maintainers or +# open up a bug to let it be created. + +UPSTREAM_V="$(ver_cut 1-2)" + +DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)" +HOMEPAGE="https://www.erlang.org/" +SRC_URI="https://github.com/erlang/otp/archive/OTP-${PV}.tar.gz -> ${P}.tar.gz + http://erlang.org/download/otp_doc_man_${UPSTREAM_V}.tar.gz -> ${PN}_doc_man_${UPSTREAM_V}.tar.gz + doc? ( http://erlang.org/download/otp_doc_html_${UPSTREAM_V}.tar.gz -> ${PN}_doc_html_${UPSTREAM_V}.tar.gz )" + +LICENSE="Apache-2.0" +# We use this subslot because Compiled HiPE Code can be loaded on the exact +# same build of ERTS that was used when compiling the code. See +# http://erlang.org/doc/system_principles/misc.html for more information. +SLOT="0/${PV}" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" +IUSE="doc emacs +hipe java +kpoll libressl odbc sctp ssl systemd tk wxwidgets" + +RDEPEND=" + acct-group/epmd + acct-user/epmd + sys-libs/ncurses:0 + sys-libs/zlib + emacs? ( >=app-editors/emacs-23.1:* ) + java? ( >=virtual/jdk-1.8:* ) + odbc? ( dev-db/unixODBC ) + sctp? ( net-misc/lksctp-tools ) + ssl? ( + !libressl? ( >=dev-libs/openssl-0.9.7d:0= ) + libressl? ( dev-libs/libressl:0= ) + ) + systemd? ( sys-apps/systemd ) + wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] ) +" +DEPEND="${RDEPEND} + dev-lang/perl +" + +S="${WORKDIR}/otp-OTP-${PV}" + +PATCHES=( + "${FILESDIR}"/18.2.1-wx3.0.patch + "${FILESDIR}"/${PN}-22.0-dont-ignore-LDFLAGS.patch + "${FILESDIR}"/${PN}-23.1.2-ac2.70.patch +) + +SITEFILE=50"${PN}"-gentoo.el + +src_prepare() { + default + + ./otp_build autoconf || die +} + +src_configure() { + use wxwidgets && setup-wxwidgets + + local myconf=( + --disable-builtin-zlib + $(use_enable hipe) + $(use_enable kpoll kernel-poll) + $(use_with java javac) + $(use_enable sctp) + $(use_with ssl ssl "${EPREFIX}"/usr) + $(use_enable ssl dynamic-ssl-lib) + $(use_enable systemd) + $(usex wxwidgets "--with-wx-config=${WX_CONFIG}" "--with-wxdir=/dev/null") + ) + econf "${myconf[@]}" +} + +src_compile() { + emake + + if use emacs ; then + pushd lib/tools/emacs &>/dev/null || die + elisp-compile *.el + popd &>/dev/null || die + fi +} + +extract_version() { + local path="$1" + local var_name="$2" + sed -n -e "/^${var_name} = \(.*\)$/s::\1:p" "${S}/${path}/vsn.mk" || die "extract_version() failed" +} + +src_install() { + local erl_libdir_rel="$(get_libdir)/erlang" + local erl_libdir="/usr/${erl_libdir_rel}" + local erl_interface_ver="$(extract_version lib/erl_interface EI_VSN)" + local erl_erts_ver="$(extract_version erts VSN)" + local my_manpath="/usr/share/${PN}/man" + + [[ -z "${erl_erts_ver}" ]] && die "Couldn't determine erts version" + [[ -z "${erl_interface_ver}" ]] && die "Couldn't determine interface version" + + emake INSTALL_PREFIX="${D}" install + + if use doc ; then + # Note: we explicitly install docs into: + # /usr/share/doc/${PF}/{doc,lib,erts-*} + # To maintain that layout we gather everything in 'html-docs'. + # See bug #684376. + mkdir html-docs || die + mv "${WORKDIR}"/doc "${WORKDIR}"/lib "${WORKDIR}"/erts-* html-docs/ || die + local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" html-docs/. ) + docompress -x /usr/share/doc/${PF} + else + local DOCS=("README.md") + fi + + einstalldocs + + dosym "../${erl_libdir_rel}/bin/erl" /usr/bin/erl + dosym "../${erl_libdir_rel}/bin/erlc" /usr/bin/erlc + dosym "../${erl_libdir_rel}/bin/escript" /usr/bin/escript + dosym "../${erl_libdir_rel}/lib/erl_interface-${erl_interface_ver}/bin/erl_call" /usr/bin/erl_call + dosym "../${erl_libdir_rel}/erts-${erl_erts_ver}/bin/beam.smp" /usr/bin/beam.smp + + ## Clean up the no longer needed files + rm "${ED}/${erl_libdir}/Install" || die + + insinto "${my_manpath}" + doins -r "${WORKDIR}"/man/* + # extend MANPATH, so the normal man command can find it + # see bug 189639 + newenvd - "90erlang" <<-_EOF_ + MANPATH="${my_manpath}" + _EOF_ + + if use emacs ; then + elisp-install erlang lib/tools/emacs/*.{el,elc} + sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \ + "${FILESDIR}/${SITEFILE}" > "${T}/${SITEFILE}" || die + elisp-site-file-install "${T}/${SITEFILE}" + fi + + newinitd "${FILESDIR}"/epmd.init-r2 epmd + newconfd "${FILESDIR}"/epmd.confd-r2 epmd + use systemd && systemd_newunit "${FILESDIR}"/epmd.service-r1 epmd.service +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} |