summaryrefslogtreecommitdiff
path: root/extra/erlang/PKGBUILD
blob: 62458f5958abd5e320522858f2980823b0675d74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# $Id: PKGBUILD 145333 2011-12-21 20:47:12Z andrea $
# Maintainer: Vesa Kaihlavirta <vesa@archlinux.org>
# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
# Contributor: Tom Burdick <thomas.burdick@wrightwoodtech.com>

pkgname=erlang
pkgver=R14B04
pkgrel=2
pkgdesc="A small concurrent functional programming language developed by Ericsson."
arch=(i686 x86_64)
url="http://www.erlang.org/index.html"
license=('custom')
depends=('ncurses' 'glibc')
makedepends=('java-environment' 'perl' 'openssl' 'wxgtk' 'unixodbc>=2.3.1' 'mesa')
optdepends=('wxgtk: for wx support' 'unixodbc: database')

options=('!makeflags')
source=(http://www.erlang.org/download/otp_src_${pkgver/./-}.tar.gz
	http://www.erlang.org/download/otp_doc_man_${pkgver/./-}.tar.gz)
md5sums=('4b469729f103f52702bfb1fb24529dc0'
         'f31e72518daae4007f595c0b224dd59f')

# please check these deps reported by namcap when you do the next build:
#erlang E: Dependency java-environment detected and not included (found class files usr/lib/erlang/lib/jinterface-1.5.4/priv/OtpErlang.jar, usr/lib/erlang/lib/ic-4.2.27/priv/ic.jar)
#erlang E: Dependency mesa detected and not included (libraries ['usr/lib/libGLU.so.1'] needed in files ['usr/lib/erlang/lib/wx-0.99/priv/erl_gl.so'])


build() {
  cd "$srcdir/otp_src_${pkgver/./-}"
  export ERTSVERSION=$(sed -n 's/^VSN[ ]*=[ ]*\([0-9.]\)/\1/p' < erts/vsn.mk)
  export ERLINTERFACEVERSION=$(sed -n 's/^EI_VSN[ ]*=[ ]*\([0-9.]\)/\1/p' < lib/erl_interface/vsn.mk)

  sed -i '/SSL_DYNAMIC_ONLY=/s:no:yes:' erts/configure

  CFLAGS="${CFLAGS} -fno-strict-aliasing" ./configure --prefix=/usr --enable-smp-support --enable-threads -enable-native-libs
  make
}

package() {
  cd "$srcdir/otp_src_${pkgver/./-}"
  make INSTALL_PREFIX="$pkgdir" install

# fix prefix
  cd "$pkgdir"
  for i in usr/lib/erlang/bin/erl \
      usr/lib/erlang/bin/start \
      usr/lib/erlang/erts-${ERTSVERSION}/bin/erl \
      usr/lib/erlang/erts-${ERTSVERSION}/bin/start \
      usr/lib/erlang/releases/RELEASES ;do
    sed -i "s#$pkgdir##" $i
  done

# fix symlinks
  cd "$pkgdir/usr/lib/erlang/bin"
  ln -sf ../erts-${ERTSVERSION}/bin/epmd

  cd "$pkgdir/usr/bin"
  for file in *; do
    ln -sfv ../lib/erlang/bin/$file
  done

  ln -s ../lib/erlang/lib/erl_interface-${ERLINTERFACEVERSION}/bin/erl_call "$pkgdir/usr/bin/erl_call"

# install documentation
  install -d "$pkgdir/usr/share/doc/erlang"
  install -D -m644 "$srcdir"/{COPYRIGHT,PR.template,README} "$pkgdir/usr/share/doc/erlang"
  cp -r "$srcdir/man" "$pkgdir/usr/lib/erlang"

  install -Dm644 "$srcdir/otp_src_${pkgver/./-}/EPLICENCE" "$pkgdir/usr/share/licenses/$pkgname/EPLICENCE"

}