Gentoo Archives: gentoo-commits

From: "罗百科" <patrick@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/erlang/
Date: Sun, 07 Nov 2021 08:34:39
Message-Id: 1636274072.afa0e8efa838f77f4accc1db077989cf0d3b1385.patrick@gentoo
1 commit: afa0e8efa838f77f4accc1db077989cf0d3b1385
2 Author: Patrick Lauer <patrick <AT> gentoo <DOT> org>
3 AuthorDate: Sun Nov 7 08:34:20 2021 +0000
4 Commit: 罗百科 <patrick <AT> gentoo <DOT> org>
5 CommitDate: Sun Nov 7 08:34:32 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=afa0e8ef
7
8 dev-lang/erlang: Bump
9
10 Package-Manager: Portage-3.0.28, Repoman-3.0.3
11 Signed-off-by: Patrick Lauer <patrick <AT> gentoo.org>
12
13 dev-lang/erlang/Manifest | 4 +
14 dev-lang/erlang/erlang-23.3.4.8.ebuild | 155 +++++++++++++++++++++++++++++++
15 dev-lang/erlang/erlang-24.1.4.ebuild | 162 +++++++++++++++++++++++++++++++++
16 3 files changed, 321 insertions(+)
17
18 diff --git a/dev-lang/erlang/Manifest b/dev-lang/erlang/Manifest
19 index 01b99bb6144..9c5e0cc9d42 100644
20 --- a/dev-lang/erlang/Manifest
21 +++ b/dev-lang/erlang/Manifest
22 @@ -1,6 +1,10 @@
23 +DIST erlang-23.3.4.8.tar.gz 57242259 BLAKE2B 9959fd9ae0d8a0a4639ad0ff9f5a16079cdd7af525e0dc1189a3cc6741f653e511c84da77344465e7f365a8cbc07f691d3cfec23b062c2e274dbb8d4911733a2 SHA512 14449701a88b18103266cd562cad8b0f10e7abb153c7fe2d39792c232a11c5c5ea12e75eb17bac57e30cc43d1e907ae988a1beb662b4d7309f35231c76bdb381
24 DIST erlang-23.3.4.tar.gz 56664814 BLAKE2B ef8aa8d5a6fd1efc02a35459d1cb15eecf5f948127266bf782544e1da9a59765aca15070ea92df5558a4de017cc810e3542e2393e9470243fc6d9be13e9f37b6 SHA512 c8c5a9676163058276c703a0db0373508fad0ed9dff0aa9806ce59115ca766ff1d343c5a3917a920b249655fe188b974482ff378e9173c9fe00ea3907e618da5
25 DIST erlang-24.0.2.tar.gz 58878378 BLAKE2B c2ea65cac39b654d9037ea9fcb47eb6eea96dec2483378f414bc33475e850121c1adaa30ea880070624496be9779539f98c864b0dd6eb92d3c4badaa121353d1 SHA512 d85e3e6a4177ac8c696dd666183f624065a89d35aa7f031cd6a7b105e0d1f9007de8d413880df47daf8f695485d952a81a14a01313b52f66534c1e5bd050093b
26 +DIST erlang-24.1.4.tar.gz 59009229 BLAKE2B 484ad90509a618098dc1c3fc2ae7d2b44dc7735399f3ba2138d3c755b337e7c513083724329581e72968f6a5c33c9767f0192a1f5d21d35a3a69d5b4e151def2 SHA512 b5cf4fbce07b26b97ec8af62d1b86315227ff369f27c996a6df08b322b76721539a55664dcd4ffec49ff77efadc8e4f0c967c064bb4e1f5cdfa2db2eaa02620f
27 DIST erlang_doc_html_23.3.tar.gz 36224657 BLAKE2B 7e2a3e16f4cfa0f15c01074740e02af7a45b480b4a94e764463717658ab7e5d0281f928c3ec585582b10168645e3e06cfe72cf6a0ba1b88f539b80f2b7ad99be SHA512 8be4aae46839239604b875b39339e7b6b6c677c099b3d749d5f1041c4508c1c3b4aa8136a93df12b1e5cb6333ef907276f5965c9726ed2b9e77a6043c8ef53b1
28 DIST erlang_doc_html_24.0.tar.gz 39731398 BLAKE2B 8a9fe3acb4cc13691e16c477cf89e8298df1a99bbe6a6c9e59e3c34248ecdc21077835951087b5a5bbb23ddb28f3bd7ab8b058fe64ce56c342b825a6c0ef8948 SHA512 453f8a9cf779a4f43966615433afc3be3aae7a571acf45974947bd720a331ca05949bc310de5f3b33b72d274971103ede56875bbfe757ba17f903510f690d97e
29 +DIST erlang_doc_html_24.1.tar.gz 39873142 BLAKE2B 5e4bea792be6332a2186a270466a61bda5f37b5a066638ae00545433bf5bd11f84fba7a0ac210a9104e5322fd372759e53d0abd63468c59a3a2c59a3eaddd5ca SHA512 6ace8d8ba4b74e3269e71880f73bd296769acd8778f13fd945b80e57a694d70929d3e7a3263ff3c154190679d88fbb9855e201212e504de4a261e4182662e99a
30 DIST erlang_doc_man_23.3.tar.gz 1456501 BLAKE2B 414bedee0e316d97b26d9d6418b799a9434a22e9980e7d3a83e2478d184d63d1633c0e10d0e180d929a3cacd82b4d703be86cbc8e99996037f6b37ea122f7a8c SHA512 6c661c210ffec4752afe624fa46700a0f62cc6589b74b859ab1dfde77d289e992988ac8744f7b4126d7512cd6d0aab3321f710a6324552b259bd7acd5b54a05e
31 DIST erlang_doc_man_24.0.tar.gz 1666152 BLAKE2B aaef8165322f39f7410840eafe562ec5038d9c89b4fa99b3b1d5748ba70fe755ba732de403dd916328e1fdcec895e2a347db4fb8c8837b5e41155439c9c54ef6 SHA512 7251f6eeb0534cc8538236a2c4be9d732bf0a05ba6832f9b3859116f9148e469d004331924c7187b07204798afb66067bfd321c8905000c355775927e5841918
32 +DIST erlang_doc_man_24.1.tar.gz 1673084 BLAKE2B 092c7870914e108e3fe06b68be6c54cff508cd938b5b510ca9a7c946b786e5725ffa1f2c87282a36480a9c1c7d7c899e8118546102a98136f813309a7f0bd334 SHA512 a11361811c5d58a431f4096866a45755f771f0519bbc992fc71e3c760d81bdc9cf636e189aee72c602a5f02cbf6c7bb6cc442cdb71fd06e0c4097bdf6ffe92ec
33
34 diff --git a/dev-lang/erlang/erlang-23.3.4.8.ebuild b/dev-lang/erlang/erlang-23.3.4.8.ebuild
35 new file mode 100644
36 index 00000000000..257dbb6d4a2
37 --- /dev/null
38 +++ b/dev-lang/erlang/erlang-23.3.4.8.ebuild
39 @@ -0,0 +1,155 @@
40 +# Copyright 1999-2021 Gentoo Authors
41 +# Distributed under the terms of the GNU General Public License v2
42 +
43 +EAPI=7
44 +WX_GTK_VER="3.0-gtk3"
45 +
46 +inherit elisp-common java-pkg-opt-2 systemd wxwidgets
47 +
48 +# NOTE: If you need symlinks for binaries please tell maintainers or
49 +# open up a bug to let it be created.
50 +
51 +UPSTREAM_V="$(ver_cut 1-2)"
52 +
53 +DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)"
54 +HOMEPAGE="https://www.erlang.org/"
55 +SRC_URI="https://github.com/erlang/otp/archive/OTP-${PV}.tar.gz -> ${P}.tar.gz
56 + http://erlang.org/download/otp_doc_man_${UPSTREAM_V}.tar.gz -> ${PN}_doc_man_${UPSTREAM_V}.tar.gz
57 + doc? ( http://erlang.org/download/otp_doc_html_${UPSTREAM_V}.tar.gz -> ${PN}_doc_html_${UPSTREAM_V}.tar.gz )"
58 +
59 +LICENSE="Apache-2.0"
60 +# We use this subslot because Compiled HiPE Code can be loaded on the exact
61 +# same build of ERTS that was used when compiling the code. See
62 +# http://erlang.org/doc/system_principles/misc.html for more information.
63 +SLOT="0/${PV}"
64 +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
65 +IUSE="doc emacs +hipe java +kpoll odbc sctp ssl systemd tk wxwidgets"
66 +
67 +RDEPEND="
68 + acct-group/epmd
69 + acct-user/epmd
70 + sys-libs/ncurses:0
71 + sys-libs/zlib
72 + emacs? ( >=app-editors/emacs-23.1:* )
73 + java? ( >=virtual/jdk-1.8:* )
74 + odbc? ( dev-db/unixODBC )
75 + sctp? ( net-misc/lksctp-tools )
76 + ssl? ( >=dev-libs/openssl-0.9.7d:0= )
77 + systemd? ( sys-apps/systemd )
78 + wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] )
79 +"
80 +DEPEND="${RDEPEND}
81 + dev-lang/perl
82 +"
83 +
84 +S="${WORKDIR}/otp-OTP-${PV}"
85 +
86 +PATCHES=(
87 + "${FILESDIR}"/18.2.1-wx3.0.patch
88 + "${FILESDIR}"/${PN}-22.0-dont-ignore-LDFLAGS.patch
89 +)
90 +
91 +SITEFILE=50"${PN}"-gentoo.el
92 +
93 +src_prepare() {
94 + default
95 +
96 + ./otp_build autoconf || die
97 +}
98 +
99 +src_configure() {
100 + use wxwidgets && setup-wxwidgets
101 +
102 + local myconf=(
103 + --disable-builtin-zlib
104 + $(use_enable hipe)
105 + $(use_enable kpoll kernel-poll)
106 + $(use_with java javac)
107 + $(use_enable sctp)
108 + $(use_with ssl ssl "${EPREFIX}"/usr)
109 + $(use_enable ssl dynamic-ssl-lib)
110 + $(use_enable systemd)
111 + $(usex wxwidgets "--with-wx-config=${WX_CONFIG}" "--with-wxdir=/dev/null")
112 + )
113 + econf "${myconf[@]}"
114 +}
115 +
116 +src_compile() {
117 + emake
118 +
119 + if use emacs ; then
120 + pushd lib/tools/emacs &>/dev/null || die
121 + elisp-compile *.el
122 + popd &>/dev/null || die
123 + fi
124 +}
125 +
126 +extract_version() {
127 + local path="$1"
128 + local var_name="$2"
129 + sed -n -e "/^${var_name} = \(.*\)$/s::\1:p" "${S}/${path}/vsn.mk" || die "extract_version() failed"
130 +}
131 +
132 +src_install() {
133 + local erl_libdir_rel="$(get_libdir)/erlang"
134 + local erl_libdir="/usr/${erl_libdir_rel}"
135 + local erl_interface_ver="$(extract_version lib/erl_interface EI_VSN)"
136 + local erl_erts_ver="$(extract_version erts VSN)"
137 + local my_manpath="/usr/share/${PN}/man"
138 +
139 + [[ -z "${erl_erts_ver}" ]] && die "Couldn't determine erts version"
140 + [[ -z "${erl_interface_ver}" ]] && die "Couldn't determine interface version"
141 +
142 + emake INSTALL_PREFIX="${D}" install
143 +
144 + if use doc ; then
145 + # Note: we explicitly install docs into:
146 + # /usr/share/doc/${PF}/{doc,lib,erts-*}
147 + # To maintain that layout we gather everything in 'html-docs'.
148 + # See bug #684376.
149 + mkdir html-docs || die
150 + mv "${WORKDIR}"/doc "${WORKDIR}"/lib "${WORKDIR}"/erts-* html-docs/ || die
151 + local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" html-docs/. )
152 + docompress -x /usr/share/doc/${PF}
153 + else
154 + local DOCS=("README.md")
155 + fi
156 +
157 + einstalldocs
158 +
159 + dosym "../${erl_libdir_rel}/bin/erl" /usr/bin/erl
160 + dosym "../${erl_libdir_rel}/bin/erlc" /usr/bin/erlc
161 + dosym "../${erl_libdir_rel}/bin/escript" /usr/bin/escript
162 + dosym "../${erl_libdir_rel}/lib/erl_interface-${erl_interface_ver}/bin/erl_call" /usr/bin/erl_call
163 + dosym "../${erl_libdir_rel}/erts-${erl_erts_ver}/bin/beam.smp" /usr/bin/beam.smp
164 +
165 + ## Clean up the no longer needed files
166 + rm "${ED}/${erl_libdir}/Install" || die
167 +
168 + insinto "${my_manpath}"
169 + doins -r "${WORKDIR}"/man/*
170 + # extend MANPATH, so the normal man command can find it
171 + # see bug 189639
172 + newenvd - "90erlang" <<-_EOF_
173 + MANPATH="${my_manpath}"
174 + _EOF_
175 +
176 + if use emacs ; then
177 + elisp-install erlang lib/tools/emacs/*.{el,elc}
178 + sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \
179 + "${FILESDIR}/${SITEFILE}" > "${T}/${SITEFILE}" || die
180 + elisp-site-file-install "${T}/${SITEFILE}"
181 + fi
182 +
183 + newinitd "${FILESDIR}"/epmd.init-r2 epmd
184 + newconfd "${FILESDIR}"/epmd.confd-r2 epmd
185 + use systemd && systemd_newunit "${FILESDIR}"/epmd.service-r1 epmd.service
186 +}
187 +
188 +pkg_postinst() {
189 + use emacs && elisp-site-regen
190 +}
191 +
192 +pkg_postrm() {
193 + use emacs && elisp-site-regen
194 +}
195
196 diff --git a/dev-lang/erlang/erlang-24.1.4.ebuild b/dev-lang/erlang/erlang-24.1.4.ebuild
197 new file mode 100644
198 index 00000000000..e329ba63eea
199 --- /dev/null
200 +++ b/dev-lang/erlang/erlang-24.1.4.ebuild
201 @@ -0,0 +1,162 @@
202 +# Copyright 1999-2021 Gentoo Authors
203 +# Distributed under the terms of the GNU General Public License v2
204 +
205 +EAPI=7
206 +WX_GTK_VER="3.0-gtk3"
207 +
208 +inherit elisp-common java-pkg-opt-2 systemd toolchain-funcs wxwidgets
209 +
210 +# NOTE: If you need symlinks for binaries please tell maintainers or
211 +# open up a bug to let it be created.
212 +
213 +UPSTREAM_V="$(ver_cut 1-2)"
214 +
215 +DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)"
216 +HOMEPAGE="https://www.erlang.org/"
217 +SRC_URI="https://github.com/erlang/otp/archive/OTP-${PV}.tar.gz -> ${P}.tar.gz
218 + http://erlang.org/download/otp_doc_man_${UPSTREAM_V}.tar.gz -> ${PN}_doc_man_${UPSTREAM_V}.tar.gz
219 + doc? ( http://erlang.org/download/otp_doc_html_${UPSTREAM_V}.tar.gz -> ${PN}_doc_html_${UPSTREAM_V}.tar.gz )"
220 +
221 +LICENSE="Apache-2.0"
222 +# We use this subslot because Compiled HiPE Code can be loaded on the exact
223 +# same build of ERTS that was used when compiling the code. See
224 +# http://erlang.org/doc/system_principles/misc.html for more information.
225 +SLOT="0/${PV}"
226 +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
227 +IUSE="doc emacs java +kpoll odbc sctp ssl systemd tk wxwidgets"
228 +
229 +RDEPEND="
230 + acct-group/epmd
231 + acct-user/epmd
232 + sys-libs/ncurses:0
233 + sys-libs/zlib
234 + emacs? ( >=app-editors/emacs-23.1:* )
235 + java? ( >=virtual/jdk-1.8:* )
236 + odbc? ( dev-db/unixODBC )
237 + sctp? ( net-misc/lksctp-tools )
238 + ssl? ( >=dev-libs/openssl-0.9.7d:0= )
239 + systemd? ( sys-apps/systemd )
240 + wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] )
241 +"
242 +DEPEND="${RDEPEND}
243 + dev-lang/perl
244 +"
245 +
246 +S="${WORKDIR}/otp-OTP-${PV}"
247 +
248 +PATCHES=(
249 + "${FILESDIR}"/${PN}-22.0-dont-ignore-LDFLAGS.patch
250 + "${FILESDIR}"/${PN}-24.0.2-serial-configure.patch
251 +)
252 +
253 +SITEFILE=50"${PN}"-gentoo.el
254 +
255 +src_prepare() {
256 + default
257 +
258 + tc-export AR CPP CXX LD
259 +
260 + # bug #797886: erlang's VM does unsafe casts for ints
261 + # to pointers and back. This breaks on gcc-11 -flto.
262 + append-flags -fno-strict-aliasing
263 +}
264 +
265 +src_configure() {
266 + use wxwidgets && setup-wxwidgets
267 +
268 + local myconf=(
269 + --disable-builtin-zlib
270 +
271 + # don't search for static zlib
272 + --with-ssl-zlib=no
273 +
274 + $(use_enable kpoll kernel-poll)
275 + $(use_with java javac)
276 + $(use_enable sctp)
277 + $(use_with ssl ssl)
278 + $(use_enable ssl dynamic-ssl-lib)
279 + $(use_enable systemd)
280 + $(usex wxwidgets "--with-wx-config=${WX_CONFIG}" "--with-wxdir=/dev/null")
281 + )
282 + econf "${myconf[@]}"
283 +}
284 +
285 +src_compile() {
286 + emake
287 +
288 + if use emacs ; then
289 + pushd lib/tools/emacs &>/dev/null || die
290 + elisp-compile *.el
291 + popd &>/dev/null || die
292 + fi
293 +}
294 +
295 +extract_version() {
296 + local path="$1"
297 + local var_name="$2"
298 + sed -n -e "/^${var_name} = \(.*\)$/s::\1:p" "${S}/${path}/vsn.mk" || die "extract_version() failed"
299 +}
300 +
301 +src_install() {
302 + local erl_libdir_rel="$(get_libdir)/erlang"
303 + local erl_libdir="/usr/${erl_libdir_rel}"
304 + local erl_interface_ver="$(extract_version lib/erl_interface EI_VSN)"
305 + local erl_erts_ver="$(extract_version erts VSN)"
306 + local my_manpath="/usr/share/${PN}/man"
307 +
308 + [[ -z "${erl_erts_ver}" ]] && die "Couldn't determine erts version"
309 + [[ -z "${erl_interface_ver}" ]] && die "Couldn't determine interface version"
310 +
311 + emake INSTALL_PREFIX="${D}" install
312 +
313 + if use doc ; then
314 + # Note: we explicitly install docs into:
315 + # /usr/share/doc/${PF}/{doc,lib,erts-*}
316 + # To maintain that layout we gather everything in 'html-docs'.
317 + # See bug #684376.
318 + mkdir html-docs || die
319 + mv "${WORKDIR}"/doc "${WORKDIR}"/lib "${WORKDIR}"/erts-* html-docs/ || die
320 + local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" html-docs/. )
321 + docompress -x /usr/share/doc/${PF}
322 + else
323 + local DOCS=("README.md")
324 + fi
325 +
326 + einstalldocs
327 +
328 + dosym "../${erl_libdir_rel}/bin/erl" /usr/bin/erl
329 + dosym "../${erl_libdir_rel}/bin/erlc" /usr/bin/erlc
330 + dosym "../${erl_libdir_rel}/bin/escript" /usr/bin/escript
331 + dosym "../${erl_libdir_rel}/lib/erl_interface-${erl_interface_ver}/bin/erl_call" /usr/bin/erl_call
332 + dosym "../${erl_libdir_rel}/erts-${erl_erts_ver}/bin/beam.smp" /usr/bin/beam.smp
333 +
334 + ## Clean up the no longer needed files
335 + rm "${ED}/${erl_libdir}/Install" || die
336 +
337 + insinto "${my_manpath}"
338 + doins -r "${WORKDIR}"/man/*
339 + # extend MANPATH, so the normal man command can find it
340 + # see bug 189639
341 + newenvd - "90erlang" <<-_EOF_
342 + MANPATH="${my_manpath}"
343 + _EOF_
344 +
345 + if use emacs ; then
346 + elisp-install erlang lib/tools/emacs/*.{el,elc}
347 + sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \
348 + "${FILESDIR}/${SITEFILE}" > "${T}/${SITEFILE}" || die
349 + elisp-site-file-install "${T}/${SITEFILE}"
350 + fi
351 +
352 + newinitd "${FILESDIR}"/epmd.init-r2 epmd
353 + newconfd "${FILESDIR}"/epmd.confd-r2 epmd
354 + use systemd && systemd_newunit "${FILESDIR}"/epmd.service-r1 epmd.service
355 +}
356 +
357 +pkg_postinst() {
358 + use emacs && elisp-site-regen
359 +}
360 +
361 +pkg_postrm() {
362 + use emacs && elisp-site-regen
363 +}