Hi, Am 08.02.2008 um 15:12 schrieb Fredrik Holmqvist:
One new problem with gcc4 and ports is that gcc reports the architecture as haiku instead of beos. It's also a bit confusing as gcc2 is still beos, so when doing gcc4 builds configure will almost always fallback to the default arch instead of the beos alternative.At least when gcc4 crosscompiling. This causes me to need to port Firefox to the haiku-platform (or maybe hack the compiler) even though it is ported to BeOS. (All those ifdefs need to know what haiku is).So a wiki or such coordinating porting and sharing experience is very much appriciated.
For autoconf-generated configure scripts and GCC2 I need to pass -- build=i586-pc-beos, that has it recognized as BeOS.
To start fixing this, first config.guess and config.sub will need to be patched to always return a suitable platform triple i586-pc-(beos| haiku) (in guess) and take appropriate actions (in sub). Unfortunately many projects maintain local copies of these files in their repositories, so having the original fixed at Savannah won't be sufficient...
Now that autoconf works, we should probably grep through any configure. (in|ac) to find any mention of beos, add haiku where necessary and re- generate configure.
Regarding your #ifdefs it might be easier to #define the BeOS defines when Haiku is recognized rather than changing all #ifdefs. For example, in glib I assume we can live with a #define G_OS_BEOS for Haiku as long as no special provisions need to be made for Haiku apart from deciding on available functions and headers.