From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id A71A215806E for ; Thu, 18 May 2023 16:48:07 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id D4B9BE075F; Thu, 18 May 2023 16:48:06 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id B4681E075F for ; Thu, 18 May 2023 16:48:06 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id D5BA4340B10 for ; Thu, 18 May 2023 16:48:05 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 575DCA65 for ; Thu, 18 May 2023 16:48:04 +0000 (UTC) From: "Matthew Smith" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Matthew Smith" Message-ID: <1684428441.4dc65659ee3c1c188839bdd6ce338b3a747e2df2.matthew@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/erlang/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-lang/erlang/Manifest dev-lang/erlang/erlang-26.0.ebuild X-VCS-Directories: dev-lang/erlang/ X-VCS-Committer: matthew X-VCS-Committer-Name: Matthew Smith X-VCS-Revision: 4dc65659ee3c1c188839bdd6ce338b3a747e2df2 X-VCS-Branch: master Date: Thu, 18 May 2023 16:48:04 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: cfdcaeac-a165-4826-8809-b7c761d83e46 X-Archives-Hash: abc609b13d7bf583a75b6ff69bfe92fa commit: 4dc65659ee3c1c188839bdd6ce338b3a747e2df2 Author: Matthew Smith gentoo org> AuthorDate: Thu May 18 16:47:21 2023 +0000 Commit: Matthew Smith gentoo org> CommitDate: Thu May 18 16:47:21 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4dc65659 dev-lang/erlang: add 26.0 Signed-off-by: Matthew Smith gentoo.org> dev-lang/erlang/Manifest | 3 + dev-lang/erlang/erlang-26.0.ebuild | 174 +++++++++++++++++++++++++++++++++++++ 2 files changed, 177 insertions(+) diff --git a/dev-lang/erlang/Manifest b/dev-lang/erlang/Manifest index 68c317f27eb1..781941551332 100644 --- a/dev-lang/erlang/Manifest +++ b/dev-lang/erlang/Manifest @@ -4,11 +4,14 @@ DIST erlang-25.1.2.tar.gz 59975596 BLAKE2B d86e90f121cc1252301b88ce3551a9f4085aa DIST erlang-25.2.2.tar.gz 60014706 BLAKE2B 07727608699c264d24a6208c936694f084850651682a587b7f38b7ee2965850541dec3a3edf1e36f7571d2be4ed3b9eb89572a2591951b5e856ec64af3e38edf SHA512 e93f5b7079f9cf1e00528587a8fc96ed5b4a29b6b329a38e238341f79d98f20f811548875fbaf137fd64b38d5950989e885a2293680475a0b7198307eef1de4a DIST erlang-25.2.3.tar.gz 60022013 BLAKE2B ad890fab56e126cda89a05ba5de906db9c573a9118cad365d2c429f47631d8edf0fe7762805286facb71077358df461de88896f92abe524b88568ce0c4d6b8ee SHA512 aa51ebcb9c4977ebd695d416488fc8ac94e7d19b962f6d470c5e6377151781ed6c50319eeb2cbbac75438d9f759302d1e48d2c2118ec86063a33a22ed8651f27 DIST erlang-25.3.tar.gz 60060354 BLAKE2B c18beb1aa00f88ac303ce2488da6973cd63b4cb3c611d9ee93bdb8a522fa068bfab2307448d085e40c7c6e1b300a1d2b72f0626e8fd236c84617ff031afcb569 SHA512 cf104918917e33db250b48aaad3c098899739358035d764ea2ee1fc9ba7937504190752163ce8430bdbfc576ce2c2533d4f50fc8f0994ff155e3df188a8db99e +DIST erlang-26.0.tar.gz 61355457 BLAKE2B 4f5abc04b794d2b2b9e27e20be9197a7c81113607a5ca2605c189212eef70db55eee5120eca36426a2c16237f576751605cdc943c7c2f070d68c6cca6585c46b SHA512 732e259f2018102b62a5d8076953a6a78d3e1f1714edde2c306fe863e5377b9a7f87052e03e92df93eea270a608b29ab4e22d5841d1314f9a532dac4aeff5436 DIST erlang_doc_html_25.0.tar.gz 37051192 BLAKE2B 2d79ccb3b850b199de0a7da83c6358b9f3cf63826aeddb54307640129c1f96689200895c3c3ec52f503362945e7c6083a7317cd4ea57dc7d6772844801843c74 SHA512 6ce8423705f86fb2cd403e9c51089d7b2569ba93498f9143b5dbac85eb10b403c4bc948f8a68e55c40116cdd9a93f050bb037f94fc3c8651175d9065d2c598be DIST erlang_doc_html_25.1.tar.gz 37197742 BLAKE2B 432e89471cfbf15ba35507f66958df559e38d5a4be1b4fe07e2abdaaacc1642dd9e55c2d67ce893fa108c38e25929cb58fb4de2474ec69273222b3ef0a7e0a5d SHA512 3e39f505030a3d0422b4a79f31a2af830eeff5076c3dddeafd336d0a91a4ac895a92a17cf5b4f6265d0a4b150c0548ecd0cc38174ce0488a5328e16307eaedc3 DIST erlang_doc_html_25.2.tar.gz 37090722 BLAKE2B d2169d11266a2a252b9b4d6523275a8e31e059e5c2ded868992d657c311ca85ee5c6d25b22798a55c9d2c142dbbc9d65438ae3ce98a5607696e09e18e63bb845 SHA512 25356288c605aad8ae17f39a3c9c27f2afd0630b177a554193354a79c19b9ec3cfaeefedf89760ba90c6b86674e59fab9aee7278ff134522793dad39012b8780 DIST erlang_doc_html_25.3.tar.gz 37134864 BLAKE2B 86af9f6eacccbdc8e66e1407a29bc70620052f5968f4378df751f89795f98898a057c2e187553e5b938b5a9cc55a223fedb9bc2936cb3ade5f444e05a810f7d0 SHA512 d469f6088a20a840687ceed66b3d4ef3bf9446a00ea490f6bb14e5ec8a0b642ac0ff14243010e45483e9d4d33742525916d05ec93e171fe9f5e0dfbac3733837 +DIST erlang_doc_html_26.0.tar.gz 37434137 BLAKE2B 0a1bd0f4966d90cc5aaa8852b280204d81271af0449a019399dfcbeab4b2427a91fa57e1dafe24c55ee1a7abf5f52c019ca7454f7c2ca8dbe604d60ef437a4e0 SHA512 c11cf064808bee3a9e8334ee597daadfff397bd700622c80affa8df127a53de3cb5685c3338fa6d28b5c7a5c171379e0289f557dc3fc6ab0459ada757219ce3e DIST erlang_doc_man_25.0.tar.gz 1711510 BLAKE2B 743efa8edbeeb99e37e227c1e5e3be1825a391007e1c220ba22163c528edda8941b1dca0951cc02aff016dda0d52f3a6ff4fdbbbe279ce067c7a1993997ce6b4 SHA512 c6b6490961228893253e11d5bb88cbd30ba2cb1c13819a85db6699b437f0327fb55962accb6b602a4ec5ffc423882205d05873b064fb3e4c52950a423706fb09 DIST erlang_doc_man_25.1.tar.gz 1714586 BLAKE2B b37b03f60d662d02018515de5ca16b3891a32c5ebc1bd1cc72ac17aadd409c3c5084898f1605d4a8aa579ebce4b5a8f75a39fa90e5fc4d233b2f7e9b8121768d SHA512 4194779c8975234ad8f693bbe43c9eefd2d954ed7fec493493c4a6a9028b58fd55ce6479a113d863bd91ff4732b88c4b8cae3e3a16846add5c7af6616317f595 DIST erlang_doc_man_25.2.tar.gz 1717206 BLAKE2B 26649d878b09e975949ddf1a981b345fd9cbdf8d3f35af5067c9273a60a7ec1c7216d63acc438dd59310560022c22b2ac7fbf4cd7b7947811ad8e1d185cf6b2f SHA512 939c6d61c360b71690e509f02f39061f0cfcb8c63c99a0255010503c89123aa59ccdd2cfdc1c055735f579e01c566083a48fe8cec5c467e447978fafda7a0aef DIST erlang_doc_man_25.3.tar.gz 1719335 BLAKE2B d3d91e5920648ddb5b8375c969586b904d743f1d60acbefddd98577bd11b82246a2f149fdaa8ff1d16e8efc9f3793ce1dbc61efc9bc28c68f50919460d1e8e24 SHA512 9f2e6c4e4a39dd41deb6a2d7b7a04dd374f110bf776c8d08f3139265a8fa00e7c9420e2d2c406231a8d2748bdc65ca7e40ef1d4b9bfe6b06f52a24881ee8747d +DIST erlang_doc_man_26.0.tar.gz 1742307 BLAKE2B cd52b6e148fd45a1a1b427fa9dccdb7127082f0cfc23a850c519a9dc9e6cc7e0fca3894433d44dcad27e2a8123626b09d86b7f581e503d977f0977ef62a574d8 SHA512 9e3fc06667e633fd1c90f57d86159cbbdbb6105719e3c1ab6733e5190aa48b8c8fbf735172e5763b6893e89a56ec13c0afcdf6c6505de739312b37ff246ed113 diff --git a/dev-lang/erlang/erlang-26.0.ebuild b/dev-lang/erlang/erlang-26.0.ebuild new file mode 100644 index 000000000000..c3fa924e7389 --- /dev/null +++ b/dev-lang/erlang/erlang-26.0.ebuild @@ -0,0 +1,174 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +WX_GTK_VER="3.0-gtk3" + +inherit elisp-common flag-o-matic java-pkg-opt-2 systemd toolchain-funcs 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 + https://github.com/erlang/otp/releases/download/OTP-${UPSTREAM_V}/otp_doc_man_${UPSTREAM_V}.tar.gz -> ${PN}_doc_man_${UPSTREAM_V}.tar.gz + doc? ( https://github.com/erlang/otp/releases/download/OTP-${UPSTREAM_V}/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 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="doc emacs java +kpoll 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? ( >=dev-libs/openssl-0.9.7d: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}"/${PN}-22.0-dont-ignore-LDFLAGS.patch + "${FILESDIR}"/${PN}-24.0.2-serial-configure.patch + "${FILESDIR}"/${PN}-25.1.2-c99.patch # Bug #882887 +) + +SITEFILE=50"${PN}"-gentoo.el + +src_prepare() { + default + + tc-export AR CPP CXX LD + + # bug #797886: erlang's VM does unsafe casts for ints + # to pointers and back. This breaks on gcc-11 -flto. + append-flags -fno-strict-aliasing +} + +src_configure() { + use wxwidgets && setup-wxwidgets + + local myconf=( + --disable-builtin-zlib + + # don't search for static zlib + --with-ssl-zlib=no + + $(use_enable kpoll kernel-poll) + $(use_with java javac) + $(use_enable sctp) + $(use_with ssl ssl) + $(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 doc ; then + emake docs DOC_TARGETS=chunks + fi + + 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 + emake INSTALL_PREFIX="${D}" install-docs DOC_TARGETS=chunks + + # 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-r3 epmd + use systemd && systemd_newunit "${FILESDIR}"/epmd.service-r1 epmd.service +} + +src_test() { + # Only run a subset of tests to test that everything was built + # successfully, otherwise we will be here for a long time. + emake kernel_test ARGS="-suite os_SUITE" +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +}