Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 1 Jun 2010 12:17:20 GMT
From:      Vitaly Magerya <vmagerya@gmail.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/147278: [patch] lang/mlton: make it build again
Message-ID:  <201006011217.o51CHKRo058037@www.freebsd.org>
Resent-Message-ID: <201006011220.o51CK2FH087162@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         147278
>Category:       ports
>Synopsis:       [patch] lang/mlton: make it build again
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Jun 01 12:20:02 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Vitaly Magerya
>Release:        FreeBSD 8.0-RELEASE i386
>Organization:
>Environment:
>Description:
For a long time now lang/mlton failed to build, and is already marked
as BROKEN, DEPRECATED and EXPIRED.

This happens because the precompiled mlton distribution used for
bootstrapping (mlton-20070826-1.i386-freebsd.tbz) is linked against
libgmp.so.7, while current math/gmp installs libgmp.so.10.

There is also a problem with NOPORTDOCS: when it's defined, the port
does not try to install docs, but still tries to build them.

Finally, the last master site has relocated and needs updating.
>How-To-Repeat:

>Fix:
The attached patch:
1. Updates the last master site.
2. Sets LD_LIBMAP to redirect libgmp.so.7 to libgmp.so.10.
3. Changes ALL_TARGET when running with NOPORTDOCS to prevent docs
   building.
4. Replaces the non-existant devel/mingw32-libgmp4 dependency with
   math/mingw32-libgmp4.

I only tested with NOPORTDOCS, as the build already takes a lot of time.
I hope the committer has more patience than I have.

I did not test SMLNJ and MINGW32 options.

Patch attached with submission follows:

diff -ruN mlton.orig/Makefile mlton/Makefile
--- mlton.orig/Makefile	2010-06-01 14:31:55.000000000 +0000
+++ mlton/Makefile	2010-06-01 15:16:45.000000000 +0000
@@ -16,7 +16,7 @@
 CATEGORIES=	lang
 MASTER_SITES=	http://mlton.org/pages/Download/attachments/ \
 		http://mlton.org/pages/Experimental/attachments/ \
-		http://www.cse.unsw.edu.au/~tbourke/distfiles/
+		http://www.tbrk.org/distfiles/
 DISTFILES=	${BOOT_DIST} ${SRC_DIST}
 EXTRACT_ONLY=	${SRC_DIST}
 
@@ -28,10 +28,6 @@
 RUN_DEPENDS=	bash:${PORTSDIR}/shells/bash
 BUILD_DEPENDS=	bash:${PORTSDIR}/shells/bash
 
-BROKEN=		does not build
-DEPRECATED=	has been broken for 5 months
-EXPIRATION_DATE=2010-01-08
-
 OPTIONS=	SMLNJ	"Bootstrap with SML/NJ (can take >15 hours)"	off \
 		MINGW32	"Add the mingw32 target (requires wine)"	off
 
@@ -41,6 +37,9 @@
 BUILD_DEPENDS+=	gsed:${PORTSDIR}/textproc/gsed \
 		htmldoc:${PORTSDIR}/textproc/htmldoc \
 		latex:${PORTSDIR}/print/teTeX
+.else
+INSTALL_TARGET=	install-no-docs
+ALL_TARGET=	all-no-docs
 .endif
 
 SRC_DIST=	${DISTNAME}-1.src.tgz
@@ -49,17 +48,22 @@
 BUILD_DEPENDS+=	smlnj-devel>=110.65:${PORTSDIR}/lang/sml-nj-devel
 BOOT_DIST=
 MAKE_ENV+=	SMLNJ_DEVEL=yes
+.if defined(NOPORTDOCS)
+ALL_TARGET=	nj-mlton all-no-docs
+.else
 ALL_TARGET=	bootstrap-nj
+.endif
 .else
 BOOT_DIST=	${PORTNAME}-${BOOT_VER}-1.${MACHINE_ARCH}-freebsd${OSRELMAJ}.${BOOT_SUF}
+MAKE_ENV+=	LD_LIBMAP=libgmp.so.7=libgmp.so.10
 .endif
 
 .if defined(WITH_MINGW32)
 BUILD_DEPENDS+=	wine:${PORTSDIR}/emulators/wine \
 		mingw32-gcc:${PORTSDIR}/devel/mingw32-gcc \
-		${LOCALBASE}/mingw32/lib/libgmp.a:${PORTSDIR}/devel/mingw32-libgmp4
+		${LOCALBASE}/mingw32/lib/libgmp.a:${PORTSDIR}/math/mingw32-libgmp4
 RUN_DEPENDS+=	mingw32-gcc:${PORTSDIR}/devel/mingw32-gcc \
-		${LOCALBASE}/mingw32/lib/libgmp.a:${PORTSDIR}/devel/mingw32-libgmp4
+		${LOCALBASE}/mingw32/lib/libgmp.a:${PORTSDIR}/math/mingw32-libgmp4
 
 PLIST_SUB+=	MINGW32CROSS=""
 .else
@@ -78,10 +82,6 @@
 		PATH=${WRKSRC}/build/bin:${BOOT_WRKSRC}/bin:${PATH} \
 		PREFIX=${PREFIX}
 
-.if defined(NOPORTDOCS)
-INSTALL_TARGET=	install-no-docs
-.endif
-
 .if ${ARCH} == "i386"
 MLTON_ARCH=	"x86"
 .endif


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006011217.o51CHKRo058037>