# Description: Glasgow Haskell compiler. # URL: https://www.haskell.org/haskellwiki/Glasgow_Haskell_Compiler # Maintainer: Danny Rawlins, crux at romster dot me # Depends on: docbook-xsl libedit libffi libgmp readline name=ghc version=8.10.2 _bversion=8.10.2 release=1 _bootstrapsum=fd2dccd6f496915a5f962dab24e7eeb8bee49bcc38e74b17eac76159083538fa #curl -s http://downloads.haskell.org/~ghc/$version/SHA256SUMS | grep ./ghc-$version-x86_64-centos7-linux.tar.xz | cut -d' ' -f1 source=(https://downloads.haskell.org/~ghc/$version/$name-$version-src.tar.xz) build() { # if ghc is not previously installed bootstrap it if [ ! -e '/usr/bin/ghc' ]; then # download binary bootstrap file if it does not exist if [ ! -f "$PKGMK_SOURCE_DIR/$name-$_bversion-x86_64-centos7-linux.tar.xz" ]; then wget "http://downloads.haskell.org/~ghc/$_bversion/$name-$_bversion-x86_64-centos7-linux.tar.xz" \ --output-document="$PKGMK_SOURCE_DIR/$name-$_bversion-x86_64-centos7-linux.tar.xz" fi if [ $_bootstrapsum != $(sha256sum "$PKGMK_SOURCE_DIR/$name-$_bversion-x86_64-centos7-linux.tar.xz" | cut -d' ' -f1) ]; then echo "Error Bootstrap file $PKGMK_SOURCE_DIR/$name-$_bversion-x86_64-centos7-linux.tar.xz failed sha256sum" exit $E_GENERAL fi mkdir tmp cd tmp bsdtar -xf "$PKGMK_SOURCE_DIR/$name-$_bversion-x86_64-centos7-linux.tar.xz" mv $name-$_bversion ../$name-$_bversion-binary cd - rmdir tmp cd $name-$_bversion-binary # hack for gmp and ncurses for bootstrap binary ghc ln -s /usr/lib/libgmp.so.10 libgmp.so.3 ln -s /lib/libncurses.so.6 libtinfo.so.5 export LD_LIBRARY_PATH="$(pwd):$LD_LIBRARY_PATH" ./configure --prefix=$SRC/binary make install cd $SRC export PATH="$SRC/binary/bin:$PATH" fi cd $name-$version ./configure \ --prefix=/usr \ --docdir=/usr/share/doc/ghc \ --with-system-libffi \ --with-ffi-includes=$(pkg-config --variable=includedir libffi) make make -j1 DESTDIR=$PKG install rm -r $PKG/usr/share/doc }