blob: d84de287c59b69268a9700497c0b480210fac51b (
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
72
73
74
75
76
77
78
79
80
81
82
83
|
# Maintainer: Rudy Matela <rudy@matela.com.br>
#
# Contributor: Rudy Matela <rudy@matela.com.br>
#
#
# This package can coexist with the latest version of GHC provided in the
# standard Arch Linux repositories. This package is useful for:
#
# * testing for forwards/backwards compatibility this specific GHC branch;
# * compiling programs that only work with this specific GHC branch;
# * as a dependency to packages that can only be compiled with this branch.
#
# If you would like to compile GHC yourself,
# you can use this package to bootstrap compilation.
#
#
# https://ghc.gitlab.haskell.org/ghc/doc/users_guide/intro.html#ghc-version-numbering-policy
# https://www.haskell.org/ghc/download.html
# https://www.haskell.org/ghc/download_ghc_7_4_2.html
#
#
# After installing runghc-7.4 and ghci-7.4 work fine out of the box:
#
# $ cat hello.hs
# main = putStrLn "hello"
#
# $ runghc-7.4 hello.hs
# hello
#
# $ ghci-7.4
# > putStrLn "hello"
# hello
#
# However compiling binaries requires either `-optl -no-pie` or `-dynamic`:
#
# $ ghc-7.4 -optl -no-pie hello.hs
#
# $ ghc-7.4 -dynamic hello.hs
pkgname=ghc7.4-bin
pkgver=7.4.2
pkgrel=5
_ver_branch=7.4
pkgdesc="Binary GHC ${_ver_branch} installed on /usr/bin/ghc-${_ver_branch}"
arch=('x86_64')
url='http://www.haskell.org/ghc/'
license=('BSD-3-Clause')
depends=('gcc' 'gmp4' 'libffi5' 'perl' 'ncurses5-compat-libs')
makedepends=('ghc' 'libxslt' 'docbook-xsl')
install='ghc.install'
provides=("ghc${_ver_branch}")
conflicts=("ghc${_ver_branch}")
source=("https://www.haskell.org/ghc/dist/${pkgver}/ghc-${pkgver}-${CARCH}-unknown-linux.tar.bz2")
sha256sums=('da962575e2503dec250252d72a94b6bf69baef7a567b88e90fd6400ada527210')
build() {
cd ghc-${pkgver}
./configure \
--prefix=/usr \
--docdir=/usr/share/doc/ghc-${_ver_branch}
}
package() {
cd ghc-${pkgver}
make DESTDIR=${pkgdir} install
mv ${pkgdir}/usr/bin/ghc ${pkgdir}/usr/bin/ghc-${_ver_branch}
mv ${pkgdir}/usr/bin/ghci ${pkgdir}/usr/bin/ghci-${_ver_branch}
mv ${pkgdir}/usr/bin/ghc-pkg ${pkgdir}/usr/bin/ghc-pkg-${_ver_branch}
mv ${pkgdir}/usr/bin/haddock ${pkgdir}/usr/bin/haddock-ghc-${_ver_branch}
mv ${pkgdir}/usr/bin/hp2ps ${pkgdir}/usr/bin/hp2ps-ghc-${_ver_branch}
mv ${pkgdir}/usr/bin/hpc ${pkgdir}/usr/bin/hpc-ghc-${_ver_branch}
mv ${pkgdir}/usr/bin/hsc2hs ${pkgdir}/usr/bin/hsc2hs-ghc-${_ver_branch}
mv ${pkgdir}/usr/bin/runghc ${pkgdir}/usr/bin/runghc-${_ver_branch}
rm ${pkgdir}/usr/bin/runhaskell # use runghc-${_ver_branch} instead
mv ${pkgdir}/usr/share/man/man1/ghc.1 ${pkgdir}/usr/share/man/man1/ghc-${_ver_branch}
install -d ${pkgdir}/usr/share/licenses/ghc-${_ver_branch}
install -m644 LICENSE ${pkgdir}/usr/share/licenses/ghc-${_ver_branch}
}
|