[openbeosnetteam] Re: R5 compatibility and libnetapi.so

  • From: "Waldemar Kornewald" <wkornew@xxxxxxx>
  • To: openbeosnetteam@xxxxxxxxxxxxx
  • Date: Thu, 5 Oct 2006 23:55:02 +0200

On 10/5/06, Axel Dörfler <axeld@xxxxxxxxxxxxxxxx> wrote:

> I'd vote for (b). The simplest solution is often the best.
>
> Did you check a few BONE binaries for not being linked against
> libnet.so?

No, but I have another idea that takes Oliver's problems into account:
Our startup code could know that it's the Haiku startup code - so if
you link something for or under Haiku, it can know this, and the
networking code could then never use the compatibility layer. If it's
the BeOS startup code, it would test if the executable has been linked
against libbind.so/libsocket.so, and if that's not the case, it would
enable the R5 mode.
The only (additional) disadvantage is that if you'd like to build R5
executables under Haiku, you'll also need the R5 startup code to link
against.
How does that sound? Too ugly or just good enough?

It's good enough. I doubt that a lot of people will want to compile for R5. Haiku will hopefully replace all current R5 installs. Those who want to build backwards-compatible binaries will know what they are doing, anyway, and I think it's more important that the Haiku source is clean and simple.

Will it be a problem that legacy R5 source will compile+link against
libnet.so, but use the Haiku headers? If libnet.so is integrated in
libnetwork.so the startup code could still detect that the app is
compiled for Haiku although it links against libnet.so, right?

Bye,
Waldemar Kornewald

Other related posts: