[Mono-devel-list] [LONG] Any Interest in FreeBSD Patches? Then see attached.
John Merryweather Cooper
john_m_cooper at yahoo.com
Fri Jul 16 18:51:42 EDT 2004
On Fri, 2004-07-16 at 14:30, Dick Porter wrote:
> On Fri, 2004-07-16 at 22:13, John Merryweather Cooper wrote:
> > On Fri, 2004-07-16 at 13:28, Dick Porter wrote:
> > > > # patch-configure
> > > > #####
> > > >
> > > > The build environment in the FreeBSD Ports system defines two
> > > > environment variables: PTHREAD_CFLAGS and PTHREAD_LIBS. The contents
> > > > of these two environments vary depending on the FreeBSD version,
> > >
> > > How does this patch impact FreeBSD builders of the tarball? I'm
> > > assuming PTHREAD_CFLAGS and PTHREAD_LIBS won't be set automatically for
> > > them. Is it possible to have a set of probably-correct defaults, and
> > > let the ports build override them?
> > I'm unclear about your reference to "FreeBSD builders of the tarball."
> I mean someone running FreeBSD that happens to download the tarball from
> the mono web site, and tries to build it themselves.
O.K. Well, what I recommend is:
1) point potential FreeBSD binary users to use pkg_add lang/mono which
will suck down the pre-built tarball from FreeBSD.org and install it.
I've worked very hard to make this a no-brainer for such users.
2) point potential FreeBSD source users who don't want to be cutting
edge to /usr/ports/lang/mono on there machines where a "make install"
will fetch, compile, and install mono for them.
3) for the cutting edge user, I'd support overriding
PTHREAD_[CFLAGS|LIBS] in the environment for configure and document in
the help portion of configure just like CFLAGS, et al. are documented
now when one does a "configure --help." I'd be happy if you'd also
provide such users with my support e-mail address-- coop9211 at uidaho.edu
--so that I can assist them with the particulars. Meanwhile, I'd
support the -STABLE (the first set) and -CURRENT (the last set) of
options. You can distinguish this by the build host using *freebsd4 for
-STABLE and *freebsd5 for -CURRENT. For completeness, a warning if
PTHREAD_CFLAGS or PTHREAD_LIBS is not defined in the environment can
alert such users that they're about to enter uncharted waters. :) This
approach is used on libESMTP which I am also the FreeBSD maintainer for
and it has worked quite well.
> > These values can always be recovered from /usr/ports/Mk/bsd.port.mk.
> > Note that only the first (-STABLE) and last (-CURRENT) choices are
> > maintained in for ports (such as lang/mono) in the ports tree, but there
> > are still plenty of people running older -CURRENTs. However, nobody has
> > been able to get lang/mono to run on the non-KSE -CURRENTs, so it's a
> > pretty dead choice.
> > Since there's considerable development energy on threads in -CURRENT,
> > expect these flags to change "early and often" on -CURRENT.
> That doesn't sound like we can do this in configure then. We need to
> reach a consensus from the FreeBSD users here: do we just put the ports
> options in configure.in?
> > > > # patch-ltmain.sh
> > >
> > > ltmain is a generated file (from libtool.)
> > >
> > > > # patch-mono_Makefile.in
> > >
> > > Again, Makefile.in is a generated file, built from Makefile.am. There
> > > is no tests directory specified in Makefile.am.
> > >
> > As a general rule, we try to avoid using automake. So, we take the
> > configure scripts and *.in files as we find them and patch them to
> > work. There's just too much chaos in the auto[tools] stuff--although
> > there is a strong effort to resolve this chaos for FreeBSD, we're not
> > there yet.
> I think you're going to have to maintain these particular patches
> yourself then.
That's what I expected, so no problem.
> - Dick
More information about the Mono-devel-list