Improving Ada support on FreeBSD and in the ports system

View: New views
12 Messages — Rating Filter:   Alert me  

Improving Ada support on FreeBSD and in the ports system

by M Rothwell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

[Apologies for the possible double-post, I mistyped the From: address]

Hello.

It's come to my attention that the FreeBSD ports system has very poor support
for Ada and Ada software in general.

A quick search on Freshports for 'Ada' shows the following packages:

devel/adabooch            - No dependencies registered!
devel/adacurses           - lang/gnat
devel/adasdl              - lang/gnat
net/adasockets            - lang/gnat       (broken)
textproc/xmlada           - lang/gnat-gcc41 (broken)
textproc/xmlada-gps       - lang/gnat       (broken)
x11-toolkits/gtkada       - lang/gnat       (broken)
x11-toolkits/gtkada-devel - lang/gnat       (broken)
x11-toolkits/gtkada-gcc   - lang/gnat-gcc41 (broken)
x11-toolkits/gtkada-gps   - lang/gnat       (broken)

I'm aware there are more packages than this in the ports sytem. The situation
doesn't get any better the more you read...

The problems any user of Ada on FreeBSD faces are:

  PROBLEM 1. Lack of packages (as shown above)

    Of the 10 packages listed, only three of those (maybe two) actually
    work.

  PROBLEM 2. No choice in the use of compiler

    The Ada world is essentially divided between the GCC version of GNAT
    that can produce executables not tainted by the GPL (GNAT-FSF) and the
    GPL version (GNAT-GPL) from AdaCore which can't.

    Debian, for example, only uses GNAT-FSF (but one can, of course,
    just download GNAT-GPL from AdaCore and use it without issue).

  PROBLEM 3. Compiler version chaos and lack of architecture support
 
    We have:

      lang/gnat       (GPL 2009 version, i386 only)
      lang/gnat-gcc41 (GCC 4.1, i386 only)
      lang/gnat-gcc42 (GCC 4.2, i386 only)
      lang/gnat-gcc43 (GCC 4.3, i386 only)
      lang/gnat-gcc44 (GCC 4.4, i386 and amd64)

    Apart from the fact that nobody using Ada knows which one of the
    above five ports they want, they'll also be forced into using at
    least one of them due to lack of architecture support and ports
    unconditionally depending on lang/gnat.

    Debian, for example, has a wide range of compiler architectures
    available for GNAT:

      http://packages.debian.org/unstable/devel/gnat

    Anybody that wants to install Ada packages from ports on AMD64
    is stuck.  Despite having an AMD64 compiler (gnat-gcc44) in
    ports, packages will demand lang/gnat and will then fail due
    to ONLY_FOR_ARCHS=i386.

  PROBLEM 4. Lack of a debugger

    We currently only have gdb 6.1.1 in the base system and I've never
    been able to get any of the other gdb ports to compile (version >=
    6.8 of gdb have explicit Ada support).

  PROBLEM 5. Lack of a consistent policy for Ada packages

    Debian, for example, has this:

    http://people.debian.org/~lbrenta/debian-ada-policy.html

I would like to (attempt to) solve all of the above problems and
make FreeBSD a serious platform for Ada development. I will attempt
to address the five points above with possible solutions to each.

  PROBLEM 1. Lack of packages

    This is something I will work on personally. I have quite a large
    number of packages I have developed myself to be submitted to ports
    but have been unable until now due to the problems described above.

    I am also willing to spend time porting the "big name" packages
    such as GtkAda and AWS to FreeBSD (porting Ada programs tends to
    be quite painless, usually).

  PROBLEM 2. No choice in the use of compiler
  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.

    I do not want to force a particular compiler choice on the users
    of packages. Some packages (currently) require GNAT GPL to function
    (any program using ASIS[1] currently needs an extra support library[2]
    to work with GNAT FSF).

    The setting should probably be a port option that can be set in
    make.conf. I would be interested to hear ideas on this.

    I would like to see the number of GNAT ports brought down to
    two - one for GNAT-FSF and one for GNAT-GPL. This would require
    input from the maintainers of the older gnat-gcc ports and a
    coordinated effort to make sure the small selection of packages
    available work with both of the resulting ports (before adding
    new packages).
   
    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. This
    is more or less an issue of manpower and patience.

  PROBLEM 4. Lack of a debugger

    This should not be a major problem to solve. Presumably the
    devel/cross-gdb port will be used with settings to compile a native
    debugger. I will submit PRs for the problems I've had (when the port
    could eventually be persuaded to compile, it seemed to believe it
    was not a native debugger and couldn't run executables).

    It might be worth updating the devel/gdb6 port or simply turning
    it into a slave port that compiles devel/cross-gdb with the correct
    settings for the current architecture.

  PROBLEM 5. Lack of a consistent policy for Ada

    I believe this'll occur naturally as a consequence of the above.

    I'm willing to document the policy myself.

Comments, flames, welcome.

Mark

http://adacommons.org
http://coreland.ath.cx

irc://freenode.net/ada
irc://freenode.net/adacommons

[1] http://www.sigada.org/wg/asiswg/
[2] http://packages.debian.org/squeeze/libgnatvsn-dev


attachment0 (851 bytes) Download Attachment

Re: Improving Ada support on FreeBSD and in the ports system

by Mark Linimon-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

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@... wrote:
>   PROBLEM 1. Lack of packages
>
>     Of the 10 packages listed, only three of those (maybe two) actually
>     work.

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
arrival statistics.)

I run the sparc64 package builds, and those machines have plenty of trouble
keeping up with the things they're already asked to build :-)

mcl
_______________________________________________
freebsd-ports@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe@..."

Re: Improving Ada support on FreeBSD and in the ports system

by Daniel Eischen :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Sat, 7 Nov 2009, freebsd-ports@... wrote:

> [Apologies for the possible double-post, I mistyped the From: address]
>
> Hello.
>
> It's come to my attention that the FreeBSD ports system has very poor support
> for Ada and Ada software in general.
>
> A quick search on Freshports for 'Ada' shows the following packages:
>
> devel/adabooch            - No dependencies registered!
> devel/adacurses           - lang/gnat
> devel/adasdl              - lang/gnat
> net/adasockets            - lang/gnat       (broken)
> textproc/xmlada           - lang/gnat-gcc41 (broken)
> textproc/xmlada-gps       - lang/gnat       (broken)
> x11-toolkits/gtkada       - lang/gnat       (broken)
> x11-toolkits/gtkada-devel - lang/gnat       (broken)
> x11-toolkits/gtkada-gcc   - lang/gnat-gcc41 (broken)
> x11-toolkits/gtkada-gps   - lang/gnat       (broken)
>
> I'm aware there are more packages than this in the ports sytem. The situation
> doesn't get any better the more you read...
>
> The problems any user of Ada on FreeBSD faces are:
>
>  PROBLEM 1. Lack of packages (as shown above)
>
>    Of the 10 packages listed, only three of those (maybe two) actually
>    work.

The packages are way out of date and don't build with the newer
GNAT's.  Patches welcome.

>  PROBLEM 2. No choice in the use of compiler
>
>    The Ada world is essentially divided between the GCC version of GNAT
>    that can produce executables not tainted by the GPL (GNAT-FSF) and the
>    GPL version (GNAT-GPL) from AdaCore which can't.
>
>    Debian, for example, only uses GNAT-FSF (but one can, of course,
>    just download GNAT-GPL from AdaCore and use it without issue).
>
>  PROBLEM 3. Compiler version chaos and lack of architecture support
>
>    We have:
>
>      lang/gnat       (GPL 2009 version, i386 only)

Patches for amd64 support are also welcome.  I thought you were
going to do a port for GNAT-gpl amd64?

--
DE
_______________________________________________
freebsd-ports@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe@..."

Re: Improving Ada support on FreeBSD and in the ports system

by M Rothwell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

'Lo,

On 2009-11-08 00:06:16, Daniel Eischen wrote:
>
> The packages are way out of date and don't build with the newer
> GNAT's.  Patches welcome.

Right!

> >  PROBLEM 3. Compiler version chaos and lack of architecture support
> >
> >    We have:
> >
> >      lang/gnat       (GPL 2009 version, i386 only)
>
> Patches for amd64 support are also welcome.  I thought you were
> going to do a port for GNAT-gpl amd64?

I am indeed. Just waiting for the gnat-gcc44 port to be committed, then
I'll work on getting GPL 2009 compiling on amd64.

M


attachment0 (851 bytes) Download Attachment

Re: Improving Ada support on FreeBSD and in the ports system

by M Rothwell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 2009-11-07 22:06:36, Mark Linimon wrote:
>
> 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.

Seems reasonable.

> 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.

It's on the list. Thanks!

> 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
> arrival statistics.)

That's good to know. I don't have any sparc64 machines laying around...

M


attachment0 (851 bytes) Download Attachment

Re: Improving Ada support on FreeBSD and in the ports system

by M Rothwell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 2009-11-08 00:06:16, Daniel Eischen wrote:
>
> Patches for amd64 support are also welcome.  I thought you were
> going to do a port for GNAT-gpl amd64?

'Lo.

I just tried to compile the vanilla GNAT-GPL 2009 sources today and
came across the following error:

/gnat/gpl-2009/src/GNAT/obj/./gcc/xgcc -B/gnat/gpl-2009/src/GNAT/obj/./gcc/ -B/usr/local/x86_64-unknown-freebsd7.2/bin/ -B/usr/local/x86_64-unknown-freebsd7.2/lib/ -isystem /usr/local/x86_64-unknown-freebsd7.2/include -isystem /usr/local/x86_64-unknown-freebsd7.2/sys-include -g -fkeep-inline-functions -O2  -O2 -g -g -O2   -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include   -fPIC -pthread -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I../../../src/libgcc -I../../../src/libgcc/. -I../../../src/libgcc/../gcc -I../../../src/libgcc/../include  -DHAVE_CC_TLS -o unwind-dw2.o -MT unwind-dw2.o -MD -MP -MF unwind-dw2.dep -fexceptions -c ../../../src/libgcc/../gcc/unwind-dw2.c -fvisibility=hidden -DHIDE_EXPORTS
In file included from ../../../src/libgcc/../gcc/unwind-dw2.c:338:
../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h: In function ‘x86_freebsd_fallback_frame_state’:
../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h:78: error: ‘struct sigcontext’ has no member named ‘sc_esp’
../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h:85: error: ‘struct sigcontext’ has no member named ‘sc_eax’
../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h:87: error: ‘struct sigcontext’ has no member named ‘sc_ebx’
../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h:89: error: ‘struct sigcontext’ has no member named ‘sc_ecx’
../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h:91: error: ‘struct sigcontext’ has no member named ‘sc_edx’
../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h:93: error: ‘struct sigcontext’ has no member named ‘sc_esi’
../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h:95: error: ‘struct sigcontext’ has no member named ‘sc_edi’
../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h:97: error: ‘struct sigcontext’ has no member named ‘sc_ebp’
../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h:99: error: ‘struct sigcontext’ has no member named ‘sc_eip’
gmake[3]: *** [unwind-dw2.o] Error 1
gmake[3]: Leaving directory `/gnat/gpl-2009/src/GNAT/obj/x86_64-unknown-freebsd7.2/libgcc'
gmake[2]: *** [all-stage1-target-libgcc] Error 2
gmake[2]: Leaving directory `/gnat/gpl-2009/src/GNAT/obj'
gmake[1]: *** [stage1-bubble] Error 2
gmake[1]: Leaving directory `/gnat/gpl-2009/src/GNAT/obj'
gmake: *** [all] Error 2

The actual GNAT part of the compiler appeared to compile without issue, using
the compiler from the lang/gnat-gcc44 port. The above, however, seems to be
a problem with the GCC core. It looks very i386 to me...

There doesn't appear to be any explicit support for FreeBSD amd64/x86_64
in those GCC sources as far as I can tell and not being very familiar with
the GCC codebase, I'm not sure how much work it'll be to add them.

Any ideas?
M
_______________________________________________
freebsd-ports@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe@..."

Re: Improving Ada support on FreeBSD and in the ports system

by Daniel Eischen :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wed, 11 Nov 2009, freebsd-ports@... wrote:

> On 2009-11-08 00:06:16, Daniel Eischen wrote:
>>
>> Patches for amd64 support are also welcome.  I thought you were
>> going to do a port for GNAT-gpl amd64?
>
> 'Lo.
>
> I just tried to compile the vanilla GNAT-GPL 2009 sources today and
> came across the following error:
>
> /gnat/gpl-2009/src/GNAT/obj/./gcc/xgcc -B/gnat/gpl-2009/src/GNAT/obj/./gcc/ -B/usr/local/x86_64-unknown-freebsd7.2/bin/ -B/usr/local/x86_64-unknown-freebsd7.2/lib/ -isystem /usr/local/x86_64-unknown-freebsd7.2/include -isystem /usr/local/x86_64-unknown-freebsd7.2/sys-include -g -fkeep-inline-functions -O2  -O2 -g -g -O2   -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include   -fPIC -pthread -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I../../../src/libgcc -I../../../src/libgcc/. -I../../../src/libgcc/../gcc -I../../../src/libgcc/../include  -DHAVE_CC_TLS -o unwind-dw2.o -MT unwind-dw2.o -MD -MP -MF unwind-dw2.dep -fexceptions -c ../../../src/libgcc/../gcc/unwind-dw2.c -fvisibility=hidden -DHIDE_EXPORTS
> In file included from ../../../src/libgcc/../gcc/unwind-dw2.c:338:
> ../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h: In function ‘x86_freebsd_fallback_frame_state’:
I guess I'm confused.  Why is it using config/i386 if it is
trying to build x86_64?  Check the port to see if it forces
target i386...

--
DE
_______________________________________________
freebsd-ports@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe@..."

Re: Improving Ada support on FreeBSD and in the ports system

by M Rothwell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 2009-11-11 14:48:35, Daniel Eischen wrote:
> > /gnat/gpl-2009/src/GNAT/obj/./gcc/xgcc -B/gnat/gpl-2009/src/GNAT/obj/./gcc/ -B/usr/local/x86_64-unknown-freebsd7.2/bin/ -B/usr/local/x86_64-unknown-freebsd7.2/lib/ -isystem /usr/local/x86_64-unknown-freebsd7.2/include -isystem /usr/local/x86_64-unknown-freebsd7.2/sys-include -g -fkeep-inline-functions -O2  -O2 -g -g -O2   -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include   -fPIC -pthread -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I../../../src/libgcc -I../../../src/libgcc/. -I../../../src/libgcc/../gcc -I../../../src/libgcc/../include  -DHAVE_CC_TLS -o unwind-dw2.o -MT unwind-dw2.o -MD -MP -MF unwind-dw2.dep -fexceptions -c ../../../src/libgcc/../gcc/unwind-dw2.c -fvisibility=hidden -DHIDE_EXPORTS
> > In file included from ../../../src/libgcc/../gcc/unwind-dw2.c:338:
> > ../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h: In function ‘x86_freebsd_fallback_frame_state’:
>
> I guess I'm confused.  Why is it using config/i386 if it is
> trying to build x86_64?  Check the port to see if it forces
> target i386...

Oh, this wasn't your port, this was just the vanilla source package
taken from libre.adacore.com.

The port has some extra complexity (downloading bootstrap
binaries, etc) that I wanted to avoid until I knew it actually
built without (much) modification.

M
_______________________________________________
freebsd-ports@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe@..."

Re: Improving Ada support on FreeBSD and in the ports system

by Daniel Eischen :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wed, 11 Nov 2009, freebsd-ports@... wrote:

> On 2009-11-11 14:48:35, Daniel Eischen wrote:
>>> /gnat/gpl-2009/src/GNAT/obj/./gcc/xgcc -B/gnat/gpl-2009/src/GNAT/obj/./gcc/ -B/usr/local/x86_64-unknown-freebsd7.2/bin/ -B/usr/local/x86_64-unknown-freebsd7.2/lib/ -isystem /usr/local/x86_64-unknown-freebsd7.2/include -isystem /usr/local/x86_64-unknown-freebsd7.2/sys-include -g -fkeep-inline-functions -O2  -O2 -g -g -O2   -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include   -fPIC -pthread -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I../../../src/libgcc -I../../../src/libgcc/. -I../../../src/libgcc/../gcc -I../../../src/libgcc/../include  -DHAVE_CC_TLS -o unwind-dw2.o -MT unwind-dw2.o -MD -MP -MF unwind-dw2.dep -fexceptions -c ../../../src/libgcc/../gcc/unwind-dw2.c -fvisibility=hidden -DHIDE_EXPORTS
>>> In file included from ../../../src/libgcc/../gcc/unwind-dw2.c:338:
>>> ../../../src/libgcc/../gcc/config/i386/freebsd-unwind.h: In function ‘x86_freebsd_fallback_frame_state’:
>>
>> I guess I'm confused.  Why is it using config/i386 if it is
>> trying to build x86_64?  Check the port to see if it forces
>> target i386...
>
> Oh, this wasn't your port, this was just the vanilla source package
> taken from libre.adacore.com.
>
> The port has some extra complexity (downloading bootstrap
> binaries, etc) that I wanted to avoid until I knew it actually
> built without (much) modification.
Oh, I see.  Did you configure it with host=i386-unknown-freebsd
and target=amd64-unknown-freebsd (or is it x86_64?)?

It looks like libgcc might not have support for x86_64
FreeBSD??

--
DE
_______________________________________________
freebsd-ports@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe@..."

Re: Improving Ada support on FreeBSD and in the ports system

by M Rothwell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 2009-11-11 15:07:36, Daniel Eischen wrote:
>
> Oh, I see.  Did you configure it with host=i386-unknown-freebsd
> and target=amd64-unknown-freebsd (or is it x86_64?)?
>
> It looks like libgcc might not have support for x86_64
> FreeBSD??

Full configure line was:

  ../src/configure \
    --enable-languages="c,ada" \
    --disable-libada \
    --host=x86_64-unknown-freebsd7.2 \
    --target=x86_64-unknown-freebsd7.2 \
    --build=x86_64-unknown-freebsd7.2

...which is more or less what I build GCC with.

It does seem as if support is missing - perhaps removed by AdaCore?

The system compiler is at 4.2.1 on my AMD64 machine, so I'm guessing
that support was there and was removed?

M
_______________________________________________
freebsd-ports@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe@..."

Re: Improving Ada support on FreeBSD and in the ports system

by Daniel Eischen :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wed, 11 Nov 2009, freebsd-ports@... wrote:

> On 2009-11-11 15:07:36, Daniel Eischen wrote:
>>
>> Oh, I see.  Did you configure it with host=i386-unknown-freebsd
>> and target=amd64-unknown-freebsd (or is it x86_64?)?
>>
>> It looks like libgcc might not have support for x86_64
>> FreeBSD??
>
> Full configure line was:
>
>  ../src/configure \
>    --enable-languages="c,ada" \
>    --disable-libada \
>    --host=x86_64-unknown-freebsd7.2 \
>    --target=x86_64-unknown-freebsd7.2 \
>    --build=x86_64-unknown-freebsd7.2
>
> ...which is more or less what I build GCC with.

I would try it piecemeal.  Try just building the target
compiler (--host=i386-unknown-freebsd7.2 and
--target=x86_64-unknown-freebsd7.2).

> It does seem as if support is missing - perhaps removed by AdaCore?
>
> The system compiler is at 4.2.1 on my AMD64 machine, so I'm guessing
> that support was there and was removed?

I think Adacore takes a snapshot of gcc at the time,
it might not be the actual release.

--
DE
_______________________________________________
freebsd-ports@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe@..."

Re: Improving Ada support on FreeBSD and in the ports system

by M Rothwell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Status update.

I've now begun producing regular builds from GCC SVN for GCC, G++, GNAT
and fortran on 7.2 amd64. The build logs are published here:

  http://gcc.coreland.ath.cx/

I'm hoping this will increase awareness of regressions before they make
their way back into releases (the formal GCC releases rarely contain
merged code from SVN for GNAT).

I've still been completely unable to get GPL 2009 to compile on amd64
so am currently continuing the work to update (and add new) Ada ports.

M
_______________________________________________
freebsd-ports@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe@..."