Skip to content

Commit

Permalink
dev-lang/erlang: Version bump, and fix some bugs:
Browse files Browse the repository at this point in the history
- fix automagic odbc support (#611092)
- don't create bogus link (#631682)

Package-Manager: Portage-2.3.27, Repoman-2.3.9
  • Loading branch information
pacho2 committed Apr 1, 2018
1 parent b3c25c0 commit a3054b0
Show file tree
Hide file tree
Showing 2 changed files with 174 additions and 0 deletions.
3 changes: 3 additions & 0 deletions dev-lang/erlang/Manifest
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
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
DIST otp_doc_html_20.3.tar.gz 33594990 BLAKE2B 34db68a5c3ae56f097474cc0b776971853d96c57d3d2e058a5db8998aad9c8d498610979a46155e8e935022f363c944f407c10c650fd35174cf1f50697ddf1de SHA512 4b280228fb9cbd9eb62db12ff9d6fad67d6855d0cdbc780839bbc95302ffd907c5b410e6f8519207db8850b753964571a9bf9df9eca53749f5b01d1b27dbc6d4
DIST otp_doc_man_19.1.tar.gz 1405580 BLAKE2B 93b79b88f81a00d7cbb934dbac811c6ea0ec59413e073fe613038eab71087908ed4e4bcbb6c8ed2f0c5bdd03ab4a570f20c4460f233c040ae0c4238e1cfa097a SHA512 4ee35feeff70419ff5500e00dc17e34fdea8be21342d41cf1e255b84a1826b51057046be543ee1052153ae8c8cd215f4720cecae7d9fe1576cbd681dcf4b2334
DIST otp_doc_man_19.3.tar.gz 1410781 BLAKE2B 78293aa498c2651be27d83f13e14007f25a1816b4dae499f463249f774256eddde3a4e31c435a30edd04fb6f41cee965c968b338de77330c3320f3df6087be92 SHA512 675a0d2d5972660a60de17c832e630f646f942d23815427eb0dec3a5ca1c44ed8fe35a9c30f8b608dedfd10f6fb1e47e958ea6e32e296b6f6809b1844b4da9a1
DIST otp_doc_man_20.2.tar.gz 1337652 BLAKE2B 416e83c696e30981eabad1f5a7c89abfd0b9d48ff04c9bd86b13dc96302acc9f2b9a73906a2976888ce35c6bfb38b3c006a1e0a041dd1bd5e75908e53bb920c3 SHA512 a67bb975b613c74c4e2418406b6472764ac69dfb9f8a6f64c79c680b1f87edea719431c140b006f776b0088885d958a6f2718267cebaf73ed506eaff721400f4
DIST otp_doc_man_20.3.tar.gz 1339710 BLAKE2B 00aba848940914b3d98f9500b8201b0679d7d63d066cee296c8fbb399f132340b989f3cdcdd6c45a46e432efdb7c40c39d8ab4f3dbd64570316d649efc9faed1 SHA512 22c398ce3b42c7ef8abec1db85745eeb4d8804bc679d40b6a786fdc40dc241e43b5551df5d1eccb3ca8d4a64b833bf6663e77044f4564bb49cf67c4b74c5ea25
DIST otp_src_19.1.tar.gz 68103074 BLAKE2B 48e06ce5998929a8ca9804e51f07a4153e7fb1c8b1b4b1b60132e255c29c475534ce018a7902ed29b696b783a21daa73d1778435aada1a77064ab46e915af87d SHA512 bd1c243393c867c91768367613aedb40d56889add149390c81f22e022e76b716d6e9a4d5db7e6477ceb1216c26c18c962abdfd8215a87420758f5ef2063b9714
DIST otp_src_19.3.tar.gz 68510871 BLAKE2B fc37c493f5fa3533aaa29f545ff751f5851b58d8952f6f21ef50fec433d661a1e3300139b30a41d9c1f16b3eeaf5d98450bf0a2408e7910712d9d98f3af19237 SHA512 6920eab6e1681a76ab44bdd0eeb9b012e601191f91ca06edf1f63ba2e261c555d6f8dddf7025b2e9c3c6459bd63ff78659010ec33967fb1952840fb451ec2de6
DIST otp_src_20.2.tar.gz 87136848 BLAKE2B f83e652320b67b72cf42be3c23a9251806096fea4e255f73c8170bcb61ea1e008983f1da1c9dc7b46b76e1fd0d96f94097f5d629eb28c08eb424bb1e7a1cee28 SHA512 6c2cbef9fa67f4aa9d0c22bedf87f39b0067994614663afee88c57bb7789eec45cb1970dcbd930d163a27293b8d24b20a90cf6ed30ff1a14492a9ccdd5b59a65
DIST otp_src_20.3.tar.gz 88170904 BLAKE2B 3f92641e4eb4079572c0cc1cbc6ba1f56977efd182efcef6c466a0ac6232e18d9481823624cdd49a866feb38e96db6150f40927f25f2daaa64fe4aafd02089b4 SHA512 4169e2e653055c62dd66e214dcab577b49cadb8328dcc43adb8a2d44850b12c02db8323992c21852409697c5a48493068316417be9d97519b039a8f1cde143da
171 changes: 171 additions & 0 deletions dev-lang/erlang/erlang-20.3.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
# 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.

DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)"
HOMEPAGE="http://www.erlang.org/"
SRC_URI="http://www.erlang.org/download/otp_src_${PV}.tar.gz
http://erlang.org/download/otp_doc_man_${PV}.tar.gz
doc? ( http://erlang.org/download/otp_doc_html_${PV}.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="compat-ethread dirty-schedulers doc emacs hipe java kpoll libressl odbc smp sctp ssl systemd tk wxwidgets"
REQUIRED_USE="dirty-schedulers? ( smp )" #621610

# False positives caused by nested configure scripts
QA_CONFIGURE_OPTIONS="--disable-silent-rules"

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}
wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] virtual/glu )
sctp? ( net-misc/lksctp-tools )
tk? ( dev-lang/tk )
"

S="${WORKDIR}/otp_src_${PV}"

SITEFILE=50${PN}-gentoo.el

src_prepare() {
default

eapply "${FILESDIR}"/18.2.1-wx3.0.patch

if ! use odbc; then
sed -i 's: odbc : :' lib/Makefile || die
rm -rf lib/odbc/
fi

# bug 263129, don't ignore LDFLAGS, reported upstream
sed -e 's:LDFLAGS = \$(DED_LDFLAGS):LDFLAGS += \$(DED_LDFLAGS):' -i "${S}"/lib/megaco/src/flex/Makefile.in

# don't ignore LDFLAGS, reported upstream
use odbc && sed -e 's:LDFLAGS = \$(ODBC_LIB) \$(EI_LDFLAGS):LDFLAGS += \$(ODBC_LIB) \$(EI_LDFLAGS):' -i "${S}"/lib/odbc/c_src/Makefile.in

if ! use wxwidgets; then
sed -i 's: wx : :' lib/Makefile
rm -rf lib/wx
fi

# Nasty workaround, reported upstream
cp "${S}"/lib/configure.in.src "${S}"/lib/configure.in

# bug 383697
sed -i '1i#define OF(x) x' erts/emulator/drivers/common/gzio.c

cd erts && mv configure.in configure.ac && eautoreconf
}

src_configure() {
use wxwidgets && need-wxwidgets unicode
use java || export JAVAC=false

econf \
--enable-threads \
$(use_enable sctp) \
$(use_enable systemd) \
$(use_enable hipe) \
$(use_with ssl ssl "${EPREFIX}"/usr) \
$(use_enable ssl dynamic-ssl-lib) \
$(use_enable kpoll kernel-poll) \
$(use_enable smp smp-support) \
$(use compat-ethread && echo "--enable-ethread-pre-pentium4-compatibility") \
$(use x64-macos && echo "--enable-darwin-64bit") \
$(use_enable dirty-schedulers)
}

src_compile() {
use java || export JAVAC=false
emake

if use emacs ; then
pushd lib/tools/emacs
elisp-compile *.el
popd
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)

emake INSTALL_PREFIX="${D}" install
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"

for i in "${WORKDIR}"/man/man* ; do
dodir "${ERL_LIBDIR}/${i##${WORKDIR}}"
done
for file in "${WORKDIR}"/man/man*/*.[1-9]; do
# doman sucks so we can't use it
cp ${file} "${ED}/${ERL_LIBDIR}"/man/man${file##*.}/
done
# extend MANPATH, so the normal man command can find it
# see bug 189639
dodir /etc/env.d/
echo "MANPATH=\"${EPREFIX}${ERL_LIBDIR}/man\"" > "${ED}/etc/env.d/90erlang"

if use doc ; then
dohtml -A README,erl,hrl,c,h,kwc,info -r \
"${WORKDIR}"/doc "${WORKDIR}"/lib "${WORKDIR}"/erts-*
fi

if use emacs ; then
pushd "${S}"
elisp-install erlang lib/tools/emacs/*.{el,elc}
sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \
"${FILESDIR}"/${SITEFILE} > "${T}"/${SITEFILE}
elisp-site-file-install "${T}"/${SITEFILE}
popd
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
}

0 comments on commit a3054b0

Please sign in to comment.