29b08baecb
Mono Changes: - Series release: http://www.go-mono.com/archive/1.1.9/ - Patch release: http://www.go-mono.com/archive/1.1.9.1_0/ (No 1.1.9.2 release announcement.) Port Changes: - Add pkg-message to explain reasons for common build failures and note the need to possibly increase the number of semaphores from the default FreeBSD amounts. - Add preliminary amd64 support [1,2] which has been disabled for the time being due to lingering stability issues. - Force the Mono build to only write within ${WRKDIR} and no longer write to ~/.wapi which leads to... - Add bsd.mono.mk which is a common makefile all Mono consumers will depend on. Currently this file sets the location of the .wapi the build process will write to. Since Mono does not cleanup the semaphore created for a .wapi when the last Mono process exits this file also handles the removal of the semaphore created during port building so we do not exhaust the machine's semaphore limit. Submitted by: Jean-Michel "tuo" Herve <jm.herve@gameproduction.org> [1] Joe Lewis <joe@joe-lewis.com> [1] Lou Kamenov on BSD# mailinglist [2] Approved by: ahze (mentor) Project by: BSD# <http://www.mono-project.com/Mono:FreeBSD>
89 lines
2.4 KiB
Makefile
89 lines
2.4 KiB
Makefile
# New ports collection makefile for: mono
|
|
# Date created: 22 July 2002
|
|
# Whom: Yukihiro Nakai <nakai@FreeBSD.org>
|
|
#
|
|
# $FreeBSD$
|
|
# $Id: Makefile,v 1.47 2005/11/06 03:26:36 tmclau02 Exp $
|
|
#
|
|
|
|
PORTNAME= mono
|
|
PORTVERSION= 1.1.9.2
|
|
PORTREVISION= 3
|
|
CATEGORIES= lang
|
|
MASTER_SITES= http://www.go-mono.com/sources/mono-1.1/
|
|
|
|
MAINTAINER= bsd-sharp-list@forge.novell.com
|
|
COMMENT= An open source implementation of .NET Development Framework
|
|
|
|
CONFLICTS= mono-devel-[0-9]* mono-svn-[0-9]*
|
|
|
|
USE_REINPLACE= yes
|
|
USE_BISON= yes
|
|
USE_GNOME= gnomehack glib20
|
|
USE_GMAKE= yes
|
|
LIBTOOLFILES= configure libgc/configure
|
|
USE_LIBTOOL_VER=15
|
|
INSTALLS_SHLIB= yes
|
|
CONFIGURE_ENV= PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" \
|
|
PTHREAD_LIBS="${PTHREAD_LIBS}"
|
|
CONFIGURE_ARGS= --program-transform-name=\'\' \
|
|
--with-gc=included \
|
|
--with-tls=pthread
|
|
|
|
MAN1= al.1 cert2spc.1 certmgr.1 chktrust.1 cilc.1 disco.1 dtd2xsd.1 \
|
|
gacutil.1 genxs.1 ilasm.1 jay.1 macpack.1 makecert.1 mcs.1 \
|
|
mint.1 mkbundle.1 mono-service.1 mono-shlib-cop.1 mono.1 \
|
|
monoburg.1 monodis.1 monop.1 monostyle.1 oldmono.1 \
|
|
permview.1 prj2make.1 secutil.1 setreg.1 signcode.1 sn.1 \
|
|
soapsuds.1 sqlsharp.1 wsdl.1 xsd.1
|
|
MAN5= mono-config.5
|
|
|
|
ONLY_FOR_ARCHS= i386 #amd64
|
|
|
|
MONO_SHARED_DIR=${WRKDIR}
|
|
|
|
MAKE_ENV=MONO_SHARED_DIR=${MONO_SHARED_DIR}
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
pre-everything::
|
|
@${CAT} ${PKGMESSAGE}
|
|
|
|
.if ${OSVERSION} < 503000
|
|
IGNORE= Does not work on 4.X and 5.X before 503000
|
|
.endif
|
|
|
|
# ttyname_r(3) patch
|
|
.if ${OSVERSION} < 600028
|
|
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-support_mph.h
|
|
.endif
|
|
|
|
.if exists(${LOCALBASE}/lib/libfam.so)
|
|
USE_FAM= yes
|
|
.endif
|
|
|
|
post-patch:
|
|
@${REINPLACE_CMD} -e 's|%%X11BASE%%|${X11BASE}|g' \
|
|
${WRKSRC}/mono/metadata/assembly.c
|
|
@${REINPLACE_CMD} -e 's|.so.0|.so|g' \
|
|
${WRKSRC}/configure
|
|
.if ${OSVERSION} >= 700000
|
|
@${REINPLACE_CMD} -e 's|freebsd6|freebsd7|g' \
|
|
${WRKSRC}/configure ${WRKSRC}/libgc/configure
|
|
.endif
|
|
|
|
tests: build
|
|
@${ECHO_MSG} "===> Running mono regression tests"
|
|
@(cd ${WRKSRC}/mono/tests && ${SETENV} ${MAKE_ENV} ${GMAKE} \
|
|
${MAKE_FLAGS} Makefile ${MAKE_ARGS} test)
|
|
|
|
pre-su-install:
|
|
${MKDIR} ${X11BASE}/lib/mono/1.0
|
|
${MKDIR} ${X11BASE}/lib/mono/2.0
|
|
${MKDIR} ${X11BASE}/lib/mono/gac
|
|
|
|
post-install:
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/mono/handles/semdel ${PREFIX}/bin/mono-semdel
|
|
@${SETENV} MONO_SHARED_DIR_PORT="${MONO_SHARED_DIR}" ${SH} ${WRKSRC}/runtime/semdel-wrapper 2> /dev/null || true
|
|
|
|
.include <bsd.port.post.mk>
|