pkgsrc/lang/ghc/Makefile
kristerw 40df28eb7b Update ghc to 6.8.3. Thanks to Donn Cave for bugfix patches.
Changes in 6.8.3:
* The arguments to ghc-pkg now understand lists and wildcards, and
  there is a new command ghc-pkg find-module.

* The filename completion in ghci is now more intelligent.

* We now look for GHCi config files in these locations:
    ./.ghci
    $HOME/.ghc/ghci.conf
    $HOME/.ghci

* You can now give multiple -e options to GHC.

* You can now use the -prof and -threaded flags together, although
  you cannot also use +RTS -N2.

* SCC names are no longer allowed to contain spaces, as some of the
  profiling tools break if they do.

* Various changes have been made to GHC's internals, so there are some
  differences in the API exposed by the ghc package. Most notably,
  checkAndLoadModule has now been implemented.
2008-07-20 00:26:52 +00:00

59 lines
2.2 KiB
Makefile

# $NetBSD: Makefile,v 1.43 2008/07/20 00:26:52 kristerw Exp $
DISTNAME= ghc-6.8.3
CATEGORIES= lang
MASTER_SITES= http://www.haskell.org/ghc/dist/6.8.3/
DISTFILES= ghc-6.8.3-src.tar.bz2 \
ghc-6.8.3-src-extralibs.tar.bz2 \
ghc-6.4.2-src.tar.bz2 \
ghc-6.4.2-i386-unknown-netbsd-hc.tar.gz
OWNER= kristerw@NetBSD.org
HOMEPAGE= http://www.haskell.org/ghc/
COMMENT= Compiler for the functional language Haskell
SITES.ghc-6.4.2-src.tar.bz2=http://www.haskell.org/ghc/dist/6.4.2/
SITES.ghc-6.4.2-i386-unknown-netbsd-hc.tar.gz=${MASTER_SITE_LOCAL}
ONLY_FOR_PLATFORM= Darwin-*-i386 FreeBSD-*-i386 NetBSD-*-i386 OpenBSD-*-i386
CHECK_PORTABILITY_SKIP= distrib/prep-bin-dist-mingw
# += in a shell script, but in embedded AWK code, so it's ok.
CHECK_PORTABILITY_SKIP+= libraries/base/cbits/ubconfc
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --with-ghc=${WRKDIR}/ghc-6.4.2/ghc/compiler/ghc-inplace
CONFIGURE_ENV+= PerlCmd=${PERL5:Q}
USE_GNU_READLINE= yes # uses the UNDO_ constants
USE_TOOLS+= gmake perl:run
SUBST_CLASSES+= prefix
SUBST_STAGE.prefix= post-patch
SUBST_FILES.prefix+= ../ghc-6.4.2/mk/bootstrap.mk
SUBST_FILES.prefix+= ../ghc-6.4.2/ghc/rts/package.conf.in
SUBST_FILES.prefix+= ../ghc-6.4.2/libraries/readline/package.conf.in
SUBST_FILES.prefix+= libraries/readline/configure
SUBST_FILES.prefix+= libraries/readline/readline.cabal
SUBST_FILES.prefix+= rts/package.conf.in
SUBST_SED.prefix= -e 's,@PREFIX@,${PREFIX},g'
pre-configure:
cd ${WRKDIR}/ghc-6.4.2 && \
./distrib/hc-build --enable-hc-boot-unregisterised
# The ghc compiler does normally split the generated C files into small
# parts before sending them to gcc, to enable the linker to eliminate
# unused parts. This does however not play nice with the pkgsrc
# framework, and the result is that the build takes more than 5 times
# as long than when the files are not split. See
# http://mail-index.netbsd.org/tech-pkg/2006/07/30/0005.html
# for a description of the problem.
# Disable file splitting until pkgsrc has been improved.
pre-build:
${ECHO} "SplitObjs=NO" > ${WRKSRC}/mk/build.mk
.include "../../devel/readline/buildlink3.mk"
.include "../../devel/gmp/buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"