Paul Smedley wrote:
Hi All, I'm trying to get Apache2 2.0.55 building and running on OS/2 using GCC 3.3.5. There's a current build of Apache using GCC 2.8.1 but that GCC is getting a bit long in the tooth so I'd like to update things :) Anyway, I have it building ok - using the unix network_io and poll code instead of the OS/2 code as GCC 3.3.5 on OS/2 provides a much more unix like behaviour.
But what is GOOD about unix-like behavior? This is sadly the same nonsense as trying to build Win32 via cygwin. You have wrappers that work *almost* like unix, but you've added another layer of abstraction, and another library's bugs...
[Thu Nov 10 19:51:18 2005] [error] (38)Socket operation on non-socket: apr_accept
Ta da..., and boom. Once you can accept, can it poll/select correctly, or will you have yet-more quirks? You've evidently barely scratched the surface of making apr/unix play OS/2. The better solution, and nothing against attacking OS/2 using gcc, would be to modify the build system to correctly detect OS/2 and use that API, internally. The beauty of APR is that most everything is abstracted out and programs such as httpd won't know/care about the difference (and will be informed of supported/unsupported APIs.) Once apr is built correctly, there's very little to do on the httpd side. It has almost no platform specifics, and those are generally picked out correctly by autoconf. Please don't reply again on this thread. Jeff asked politely for you to continue on [email protected] where issues of portability are addressed; please do. Bill
