[m-rev.] For review: Fix Darwin shared libs on source distribution

Julien Fischer juliensf at cs.mu.OZ.AU
Sun Oct 31 17:14:48 AEDT 2004




On Sun, 31 Oct 2004, Ian MacLarty wrote:

>
> On 31 Oct 2004, at 03:00, Julien Fischer wrote:
> >> Maybe a better solution is to disable the new mmc options altogether
> >> and just pass the -install_name option manually in all the relevant
> >> Mmakefiles which would avoid the problem with it getting passed twice
> >> if the source distribution were generated and compiled on a Mac OS X
> >> system.
> >>
> > Breaking everything else in order to support (a currently non-existant)
> > OS X configured source distribution seems pointless.
> >
> What I'm suggesting doesn't break anything.  All I'm saying is we just
> pass the -install_name option to .dylib targets in the Mmakefiles.
> This way a build from the c source or the mercury source should work
> the same way.
>
> > The install_name options should be set manually when:
> > i) We're building from a source distribution
> > ii) The source distribution was not configured on powerpc*apple*darwin*
> >
> > It should be possible to have configure work out whether (ii) is
> > true or not by looking at one of the .c files.
> >
> It seems a hell of a lot simpler to just pass the -install_name option
> in the Mmakefiles to .dylib targets.
>
> > Alternatively we could just go back to static linking for source
> > distributions at the moment
> >
รข> >> If a user wanted to build a shared lib on Darwin the new mmc options
> >> would still be passed - we just disable them for the Mercury build.
> >> Alternatively maybe the new mmc options should be removed altogether
> >> (since they result in non-portable .dep files) and replaced with some
> >> comments in the user guide about how to set up a Mmakefile to build
> >> shared libs on Mac OS X.
> >>
> >> Any thoughts?
> >>
> > I don't like the idea of removing support for the new compiler options.
> > As far as possible I'd like the way of building shared libaries to
> > differ
> > as little as possible for each platform.
> I agree with you.  But I think as far as the build process for the
> Mercury compiler goes the new options should be disabled and the
> -install_name should be passed manually to .dylib targets.  This is way
> simpler than having different cases for (i) a c source distribution
> generated on Darwin, (ii) a c source distribution generated on another
> platform and (iii) the Mercury source.  In my experience simpler is
> normally better.  And we're not breaking anything by doing this as far
> as I can see.
>
Ok - let's go with this then.

Cheers,
Julien.

--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list