summaryrefslogtreecommitdiff
path: root/lang/ghc
diff options
context:
space:
mode:
authorGabor Pali <pgj@FreeBSD.org>2013-06-04 18:53:40 +0000
committerGabor Pali <pgj@FreeBSD.org>2013-06-04 18:53:40 +0000
commit109269205e521bb1d2d87678a391e5adefff88d6 (patch)
tree93f1f9278a9a48902904b7ff4a5ce711c10efe08 /lang/ghc
parentUpdate to 3.2.1 (diff)
- Update The Glorious Glasgow Haskell Compiler to version 7.6.3
- Update Haskell Platform to version 2013.2.0.0 Please note that port revisions for all the Haskell ports without version changes are bumped. Some highlights of the update: - Fix PDF generation for pandoc [1] - From now on, PREFIX/{lib,share,share/doc}/cabal/ghc-GHC_VERSION are used for hs- ports (Cabal packages) as prefixes to avoid problems when upgrading with portmaster(8) [2] - Experimental support for LLVM-based code generation (disabled by default) - Many simplifications, refactoring in bsd.cabal.mk New ports (11): devel/hs-asn1-types 0.1.3 devel/hs-data-default-class 0.0.1 devel/hs-data-default-instances-base 0.0.1 devel/hs-data-default-instances-containers 0.0.1 devel/hs-data-default-instances-dlist 0.0.1 devel/hs-data-default-instances-old-locale 0.0.1 devel/hs-extensible-exceptions 0.1.1.4 devel/hs-mmorph 1.0.0 devel/hs-quickcheck-io 0.1.0 x11-toolkits/hs-GLURaw 1.3.0.0 x11-toolkits/hs-OpenGLRaw 1.3.0.0 Updated ports (104): archivers/hs-zlib 0.5.4.0_1 --> 0.5.4.1 databases/hs-persistent 1.1.5.1 --> 1.2.0.1 databases/hs-persistent-sqlite 1.1.5 --> 1.2.0 databases/hs-persistent-template 1.1.2.4 --> 1.2.0 devel/hs-HUnit 1.2.5.1_1 --> 1.2.5.2 devel/hs-IORefCAS 0.2_3 --> 0.2.0.1 devel/hs-MonadRandom 0.1.8 --> 0.1.9 devel/hs-QuickCheck 2.5.1.1_1 --> 2.6 devel/hs-abstract-deque 0.1.6_1 --> 0.2 devel/hs-alex 3.0.2_1 --> 3.0.5 devel/hs-async 2.0.1.3_1 --> 2.0.1.4 devel/hs-basic-prelude 0.3.4.0 --> 0.3.5.0 devel/hs-blaze-builder 0.3.1.0_4 --> 0.3.1.1 devel/hs-byteorder 1.0.3_4 --> 1.0.4 devel/hs-cabal-install 0.14.0_4 --> 1.16.0.2 devel/hs-classy-prelude 0.5.3 --> 0.5.7 devel/hs-cmdargs 0.10.2 --> 0.10.3 devel/hs-conduit 1.0.2 --> 1.0.5 devel/hs-data-default 0.5.0_1 --> 0.5.3 devel/hs-fsnotify 0.0.6 --> 0.0.11 devel/hs-generic-deriving 1.4.0 --> 1.5.0 devel/hs-git-annex 4.20130323_1 --> 4.20130601 devel/hs-haddock 2.11.0_1 --> 2.13.2 devel/hs-hashable 1.2.0.5 --> 1.1.2.5,1 devel/hs-hlint 1.8.43 --> 1.8.45 devel/hs-hspec 1.4.4 --> 1.5.4 devel/hs-hspec-expectations 0.3.0.3_1 --> 0.3.2 devel/hs-largeword 1.0.4 --> 1.0.5 devel/hs-lens 3.8.7.3 --> 3.9.0.2 devel/hs-lifted-base 0.2.0.2 --> 0.2.0.5 devel/hs-monad-control 0.3.1.4_1 --> 0.3.2.1 devel/hs-monad-logger 0.3.0.1 --> 0.3.1.1 devel/hs-monad-par 0.3.4.1 --> 0.3.4.2 devel/hs-pool-conduit 0.1.1_1 --> 0.1.2 devel/hs-profunctors 3.3 --> 3.3.0.1 devel/hs-reflection 1.1.7 --> 1.3.2 devel/hs-resourcet 0.4.5 --> 0.4.7.1 devel/hs-show 0.5 --> 0.6 devel/hs-split 0.2.1.1_1 --> 0.2.2 devel/hs-stm 2.4_1 --> 2.4.2 devel/hs-syb 0.3.7_1 --> 0.4.0 devel/hs-tagged 0.4.4_1 --> 0.6 devel/hs-text 0.11.2.3_1 --> 0.11.3.1 devel/hs-unix-compat 0.4.1.0 --> 0.4.1.1 devel/hs-unix-time 0.1.5 --> 0.1.8 devel/hs-unordered-containers 0.2.3.0 --> 0.2.3.1 devel/hs-utility-ht 0.0.8_3 --> 0.0.9 devel/hs-uuagc 0.9.42.2_3 --> 0.9.42.3 devel/hs-uuid 1.2.9 --> 1.2.13 devel/hs-void 0.5.11 --> 0.6 math/hs-NumInstances 1.2 --> 1.3 math/hs-comonad-transformers 3.0.1_1 --> 3.0.2 math/hs-semigroups 0.9 --> 0.9.1 math/hs-statistics 0.10.2.0_2 --> 0.10.3.1 net/hs-network 2.3.1.0_1 --> 2.4.1.2 net/hs-publicsuffixlist 0.0.3 --> 0.1 net/hs-socks 0.5.0 --> 0.5.1 security/hs-certificate 1.3.5_1 --> 1.3.7 security/hs-cipher-aes 0.1.7 --> 0.1.8 security/hs-clientsession 0.8.1_1 --> 0.9 security/hs-crypto-api 0.11 --> 0.12.1 security/hs-crypto-conduit 0.5.0 --> 0.5.2 security/hs-crypto-pubkey 0.1.2_1 --> 0.1.3 security/hs-crypto-pubkey-types 0.2.0_1 --> 0.3.2 security/hs-cryptocipher 0.4.0_1 --> 0.5.0 security/hs-cryptohash 0.8.3_1 --> 0.9.0 security/hs-skein 0.1.0.12 --> 1.0.3 textproc/hs-HaXml 1.23.3_2 --> 1.24 textproc/hs-attoparsec-conduit 1.0.0 --> 1.0.1 textproc/hs-blaze-html 0.6.0.0 --> 0.6.1.1 textproc/hs-blaze-markup 0.5.1.4 --> 0.5.1.5 textproc/hs-case-insensitive 1.0 --> 1.0.0.2 textproc/hs-highlighting-kate 0.5.3.8 --> 0.5.3.9 textproc/hs-hs-bibutils 4.17 --> 5.0 textproc/hs-polyparse 1.8_3 --> 1.9 textproc/hs-texmath 0.6.1.3 --> 0.6.1.5 textproc/hs-xml 1.3.12_4 --> 1.3.13 textproc/hs-yaml 0.8.2.3 --> 0.8.2.4 www/hs-HTTP 4000.2.5_1 --> 4000.2.8 www/hs-cgi 3001.1.7.4_6,1 --> 3001.1.7.5,1 www/hs-hamlet 1.1.6.3 --> 1.1.7.1 www/hs-happstack-server 7.1.7 --> 7.1.7.1 www/hs-heist 0.11.1 --> 0.12.0 www/hs-http-conduit 1.9.0 --> 1.9.3 www/hs-http-reverse-proxy 0.1.1.3 --> 0.1.1.6 www/hs-shakespeare 1.0.3.1 --> 1.0.5 www/hs-shakespeare-css 1.0.3 --> 1.0.5.1 www/hs-shakespeare-js 1.1.2.1 --> 1.1.4 www/hs-snap 0.11.2 --> 0.12.0 www/hs-wai-extra 1.3.2.4 --> 1.3.4 www/hs-wai-test 1.3.0.4 --> 1.3.1 www/hs-warp 1.3.7.4 --> 1.3.8.1 www/hs-yesod 1.1.9.2 --> 1.2.0.1 www/hs-yesod-auth 1.1.5.3 --> 1.2.0 www/hs-yesod-core 1.1.8.2 --> 1.2.0.4 www/hs-yesod-form 1.2.1.3 --> 1.3.0 www/hs-yesod-persistent 1.1.0.1_1 --> 1.2.0 www/hs-yesod-platform 1.1.8 --> 1.2.0.1 www/hs-yesod-routes 1.1.2 --> 1.2.0 www/hs-yesod-static 1.1.2.2 --> 1.2.0 www/hs-yesod-test 0.3.5 --> 1.2.0 x11-toolkits/hs-GLUT 2.1.2.1_7,1 --> 2.4.0.0,1 x11-toolkits/hs-OpenGL 2.2.3.1_4,1 --> 2.8.0.0,1 x11/hs-xmobar 0.16_2 --> 0.17 Removed ports (2): www/hs-yesod-default 1.1.3.2 www/hs-yesod-json 1.1.2.1 PR: ports/179146 [1] Requested by: Omar Thameen <omar@biglist.com> [1] Reported by: sperber, bapt [2] Tested by: sperber [2] Obtained from: FreeBSD Haskell
Notes
Notes: svn path=/head/; revision=319894
Diffstat (limited to 'lang/ghc')
-rw-r--r--lang/ghc/Makefile14
-rw-r--r--lang/ghc/bsd.cabal.mk50
-rw-r--r--lang/ghc/bsd.cabal.options.mk7
-rw-r--r--lang/ghc/bsd.hackage.mk13
-rw-r--r--lang/ghc/distinfo8
-rw-r--r--lang/ghc/files/patch-aclocal.m419
-rw-r--r--lang/ghc/files/patch-compiler-main-Dynflags.hs11
-rw-r--r--lang/ghc/files/patch-configure.ac16
-rw-r--r--lang/ghc/files/patch-ghc.mk14
-rw-r--r--lang/ghc/files/patch-libraries-gen_contents_index10
-rw-r--r--lang/ghc/files/patch-libraries__base__GHC__Event__KQueue.hsc18
-rw-r--r--lang/ghc/pkg-descr30
-rw-r--r--lang/ghc/pkg-plist31
13 files changed, 139 insertions, 102 deletions
diff --git a/lang/ghc/Makefile b/lang/ghc/Makefile
index 69dde180d91b..75aef1cfa7d0 100644
--- a/lang/ghc/Makefile
+++ b/lang/ghc/Makefile
@@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= ghc
-PORTVERSION= 7.4.2
-PORTREVISION= 1
+PORTVERSION= 7.6.3
CATEGORIES= lang haskell
MASTER_SITES= http://www.haskell.org/ghc/dist/${PORTVERSION}/:source \
${MASTER_SITE_LOCAL:S/$/:boot/}
@@ -22,7 +21,7 @@ HSCOLOUR_VERSION= 1.20.2
DATADIR= ${PREFIX}/share/ghc-${GHC_VERSION}
EXAMPLESDIR= ${PREFIX}/share/examples/ghc-${GHC_VERSION}
-CONFLICTS= ghc-6.8.* ghc-6.10.* ghc-6.12.* ghc-7.0.* ghc-7.2.*
+CONFLICTS= ghc-6.8.* ghc-6.10.* ghc-6.12.* ghc-7.0.* ghc-7.2.* ghc-7.4.*
USE_BZIP2= yes
LIB_DEPENDS+= gmp.10:${PORTSDIR}/math/gmp
@@ -309,10 +308,10 @@ pre-configure:
post-install:
# cabalised hs-foo-ghc ports
- @${MKDIR} ${GHC_LIBDIR}/cabal
- @${MKDIR} ${DOCSDIR}/cabal
- @${MKDIR} ${EXAMPLESDIR}/cabal
- @${MKDIR} ${DATADIR}/cabal
+ @${MKDIR} ${PREFIX}/lib/cabal/ghc-${GHC_VERSION}
+ @${MKDIR} ${PREFIX}/share/cabal/ghc-${GHC_VERSION}
+ @${MKDIR} ${PREFIX}/share/doc/cabal/ghc-${GHC_VERSION}
+ @${MKDIR} ${PREFIX}/share/examples/cabal/ghc-${GHC_VERSION}
.if ${PORT_OPTIONS:MDOCS}
cd ${DOCSDIR}/html/libraries && ./gen_contents_index
.endif
@@ -320,6 +319,5 @@ post-install:
.if ${PORT_OPTIONS:MDOCS}
@${LN} -sf ${PREFIX}/bin/haddock-ghc-${GHC_VERSION} ${PREFIX}/bin/haddock
.endif
- @${RM} -f ${PREFIX}/lib/ghc-${GHC_VERSION}/package.conf.old
.include <bsd.port.mk>
diff --git a/lang/ghc/bsd.cabal.mk b/lang/ghc/bsd.cabal.mk
index 88f9e56d460b..1d95d0e665c1 100644
--- a/lang/ghc/bsd.cabal.mk
+++ b/lang/ghc/bsd.cabal.mk
@@ -21,7 +21,6 @@ NO_BUILD= yes
DIST_SUBDIR?= cabal
-CABAL_SETUP?= Setup.lhs
SETUP_CMD?= ./setup
ALEX_CMD?= ${LOCALBASE}/bin/alex
@@ -33,16 +32,16 @@ CABAL_DIRS+= ${DATADIR} ${EXAMPLESDIR} ${CABAL_LIBDIR}/${CABAL_LIBSUBDIR} \
GHC_HADDOCK_CMD=${LOCALBASE}/bin/haddock-ghc-${GHC_VERSION}
-CABAL_DOCSDIR= ${PREFIX}/share/doc/ghc-${GHC_VERSION}/cabal
+CABAL_DOCSDIR= ${PREFIX}/share/doc/cabal/ghc-${GHC_VERSION}
CABAL_DOCSDIR_REL= ${CABAL_DOCSDIR:S,^${PREFIX}/,,}
-DATADIR= ${PREFIX}/share/ghc-${GHC_VERSION}/cabal/${DISTNAME}
+DATADIR= ${PREFIX}/share/cabal/ghc-${GHC_VERSION}/${DISTNAME}
DOCSDIR= ${CABAL_DOCSDIR}/${DISTNAME}
-EXAMPLESDIR= ${PREFIX}/share/examples/ghc-${GHC_VERSION}/cabal/${DISTNAME}
+EXAMPLESDIR= ${PREFIX}/share/examples/cabal/ghc-${GHC_VERSION}/${DISTNAME}
GHC_LIB_DOCSDIR_REL= share/doc/ghc-${GHC_VERSION}/html/libraries
-CABAL_LIBDIR= ${PREFIX}/lib/ghc-${GHC_VERSION}/cabal
+CABAL_LIBDIR= ${PREFIX}/lib/cabal/ghc-${GHC_VERSION}
CABAL_LIBSUBDIR= ${DISTNAME}
CABAL_LIBDIR_REL= ${CABAL_LIBDIR:S,^${PREFIX}/,,}
@@ -82,6 +81,11 @@ USE_GCC= 4.6+
CONFIGURE_ARGS+= --with-gcc=${CC} --with-ld=${LD} --with-ar=${AR} \
--with-ranlib=${RANLIB}
+.if ${PORT_OPTIONS:MLLVM}
+BUILD_DEPENDS+= llvm>=3.0:${PORTSDIR}/devel/llvm
+CONFIGURE_ARGS+= --ghc-option=-fllvm
+.endif
+
.if defined(USE_ALEX)
BUILD_DEPENDS+= ${ALEX_CMD}:${PORTSDIR}/devel/hs-alex
CONFIGURE_ARGS+= --with-alex=${ALEX_CMD}
@@ -99,7 +103,7 @@ CONFIGURE_ARGS+= --with-c2hs=${C2HS_CMD}
.if defined(EXECUTABLE)
LIB_DEPENDS+= gmp.10:${PORTSDIR}/math/gmp
-USES+= iconv
+USES+= iconv
.endif
.if defined(USE_CABAL)
@@ -146,7 +150,7 @@ HADDOCK_OPTS= # empty
BUILD_DEPENDS+= HsColour:${PORTSDIR}/print/hs-hscolour
HSCOLOUR_VERSION= 1.20.3
-HSCOLOUR_DATADIR= ${LOCALBASE}/share/ghc-${GHC_VERSION}/cabal/hscolour-${HSCOLOUR_VERSION}
+HSCOLOUR_DATADIR= ${LOCALBASE}/share/cabal/ghc-${GHC_VERSION}/hscolour-${HSCOLOUR_VERSION}
HADDOCK_OPTS+= --hyperlink-source --hscolour-css=${HSCOLOUR_DATADIR}/hscolour.css
.endif # HSCOLOUR
.endif # HADDOCK_AVAILABLE
@@ -190,28 +194,24 @@ post-patch::
${WRKSRC}/doc/configure.ac
.endif
-# Purge Haskell 98 (required for GHC 7.2 or later)
-.if defined(HASKELL98)
- @${REINPLACE_CMD} -E 's|haskell98[,]?||' \
- ${WRKSRC}/${PORTNAME}.cabal
-
- @${REINPLACE_CMD} 's|import List|import Data.List| ; \
- s|import Char|import Data.Char| ; \
- s|import Ratio|import Data.Ratio| ; \
- s|import Monad|import Control.Monad| ; \
- s|import IO|import System.IO.Error| ; \
- s|import Directory|import System.Directory| ; \
- s|import Maybe|import Data.Maybe| ; \
- s|import Array|import Data.Array|' \
- `${FIND} ${WRKSRC} -name '*.hs'`
-.endif
+_BUILD_SETUP= ${GHC_CMD} -o ${SETUP_CMD} -package Cabal --make
.if !target(do-configure)
do-configure:
.if !defined(METAPORT)
- cd ${WRKSRC} && ${GHC_CMD} --make ${CABAL_SETUP} -o setup -package Cabal
- cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
- ${SETUP_CMD} configure --ghc --prefix=${PREFIX} --extra-include-dirs="${LOCALBASE}/include" --extra-lib-dirs="${LOCALBASE}/lib" ${__handle_datadir__} ${CONFIGURE_ARGS}
+ @if [ -f ${WRKSRC}/Setup.hs ]; then \
+ cd ${WRKSRC} && ${_BUILD_SETUP} Setup.hs; fi
+ @if [ -f ${WRKSRC}/Setup.lhs ]; then \
+ cd ${WRKSRC} && ${_BUILD_SETUP} Setup.lhs; fi
+ @if [ -f ${WRKSRC}/${SETUP_CMD} ]; then \
+ cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
+ ${SETUP_CMD} configure --ghc --prefix=${PREFIX} \
+ --extra-include-dirs="${LOCALBASE}/include" --extra-lib-dirs="${LOCALBASE}/lib" \
+ ${__handle_datadir__} ${CONFIGURE_ARGS}; \
+ else \
+ ${ECHO_MSG} "===> ${PKGNAME} configure fails: no setup program could be created."; \
+ exit 1; \
+ fi
.if ${PORT_OPTIONS:MDOCS}
.if defined(XMLDOCS) && defined(USE_AUTOTOOLS)
diff --git a/lang/ghc/bsd.cabal.options.mk b/lang/ghc/bsd.cabal.options.mk
index b222ac88fb94..0e339f0f612e 100644
--- a/lang/ghc/bsd.cabal.options.mk
+++ b/lang/ghc/bsd.cabal.options.mk
@@ -17,11 +17,12 @@ LOCALBASE?= /usr/local
GHC_CMD?= ${LOCALBASE}/bin/ghc
HADDOCK_CMD?= ${LOCALBASE}/bin/haddock
HSCOLOUR_CMD?= ${LOCALBASE}/bin/HsColour
-GHC_VERSION= 7.4.2
+GHC_VERSION= 7.6.3
HSCOLOUR_DESC?= Colorize generated documentation by HsColour
DYNAMIC_DESC?= Add support for dynamic linking
PROFILE_DESC?= Add support for profiling
+LLVM_DESC?= Use the LLVM backend for code generation
.if !exists(${GHC_CMD}) || (exists(${LOCALBASE}/lib/ghc-${GHC_VERSION}/ghc-${GHC_VERSION}/GHC.dyn_hi) && !defined(IGNORE_DYNAMIC))
OPTIONS_DEFINE+= DYNAMIC
@@ -32,6 +33,10 @@ OPTIONS_DEFAULT+= DYNAMIC
OPTIONS_DEFINE+= PROFILE
.endif
+.if !defined(IGNORE_LLVM)
+OPTIONS_DEFINE+= LLVM
+.endif
+
.if !exists(${GHC_CMD}) || ((exists(${HADDOCK_CMD}) && exists(${LOCALBASE}/lib/ghc-${GHC_VERSION}/html)) && !defined(NOPORTDOCS))
OPTIONS_DEFINE+= DOCS
OPTIONS_DEFAULT+= DOCS
diff --git a/lang/ghc/bsd.hackage.mk b/lang/ghc/bsd.hackage.mk
index 895c12edfb4f..0de54c23509d 100644
--- a/lang/ghc/bsd.hackage.mk
+++ b/lang/ghc/bsd.hackage.mk
@@ -24,6 +24,7 @@ ansi-terminal_port= devel/hs-ansi-terminal
ansi-wl-pprint_port= devel/hs-ansi-wl-pprint
arrows_port= devel/hs-arrows
asn1-data_port= devel/hs-asn1-data
+asn1-types_port= devel/hs-asn1-types
async_port= devel/hs-async
attempt_port= devel/hs-attempt
attoparsec_port= textproc/hs-attoparsec
@@ -95,6 +96,11 @@ csv_port= textproc/hs-csv
curl_port= ftp/hs-curl
darcs_port= devel/hs-darcs # executable
data-default_port= devel/hs-data-default
+data-default-class_port= devel/hs-data-default-class
+data-default-instances-base_port= devel/hs-data-default-instances-base
+data-default-instances-containers_port= devel/hs-data-default-instances-containers
+data-default-instances-dlist_port= devel/hs-data-default-instances-dlist
+data-default-instances-old-locale_port= devel/hs-data-default-instances-old-locale
data-lens_port= math/hs-data-lens
data-lens-template_port= math/hs-data-lens-template
data-pprint_port= devel/hs-data-pprint
@@ -118,6 +124,7 @@ enumerator_port= devel/hs-enumerator
epic_port= lang/hs-epic # executable
erf_port= math/hs-erf
errors_port= devel/hs-errors
+extensible-exceptions_port= devel/hs-extensible-exceptions
failure_port= devel/hs-failure
fast-logger_port= devel/hs-fast-logger
fastcgi_port= www/hs-fastcgi # lib_depends
@@ -139,6 +146,7 @@ git-annex_port= devel/hs-git-annex # executable
gitit_port= www/hs-gitit # executable
glade_port= devel/hs-glade
glib_port= devel/hs-glib
+GLURaw_port= x11-toolkits/hs-GLURaw
GLUT_port= x11-toolkits/hs-GLUT
groupoids_port= math/hs-groupoids
gstreamer_port= multimedia/hs-gstreamer
@@ -217,6 +225,7 @@ mime-mail_port= mail/hs-mime-mail
mime-types_port= mail/hs-mime-types
MissingH_port= devel/hs-MissingH
mmap_port= devel/hs-mmap
+mmorph_port= devel/hs-mmorph
monad-control_port= devel/hs-monad-control
monad-logger_port= devel/hs-monad-logger
monad-par_port= devel/hs-monad-par
@@ -240,6 +249,7 @@ ObjectName_port= devel/hs-ObjectName
oeis_port= www/hs-oeis
OpenAL_port= audio/hs-OpenAL
OpenGL_port= x11-toolkits/hs-OpenGL
+OpenGLRaw_port= x11-toolkits/hs-OpenGLRaw
optparse-applicative_port= devel/hs-optparse-applicative
pandoc_port= textproc/hs-pandoc # executable
pandoc-types_port= textproc/hs-pandoc-types
@@ -267,6 +277,7 @@ publicsuffixlist_port= net/hs-publicsuffixlist
pureMD5_port= security/hs-pureMD5
pwstore-fast_port= security/hs-pwstore-fast
QuickCheck_port= devel/hs-QuickCheck
+quickcheck-io_port= devel/hs-quickcheck-io
random_port= devel/hs-random
ranges_port= devel/hs-ranges
reactive_port= devel/hs-reactive
@@ -391,9 +402,7 @@ yaml_port= textproc/hs-yaml
yesod_port= www/hs-yesod
yesod-auth_port= www/hs-yesod-auth
yesod-core_port= www/hs-yesod-core
-yesod-default_port= www/hs-yesod-default
yesod-form_port= www/hs-yesod-form
-yesod-json_port= www/hs-yesod-json
yesod-persistent_port= www/hs-yesod-persistent
yesod-platform_port= www/hs-yesod-platform
yesod-routes_port= www/hs-yesod-routes
diff --git a/lang/ghc/distinfo b/lang/ghc/distinfo
index aaeaf1a5e791..79280774a9af 100644
--- a/lang/ghc/distinfo
+++ b/lang/ghc/distinfo
@@ -1,11 +1,7 @@
-SHA256 (ghc-7.4.2-src.tar.bz2) = f2ee1289a33cc70539287129841acc7eaf16112bb60c59b5a6ee91887bfd836d
-SIZE (ghc-7.4.2-src.tar.bz2) = 25836446
+SHA256 (ghc-7.6.3-src.tar.bz2) = bd43823d31f6b5d0b2ca7b74151a8f98336ab0800be85f45bb591c9c26aac998
+SIZE (ghc-7.6.3-src.tar.bz2) = 110763823
SHA256 (hscolour-1.20.2.tar.gz) = a52910f4c4c5576bed80e23aa914c71c3975d4cd9cd79a9c85e2617d97a8824a
SIZE (hscolour-1.20.2.tar.gz) = 25722
-SHA256 (ghc-7.4.1-i386-freebsd7-boot.tar.bz2) = e5cfc6c098179f8657d5cbf1a0fe70e8e9bfdde5a280c095e1dfc51d6e43731f
-SIZE (ghc-7.4.1-i386-freebsd7-boot.tar.bz2) = 45438870
-SHA256 (ghc-7.4.1-amd64-freebsd7-boot.tar.bz2) = 836e48e2a250a43b1230eac7f04821de86d915a51d0a36d6040b48cdd25ecedb
-SIZE (ghc-7.4.1-amd64-freebsd7-boot.tar.bz2) = 45310351
SHA256 (ghc-7.4.1-i386-freebsd8-boot.tar.bz2) = b58f5b346c2b261f6357f5f72a0bf2c3c766e914cffbe6f2aefb1abf67b9a797
SIZE (ghc-7.4.1-i386-freebsd8-boot.tar.bz2) = 45447162
SHA256 (ghc-7.4.1-amd64-freebsd8-boot.tar.bz2) = 536da87dc9e32e98f9258e29b3a44846db6ac786f26b426da4808c33fcc92914
diff --git a/lang/ghc/files/patch-aclocal.m4 b/lang/ghc/files/patch-aclocal.m4
index f288e6b77221..48c040f74504 100644
--- a/lang/ghc/files/patch-aclocal.m4
+++ b/lang/ghc/files/patch-aclocal.m4
@@ -1,5 +1,5 @@
---- aclocal.m4.orig 2012-06-06 19:10:25.000000000 +0200
-+++ aclocal.m4 2013-02-03 01:28:58.024638318 +0100
+--- aclocal.m4.orig 2013-04-18 23:22:46.000000000 +0200
++++ aclocal.m4 2013-04-29 20:32:30.000000000 +0200
@@ -19,6 +19,8 @@
# In bindists, we haven't called AC_CANONICAL_{BUILD,HOST,TARGET}
# so this justs uses $bootstrap_target.
@@ -15,10 +15,10 @@
;;
- x86_64)
+ x86_64|amd64)
- GET_ARM_ISA()
test -z "[$]2" || eval "[$]2=ArchX86_64"
;;
-@@ -186,7 +188,7 @@
+ powerpc)
+@@ -185,7 +187,7 @@
checkVendor() {
case [$]1 in
@@ -27,7 +27,7 @@
;;
*)
echo "Unknown vendor [$]1"
-@@ -1835,7 +1837,7 @@
+@@ -1889,7 +1891,7 @@
vax)
$2="vax"
;;
@@ -36,12 +36,3 @@
$2="x86_64"
;;
*)
-@@ -1875,7 +1877,7 @@
- freebsd|netbsd|openbsd|dragonfly|osf1|osf3|hpux|linuxaout|kfreebsdgnu|freebsd2|solaris2|cygwin32|mingw32|darwin|gnu|nextstep2|nextstep3|sunos4|ultrix|irix|aix|haiku)
- $2="$1"
- ;;
-- freebsd8) # like i686-gentoo-freebsd8
-+ freebsd*) # like i686-gentoo-freebsd8
- $2="freebsd"
- ;;
- *)
diff --git a/lang/ghc/files/patch-compiler-main-Dynflags.hs b/lang/ghc/files/patch-compiler-main-Dynflags.hs
new file mode 100644
index 000000000000..ee76c6da2988
--- /dev/null
+++ b/lang/ghc/files/patch-compiler-main-Dynflags.hs
@@ -0,0 +1,11 @@
+--- compiler/main/DynFlags.hs.orig 2012-06-06 19:10:25.000000000 +0200
++++ compiler/main/DynFlags.hs 2013-02-08 15:23:36.000000000 +0100
+@@ -2390,7 +2390,7 @@
+ flag)
+ return dflags
+ HscLlvm
+- | not ((arch == ArchX86_64) && (os == OSLinux || os == OSDarwin)) &&
++ | not ((arch == ArchX86_64) && (os == OSLinux || os == OSDarwin || os == OSFreeBSD)) &&
+ (not opt_Static || opt_PIC)
+ ->
+ do addWarn ("Ignoring " ++ flag ++ " as it is incompatible with -fPIC and -dynamic on this platform")
diff --git a/lang/ghc/files/patch-configure.ac b/lang/ghc/files/patch-configure.ac
index 11139a3aa71d..e7504949abce 100644
--- a/lang/ghc/files/patch-configure.ac
+++ b/lang/ghc/files/patch-configure.ac
@@ -1,5 +1,5 @@
---- configure.ac.orig 2012-06-06 19:10:25.000000000 +0200
-+++ configure.ac 2013-02-02 17:31:55.193634655 +0100
+--- ./configure.ac.orig 2013-04-19 00:31:00.000000000 +0200
++++ ./configure.ac 2013-04-30 19:30:40.381161098 +0200
@@ -89,6 +89,59 @@
fi
WithGhc="$GHC"])
@@ -60,7 +60,17 @@
dnl ** Tell the make system which OS we are using
dnl $OSTYPE is set by the operating system to "msys" or "cygwin" or something
-@@ -717,7 +770,6 @@
+@@ -379,6 +432,9 @@
+ BuildingCrossCompiler=NO
+ PortingCompiler=NO
+ CrossCompiling=NO
++
++build=`echo $build | sed -e 's/amd64-/x86_64-/g; s/-freebsd.*$/-freebsd/g'`
++
+ # If 'host' and 'target' differ, then this means we are building a cross-compiler.
+ if test "$host" != "$target" ; then
+ BuildingCrossCompiler=YES
+@@ -839,7 +895,6 @@
FP_VISIBILITY_HIDDEN
dnl ** check for librt
diff --git a/lang/ghc/files/patch-ghc.mk b/lang/ghc/files/patch-ghc.mk
index 81f97ee717ea..a8e806b6e47c 100644
--- a/lang/ghc/files/patch-ghc.mk
+++ b/lang/ghc/files/patch-ghc.mk
@@ -1,6 +1,6 @@
---- ghc.mk.orig 2012-06-06 19:10:25.000000000 +0200
-+++ ghc.mk 2013-01-30 16:24:02.000000000 +0100
-@@ -81,6 +81,7 @@
+--- ghc.mk.orig 2013-04-18 23:22:46.000000000 +0200
++++ ghc.mk 2013-04-29 20:42:16.000000000 +0200
+@@ -80,6 +80,7 @@
# Catch make if it runs away into an infinite loop
ifeq "$(MAKE_RESTARTS)" ""
else ifeq "$(MAKE_RESTARTS)" "1"
@@ -8,8 +8,8 @@
else
$(error Make has restarted itself $(MAKE_RESTARTS) times; is there a makefile bug?)
endif
-@@ -574,12 +575,18 @@
- $(GHC_GENPRIMOP_DIR)
+@@ -595,12 +596,18 @@
+ MAYBE_GHCI=driver/ghci
endif
+ifeq "$(UseSystemLibFFI)" "YES"
@@ -20,7 +20,7 @@
+
BUILD_DIRS += \
driver \
- driver/ghci \
+ $(MAYBE_GHCI) \
driver/ghc \
driver/haddock \
- libffi \
@@ -28,7 +28,7 @@
includes \
rts
-@@ -971,6 +978,7 @@
+@@ -1005,6 +1012,7 @@
echo "BUILD_DOCBOOK_PDF = $(BUILD_DOCBOOK_PDF)" >> $(BIN_DIST_MK)
echo "BUILD_MAN = $(BUILD_MAN)" >> $(BIN_DIST_MK)
echo "GHC_CABAL_INPLACE = utils/ghc-cabal/dist-install/build/tmp/ghc-cabal" >> $(BIN_DIST_MK)
diff --git a/lang/ghc/files/patch-libraries-gen_contents_index b/lang/ghc/files/patch-libraries-gen_contents_index
deleted file mode 100644
index a2785da02ed9..000000000000
--- a/lang/ghc/files/patch-libraries-gen_contents_index
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./libraries/gen_contents_index.orig 2012-02-01 19:10:32.000000000 +0100
-+++ ./libraries/gen_contents_index 2012-05-17 02:20:09.000000000 +0200
-@@ -47,7 +47,6 @@
- esac
-
- # Now create the combined contents and index pages
--echo $HADDOCK_ARGS
- $HADDOCK --gen-index --gen-contents -o . \
- -t "Haskell Hierarchical Libraries" \
- -p "prologue.txt" \
diff --git a/lang/ghc/files/patch-libraries__base__GHC__Event__KQueue.hsc b/lang/ghc/files/patch-libraries__base__GHC__Event__KQueue.hsc
new file mode 100644
index 000000000000..ffc1d3df082a
--- /dev/null
+++ b/lang/ghc/files/patch-libraries__base__GHC__Event__KQueue.hsc
@@ -0,0 +1,18 @@
+--- ./libraries/base/GHC/Event/KQueue.hsc.orig 2013-04-18 23:30:14.000000000 +0200
++++ ./libraries/base/GHC/Event/KQueue.hsc 2013-04-30 13:34:11.549185351 +0200
+@@ -235,10 +235,11 @@
+ #endif
+ deriving (Bits, Eq, Num, Show, Storable)
+
+-#{enum Filter, Filter
+- , filterRead = EVFILT_READ
+- , filterWrite = EVFILT_WRITE
+- }
++filterRead :: Filter
++filterRead = Filter (#const EVFILT_READ)
++
++filterWrite :: Filter
++filterWrite = Filter (#const EVFILT_WRITE)
+
+ data TimeSpec = TimeSpec {
+ tv_sec :: {-# UNPACK #-} !CTime
diff --git a/lang/ghc/pkg-descr b/lang/ghc/pkg-descr
index f6962bd4d3aa..520a29318997 100644
--- a/lang/ghc/pkg-descr
+++ b/lang/ghc/pkg-descr
@@ -1,16 +1,20 @@
-Haskell is the standard lazy purely functional programming language.
-The current language version is Haskell 98, agreed in December 1998,
-with a revised version published in January 2003.
+The Glasgow Haskell Compiler is a state-of-the-art, open source, compiler and
+interactive environment for the functional language Haskell. Highlights:
-The Glasgow Haskell Compiler is a robust, fully-featured, optimising
-compiler for the functional programming language Haskell 98 generating
-good code for a variety of platforms. GHC is a state-of-the-art
-programming suite for Haskell and compiles Haskell to either native code
-or C. It implements numerous experimental language extensions to
-Haskell, including concurrency, a foreign language interface, several
-type-system extensions, exceptions, and so on. GHC comes with a
-generational garbage collector, a space and time profiler, comprehensive
-set of libraries and an interactive system for convenient, quick
-development.
+ * Supports the entire Haskell 2010 language plus a wide variety of
+ extensions.
+ * Has particularly good support for concurrency and parallelism, including
+ support for Software Transactional Memory (STM).
+ * Generates fast code, particularly for concurrent programs.
+ * Works on several platforms including FreeBSD, Windows, Mac, Linux, most
+ varieties of Unix, and several different processor architectures.
+ * Has extensive optimisation capabilities, including inter-module optimisation.
+ * Compiles Haskell code either directly to native code or using LLVM as a
+ back-end. It can also generate C code as an intermediate target for porting
+ to new platforms. The interactive environment compiles Haskell to bytecode,
+ and supports execution of mixed bytecode/compiled programs.
+ * Profiling is supported, both by time/allocation and various kinds of heap
+ profiling.
+ * Comes with several libraries, and thousands more are available on Hackage.
WWW: http://www.haskell.org/ghc/
diff --git a/lang/ghc/pkg-plist b/lang/ghc/pkg-plist
index 7ab250d17dbe..8a1ccd4ce889 100644
--- a/lang/ghc/pkg-plist
+++ b/lang/ghc/pkg-plist
@@ -3,21 +3,26 @@ bin/ghc
bin/ghci
bin/ghc-pkg
bin/runhaskell
-bin/haddock-ghc-%%GHC_VERSION%%
-bin/ghci-%%GHC_VERSION%%
-bin/hsc2hs
-bin/ghc-pkg-%%GHC_VERSION%%
bin/runghc
-bin/ghc-%%GHC_VERSION%%
bin/hp2ps
bin/hpc
+bin/hsc2hs
+bin/ghc-%%GHC_VERSION%%
+bin/ghci-%%GHC_VERSION%%
+bin/ghc-pkg-%%GHC_VERSION%%
+bin/haddock-ghc-%%GHC_VERSION%%
+bin/runghc-%%GHC_VERSION%%
@exec /bin/ln -sf %D/bin/haddock-ghc-%%GHC_VERSION%% %D/bin/haddock || return true
@unexec /bin/rm -f %D/bin/haddock || return true
-@exec /bin/mkdir -p %D/%%GHC_LIBDIR%%/cabal || return true
-@exec /bin/mkdir -p %D/%%DOCSDIR%%/cabal || return true
-@exec /bin/mkdir -p %D/%%DATADIR%%/cabal || return true
-@exec /bin/mkdir -p %D/%%EXAMPLESDIR%%/cabal || return true
-@dirrm %%DATADIR%%/cabal
-@dirrm %%DATADIR%%
-@dirrm %%EXAMPLESDIR%%/cabal
-@dirrm %%EXAMPLESDIR%%
+@exec /bin/mkdir -p %D/lib/cabal/ghc-%%GHC_VERSION%% || return true
+@exec /bin/mkdir -p %D/share/cabal/ghc-%%GHC_VERSION%% || return true
+@exec /bin/mkdir -p %D/share/doc/cabal/ghc-%%GHC_VERSION%% || return true
+@exec /bin/mkdir -p %D/share/examples/cabal/ghc-%%GHC_VERSION%% || return true
+@dirrmtry lib/cabal/ghc-%%GHC_VERSION%%
+@dirrmtry lib/cabal
+@dirrmtry share/cabal/ghc-%%GHC_VERSION%%
+@dirrmtry share/cabal
+@dirrmtry share/doc/cabal/ghc-%%GHC_VERSION%%
+@dirrmtry share/doc/cabal
+@dirrmtry share/examples/cabal/ghc-%%GHC_VERSION%%
+@dirrmtry share/examples/cabal