Matthias Kilian [2007-08-01, 00:47:47]:
> Hi,
> 
> this should fix breakage for amd64 on the following ports:
> 
> devel/alex
> devel/haddock
> devel/happy
> devel/hs-newbinary
> security/hs-crypto
> 
> I also replaced WRKSRC by WRKBUILD where appropriate, so that
> SEPARATE_BUILD *may* be used in a (very far) future. Currently,
> SEPARATE_BUILD doesn't work at all with Haskell ports using Cabal
> (i.e.  that Setup.{,l}hs stuff).
> 
> No pkgbump required, since on i386 nothing changed, and on amd64
> the ports didn't build yet.

But they built before ghc was updated... so maybe it's safe to bump in any
case.

> I'd really appreciate any tests on amd64 (does it build? regress
> output where regress isn't a noop? any packaging problems?). Some
> porters where interested but don't have enough time to test this.

They build fine with these changes. No regressions in happy and hs-crypto,
the others have NO_REGRESS.

However, something must be wrong with the runhaskell program?


> 
> If you start to test some of this ports, please drop a short note
> here, so we don't waste too much CPU cycles.
> 
> TIA
> 
> Ciao,
>       Kili
> 
> Index: devel/alex/Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/alex/Makefile,v
> retrieving revision 1.8
> diff -u -p -r1.8 Makefile
> --- devel/alex/Makefile       21 Jul 2007 17:19:49 -0000      1.8
> +++ devel/alex/Makefile       28 Jul 2007 15:37:05 -0000
> @@ -30,6 +30,7 @@ LIB_DEPENDS=        gmp::devel/gmp
>  
>  SETUP_CONF_ARGS=     configure -g --prefix=${PREFIX}
>  SETUP_CONF_ENV=              HOME=${PORTHOME} ${CONFIGURE_ENV}
> +SETUP_PROG=          ${WRKSRC}/Setup
>  SUBST_VARS=          V
>  
>  NO_REGRESS=          Yes
> @@ -42,21 +43,20 @@ AUTOCONF_DIR=             ${WRKSRC}/doc
>  WRKCONF=             ${AUTOCONF_DIR}
>  
>  post-configure:
> -     @cd ${WRKSRC} && exec ${SETENV} ${SETUP_CONF_ENV} \
> -             runhaskell Setup.lhs ${SETUP_CONF_ARGS}
> +     @cd ${WRKSRC} && ghc --make -o ${SETUP_PROG} Setup.lhs
> +     @cd ${WRKBUILD} && exec ${SETENV} ${SETUP_CONF_ENV} \
> +             ${SETUP_PROG} ${SETUP_CONF_ARGS}
>  
>  do-build:
> -     @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.lhs build
> -     @cd ${WRKSRC}/doc && exec ${SETENV} ${MAKE_ENV} \
> -             ${MAKE_PROGRAM} html
> +     @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} ${SETUP_PROG} build
> +     @cd ${WRKBUILD}/doc && exec ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} html
>  
>  do-install:
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.lhs copy --destdir=${DESTDIR}
> +             ${SETUP_PROG} copy --destdir=${DESTDIR}
>  
>  post-install:
>       ${INSTALL_DATA_DIR} ${PREFIX}/share/doc
> -     cd ${WRKSRC}/doc && umask 022 && pax -rw alex ${PREFIX}/share/doc
> +     cd ${WRKBUILD}/doc && umask 022 && pax -rw alex ${PREFIX}/share/doc
>  
>  .include <bsd.port.mk>
> Index: devel/haddock/Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/haddock/Makefile,v
> retrieving revision 1.9
> diff -u -p -r1.9 Makefile
> --- devel/haddock/Makefile    21 Jul 2007 17:20:20 -0000      1.9
> +++ devel/haddock/Makefile    28 Jul 2007 15:37:05 -0000
> @@ -31,6 +31,7 @@ LIB_DEPENDS=        gmp::devel/gmp
>  
>  SETUP_CONF_ARGS=     configure -g --prefix=${PREFIX}
>  SETUP_CONF_ENV=              HOME=${PORTHOME} ${CONFIGURE_ENV}
> +SETUP_PROG=          ${WRKSRC}/Setup
>  SUBST_VARS=          V
>  
>  NO_REGRESS=          Yes
> @@ -43,21 +44,20 @@ AUTOCONF_DIR=             ${WRKSRC}/doc
>  WRKCONF=             ${AUTOCONF_DIR}
>  
>  post-configure:
> -     @cd ${WRKSRC} && exec ${SETENV} ${SETUP_CONF_ENV} \
> -             runhaskell Setup.lhs ${SETUP_CONF_ARGS}
> +     @cd ${WRKSRC} && ghc --make -o ${SETUP_PROG} Setup.lhs
> +     @cd ${WRKBUILD} && exec ${SETENV} ${SETUP_CONF_ENV} \
> +             ${SETUP_PROG} ${SETUP_CONF_ARGS}
>  
>  do-build:
> -     @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.lhs build
> -     @cd ${WRKSRC}/doc && exec ${SETENV} ${MAKE_ENV} \
> -             ${MAKE_PROGRAM} html
> +     @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} ${SETUP_PROG} build
> +     @cd ${WRKBUILD}/doc && exec ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} html
>  
>  do-install:
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.lhs copy --destdir=${DESTDIR}
> +             ${SETUP_PROG} copy --destdir=${DESTDIR}
>  
>  post-install:
>       ${INSTALL_DATA_DIR} ${PREFIX}/share/doc
> -     cd ${WRKSRC}/doc && umask 022 && pax -rw haddock ${PREFIX}/share/doc
> +     cd ${WRKBUILD}/doc && umask 022 && pax -rw haddock ${PREFIX}/share/doc
>  
>  .include <bsd.port.mk>
> Index: devel/happy/Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/happy/Makefile,v
> retrieving revision 1.10
> diff -u -p -r1.10 Makefile
> --- devel/happy/Makefile      22 Jul 2007 12:24:46 -0000      1.10
> +++ devel/happy/Makefile      28 Jul 2007 15:37:05 -0000
> @@ -29,6 +29,7 @@ LIB_DEPENDS=                gmp::devel/gmp
>  
>  SETUP_CONF_ARGS=     configure -g --prefix=${PREFIX}
>  SETUP_CONF_ENV=              HOME=${PORTHOME} ${CONFIGURE_ENV}
> +SETUP_PROG=          ${WRKSRC}/Setup
>  SUBST_VARS=          V
>  
>  # Required for building the documentation and for the regression tests:
> @@ -39,25 +40,26 @@ AUTOCONF_DIR=             ${WRKSRC}/doc
>  WRKCONF=             ${AUTOCONF_DIR}
>  
>  post-configure:
> -     @cd ${WRKSRC} && exec ${SETENV} ${SETUP_CONF_ENV} \
> -             runhaskell Setup.lhs ${SETUP_CONF_ARGS}
> +     @cd ${WRKSRC} && ghc --make -o ${SETUP_PROG} Setup.lhs
> +     @cd ${WRKBUILD} && exec ${SETENV} ${SETUP_CONF_ENV} \
> +             ${SETUP_PROG} ${SETUP_CONF_ARGS}
>  
>  do-build:
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.lhs build
> -     @cd ${WRKSRC}/doc && exec ${SETENV} ${MAKE_ENV} \
> +             ${SETUP_PROG} build
> +     @cd ${WRKBUILD}/doc && exec ${SETENV} ${MAKE_ENV} \
>               ${MAKE_PROGRAM} html
>  
>  do-install:
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.lhs copy --destdir=${DESTDIR}
> +             ${SETUP_PROG} copy --destdir=${DESTDIR}
>  
>  post-install:
>       ${INSTALL_DATA_DIR} ${PREFIX}/share/doc
> -     cd ${WRKSRC}/doc && umask 022 && pax -rw happy ${PREFIX}/share/doc
> +     cd ${WRKBUILD}/doc && umask 022 && pax -rw happy ${PREFIX}/share/doc
>  
>  do-regress:
> -     @cd ${WRKSRC}/tests && exec ${SETENV} ${MAKE_ENV} \
> +     @cd ${WRKBUILD}/tests && exec ${SETENV} ${MAKE_ENV} \
>               gmake HAPPY=${WRKBUILD}/dist/build/happy/happy \
>               TEST_HAPPY_OPTS="-t ${WRKBUILD}/templates --strict"
>  
> Index: devel/hs-newbinary/Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/hs-newbinary/Makefile,v
> retrieving revision 1.1.1.1
> diff -u -p -r1.1.1.1 Makefile
> --- devel/hs-newbinary/Makefile       21 Jul 2007 17:17:00 -0000      1.1.1.1
> +++ devel/hs-newbinary/Makefile       28 Jul 2007 15:37:05 -0000
> @@ -26,6 +26,7 @@ MASTER_SITES=       ${HACKAGE}packages/archive
>  
>  CONFIGURE_ARGS=      configure -g --prefix=${PREFIX}
>  CONFIGURE_ENV=       HOME=${PORTHOME}
> +SETUP_PROG=  ${WRKSRC}/Setup
>  SUBST_VARS=  V
>  
>  NO_REGRESS=  Yes
> @@ -36,19 +37,20 @@ post-install:
>  .endfor
>  
>  do-configure:
> -     @cd ${WRKSRC} && exec ${SETENV} ${CONFIGURE_ENV} \
> -             runhaskell Setup.lhs ${CONFIGURE_ARGS}
> +     @cd ${WRKSRC} && ghc --make -o ${SETUP_PROG} Setup.lhs
> +     @cd ${WRKBUILD} && exec ${SETENV} ${CONFIGURE_ENV} \
> +             ${SETUP_PROG} ${CONFIGURE_ARGS}
>  
>  do-build:
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.lhs build
> +             ${SETUP_PROG} build
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.lhs register --gen-script
> +             ${SETUP_PROG} register --gen-script
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.lhs unregister --gen-script
> +             ${SETUP_PROG} unregister --gen-script
>  
>  do-install:
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.lhs copy --destdir=${DESTDIR}
> +             ${SETUP_PROG} copy --destdir=${DESTDIR}
>  
>  .include <bsd.port.mk>
> Index: security/hs-crypto/Makefile
> ===================================================================
> RCS file: /cvs/ports/security/hs-crypto/Makefile,v
> retrieving revision 1.4
> diff -u -p -r1.4 Makefile
> --- security/hs-crypto/Makefile       21 Jul 2007 17:21:33 -0000      1.4
> +++ security/hs-crypto/Makefile       28 Jul 2007 15:37:05 -0000
> @@ -23,29 +23,30 @@ BUILD_DEPENDS+=           ::devel/haddock
>  LIB_DEPENDS+=                ::devel/hs-newbinary
>  
>  SETUP_CONF_ARGS=     configure -g --prefix=${PREFIX} 
> -SETUP_CONF_ENV=              HOME=${PORTHOME} \
> -                     PATH=${PATH}
> +SETUP_CONF_ENV=              HOME=${PORTHOME} PATH=${PATH}
> +SETUP_PROG=          ${WRKSRC}/Setup
>  SUBST_VARS=          V
>  
>  do-configure:
> -     @cd ${WRKSRC} && exec ${SETENV} ${SETUP_CONF_ENV} \
> -             runhaskell Setup.hs ${SETUP_CONF_ARGS}
> +     @cd ${WRKSRC} && ghc --make -o ${SETUP_PROG} Setup.hs
> +     @cd ${WRKBUILD} && exec ${SETENV} ${SETUP_CONF_ENV} \
> +             ${SETUP_PROG} ${SETUP_CONF_ARGS}
>  
>  do-build:
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.hs build
> +             ${SETUP_PROG} build
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.hs haddock
> +             ${SETUP_PROG} haddock
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.hs register --gen-script
> +             ${SETUP_PROG} register --gen-script
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.hs unregister --gen-script
> +             ${SETUP_PROG} unregister --gen-script
>       perl -pi -e 's!/share/${DISTNAME}/doc/html!/share/doc/${DISTNAME}!' \
>               ${WRKBUILD}/register.sh
>  
>  do-install:
>       @cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -             runhaskell Setup.hs copy --destdir=${DESTDIR}
> +             ${SETUP_PROG} copy --destdir=${DESTDIR}
>  
>  post-install:
>       mv ${PREFIX}/share/${DISTNAME}/doc/html ${PREFIX}/share/doc/${DISTNAME}
> @@ -56,7 +57,7 @@ post-install:
>  
>  do-regress:
>       cd ${WRKBUILD} && exec ${SETENV} HOME=${WRKDIR} PATH=${PATH} \
> -             runhaskell Setup.hs register --inplace --user
> +             ${SETUP_PROG} register --inplace --user
>  .for t in BERTest RSATest SymmetricTest
>       cd ${WRKBUILD} && ${SETENV} HOME=${WRKDIR} \
>               ghc -o $t $t.hs -package Crypto && ./$t

Reply via email to