summaryrefslogtreecommitdiff
path: root/build-support/ghc90-bin/PKGBUILD
blob: beb4c2bfe56b977626945a1c77d0fe7f4b20d671 (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
# Maintainer: Rudy Matela <rudy@matela.com.br>
#
# Contributor: Rudy Matela <rudy@matela.com.br>
#
# This package can coexist with the latest version of GHC.
# If you would like to compile GHC yourself (AUR: ghc9.0),
# you can use this to bootstrap compilation.
pkgname=ghc90-bin
pkgver=9.0.1
pkgrel=1
pkgdesc='Legacy binary GHC 9.0 installed on /usr/bin/ghc-9.0 (Feb/2021 - Feb/2021).'
arch=('i486' 'i686' 'pentium4')
url='http://www.haskell.org/ghc/'
license=('custom')
depends=('gcc' 'gmp' 'libffi' 'perl' 'ncurses5-compat-libs')
makedepends=( 'perl' 'libxslt' 'docbook-xsl')
checkdepends=('python2')
install='ghc.install'
options=('staticlibs')
provides=('ghc9.0')
conflicts=('ghc9.0')
source=("https://www.haskell.org/ghc/dist/${pkgver}/ghc-${pkgver}-i386-deb9-linux.tar.xz")
noextract=("ghc-${pkgver}-${CARCH}-deb10-linux.tar.xz")
sha256sums=('880e37cea8328401bcfecfe4bb56eb85195f30135b140140b3f24094264f8ba5')

prepare() {
	# for some reason, bsdtar cannot unpack this file:
	tar -xf "ghc-${pkgver}-i386-deb9-linux.tar.xz"
	# see https://wiki.archlinux.org/index.php/PKGBUILD#noextract
}

build() {
  cd ghc-${pkgver}

  sed -i 's,"$bindir/ghc","$bindir/ghc-9.0",' utils/runghc/runghc.wrapper

  ./configure \
    --prefix=/usr \
    --docdir=/usr/share/doc/ghc-9.0
}

package() {
  cd ghc-${pkgver}

  make DESTDIR=${pkgdir} install

  mv ${pkgdir}/usr/bin/ghc        ${pkgdir}/usr/bin/ghc-9.0
  mv ${pkgdir}/usr/bin/ghci       ${pkgdir}/usr/bin/ghci-9.0
  mv ${pkgdir}/usr/bin/ghc-pkg    ${pkgdir}/usr/bin/ghc-pkg-9.0
  mv ${pkgdir}/usr/bin/haddock    ${pkgdir}/usr/bin/haddock-ghc-9.0
  mv ${pkgdir}/usr/bin/hp2ps      ${pkgdir}/usr/bin/hp2ps-ghc-9.0
  mv ${pkgdir}/usr/bin/hpc        ${pkgdir}/usr/bin/hpc-ghc-9.0
  mv ${pkgdir}/usr/bin/hsc2hs     ${pkgdir}/usr/bin/hsc2hs-ghc-9.0
  mv ${pkgdir}/usr/bin/runghc     ${pkgdir}/usr/bin/runghc-9.0
  rm ${pkgdir}/usr/bin/runhaskell # use runghc-9.0 instead

  mv ${pkgdir}/usr/share/man/man1/ghc.1 ${pkgdir}/usr/share/man/man1/ghc-9.0

  install -d            ${pkgdir}/usr/share/licenses/ghc-9.0
  install -m644 LICENSE ${pkgdir}/usr/share/licenses/ghc-9.0
    
  # for some reason I end up with the wrong LLVM target on IA-32,
  # patch it
  sed -i 's/,("LLVM target", ".*")/,("LLVM target", "i686-unknown-linux")/' ${pkgdir}/usr/lib/ghc-9.0.1/settings
}