View | Details | Raw Unified | Return to bug 109951
Collapse All | Expand All

(-)Makefile (-55 / +16 lines)
Lines 2-75 Link Here
2
# Date created:        09 July 2005
2
# Date created:        09 July 2005
3
# Whom:                Timothy Bourke <timbob@bigpond.com>
3
# Whom:                Timothy Bourke <timbob@bigpond.com>
4
#
4
#
5
# $FreeBSD: ports/lang/polyml/Makefile,v 1.2 2006/03/29 14:05:30 mnag Exp $
5
# $FreeBSD$
6
#
6
#
7
7
8
PORTNAME=	polyml
8
PORTNAME=	polyml
9
PORTVERSION=	4.2.0
9
PORTVERSION=	5.0
10
CATEGORIES=	lang
10
CATEGORIES=	lang
11
MASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
11
MASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
12
MASTER_SITE_SUBDIR=	${PORTNAME}
12
MASTER_SITE_SUBDIR=	${PORTNAME}
13
DISTFILES=	driver.420.tar.gz \
13
DISTNAME=	${PORTNAME}.${PORTVERSION}
14
		mlsource.420.tar.gz \
15
		basis.420.tar.gz \
16
		DB420.i386.unix.gz
17
DIST_SUBDIR=	${PORTNAME}
14
DIST_SUBDIR=	${PORTNAME}
18
EXTRACT_ONLY=	driver.420.tar.gz \
19
		mlsource.420.tar.gz \
20
		basis.420.tar.gz
21
15
22
MAINTAINER=	timbob@bigpond.com
16
MAINTAINER=	timbob@bigpond.com
23
COMMENT=	Fast open-source implementation of Standard ML
17
COMMENT=	Fast open-source implementation of Standard ML
24
18
25
WRKSRC=		${WRKDIR}/driver
26
27
ONLY_FOR_ARCHS=	i386
28
29
USE_GCC=	3.2+
19
USE_GCC=	3.2+
30
HAS_CONFIGURE=	yes
20
HAS_CONFIGURE=	yes
31
CONFIGURE_ARGS=	${PREFIX}
21
CONFIGURE_ARGS=	--prefix=${PREFIX} --without-x
22
INSTALLS_SHLIB=	yes
23
24
PLIST_FILES=	bin/poly		\
25
		bin/polyimport		\
26
		lib/libpolymain.a	\
27
		lib/libpolymain.la	\
28
		lib/libpolyml.a		\
29
		lib/libpolyml.la	\
30
		lib/libpolyml.so	\
31
		lib/libpolyml.so.0
32
32
33
SUB_FILES=	poly
33
MAN1=		poly.1 polyimport.1
34
PLIST_FILES=	bin/poly \
34
MANCOMPRESSED=	no
35
		lib/polyml/poly \
36
		lib/polyml/COPYING \
37
		lib/polyml/ML_dbase \
38
		lib/polyml/DB420.i386.unix
39
PLIST_DIRS=	lib/polyml
40
41
NO_INSTALL_MANPAGES=yes
42
43
post-extract:
44
	@${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/DB420.i386.unix.gz \
45
		> ${WRKDIR}/DB420.i386.unix
46
47
post-patch:
48
	@${REINPLACE_CMD} -e "s|gcc|${CC}|g" ${WRKSRC}/configure
49
50
post-build:
51
	(cd ${WRKDIR}/mlsource/MLCompiler/CodeTree; ${LN} -fs CodeCons.i386 CodeCons)
52
	(cd ${WRKDIR}; ./driver/poly DB420.i386.unix < mlsource/BuildAll.sml)
53
54
post-install:
55
	${INSTALL_DATA} ${WRKDIR}/DB420.i386.unix ${PREFIX}/lib/polyml/
56
	${INSTALL_SCRIPT} ${WRKDIR}/poly ${PREFIX}/bin/poly
57
	@(cd ${PREFIX}/lib/polyml; ${LN} -fs ./DB420.i386.unix ML_dbase)
58
	${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
59
60
install-user:
61
.if !exists (${LOCALBASE}/lib/polyml/ML_dbase)
62
	@${ECHO_CMD}
63
	@${ECHO_CMD} "You need to install the Poly/ML port first!"
64
	@${ECHO_CMD}
65
.elif exists (${HOME}/.polyml/ML_dbase)
66
	@${ECHO_CMD}
67
	@${ECHO_CMD} "User copy of database already exists. Aborting!"
68
	@${ECHO_CMD}
69
.else
70
	@${MKDIR} ${HOME}/.polyml
71
	@${CP} ${LOCALBASE}/lib/polyml/ML_dbase ${HOME}/.polyml
72
	@${CHMOD} 0600 ${HOME}/.polyml/ML_dbase
73
.endif
74
35
75
.include <bsd.port.mk>
36
.include <bsd.port.mk>
(-)distinfo (-12 / +3 lines)
Lines 1-12 Link Here
1
MD5 (polyml/driver.420.tar.gz) = 3855385041e1a7d860ba72734c153ce4
1
MD5 (polyml/polyml.5.0.tar.gz) = 61537cf2b0ca983d42845778fe3bd42f
2
SHA256 (polyml/driver.420.tar.gz) = e9113992bd911a70de0d830e2f5bb2e6b314e00f24702a270f7116cc1515e84f
2
SHA256 (polyml/polyml.5.0.tar.gz) = 0eb3ee7f05eabedf6cd62e0ac2476882ecf92ad08f52b85e13dd6399d17a52da
3
SIZE (polyml/driver.420.tar.gz) = 496596
3
SIZE (polyml/polyml.5.0.tar.gz) = 4183140
4
MD5 (polyml/mlsource.420.tar.gz) = 873b02beab2e083232d6a8bbddab5225
5
SHA256 (polyml/mlsource.420.tar.gz) = ebe29bd4290c95882b012b193dc25bda0d5a575d67d6a8ab8239314ee3de250a
6
SIZE (polyml/mlsource.420.tar.gz) = 923393
7
MD5 (polyml/basis.420.tar.gz) = fa307ceda8a6556d8407c4b5edc6e303
8
SHA256 (polyml/basis.420.tar.gz) = bb381d5b99987b08064a707001766ea64113de4b1a75a12ad443ca8c9d0675cc
9
SIZE (polyml/basis.420.tar.gz) = 148810
10
MD5 (polyml/DB420.i386.unix.gz) = 7591ad2e94002c3827918c4846c0a4c4
11
SHA256 (polyml/DB420.i386.unix.gz) = 6f3c40c2ac8f479a4e7307e20907e53af29b3a75e05fdd34184ee2b9b29309bf
12
SIZE (polyml/DB420.i386.unix.gz) = 1848015
(-)pkg-install (-36 lines)
Removed Link Here
1
#!/bin/sh
2
3
if [ "$2" = "POST-INSTALL" ]; then
4
	if test `ulimit -Hd` -lt 917504; then
5
		cat <<END
6
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
7
! Poly/ML memory regions (heaps, database and IO Area) are stored at !
8
! fixed addresses in the processes virtual memory space, for reasons !
9
! of speed.                                                          !
10
!                                                                    !
11
! The address space available to FreeBSD processes for heap and      !
12
! data storage is limited by an administrative setting:              !
13
!   sh:  ulimit -Hd                                                  !
14
!   csh: limit -h datasize                                           !
15
!                                                                    !
16
! The maximum administrative setting is limited in turn by a kernel  !
17
! parameter: maxdsiz. If the maximum datasize is too low, the        !
18
! dynamic linker will load libraries into the memory regions used    !
19
! by Poly/ML -- this may cause problems, including non-termination   !
20
! when committing large databases.                                   !
21
!                                                                    !
22
! One fix is to add the following line to /boot/loader.conf before   !
23
! restarting:                                                        !
24
!    kern.maxdsiz="896M"                                             !
25
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
26
27
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
28
! In order to be able to commit changes to Poly/ML's database, each  !
29
! user needs to have her/his own writable copy.                      !
30
!                                                                    !
31
! Please login with the user you plan to use Poly/ML with and run    !
32
! "make install-user" from ports/lang/polyml.                        !
33
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
34
END
35
	fi
36
fi

Return to bug 109951