aboutsummaryrefslogtreecommitdiff
path: root/lang/mono/Makefile
blob: cff7242de90e5b500551bea4e9c659733f4be22a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# 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>