| | 75 | |
| | 76 | == 0.9.x branch, Haiku only == |
| | 77 | |
| | 78 | ||Haiku||stable|| |
| | 79 | |
| | 80 | === revision 1 (bonefish) - [Haiku] === |
| | 81 | |
| | 82 | ==== Changes ([source:BePorts/trunk/dev-libs/apr/apr-0.9.x-haiku.diff patch]) ==== |
| | 83 | {{{build/apr_hints.m4}}}: |
| | 84 | - Added -lnetwork for Haiku. |
| | 85 | - Use POSIX semaphores instead of fcntl() (performs better and is less |
| | 86 | overhead). |
| | 87 | - POSIX semaphores also lock threads. |
| | 88 | {{{configure.in}}}: |
| | 89 | - No -g on Haiku. |
| | 90 | - Use libnetwork, libbsd and bsd headers. |
| | 91 | - Reordered decision making for anonymous and name-based shared memory. |
| | 92 | BeOS areas are first now, so that they are overridden by the other |
| | 93 | mechanisms (affects Haiku only, BeOS doesn't have the others). |
| | 94 | {{{include/apr_portable.h}}}: |
| | 95 | - Avoid BeOS-specific definitions. Haiku uses the Unix implementation. |
| | 96 | {{{test/{testpipe,testoc,testproc}.c}}}: |
| | 97 | - These tests start a child process, a script which lazily builds an executable |
| | 98 | and runs it. Changed the process creation so that the environment is |
| | 99 | not cleared, since Haiku's gcc depends on several environment variables to |
| | 100 | be set to work correctly. |
| | 101 | {{{test/testpoll.c}}}: |
| | 102 | - The test incorrectly assumes that packets sent to a local socket are |
| | 103 | delivered synchronously and that the select()/poll() events are thus |
| | 104 | available immediately. Added 10 ms apr_sleep()s so that the tests has a |
| | 105 | chance to succeed on Haiku. |
| | 106 | |
| | 107 | ==== Configuring/Building ==== |
| | 108 | {{{ |
| | 109 | rm build/config.guess build/config.sub |
| | 110 | ./buildconf |
| | 111 | ./configure --prefix=/boot/home/config |
| | 112 | make |
| | 113 | }}} |
| | 114 | |
| | 115 | ==== Tests ==== |
| | 116 | {{{ |
| | 117 | 221 tests run: 218 passed, 1 failed, 2 not implemented. |
| | 118 | |
| | 119 | Failed tests in Socket Options: |
| | 120 | 1) corkable: expected <0> but was <-2147483643> |
| | 121 | |
| | 122 | Not Implemented tests in Socket Creation: |
| | 123 | 1) tcp6_socket: IPv6 not implemented on this platform |
| | 124 | 2) udp6_socket: IPv6 not implemented on this platform |
| | 125 | }}} |
| | 126 | |
| | 127 | The {{{Socket Options}}} test fails, since Haiku doesn't implement TCP_NODELAY yet (!r25483). |