Improving Ada support on FreeBSD and in the ports system
linimon at lonesome.com
Sun Nov 8 04:06:36 UTC 2009
It's true that the Ada packages have suffered a fair amount of bit-rot
in the past year or so. I'm happy to see someone stepping forward to
work on them.
On Sat, Nov 07, 2009 at 09:29:36PM +0000, freebsd-ports at coreland.ath.cx wrote:
> PROBLEM 1. Lack of packages
> Of the 10 packages listed, only three of those (maybe two) actually
There were several more working, but a recent compiler update broke them.
At that time the portmgr team went ahead and marked the ports "broken".
That both advises users that they don't compile, and also triggers a
periodic email to the ports@ mailing list. Beyond that we have to rely
on work done by individual contributors.
> PROBLEM 3. Compiler version chaos and lack of architecture support
> I believe there needs to be a mechanism to select an Ada compiler
> for use with packages. I'm not sure what the Ports system currently
> provides for this case. [...] The setting should probably be a
> port option that can be set in make.conf.
Most of the general mechanisms for selecting "port alternative foo vs.
bar" live in ports/Mk. In particular, you will probably want to look at
ports/Mk/bsd.gcc.mk. A more advanced example is in bsd.java.mk. Note:
don't feel bad if you don't understand the contents of these files; they
have evolved to their current state over quite some period of time. It's
perfectly fair to ask for help.
> Lack of architecture support is a time-consuming issue. Both GCC
> and GNAT have support for a wide range of architectures but GNAT
> only has support for FreeBSD i386 (and now AMD64 in trunk). I have
> produced bootstrap binaries for GCC 4.4 on i386 and AMD64 on FreeBSD
> 7.2 (and will produce binaries for 8.0 when it arrives) but do
> not have access to any other architectures running FreeBSD.
For something like this that isn't widely used, I wouldn't spend too much
time on anything other than i386 and amd64. That's where the majority of
our user base is (I'm guessing 80% and 15%, respectively, based on the PR
I run the sparc64 package builds, and those machines have plenty of trouble
keeping up with the things they're already asked to build :-)
More information about the freebsd-ports