Use default mono compiler correctly

Bug #809460 reported by Iain Lane
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
libubuntuone (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

 affects ubuntu/libubuntuone
 subscribe ubuntu-sponsors
 status confirmed

Hi,

libubuntuone attempts to use the default mono compiler, but doesn't achive
this. Here's a patch to correctly pass the variable to configure. Without
this, libu1 carries on using gmcs which means that the mono bindings are
built against the 2.0 profile. For Oneiric we're transitioning to CLR 4.0.

Patch attached.

Cheers,
Iain

Revision history for this message
Iain Lane (laney) wrote :
Revision history for this message
dobey (dobey) wrote :

Is there not some way to do this correctly in the configure script itself, and in a way that works in both cases?

Revision history for this message
Iain Lane (laney) wrote : Re: [Bug 809460] Re: Use default mono compiler correctly

On Tue, Jul 12, 2011 at 06:41:05PM -0000, Rodney Dawes wrote:
> Is there not some way to do this correctly in the configure script
> itself, and in a way that works in both cases?

The concept of mono-csc as a default compiler is a Debian/Ubuntuism, so no
not really. But the compiler is quite readily overridable in the
configuration process, so it's not that bad.

Revision history for this message
dobey (dobey) wrote :

OK. I am wondering because we presumably should also use this for our nightlies builds. But we use the same debian/ dir to build for all supported versions of Ubuntu, so that we can keep things consistent, without having to make the same changes N times in N different ways.

And it seems like requiring anyone who builds something on Oneiric to manually specify the new version by setting MONO_CSC when doing ./configure is a bit much. Is there no easy way to discover this automatically? With alternatives or something?

Revision history for this message
Iain Lane (laney) wrote :

Hi,

On Wed, Jul 13, 2011 at 04:45:50PM -0000, Rodney Dawes wrote:
> OK. I am wondering because we presumably should also use this for our
> nightlies builds. But we use the same debian/ dir to build for all
> supported versions of Ubuntu, so that we can keep things consistent,
> without having to make the same changes N times in N different ways.

That is exactly what using mono-csc gives you. It means that you use the
default mono compiler. The reason we're noticing problems now is that this
switched from gmcs to dmcs with 2.10 and as libu1 wasn't using the default
compiler correctly it was getting 2.0 refs instead of 4.0.

You should use this for your nightlies indeed.

> And it seems like requiring anyone who builds something on Oneiric to
> manually specify the new version by setting MONO_CSC when doing
> ./configure is a bit much. Is there no easy way to discover this
> automatically? With alternatives or something?

It's not required. mono-csc is more to help ensure that all of our packages
get built for the distro's default profile. But it's backwards compatible:
4.0 apps can load 2.0 libs just fine. Users don't have to care about this.

Cheers,
Iain

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libubuntuone - 0.10.0-0ubuntu3

---------------
libubuntuone (0.10.0-0ubuntu3) oneiric; urgency=low

  * debian/rules: Use default mono compiler. Required for CLR 4.0 transition.
    (LP: #809460)
 -- Iain Lane <email address hidden> Tue, 12 Jul 2011 18:06:28 +0100

Changed in libubuntuone (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.