Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Jan 2013 21:11:13 GMT
From:      Jack Pappas <jack.pappas@tidepowerd.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/175518: Mono is not configured correctly when building
Message-ID:  <201301222111.r0MLBDuB044488@red.freebsd.org>
Resent-Message-ID: <201301222120.r0MLK1gq053234@freefall.freebsd.org>

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

>Number:         175518
>Category:       ports
>Synopsis:       Mono is not configured correctly when building
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Jan 22 21:20:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Jack Pappas
>Release:        9-STABLE
>Organization:
>Environment:
FreeBSD jack-bsd 9.1-RELEASE FreeBSD 9.1-RELEASE #0 r245748M: Mon Jan 21 20:56:47 EST 2013     root@jack-bsd:/usr/obj/usr/src/sys/GENERIC  i386
>Description:
The lang/mono port (recently updated for Mono 3.0.3) isn't configured correctly before building, because it does not call the 'autogen.sh' script provided in the Mono distribution. The 'autogen.sh' script must be run _instead_ of simply calling autoconf (via GNU_CONFIGURE=yes) because it performs certain setup actions before calling libtool, then autoconf.

On a related note, I discovered this configuration issue while tweaking the main Mono configuration file to enable Mono's new 'sgen' GC. The diff attached to this PR includes a patch for configure.in which removes some configuration options which were explicitly set for FreeBSD; removing these settings allows the configure.in to auto-detect the correct settings to use for FreeBSD.

NOTE: The 'patch-configure.in' file included in the attached diff is new, so you will have to to 'svn add' it.
>How-To-Repeat:
Install the current version of Mono from the ports tree.
>Fix:
I have attached an SVN diff (against r310835) which:
(a) Alters the Makefile for lang/mono to correct the build-configuration issue (by calling autogen.sh instead of using autoconf).
(b) Patches configure.in so it selects the configuration options which enable Mono to be compiled using the new 'sgen' GC.

Patch attached with submission follows:

Index: Makefile
===================================================================
--- Makefile	(revision 310835)
+++ Makefile	(working copy)
@@ -17,11 +17,14 @@
 USE_GNOME=	gnomehack glib20
 USE_GMAKE=	yes
 USE_PERL5_BUILD=yes
-GNU_CONFIGURE=	yes
+HAS_CONFIGURE=	yes
 USE_LDCONFIG=	yes
 USE_GETTEXT=	yes
 MAKE_JOBS_UNSAFE=yes
 
+# Call autogen.sh, which calls libtool, autoconf, etc.
+CONFIGURE_SCRIPT= autogen.sh
+
 # Moonlight is installed as part of www/moonlight
 CONFIGURE_ARGS=	--with-moonlight=no
 
Index: files/patch-configure.in
===================================================================
--- files/patch-configure.in	(revision 0)
+++ files/patch-configure.in	(working copy)
@@ -0,0 +1,13 @@
+--- ./configure.in.orig	2012-12-21 15:20:46.000000000 -0500
++++ ./configure.in	2012-12-21 15:21:10.000000000 -0500
+@@ -173,10 +173,6 @@
+ 		libgc_threads=pthreads
+ 		# This doesn't seem to work as of 7.0 on amd64
+ 		with_sigaltstack=no
+-# TLS is only partially implemented on -CURRENT (compiler support
+-# but NOT library support)
+-#
+-		with_tls=pthread
+ 		use_sigposix=yes
+ 		;;
+ 	*-*-*openbsd*)


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



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