Hello Cymric,
Your analysis is interesting, however it's fatally flawed:
You've idenitified 6 reasons for why a Mozilla port is almost impossible:
1. POSIX threads
2. GTK+ toolkit
3. Boehm garbage collector
4. fork()
5. Dynamic library interface
6. Size of sources
Comments about each below:
It uses POSIX-compliant threads, which do not exist as yet on the Amiga, and are hard to implement too.
(1) The Mozilla code doesn't directly use POSIX threads. All thread-activity is contained within the NSPR (Netscape portable runtime). The Amizilla team has already ported the NSPR, so this is a non-issue.
It relies on the GTK+-toolkit, which does not exist at all on the Amiga.
(2) Good point. Someone is going to have to re-implement part of the GTK+ API. This is going to be a not-insignificant task.
It uses the Boehm garbage collector, for which a sort-of-port exists for the Amiga, but operates under severe restrictions.
(3) I've got no knowledge of that, or how easy a complete port/re-implementation might be.
(4) It uses fork() at some places, the absolute Unix-to-Amiga porting nightmare.
It shouldn't use fork() either. All concurrency-related things are in the NSPR, which is already ported.
The dynamic library interface is completely different to what is common on the Amiga.
(5) One of the Amizilla developers already has compiled the entire application on the WinUAE - this is a huge achievement, I wonder why they haven't publicised this milestone. And it runs too, so I assume any problems with the library interface have already been overcome.
You cannot even compile the sources on an Amiga because of their insane size running into hundreds of MBs. And so forth.
(6) See (5).
The insurmountable sub-projects are now actually 1 lengthy sub-project (GTK+ re-implementation) and an unknown (Boehm).
I think this makes an Amizilla port quite possible. It just means the developers will spend much of their time porting GTK+ rather than Mozilla...