Groups | Search | Server Info | Login | Register
Groups > comp.lang.ada > #49376
| From | Fernando Oleo Blanco <irvise_ml@irvise.xyz> |
|---|---|
| Newsgroups | comp.lang.ada |
| Subject | Re: Help: Ada in NetBSD |
| Date | 2021-09-01 16:58 +0200 |
| Organization | Aioe.org NNTP Server |
| Message-ID | <sgo4f7$lri$1@gioia.aioe.org> (permalink) |
| References | <sgfpod$19sl$1@gioia.aioe.org> <646f270d-0e65-46a5-b40a-02afab608f1en@googlegroups.com> |
Hi John,
continuing our chat over on IRC and repeating a few things so that you
can refer to this message.
My work is mostly based on your gcc6-aux port. So you will not find many
new things here.
So, what have I actually done?
- Copied your s-osinte__netbsd.ad{s,b} patches. I initially used the
patched __freebsd one. However, as you already know, NetBSD changed the
symbols of some of its libc and sys/* functions.
- I also ended up reproducing parts of the patches you created, such as
adding defined (__NetBSD__) where it was missing.
- Patched the Makefile.rtl to support NetBSD x86_64.
- Patched the symbols of _nanosleep and __gettimeofday50 in
s-osprim__posix.adb.
This is where I am right now. Most of the ACATS tests that use Tasks,
fail due to time out. Everything else pretty much "just works" (there
are a few more failed tests).
So, what now? I am pretty sure that since gcc6-aux came out and today,
some functions have been changed, see _nanosleep and __gettimeofday50.
These two functions specifically, are my suspects. Maybe the input
variables/structures got changed and I have not updated them. There are
also a couple of other symbols in some GNAT libraries that need updating.
A few more things:
- The patches I have done are of very bad quality: modifying __posix
files directly so that they will work only on NetBSD, for example.
- These patches and are not satisfactory. Since interfacing with the
NetBSD ABI is now dependent on the C preprocessor to correctly generate
the symbols, the current approach of hardcoding new symbols is fragile
and a loosing battle.
- I think the long term solution is the one proposed by Simon. Creating
some _gnat__*** C functions that wrap the NetBSD ABI. This is better,
but does not save us from future functions breaking. A complete fix
would be to completely _gnat__* all the C functions, which, in my humble
opinion is just too much.
On 01.09.21 15:28, John R. Marino wrote:
> Which reminds me: I'd only do this for x86_64 platform.
> Regards,
> John
My goal would be to at the very least give support to ARM, ARM64 and
RISC-V. To be honest with you, I would like it to work on any piece of
hardware that can be currently bought. Also, not just NetBSD, also
FreeBSD, DragonflyBSD (already done by you), improved OpenBSD support
and Haiku. I would also like to see gcc-ada added to Guix, the GNU
package manager, but that is a completely different story.
Regards,
--
Fernando Oleo Blanco
https://irvise.xyz
Back to comp.lang.ada | Previous | Next — Previous in thread | Next in thread | Find similar
Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-08-29 13:06 +0200
Re: Help: Ada in NetBSD Stephane Carrez <stephane.carrez@gmail.com> - 2021-08-29 06:19 -0700
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-08-29 20:08 +0200
Re: Help: Ada in NetBSD Simon Wright <simon@pushface.org> - 2021-08-29 19:25 +0100
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-08-29 22:36 +0200
Re: Help: Ada in NetBSD Stephane Carrez <stephane.carrez@gmail.com> - 2021-08-29 15:08 -0700
Re: Help: Ada in NetBSD Simon Wright <simon@pushface.org> - 2021-08-30 08:37 +0100
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-08-30 10:14 +0200
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-08-30 12:24 +0200
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-08-30 14:15 +0200
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-08-30 20:49 +0200
Re: Help: Ada in NetBSD Simon Wright <simon@pushface.org> - 2021-08-30 20:23 +0100
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-01 11:44 +0200
Re: Help: Ada in NetBSD Simon Wright <simon@pushface.org> - 2021-09-01 22:41 +0100
Re: Help: Ada in NetBSD "Randy Brukardt" <randy@rrsoftware.com> - 2021-09-02 17:16 -0500
Re: Help: Ada in NetBSD Simon Wright <simon@pushface.org> - 2021-09-03 21:18 +0100
Re: Help: Ada in NetBSD Simon Wright <simon@pushface.org> - 2021-08-29 18:34 +0100
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-08-29 19:45 +0200
Re: Help: Ada in NetBSD "John R. Marino" <mfl-commissioner@marino.st> - 2021-09-01 06:28 -0700
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-01 16:58 +0200
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-17 19:36 +0200
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-18 18:39 +0200
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-22 22:05 +0200
Re: Help: Ada in NetBSD Simon Wright <simon@pushface.org> - 2021-09-22 21:57 +0100
Re: Help: Ada in NetBSD "Luke A. Guest" <laguest@archeia.com> - 2021-09-23 09:04 +0100
Re: Help: Ada in NetBSD Kevin Chadwick <m8il1ists@gmail.com> - 2021-09-23 03:48 -0700
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-23 19:01 +0200
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-23 19:04 +0200
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-23 21:53 +0200
Re: Help: Ada in NetBSD Simon Wright <simon@pushface.org> - 2021-09-24 08:48 +0100
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-24 11:44 +0200
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-13 20:49 +0200
Re: Help: Ada in NetBSD Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2021-09-13 18:24 -0400
Re: Help: Ada in NetBSD Fernando Oleo Blanco <irvise_ml@irvise.xyz> - 2021-09-17 19:19 +0200
csiph-web