Updated ghc

This commit is contained in:
Stephen McIntosh 2012-04-19 20:15:25 -04:00
parent 879482616c
commit 4a80d6fcd8
23 changed files with 195 additions and 146 deletions

View File

@ -5,71 +5,104 @@
# Colaborator: Vesa Kaihlavirta <vesa@archlinux.org>
pkgname=ghc
pkgver=7.2.2
pkgver=7.4.1
pkgrel=1
pkgdesc="The Glasgow Haskell Compiler"
arch=(i686 x86_64)
pkgdesc='The Glasgow Haskell Compiler'
arch=('i686' 'x86_64')
url='http://www.haskell.org/ghc/'
license=('BSD')
depends=(gcc 'gmp>=5.0' perl)
makedepends=(dblatex docbook-xsl ghc happy hasktags libxslt)
provides=("haskell-array=0.3.0.2"
"haskell-bytestring=0.9.1.10"
"haskell-cabal=1.10.1.0"
"haskell-containers=0.4.0.0"
"haskell-directory=1.1.0.0"
"haskell-extensible-exceptions=0.1.1.2"
"haskell-filepath=1.2.0.0"
"haskell-haskell98=1.1.0.1"
"haskell-hpc=0.5.0.6"
"haskell-old-locale=1.0.0.2"
"haskell-old-time=1.0.0.6"
"haskell-pretty=1.0.1.2"
"haskell-process=1.0.1.5"
"haskell-random=1.0.0.3"
"haskell-template-haskell=2.5.0.0"
"haskell-time=1.2.0.3"
"haskell-unix=2.4.2.0"
license=('custom')
depends=('perl' 'gmp>=5.0' 'gcc' 'libffi')
makedepends=('ghc' 'happy' 'perl' 'libxslt' 'docbook-xsl')
checkdepends=('python2')
install='ghc.install'
groups=('haskell')
provides=('haskell-array=0.4.0.0'
'haskell-base=4.5.0.0'
'haskell-binary=0.5.1.0'
'haskell-bin-package-db=0.0.0.0'
'haskell-bytestring=0.9.2.1'
'haskell-containers=0.4.2.1'
'haskell-deepseq=1.3.0.0'
'haskell-directory=1.1.0.2'
'haskell-extensible-exceptions=0.1.1.4'
'haskell-filepath=1.3.0.0'
'haskell-ghc-prim=0.2.0.0'
'haskell-haskell2010=1.1.0.1'
'haskell-haskell98=2.0.0.1'
'haskell-hoopl=3.8.7.3'
'haskell-hpc=0.5.1.1'
'haskell-integer-gmp=0.4.0.0'
'haskell-old-locale=1.0.0.4'
'haskell-old-time=1.1.0.0'
'haskell-pretty=1.1.1.0'
'haskell-process=1.1.0.1'
'haskell-template-haskell=2.7.0.0'
'haskell-time=1.4'
'haskell-unix=2.5.1.0'
'haskell-cabal=1.14.0'
)
replaces=("haskell-array<0.3.0.2"
"haskell-bytestring<0.9.1.10"
"haskell-cabal<1.10.1.0"
"haskell-containers<0.4.0.0"
"haskell-directory<1.1.0.0"
"haskell-extensible-exceptions<0.1.1.2"
"haskell-filepath<1.2.0.0"
"haskell-haskell98<1.1.0.1"
"haskell-hpc<0.5.0.6"
"haskell-old-locale<1.0.0.2"
"haskell-old-time<1.0.0.6"
"haskell-pretty<1.0.1.2"
"haskell-process<1.0.1.5"
"haskell-random<1.0.0.3"
"haskell-template-haskell<2.5.0.0"
"haskell-time<1.2.0.3"
"haskell-unix<2.4.2.0"
replaces=('haskell-array<0.4.0.0'
'haskell-base<4.5.0.0'
'haskell-binary<0.5.1.0'
'haskell-bin-package-db<0.0.0.0'
'haskell-bytestring<0.9.2.1'
'haskell-containers<0.4.2.1'
'haskell-deepseq<1.3.0.0'
'haskell-directory<1.1.0.2'
'haskell-extensible-exceptions<0.1.1.4'
'haskell-filepath<1.3.0.0'
'haskell-ghc-prim<0.2.0.0'
'haskell-haskell2010<1.1.0.1'
'haskell-haskell98<2.0.0.1'
'haskell-hoopl<3.8.7.3'
'haskell-hpc<0.5.1.1'
'haskell-integer-gmp<0.4.0.0'
'haskell-old-locale<1.0.0.4'
'haskell-old-time<1.1.0.0'
'haskell-pretty<1.1.1.0'
'haskell-process<1.1.0.1'
'haskell-template-haskell<2.7.0.0'
'haskell-time<1.4'
'haskell-unix<2.5.1.0'
'haskell-cabal<1.14.0'
)
options=(!strip 'docs')
install=$pkgname.install
source=("http://www.haskell.org/ghc/dist/$pkgver/ghc-$pkgver-src.tar.bz2"
build.mk)
md5sums=('fa19d9fe5049b7a1352b0b7c9880c141'
'5a3e0880c80b1dcecf779ff2e63a9c0d')
source=("http://www.haskell.org/ghc/dist/${pkgver}/ghc-${pkgver}-src.tar.bz2"
"http://www.haskell.org/ghc/dist/${pkgver}/ghc-${pkgver}-testsuite.tar.bz2"
'build.mk')
md5sums=('5d86c420978b49cc60edea9bd4c36703'
'54bc9405c14c3226b6e3de3cd61e2777'
'82b67cdd24a2e434a4399f30f14b21a3')
build() {
cd $srcdir/$pkgname-$pkgver
cd ghc-${pkgver}
cp $srcdir/build.mk mk/build.mk
cp ${srcdir}/build.mk mk/build.mk
./configure \
--prefix=/usr
make
--prefix=/usr
make -j4 -l8
}
check() {
cd ghc-${pkgver}
# python2 rename
sed -e 's/PYTHON = python/&2/' -i testsuite/mk/boilerplate.mk
sed -e 's_#!/usr/bin/env python_&2_' -i testsuite/timeout/calibrate testsuite/timeout/timeout.py
# note: there is one test failure on i686 only: http://hackage.haskell.org/trac/ghc/ticket/5856
make THREADS=9 test
# might be some failures
#make fulltest
}
package() {
cd $srcdir/$pkgname-$pkgver
make DESTDIR=$pkgdir install
cd ghc-${pkgver}
# Legal.
install -Dm644 LICENSE $pkgdir/usr/share/licenses/$pkgname/license.txt
make DESTDIR=${pkgdir} install
install -d ${pkgdir}/usr/share/licenses/ghc
install -m644 LICENSE \
${pkgdir}/usr/share/licenses/ghc
}

View File

@ -7,15 +7,17 @@
# Uncomment one of these to select a build profile below:
# Full build with max optimisation (slow build)
# Full build with max optimisation and everything enabled (very slow build)
BuildFlavour = perf
# Fastest build (libs unoptimised):
#BuildFlavour = quickest
# Fast build with optimised libraries:
# Fast build with optimised libraries, no profiling (RECOMMENDED):
#BuildFlavour = quick
# Even faster build. NOT RECOMMENDED: the libraries will be
# completely unoptimised, so any code built with this compiler
# (including stage2) will run very slowly:
#BuildFlavour = quickest
# Profile the stage2 compiler:
#BuildFlavour = prof
@ -25,6 +27,9 @@ BuildFlavour = perf
# A development build, working on the stage 2 compiler:
#BuildFlavour = devel2
# An unregisterised, optimised build of ghc, for porting:
#BuildFlavour = unreg
GhcLibWays = v
# -------- 1. A Performance/Distribution build--------------------------------
@ -37,7 +42,7 @@ SRC_HC_OPTS = -O -H64m
GhcStage1HcOpts = -O -fasm
GhcStage2HcOpts = -O2 -fasm
GhcHcOpts = -Rghc-timing
GhcLibHcOpts = -O2 -XGenerics
GhcLibHcOpts = -O2
GhcLibWays += p
ifeq "$(PlatformSupportsSharedLibs)" "YES"
@ -112,6 +117,7 @@ HADDOCK_DOCS = NO
BUILD_DOCBOOK_HTML = NO
BUILD_DOCBOOK_PS = NO
BUILD_DOCBOOK_PDF = NO
LAX_DEPENDENCIES = NO
endif
@ -128,23 +134,42 @@ HADDOCK_DOCS = NO
BUILD_DOCBOOK_HTML = NO
BUILD_DOCBOOK_PS = NO
BUILD_DOCBOOK_PDF = NO
LAX_DEPENDENCIES = NO
# After stage 1 and the libraries have been built, you can uncomment this line:
# stage=2
# Then stage 1 will not be touched by the build system, until
# you comment the line again. This is a useful trick for when you're
# working on stage 2 and want to freeze stage 1 and the libraries for
# a while.
endif
# -------- A Unregisterised build) -------------------------------------------
ifeq "$(BuildFlavour)" "unreg"
GhcUnregisterised = YES
GhcWithNativeCodeGen = NO
SRC_HC_OPTS = -O -H64m
GhcStage1HcOpts = -O
GhcStage2HcOpts = -O2
GhcHcOpts = -Rghc-timing
GhcLibHcOpts = -O2
SplitObjs = NO
HADDOCK_DOCS = NO
BUILD_DOCBOOK_HTML = NO
BUILD_DOCBOOK_PS = NO
BUILD_DOCBOOK_PDF = NO
endif
# -----------------------------------------------------------------------------
# Other settings that might be useful
# profiled RTS
#GhcRtsCcOpts = -pg -g
# Optimised/profiled RTS
#GhcRtsCcOpts = -O2 -pg
#GhcRtsWithFrontPanel = YES
#SRC_HC_OPTS += `gtk-config --libs`
# NoFib settings
NoFibWays =
STRIP=:
STRIP_CMD = :

View File

@ -1,19 +1,10 @@
pkgname=ghc
pre_upgrade() {
cat << EOF
==> Unregistering cabalized packages...
EOF
cd /usr/share/haskell/ && (for a in *; do ghc-pkg unregister --force $a &> /dev/null; done; cd - > /dev/null )
cat << EOF
==> Done.
EOF
echo '==> Unregistering cabalized packages...'
[[ -d /usr/share/haskell ]] && find /usr/share/haskell -maxdepth 2 -name 'unregister.sh' -exec {} \;
echo '==> Done.'
}
post_upgrade() {
cat << EOF
==> All cabalized and yaourt-installed packages need to be reinstalled now.
==> See /usr/share/haskell/ and ghc-pkg list --user for a tentative list of affected packages.
EOF
echo '==> All cabalized packages need to be reinstalled now.'
echo '==> See /usr/share/haskell/ and ghc-pkg list --user for a tentative list of affected packages.'
}

View File

@ -6,9 +6,9 @@
pkgname=haskell-binary
_basename=haskell
_pkgname=binary
pkgver=0.5.0.2
ghcver=7.0.3
pkgrel=5
pkgver=0.5.1.0
ghcver=7.4.1
pkgrel=1
pkgdesc="Binary serialisation for Haskell values using lazy ByteStrings"
url="http://hackage.haskell.org/package/binary"
license=('BSD')
@ -16,7 +16,7 @@ arch=('i686' 'x86_64')
depends=(ghc=$ghcver)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('6bf8f3d1441602c9ab09a75e3bd6e926')
md5sums=('c61d77323255f23e413e84d4bcbd853a')
build() {
cd $srcdir/$_pkgname-$pkgver

View File

@ -6,8 +6,8 @@
pkgname=haskell-dataenc
_basename=haskell
_pkgname=dataenc
pkgver=0.14.0.2
ghcver=7.0.3
pkgver=0.14.0.3
ghcver=7.4.1
pkgrel=1
pkgdesc="Data encoding library"
url="http://hackage.haskell.org/package/$_pkgname"
@ -16,7 +16,7 @@ arch=('i686' 'x86_64')
depends=(ghc=$ghcver)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('60ea9bb83256b3e3a22356010084f6e7')
md5sums=('643a8c022b9c840f801faf9a661fe637')
build() {
cd $srcdir/$_pkgname-$pkgver

View File

@ -6,17 +6,17 @@
pkgname=haskell-deepseq
_basename=haskell
_pkgname=deepseq
pkgver=1.2.0.1
ghcver=7.0.3
pkgver=1.3.0.0
ghcver=7.4.1
pkgrel=1
pkgdesc="Fully evaluate data structures"
url="http://hackage.haskell.org/package/$_pkgname"
url="http://hackage.haskell.org/package/deepseq"
license=('BSD')
arch=('i686' 'x86_64')
depends=(ghc=$ghcver)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('74a226454f86a8b7208d852d5b1cfbf5')
md5sums=('a711fa94f1869074366ac69b53c2fa5b')
build() {
cd $srcdir/$_pkgname-$pkgver

View File

@ -7,8 +7,8 @@ pkgname=haskell-hashed-storage
_basename=haskell
_pkgname=hashed-storage
pkgver=0.5.9
ghcver=7.2.2
pkgrel=1
ghcver=7.4.1
pkgrel=2
pkgdesc="Hashed file storage support code."
url="http://hackage.haskell.org/package/hashed-storage"
license=('BSD')

View File

@ -6,8 +6,8 @@
pkgname=haskell-haskeline
_basename=haskell
_pkgname=haskeline
pkgver=0.6.4.3
ghcver=7.0.3
pkgver=0.6.4.6
ghcver=7.4.1
pkgrel=1
pkgdesc="A command-line interface for user input, written in Haskell"
url="http://hackage.haskell.org/package/haskeline"
@ -16,7 +16,7 @@ arch=('i686' 'x86_64')
depends=(ghc=$ghcver haskell-utf8-string haskell-mtl haskell-terminfo)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('93d2f523608341cd56293edda00c4623')
md5sums=('c43d01e3ea23eed266060391ca680a76')
build() {
cd $srcdir/$_pkgname-$pkgver

View File

@ -6,17 +6,17 @@
pkgname=haskell-hslogger
_basename=haskell
_pkgname=hslogger
pkgver=1.1.0
ghcver=7.0.3
pkgver=1.1.5
ghcver=7.4.1
pkgrel=1
pkgdesc="Versatile logging framework"
url="http://hackage.haskell.org/package/$_pkgname"
url="http://hackage.haskell.org/package/hslogger"
license=('LGPL')
arch=('i686' 'x86_64')
depends=(ghc=$ghcver haskell-mtl haskell-network)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('8039e079338dae19e1273bbd73332014')
md5sums=('cd3dfd6f88176bd53b333ea29130a857')
build() {
cd $srcdir/$_pkgname-$pkgver

View File

@ -7,10 +7,10 @@ pkgname=haskell-html
_basename=haskell
_pkgname=html
pkgver=1.0.1.2
ghcver=7.0.3
pkgrel=7
ghcver=7.4.1
pkgrel=8
pkgdesc="HTML combinator library"
url="http://hackage.haskell.org/package/$_pkgname"
url="http://hackage.haskell.org/package/html"
license=('BSD')
arch=('i686' 'x86_64')
depends=(ghc=$ghcver)

View File

@ -7,8 +7,8 @@ pkgname=haskell-mmap
_basename=haskell
_pkgname=mmap
pkgver=0.5.7
ghcver=7.0.3
pkgrel=2
ghcver=7.4.1
pkgrel=3
pkgdesc="Memory mapped files for POSIX and Windows"
url="http://hackage.haskell.org/package/mmap"
license=('BSD')

View File

@ -7,8 +7,8 @@ pkgname=haskell-mtl
_basename=haskell
_pkgname=mtl
pkgver=2.0.1.0
ghcver=7.0.3
pkgrel=1
ghcver=7.4.1
pkgrel=2
pkgdesc="Monad transformer library"
url="http://hackage.haskell.org/package/mtl"
license=('BSD')

View File

@ -6,8 +6,8 @@
pkgname=haskell-network
_basename=haskell
_pkgname=network
pkgver=2.3.0.6
ghcver=7.0.3
pkgver=2.3.0.11
ghcver=7.4.1
pkgrel=1
pkgdesc="Networking-related facilities"
url="http://hackage.haskell.org/package/network"
@ -16,7 +16,7 @@ arch=('i686' 'x86_64')
depends=(ghc=$ghcver haskell-parsec)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('423539c6e12eada2c0bea4689d1e3d32')
md5sums=('cfe4922ac85685be9f86d4d34654f481')
build() {
cd $srcdir/$_pkgname-$pkgver

View File

@ -6,8 +6,8 @@
pkgname=haskell-parsec
_basename=haskell
_pkgname=parsec
pkgver=3.1.1
ghcver=7.0.3
pkgver=3.1.2
ghcver=7.4.1
pkgrel=1
pkgdesc="Monadic parser combinators"
url="http://hackage.haskell.org/package/$_pkgname"
@ -16,7 +16,7 @@ arch=('i686' 'x86_64')
depends=(ghc=$ghcver haskell-mtl)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('3d5500847cac09f6f658db825b6c5df8')
md5sums=('c2a75dfd247ae4839e2602b62dc87487')
build() {
cd $srcdir/$_pkgname-$pkgver

View File

@ -7,10 +7,10 @@ pkgname=haskell-regex-base
_basename=haskell
_pkgname=regex-base
pkgver=0.93.2
ghcver=7.0.3
pkgrel=2
ghcver=7.4.1
pkgrel=3
pkgdesc="Interface API for regex-posix,pcre,parsec,tdfa,dfa"
url="http://hackage.haskell.org/package/$_pkgname"
url="http://hackage.haskell.org/package/regex-base"
license=('BSD')
arch=('i686' 'x86_64')
depends=(ghc=$ghcver haskell-mtl)

View File

@ -7,10 +7,10 @@ pkgname=haskell-regex-compat
_basename=haskell
_pkgname=regex-compat
pkgver=0.95.1
ghcver=7.0.3
pkgrel=1
ghcver=7.4.1
pkgrel=2
pkgdesc="Replaces and enhances Text.Regex"
url="http://hackage.haskell.org/package/$_pkgname"
url="http://hackage.haskell.org/package/regex-compat"
license=('BSD')
arch=('i686' 'x86_64')
depends=(ghc=$ghcver haskell-regex-base haskell-regex-posix)

View File

@ -7,10 +7,10 @@ pkgname=haskell-regex-posix
_basename=haskell
_pkgname=regex-posix
pkgver=0.95.1
ghcver=7.0.3
pkgrel=1
ghcver=7.4.1
pkgrel=2
pkgdesc="The posix regex backend for regex-base"
url="http://hackage.haskell.org/package/$_pkgname"
url="http://hackage.haskell.org/package/regex-posix"
license=('BSD')
arch=('i686' 'x86_64')
depends=(ghc=$ghcver haskell-regex-base)

View File

@ -6,17 +6,17 @@
pkgname=haskell-tar
_basename=haskell
_pkgname=tar
pkgver=0.3.1.0
ghcver=7.0.3
pkgver=0.4.0.0
ghcver=7.4.1
pkgrel=1
pkgdesc="Reading, writing and manipulating \".tar\" archive files."
url="http://hackage.haskell.org/package/$_pkgname"
url="http://hackage.haskell.org/package/tar"
license=('BSD')
arch=('i686' 'x86_64')
depends=(ghc=$ghcver)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('10b54856495f9ef0a42aa270085c7d5e')
md5sums=('2294c54e598244268517b98bf7877739')
build() {
cd $srcdir/$_pkgname-$pkgver

View File

@ -6,8 +6,8 @@
pkgname=haskell-terminfo
_basename=haskell
_pkgname=terminfo
pkgver=0.3.2.2
ghcver=7.0.3
pkgver=0.3.2.3
ghcver=7.4.1
pkgrel=1
pkgdesc="Haskell bindings to the terminfo library"
url="http://hackage.haskell.org/cgi-bin/hackage-scripts/package/terminfo"
@ -16,7 +16,7 @@ arch=('i686' 'x86_64')
depends=(ghc=$ghcver)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('b93e47791354d25ce89fbbcd12a3c209')
md5sums=('706f546c629ac100a402c9c2629c25fa')
build() {
cd $srcdir/$_pkgname-$pkgver

View File

@ -6,8 +6,8 @@
pkgname=haskell-text
_basename=haskell
_pkgname=text
pkgver=0.11.1.5
ghcver=7.0.3
pkgver=0.11.2.0
ghcver=7.4.1
pkgrel=1
pkgdesc="An efficient packed Unicode text type"
url="http://hackage.haskell.org/package/$_pkgname"
@ -16,7 +16,7 @@ arch=('i686' 'x86_64')
depends=(ghc=$ghcver haskell-deepseq)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('7272ff917f0f32495469611308085e9d')
md5sums=('7a0985e4da1a94e73d03324e82c24b25')
build() {
cd $srcdir/$_pkgname-$pkgver

View File

@ -8,8 +8,8 @@ pkgname=haskell-transformers
_basename=haskell
_pkgname=transformers
pkgver=0.2.2.0
ghcver=7.0.3
pkgrel=1
ghcver=7.4.1
pkgrel=2
pkgdesc="Concrete functor and monad transformers"
url="http://hackage.haskell.org/package/$_pkgname"
license=('BSD')

View File

@ -7,8 +7,8 @@ pkgname=haskell-utf8-string
_basename=haskell
_pkgname=utf8-string
pkgver=0.3.7
ghcver=7.0.3
pkgrel=1
ghcver=7.4.1
pkgrel=2
pkgdesc="Support for reading and writing UTF8 Strings"
url="http://hackage.haskell.org/package/utf8-string"
license=('BSD')

View File

@ -6,9 +6,9 @@
pkgname=haskell-zlib
_basename=haskell
_pkgname=zlib
pkgver=0.5.3.1
ghcver=7.0.3
pkgrel=1
pkgver=0.5.3.3
ghcver=7.4.1
pkgrel=2
pkgdesc="Compression and decompression in the gzip and zlib formats"
url="http://hackage.haskell.org/package/zlib"
license=('BSD')
@ -16,7 +16,7 @@ arch=('i686' 'x86_64')
depends=(ghc=$ghcver zlib)
install=$pkgname.install
source=(http://hackage.haskell.org/packages/archive/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.gz)
md5sums=('8fb2988b112e38d04a527b892f770507')
md5sums=('1649e56d13ce2c6a6a9210227401dbbc')
build() {
cd $srcdir/$_pkgname-$pkgver