summaryrefslogtreecommitdiff
path: root/build-support
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2021-11-24 21:25:49 +0100
committerAndreas Baumann <mail@andreasbaumann.cc>2021-11-24 21:25:49 +0100
commit7fc5f1eff1d08bddf64eb5ca17a825d06e4e5e00 (patch)
tree3941ea2d86159f2dee0f9cead46b42e6d1510014 /build-support
parent4acc6d4626b9763236ae9937f044331d87ac6073 (diff)
downloadpackages-7fc5f1eff1d08bddf64eb5ca17a825d06e4e5e00.tar.xz
added ghc9.2-bin to build-support (for bootstrapping ghc)
Diffstat (limited to 'build-support')
-rw-r--r--build-support/ghc9.2-bin/PKGBUILD61
-rw-r--r--build-support/ghc9.2-bin/ghc.install10
2 files changed, 71 insertions, 0 deletions
diff --git a/build-support/ghc9.2-bin/PKGBUILD b/build-support/ghc9.2-bin/PKGBUILD
new file mode 100644
index 00000000..b86163c8
--- /dev/null
+++ b/build-support/ghc9.2-bin/PKGBUILD
@@ -0,0 +1,61 @@
+# 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.2),
+# you can use this to bootstrap compilation.
+pkgname=ghc9.2-bin
+pkgver=9.2.1
+pkgrel=1
+pkgdesc='Legacy binary GHC 9.2 installed on /usr/bin/ghc-9.2 (Oct/2021 - Oct/2021).'
+arch=('i486' 'i686' 'pentium4')
+url='http://www.haskell.org/ghc/'
+license=('custom')
+depends=('gcc' 'gmp' 'libffi' 'perl')
+makedepends=( 'perl' 'libxslt' 'docbook-xsl' 'ncurses5-compat-libs')
+checkdepends=('python2')
+install='ghc.install'
+options=('staticlibs')
+provides=('ghc9.2')
+conflicts=('ghc9.2')
+source=("https://www.haskell.org/ghc/dist/${pkgver}/ghc-${pkgver}-i386-deb9-linux.tar.xz")
+noextract=("ghc-${pkgver}-${CARCH}-deb10-linux.tar.xz")
+sha256sums=('6daa9e983fbe5af5a3c449c92e5b331d2ecb8e76ea07fc4e237ba5ff27af2c45')
+
+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.2",' utils/runghc/runghc.wrapper
+
+ ./configure \
+ --prefix=/usr \
+ --docdir=/usr/share/doc/ghc-9.2
+}
+
+package() {
+ cd ghc-${pkgver}
+
+ make DESTDIR=${pkgdir} install
+
+ mv ${pkgdir}/usr/bin/ghc ${pkgdir}/usr/bin/ghc-9.2
+ mv ${pkgdir}/usr/bin/ghci ${pkgdir}/usr/bin/ghci-9.2
+ mv ${pkgdir}/usr/bin/ghc-pkg ${pkgdir}/usr/bin/ghc-pkg-9.2
+ mv ${pkgdir}/usr/bin/haddock ${pkgdir}/usr/bin/haddock-ghc-9.2
+ mv ${pkgdir}/usr/bin/hp2ps ${pkgdir}/usr/bin/hp2ps-ghc-9.2
+ mv ${pkgdir}/usr/bin/hpc ${pkgdir}/usr/bin/hpc-ghc-9.2
+ mv ${pkgdir}/usr/bin/hsc2hs ${pkgdir}/usr/bin/hsc2hs-ghc-9.2
+ mv ${pkgdir}/usr/bin/runghc ${pkgdir}/usr/bin/runghc-9.2
+ rm ${pkgdir}/usr/bin/runhaskell # use runghc-9.2 instead
+
+ mv ${pkgdir}/usr/share/man/man1/ghc.1 ${pkgdir}/usr/share/man/man1/ghc-9.2
+
+ install -d ${pkgdir}/usr/share/licenses/ghc-9.2
+ install -m644 LICENSE ${pkgdir}/usr/share/licenses/ghc-9.2
+}
diff --git a/build-support/ghc9.2-bin/ghc.install b/build-support/ghc9.2-bin/ghc.install
new file mode 100644
index 00000000..1a1e0420
--- /dev/null
+++ b/build-support/ghc9.2-bin/ghc.install
@@ -0,0 +1,10 @@
+pre_upgrade() {
+ echo '==> Unregistering cabalized packages...'
+ [[ -d /usr/share/haskell-ghc-9.2 ]] && find /usr/share/haskell-ghc-9.2 -maxdepth 2 -name 'unregister.sh' -exec {} \;
+ echo '==> Done.'
+}
+
+post_upgrade() {
+ echo '==> All cabalized packages need to be reinstalled now.'
+ echo '==> See /usr/share/haskell-ghc-9.2/ and ghc-pkg-9.2 list --user for a tentative list of affected packages.'
+}