Skip to content

Commit

Permalink
dev-lang/erlang: version bump to 18.2.1 (fixes bug 563240)
Browse files Browse the repository at this point in the history
Package-Manager: portage-2.2.24
  • Loading branch information
djc committed Jan 9, 2016
1 parent e5c864f commit a18d94b
Show file tree
Hide file tree
Showing 3 changed files with 282 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_17.5.tar.gz 33510258 SHA256 baba1d373c1faacf4a1a6ec1220d57d0cb2b977edb74f32cd58dc786361c6cf5 SHA512 d3e455452e6d6e241c40de6e41a7b1069f8daa45c8d2340adb62f8867948261692c8465db7e288378942ebe86fd938847756992600da93aa99cb294fadcb5211 WHIRLPOOL 9657c1fd133fa713d0f30bae0394f47f43b090149ec3457a177bd9f129c052b73f1e757762ced02c1c8bcbaec294e845859b18b0e2004429e04df8e04e36cade
DIST otp_doc_html_18.0.tar.gz 33857396 SHA256 e5a766f68406f5025f921ec32e8959937189ed1245e24b03a74156a8898b03b2 SHA512 5fcbd1ac7fb5f646e181ede385a56adb8d754bc645fd9313c2e3a77a01cb686b1c5975695207f388a78c9599b0d4e6b52c7ea121e900c0a1e2ab20679c0bede1 WHIRLPOOL 5e9174059212b3f5023c04b19164184937b2eb4cbea29103a85813f630b733e60e600e31d3478b3ef759150421b6153a1a3e946e313706bc23e110e01dc1a945
DIST otp_doc_html_18.2.1.tar.gz 34204320 SHA256 3576c567b30400fec2b456897d54ba79933ee0f83f6ec57816417b5417ea9723 SHA512 0e1dff75c7243f1ec6ac38de53c8139649ef777b3e96dae35a74d619ad2f8f92b9cd3df4909328e0d6cd0e2b9fea69503588c32c30b9becfc12b6cbc291daa6a WHIRLPOOL da821e651a510958335c34e05616314701bee5021b4ac4bda62c607a1a3253183cb13adee1b08307d91aac04cbbe614c067e9f21179a8a10d51d1c80ac68221e
DIST otp_doc_html_R15B03-1.tar.gz 30436303 SHA256 d06f580f11d1303217a5c1cf8d68a98d7e01c535be934dcd430ecdc254f7572e SHA512 8a22ad702d50f40162f7d6051dbbc0226af449f7a1dcfb087e952dd7eb7213257940933441cfb68f055746450e3e5aa2c5ed8107ac67af7c3a940afb195af8c7 WHIRLPOOL ac10f9ce0ffd4cbd98617e4018e5a4729ce83f0ace6a4db219e7beef2f3a626a8c9a419c7f7772c934ca50310f55486df7eb24955ba845a9230c69c93e183d33
DIST otp_doc_man_17.5.tar.gz 1363320 SHA256 85b1b2a1011fc01af550f1fe9e5a599a4c5f2a35d264d2804af1d05590a857c3 SHA512 98d241aa127cfe377e5efc52284cd324713cacefc96db5992275c4f8712a9e35e43f0dbc0d2a8d58a1127fbfa3f762eb001aea1bb1c9fa82205a3d83659ad548 WHIRLPOOL b790046a449824aa02e11bef6b84a7027351edba0fffd241221e690739df30c9c692074b7354612970d8d02b3c1bccfdbd81bb988af9874d181f177ffed49e2c
DIST otp_doc_man_18.0.tar.gz 1389178 SHA256 e44f0ec36ee0683867bc2aa9cc7fbb020d9dfd57338f37b98dcd0771f5b95673 SHA512 d3e757b15ee03b4fd89b21a456b89c847a60f4715fb8257c4d3d4f431798cb8d1ae30978608bc85db7f0e25d51072a2d32927745ff410956dca11a01ae4fa034 WHIRLPOOL 83fc8d483a5385b053f5c24e51f35d448dd5ab8e4228500a858422192da17078dbd0f776cbea6d2f77a483c97397cb7e80b5bb5184157611c49743d05fd542bd
DIST otp_doc_man_18.2.1.tar.gz 1390940 SHA256 a58005ccd64853e8c79631a3c4c057dd6f92f581d97d00845a0aea817c33afa0 SHA512 5eb8bfe6112b8e1ea6d67a9a8c52f2287586c658ec31a765810e8b35d9b2c1543a87bd45ce5956f5f5ecac3320f72da4427aeb518bd6bd9eb21151430718b173 WHIRLPOOL ba56286cab04980b234e911816f1c0312d58d08879d8ac3d12b9ad47e129c683c9af01b973ee84a6c4335e1ef56a652b31476fe0a2b9d298374b5acacd0c0ea3
DIST otp_doc_man_R15B03-1.tar.gz 1305001 SHA256 07980d8014c7cf8194b7078c137353f5083992add4663ced3dcba2ff91f228d8 SHA512 eb07552c83a942c1e7f1960b45edfab97b0628a1e08c7c827a07d77797901b4b60a6719b35d0f92a49eb04ada924e9263df70968a5920efc6ccf8e4e966933c6 WHIRLPOOL 764495a8bb67e2c67493452c83ff890d959aa5cd3bd711fce75b3c756dbacb913e50f7d92aab14dc33d6839daaac5a37dc7bcc11fc6392af11dd506a8d99076c
DIST otp_src_17.5.tar.gz 67242289 SHA256 3c28820c981b30c50df8ac2a4a238e5813454fa3ed2ad530bc7948a282846474 SHA512 cfd082c8baee7ded370a34f15a1ba3b846b7d81e06edc36c62308c9220697925f1feda91eeecb70fc658f8987087256f51a2ebd0c526d16eeb09c72889d2390d WHIRLPOOL 3c3d987981383bf148b9788fae0574da398ff63d81eea13da0463bed303922d06fe54354de1cd3d37091eb23438939c645176ab565877f06cc1f11235c4d8d3d
DIST otp_src_18.0.tar.gz 68124710 SHA256 a0b69da34b4f218eb7d63d9e96fc120aa7257bb6c37a0f40fb388e188b4111aa SHA512 84ec2a3834270c1babe153572d6187faa36c12128e604037d55be01719788c0dd79d46769ea7090d530b746206a25fe02346b02849abee10ee41ed4ac7567c02 WHIRLPOOL 7edc237ef906da5e086bcb7b37fe23da3293b3635f612adc9239736e17731270bf64624444c5556d9fd7a03e4e64678a3bd294d04be2aada2a88d897dad9bee0
DIST otp_src_18.2.1.tar.gz 68110840 SHA256 82d76ebfeeda5db64ea5b0f1a04aa0e9ac63380b278722e0e6052249bd3fe39a SHA512 00fba01b61e43a88cf2df4a40053e7239541ae9177949da7524d7fa481d6892495f28d98650336f647ef3bf2ee24f62e83fd5f6dffb40c7345804b880b59569c WHIRLPOOL fea5455fb8c876bdb297d3006543524ea4abcf8265de60e89fa3b5a84a98a88ad17277f2fc60ccfac03156d41cde36bd7d2ef0f7de598761a13127585648288b
DIST otp_src_R15B03-1.tar.gz 76123810 SHA256 4bccac86dd76aec050252e44276a0283a0df9218e6470cf042a9b9f9dfc9476c SHA512 baa8f388bd56bbdf1d3818802d011970fb51d38d14434532b1e4f04c1b8203e5a0cd9cc870f93a993cce750cd1af6e4b7df40dffc44e455353bce9d7c46c8e34 WHIRLPOOL ce76d01dfd17e0bc70e3daa7eab218000d1e802f55b0892e2e9654d2ea262f214f3bd006c0988885e787a1cfe782e8b61d5d1ee3a1d05cbced465b5a28e2de2e
166 changes: 166 additions & 0 deletions dev-lang/erlang/erlang-18.2.1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI=5
WX_GTK_VER="3.0"

inherit autotools elisp-common eutils java-pkg-opt-2 multilib 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="ErlPL-1.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
IUSE="compat-ethread doc emacs halfword hipe java kpoll libressl odbc smp sctp ssl systemd tk wxwidgets"

RDEPEND="
ssl? (
!libressl? ( >=dev-libs/openssl-0.9.7d:0 )
libressl? ( dev-libs/libressl )
)
emacs? ( virtual/emacs )
java? ( >=virtual/jdk-1.2:* )
odbc? ( dev-db/unixODBC )"
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

pkg_setup() {
if use halfword ; then
use amd64 || die "halfword support is limited to amd64"
fi
}

src_prepare() {
epatch "${FILESDIR}"/18.2.1-wx3.0.patch

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

# don't ignore LDFLAGS, reported upstream
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 halfword halfword-emulator) \
$(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")
}

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
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"
sed -e "s:${D}::g" -i "${ED}${ERL_LIBDIR}/bin/start"
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"

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
}
113 changes: 113 additions & 0 deletions dev-lang/erlang/files/18.2.1-wx3.0.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
Description: Fix constants for wxwidgets3.0
The values of wx constants can change between stable release series (and
some have between 2.8 and 3.0), but erlang seems to hardcode these values.
Author: Olly Betts <[email protected]>
Bug-Debian: https://bugs.debian.org/766790
Forwarded: no
Last-Update: 2014-11-25

--- a/lib/wx/include/wx.hrl
+++ b/lib/wx/include/wx.hrl
@@ -767,7 +767,7 @@
% From "checkbox.h"
-define(wxCHK_ALLOW_3RD_STATE_FOR_USER, 8192).
-define(wxCHK_3STATE, 4096).
--define(wxCHK_2STATE, 0).
+-define(wxCHK_2STATE, 16384).
% From "checkbox.h": wxCheckBoxState
-define(wxCHK_UNCHECKED, 0).
-define(wxCHK_CHECKED, 1).
@@ -1014,10 +1014,10 @@
-define(wxSIZE_AUTO_WIDTH, 1).
-define(wxSETUP, 131072).
-define(wxMORE, 65536).
--define(wxHELP, 32768).
--define(wxRESET, 16384).
--define(wxBACKWARD, 8192).
--define(wxFORWARD, 4096).
+-define(wxHELP, 4096).
+-define(wxRESET, 32768).
+-define(wxBACKWARD, 16384).
+-define(wxFORWARD, 8192).
-define(wxICON_MASK, (16#00000100 bor 16#00000200 bor 16#00000400 bor 16#00000800)).
-define(wxICON_ASTERISK, ?wxICON_INFORMATION).
-define(wxICON_STOP, ?wxICON_HAND).
@@ -1049,8 +1049,8 @@
-define(wxTC_TOP, 0).
-define(wxTC_FIXEDWIDTH, 32).
-define(wxTC_RIGHTJUSTIFY, 16).
--define(wxSP_WRAP, 8192).
--define(wxSP_ARROW_KEYS, 4096).
+-define(wxSP_WRAP, 32768).
+-define(wxSP_ARROW_KEYS, 16384).
-define(wxSP_VERTICAL, ?wxVERTICAL).
-define(wxSP_HORIZONTAL, ?wxHORIZONTAL).
-define(wxSB_VERTICAL, ?wxVERTICAL).
@@ -1071,8 +1071,8 @@
-define(wxCB_SIMPLE, 4).
-define(wxLB_INT_HEIGHT, 2048).
-define(wxLB_HSCROLL, ?wxHSCROLL).
--define(wxLB_ALWAYS_SB, 1024).
--define(wxLB_NEEDED_SB, 512).
+-define(wxLB_ALWAYS_SB, 512).
+-define(wxLB_NEEDED_SB, 0).
-define(wxLB_OWNERDRAW, 256).
-define(wxLB_EXTENDED, 128).
-define(wxLB_MULTIPLE, 64).
@@ -1548,7 +1548,7 @@
-define(wxUPDATE_UI_FROMIDLE, 2).
% From "dialog.h"
-define(wxDEFAULT_DIALOG_STYLE, (?wxCAPTION bor ?wxSYSTEM_MENU bor ?wxCLOSE_BOX)).
--define(wxDIALOG_NO_PARENT, 1).
+-define(wxDIALOG_NO_PARENT, 32).
% From "dirctrlg.h"
-define(wxDIRCTRL_DIR_ONLY, 16).
-define(wxDIRCTRL_SELECT_FIRST, 32).
@@ -3728,7 +3728,7 @@
-define(wxSTC_KEY_LEFT, 302).
-define(wxSTC_KEY_UP, 301).
-define(wxSTC_KEY_DOWN, 300).
--define(wxSTC_MODEVENTMASKALL, 8191).
+-define(wxSTC_MODEVENTMASKALL, 1048575).
-define(wxSTC_MULTILINEUNDOREDO, 4096).
-define(wxSTC_MOD_BEFOREDELETE, 2048).
-define(wxSTC_MOD_BEFOREINSERT, 1024).
@@ -3810,7 +3810,7 @@
-define(wxSTC_INDIC_TT, 2).
-define(wxSTC_INDIC_SQUIGGLE, 1).
-define(wxSTC_INDIC_PLAIN, 0).
--define(wxSTC_INDIC_MAX, 7).
+-define(wxSTC_INDIC_MAX, 31).
-define(wxSTC_CASE_LOWER, 2).
-define(wxSTC_CASE_UPPER, 1).
-define(wxSTC_CASE_MIXED, 0).
@@ -3835,7 +3835,7 @@
-define(wxSTC_CHARSET_BALTIC, 186).
-define(wxSTC_CHARSET_DEFAULT, 1).
-define(wxSTC_CHARSET_ANSI, 0).
--define(wxSTC_STYLE_MAX, 127).
+-define(wxSTC_STYLE_MAX, 255).
-define(wxSTC_STYLE_LASTPREDEFINED, 39).
-define(wxSTC_STYLE_CALLTIP, 38).
-define(wxSTC_STYLE_INDENTGUIDE, 37).
@@ -3934,9 +3934,9 @@
-define(wxTE_PROCESS_TAB, 64).
-define(wxTE_MULTILINE, 32).
-define(wxTE_READONLY, 16).
--define(wxTE_AUTO_SCROLL, 8).
+-define(wxTE_AUTO_SCROLL, 0).
-define(wxTE_NO_VSCROLL, 2).
--define(wxHAS_TEXT_WINDOW_STREAM, 0).
+-define(wxHAS_TEXT_WINDOW_STREAM, 1).
% From "textctrl.h": wxTextAttrAlignment
-define(wxTEXT_ALIGNMENT_DEFAULT, 0).
-define(wxTEXT_ALIGNMENT_LEFT, 1).
@@ -3986,7 +3986,7 @@
-define(wxDEFAULT_FRAME_STYLE, (?wxSYSTEM_MENU bor ?wxRESIZE_BORDER bor ?wxMINIMIZE_BOX bor ?wxMAXIMIZE_BOX bor ?wxCLOSE_BOX bor ?wxCAPTION bor ?wxCLIP_CHILDREN)).
-define(wxRESIZE_BORDER, 64).
-define(wxTINY_CAPTION_VERT, 128).
--define(wxTINY_CAPTION_HORIZ, 256).
+-define(wxTINY_CAPTION_HORIZ, 128).
-define(wxMAXIMIZE_BOX, 512).
-define(wxMINIMIZE_BOX, 1024).
-define(wxSYSTEM_MENU, 2048).

0 comments on commit a18d94b

Please sign in to comment.