Wed Nov 19 11:17:49 2008 UTC ()
reenable MAKE_JOBS_SAFE (2.0.1 compiled OK several times on i386 and amd64)
let configure choose tls model
provide atomic_ops to Interlock functions in newer NetBSDs
bump PKGREVISION


(kefren)
diff -r1.74 -r1.75 pkgsrc/lang/mono/Makefile
diff -r1.40 -r1.41 pkgsrc/lang/mono/distinfo
diff -r1.14 -r1.15 pkgsrc/lang/mono/patches/patch-ab
diff -r0 -r1.4 pkgsrc/lang/mono/patches/patch-bb

cvs diff -r1.74 -r1.75 pkgsrc/lang/mono/Makefile (expand / switch to unified diff)

--- pkgsrc/lang/mono/Makefile 2008/10/25 05:27:58 1.74
+++ pkgsrc/lang/mono/Makefile 2008/11/19 11:17:49 1.75
@@ -1,16 +1,17 @@ @@ -1,16 +1,17 @@
1# $NetBSD: Makefile,v 1.74 2008/10/25 05:27:58 kefren Exp $ 1# $NetBSD: Makefile,v 1.75 2008/11/19 11:17:49 kefren Exp $
2 2
3DISTNAME= mono-${MONO_VERSION} 3DISTNAME= mono-${MONO_VERSION}
 4PKGREVISION= 1
4CATEGORIES= lang 5CATEGORIES= lang
5MASTER_SITES= http://ftp.novell.com/pub/mono/sources/mono/ 6MASTER_SITES= http://ftp.novell.com/pub/mono/sources/mono/
6EXTRACT_SUFX= .tar.bz2 7EXTRACT_SUFX= .tar.bz2
7 8
8MAINTAINER= kefren@NetBSD.org 9MAINTAINER= kefren@NetBSD.org
9HOMEPAGE= http://www.mono-project.com/ 10HOMEPAGE= http://www.mono-project.com/
10COMMENT= Open source implementation of the .NET Development Framework 11COMMENT= Open source implementation of the .NET Development Framework
11 12
12PKG_DESTDIR_SUPPORT= user-destdir 13PKG_DESTDIR_SUPPORT= user-destdir
13 14
14BUILD_DEPENDS+= p5-XML-Parser-[0-9]*:../../textproc/p5-XML-Parser 15BUILD_DEPENDS+= p5-XML-Parser-[0-9]*:../../textproc/p5-XML-Parser
15 16
16CONFLICTS= pnet-[0-9]* 17CONFLICTS= pnet-[0-9]*
@@ -20,28 +21,26 @@ ALL_ENV+= MONO_SHARED_DIR=${WRKDIR:Q} @@ -20,28 +21,26 @@ ALL_ENV+= MONO_SHARED_DIR=${WRKDIR:Q}
20 21
21USE_TOOLS+= bison gmake gtar perl:run pkg-config bash:run 22USE_TOOLS+= bison gmake gtar perl:run pkg-config bash:run
22USE_LIBTOOL= yes 23USE_LIBTOOL= yes
23USE_LANGUAGES+= c c++ 24USE_LANGUAGES+= c c++
24EXTRACT_USING= gtar 25EXTRACT_USING= gtar
25 26
26GNU_CONFIGURE= yes 27GNU_CONFIGURE= yes
27CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR:Q} 28CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR:Q}
28CONFIGURE_ARGS+= --with-icu=yes 29CONFIGURE_ARGS+= --with-icu=yes
29CONFIGURE_ARGS+= --with-preview=yes 30CONFIGURE_ARGS+= --with-preview=yes
30CONFIGURE_ARGS+= --with-libgdiplus=installed 31CONFIGURE_ARGS+= --with-libgdiplus=installed
31CONFIGURE_ARGS+= --with-moonlight=no 32CONFIGURE_ARGS+= --with-moonlight=no
32 33
33MAKE_JOBS_SAFE= no 
34 
35MAKE_FLAGS+= PERL=${PERL5:Q} 34MAKE_FLAGS+= PERL=${PERL5:Q}
36MAKE_FLAGS+= mandir=${PREFIX}/${PKGMANDIR} 35MAKE_FLAGS+= mandir=${PREFIX}/${PKGMANDIR}
37UNLIMIT_RESOURCES= datasize 36UNLIMIT_RESOURCES= datasize
38UNLIMIT_RESOURCES+= stacksize 37UNLIMIT_RESOURCES+= stacksize
39UNLIMIT_RESOURCES+= memorysize 38UNLIMIT_RESOURCES+= memorysize
40 39
41PKGCONFIG_OVERRIDE+= mono-uninstalled.pc.in 40PKGCONFIG_OVERRIDE+= mono-uninstalled.pc.in
42PKGCONFIG_OVERRIDE+= data/cecil.pc.in 41PKGCONFIG_OVERRIDE+= data/cecil.pc.in
43PKGCONFIG_OVERRIDE+= data/dotnet.pc.in 42PKGCONFIG_OVERRIDE+= data/dotnet.pc.in
44PKGCONFIG_OVERRIDE+= data/dotnet35.pc.in 43PKGCONFIG_OVERRIDE+= data/dotnet35.pc.in
45PKGCONFIG_OVERRIDE+= data/mint.pc.in 44PKGCONFIG_OVERRIDE+= data/mint.pc.in
46PKGCONFIG_OVERRIDE+= data/mono-cairo.pc.in 45PKGCONFIG_OVERRIDE+= data/mono-cairo.pc.in
47PKGCONFIG_OVERRIDE+= data/mono.pc.in 46PKGCONFIG_OVERRIDE+= data/mono.pc.in

cvs diff -r1.40 -r1.41 pkgsrc/lang/mono/distinfo (expand / switch to unified diff)

--- pkgsrc/lang/mono/distinfo 2008/10/25 05:27:58 1.40
+++ pkgsrc/lang/mono/distinfo 2008/11/19 11:17:49 1.41
@@ -1,28 +1,29 @@ @@ -1,28 +1,29 @@
1$NetBSD: distinfo,v 1.40 2008/10/25 05:27:58 kefren Exp $ 1$NetBSD: distinfo,v 1.41 2008/11/19 11:17:49 kefren Exp $
2 2
3SHA1 (mono-2.0.1.tar.bz2) = 1c06d614b9b83ca0c8cff98d06136fd5a17344e2 3SHA1 (mono-2.0.1.tar.bz2) = 1c06d614b9b83ca0c8cff98d06136fd5a17344e2
4RMD160 (mono-2.0.1.tar.bz2) = ecada26dc398f0ea4cc4cae62885f4d1438bd540 4RMD160 (mono-2.0.1.tar.bz2) = ecada26dc398f0ea4cc4cae62885f4d1438bd540
5Size (mono-2.0.1.tar.bz2) = 19385815 bytes 5Size (mono-2.0.1.tar.bz2) = 19385815 bytes
6SHA1 (patch-ab) = 28217e3c8bbbde2e26d33bf32297e99971e3d436 6SHA1 (patch-ab) = c5011d00d34c92b32d4243adac26b531ce40df00
7SHA1 (patch-ac) = f88e1a034063a7f14e73d2e314e362d950c65e05 7SHA1 (patch-ac) = f88e1a034063a7f14e73d2e314e362d950c65e05
8SHA1 (patch-ae) = f0654c3103e3d69c44158456f481e5a357350cb1 8SHA1 (patch-ae) = f0654c3103e3d69c44158456f481e5a357350cb1
9SHA1 (patch-af) = abe2bc406e8f58c00f4d1226bda3c5fb9d4ea36f 9SHA1 (patch-af) = abe2bc406e8f58c00f4d1226bda3c5fb9d4ea36f
10SHA1 (patch-ag) = 93775d9350fac57f58f20a7f5a512b8f4a3bd1ca 10SHA1 (patch-ag) = 93775d9350fac57f58f20a7f5a512b8f4a3bd1ca
11SHA1 (patch-ak) = 034d260926fb31aa6b94faf5942f6ec7c7b461df 11SHA1 (patch-ak) = 034d260926fb31aa6b94faf5942f6ec7c7b461df
12SHA1 (patch-ap) = db62ab3c1adc9f8a0b6051c4cbb76aef61a5c7dc 12SHA1 (patch-ap) = db62ab3c1adc9f8a0b6051c4cbb76aef61a5c7dc
13SHA1 (patch-aq) = 2279dc6b46eded6f5a67b04e79779c1c7117fbc5 13SHA1 (patch-aq) = 2279dc6b46eded6f5a67b04e79779c1c7117fbc5
14SHA1 (patch-ar) = 7a2a916f3362da087b2dcfe6b91ba47339151e5b 14SHA1 (patch-ar) = 7a2a916f3362da087b2dcfe6b91ba47339151e5b
15SHA1 (patch-ba) = b5d7f5832ea53dd00af67ac94b5289d71f0d2152 15SHA1 (patch-ba) = b5d7f5832ea53dd00af67ac94b5289d71f0d2152
 16SHA1 (patch-bb) = e11e7af5c745f1ef315c46d5bb87944d08a058ff
16SHA1 (patch-bc) = bbf1a903cf7fee1dbd3a070b0ef0d5aecbdf67e2 17SHA1 (patch-bc) = bbf1a903cf7fee1dbd3a070b0ef0d5aecbdf67e2
17SHA1 (patch-bd) = cf15b750dbd93ebf0e0e5165b8a10aabbf4f1642 18SHA1 (patch-bd) = cf15b750dbd93ebf0e0e5165b8a10aabbf4f1642
18SHA1 (patch-be) = d7a6232690ecd15c32ed44dcc498e596c248f332 19SHA1 (patch-be) = d7a6232690ecd15c32ed44dcc498e596c248f332
19SHA1 (patch-bf) = e945b13fbffc1239a4c459a2c6be543e67e883f9 20SHA1 (patch-bf) = e945b13fbffc1239a4c459a2c6be543e67e883f9
20SHA1 (patch-bg) = 92168eba23d1cf17a1424e318e21b0d845c52c5a 21SHA1 (patch-bg) = 92168eba23d1cf17a1424e318e21b0d845c52c5a
21SHA1 (patch-bh) = a42432fd8ed92e2213fbcd24bf29c2b6d4cbd8ba 22SHA1 (patch-bh) = a42432fd8ed92e2213fbcd24bf29c2b6d4cbd8ba
22SHA1 (patch-bi) = 91786c858b459cd6b5a0dc683b5bdefc412973c1 23SHA1 (patch-bi) = 91786c858b459cd6b5a0dc683b5bdefc412973c1
23SHA1 (patch-ca) = f5c54525d70b185f9fcb28f82034c4e995395c0b 24SHA1 (patch-ca) = f5c54525d70b185f9fcb28f82034c4e995395c0b
24SHA1 (patch-cb) = eaf041b83af24afc4d82d5088a01f98810a1de69 25SHA1 (patch-cb) = eaf041b83af24afc4d82d5088a01f98810a1de69
25SHA1 (patch-cc) = ee2b28f90034d17330910af2f6c47524a3d6d557 26SHA1 (patch-cc) = ee2b28f90034d17330910af2f6c47524a3d6d557
26SHA1 (patch-cd) = dc2afe3992c50b4201af628e12fc269d8bf893a6 27SHA1 (patch-cd) = dc2afe3992c50b4201af628e12fc269d8bf893a6
27SHA1 (patch-ce) = ba1ae96ab63fe798ce781f0def5fe026d1776df0 28SHA1 (patch-ce) = ba1ae96ab63fe798ce781f0def5fe026d1776df0
28SHA1 (patch-cf) = d6c419402636018800e62341024dc7cba71f791a 29SHA1 (patch-cf) = d6c419402636018800e62341024dc7cba71f791a

cvs diff -r1.14 -r1.15 pkgsrc/lang/mono/patches/Attic/patch-ab (expand / switch to unified diff)

--- pkgsrc/lang/mono/patches/Attic/patch-ab 2008/02/13 14:16:43 1.14
+++ pkgsrc/lang/mono/patches/Attic/patch-ab 2008/11/19 11:17:49 1.15
@@ -1,14 +1,13 @@ @@ -1,14 +1,13 @@
1$NetBSD: patch-ab,v 1.14 2008/02/13 14:16:43 kefren Exp $ 1$NetBSD: patch-ab,v 1.15 2008/11/19 11:17:49 kefren Exp $
2--- configure.orig 2008-02-05 14:21:50.000000000 +0200 2--- configure.orig 2008-02-05 14:21:50.000000000 +0200
3+++ configure 2008-02-05 14:24:06.000000000 +0200 3+++ configure 2008-02-05 14:24:06.000000000 +0200
4@@ -2890,8 +2890,9 @@ 4@@ -2890,7 +2890,7 @@
5 CPPFLAGS="$CPPFLAGS -DPLATFORM_BSD" 5 CPPFLAGS="$CPPFLAGS -DPLATFORM_BSD"
6 libmono_ldflags="-pthread" 6 libmono_ldflags="-pthread"
7 need_link_unlink=yes 7 need_link_unlink=yes
8- libdl="-ldl" 8- libdl="-ldl"
9+ libdl="-ldl /libexec/ld.elf_so" 9+ libdl="-ldl /libexec/ld.elf_so"
10 libgc_threads=pthreads 10 libgc_threads=pthreads
11+ with_tls=__thread 
12 with_sigaltstack=no 11 with_sigaltstack=no
13 ;; 12 ;;
14 # these flags will work for all versions of -STABLE 13 # these flags will work for all versions of -STABLE

File Added: pkgsrc/lang/mono/patches/Attic/patch-bb
$NetBSD: patch-bb,v 1.4 2008/11/19 11:17:49 kefren Exp $
--- mono/io-layer/atomic.h.orig	2008-07-01 20:50:32.000000000 +0300
+++ mono/io-layer/atomic.h	2008-11-19 11:37:19.000000000 +0200
@@ -10,11 +10,61 @@
 #ifndef _WAPI_ATOMIC_H_
 #define _WAPI_ATOMIC_H_
 
+#if defined(__NetBSD__)
+#include <sys/param.h>
+
+#if __NetBSD_Version__ > 499004000
+#include <sys/atomic.h>
+#define HAVE_ATOMIC_OPS
+#endif
+
+#endif
+
 #include <glib.h>
 
 #include "mono/io-layer/wapi.h"
 
-#if defined(__i386__) || defined(__x86_64__)
+#if defined(__NetBSD__) && defined(HAVE_ATOMIC_OPS)
+
+#define WAPI_ATOMIC_ASM
+static inline gint32 InterlockedCompareExchange(volatile gint32 *dest,
+	gint32 exch, gint32 comp)
+{
+	return atomic_cas_32((uint32_t*)dest, comp, exch);
+}
+
+static inline gpointer InterlockedCompareExchangePointer(volatile gpointer *dest, gpointer exch, gpointer comp)
+{
+	return atomic_cas_ptr(dest, comp, exch);
+}
+
+static inline gint32 InterlockedIncrement(volatile gint32 *val)
+{
+	return atomic_inc_32_nv((uint32_t*)val);
+}
+
+static inline gint32 InterlockedDecrement(volatile gint32 *val)
+{
+	return atomic_dec_32_nv((uint32_t*)val);
+}
+
+static inline gint32 InterlockedExchange(volatile gint32 *val, gint32 new_val)
+{
+	return atomic_swap_32((uint32_t*)val, new_val);
+}
+
+static inline gpointer InterlockedExchangePointer(volatile gpointer *val,
+		gpointer new_val)
+{
+	return atomic_swap_ptr(val, new_val);
+}
+
+static inline gint32 InterlockedExchangeAdd(volatile gint32 *val, gint32 add)
+{
+	return atomic_add_32_nv((uint32_t*)val, add) - add;
+}
+
+#elif defined(__i386__) || defined(__x86_64__)
 #define WAPI_ATOMIC_ASM
 
 /*