]> gitweb @ CieloNegro.org - pkgsrc-ghc.git/blobdiff - Makefile
Take a different way to unpack a bootstrap HC archive.
[pkgsrc-ghc.git] / Makefile
index 492c75576e76fec883f2f50769a41bd604b80d9a..67db91abaf629765fcf2cd58e5f712c38f6bfea9 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,9 +1,9 @@
 # $NetBSD: Makefile,v 1.42 2008/07/07 14:58:00 kristerw Exp $
 
 DISTNAME=              ghc-${VERSION}
-VERSION=               7.0.1
+VERSION=               7.0.3
 CATEGORIES=            lang
-MASTER_SITES=  http://new-www.haskell.org/ghc/dist/${VERSION}/
+MASTER_SITES=  http://www.haskell.org/ghc/dist/${VERSION}/
 MAINTAINER=            kristerw@NetBSD.org
 HOMEPAGE=              http://www.haskell.org/ghc/
 COMMENT=               Compiler for the functional language Haskell
@@ -38,7 +38,7 @@ ONLY_FOR_PLATFORM= NetBSD-*-i386 FreeBSD-*-i386 Darwin-*-powerpc
 # better than this?
 .include "../../mk/compiler.mk"
 .if empty(CCPATH)
-WARNINGS+= "This package depends on pkgsrc's undocumented variable\
+WARNINGS+= "This package depends on pkgsrc's undocumented variable \
 CCPATH but it disappeared somehow."
 WARNINGS+= "Using hard-coded /usr/bin/gcc as the C compiler..."
 CONFIGURE_ARGS+= --with-gcc=/usr/bin/gcc
@@ -46,7 +46,7 @@ CONFIGURE_ARGS+= --with-gcc=/usr/bin/gcc
 CONFIGURE_ARGS+= --with-gcc=${CCPATH}
 .endif
 
-USE_TOOLS+=    gmake bsdtar perl:run
+USE_TOOLS+=    gmake gtar perl:run
 CONFIGURE_ENV+=                PerlCmd=${PERL5:Q}
 
 # We don't want to extract all of the DISTFILEs.
@@ -83,9 +83,9 @@ PLATFORM           = i386-unknown-freebsd
 .elif ${MACHINE_ARCH} == "powerpc" && ${OPSYS} == "Darwin"
 BOOTSTRAP_BUILD_MK = ${PKGDIR}/files/bootstrap.mk
 PLATFORM           = powerpc-apple-darwin
-
 # Existence of libelf makes LeadingUnderscore being "NO", which is
-# incorrect. See ghc-6.12.1/aclocal.m4 (FP_LEADING_UNDERSCORE)
+# incorrect for this platform. See ghc-6.12.1/aclocal.m4
+# (FP_LEADING_UNDERSCORE)
 CONFLICTS=     libelf-[0-9]*
 
 .else
@@ -100,10 +100,9 @@ ${WRKDIR}/stamp-prepare-bootstrap:
        ${RUN} cd ${WRKDIR} && \
                ${ECHO} "====> Preparing bootstrap compiler" && \
                ${RM} -rf bootstrap && \
-               ${MKDIR} bootstrap && \
-               ${CP} -r ${DISTNAME} bootstrap && \
-               cd bootstrap/${DISTNAME} && \
-               ${LN} -sf ${PWD_CMD} utils/ghc-pwd/ghc-pwd && \
+               ${MKDIR} -p bootstrap/${DISTNAME}/utils/ghc-pwd/dist-boot && \
+               ${GTAR} -cf - ${DISTNAME} | ${GTAR} -C bootstrap -xpvf - && \
+               ${LN} -sf ${PWD_CMD} bootstrap/${DISTNAME}/utils/ghc-pwd/dist-boot/ghc-pwd && \
                ${TOUCH} $@
 
 ${WRKDIR}/stamp-configure-hc-boot: ${WRKDIR}/stamp-prepare-bootstrap
@@ -115,7 +114,7 @@ ${WRKDIR}/stamp-configure-hc-boot: ${WRKDIR}/stamp-prepare-bootstrap
 ${WRKDIR}/stamp-extract-hc: ${WRKDIR}/stamp-configure-hc-boot
        ${RUN} cd ${WRKDIR}/bootstrap/${DISTNAME} && \
                ${ECHO} "====> Extracting bootstrap HC archive" && \
-               (cd .. && bsdtar jxfm ${DISTDIR}/${BOOTSTRAP_TARBALL}) && \
+               (cd .. && ${GTAR} -jxf ${DISTDIR}/${BOOTSTRAP_TARBALL}) && \
                ${SH} mkfiles && \
                ${TOUCH} $@
 
@@ -147,15 +146,15 @@ ${WRKDIR}/stamp-bootstrap-ghc: ${WRKDIR}/stamp-rewrite-hc-paths
                ${TOUCH} $@
 
 do-configure:
+# Seemingly by mistake, ghc-7.0.3 has a prebuilt
+# utils/ghc-pwd/dist-boot/ghc-pwd for amd64 GNU/Linux.
+       ${RUN} cd ${WRKSRC} && \
+               rm -rf utils/ghc-pwd/dist-boot
        ${RUN} cd ${WRKSRC} && \
                ${SETENV} ${CONFIGURE_ENV} ./configure ${CONFIGURE_ARGS}
-# We need to tell the libraries/integer-gmp/configure that libgmp is
+# We need to tell the libraries/terminfo/configure that our ncurses is
 # in a non-standard path. Without that, the resulting GHC tries to
 # link programs by executing ld(1) without passing it -L${PREFIX}/lib.
-       ${RUN} ${ECHO} "libraries/integer-gmp_CONFIGURE_OPTS += \
-               --configure-option=--with-gmp-includes=${PREFIX}/include \
-               --configure-option=--with-gmp-libraries=${PREFIX}/lib" > ${WRKSRC}/mk/build.mk
-# The ncurses is also in a non-standard path.
        ${RUN} ${ECHO} "libraries/terminfo_CONFIGURE_OPTS += \
                --configure-option=--with-curses-includes=${PREFIX}/include \
                --configure-option=--with-curses-libraries=${PREFIX}/lib" >> ${WRKSRC}/mk/build.mk
@@ -178,7 +177,10 @@ do-configure:
 #      ${RUN} ${ECHO} "GhcRtsCcOpts = -O0 -g" >> ${WRKSRC}/mk/build.mk
 #.endif
 
-# Some unused scripts don't pass the portability test.
+# Substitutions for INSTALL and DEINSTALL.
+FILES_SUBST+=  DISTNAME=${DISTNAME}
+
+# There is an unused script which don't pass the portability test.
 CHECK_PORTABILITY_SKIP+=       distrib/prep-bin-dist-mingw
 
 # GHC currently *requires* ${PREFIX}/lib to be in