summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Faulhammer <fauli@gentoo.org>2010-11-08 00:47:30 +0000
committerChristian Faulhammer <fauli@gentoo.org>2010-11-08 00:47:30 +0000
commit86cef69afe233e3a10a0c1a7de5dca7345b44999 (patch)
tree2d693515beadb809621aed071e680a763740c911 /dev-lang/erlang
parentNew Package: sci-misc/flashdot, migrated from sci-overlay (bug #300384) (diff)
downloadgentoo-2-86cef69afe233e3a10a0c1a7de5dca7345b44999.tar.gz
gentoo-2-86cef69afe233e3a10a0c1a7de5dca7345b44999.tar.bz2
gentoo-2-86cef69afe233e3a10a0c1a7de5dca7345b44999.zip
version bump to fix 325073, some hints by Boris Faure <billiob AT gmail DOT com>; this also fixes 263129 for LDFLAGS (again, reported upstream...again) and bug 334979 which provides an init script for epmd. This release seems to incorporate an upstream fix for bug 338664
(Portage version: 2.1.8.3/cvs/Linux i686)
Diffstat (limited to 'dev-lang/erlang')
-rw-r--r--dev-lang/erlang/ChangeLog11
-rw-r--r--dev-lang/erlang/erlang-14.2.ebuild180
-rw-r--r--dev-lang/erlang/files/epmd.init20
3 files changed, 210 insertions, 1 deletions
diff --git a/dev-lang/erlang/ChangeLog b/dev-lang/erlang/ChangeLog
index 695ec956a270..9bc365257a9e 100644
--- a/dev-lang/erlang/ChangeLog
+++ b/dev-lang/erlang/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for dev-lang/erlang
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/erlang/ChangeLog,v 1.198 2010/09/30 19:29:19 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/erlang/ChangeLog,v 1.199 2010/11/08 00:47:30 fauli Exp $
+
+*erlang-14.2 (08 Nov 2010)
+
+ 08 Nov 2010; Christian Faulhammer <fauli@gentoo.org> +erlang-14.2.ebuild,
+ +files/epmd.init:
+ version bump to fix 325073, some hints by Boris Faure <billiob AT gmail
+ DOT com>; this also fixes 263129 for LDFLAGS (again, reported
+ upstream...again) and bug 334979 which provides an init script for epmd.
+ This release seems to incorporate an upstream fix for bug 338664
30 Sep 2010; Fabian Groffen <grobian@gentoo.org> erlang-13.2.4.ebuild,
erlang-14.1.ebuild:
diff --git a/dev-lang/erlang/erlang-14.2.ebuild b/dev-lang/erlang/erlang-14.2.ebuild
new file mode 100644
index 000000000000..161637b4b8b3
--- /dev/null
+++ b/dev-lang/erlang/erlang-14.2.ebuild
@@ -0,0 +1,180 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/erlang/erlang-14.2.ebuild,v 1.1 2010/11/08 00:47:30 fauli Exp $
+
+EAPI=3
+WX_GTK_VER="2.8"
+
+inherit elisp-common eutils multilib versionator wxwidgets
+
+# NOTE: If you need symlinks for binaries please tell maintainers or
+# open up a bug to let it be created.
+
+# erlang uses a really weird versioning scheme which caused quite a few problems
+# already. Thus we do a slight modification converting all letters to digits to
+# make it more sane (see e.g. #26420)
+
+# the next line selects the right source.
+ERL_VER=($(get_version_components))
+MY_PV="R$(get_major_version)B${ERL_VER[2]}"
+
+# ATTN!! Take care when processing the C, etc version!
+MY_P=otp_src_${MY_PV}
+
+DESCRIPTION="Erlang programming language, runtime environment, and large collection of libraries"
+HOMEPAGE="http://www.erlang.org/"
+SRC_URI="http://www.erlang.org/download/${MY_P}.tar.gz
+ http://erlang.org/download/otp_doc_man_${MY_PV}.tar.gz
+ doc? ( http://erlang.org/download/otp_doc_html_${MY_PV}.tar.gz )"
+
+LICENSE="EPL"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x64-solaris"
+IUSE="doc emacs hipe java kpoll odbc smp sctp ssl tk wxwidgets"
+
+RDEPEND=">=dev-lang/perl-5.6.1
+ ssl? ( >=dev-libs/openssl-0.9.7d )
+ emacs? ( virtual/emacs )
+ java? ( >=virtual/jdk-1.2 )
+ odbc? ( dev-db/unixODBC )"
+DEPEND="${RDEPEND}
+ wxwidgets? ( x11-libs/wxGTK:2.8[opengl] )
+ sctp? ( net-misc/lksctp-tools )
+ tk? ( dev-lang/tk )"
+
+S="${WORKDIR}/${MY_P}"
+
+SITEFILE=50${PN}-gentoo.el
+
+pkg_setup() {
+ use wxwidgets && wxwidgets_pkg_setup
+}
+
+src_prepare() {
+ use odbc || sed -i 's: odbc : :' lib/Makefile
+
+ # 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 || die
+
+ if ! use wxwidgets; then
+ sed -i 's: wx : :' lib/Makefile
+ rm -rf lib/wx
+ fi
+
+ if use hipe; then
+ ewarn
+ ewarn "You enabled High performance Erlang. Be aware that this extension"
+ ewarn "can break the compilation in many ways, especially on hardened systems."
+ ewarn "Don't cry, don't file bugs, just disable it! If you have a fix, tell us though on Bugzilla."
+ ewarn
+ fi
+
+ # Nasty workaround, reported upstream
+ cp "${S}"/lib/configure.in.src "${S}"/lib/configure.in || die
+
+ # prevent configure from injecting -m32 by default on Darwin, bug #334155
+ sed -i -e 's/Darwin-i386/Darwin-NO/' configure.in || die
+ sed -i -e '/\<\(LD\|C\)FLAGS="-m32/s/-m32//' erts/configure.in || die
+}
+
+src_configure() {
+ use java || export JAVAC=false
+
+ econf \
+ --enable-threads \
+ --enable-shared-zlib \ \
+ $(use_enable sctp) \
+ $(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) \
+ || die
+}
+
+src_compile() {
+ use java || export JAVAC=false
+ emake -j1 || die
+
+ if use emacs ; then
+ pushd lib/tools/emacs
+ elisp-compile *.el || die
+ 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 -j1 INSTALL_PREFIX="${D}" install || die
+ dodoc AUTHORS README.md
+
+ 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
+ dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam" /usr/bin/beam
+ use smp && dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam.smp" /usr/bin/beam.smp
+
+ ## Remove ${D} from the following files
+ sed -e "s:${D}::g" -i "${ED}${ERL_LIBDIR}/bin/erl" || die
+ sed -e "s:${D}::g" -i "${ED}${ERL_LIBDIR}/bin/start" || die
+ grep -rle "${D}" "${ED}/${ERL_LIBDIR}/erts-${ERL_ERTS_VER}" | xargs sed -i -e "s:${D}::g"
+
+ ## Clean up the no longer needed files
+ rm "${ED}/${ERL_LIBDIR}/Install"||die
+
+ 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
+
+ # prepare erl for SMP, fixes bug #188112
+ use smp && sed -i -e 's:\(exec.*erlexec\):\1 -smp:' \
+ "${ED}/${ERL_LIBDIR}/bin/erl"
+
+ newinitd "${FILESDIR}"/epmd.init epmd || die
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+ elog
+ elog "If you need a symlink to one of Erlang's binaries,"
+ elog "please open a bug on http://bugs.gentoo.org/"
+ elog
+ elog "Gentoo's versioning scheme differs from the author's, so please refer to this version as ${MY_PV}"
+ elog
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-lang/erlang/files/epmd.init b/dev-lang/erlang/files/epmd.init
new file mode 100644
index 000000000000..0b2248a138c1
--- /dev/null
+++ b/dev-lang/erlang/files/epmd.init
@@ -0,0 +1,20 @@
+#!/sbin/runscript
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/erlang/files/epmd.init,v 1.1 2010/11/08 00:47:30 fauli Exp $
+
+depend() {
+ need net
+}
+
+start() {
+ ebegin "Starting Erlang Port Mapper Daemon"
+ start-stop-daemon --start --quiet --user nobody --group nobody --exec /usr/bin/epmd -- -daemon
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping Erlang Port Mapper Daemon"
+ /usr/bin/epmd -kill >/dev/null
+ eend $?
+}